/* ===========================================================
   Micah Jacobi — site styles  ·  Design System v2 "Editorial Oxblood"
   Cream paper. Oxblood (#7C2A2A) = accent on light. Gold (#C79A46) = accent on dark.
   Main headlines: Playfair Display. Body: Inter. Labels: Space Mono.
   =========================================================== */
:root{
  --ink:#17140F; --muted:#7A736A; --inverse:#EDE7DB;
  --paper:#F4EFE4; --alt:#EDE7DB; --dark:#100E0C; --card:#FFFFFF;
  --line:#DED6C7; --line-dark:rgba(237,231,219,.14);
  /* oxblood = the light-section accent (kept under the old --amber name so all existing rules retheme) */
  --amber:#7C2A2A; --amber-deep:#5E1E1E; --amber-tint:#EBD9D2;
  /* gold = the dark-section accent */
  --gold:#C79A46; --gold-deep:#B08A3E; --gold-on-light:#8a6a26;
  --blue:#7C2A2A;             /* legacy sprinkles folded into oxblood */
  --fr:'Playfair Display',Georgia,'Times New Roman',serif;
  --grotesk:'Space Grotesk',system-ui,sans-serif;
  --inter:'Inter',system-ui,sans-serif;
  --mono:'Space Mono',ui-monospace,monospace;
  --maxw:1120px; --measure:680px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--inter);
  font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

/* ---------- type ---------- */
h1,h2,h3{margin:0;color:var(--ink);}
h1{font-family:var(--fr);font-weight:500;font-size:60px;line-height:1.04;letter-spacing:-.015em;}
h2{font-family:var(--fr);font-weight:500;font-size:41px;line-height:1.08;letter-spacing:-.008em;}
h3{font-family:var(--grotesk);font-weight:500;font-size:21px;line-height:1.25;}
/* italic serif emphasis word (replaces the old underline keyword where used) */
.em{font-style:italic;position:relative;color:var(--amber);}
.em.ul::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:currentColor;}
p{margin:0 0 16px;max-width:var(--measure);}
.lead{font-size:20px;color:var(--ink);}
b,strong{font-weight:600;}
small{font-size:14px;}
.eyebrow{font-family:var(--mono);font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;font-size:13px;color:var(--muted);
  display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--amber);display:inline-block;}
.u{border-bottom:3px solid var(--amber);padding-bottom:1px;}
a{color:var(--ink);}
a.inline{color:var(--amber);text-decoration:underline;text-underline-offset:2px;font-weight:500;}
a.inline:hover{color:var(--amber-deep);}

/* ---------- layout / sections ---------- */
section{padding:72px 0;border-bottom:1px solid var(--line);}
.band-alt{background:var(--alt);}
.band-dark{background:var(--dark);color:var(--inverse);border-bottom:none;}
.band-dark h1,.band-dark h2,.band-dark h3{color:var(--inverse);}
.band-dark p{color:#C9CEC9;}
.band-dark .eyebrow{color:#C9B7A6;}
.center{text-align:center;}
.center .eyebrow{justify-content:center;}
.center p{margin-left:auto;margin-right:auto;}
.grid{display:grid;gap:22px;}
.g2{grid-template-columns:1fr 1fr;}
.g3{grid-template-columns:repeat(3,1fr);}
.g4{grid-template-columns:repeat(4,1fr);}
.mt8{margin-top:8px;}.mt16{margin-top:16px;}.mt24{margin-top:24px;}.mt32{margin-top:32px;}

/* ---------- buttons ---------- */
.btn{display:inline-block;font-family:var(--inter);font-weight:600;font-size:16px;
  padding:14px 28px;border-radius:6px;text-decoration:none;cursor:pointer;
  border:1.5px solid transparent;transition:background .15s,color .15s;}
.btn-primary{background:var(--amber);color:#fff;}
.btn-primary:hover{background:var(--amber-deep);}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--inverse);}
.band-dark .btn-ghost{color:var(--inverse);border-color:rgba(250,250,247,.55);}
.band-dark .btn-ghost:hover{background:var(--inverse);color:var(--ink);}
.btn-link{background:none;border:none;color:var(--amber);font-weight:600;
  text-decoration:none;font-size:16px;font-family:var(--inter);}
.btn-link:hover{color:var(--amber-deep);}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:8px;}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,250,247,.9);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px;}
.brand{font-family:var(--grotesk);font-weight:700;font-size:20px;letter-spacing:-.01em;
  text-decoration:none;color:var(--ink);}
.brand .dot{color:var(--amber);}
.nav-links{display:flex;align-items:center;gap:26px;}
.nav-links a{font-size:15px;text-decoration:none;color:var(--ink);font-weight:500;}
.nav-links a:hover{color:var(--amber-deep);}
.nav-links .btn{padding:9px 18px;font-size:15px;}
.nav-toggle{display:none;background:none;border:none;font-size:24px;cursor:pointer;color:var(--ink);}

/* ---------- hero ---------- */
.hero{padding-top:76px;padding-bottom:72px;}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;}
.status{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;}
.status .live{width:9px;height:9px;border-radius:50%;background:var(--blue);display:inline-block;} /* blue sprinkle */

/* ---------- stats ---------- */
.stat .num{font-family:var(--grotesk);font-weight:700;font-size:60px;line-height:1;color:var(--amber);}
.stat .lbl{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;
  color:var(--muted);margin-top:8px;}
