/* LotLifter public site — one shared stylesheet (fingerprinted by build.py). Tokens mirror the app (lotapp/theme.css):
   warm paper, ink/navy, cobalt; the orange is the logo's. 2026-10-08 premium pass: the PRODUCT is the visual — real
   screens in browser/phone frames, generous space, one strong accent per screen, restrained motion. */
:root{
  --paper:#edeae3; --paper2:#f6f3ec; --card:#ffffff; --line:#e1dace; --line2:#d6cdbd; --ink:#16191e; --ink2:#454a53; --muted:#6c665b;
  --navy:#0b1324; --navy2:#121c33; --navy3:#18233f; --navy-line:#24314f; --on-navy:#e7ecf7; --on-navy2:#a9b5cf;
  --cobalt:#2d5be9; --cobalt-deep:#2148c9; --cobalt-soft:#e9eefd; --orange:#f08a2c; --orange-deep:#9e500b; --green:#177245; --green-soft:#e6f3eb;
  --display:'Space Grotesk','Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ui:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --r:18px; --r-sm:12px; --gutter:clamp(16px,4vw,32px); --max:1180px;
  --sh-1:0 1px 2px rgba(22,25,30,.06),0 2px 8px rgba(22,25,30,.05);
  --sh-2:0 2px 6px rgba(22,25,30,.06),0 18px 44px -12px rgba(22,25,30,.22);
  --sh-3:0 30px 80px -20px rgba(4,8,20,.55),0 10px 24px -8px rgba(4,8,20,.35);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ui);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}
