/* ============================================================
   BAIBE MODULE PAGES, shared styles
   One page per marketing module, at /modules/<slug>/.
   Same brand system as the landing page and the Journal:
   forest green #1F2A1B · ivory #FBF9F4 · parchment #EDE7DB
   Cormorant Garamond (display/body) + Jost (labels/caps)

   Two deliberate departures from the rest of the site:
   1. Body copy is near-black, not #20291D. These pages carry
      long spec copy, and it has to stay readable on cream.
   2. "What you get" sits on a white panel and "what is not
      included" is folded away. The buyer should meet the
      inclusions first, at full volume.
   ============================================================ */

:root{
  --green:#1F2A1B; --green2:#2A3824;
  --ivory:#FBF9F4; --parch:#EDE7DB;
  --ink:#111510;
  --faint:#8A8672;
  --rule:#C9C3B0; --border:#DAD4C4;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Cormorant Garamond',serif;background:var(--ivory);color:var(--ink);font-size:20px;line-height:1.6;-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums;font-feature-settings:'lnum' 1;}
em{font-style:italic;}
a{color:inherit;}
img{max-width:100%;height:auto;display:block;}
.eyebrow{font-family:'Jost',sans-serif;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;}
.wrap{max-width:1060px;margin:0 auto;padding:0 24px;}

/* ---------- sticky masthead: Home · Free Guides · the CTA ---------- */
nav{position:sticky;top:0;z-index:50;background:var(--ivory);border-bottom:1px solid var(--border);padding:16px 0;}
nav .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;}
.logo{font-family:'Cormorant Garamond',serif;font-size:22px;letter-spacing:.02em;text-decoration:none;color:var(--ink);}
.logo span:first-child{font-style:italic;}
.logosub{font-style:normal;}
.navright{display:flex;align-items:center;gap:26px;}
.navlink{font-family:'Jost',sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);text-decoration:none;transition:.2s;white-space:nowrap;}
.navlink:hover{opacity:.55;}
.navcta{font-family:'Jost',sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);border:1px solid var(--green);border-radius:24px;padding:9px 20px;text-decoration:none;transition:.25s;white-space:nowrap;}
.navcta:hover{background:var(--green);color:var(--ivory);}
@media(max-width:560px){ .logosub{display:none;} .navright{gap:14px;} .navlink{font-size:11px;letter-spacing:.12em;} .navcta{padding:9px 14px;font-size:10.5px;letter-spacing:.12em;} }

/* ---------- module header ---------- */
.mhead{background:var(--green);color:var(--ivory);padding:74px 0 62px;}
.mhead .wrap{max-width:860px;}
.mhead .kicker{font-family:'Jost',sans-serif;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:#C4BFA6;margin-bottom:20px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;}
.mhead .kicker .dot{opacity:.5;}
.mhead .rn{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;letter-spacing:.04em;text-transform:none;color:var(--ivory);}
.mhead h1{font-weight:500;font-size:clamp(38px,5.6vw,62px);line-height:1.06;letter-spacing:.005em;}
.mhead .standfirst{font-size:22px;font-style:italic;color:#E6E1D2;margin-top:22px;max-width:660px;}
.mhead .hrow{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;}
.btn{display:inline-block;font-family:'Jost',sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;background:var(--ivory);color:var(--green);padding:16px 34px;border-radius:36px;text-decoration:none;transition:.25s;}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.28);}
.btn.ghost{background:transparent;color:var(--ivory);border:1px solid rgba(251,249,244,.55);}

/* ---------- breadcrumb ---------- */
.backrow{padding-top:26px;padding-bottom:0;}  /* shorthand here would wipe .wrap's 24px side padding */
.backrow.wrap{max-width:860px;}
.backlink{font-family:'Jost',sans-serif;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--green);text-decoration:none;}
.backlink:hover{opacity:.6;}

