.section.hero{padding-top:clamp(18px,2.2vw,30px)}
/* HOME + global chrome — page-level composition only; all primitives come from tokens.css */

/* masthead */
.masthead{border-bottom:1px solid var(--rule);position:sticky;top:0;background:rgba(246,243,237,.94);backdrop-filter:blur(6px);z-index:20}
.mast-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:20px}
.mast-right{display:flex;align-items:center;gap:26px}
.brand{font-family:var(--serif);font-size:20px;color:var(--ink);text-decoration:none;letter-spacing:.02em}
.mainnav{display:flex;gap:26px}
.mainnav a{font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:.03em;color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;padding-block:4px;transition:border-color .15s}
.mainnav a:hover{border-color:var(--sage)}
.menubtn{display:none;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:transparent;border:1.5px solid var(--navy);border-radius:2px;padding:8px 14px;color:var(--navy);cursor:pointer}

/* hero */
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,6vw,72px);align-items:start}
.hero-covers{display:flex;justify-content:center;gap:20px}
.hcover{display:block;width:min(46%,190px);text-decoration:none}

.hcover-ss{transform:translateY(22px)}

/* series + decision cards */
.seriescards .card{display:flex;flex-direction:column;gap:2px}
.seriescards .card .textlink{margin-top:auto;padding-top:12px}
.bookmini{display:grid;grid-template-columns:96px 1fr;gap:20px;align-items:center;border:1px solid var(--rule);border-top:3px solid var(--accent);background:var(--panel);padding:22px}

.bookmini-body h3{color:var(--ink)}

/* journal feature */
.journalfeat{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center}
.journalfeat .figslot{aspect-ratio:16/10;min-height:0}

/* band button centering (uses component, just centers the row) */
.band-btnrow{justify-content:center}

/* footer */
.sitefoot{background:var(--paper-deep);border-top:2px solid var(--gold);padding-block:var(--sect-sm)}
.foot-contact{font-family:var(--sans);font-size:13.5px}
.foot-cols{display:flex;gap:64px;margin-top:26px}
.foot-cols .textlink{line-height:2}

/* ---- responsive ---- */
@media(max-width:820px){
  .mainnav{display:none}
  .menubtn{display:block}
  .masthead.nav-open .mainnav{display:flex;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:0 12px 24px rgba(43,42,36,.08);padding:8px 0}
  .masthead.nav-open .mainnav a{padding:14px 24px;border-bottom:1px solid var(--rule);font-size:15px}
  .masthead.nav-open .mainnav a:last-child{border-bottom:none}
  .hero-grid{grid-template-columns:1fr;text-align:center}
  .hero-copy .btnrow{justify-content:center}
  .hero-covers{order:-1}
  .hcover-ss{transform:none}
  .bookmini{grid-template-columns:1fr;text-align:center;justify-items:center}
  .journalfeat{grid-template-columns:1fr}
  .foot-cols{flex-direction:column;gap:28px}
}

/* ---- figure-slot sizing discipline (placeholders hold real proportions) ---- */
.hcover{width:min(42%,150px)}
.hcover .coverimg{width:100%}
@media(max-width:820px){
  .hero-covers{gap:16px}
  .hcover{width:min(40%,140px)}
  .bookmini-cover{width:120px;margin-inline:auto}
  .journalfeat .figslot{max-width:100%;aspect-ratio:16/10}
}
/* cap any slot so aspect-ratio can never runaway */
.figslot{max-width:100%}
.bookmini-cover{width:96px}
@media(max-width:820px){.bookmini-cover{width:120px}}

/* hero: single FA cover, larger + centered in its column */
.hero-covers-single{justify-content:center}
.hero-covers-single .hcover{width:min(72%,240px)}
@media(max-width:820px){.hero-covers-single .hcover{width:min(60%,200px)}}

/* homepage bookshelf (visual shelf) */
.bookshelf .shelfrow{display:flex;gap:clamp(12px,2vw,26px);justify-content:center;align-items:flex-end;flex-wrap:nowrap;margin-top:8px}
.bookshelf .shelfcover{display:block}
.bookshelf .shelfcover .coverimg{width:clamp(120px,21vw,214px);height:auto;display:block}
.bookshelf .shelfnote{text-align:center;font-family:var(--sans);font-size:13px;color:var(--ink-soft);margin-top:26px}
@media(max-width:820px){.bookshelf .shelfrow{gap:clamp(8px,1.6vw,16px)}.bookshelf .shelfcover .coverimg{width:clamp(70px,21vw,150px)}}

