/* ============================================================
   POSTAFF — Section layouts
   ============================================================ */

/* ---------- S0 Navbar ---------- */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  transition:background .35s var(--ease),backdrop-filter .35s,border-color .35s,padding .35s var(--ease);
  border-bottom:1px solid transparent;
}
.nav-inner{
  max-width:var(--maxw);margin:0 auto;padding:18px var(--pad);
  display:flex;align-items:center;gap:28px;
  transition:padding .35s var(--ease);
}
.nav.scrolled{
  background:rgba(244,244,242,.82);
  backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);
  border-bottom-color:var(--hairline);
}
.nav.scrolled .nav-inner{padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:20px;letter-spacing:-.02em}
.brand img{height:23px;width:auto}
.brand .dot{color:var(--accent)}
.nav-links{display:flex;gap:26px;margin-left:8px}
.nav-links a{font-size:14.5px;color:var(--ink-2);transition:color .2s}
.nav-links a:hover{color:var(--ink)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav-cta .signin{font-size:14.5px;color:var(--ink-2);padding:9px 4px}
.nav-cta .signin:hover{color:var(--ink)}
.hamburger{display:none;flex-direction:column;gap:5px;padding:8px}
.hamburger span{width:22px;height:2px;background:var(--ink-2);border-radius:2px}
@media(max-width:880px){
  .nav-links,.nav-cta .signin{display:none}
  .hamburger{display:flex}
}

/* ---------- S1 Hero ---------- */
.hero{padding-top:clamp(150px,20vh,220px);padding-bottom:clamp(90px,12vw,150px);overflow:hidden}
.hero-solo{position:relative;z-index:1;display:flex;justify-content:center}
.hero-copy{max-width:880px;text-align:center;display:flex;flex-direction:column;align-items:center}
.hero-copy .eyebrow{margin-bottom:22px}
.hero-copy h1{margin-bottom:24px}
.hero-copy .lead{margin-bottom:36px;max-width:46ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center}
.hero-micro{margin-top:20px;font-size:13.5px;color:var(--ink-3);font-family:var(--font-mono)}
.hero-micro span{color:var(--ink-2)}

/* ---------- S3 Pain ---------- */
.pain{background:var(--bg-2)}
.sec-head{max-width:760px;margin-bottom:clamp(40px,6vw,68px)}
.sec-head .eyebrow{margin-bottom:18px}
.sec-head h2{margin-bottom:18px}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.stat-card{
  padding:30px 28px 32px;border-radius:var(--radius);
  background:var(--panel);border:1px solid var(--hairline);
  position:relative;overflow:hidden;min-height:248px;display:flex;flex-direction:column;
}
.stat-card .big{font-family:var(--font-display);font-weight:600;font-size:clamp(38px,4.4vw,54px);letter-spacing:-.03em;line-height:1;color:var(--ink)}
.stat-card .lbl{margin-top:14px;color:var(--ink-2);font-size:15px;line-height:1.5}
.stat-card .tag{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.14em;margin-bottom:auto}
.flatline{margin-top:18px;height:60px;width:100%}
.flatline path{stroke:var(--accent);stroke-width:2;fill:none;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease)}
.stat-card.in .flatline path{stroke-dashoffset:0}
.pain-close{margin-top:34px;font-size:clamp(18px,2vw,24px);color:var(--ink-2);font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;max-width:60ch}
.pain-close em{color:var(--ink);font-style:normal}
@media(max-width:820px){.stat-grid{grid-template-columns:1fr}}

/* ---------- S4 Tool vs teammate ---------- */
.reframe .lead{margin-bottom:46px}
.vs{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:920px}
.vs-col{border-radius:var(--radius);border:1px solid var(--hairline);overflow:hidden}
.vs-col .vs-head{padding:18px 24px;font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--hairline)}
.vs-tool .vs-head{color:var(--ink-3);background:rgba(0,0,0,.015)}
.vs-team .vs-head{color:var(--accent);background:var(--accent-faint)}
.vs-row{padding:16px 24px;font-size:16px;border-bottom:1px solid var(--hairline-soft);transition:opacity .5s,color .5s}
.vs-row:last-child{border-bottom:none}
.vs-tool .vs-row{color:var(--ink-3)}
.vs-team .vs-row{color:var(--ink);font-weight:500}
.vs.in .vs-tool .vs-row{opacity:.55}
.reframe-punch{margin-top:34px;font-family:var(--font-display);font-size:clamp(26px,3.4vw,42px);font-weight:600;letter-spacing:-.025em}
.reframe-punch .accent{position:relative}
@media(max-width:760px){.vs{grid-template-columns:1fr}}