/* ---------- body ---------- */
.mbody{padding:34px 0 26px;}
.mbody .wrap{max-width:860px;}
.mbody .intro{background:var(--green);color:#FBF9F4;padding:34px 40px 32px;margin-bottom:30px;}
.mbody .intro .lbl{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:#C4BFA6;display:block;margin-bottom:12px;}
.mbody .intro p{font-size:21.5px;line-height:1.5;margin:0;}
@media(max-width:620px){ .mbody .intro{padding:26px 24px 24px;} .mbody .intro p{font-size:20px;} }

/* the panel: inclusions, white card, black type, loudest thing on the page */
.getpanel{background:#fff;border:1px solid var(--border);box-shadow:0 12px 34px rgba(31,42,27,.08);padding:44px 48px 40px;margin-bottom:34px;}
.getpanel .tag{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:#fff;background:var(--green);display:inline-block;padding:7px 16px;margin-bottom:20px;}
.getpanel h2{font-weight:500;font-size:clamp(30px,3.8vw,40px);line-height:1.12;margin-bottom:26px;color:#000;}
.getpanel ul{list-style:none;margin:0 0 4px;padding:0;}
.getpanel li{padding-left:34px;position:relative;margin-bottom:17px;font-size:19.5px;line-height:1.5;color:#000;}
.getpanel li:before{content:"\2192";position:absolute;left:0;font-family:'Jost',sans-serif;color:var(--green);font-size:16px;top:4px;}
.getpanel h3{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);font-weight:500;margin:36px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--border);}
.getpanel h3:first-of-type{margin-top:0;}
.getpanel .note{font-size:18.5px;line-height:1.5;color:#22271e;margin:0 0 18px;}
.getpanel .note:last-child{margin-bottom:0;}
.getpanel strong{font-weight:600;color:#000;}
@media(max-width:620px){ .getpanel{padding:32px 26px 30px;} }

/* tier table: one row, three columns, in green. Replaces the stacked tier cards.
   Collapses to three stacked blocks under 700px, where three columns of prose
   would be unreadable, with the tier name carried on each block by data-tier. */
.tiertable{width:100%;border-collapse:collapse;background:var(--green);color:#FBF9F4;margin:0 0 26px;table-layout:fixed;}
.tiertable th{font-family:'Jost',sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:#C4BFA6;text-align:left;padding:16px 20px 10px;vertical-align:bottom;border-bottom:1px solid rgba(251,249,244,.22);}
.tiertable td{padding:15px 20px 20px;font-size:18px;line-height:1.45;vertical-align:top;color:#FBF9F4;}
.tiertable th + th, .tiertable td + td{border-left:1px solid rgba(251,249,244,.18);}
@media(max-width:700px){
  .tiertable, .tiertable tbody, .tiertable tr, .tiertable td{display:block;width:100%;}
  .tiertable thead{display:none;}
  .tiertable td{border-left:none !important;border-top:1px solid rgba(251,249,244,.18);padding:16px 22px 20px;}
  .tiertable tr td:first-child{border-top:none;}
  .tiertable td:before{content:attr(data-tier);display:block;font-family:'Jost',sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:#C4BFA6;margin-bottom:6px;}
}

/* callout */
.callout{background:var(--parch);border-left:3px solid var(--green);padding:24px 28px;margin:0 0 30px;font-size:19px;line-height:1.5;color:var(--ink);}
.callout b{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);display:block;margin-bottom:8px;font-weight:500;}

/* exclusions: always visible, on parchment, in the same readable near-black as the
   inclusions. Hierarchy comes from the panel colour and a slightly smaller size,
   never from making the copy hard to read. */
.notinc{background:var(--parch);border:1px solid var(--border);border-left:3px solid var(--green);padding:34px 40px 30px;margin:0 0 12px;}
.notinc .lbl{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--green);display:block;margin-bottom:12px;}
.notinc h2{font-weight:500;font-size:clamp(24px,2.9vw,30px);line-height:1.15;margin-bottom:20px;color:var(--ink);}
.notinc ul{list-style:none;margin:0;padding:0;}
.notinc li{padding-left:30px;position:relative;margin-bottom:13px;font-size:18px;line-height:1.5;color:var(--ink);}
.notinc li:last-child{margin-bottom:0;}
.notinc li:before{content:"\00D7";position:absolute;left:2px;color:var(--green);font-size:16px;top:2px;}
.notinc li strong{font-weight:600;}
@media(max-width:620px){ .notinc{padding:26px 24px 24px;} }

/* ---------- the other five modules ---------- */
.siblings{padding:64px 0 78px;background:var(--parch);}
.siblings .seclabel{display:flex;align-items:center;gap:14px;margin-bottom:24px;color:var(--green);}
.siblings .seclabel:after{content:"";flex:1;border-top:1px solid var(--rule);}
.sibgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.sib{background:#fff;border:1px solid var(--border);padding:24px 24px 22px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:.25s;}
.sib:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(31,42,27,.14);}
.sib i{font-style:italic;color:var(--faint);font-size:19px;}
.sib h4{font-weight:600;font-size:20px;line-height:1.2;margin:4px 0 8px;color:#000;}
.sib p{font-size:16.5px;line-height:1.42;color:#2b3126;flex:1;}
.sib .go{font-family:'Jost',sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);margin-top:16px;}
@media(max-width:880px){ .sibgrid{grid-template-columns:1fr 1fr;} }
@media(max-width:620px){ .sibgrid{grid-template-columns:1fr;} }

/* ---------- closing CTA ---------- */
.ctablock{background:var(--green);color:var(--ivory);}
.ctablock .wrap{max-width:760px;text-align:center;padding-top:70px;padding-bottom:70px;}
.ctablock .eyebrow{color:#C4BFA6;margin-bottom:18px;}
.ctablock h2{font-weight:500;font-size:clamp(28px,4vw,42px);line-height:1.12;max-width:620px;margin:0 auto 14px;}
.ctablock p{font-size:20px;font-style:italic;color:#E6E1D2;max-width:560px;margin:0 auto 34px;}
.ctarow{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* ---------- footer ---------- */
footer{background:var(--green);color:#A9A489;text-align:center;padding:38px 20px;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;border-top:1px solid rgba(251,249,244,.14);}
footer a{color:#DDD8C7;text-decoration:none;}
.socials{display:flex;justify-content:center;align-items:center;gap:26px;margin-bottom:24px;}
.socials a{display:inline-flex;color:#DDD8C7;opacity:.8;transition:opacity .2s;}
.socials a:hover{opacity:1;}
.socials svg{width:20px;height:20px;fill:currentColor;display:block;}
.footlinks{margin-bottom:16px;}