/* ===== home top intro line (restored) ===== */
.hometop{font-family:var(--serif);font-style:italic;font-size:clamp(16px,1.9vw,19px);color:var(--ink-soft);margin-bottom:20px;max-width:60ch}

/* ===== hero: Explore FA under the cover, bigger Browse all books ===== */
.hero-covers-single{flex-direction:column;align-items:center;gap:18px}
.hero-cta-under{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:4px}
.hero .hero-copy .btnrow .textlink{font-size:16px}
.hero-copy .btnrow{align-items:center}

/* ===== new 3-column footer (matches image 4) ===== */
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(32px,5vw,64px);padding-block:var(--sect-sm)}
.foot-brand p{color:var(--ink-soft)}
.foot-subline{margin-top:16px;font-size:15px}
.foot-legal{border-top:1px solid var(--rule);padding-block:20px;font-family:var(--sans);font-size:13px;color:var(--ink-soft);display:flex;gap:10px;align-items:center}
.foot-legal .textlink{font-size:13px}
.foot-sep{opacity:.5}
.sitefoot .foot-grid .textlink{line-height:2.1}
@media(max-width:820px){.foot-grid{grid-template-columns:1fr;gap:32px}}

/* ===== grey-zone article figure ===== */
.greyzonefig{background:var(--paper-deep);border:1px solid var(--rule);border-top:2px solid var(--gold);border-radius:4px;padding:20px;display:flex;align-items:center;justify-content:center}
.greyzonefig svg{width:100%;height:auto;max-height:200px}
.greyzonewide{background:var(--paper-deep);border:1px solid var(--rule);border-top:2px solid var(--gold);border-radius:4px;padding:28px;margin:20px 0 28px}
.greyzonewide svg{width:100%;height:auto}

/* hero: Browse all books under Explore, larger */
.hero-cta-under{display:flex;flex-direction:column;align-items:center;gap:14px}
.hero-cta-under .btn-primary{width:auto}
.hero-browse{font-size:18px;font-weight:600;text-align:center}