.band-dark .stat .num{color:var(--amber);}
.band-dark .stat .lbl{color:#A79A8C;}

/* ---------- cards ---------- */
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:26px;}
.card h3{margin-bottom:8px;}
.card .kick{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--blue);margin-bottom:10px;} /* blue sprinkle */
.card p{margin-bottom:12px;}
.card p:last-child{margin-bottom:0;}
.price{font-family:var(--grotesk);font-weight:700;font-size:15px;color:var(--amber);
  background:var(--amber-tint);display:inline-block;padding:3px 10px;border-radius:5px;margin-top:4px;}
.tick{list-style:none;padding:0;margin:12px 0 0;}
.tick li{position:relative;padding-left:22px;margin-bottom:7px;font-size:15px;}
.tick li::before{content:"→";position:absolute;left:0;color:var(--amber);font-weight:700;}

/* ---------- placeholders (replace with real assets) ---------- */
.ph{position:relative;border:1px dashed #C9C6BC;border-radius:12px;overflow:hidden;
  background:repeating-linear-gradient(45deg,#EEEBE3,#EEEBE3 11px,#E5E1D7 11px,#E5E1D7 22px);
  display:flex;align-items:center;justify-content:center;text-align:center;padding:14px;
  font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#8A867B;}
.ph.portrait{aspect-ratio:4/5;}
.ph.wide{aspect-ratio:16/9;}
.ph.square{aspect-ratio:1/1;}
.ph.avatar{width:54px;height:54px;border-radius:50%;flex:0 0 auto;padding:4px;font-size:9px;}
.band-dark .ph{border-color:rgba(250,250,247,.3);color:#9A968C;
  background:repeating-linear-gradient(45deg,#1b1c18,#1b1c18 11px,#222420 11px,#222420 22px);}

/* ---------- testimonials ---------- */
.tcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px;}
.tcard .quote{font-family:var(--grotesk);font-weight:500;font-size:18px;line-height:1.4;margin:0 0 18px;}
.tcard .who{display:flex;align-items:center;gap:12px;}
.tcard .who .meta b{display:block;font-size:15px;}
.tcard .who .meta span{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
.stars{color:var(--amber);font-size:14px;letter-spacing:2px;margin-bottom:10px;}

/* ---------- logo strip ---------- */
.logos{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;align-items:center;}
.logos .ph{aspect-ratio:5/2;border-radius:8px;font-size:10px;}

/* ---------- steps ---------- */
.step{border-top:2px solid var(--ink);padding-top:14px;}
.step .n{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--blue);} /* blue sprinkle */
.step h3{margin:6px 0 6px;}
.step p{font-size:15px;margin:0;}

/* ---------- faq ---------- */
.faq{max-width:760px;}
.faq details{border-bottom:1px solid var(--line);padding:16px 0;}
.faq summary{font-family:var(--grotesk);font-weight:500;font-size:19px;cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;gap:16px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";color:var(--amber);font-family:var(--mono);}
.faq details[open] summary::after{content:"–";}
.faq p{margin:12px 0 0;font-size:16px;}

/* ---------- blog ---------- */
.post{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.post .thumb{aspect-ratio:16/9;border:none;border-radius:0;border-bottom:1px dashed #C9C6BC;}
.post .body{padding:20px;}
.post .cat{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--blue);} /* blue sprinkle */
.post h3{margin:8px 0 8px;font-weight:700;font-size:20px;}
.post .date{font-family:var(--mono);font-size:11px;color:var(--muted);}

/* ---------- footer ---------- */
.site-footer{background:var(--dark);color:var(--inverse);padding:52px 0 34px;}
.site-footer a{color:var(--inverse);text-decoration:none;opacity:.85;}
.site-footer a:hover{opacity:1;color:var(--amber);}
.foot-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start;}
.foot-brand{font-family:var(--grotesk);font-weight:700;font-size:22px;}
.foot-brand .dot{color:var(--amber);}
.foot-links{display:flex;gap:40px;flex-wrap:wrap;}
.foot-col b{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;
  color:#9A968C;display:block;margin-bottom:12px;font-weight:700;}
.foot-col a{display:block;margin-bottom:8px;font-size:15px;}
.foot-bottom{border-top:1px solid var(--line-dark);margin-top:36px;padding-top:18px;
  font-family:var(--mono);font-size:12px;color:#9A968C;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}

/* ---------- page hero mini ---------- */
.page-hero{padding:72px 0 56px;}
.page-hero .lead{max-width:640px;}

/* ---------- responsive ---------- */
@media(max-width:860px){
  h1{font-size:38px;}h2{font-size:28px;}
  .hero-grid{grid-template-columns:1fr;gap:30px;}
  .g2,.g3,.g4{grid-template-columns:1fr;}
  .logos{grid-template-columns:repeat(3,1fr);}
  .foot-grid{flex-direction:column;}
  .nav-links{position:fixed;inset:64px 0 auto 0;background:var(--paper);flex-direction:column;
    align-items:flex-start;gap:0;padding:8px 24px 20px;border-bottom:1px solid var(--line);
    transform:translateY(-140%);transition:transform .2s;box-shadow:0 12px 24px rgba(0,0,0,.06);}
  .nav-links.open{transform:translateY(0);}
  .nav-links a{width:100%;padding:13px 0;border-bottom:1px solid var(--line);}
  .nav-links .btn{margin-top:12px;width:100%;text-align:center;}
  .nav-toggle{display:block;}
  section{padding:52px 0;}
}

/* ===========================================================
   PHASE 1 MOTION  (all gated on .motion — no JS = fully visible)
   =========================================================== */

/* scroll reveal: section fades/slides up once in view */
.motion .reveal{opacity:0;transform:translateY(20px);
  transition:opacity .6s cubic-bezier(.22,.61,.36,1),transform .6s cubic-bezier(.22,.61,.36,1);}
.motion .reveal.in{opacity:1;transform:none;}

/* staggered children inside a revealed grid */
.motion .reveal .grid>*{opacity:0;transform:translateY(16px);
  transition:opacity .5s ease,transform .5s ease;}
.motion .reveal.in .grid>*{opacity:1;transform:none;}
.motion .reveal.in .grid>*:nth-child(2){transition-delay:.06s;}
.motion .reveal.in .grid>*:nth-child(3){transition-delay:.12s;}
.motion .reveal.in .grid>*:nth-child(4){transition-delay:.18s;}
.motion .reveal.in .grid>*:nth-child(5){transition-delay:.24s;}
.motion .reveal.in .grid>*:nth-child(6){transition-delay:.30s;}

/* rotating-word hero (typewriter) */
.rotate{display:inline-block;}
.motion .tw-cursor{display:inline-block;width:.06em;height:1em;margin-left:2px;
  background:var(--amber);transform:translateY(.12em);animation:blink 1s steps(1) infinite;}
@keyframes blink{50%{opacity:0;}}

/* status dot pulse */
.status .live{position:relative;}
.status .live::after{content:"";position:absolute;inset:0;border-radius:50%;
  background:var(--blue);animation:pulse 2s ease-out infinite;}
@keyframes pulse{0%{transform:scale(1);opacity:.6;}70%{transform:scale(3);opacity:0;}100%{opacity:0;}}

/* header shrink on scroll */
.site-header{transition:height .2s ease, box-shadow .2s ease, background .2s ease;}
.site-header.scrolled{box-shadow:0 6px 20px rgba(14,15,12,.06);}
.site-header.scrolled .nav{height:54px;}
.nav{transition:height .2s ease;}

/* button micro-interactions */
.btn{transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(232,121,43,.28);}
.btn-ghost:hover{transform:translateY(-1px);}
.btn-link{display:inline-block;transition:transform .18s ease,color .18s ease;}
.btn-link:hover{transform:translateX(3px);}

/* inline link arrow nudge (links whose text ends in →) */
a.inline{transition:color .15s ease;}

/* card hover lift + amber edge */
.card,.post,.tcard{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.card:hover,.post:hover{transform:translateY(-3px);border-color:#E8C7A8;
  box-shadow:0 12px 26px rgba(14,15,12,.07);}

/* stat number: hold layout during count-up */
.stat .num{font-variant-numeric:tabular-nums;}

/* reduced motion: strip everything animated */
@media (prefers-reduced-motion: reduce){
  .motion .reveal,.motion .reveal .grid>*{opacity:1!important;transform:none!important;transition:none!important;}
  .tw-cursor,.status .live::after{animation:none!important;}
  .btn-primary:hover,.btn-ghost:hover,.btn-link:hover,.card:hover,.post:hover{transform:none!important;}
}

/* ===========================================================
   PHASE 2 — signature graphics
   =========================================================== */

/* ---- floating tag chips (hero) ---- */
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.chip-tag{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;
  border:1px solid var(--line);border-radius:999px;padding:7px 14px;background:var(--card);color:var(--muted);}
.chip-tag.acc{border-color:var(--amber);color:var(--amber-deep);background:var(--amber-tint);}
.motion .chip-tag{animation:floaty 4.5s ease-in-out infinite;}
.motion .chip-tag:nth-child(2){animation-delay:.5s;}
.motion .chip-tag:nth-child(3){animation-delay:1s;}
.motion .chip-tag:nth-child(4){animation-delay:1.5s;}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* ---- radial hub diagram ---- */
.hub-wrap{max-width:540px;margin:36px auto 8px;}
.hub{width:100%;height:auto;display:block;overflow:visible;}
.hub .line{stroke:var(--amber);stroke-width:2;opacity:.5;stroke-dasharray:1;stroke-dashoffset:1;}
.motion .reveal.in .hub .line{animation:hubdraw .8s ease forwards var(--d,0s);}
@keyframes hubdraw{to{stroke-dashoffset:0;}}
.hub .ttl{font-family:var(--grotesk);fill:var(--ink);}
.hub .n{font-family:var(--mono);fill:var(--blue);}          /* blue sprinkle */
.hub .clab{font-family:var(--mono);fill:#9A968C;letter-spacing:1px;}
.hub .node{opacity:1;}
.motion .hub .node{opacity:0;transform:scale(.55);transform-box:fill-box;transform-origin:center;}
.motion .reveal.in .hub .node{animation:hubpop .55s cubic-bezier(.2,.7,.3,1.4) forwards var(--d,0s);}
@keyframes hubpop{to{opacity:1;transform:scale(1);}}
.motion .hub .pulse{transform-box:fill-box;transform-origin:center;animation:hubpulse 2.8s ease-out infinite;}
@keyframes hubpulse{0%{transform:scale(1);opacity:.35}70%{transform:scale(1.4);opacity:0}100%{opacity:0}}
.hub-legend{margin-top:26px;}
.hub-legend .n{font-family:var(--mono);font-weight:700;color:var(--blue);font-size:13px;}
.hub-legend h3{margin:4px 0 4px;font-size:18px;}
.hub-legend p{font-size:15px;margin:0;color:var(--muted);}

/* ---- scorecard gauge ---- */
.gauge-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:30px;text-align:center;}
.gauge{width:220px;height:130px;display:block;margin:0 auto;overflow:visible;}
.gauge .track{fill:none;stroke:var(--line);stroke-width:16;stroke-linecap:round;}
.gauge .fill{fill:none;stroke:var(--amber);stroke-width:16;stroke-linecap:round;
  stroke-dasharray:1;stroke-dashoffset:1;}
.gauge-num{font-family:var(--grotesk);font-weight:700;font-size:46px;line-height:1;margin-top:-46px;}
.gauge-num small{font-size:18px;color:var(--muted);font-weight:500;}
.gauge-label{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:14px;}

/* ---- big statement band ---- */
.statement{padding:100px 0;}
.statement h2{font-size:52px;line-height:1.08;letter-spacing:-.02em;max-width:20ch;}
.statement.center h2{margin-left:auto;margin-right:auto;}
@media(max-width:860px){.statement{padding:64px 0;} .statement h2{font-size:32px;}}

/* ---- comparison table ---- */
.compare-wrap{overflow-x:auto;margin-top:30px;}
.compare{width:100%;border-collapse:collapse;font-size:15px;min-width:560px;}
.compare th,.compare td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;}
.compare thead th{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;}
.compare tbody td:first-child{font-weight:500;}
.compare .mecol{background:var(--amber-tint);}
.compare thead .mecol{color:var(--amber-deep);}
.compare .yes{color:var(--amber-deep);font-weight:700;}
.compare .no{color:#BDB9AF;}
.compare tbody tr:last-child td{border-bottom:none;}

/* reduced motion resets for phase 2 */
@media (prefers-reduced-motion: reduce){
  .chip-tag,.hub .pulse{animation:none!important;}
  .hub .line{stroke-dashoffset:0!important;}
  .hub .node{opacity:1!important;transform:none!important;animation:none!important;}
  .gauge .fill{stroke-dashoffset:0!important;}
}

/* ===========================================================
   PHASE 3 — premium graphic component library
   =========================================================== */

/* section intro helper */
.sec-head{max-width:640px;}
.sec-head.center{margin:0 auto;text-align:center;}

/* ---- oversized stat callouts ---- */
.callouts{margin-top:26px;border-top:1px solid var(--line);}
.callout{display:flex;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);}
.callout .big{font-family:var(--grotesk);font-weight:700;font-size:60px;line-height:.95;color:var(--amber);min-width:180px;font-variant-numeric:tabular-nums;}
.callout .txt{font-size:18px;color:var(--ink);}
.callout .txt b{font-weight:600;}
.band-dark .callout{border-color:var(--line-dark);}
.band-dark .callout .txt{color:#D7DAD3;}
@media(max-width:640px){.callout{flex-direction:column;align-items:flex-start;gap:6px;} .callout .big{font-size:46px;}}

/* ---- bar chart ---- */
.chart-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 26px 34px;}
.bars{display:flex;align-items:flex-end;gap:14px;height:240px;margin-top:20px;}
.bars .bar{flex:1;background:#EDEAE2;border-radius:8px 8px 0 0;position:relative;height:8px;
  transition:height 1.1s cubic-bezier(.2,.7,.3,1);}
.motion .reveal.in .bars .bar{height:var(--h);}
.bars .bar.hot{background:var(--amber);}
.bars .bar .cap{position:absolute;top:-24px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--ink);}
.bars .bar .lab{position:absolute;bottom:-26px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:11px;color:var(--muted);}
@media (prefers-reduced-motion: reduce){.bars .bar{height:var(--h)!important;transition:none!important;}}

/* ---- funnel ---- */
.funnel{max-width:440px;margin:0 auto;}
.funnel .lvl{margin:0 auto 10px;color:#fff;text-align:center;padding:16px 12px;border-radius:10px;
  font-family:var(--grotesk);font-weight:700;display:flex;flex-direction:column;gap:2px;
  opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease;}
.motion .reveal.in .funnel .lvl{opacity:1;transform:none;}
.funnel .lvl small{font-family:var(--mono);font-weight:400;font-size:11px;opacity:.85;text-transform:uppercase;letter-spacing:.05em;}
.funnel .lvl:nth-child(1){width:100%;background:#0E0F0C;transition-delay:0s;}
.funnel .lvl:nth-child(2){width:80%;background:#7A4A1E;transition-delay:.1s;}
.funnel .lvl:nth-child(3){width:60%;background:#C25E17;transition-delay:.2s;}
.funnel .lvl:nth-child(4){width:42%;background:var(--amber);transition-delay:.3s;}

/* ---- flow diagram ---- */
.flow{display:flex;align-items:stretch;gap:0;flex-wrap:wrap;}
.flow .fnode{flex:1;min-width:120px;background:var(--card);border:1px solid var(--line);border-radius:12px;
  padding:16px 14px;text-align:center;}
.flow .fnode .fk{font-family:var(--mono);font-size:11px;color:var(--blue);font-weight:700;}
.flow .fnode h4{font-family:var(--grotesk);font-weight:600;font-size:15px;margin:6px 0 2px;text-transform:none;letter-spacing:0;color:var(--ink);}
.flow .fnode p{font-size:12px;color:var(--muted);margin:0;}
.flow .farrow{display:flex;align-items:center;color:var(--amber);font-size:22px;padding:0 6px;}
@media(max-width:760px){.flow{flex-direction:column;} .flow .farrow{transform:rotate(90deg);justify-content:center;padding:6px 0;}}

/* ---- SERP mockup ---- */
.serp{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;}
.serp .q{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-family:var(--mono);font-size:13px;color:var(--muted);margin-bottom:14px;}
.serp .q::before{content:"⌕";color:var(--amber);font-size:16px;}
.serp .row{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:10px;border:1px solid transparent;margin-bottom:6px;}
.serp .row.top{border-color:var(--amber);background:var(--amber-tint);}
.serp .rank{font-family:var(--mono);font-weight:700;font-size:12px;color:var(--muted);padding-top:2px;min-width:34px;}
.serp .row.top .rank{color:var(--amber-deep);}
.serp .rl{flex:1;}
.serp .rl .t{font-family:var(--grotesk);font-weight:600;font-size:15px;color:#1a4fd6;}
.serp .row.top .rl .t{color:var(--amber-deep);}
.serp .rl .u{font-family:var(--mono);font-size:11px;color:#6a8f5f;}
.serp .rl .d{font-size:12px;color:var(--muted);margin-top:2px;}

/* ---- browser / site mockup + skeleton ---- */
.browser{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 20px 40px rgba(14,15,12,.08);}
.browser .topbar{background:#F2F1EA;padding:11px 14px;display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);}
.browser .dot3{width:11px;height:11px;border-radius:50%;background:#D6D3C9;}
.browser .url{margin-left:10px;background:#fff;border:1px solid var(--line);border-radius:999px;font-family:var(--mono);font-size:11px;color:var(--muted);padding:4px 12px;}
.browser .screen{padding:22px;}
.sk{background:#ECEAE2;border-radius:6px;display:block;}
.sk.amber{background:var(--amber);}
.sk.line{height:12px;margin-bottom:10px;}
.sk.btn{height:34px;width:130px;border-radius:8px;}

/* ---- ad creative mockup ---- */
.adcard{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;max-width:300px;}
.adcard .media{aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#EEEBE3,#EEEBE3 11px,#E5E1D7 11px,#E5E1D7 22px);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;color:#8A867B;}
.adcard .meta{padding:14px;}
.adcard .spon{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);}
.adcard h4{font-family:var(--grotesk);font-weight:600;font-size:16px;margin:4px 0 8px;color:var(--ink);}
.adcard .cta{display:inline-block;background:var(--amber);color:#fff;font-weight:600;font-size:13px;padding:8px 14px;border-radius:6px;}

/* ---- mini dashboard ---- */
.dash{background:var(--dark);color:var(--inverse);border-radius:16px;padding:24px;}
.dash .drow{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-dark);}
.dash .drow:last-child{border-bottom:none;}
.dash .dk{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#9F9A8F;}
.dash .dv{font-family:var(--grotesk);font-weight:700;font-size:20px;color:#fff;}
.dash .dv.up{color:var(--amber);}
.dash .track{height:8px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;flex:1;margin:0 16px;}
.dash .fillbar{height:100%;background:var(--amber);width:8px;border-radius:99px;transition:width 1.1s cubic-bezier(.2,.7,.3,1);}
.motion .reveal.in .dash .fillbar{width:var(--w);}
@media (prefers-reduced-motion: reduce){.dash .fillbar{width:var(--w)!important;transition:none!important;}}

/* ---- timeline ---- */
.timeline{position:relative;padding-left:36px;margin-top:26px;}
.timeline::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--line);}
.tl-item{position:relative;padding-bottom:30px;}
.tl-item:last-child{padding-bottom:0;}
.tl-item::before{content:"";position:absolute;left:-32px;top:3px;width:14px;height:14px;border-radius:50%;background:var(--amber);border:3px solid var(--paper);}
.band-alt .tl-item::before{border-color:var(--alt);}
.tl-item .yr{font-family:var(--mono);color:var(--blue);font-weight:700;font-size:13px;}
.tl-item h3{font-size:19px;margin:3px 0 5px;}
.tl-item p{font-size:15px;color:var(--muted);margin:0;max-width:560px;}

/* ---- founder letter ---- */
.letter{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:40px;max-width:780px;margin:30px auto 0;box-shadow:0 20px 44px rgba(14,15,12,.06);}
.letter p{font-size:18px;line-height:1.7;}
.letter .sign{display:flex;align-items:center;gap:14px;margin-top:22px;}
.letter .sig{font-family:var(--grotesk);font-weight:700;font-style:italic;font-size:26px;color:var(--ink);}
.letter .sig small{display:block;font-style:normal;font-weight:400;font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;}
@media(max-width:640px){.letter{padding:26px;} .letter p{font-size:16px;}}

/* ---- avatar ring (team/headshot) ---- */
.ava{width:64px;height:64px;border-radius:50%;border:2px solid var(--amber);padding:3px;flex:0 0 auto;}
.ava .inner{width:100%;height:100%;border-radius:50%;background:repeating-linear-gradient(45deg,#EEEBE3,#EEEBE3 8px,#E5E1D7 8px,#E5E1D7 16px);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:8px;color:#8A867B;text-align:center;}

/* ---- marquee ---- */
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee-track{display:flex;gap:52px;width:max-content;align-items:center;}
.motion .marquee-track{animation:marq 26s linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee .m-logo{font-family:var(--grotesk);font-weight:700;font-size:20px;color:#B4B0A6;white-space:nowrap;letter-spacing:.02em;}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---- before / after slider ---- */
.ba{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);user-select:none;touch-action:none;--pos:50%;}
.ba .layer{position:relative;}
.ba .after{position:absolute;inset:0;clip-path:inset(0 0 0 var(--pos));}
.ba .halfcap{position:absolute;top:12px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:5px 10px;border-radius:999px;}
.ba .cap-before{left:12px;background:rgba(14,15,12,.75);color:#fff;}
.ba .cap-after{right:12px;background:var(--amber);color:#fff;}
.ba .handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(14,15,12,.1);cursor:ew-resize;}
.ba .grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:#fff;border:2px solid var(--amber);display:flex;align-items:center;justify-content:center;color:var(--amber-deep);font-weight:700;box-shadow:0 4px 12px rgba(14,15,12,.15);}
.ba .panel{padding:26px;min-height:230px;}
.ba .after .panel{background:var(--card);}
.ba .before .panel{background:#F4F2EC;}

/* ---- icon tile ---- */
.itile{width:50px;height:50px;border-radius:13px;background:var(--amber-tint);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.itile svg{width:26px;height:26px;stroke:var(--amber-deep);fill:none;stroke-width:1.7;}
.card.ic h3{margin-top:2px;}

/* ---- process step-with-mockup rows ---- */
.prow{align-items:center;}
.prow .mock{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 16px 34px rgba(14,15,12,.06);}

/* generic reveal for standalone graphic blocks */
.motion .reveal.in .funnel,.motion .reveal.in .bars,.motion .reveal.in .dash{will-change:auto;}

/* ===========================================================
   PHASE 4 — Editorial Oxblood v2 (color sandwich + serif hero + scanline)
   Rule: oxblood is the accent on cream; GOLD is the accent on black.
   =========================================================== */

/* ---- headline underline: lighter for serif ---- */
.u{border-bottom:2px solid var(--amber);padding-bottom:1px;}

/* ---- dark-context accents flip oxblood -> gold ---- */
.band-dark .eyebrow::before,.site-footer .foot-col b::before{background:var(--gold);}
.band-dark .stat .num{color:var(--gold);}
.band-dark .u{border-color:var(--gold);}
.band-dark .em{color:var(--gold);}
.band-dark a.inline{color:var(--gold);}
.band-dark a.inline:hover{color:#e0b666;}
.band-dark .btn-primary{background:var(--gold);color:#17140F;}
.band-dark .btn-primary:hover{background:var(--gold-deep);box-shadow:0 8px 18px rgba(199,154,70,.28);}
.band-dark .btn-link{color:var(--gold);}
.band-dark .callout .big{color:var(--gold);}
.band-dark .stars{color:var(--gold);}
.site-footer .foot-brand .dot{color:var(--gold);}
.site-footer a:hover{color:var(--gold);}
.band-dark .price{color:var(--gold);background:rgba(199,154,70,.14);}
.band-dark .tick li::before{color:var(--gold);}
.band-dark .card .kick{color:var(--gold);}

/* ---- serif on the big statement + section eyebrows stay mono ---- */
.statement h2{font-family:var(--fr);font-weight:500;}
.stat .num{font-family:var(--fr);font-weight:600;}
.callout .big{font-family:var(--fr);font-weight:600;}
.gauge-num{font-family:var(--fr);font-weight:600;}

/* ---- DARK HERO BUN + radial oxblood glow ---- */
.hero-dark{background:var(--dark);color:var(--inverse);position:relative;overflow:hidden;border-bottom:none;}
.hero-dark::before{content:"";position:absolute;top:-160px;right:-140px;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,42,42,.55),transparent 62%);filter:blur(12px);pointer-events:none;}
.hero-dark::after{content:"";position:absolute;bottom:-220px;left:-160px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,42,42,.28),transparent 64%);pointer-events:none;}
.hero-dark .wrap{position:relative;z-index:2;}
.hero-dark h1,.hero-dark h2,.hero-dark h3{color:var(--inverse);}
.hero-dark p{color:#cfc7b8;}
.hero-dark .eyebrow{color:#9A9182;}
.hero-dark .eyebrow::before{background:var(--gold);}
.hero-dark .btn-primary{background:var(--gold);color:#17140F;}
.hero-dark .btn-primary:hover{background:var(--gold-deep);box-shadow:0 8px 20px rgba(199,154,70,.3);}
.hero-dark .btn-link{color:var(--gold);}
.hero-dark .btn-ghost{color:var(--inverse);border-color:rgba(237,231,219,.5);}
.hero-dark .btn-ghost:hover{background:var(--inverse);color:var(--ink);}

/* gradient transitions between buns and filling */
.fade{height:110px;background:linear-gradient(var(--dark),var(--paper));margin:0;}
.fade-up{height:110px;background:linear-gradient(var(--paper),var(--dark));margin:0;}
.band-alt + .fade{background:linear-gradient(var(--dark),var(--alt));}

/* ---- hero headline device (serif + italic gold rotating word + counter + labels) ---- */
.hl{font-family:var(--fr);font-weight:500;line-height:1.02;letter-spacing:-.018em;font-size:74px;margin:0;}
.hl .rotate,.hero-dark .rotate{font-style:italic;color:var(--gold);}
.hl sup{font-family:var(--mono);font-size:.2em;color:var(--gold);vertical-align:super;margin-left:.32em;letter-spacing:.05em;font-style:normal;}
.hero-dark .tw-cursor,.band-dark .tw-cursor{background:var(--gold);}
.coordstrip{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:44px;padding-top:16px;
  border-top:1px solid var(--line-dark);font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:#9A9182;}
.coordstrip span{white-space:nowrap;}
.hero-portrait{border-radius:16px;overflow:hidden;border:1px solid rgba(237,231,219,.16);aspect-ratio:4/5;
  box-shadow:0 30px 60px rgba(0,0,0,.4);}
.hero-portrait img{width:100%;height:100%;object-fit:cover;}
@media(max-width:860px){.hl{font-size:44px;} .coordstrip{gap:8px;font-size:10px;}}

/* ---- SCANLINE DIAGNOSIS DIAGRAM ---- */
.scan{position:relative;background:var(--card);border:1px solid var(--line);border-radius:18px;
  padding:30px 26px 26px;overflow:hidden;box-shadow:0 20px 44px rgba(23,20,15,.06);}
.scan-flow{display:flex;align-items:stretch;gap:8px;flex-wrap:nowrap;position:relative;z-index:2;}
.snode{flex:1 1 0;min-width:0;border:1px solid var(--line);border-radius:12px;padding:15px 8px;text-align:center;
  background:var(--paper);}
.snode b{font-family:var(--grotesk);font-weight:600;font-size:15px;color:var(--ink);display:block;}
.snode span{font-family:var(--mono);font-weight:400;font-size:9.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-top:4px;display:block;}
.sarrow{display:flex;align-items:center;color:var(--amber);font-size:18px;flex:0 0 auto;}
.motion .scan .snode,.motion .scan .sarrow{opacity:0;transform:translateY(10px);
  transition:opacity .45s ease,transform .45s ease;}
.motion .scan.in .snode,.motion .scan.in .sarrow{opacity:1;transform:none;}
.motion .scan.in .scan-flow>*:nth-child(1){transition-delay:.05s}
.motion .scan.in .scan-flow>*:nth-child(2){transition-delay:.13s}
.motion .scan.in .scan-flow>*:nth-child(3){transition-delay:.21s}
.motion .scan.in .scan-flow>*:nth-child(4){transition-delay:.29s}
.motion .scan.in .scan-flow>*:nth-child(5){transition-delay:.37s}
.motion .scan.in .scan-flow>*:nth-child(6){transition-delay:.45s}
.motion .scan.in .scan-flow>*:nth-child(7){transition-delay:.53s}
.scanner{position:absolute;top:22px;bottom:70px;width:2px;left:4%;z-index:3;opacity:0;
  background:linear-gradient(var(--amber),rgba(124,42,42,.1));box-shadow:0 0 26px 7px rgba(124,42,42,.28);}
.motion .scan.in .scanner{animation:sweep 1.7s cubic-bezier(.5,0,.5,1) .55s 1 forwards;}
@keyframes sweep{0%{left:4%;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:96%;opacity:0}}
.scan-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px;position:relative;z-index:2;}
.stag{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;padding:7px 11px;
  border-radius:7px;opacity:0;transform:translateY(-7px);transition:opacity .4s ease,transform .4s ease;}
.stag.bad{border:1px solid var(--amber);color:var(--amber);background:var(--amber-tint);}
.stag.fix{border:1px solid var(--gold-deep);color:var(--gold-on-light);background:#f7efdd;}
.motion .scan.in .stag{opacity:1;transform:none;}
.motion .scan.in .stag.bad:nth-child(1){transition-delay:.9s}
.motion .scan.in .stag.bad:nth-child(2){transition-delay:1.05s}
.motion .scan.in .stag.bad:nth-child(3){transition-delay:1.2s}
.motion .scan.in .stag.fix:nth-child(4){transition-delay:1.5s}
.motion .scan.in .stag.fix:nth-child(5){transition-delay:1.65s}
.motion .scan.in .stag.fix:nth-child(6){transition-delay:1.8s}
.scan-foot{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:18px;text-transform:uppercase;letter-spacing:.05em;}
.scan-foot b{color:var(--amber);font-weight:700;}
@media(max-width:640px){
  .scan-flow{flex-wrap:wrap;} .snode{flex:1 1 40%;} .sarrow{display:none;}
  .scanner{display:none;}
}

/* ---- "THERE'S A LINE" dark 3-way beat ---- */
.line-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:20px;align-items:center;margin-top:44px;}
.line-col{border:1px solid var(--line-dark);border-radius:14px;padding:22px;}
.line-col .tag{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#8f8677;margin-bottom:12px;}
.line-cheap{opacity:.62;}
.line-cheap .item{font-family:var(--mono);font-size:12px;color:#b7451f;border:1px dashed rgba(183,69,31,.5);border-radius:6px;padding:8px 10px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em;}
.line-agency .org{display:flex;flex-direction:column;gap:8px;}
.line-agency .lvl{border:1px solid rgba(124,42,42,.55);border-radius:7px;padding:9px 12px;font-family:var(--mono);font-size:11px;
  text-transform:uppercase;letter-spacing:.03em;color:#d69a9a;background:rgba(124,42,42,.14);text-align:center;position:relative;}
.line-agency .lvl.intern{color:#e7c3c3;border-style:dashed;}
.line-agency .lvl::after{content:"";position:absolute;left:50%;bottom:-8px;width:1px;height:8px;background:rgba(124,42,42,.5);}
.line-agency .lvl:last-child::after{display:none;}
.line-agency .cost{font-family:var(--fr);font-style:italic;font-size:26px;color:#c96a6a;text-align:center;margin-top:14px;}
.line-mid{position:relative;background:#F6F1E6;color:var(--ink);border-radius:16px;padding:30px 24px;text-align:center;
  box-shadow:0 24px 60px rgba(0,0,0,.45);border:1px solid #e7decb;}
.line-mid .badge{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--amber);margin-bottom:10px;}
.line-mid h3{font-family:var(--fr);font-weight:600;font-size:24px;color:var(--ink);margin:0 0 12px;line-height:1.15;}
.line-mid .pts{list-style:none;padding:0;margin:0;text-align:left;display:inline-block;}
.line-mid .pts li{position:relative;padding-left:20px;font-size:14px;color:#4a443b;margin-bottom:8px;}
.line-mid .pts li::before{content:"→";position:absolute;left:0;color:var(--amber);font-weight:700;}
.ember{position:absolute;top:-9px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;
  background:#e0662f;box-shadow:0 0 16px 4px rgba(224,102,47,.7);}
.motion .ember{animation:emberpulse 2.4s ease-in-out infinite;}
@keyframes emberpulse{0%,100%{box-shadow:0 0 12px 3px rgba(224,102,47,.55);}50%{box-shadow:0 0 22px 7px rgba(224,102,47,.85);}}
.motion .line-mid{opacity:0;transform:scale(.92);transition:opacity .6s ease .2s,transform .6s cubic-bezier(.2,.7,.3,1.3) .2s;}
.motion .reveal.in .line-mid{opacity:1;transform:none;}
@media(max-width:860px){.line-grid{grid-template-columns:1fr;} .line-mid{order:-1;}}

/* ---- real photo slots (drop-in <img>, graceful frame) ---- */
.photo{position:relative;border-radius:14px;overflow:hidden;background:#e7e1d4;border:1px solid var(--line);}
.photo img{width:100%;height:100%;object-fit:cover;display:block;}
.photo.portrait{aspect-ratio:4/5;}
.photo.square{aspect-ratio:1/1;}
.photo.wide{aspect-ratio:16/10;}
.photo.tall{aspect-ratio:3/4;}
.photo .cap{position:absolute;left:0;right:0;bottom:0;padding:10px 14px;font-family:var(--mono);font-size:10px;
  text-transform:uppercase;letter-spacing:.05em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.6));}
.photo-note{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:8px;}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
@media(max-width:860px){.gallery{grid-template-columns:repeat(2,1fr);}}

/* ===========================================================
   PHASE 5 — long-form article / guide (pillar + spokes)
   =========================================================== */
.article{max-width:760px;margin:0 auto;}
.article h2{margin:48px 0 6px;scroll-margin-top:90px;}
.article h3{margin:30px 0 4px;font-size:22px;}
.article p{font-size:18px;line-height:1.68;color:#3f3a33;}
.article ul{max-width:var(--measure);padding-left:0;list-style:none;margin:12px 0 18px;}
.article ul li{position:relative;padding-left:24px;margin-bottom:9px;font-size:17px;line-height:1.6;color:#3f3a33;}
.article ul li::before{content:"→";position:absolute;left:0;color:var(--amber);font-weight:700;}
.article a.inline{color:var(--amber);text-decoration:underline;text-underline-offset:2px;font-weight:500;}
.lede{font-family:var(--fr);font-weight:500;font-size:24px;line-height:1.45;color:var(--ink);margin:0 0 8px;max-width:760px;}
.keybox{background:#fff;border:1px solid var(--line);border-left:3px solid var(--amber);border-radius:12px;padding:20px 24px;margin:24px auto;max-width:760px;}
.keybox .k{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--amber-deep);font-weight:700;}
.keybox p{margin:6px 0 0;font-size:17px;}
.pull{font-family:var(--fr);font-style:italic;font-size:26px;line-height:1.35;color:var(--ink);border-top:2px solid var(--amber);border-bottom:2px solid var(--amber);padding:22px 0;margin:34px auto;max-width:760px;}
.statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:760px;margin:30px auto;}
.statrow .s .n{font-family:var(--fr);font-weight:600;font-size:40px;line-height:1;color:var(--amber);}
.statrow .s .l{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:6px;}
.src{font-family:var(--mono);font-size:12px;color:var(--muted);max-width:760px;margin:0 auto;}
.spoke-list{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 26px;margin:24px auto 0;max-width:760px;}
.spoke-list b{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);display:block;margin-bottom:12px;}
.spoke-list a{display:block;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:500;}
.spoke-list a:last-child{border-bottom:none;}
.spoke-list a:hover{color:var(--amber-deep);}
.spoke-list a span{color:var(--amber);}
.authorcard{display:flex;gap:18px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px;max-width:760px;margin:40px auto 0;}
.authorcard .pic{width:72px;height:72px;border-radius:50%;overflow:hidden;flex:0 0 auto;border:2px solid var(--amber);}
.authorcard .pic img{width:100%;height:100%;object-fit:cover;}
.authorcard h3{margin:0 0 6px;font-family:var(--fr);}
.authorcard p{font-size:15px;color:var(--muted);margin:0;}
@media(max-width:640px){.statrow{grid-template-columns:1fr;gap:14px;} .article p{font-size:17px;}}