/* ---------- S5 Working Day (scrollytelling) ---------- */
.workday{background:var(--bg)}
.workday .sec-head{margin-inline:auto;text-align:center;max-width:720px}
.scrolly-section{position:relative;height:560vh}
.scrolly-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden}
.scrolly-inner{width:100%;display:grid;grid-template-columns:230px 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.scrolly-rail{display:flex;flex-direction:column;justify-content:center;gap:0}
.rail-line{position:relative;padding-left:30px}
.rail-line::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--hairline)}
.rail-stop{position:relative;padding:13px 0;cursor:pointer;opacity:.4;transition:opacity .4s}
.rail-stop::before{content:"";position:absolute;left:-30px;top:18px;width:14px;height:14px;border-radius:50%;background:var(--panel-2);border:2px solid var(--hairline);transition:all .4s}
.rail-stop.active{opacity:1}
.rail-stop.active::before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--accent-faint)}
.rail-stop .t{font-family:var(--font-mono);font-size:13px;color:var(--ink)}
.rail-stop .d{font-size:13px;color:var(--ink-3);margin-top:2px}
.scrolly-stage{position:relative;height:78vh;display:flex;align-items:center;justify-content:center}
.day-scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:34px;opacity:0;transform:translateY(24px) scale(.98);transition:opacity .55s var(--ease),transform .55s var(--ease);pointer-events:none;padding:20px 0}
.day-scene.active{opacity:1;transform:none;pointer-events:auto}
.scene-side{width:290px;display:flex;flex-direction:column;gap:12px}
.brief-card{background:var(--panel);border:1px solid var(--hairline);border-radius:14px;padding:16px 18px}
.brief-card .ttl{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.trend-pill{display:flex;align-items:center;gap:9px;padding:9px 12px;background:var(--panel-2);border:1px solid var(--hairline);border-radius:10px;font-size:13px;color:var(--ink-2);margin-bottom:8px}
.trend-pill .ic{width:7px;height:7px;border-radius:50%;background:var(--blue);flex:none}
.mem-chip{display:inline-block;font-family:var(--font-mono);font-size:12px;padding:6px 11px;background:var(--accent-faint);border:1px solid rgba(17,19,24,.25);color:var(--accent-2);border-radius:8px;margin:3px}
.workday-close{text-align:center;padding-block:clamp(60px,9vw,110px)}
.workday-close .big{font-family:var(--font-display);font-weight:600;font-size:clamp(30px,4.6vw,58px);letter-spacing:-.03em;margin-bottom:26px}
@media(max-width:820px){
  .scrolly-section{height:auto}
  .scrolly-sticky{position:relative;height:auto;display:block;padding-block:20px}
  .scrolly-inner{grid-template-columns:1fr}
  .scrolly-rail{display:none}
  .scrolly-stage{position:relative;height:auto;display:block}
  .day-scene{position:relative;opacity:1;transform:none;flex-direction:column;margin-bottom:48px;inset:auto;padding:0}
  .scene-side{width:100%;max-width:330px;margin-inline:auto}
}

/* ---------- S6 Hiring steps ---------- */
.hiring .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative}
.step-card{position:relative;padding:34px 28px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--hairline);overflow:hidden;min-height:230px}
.step-card .num{position:absolute;top:8px;right:14px;font-family:var(--font-display);font-weight:700;font-size:90px;color:rgba(255,255,255,.035);line-height:1;letter-spacing:-.04em}
.step-card .ic{width:46px;height:46px;border-radius:12px;background:var(--accent-faint);border:1px solid rgba(17,19,24,.2);display:grid;place-items:center;margin-bottom:20px;color:var(--accent)}
.step-card h3{font-size:20px;margin-bottom:10px}
.step-card p{font-size:15px;color:var(--ink-2);line-height:1.5}
.steps-line{position:absolute;top:57px;left:16%;right:16%;height:2px;z-index:0;pointer-events:none}
.steps-line path{stroke:var(--accent);stroke-width:2;fill:none;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease)}
.steps.in .steps-line path{stroke-dashoffset:0}
@media(max-width:820px){.hiring .steps{grid-template-columns:1fr}.steps-line{display:none}}