/* wired email forms (behaviour preserved from live site) */
.subform{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.subform input{flex:0 1 auto;width:100%;max-width:320px;padding:12px 14px;border:1px solid var(--rule);font-family:var(--sans);font-size:14px;background:#fff}
.contactform{display:grid;gap:12px;margin-top:20px;max-width:60ch}
.contactform input,.contactform textarea{padding:12px 14px;border:1px solid var(--rule);font-family:var(--sans);font-size:14px;background:#fff;resize:vertical}
.hp{display:none}
.formmsg{font-family:var(--sans);font-size:13px;color:var(--ink-soft);margin-top:10px}
.footsub{margin-top:24px;padding-top:22px;border-top:1px solid var(--rule)}
.samplepages{max-width:820px;margin:0 auto;display:grid;gap:16px}
.samplepage{width:100%;height:auto;box-shadow:0 8px 28px -14px rgba(30,20,20,.35);border:1px solid var(--rule-soft)}
.articlecross{margin-top:36px}

/* Brand hero (Change 1, Andy ruling 15 Aug 2026) */
.trip{font-family:var(--sans);font-weight:600;font-size:clamp(12px,1.32vw,17px);letter-spacing:.15em;text-transform:uppercase;color:var(--ink);margin:0 0 6px;white-space:nowrap}
@media(max-width:640px){.trip{white-space:normal;font-size:13px}}
.trip b{color:#B08A3E;font-weight:600;padding:0 6px}
.rule-line{width:100%;max-width:520px;height:1px;background:var(--rule);position:relative;margin:16px 0 20px}
.rule-line::after{content:"";position:absolute;left:50%;top:-2.5px;width:6px;height:6px;border-radius:50%;background:#B08A3E;transform:translateX(-50%)}
.h-bridge{font-family:var(--serif);font-size:clamp(30px,3.4vw,44px);line-height:1.18;color:var(--ink);margin:0 0 18px;font-weight:400}
.bene{font-family:var(--sans);font-style:normal;font-weight:600;font-size:clamp(16px,1.7vw,21px);color:var(--ink);margin:0 0 22px;line-height:1.45;letter-spacing:.005em}
.bene .usp{color:var(--sage-deep);font-weight:700}
@media(max-width:640px){.bene{white-space:normal;font-size:16px}}

/* hero recognition hook — the warm pull-in, sits under the value line */
.hero-hook{font-family:var(--serif);font-size:clamp(17px,1.6vw,20px);line-height:1.5;color:var(--ink);margin:22px 0 0;max-width:34ch}

/* ---- 2-series bookshelf (added 2026-08-26) ---- */
.bookshelf .shelfgroup{margin-top:30px}
.bookshelf .shelfgroup:first-of-type{margin-top:12px}
.bookshelf .shelflabel{text-align:center;font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}
.bookshelf .shelfcover{position:relative}

.bookshelf .soonflag{position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);background:var(--sage-deep);color:var(--paper);font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:3px;white-space:nowrap;box-shadow:0 2px 8px rgba(40,56,44,.28)}

/* ---- journal feature colored-panel (for articles without a figure yet) ---- */
.journalfeat-tint{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;border-radius:6px;background:color-mix(in srgb, var(--accent) 12%, var(--paper));border:1px solid color-mix(in srgb, var(--accent) 28%, var(--rule-soft));text-decoration:none}
.journalfeat-tint .tintlabel{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2.2vw,24px);color:var(--accent);text-align:center;padding:0 20px}

/* ---- books-index coming-soon variant (added 2026-08-26) ---- */

.eyebrow-soon{color:var(--sage-deep) !important}
.shelfbook-soon .shelf-sub{color:var(--ink-soft)}

/* ---- AA/SA height-match (class-based, survives mockup image inlining; remove when matched frames supplied) ---- */

@media(max-width:820px){

}

.artfig{max-width:100%;height:auto;display:block}

.sources{font-family:var(--sans);font-size:14px;line-height:1.55;color:var(--ink-soft);border-top:1px solid var(--rule-soft);padding-top:12px;margin:26px 0 18px}
.sources a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

.flow-rule{border:0;border-top:1px solid var(--rule-soft);margin:30px 0 26px}

/* adjacent plain sections (27 Aug 2026): stop paddings stacking — the About-page fix, applied site-wide */
section.section:not(.section-tint):not(.panel-dark):not(.hero) + section.section:not(.section-tint):not(.panel-dark){padding-top:0}
section.section:not(.section-tint):not(.panel-dark):not(.hero) + section.section:not(.section-tint):not(.panel-dark) > .wrap{border-top:1px solid var(--rule-soft);padding-top:clamp(22px,2.6vw,34px)}

/* review proof lines (27 Aug 2026) */
.proofline{font-family:var(--sans);font-size:15px;line-height:1.5;color:var(--ink);margin:14px 0 18px}
.proofline .stars{color:var(--gold);letter-spacing:2px;font-size:14px}
.proofline b{font-family:var(--serif);font-style:italic;font-weight:600}
.proofline .proofattr{display:inline-block;color:var(--ink-soft);font-size:13.5px}
.proofline-center{text-align:center;margin:0}
/* homepage proof band (27 Aug): match the page's type scale and sit centred in its own space */
section.proofband{padding:clamp(30px,4vw,48px) 0 !important;display:flex;align-items:center;min-height:clamp(140px,14vw,190px)}
section.proofband > .wrap{border-top:0 !important;padding-top:0 !important;width:100%}
section.proofband .measure{margin-inline:auto}
.proofband .proofline{font-family:var(--serif);font-size:clamp(19px,2.1vw,25px);line-height:1.45;color:var(--ink)}
.proofband .proofline .stars{font-size:clamp(15px,1.5vw,18px);letter-spacing:3px;display:block;margin-bottom:10px}
.proofband .proofline b{font-weight:400;font-style:italic}
.proofband .proofline .proofattr{display:block;margin-top:10px;font-family:var(--sans);font-size:14px;color:var(--ink-soft)}

/* byline + book intro question (28 Aug 2026) */
.byline{font-family:var(--sans);font-size:13.5px;letter-spacing:.02em;color:var(--ink-soft);margin:-4px 0 22px}
.byline a{color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px}
.byline a:hover{color:var(--ink)}
.introq{font-family:var(--serif);font-size:clamp(17px,1.8vw,19px);line-height:1.5;color:var(--ink);border-left:3px solid var(--accent,var(--gold));padding-left:16px;margin:18px 0 22px}
