:root{--book-gutter:max(6vw,calc((100vw - var(--max))/2));--book-button-height:56px}

/* Shared book / series presentation layer. Keep geometry consistent while styles.css supplies the site palette. */
.page-wrap>.section{margin-inline:calc(var(--book-gutter) * -1);padding-inline:var(--book-gutter);padding-block:clamp(64px,7vw,90px)}
.page-wrap>.section+.section{margin-top:0}
.page-wrap>.section-heading,.page-wrap>.book-detail{position:relative}

.book-detail{grid-template-columns:minmax(250px,370px) minmax(0,1fr);gap:clamp(34px,5vw,64px);align-items:start}
.book-detail>img{display:block;width:100%;height:auto!important;max-height:none;object-fit:contain;object-position:top center;align-self:start;background:#fff}
.book-detail .book-title{font-size:clamp(48px,6vw,88px);line-height:.9;letter-spacing:-.05em}
.book-detail hr{border:0;border-top:1px solid rgba(16,34,53,.28);margin:28px 0 22px}
.book-detail .division-prompt{margin-top:4px}

:is(.cta-row,.retailer-row,.card-actions)>a:is(.big-button,.secondary-button,.next-button,.outline-button){min-height:var(--book-button-height);padding:14px 20px;line-height:1.12;font-size:14px;letter-spacing:.045em;text-transform:uppercase;text-align:center;white-space:normal;box-shadow:5px 5px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease,background .12s ease,color .12s ease}
:is(.cta-row,.retailer-row,.card-actions)>a:is(.big-button,.secondary-button,.next-button,.outline-button):hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
.retailer-row>a{flex:1 1 190px}
.book-detail .cta-row>a{flex:0 1 auto;min-width:200px}

.book-grid .book-card{height:100%}
.book-grid .book-card .card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.book-grid .book-card .card-actions a{width:100%;min-width:0}
.book-grid .book-card .card-actions .outline-button{background:rgba(255,255,255,.035)}

.section-heading{margin-bottom:clamp(28px,4vw,42px)}
.section-heading h2{max-width:900px}
.press-grid,.snapshot{margin-top:clamp(28px,4vw,42px)}
.section.ink :is(.big-button,.secondary-button,.outline-button){border-color:var(--paper)}
.section.ink .outline-button{color:var(--paper);background:rgba(255,255,255,.04);box-shadow:5px 5px 0 rgba(246,239,220,.3)}
.section.ink .outline-button:hover{background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 rgba(246,239,220,.3)}

@media(max-width:860px){
  .book-detail{grid-template-columns:1fr;gap:32px}
  .book-detail>img{width:min(100%,360px);margin-inline:auto}
  .book-detail .book-title{font-size:clamp(44px,12vw,68px)}
  .retailer-row>a,.book-detail .cta-row>a{flex:1 1 210px}
}

@media(max-width:620px){
  :root{--book-button-height:52px}
  .page-wrap>.section{padding-block:56px}
  .book-grid .book-card .card-actions{grid-template-columns:1fr}
  :is(.cta-row,.retailer-row,.card-actions)>a:is(.big-button,.secondary-button,.next-button,.outline-button){width:100%;font-size:13px}
}