/* ---------- S7 Brand memory ---------- */
.memory-demo{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;max-width:1000px}
.mem-lines{display:flex;flex-direction:column;gap:16px}
.mem-line{display:flex;align-items:center;gap:14px}
.mem-line .chat{flex:1;background:var(--panel-2);border:1px solid var(--hairline);border-radius:14px;border-bottom-left-radius:5px;padding:12px 15px;font-size:14px;color:var(--ink-2)}
.mem-line .arrow{color:var(--ink-4);flex:none}
.mem-panel{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:22px}
.mem-panel .ttl{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:18px}
.mem-item{padding:13px 15px;border-radius:11px;background:var(--panel-2);border:1px solid var(--hairline);margin-bottom:10px;opacity:0;transform:translateX(14px)}
.mem-item.in{opacity:1;transform:none;transition:all .5s var(--spring)}
.mem-item .k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}
.mem-item .v{font-size:14px;color:var(--ink)}
@media(max-width:820px){.memory-demo{grid-template-columns:1fr;gap:28px}}

/* ---------- S8 Autonomy dial ---------- */
.dial-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,80px);align-items:center;max-width:1040px}
.dial-ui{user-select:none}
.dial-track{position:relative;height:62px;background:var(--panel);border:1px solid var(--hairline);border-radius:16px;display:flex;padding:5px}
.dial-seg{flex:1;display:grid;place-items:center;font-size:14.5px;font-weight:600;color:var(--ink-3);z-index:2;transition:color .3s;border-radius:12px}
.dial-seg.on{color:var(--accent-ink)}
.dial-handle{position:absolute;top:5px;bottom:5px;width:calc(33.33% - 4px);background:var(--accent);border-radius:12px;transition:left .45s var(--spring);box-shadow:0 6px 18px -6px var(--accent-glow);z-index:1}
.dial-badge{display:inline-block;margin-top:14px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}
.dial-hint{margin-top:10px;font-size:13px;color:var(--accent-2);font-family:var(--font-mono);transition:opacity .4s}
.dial-caption{margin-top:30px}
.dial-caption .role{font-family:var(--font-display);font-size:clamp(22px,2.6vw,30px);font-weight:600;letter-spacing:-.02em;margin-bottom:8px}
.dial-caption .desc{color:var(--ink-2);font-size:16px}
.dial-mock{min-height:120px}
.dial-mock .msg{position:static;display:inline-block;opacity:1;transform:none;max-width:100%}

/* ---------- S9 Content quality ---------- */
.gallery{display:flex;gap:20px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.gallery::-webkit-scrollbar{height:6px}
.gallery::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:3px}
.ex-card{flex:none;width:min(560px,85vw);scroll-snap-align:start;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:18px}
.ex-trigger{font-size:14px;color:var(--ink-2)}
.ex-trigger .chat{background:var(--panel-2);border:1px solid var(--hairline);border-radius:12px;border-bottom-left-radius:4px;padding:12px 14px}
.ex-trigger .arrow{margin:14px auto 0;display:block;color:var(--ink-4)}
.ex-post .pimg{height:180px;border-radius:12px;overflow:hidden;width:100%}
.ex-post .pcap{font-size:13px;color:var(--ink);margin-top:10px;line-height:1.45}
.ex-post .ptags{font-family:var(--font-mono);font-size:11.5px;color:var(--blue);margin-top:6px}
.ex-post .pbadges{display:flex;gap:6px;margin-top:10px;align-items:center}
.ex-post .pbadge{font-family:var(--font-mono);font-size:10px;padding:3px 8px;border:1px solid var(--hairline);border-radius:6px;color:var(--ink-3)}
.ex-post .pbadge.time{margin-left:auto;color:var(--accent-2);border-color:rgba(17,19,24,.25)}
@media(max-width:560px){.ex-card{grid-template-columns:1fr}}

/* ---------- S10 Timing ---------- */
.timing-demo{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.weekgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:16px}
.weekgrid .dh{text-align:center;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);padding-bottom:6px}
.slot{aspect-ratio:1;border-radius:7px;background:var(--panel-2);border:1px solid var(--hairline-soft);display:grid;place-items:center;transition:all .5s var(--spring);position:relative}
.slot.lit{background:var(--accent-faint);border-color:rgba(17,19,24,.35)}
.slot .pi{width:16px;height:16px;opacity:0;transform:scale(.4);transition:all .4s var(--spring) .1s}
.slot.lit .pi{opacity:1;transform:none}
@media(max-width:820px){.timing-demo{grid-template-columns:1fr;gap:30px}}