h1,h2,h3,h4{font-family:var(--display);line-height:1.08;letter-spacing:-.025em;margin:0;text-wrap:balance}
p{margin:0}
.eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cobalt)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:15px 24px;font-weight:700;font-size:16px;text-decoration:none;letter-spacing:.005em;transition:transform .12s ease,background .12s ease,box-shadow .12s ease;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--orange);color:#1b1206;box-shadow:0 10px 26px -6px rgba(240,138,44,.55),inset 0 -2px 0 rgba(0,0,0,.08)}
.btn-primary:hover{background:#f69a43}
.btn-ghost{color:var(--on-navy);border:1.5px solid var(--navy-line);background:rgba(255,255,255,.04)}
.btn-ghost:hover{background:rgba(255,255,255,.09)}
.btn-line{color:var(--ink);border:1.5px solid var(--line2);background:var(--card)}
.btn-line:hover{border-color:#bdb2a0}
.arrow::after{content:"→";margin-left:2px}

/* header + navigation (no JS: the small-screen menu is a <details>) */
.top{background:rgba(11,19,36,.94);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--navy-line);position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.brand{display:block;padding:6px 0}
.brand img{width:96px}
.nav{display:flex;align-items:center;gap:22px}
.nav a{color:var(--on-navy2);text-decoration:none;font-weight:600;font-size:15px}
.nav a:hover,.nav a[aria-current=page]{color:#fff}
.nav .btn{padding:10px 16px;font-size:14.5px;color:#1b1206}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;color:var(--on-navy);font-weight:700;font-size:15px;padding:8px 12px;border:1.5px solid var(--navy-line);border-radius:10px}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:0;top:calc(100% + 8px);background:var(--navy2);border:1px solid var(--navy-line);border-radius:12px;padding:8px;min-width:240px;display:grid;box-shadow:0 18px 40px rgba(0,0,0,.4)}
.menu nav a{color:var(--on-navy);text-decoration:none;font-weight:600;padding:11px 12px;border-radius:8px}
.menu nav a:hover{background:rgba(255,255,255,.06)}
@media (max-width:960px){.nav .lg{display:none}.menu{display:block}}
@media (max-width:440px){.nav .signin{display:none}.nav .btn{padding:9px 13px}}

/* ── product frames: real screens, never mock UI ── */
.browser{background:#fff;border-radius:14px;box-shadow:var(--sh-3);overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.browser .bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;background:#e9e5dc;border-bottom:1px solid #ddd6c8}
.browser .bar i{width:10px;height:10px;border-radius:50%;background:#d1c9b9}
.browser .bar i:nth-child(1){background:#ef8a7b}.browser .bar i:nth-child(2){background:#f2c35f}.browser .bar i:nth-child(3){background:#7fc58b}
.browser .bar span{margin-left:10px;flex:1;max-width:340px;height:20px;border-radius:6px;background:#f7f4ee;color:#7a7365;font-size:11.5px;line-height:20px;padding:0 10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.on-paper .browser{box-shadow:var(--sh-2);border-color:var(--line)}
.phone{position:relative;border-radius:44px;padding:11px;background:linear-gradient(160deg,#2a3247,#0d1323);box-shadow:var(--sh-3),inset 0 0 0 1.5px rgba(255,255,255,.08)}
.phone img{border-radius:34px;width:100%}
.on-paper .phone{box-shadow:var(--sh-2),inset 0 0 0 1.5px rgba(255,255,255,.08)}
.panel{background:#fff;border-radius:16px;box-shadow:var(--sh-2);overflow:hidden;border:1px solid var(--line)}
.shot-cap{margin-top:14px;font-size:14px;color:var(--muted);text-align:center}
.demo-note{font-size:12.5px;color:var(--muted);margin-top:18px}
.hero .demo-note{color:var(--on-navy2);opacity:.75}

/* ── home hero ── */
.hero{position:relative;background:radial-gradient(1100px 560px at 88% -12%,rgba(45,91,233,.32),transparent 62%),radial-gradient(800px 460px at -8% 108%,rgba(240,138,44,.14),transparent 60%),var(--navy);color:var(--on-navy);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,4vw,56px);align-items:center;padding-block:clamp(44px,6vw,80px) clamp(52px,6.5vw,88px)}
.hero .eyebrow{color:var(--orange)}
.hero h1{font-size:clamp(42px,6.4vw,74px);margin-top:16px;color:#fff;letter-spacing:-.035em}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero .lede{font-size:clamp(17.5px,1.9vw,20px);color:var(--on-navy2);margin-top:22px;max-width:33em;line-height:1.55}
.hero .lede b{color:#fff;font-weight:600}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.free-note{margin-top:20px;font-size:14.5px;color:var(--on-navy2);display:flex;gap:10px;align-items:flex-start;max-width:36em}
.free-note b{color:#fff}
.free-note a{color:#fff}
.tick{flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:rgba(23,114,69,.28);color:#7ee0a8;display:inline-grid;place-items:center;font-size:12px;font-weight:800;margin-top:2px}
.stage{position:relative;padding:0 8% 6% 0}
.stage .browser{width:100%}
.stage .phone{position:absolute;right:-3%;bottom:-6%;width:40%;min-width:222px;max-width:300px}
.stage .tag{position:absolute;left:0;bottom:-8%;background:rgba(18,28,51,.95);border:1px solid var(--navy-line);border-radius:12px;padding:10px 14px;font-size:13px;color:var(--on-navy);box-shadow:0 14px 30px rgba(0,0,0,.35);max-width:240px}
.stage .tag b{display:block;color:#fff;font-size:13.5px}
@media (max-width:980px){.hero .wrap{grid-template-columns:1fr}.stage{max-width:760px;margin-top:6px;padding:0;display:grid;grid-template-columns:minmax(0,1fr) 30%;gap:18px;align-items:end}.stage .phone{position:static;width:auto;min-width:0;max-width:none}.stage .tag{display:none}}
@media (max-width:560px){.stage{grid-template-columns:1fr;justify-items:center}.stage .browser{display:none}.stage .phone{width:72%;max-width:280px}}

/* facts strip */
.facts-strip{background:var(--navy2);border-top:1px solid var(--navy-line);border-bottom:1px solid var(--navy-line);color:var(--on-navy)}
.facts-strip ul{list-style:none;margin:0 auto;padding:20px var(--gutter);max-width:var(--max);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 30px}
.facts-strip li{display:flex;align-items:center;gap:9px;font-size:14.5px;font-weight:600;color:var(--on-navy)}
.facts-strip li::before{content:"✓";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(23,114,69,.3);color:#86e3ad;font-size:11.5px;font-weight:800}
@media (max-width:860px){.facts-strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.facts-strip ul{grid-template-columns:1fr}}

/* inner-page hero (split when a product shot is present) */
.page-hero{background:radial-gradient(900px 420px at 92% -20%,rgba(45,91,233,.28),transparent 62%),var(--navy);color:var(--on-navy);padding-block:clamp(40px,6vw,76px);overflow:hidden}
.page-hero .eyebrow{color:var(--orange)}
.page-hero h1{font-size:clamp(36px,5.2vw,60px);color:#fff;margin-top:14px;max-width:16em;letter-spacing:-.03em}
.page-hero .lede{font-size:clamp(17px,1.9vw,19.5px);color:var(--on-navy2);margin-top:18px;max-width:36em}
.page-hero .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.page-hero .split.phone-right{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.page-hero .visual .phone{max-width:300px;margin-inline:auto}
@media (max-width:960px){.page-hero .split,.page-hero .split.phone-right{grid-template-columns:1fr}.page-hero .visual{max-width:640px}}
.crumbs{font-size:13.5px;color:var(--on-navy2);margin-bottom:18px}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.6}
.crumbs a{color:var(--on-navy);text-decoration:none}
.crumbs a:hover{text-decoration:underline}

/* sections */
section{padding-block:clamp(60px,8vw,104px)}
.tint{background:var(--paper2);border-block:1px solid var(--line)}
.sec-head{max-width:780px}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head h2{font-size:clamp(30px,4.3vw,48px);margin-top:12px}
.sec-head p{color:var(--ink2);font-size:clamp(16.5px,1.8vw,19px);margin-top:16px;max-width:40em}
.sec-head.center p{margin-inline:auto}
.sec-head p a,.prose a,.grid3 a,.cards a,.faq a,.note a,.pillar a,.compare a,.checks a{color:var(--cobalt-deep);font-weight:600}

/* the loop */
.loop{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;counter-reset:l}
.loop li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 12px 14px;text-align:center;counter-increment:l;box-shadow:var(--sh-1)}
.loop li b{display:block;font-family:var(--display);font-size:15.5px;letter-spacing:-.01em}
.loop li span{display:block;font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.35}
.loop li::before{content:counter(l);display:grid;place-items:center;width:26px;height:26px;margin:0 auto 8px;border-radius:8px;background:var(--navy);color:var(--orange);font-family:var(--display);font-weight:700;font-size:13px}
.loop li:not(:last-child)::after{content:"";position:absolute;right:-8px;top:50%;width:6px;height:6px;border-top:2px solid var(--line2);border-right:2px solid var(--line2);transform:translateY(-50%) rotate(45deg)}
@media (max-width:1060px){.loop{grid-template-columns:repeat(4,minmax(0,1fr))}.loop li:nth-child(4)::after{display:none}}
@media (max-width:560px){.loop{grid-template-columns:repeat(2,minmax(0,1fr))}.loop li::after{display:none}}

/* pillars: text + a large real screen, alternating */
.pillar{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,5vw,72px);align-items:center;margin-top:clamp(48px,7vw,88px)}
.pillar.flip{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.pillar.flip .copy{order:2}
.pillar .copy .eyebrow{color:var(--orange-deep)}
.pillar h3{font-size:clamp(26px,3.3vw,38px);margin-top:10px}
.pillar .copy>p{color:var(--ink2);margin-top:14px;font-size:17.5px}
.checks{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:11px}
.checks li{position:relative;padding-left:30px;color:var(--ink2);font-size:16px}
.checks li b{color:var(--ink)}
.checks li::before{content:"✓";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:11.5px;font-weight:800}
.media{position:relative}
.media.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:end}
.media.duo .phone{max-width:280px;justify-self:center}
.media .float-phone{position:absolute;right:-3%;bottom:-8%;width:32%;max-width:250px}
@media (max-width:960px){.pillar,.pillar.flip{grid-template-columns:1fr}.pillar.flip .copy{order:0}.media .float-phone{width:34%}}
@media (max-width:560px){.media.duo{grid-template-columns:1fr}.media .float-phone{display:none}}

/* three phones in a row: a row on wide screens, a swipeable strip on phones (never shrunk to unreadable) */
.phones3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,36px);margin-top:36px;align-items:start}
.phones3 .phone{max-width:300px;justify-self:center;width:100%}
@media (max-width:760px){.phones3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:6px 4px 22px;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}
  .phones3 .phone{flex:0 0 68%;max-width:260px;scroll-snap-align:center}}

/* before / after (real photo and LotLifter's own output) */
.ba{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ba figure{margin:0;position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--sh-2);background:#fff;border:1px solid var(--line)}
.ba figcaption{position:absolute;left:12px;top:12px;background:rgba(11,19,36,.86);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:8px}
.ba figure:last-child figcaption{background:var(--green)}

/* "already on eBay" */
.import-band{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,64px);align-items:center}
.import-shots{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.import-shots .panel:last-child{margin-top:40px}
@media (max-width:960px){.import-band{grid-template-columns:1fr}}
@media (max-width:520px){.import-shots{grid-template-columns:1fr}.import-shots .panel:last-child{margin-top:0}}

/* dark band (volume) */
.volume{background:radial-gradient(900px 420px at 10% 120%,rgba(240,138,44,.14),transparent 60%),var(--navy);color:var(--on-navy)}
.volume .sec-head .eyebrow{color:var(--orange)}
.volume .sec-head h2{color:#fff}
.volume .sec-head p{color:var(--on-navy2)}
.volume .sec-head p a{color:#fff}
.vol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.vol div{border:1px solid var(--navy-line);background:linear-gradient(180deg,var(--navy3),var(--navy2));border-radius:var(--r);padding:22px}
.vol b{display:block;color:#fff;font-family:var(--display);font-size:19px;letter-spacing:-.01em}
.vol span{display:block;color:var(--on-navy2);font-size:15.5px;margin-top:8px}
.volume .wide-shot{margin-top:40px}
@media (max-width:860px){.vol{grid-template-columns:1fr}}

/* compact plan strip (home): real published plans, value first */
.plan-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}
.plan-strip a{display:block;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--sh-1);transition:border-color .12s ease,transform .12s ease}
.plan-strip a:hover{border-color:#c9bfae;transform:translateY(-1px)}
.plan-strip b{display:block;font-family:var(--display);font-size:18px}
.plan-strip .p{font-family:var(--display);font-size:34px;font-weight:700;letter-spacing:-.02em;margin-top:6px;font-variant-numeric:tabular-nums}
.plan-strip .p small{font-family:var(--ui);font-size:14px;color:var(--muted);font-weight:600}
.plan-strip span{display:block;color:var(--ink2);font-size:14.5px;margin-top:4px}
.plan-strip .u{color:var(--green);font-weight:700}
@media (max-width:900px){.plan-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* fair comparison */
.compare{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;margin-top:36px;align-items:start}
.compare>div{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.compare>div.us{border-color:#c9d6fb;box-shadow:0 0 0 4px var(--cobalt-soft)}
.compare h3{font-size:20px}
.compare ul{margin:14px 0 0;padding-left:20px;color:var(--ink2)}
.compare li{margin-top:7px}
@media (max-width:760px){.compare{grid-template-columns:1fr}}

/* value band + plans */
.value{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 22px;margin-top:30px;padding:0;list-style:none}
.value li{display:flex;gap:10px;align-items:flex-start;font-size:15.5px;color:var(--ink2);padding:12px 0;border-top:1px solid var(--line)}
.value li b{display:block;color:var(--ink);font-size:15.5px}
.value li::before{content:"✓";flex:0 0 auto;margin-top:2px;width:20px;height:20px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:11.5px;font-weight:800}
@media (max-width:1000px){.value{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.value{grid-template-columns:1fr}}
.plans{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:18px;margin-top:8px;align-items:stretch}
.plan{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px 26px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--sh-1)}
.plan .fit{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.plan h3{font-size:26px;margin-top:4px}
.plan .price{font-family:var(--display);font-size:52px;font-weight:700;letter-spacing:-.03em;margin-top:10px;font-variant-numeric:tabular-nums;line-height:1}
.plan .price small{font-family:var(--ui);font-size:16px;font-weight:600;color:var(--muted);letter-spacing:0}
.plan .allow{font-weight:700;color:var(--ink);margin-top:14px;font-size:17px}
.plan .unit{color:var(--green);font-weight:700;font-size:14.5px;font-variant-numeric:tabular-nums}
.plan .sub{color:var(--ink2);font-size:14.5px;margin-top:8px}
.plan .btn{margin-top:auto}
.plan .sp{flex:1;min-height:18px}
.plan.mid{border-color:#c9d6fb;box-shadow:0 0 0 4px var(--cobalt-soft),var(--sh-2)}
.plans-status{font-size:14px;color:var(--muted);margin-top:14px;min-height:1.4em}
.plans-status.warn{color:#8a4b0f}
.free-box{background:linear-gradient(180deg,#fff,#fbfaf6);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;margin-top:22px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;box-shadow:var(--sh-1)}
.free-box h2,.free-box h3{font-size:24px}
.free-box .price{font-family:var(--display);font-size:40px;font-weight:700;margin-top:8px}
.free-box ul{columns:2;column-gap:32px;margin:0;padding-left:20px;color:var(--ink2)}
.free-box li{margin-top:6px;break-inside:avoid}
.free-box .boundary{margin-top:14px;font-size:15px;color:var(--ink2)}
@media (max-width:900px){.plans{grid-template-columns:1fr}.free-box{grid-template-columns:1fr}.free-box ul{columns:1}}

/* long-form content */
.prose{max-width:46em}
.prose h2{font-size:clamp(26px,3.4vw,36px);margin-top:52px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:21px;margin-top:30px}
.prose p,.prose ul,.prose ol{margin-top:14px;color:var(--ink2)}
.prose li{margin-top:6px}
.prose strong{color:var(--ink)}
.prose figure{margin:28px 0 0}
.prose figure figcaption{font-size:14px;color:var(--muted);margin-top:10px}
.prose table{width:100%;border-collapse:collapse;margin-top:18px;font-size:15.5px}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.table-wrap{overflow-x:auto}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(28px,5vw,64px);align-items:start}
.layout>*,.pillar>*,.split>*{min-width:0}
.aside{position:sticky;top:92px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;font-size:15px;box-shadow:var(--sh-1)}
.aside h2{font-size:18px}
.aside p{color:var(--ink2);margin-top:8px}
.aside ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.aside a{color:var(--cobalt-deep);font-weight:600;text-decoration:none}
.aside a:hover{text-decoration:underline}
.aside .btn{width:100%;margin-top:16px;color:#1b1206}
@media (max-width:960px){.layout{grid-template-columns:1fr}.aside{position:static}}

/* card grids */
.grid3,.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:36px}
.grid3 article,.cards article{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--sh-1)}
.grid3 h3,.cards h3{font-size:19.5px}
.grid3 p,.cards p{color:var(--ink2);margin-top:10px;font-size:15.5px}
@media (max-width:860px){.grid3,.cards{grid-template-columns:1fr}}

/* steps / flow */
.steps{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;counter-reset:s}
.steps li{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px 18px;counter-increment:s;box-shadow:var(--sh-1)}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--navy);color:var(--orange);font-family:var(--display);font-weight:700}
.steps h3{font-size:18.5px;margin-top:14px}
.steps p{color:var(--ink2);font-size:15px;margin-top:8px}
.steps a{color:var(--cobalt-deep);font-weight:600}
@media (max-width:1000px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps li:last-child{grid-column:1/-1}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}
.flow{list-style:none;margin:0;padding:0;counter-reset:f;display:grid;gap:18px}
.flow>li{counter-increment:f;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px 26px 26px 80px;position:relative;box-shadow:var(--sh-1)}
.flow>li::before{content:counter(f);position:absolute;left:24px;top:24px;width:38px;height:38px;border-radius:11px;background:var(--navy);color:var(--orange);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:18px}
.flow h2{font-size:clamp(22px,3vw,28px)}
.flow p,.flow ul{color:var(--ink2);margin-top:10px}
.flow ul{padding-left:20px}
.flow li li{margin-top:5px}
.flow a{color:var(--cobalt-deep);font-weight:600}
.flow .where{font-size:14px;color:var(--muted);margin-top:12px}
.flow .shot{margin-top:18px;max-width:560px}
.flow .shot.narrow{max-width:260px}
@media (max-width:560px){.flow>li{padding:72px 18px 20px}.flow>li::before{left:18px;top:18px}}

/* facts / notes */
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin-top:20px;padding:0;list-style:none}
.facts li{border-top:1px solid var(--line);padding-top:12px;color:var(--ink2);font-size:15.5px}
.facts b{display:block;color:var(--ink)}
@media (max-width:640px){.facts{grid-template-columns:1fr}}
.note{background:#fff8ec;border:1px solid #f1d7ad;border-radius:12px;padding:16px 18px;color:#5b4320;font-size:15.5px;margin-top:22px}
.note b{color:#3f2c10}
.draft-flag{display:inline-block;background:#fff1d6;color:#7a4a00;border:1px solid #f1cf8c;border-radius:8px;padding:4px 10px;font-size:13px;font-weight:700;letter-spacing:.04em}

/* faq: visible content; FAQPage JSON-LD is generated from exactly this markup */
.faq{margin-top:26px;display:grid;gap:10px;max-width:54em}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:700;padding:17px 0;list-style-position:outside}
.faq details p{color:var(--ink2);padding-bottom:17px;margin-top:-4px}

/* related pages */
.related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.related a{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;text-decoration:none;box-shadow:var(--sh-1);transition:border-color .12s ease,transform .12s ease}
.related a:hover{border-color:#c9bfae;transform:translateY(-1px)}
.related b{display:block;font-family:var(--display);font-size:18.5px}
.related span{display:block;color:var(--ink2);font-size:15px;margin-top:6px}
@media (max-width:860px){.related{grid-template-columns:1fr}}

/* demo video slot — hidden until a real video is configured */
.demo .player{margin-top:32px;position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:var(--navy);border:1px solid var(--line);max-width:100%}
.demo .player button{all:unset;cursor:pointer;position:absolute;inset:0;display:grid;place-items:center}
.demo .player img{width:100%;height:100%;object-fit:cover}
.demo .play{position:absolute;width:76px;height:76px;border-radius:50%;background:var(--orange);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.demo .play::after{content:"";border-left:22px solid #1b1206;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.demo iframe,.demo video{position:absolute;inset:0;width:100%;height:100%;border:0}

/* final cta */
.final{text-align:center;background:radial-gradient(900px 380px at 50% 120%,rgba(45,91,233,.12),transparent 70%),var(--paper2);border-top:1px solid var(--line)}
.final h2{font-size:clamp(34px,5.4vw,58px)}
.final p{color:var(--ink2);margin:16px auto 0;max-width:34em;font-size:18px}
.final .ctas{justify-content:center}
.final .fine{margin-top:16px;font-size:14px;color:var(--muted)}

/* footer */
footer{background:var(--navy);color:var(--on-navy2);padding-block:52px calc(36px + env(safe-area-inset-bottom,0px));font-size:14.5px}
.foot{display:grid;grid-template-columns:1.3fr repeat(4,minmax(0,1fr));gap:28px}
.foot img{width:92px}
.foot p{margin-top:12px;max-width:22em}
.foot h2{font-family:var(--ui);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-navy)}
.foot ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:9px}
.foot a{color:var(--on-navy);text-decoration:none;font-weight:600}
.foot a:hover{color:#fff;text-decoration:underline}
.legal{border-top:1px solid var(--navy-line);margin-top:34px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
@media (max-width:900px){.foot{grid-template-columns:1fr 1fr}.foot>div:first-child{grid-column:1/-1}}

.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:50;background:#fff;color:var(--ink);padding:8px 12px;border-radius:8px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.related a{transition:none}}
