/* =========================================================================
   SYSTEM B · Barbara's funnel brand (register / thank-you / replay / deck /
   emails / ads specimens). Luxe editorial: ivory + espresso ink + cognac CTA
   + champagne hairlines. Cormorant Garamond display, Jost text.
   Contrast checked: ink on ivory 16.1:1 · muted on ivory 6.2:1 ·
   ivory on cognac 5.7:1 · ivory on espresso 15.9:1.
   ========================================================================= */
@font-face{font-family:"Cormorant Garamond";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:500;font-style:normal;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:400;font-style:italic;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:500;font-style:italic;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"Jost";font-weight:400;font-display:swap;src:url(fonts/jost-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-weight:500;font-display:swap;src:url(fonts/jost-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-weight:600;font-display:swap;src:url(fonts/jost-latin-600-normal.woff2) format("woff2")}

:root{
  --ivory:#f8f4ee;        /* page base */
  --ivory-2:#f1e9de;      /* soft band (fade into it, never hard edge) */
  --paper:#fffdf9;        /* cards */
  --ink:#1b1511;          /* primary text */
  --muted:#5f5246;        /* secondary text */
  --faint:#76695c;        /* tertiary, labels */
  --hair:rgba(27,21,17,.12);
  --hair-soft:rgba(27,21,17,.07);
  --accent:#8c5a32;       /* cognac: CTA fill, active, marks */
  --accent-deep:#6f4524;  /* CTA hover */
  --accent-ink:#fffaf2;   /* text on accent */
  --gold:#c9a56b;         /* champagne hairlines + small details only */
  --espresso:#14100d;     /* dark bands / deck dark slides */
  --display:"Cormorant Garamond", "Times New Roman", serif;
  --sans:"Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
  --radius:18px;
  --ease:cubic-bezier(.16,1,.3,1);
  --shadow:0 1px 2px rgba(27,21,17,.05), 0 18px 48px -18px rgba(27,21,17,.22);
}

/* ---- base ---- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 20px/1.65 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--accent);color:var(--accent-ink)}
img,svg,video,canvas,iframe{max-width:100%;height:auto;display:block}
a{color:inherit}
.fb-wrap{width:min(1120px,100% - 40px);margin-inline:auto}
.fb-narrow{width:min(760px,100% - 40px);margin-inline:auto}

/* type */
.fb-eyebrow{font:500 15px/1.2 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin:0 0 18px}
.fb-h1{font:500 clamp(38px, 5.2vw, 66px)/1.06 var(--display);letter-spacing:-.015em;margin:0;text-wrap:balance}
.fb-h2{font:500 clamp(32px, 4vw, 50px)/1.1 var(--display);letter-spacing:-.01em;margin:0;text-wrap:balance}
.fb-h3{font:500 clamp(24px, 2.4vw, 30px)/1.2 var(--display);margin:0}
.fb-h1 em,.fb-h2 em,.fb-h3 em{font-style:italic;color:var(--accent)}
.fb-lead{font:400 clamp(19px, 1.6vw, 22px)/1.6 var(--sans);color:var(--muted);margin:0}
.fb-rule{width:64px;height:1px;background:var(--gold);border:0;margin:28px auto}

/* buttons */
.fb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:16px 34px;border-radius:999px;border:0;cursor:pointer;
  background:var(--accent);color:var(--accent-ink);font:500 17px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  box-shadow:0 10px 30px -12px rgba(140,90,50,.55);transition:transform .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease)}
.fb-btn:hover{background:var(--accent-deep);transform:translateY(-1px) scale(1.02);box-shadow:0 16px 36px -14px rgba(140,90,50,.6)}
.fb-btn:active{transform:scale(.98)}
.fb-btn--ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--hair)}
.fb-btn--ghost:hover{background:var(--paper)}

/* cards */
.fb-card{background:var(--paper);border:1px solid var(--hair-soft);border-radius:var(--radius);box-shadow:var(--shadow)}

/* footer: branding-only banner, 1.5x the logo height, centred */
.fb-foot{display:flex;align-items:center;justify-content:center;height:96px;background:var(--espresso)}
.fb-foot img{height:64px;width:auto;opacity:.92}

/* reveal (progressive enhancement: visible without JS) */
.js .fb-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .fb-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .fb-reveal{opacity:1;transform:none;transition:none}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* ---- mobile hardening (references/mobile.md) ---- */
p,li,td,th,blockquote,figcaption,h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere}
table,pre{display:block;max-width:100%;overflow-x:auto}
@media (max-width:700px){
  body{font-size:19px}
  .fb-btn{width:100%}
}
@media (max-width:420px){ .tok-merge,.tok-link,code{white-space:normal} }