/* ---------- S11 Trend sync ---------- */
.trend-demo{max-width:760px;margin-inline:auto}
.scan-card{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:24px;position:relative;overflow:hidden}
.scan-card .ttl{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:20px}
.scan-item{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:12px;background:var(--panel-2);border:1px solid var(--hairline);margin-bottom:12px;transition:all .6s var(--ease)}
.scan-item .body{flex:1;font-size:15px;color:var(--ink-2)}
.scan-item .verdict{font-family:var(--font-mono);font-size:11px;padding:4px 10px;border-radius:20px;border:1px solid var(--hairline);color:var(--ink-3)}
.scan-item.chosen{background:var(--accent-faint);border-color:rgba(17,19,24,.35)}
.scan-item.chosen .body{color:var(--ink)}
.scan-item.chosen .verdict{color:var(--accent);border-color:rgba(17,19,24,.35);background:rgba(17,19,24,.05)}
.scan-item.discarded{opacity:.42}
.scan-item.discarded .body{text-decoration:line-through;text-decoration-color:var(--ink-4)}

/* ---------- S12 Weekly report ---------- */
.report-wrap{max-width:560px;margin-inline:auto}
.report-card{background:#111318;border:1px solid rgba(17,19,24,.35);border-radius:18px;border-bottom-left-radius:6px;padding:24px;box-shadow:0 20px 50px -20px var(--accent-glow)}
.report-card .who{display:flex;align-items:center;gap:8px;color:#C9CBD0;font-size:13px;font-weight:600;margin-bottom:16px}
.report-card h4{font-family:var(--font-display);color:#F5F6F8;font-size:19px;margin-bottom:18px}
.report-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}
.rmetric{background:rgba(255,255,255,.08);border-radius:11px;padding:13px}
.rmetric .n{font-family:var(--font-display);font-weight:600;font-size:26px;color:#fff;line-height:1}
.rmetric .l{font-size:11px;color:#E7E8EA;margin-top:5px;font-family:var(--font-mono)}
.rbars{display:flex;flex-direction:column;gap:9px;margin-bottom:16px}
.rbar{display:flex;align-items:center;gap:10px;font-size:12px;color:#F5F6F8}
.rbar .bar{height:7px;border-radius:4px;background:rgba(255,255,255,.85);width:0;transition:width 1.1s var(--ease)}
.rbar .label{width:90px;flex:none;font-family:var(--font-mono);font-size:11px;color:#E7E8EA}
.report-card .strat{font-size:14px;color:#F5F6F8;border-top:1px solid rgba(255,255,255,.12);padding-top:14px;line-height:1.5}

/* ---------- S13 Trust ---------- */
.trust{background:var(--bg-2)}
.trust .sec-head{text-align:center;margin-inline:auto}
.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.trust-card{padding:26px 22px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--hairline)}
.trust-card .ic{width:40px;height:40px;border-radius:11px;background:var(--accent-faint);display:grid;place-items:center;color:var(--accent);margin-bottom:16px}
.trust-card h4{font-size:16px;margin-bottom:8px;letter-spacing:-.01em}
.trust-card p{font-size:13.5px;color:var(--ink-2);line-height:1.5}
@media(max-width:1000px){.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.trust-grid{grid-template-columns:1fr}}

/* ---------- S14 Comparison ---------- */
.cmp-scroll{overflow-x:auto}
.cmp{width:100%;border-collapse:separate;border-spacing:0;min-width:720px}
.cmp th,.cmp td{padding:16px 18px;text-align:left;font-size:14.5px;border-bottom:1px solid var(--hairline-soft)}
.cmp thead th{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:500;vertical-align:bottom}
.cmp tbody th{color:var(--ink-2);font-weight:500;font-family:var(--font-body)}
.cmp td{color:var(--ink-3)}
.cmp .postaff-col{background:var(--accent-faint);color:var(--ink);font-weight:600;position:relative}
.cmp thead .postaff-col{color:var(--accent);font-family:var(--font-display);font-size:15px;letter-spacing:-.01em;text-transform:none}
.cmp .postaff-col.first{border-top-left-radius:14px;border-top-right-radius:14px}
.cmp tr:last-child .postaff-col{border-bottom-left-radius:14px;border-bottom-right-radius:14px}

/* ---------- S15 Pricing ---------- */
.pricing .sec-head{text-align:center;margin-inline:auto}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.price-card{padding:32px 28px;border-radius:var(--radius-lg);background:var(--panel);border:1px solid var(--hairline);position:relative;transition:transform .4s var(--ease),border-color .3s}
.price-card.featured{border-color:rgba(17,19,24,.45);background:var(--panel);box-shadow:0 30px 70px -34px var(--accent-glow)}
.price-pop{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:5px 13px;border-radius:20px}
.price-card .plan{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:6px}
.price-card .for{font-size:13.5px;color:var(--ink-3);margin-bottom:22px}
.price-card .amount{display:flex;align-items:baseline;gap:3px;margin-bottom:22px}
.price-card .amount .cur{font-size:24px;color:var(--ink-2);font-family:var(--font-display)}
.price-card .amount .n{font-family:var(--font-display);font-weight:600;font-size:56px;letter-spacing:-.03em;line-height:1}
.price-card .amount .per{font-size:14px;color:var(--ink-3);font-family:var(--font-mono)}
.price-card .btn{width:100%;justify-content:center;margin-bottom:24px}
.price-feats{display:flex;flex-direction:column;gap:12px}
.price-feats li{display:flex;gap:10px;font-size:14px;color:var(--ink-2);line-height:1.4;list-style:none}
.price-feats .ck{color:var(--accent);flex:none;margin-top:3px}
.price-feats .soon{font-family:var(--font-mono);font-size:9.5px;color:var(--ink-3);border:1px solid var(--hairline);border-radius:5px;padding:0 5px;align-self:center}
.price-note{text-align:center;margin-top:34px;font-size:13.5px;color:var(--ink-3);line-height:1.7}
@media(max-width:900px){.price-grid{grid-template-columns:1fr;max-width:420px;margin-inline:auto}.price-card.featured{order:-1}}

/* ---------- S16 FAQ ---------- */
.faq{max-width:820px;margin-inline:auto}
.faq .sec-head{text-align:center;margin-inline:auto}
.faq-item{border-bottom:1px solid var(--hairline);position:relative}
.faq-q{width:100%;display:flex;align-items:center;gap:18px;padding:24px 4px;text-align:left;font-family:var(--font-display);font-size:clamp(17px,2vw,21px);font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.faq-q .plus{margin-left:auto;flex:none;width:22px;height:22px;position:relative;transition:transform .35s var(--ease)}
.faq-q .plus::before,.faq-q .plus::after{content:"";position:absolute;inset:0;margin:auto;background:var(--ink-3);transition:.3s}
.faq-q .plus::before{width:16px;height:2px}
.faq-q .plus::after{width:2px;height:16px}
.faq-item.open .faq-q .plus{transform:rotate(135deg)}
.faq-item.open .faq-q .plus::before,.faq-item.open .faq-q .plus::after{background:var(--accent)}
.faq-a{overflow:hidden;height:0;transition:height .4s var(--ease)}
.faq-a .inner{padding:0 40px 26px 4px;color:var(--ink-2);font-size:15.5px;line-height:1.6}
.faq-item.open{border-left:2px solid var(--accent);margin-left:-2px;padding-left:2px}

/* ---------- S17 Final CTA ---------- */
.final{text-align:center;overflow:hidden}
.final-inner{position:relative;z-index:1;max-width:760px;margin-inline:auto}
.final h2{font-size:clamp(38px,6vw,76px);margin-bottom:20px}
.final .lead{margin-inline:auto;margin-bottom:36px;text-align:center}
.final-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:48px}
.final-chat{max-width:360px;margin-inline:auto}

/* ---------- S18 Footer ---------- */
.footer{border-top:1px solid var(--hairline);background:var(--bg-2);padding-block:56px}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;margin-bottom:44px}
.footer .fbrand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:19px;margin-bottom:14px}
.footer .fbrand img{height:21px}
.footer .ftag{font-size:14px;color:var(--ink-3);max-width:34ch;line-height:1.5}
.footer .fcol h5{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px;font-weight:500}
.footer .fcol a{display:block;font-size:14.5px;color:var(--ink-2);padding:6px 0;transition:color .2s}
.footer .fcol a:hover{color:var(--ink)}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:24px;border-top:1px solid var(--hairline-soft);font-size:13px;color:var(--ink-4);font-family:var(--font-mono)}
@media(max-width:760px){.footer-top{grid-template-columns:1fr 1fr}}
