/* SMEmarket seller deck — tokens lifted from smemarket.ae */
@font-face { font-family:"Geist"; src:url("fonts/geist-400.woff2") format("woff2"); font-weight:400; font-display:swap; }
@font-face { font-family:"Geist"; src:url("fonts/geist-500.woff2") format("woff2"); font-weight:500; font-display:swap; }
@font-face { font-family:"Geist"; src:url("fonts/geist-600.woff2") format("woff2"); font-weight:600; font-display:swap; }
@font-face { font-family:"Geist"; src:url("fonts/geist-700.woff2") format("woff2"); font-weight:700; font-display:swap; }
@font-face { font-family:"Plex"; src:url("fonts/Plex.ttf"); font-weight:400; font-display:swap; }
@font-face { font-family:"Plex"; src:url("fonts/PlexMed.ttf"); font-weight:500; font-display:swap; }
@font-face { font-family:"Plex Mono"; src:url("fonts/PlexMono.ttf"); font-weight:400; font-display:swap; }
@font-face { font-family:"Plex Mono"; src:url("fonts/PlexMonoMed.ttf"); font-weight:500; font-display:swap; }

:root {
  --lime:#d6ff4a; --ink:#0a0a0a; --white:#fff;
  --card:#141414; --card2:#121212; --card3:#1c1c1c; --line:#2a2a2a;
  --muted:#9a9a9a; --muted-l:#8a8a8a; --soft:#c8c8c8;
  --sans: Geist, "Plex", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: "Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --ease: cubic-bezier(.2,.7,.1,1);
}
/* 1rem = 16px on a 1920×1080 stage; everything scales with the stage */
html { font-size: calc(min(100vw, 177.7778vh) / 120); background:var(--ink); }
* { box-sizing:border-box; }
body { margin:0; height:100vh; overflow:hidden; background:var(--ink); color:var(--ink);
  font-family:var(--sans); letter-spacing:-.011em; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
h1,h2,h3,p { margin:0; }
img { display:block; }

.stage { position:fixed; top:50%; left:50%; width:120rem; height:67.5rem; transform:translate(-50%,-50%); overflow:hidden; background:var(--white); user-select:none; cursor:pointer; }

/* ---------- slides ---------- */
.slide { position:absolute; inset:0; padding:5rem 6.5rem 7.5rem; overflow:hidden;
  opacity:0; visibility:hidden; transition:opacity .55s var(--ease), visibility 0s linear .55s; }
.slide.is-active { opacity:1; visibility:visible; transition:opacity .55s var(--ease), visibility 0s; z-index:2; }
.slide.light { background:var(--white); color:var(--ink); }
.slide.dark  { background:var(--ink); color:var(--white); }
.slide.lime  { background:var(--lime); color:var(--ink); }

.rv { opacity:0; transform:translateY(1.6rem); transition:opacity .7s var(--ease), transform .8s var(--ease); transition-delay:calc(var(--d,0) * 70ms + 120ms); }
.rv.rx { transform:translateX(2.4rem); }
.is-active .rv { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) { .rv, .slide { transition:none !important; transform:none !important; } }

/* ---------- type ---------- */
.pill { display:inline-block; background:var(--lime); color:var(--ink); font-weight:700; font-size:1.05rem; line-height:1; letter-spacing:.06em; text-transform:uppercase; padding:.65rem .85rem; border-radius:.5rem; }
.pill.ink { background:var(--ink); color:var(--lime); }
.kicker { font-family:var(--mono); font-weight:500; font-size:1.05rem; letter-spacing:.14em; text-transform:uppercase; color:var(--lime); display:flex; align-items:center; gap:.9rem; }
.kicker::before { content:""; width:2.4rem; height:2px; background:var(--lime); }
.mono { font-family:var(--mono); letter-spacing:.04em; }
.h { font-weight:700; letter-spacing:-.055em; line-height:.9; }
.h-xxl { font-size:10rem; }
.h-xl { font-size:8rem; }
.h-l { font-size:6.4rem; }
.h-m { font-size:5rem; letter-spacing:-.05em; line-height:.94; }
.h-s { font-size:2.1rem; letter-spacing:-.035em; line-height:1.05; font-weight:600; }
mark { background:var(--lime); color:var(--ink); padding:0 .07em .02em; border-radius:.06em; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.hl { color:var(--lime); }
.lede { font-size:1.75rem; line-height:1.36; letter-spacing:-.015em; color:var(--muted-l); max-width:34ch; }
.dark .lede { color:var(--muted); }
.lede b { color:var(--ink); font-weight:600; }
.dark .lede b { color:#fff; }

/* ---------- shared UI ---------- */
.lime-btn { display:inline-flex; align-items:center; gap:1.6rem; background:var(--lime); color:var(--ink); font-weight:600; font-size:1.6rem; letter-spacing:-.02em; padding:1.4rem 1.6rem 1.4rem 2rem; border-radius:1rem; text-decoration:none; }
.lime-btn svg, .dark-btn svg { width:1.6rem; height:1.6rem; }
.dark-btn { display:inline-flex; align-items:center; gap:1rem; background:#141414; color:#fff; font-weight:600; font-size:1.6rem; letter-spacing:-.02em; padding:1.3rem 1.8rem; border-radius:999px; text-decoration:none; }
.card { background:var(--card2); border:1px solid #242424; border-radius:1.375rem; color:#fff; }
.chk { width:2rem; height:2rem; border-radius:50%; background:var(--lime); color:var(--ink); display:grid; place-items:center; flex:none; }
.chk svg { width:1.15rem; height:1.15rem; }
.chk.no { background:#2a2a2a; color:#9a9a9a; }
.vbadge { display:inline-flex; align-items:center; gap:.45rem; background:var(--lime); color:var(--ink); font-weight:700; font-size:.95rem; letter-spacing:.02em; padding:.42rem .7rem .42rem .5rem; border-radius:999px; }
.vbadge svg { width:1rem; height:1rem; }
.vbadge.soft { background:#3a3a3a; color:#e8e8e8; padding-left:.7rem; }

/* footer chrome on every slide */
.foot { position:absolute; left:6.5rem; right:6.5rem; bottom:2.6rem; display:flex; align-items:center; justify-content:space-between; font-family:var(--mono); font-size:.95rem; letter-spacing:.08em; text-transform:uppercase; }
.foot img { height:1.9rem; width:auto; }
.foot .pg { display:flex; gap:1.6rem; align-items:center; color:var(--muted-l); }
.foot .pg b { color:var(--ink); font-weight:500; }
.dark .foot .pg b { color:#fff; }
.lime .foot .pg { color:rgba(10,10,10,.6); }
.foot .chip { background:var(--ink); border-radius:.6rem; padding:.55rem .8rem; }
.foot .chip img { height:1.5rem; }

/* progress dots (global) */
.dots { position:fixed; left:50%; bottom:calc((100vh - min(100vh, 56.25vw)) / 2 + 2.6rem); transform:translateX(-50%); display:flex; gap:.6rem; z-index:20; }
.dots button { all:unset; cursor:pointer; width:.7rem; height:.7rem; border-radius:99px; background:rgba(10,10,10,.18); transition:width .4s var(--ease), background .3s; }
.dots button.on { width:2.6rem; background:var(--ink); }
body[data-theme="dark"] .dots button { background:rgba(255,255,255,.22); }
body[data-theme="dark"] .dots button.on { background:var(--lime); }
body[data-theme="lime"] .dots button { background:rgba(10,10,10,.25); }
body[data-theme="lime"] .dots button.on { background:var(--ink); }
.bar { position:fixed; left:50%; top:calc((100vh - min(100vh, 56.25vw)) / 2); transform:translateX(-50%); width:120rem; height:.3rem; z-index:20; pointer-events:none; }
.bar i { display:block; height:100%; width:10%; background:var(--lime); transition:width .6s var(--ease); }
body[data-theme="lime"] .bar i { background:var(--ink); }

/* =========================================================
   01 — TITLE
   ========================================================= */
.s1 { display:grid; grid-template-columns:1.12fr .88fr; column-gap:4.5rem; padding-top:4.2rem; }
.s1 .left { display:flex; flex-direction:column; }
.s1 .logo { height:3.3rem; width:auto; margin-bottom:auto; }
.s1 h1 { font-size:8.6rem; margin:2rem 0 2.2rem; }
.s1 .lede { font-size:1.9rem; max-width:30ch; }
.s1 .cta { display:flex; align-items:center; gap:2.2rem; margin-top:3rem; }
.s1 .cta .mono { font-size:1.05rem; color:var(--muted-l); text-transform:uppercase; letter-spacing:.1em; line-height:1.6; }
.hero { position:relative; background:#101010; border-radius:2.4rem; overflow:hidden; padding:3rem 2.8rem; color:#fff; }
.hero h2 { position:relative; z-index:2; font-size:2.9rem; line-height:.98; letter-spacing:-.048em; font-weight:700; max-width:8.4em; }
.hero .door { position:absolute; right:-2rem; bottom:-2rem; width:66%; z-index:1; }
.peek { position:absolute; z-index:3; width:21rem; background:#171717; border-radius:1.4rem; overflow:hidden; box-shadow:0 2rem 4rem rgba(0,0,0,.55); }
.peek-art { position:relative; height:6.6rem; background:#222; overflow:hidden; }
.peek-art .slash { position:absolute; right:0; top:0; bottom:0; width:48%; background:var(--lime); clip-path:polygon(42% 0,100% 0,100% 100%,0 100%); }
.peek-art svg { position:absolute; left:1.2rem; top:1.1rem; width:3.4rem; height:3.4rem; }
.peek b { display:block; padding:1rem 1.3rem 0; font-size:1.35rem; font-weight:600; letter-spacing:-.02em; }
.peek strong { display:block; padding:.15rem 1.3rem 0; font-size:2.2rem; font-weight:700; letter-spacing:-.04em; }
.peek .meta { display:flex; justify-content:space-between; align-items:center; padding:.8rem 1.3rem 1.2rem; }
.peek .meta span { font-family:var(--mono); font-size:.85rem; color:#8d8d8d; letter-spacing:.06em; text-transform:uppercase; }
.peek-a { top:14.5rem; right:4.2rem; transform:rotate(-6deg); }
.peek-b { top:31.5rem; right:13rem; transform:rotate(5deg); z-index:4; }
.peek-b .peek-art .slash { background:#3a3a3a; }

/* =========================================================
   02 — PROBLEM
   ========================================================= */
.s2 { display:grid; grid-template-columns:.92fr 1.08fr; grid-template-rows:1fr auto; column-gap:5rem; row-gap:3.4rem; }
.s2 .left { display:flex; flex-direction:column; gap:2.4rem; }
.s2 h2 { font-size:7.4rem; }
.probs { display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; align-content:start; padding-top:.4rem; }
.prob { background:var(--card); border:1px solid var(--line); border-radius:1.375rem; padding:2rem 2rem 2.1rem; display:flex; flex-direction:column; gap:1rem; min-height:15.4rem; }
.prob .top { display:flex; justify-content:space-between; align-items:center; }
.prob .top svg { width:2.6rem; height:2.6rem; }
.prob .top span { font-family:var(--mono); color:#5c5c5c; font-size:1rem; }
.prob h3 { font-size:2.1rem; font-weight:600; letter-spacing:-.035em; line-height:1.05; margin-top:auto; }
.prob p { color:var(--muted); font-size:1.3rem; line-height:1.4; }
.prob.quote h3 { font-family:var(--mono); font-size:1.5rem; font-weight:400; letter-spacing:0; color:#d0d0d0; }
.track { grid-column:1 / -1; display:grid; grid-template-columns:repeat(4, 1fr) 1.15fr; align-items:center; position:relative; padding:2rem 2.4rem; border:1px solid var(--line); border-radius:1.375rem; }
.track .node { display:flex; align-items:center; gap:1rem; position:relative; font-size:1.35rem; font-weight:600; letter-spacing:-.02em; }
.track .node i { width:1.2rem; height:1.2rem; border-radius:50%; background:#fff; flex:none; }
.track .node::after { content:""; position:absolute; left:2.2rem; right:1.2rem; top:50%; height:2px; background:linear-gradient(90deg,#fff,#555); margin-left:calc(var(--w,6rem)); }
.track .node span { white-space:nowrap; }
.track .n1 i{background:#fff}.track .n2 i{background:#cfcfcf}.track .n3 i{background:#8a8a8a}.track .n4 i{background:#555}
.track .node .ln { flex:1; height:2px; background:#3a3a3a; margin:0 1.4rem 0 .4rem; }
.track .node::after { display:none; }
.track .n4 .ln { background:repeating-linear-gradient(90deg,#555 0 .6rem,transparent .6rem 1.1rem); }
.track .dead { display:flex; align-items:center; gap:1rem; justify-content:flex-end; }
.track .dead .x { width:3rem; height:3rem; border-radius:50%; border:2px solid #5c5c5c; display:grid; place-items:center; color:#9a9a9a; }
.track .dead .x svg { width:1.3rem; height:1.3rem; }
.track .dead b { font-size:1.6rem; letter-spacing:-.03em; }
.track .dead small { display:block; font-family:var(--mono); font-size:.9rem; color:#6e6e6e; letter-spacing:.08em; text-transform:uppercase; font-weight:400; }
.track .lab { position:absolute; top:-.75rem; left:2.2rem; background:var(--ink); padding:0 .8rem; font-family:var(--mono); font-size:.9rem; color:#6e6e6e; letter-spacing:.1em; text-transform:uppercase; }

/* =========================================================
   03 — COST
   ========================================================= */
.s3 { display:grid; grid-template-rows:auto 1fr; row-gap:3.6rem; }
.s3 .head { display:grid; grid-template-columns:1.25fr .75fr; align-items:end; column-gap:5rem; }
.s3 .head h2 { font-size:7rem; margin-top:1.8rem; }
.s3 .head .lede { padding-bottom:.8rem; }
.costs { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:1.6rem; }
.cost { border-radius:1.6rem; padding:2.4rem 2.4rem 2.4rem; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.cost .idx { font-family:var(--mono); font-size:1rem; letter-spacing:.1em; text-transform:uppercase; }
.cost h3 { font-size:3.2rem; letter-spacing:-.05em; font-weight:700; line-height:.95; margin-top:auto; }
.cost p { font-size:1.35rem; line-height:1.4; margin-top:1rem; max-width:28ch; }
.cost.d { background:var(--card2); color:#fff; }
.cost.d .idx { color:var(--lime); }
.cost.d p { color:var(--muted); }
.cost.l { background:var(--lime); color:var(--ink); }
.cost.l p { color:#2a2a2a; }
.week { margin:2.2rem 0 2.4rem; }
.week .row { display:grid; grid-template-columns:4.2rem 1fr; align-items:center; gap:1rem; margin-bottom:.75rem; }
.week .row span { font-family:var(--mono); font-size:.95rem; color:#6e6e6e; text-transform:uppercase; letter-spacing:.06em; }
.week .seg { display:flex; height:1.6rem; border-radius:.4rem; overflow:hidden; gap:3px; }
.week .seg i { background:#2c2c2c; }
.week .seg i.x { background:var(--lime); }
.week .key { display:flex; gap:2rem; margin-top:1.1rem; font-size:1.05rem; color:#9a9a9a; }
.week .key span { display:flex; align-items:center; gap:.6rem; }
.week .key i { width:.9rem; height:.9rem; border-radius:.2rem; background:#2c2c2c; display:block; }
.week .key i.x { background:var(--lime); }
.leak { margin:2.2rem 0 1rem; display:flex; flex-direction:column; gap:.8rem; }
.leak div { display:flex; align-items:center; gap:1rem; background:rgba(10,10,10,.08); border-radius:.8rem; padding:.85rem 1rem; font-size:1.25rem; font-weight:600; letter-spacing:-.02em; }
.leak div svg { width:1.5rem; height:1.5rem; flex:none; }
.leak div em { margin-left:auto; font-style:normal; font-family:var(--mono); font-size:.85rem; font-weight:500; letter-spacing:.06em; text-transform:uppercase; opacity:.6; }
.offer { margin:2.2rem 0 1rem; background:var(--card3); border:1px solid var(--line); border-radius:1.1rem; padding:1.3rem 1.4rem; }
.offer .r { display:flex; justify-content:space-between; align-items:baseline; padding:.7rem 0; }
.offer .r + .r { border-top:1px solid rgba(255,255,255,.12); }
.offer .r span { color:#9a9a9a; font-size:1.15rem; }
.offer .r b { font-size:1.9rem; letter-spacing:-.04em; }
.offer .r s { color:#6e6e6e; font-size:1.9rem; font-weight:700; letter-spacing:-.04em; text-decoration-thickness:3px; text-decoration-color:var(--lime); }
.offer q { display:block; margin-top:.6rem; font-family:var(--mono); color:#bdbdbd; font-size:1.05rem; }
.illus { font-family:var(--mono); font-size:.8rem; letter-spacing:.1em; text-transform:uppercase; color:#5c5c5c; position:absolute; top:2.5rem; right:2.4rem; }

/* =========================================================
   04 — IDEA
   ========================================================= */
.s4 { display:grid; grid-template-columns:.8fr 1.2fr; column-gap:4rem; }
.s4 .left { display:flex; flex-direction:column; gap:2.4rem; }
.s4 h2 { font-size:6.6rem; }
.s4 .once { margin-top:auto; display:flex; align-items:center; gap:1.6rem; }
.s4 .once b { background:var(--lime); color:var(--ink); font-size:4.2rem; font-weight:700; letter-spacing:-.05em; padding:.2rem 1.4rem .5rem; border-radius:1rem; line-height:1; }
.s4 .once span { color:var(--muted); font-size:1.4rem; line-height:1.35; max-width:16ch; }
.net { position:relative; height:100%; }
.net svg.wires { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.wires path { fill:none; stroke:var(--lime); stroke-width:2; stroke-dasharray:6 8; animation:flow 1.6s linear infinite; opacity:.85; }
.wires path.solid { stroke-dasharray:none; animation:none; stroke:#2f2f2f; }
@keyframes flow { to { stroke-dashoffset:-28; } }
.net .col-h { position:absolute; top:0; font-family:var(--mono); font-size:.95rem; letter-spacing:.12em; text-transform:uppercase; color:#6e6e6e; }
.buyers { position:absolute; left:0; top:3.6rem; width:22rem; display:flex; flex-direction:column; gap:1.3rem; }
.buyer { background:var(--card); border:1px solid var(--line); border-radius:1.2rem; padding:1.15rem 1.3rem; display:flex; align-items:center; gap:1rem; }
.buyer .av { width:3rem; height:3rem; border-radius:50%; background:#232323; display:grid; place-items:center; flex:none; }
.buyer .av svg { width:1.5rem; height:1.5rem; }
.buyer b { display:block; font-size:1.3rem; font-weight:600; letter-spacing:-.02em; }
.buyer small { display:block; font-size:1.05rem; color:#9a9a9a; margin-top:.15rem; }
.buyer .chk { margin-left:auto; }
.buyer.out { opacity:.38; border-style:dashed; }
.buyer.out .chk { background:transparent; border:1.5px solid #5c5c5c; color:#9a9a9a; }
.hub { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:13rem; text-align:center; }
.hub .tile { width:11rem; height:11rem; margin:0 auto; border-radius:2.6rem; box-shadow:0 0 0 1.2rem rgba(214,255,74,.08), 0 0 0 2.6rem rgba(214,255,74,.04); }
.hub b { display:block; margin-top:2.4rem; font-size:1.6rem; letter-spacing:-.03em; }
.hub small { display:block; font-family:var(--mono); color:#9a9a9a; font-size:.95rem; letter-spacing:.06em; text-transform:uppercase; margin-top:.3rem; }
.biz { position:absolute; right:0; top:50%; transform:translateY(-50%); width:23rem; background:#171717; border-radius:1.6rem; overflow:hidden; box-shadow:0 2rem 4rem rgba(0,0,0,.5); border:1px solid #242424; }
.biz .peek-art { height:8rem; }
.biz .body { padding:1.3rem 1.5rem 1.6rem; }
.biz .eyebrow { font-size:.95rem; letter-spacing:.08em; text-transform:uppercase; color:#cfcfcf; font-weight:600; }
.biz h4 { margin:.4rem 0 0; font-size:2.4rem; letter-spacing:-.045em; line-height:1; }
.biz .ask { margin-top:1rem; font-size:1.05rem; color:#cfcfcf; }
.biz .ask b { display:block; color:#fff; font-size:2.4rem; letter-spacing:-.045em; margin-top:.1rem; }
.biz .splits { display:grid; grid-template-columns:1fr 1fr; margin-top:1rem; padding-top:.9rem; border-top:1px solid rgba(255,255,255,.16); }
.biz .splits div + div { border-left:1px solid rgba(255,255,255,.16); padding-left:1rem; }
.biz .splits span { display:block; color:#cfcfcf; font-size:.95rem; }
.biz .splits b { display:block; font-size:1.3rem; margin-top:.2rem; }
.biz .vbadge { position:absolute; top:1rem; right:1rem; }

/* =========================================================
   05 — VERIFIED TRANSPARENCY (hero)
   ========================================================= */
.s5 { display:grid; grid-template-columns:.78fr 1.22fr; column-gap:4rem; }
.s5 .left { display:flex; flex-direction:column; gap:2.2rem; }
.s5 h2 { font-size:8.2rem; margin-top:.4rem; }
.s5 .lede { font-size:1.7rem; max-width:27ch; }
.nope { margin-top:auto; display:flex; align-items:center; gap:1.4rem; background:var(--ink); color:#fff; border-radius:1.2rem; padding:1.4rem 1.6rem; }
.nope .x { width:3rem; height:3rem; border-radius:.8rem; background:#2a2a2a; display:grid; place-items:center; flex:none; color:var(--lime); }
.nope .x svg { width:1.5rem; height:1.5rem; }
.nope b { font-size:1.65rem; letter-spacing:-.03em; }
.nope small { display:block; color:#9a9a9a; font-size:1.1rem; margin-top:.15rem; }
.gate { position:relative; background:var(--card2); border-radius:2rem; padding:2.4rem 2.6rem; color:#fff; display:grid; grid-template-columns:1fr 14rem 1fr; column-gap:2rem; }
.gate .ph { font-family:var(--mono); font-size:.95rem; letter-spacing:.12em; text-transform:uppercase; color:#6e6e6e; margin-bottom:1.4rem; display:flex; gap:.7rem; }
.gate .ph b { color:var(--lime); font-weight:500; }
.docs, .figs { display:flex; flex-direction:column; gap:1rem; }
.doc { display:flex; align-items:center; gap:1.1rem; background:var(--card3); border:1px solid var(--line); border-radius:1.1rem; padding:1.05rem 1.2rem; }
.doc .ic { width:3.2rem; height:3.8rem; border-radius:.5rem; background:#fff; position:relative; flex:none; padding:.9rem .55rem 0; display:flex; flex-direction:column; gap:.32rem; }
.doc .ic::before { content:""; position:absolute; top:0; right:0; width:.9rem; height:.9rem; background:#2a2a2a; clip-path:polygon(0 0,100% 100%,0 100%); border-bottom-left-radius:.15rem; }
.doc .ic i { display:block; height:.22rem; background:#cfcfcf; border-radius:1px; }
.doc .ic i:nth-child(2){width:70%}.doc .ic i:nth-child(3){background:var(--lime);width:85%}
.doc b { display:block; font-size:1.35rem; font-weight:600; letter-spacing:-.02em; }
.doc small { display:block; color:#9a9a9a; font-size:1rem; margin-top:.1rem; }
.doc .chk { margin-left:auto; }
.doc.bad { background:transparent; border:1.5px dashed #3a3a3a; }
.doc.bad .ic { background:#2a2a2a; }
.doc.bad .ic i { background:#444; }
.doc.bad b { color:#8a8a8a; text-decoration:line-through; text-decoration-color:#5c5c5c; }
.doc.bad .chk { background:transparent; border:1.5px solid #5c5c5c; color:#8a8a8a; }
.seal-col { display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; }
.seal { width:14rem; height:14rem; position:relative; }
.seal svg { width:100%; height:100%; }
.seal .spin { animation:spin 22s linear infinite; transform-origin:50% 50%; }
@keyframes spin { to { transform:rotate(360deg); } }
.seal-col small { margin-top:1.4rem; font-family:var(--mono); color:#9a9a9a; font-size:.95rem; letter-spacing:.08em; text-transform:uppercase; text-align:center; line-height:1.5; }
.fig { background:#fff; color:var(--ink); border-radius:1.1rem; padding:1.1rem 1.3rem 1.15rem; position:relative; }
.fig span { display:block; font-size:1.05rem; font-weight:600; color:#3a3a3a; }
.fig b { display:block; font-size:2.7rem; font-weight:700; letter-spacing:-.05em; line-height:1; margin-top:.35rem; }
.fig b small { font-size:1.6rem; letter-spacing:-.03em; margin-right:.35rem; }
.fig em { position:absolute; right:1.1rem; top:1.1rem; font-style:normal; }
.fig.price { background:var(--lime); }
.fig .src { display:block; margin-top:.55rem; font-family:var(--mono); font-size:.85rem; letter-spacing:.04em; color:#5c5c5c; text-transform:uppercase; }
.gate .arrow { position:absolute; top:50%; width:2.6rem; height:2.6rem; margin-top:.8rem; color:var(--lime); }
.gate .a1 { left:calc(2.6rem + (100% - 5.2rem - 18rem) / 2 + .4rem); }
.gate .a2 { right:calc(2.6rem + (100% - 5.2rem - 18rem) / 2 + .4rem); }
.gate .lockline { grid-column:1 / -1; margin-top:1.8rem; padding-top:1.4rem; border-top:1px solid rgba(255,255,255,.12); display:flex; align-items:center; justify-content:space-between; font-size:1.2rem; color:#c8c8c8; }
.gate .lockline span { display:flex; align-items:center; gap:.8rem; }
.gate .lockline svg { width:1.4rem; height:1.4rem; color:var(--lime); }

/* =========================================================
   06 — HOW LISTING WORKS
   ========================================================= */
.s6 { display:grid; grid-template-rows:auto 1fr; row-gap:3rem; }
.s6 .head { display:grid; grid-template-columns:1.3fr .7fr; align-items:end; column-gap:4rem; }
.s6 h2 { font-size:6.6rem; margin-top:1.8rem; }
.flow { position:relative; display:grid; grid-template-columns:repeat(6, 1fr); column-gap:1.3rem; grid-template-rows:auto auto 1fr; }
.flow .rail { grid-column:1 / -1; grid-row:2; position:relative; height:3.4rem; margin-bottom:1.6rem; }
.flow .rail::before { content:""; position:absolute; left:1.7rem; right:calc((100% - 6.5rem) / 6 - 1.7rem); top:50%; height:2px; background:#2a2a2a; }
.flow .rail::after { content:""; position:absolute; left:1.7rem; width:calc((100% - 6.5rem) / 6 * 2.5 + 2.6rem); top:50%; height:2px; background:var(--lime); }
.flow .rail i { position:absolute; top:0; width:3.4rem; height:3.4rem; border-radius:50%; display:grid; place-items:center; font-style:normal; font-weight:700; font-size:1.2rem; background:var(--lime); color:var(--ink); box-shadow:0 0 0 .5rem var(--ink); }
.flow .rail i.off { background:var(--ink); color:#fff; border:2px solid #3a3a3a; }
.flow .rail i:nth-child(1){left:0}
.flow .rail i:nth-child(2){left:calc((100% + 1.3rem) / 6 * 1)}
.flow .rail i:nth-child(3){left:calc((100% + 1.3rem) / 6 * 2)}
.flow .rail i:nth-child(4){left:calc((100% + 1.3rem) / 6 * 3)}
.flow .rail i:nth-child(5){left:calc((100% + 1.3rem) / 6 * 4)}
.flow .rail i:nth-child(6){left:calc((100% + 1.3rem) / 6 * 5)}
.phase { grid-row:1; border:2px solid #3a3a3a; border-bottom:0; border-radius:1.2rem 1.2rem 0 0; height:2.2rem; margin:0 .6rem 1.2rem; position:relative; }
.phase span { position:absolute; left:50%; top:-1rem; transform:translateX(-50%); background:var(--ink); padding:0 1rem; white-space:nowrap; font-family:var(--mono); font-size:1rem; letter-spacing:.1em; text-transform:uppercase; color:#9a9a9a; }
.phase.p1 { grid-column:1 / span 3; border-color:var(--lime); }
.phase.p1 span { color:var(--lime); }
.phase.p2 { grid-column:4 / span 3; }
.step { grid-row:3; background:var(--card); border:1px solid var(--line); border-radius:1.375rem; padding:1.8rem 1.6rem; display:flex; flex-direction:column; }
.step h3 { font-size:2.2rem; letter-spacing:-.045em; font-weight:700; line-height:1; }
.step p { margin-top:1rem; color:var(--muted); font-size:1.25rem; line-height:1.4; }
.step .tag { margin-top:auto; padding-top:1.4rem; }
.step .tag span { display:inline-flex; align-items:center; gap:.5rem; font-family:var(--mono); font-size:.88rem; letter-spacing:.05em; text-transform:uppercase; color:#cfcfcf; background:#1f1f1f; border:1px solid #2f2f2f; border-radius:999px; padding:.45rem .75rem; }
.step .tag span i { width:.55rem; height:.55rem; border-radius:50%; background:var(--lime); display:block; }
.step.hot { background:var(--lime); color:var(--ink); border-color:var(--lime); }
.step.hot p { color:#262626; }
.step.hot .tag span { background:var(--ink); color:var(--lime); border-color:var(--ink); }
.step .mini { margin-top:1.2rem; display:flex; flex-direction:column; gap:.45rem; }
.step .mini div { display:flex; align-items:center; gap:.6rem; font-size:1.05rem; font-weight:600; }
.step .mini svg { width:1.1rem; height:1.1rem; }

/* =========================================================
   07 — WHAT SELLERS GET (listing mock)
   ========================================================= */
.s7 { display:grid; grid-template-columns:1.02fr .98fr; column-gap:5rem; }
.s7 .left { display:flex; flex-direction:column; }
.s7 h2 { font-size:6.8rem; margin:1.8rem 0 0; }
.gets { margin-top:auto; display:grid; grid-template-columns:1fr 1fr; column-gap:2.6rem; }
.get { padding:1.7rem 0 1.6rem; border-top:1.5px solid var(--ink); }
.get .n { font-family:var(--mono); font-size:1rem; letter-spacing:.08em; color:var(--muted-l); display:flex; justify-content:space-between; align-items:center; }
.get .n svg { width:2.2rem; height:2.2rem; }
.get h3 { font-size:2.5rem; letter-spacing:-.05em; font-weight:700; margin-top:.9rem; line-height:1; }
.get p { color:#5c5c5c; font-size:1.3rem; line-height:1.4; margin-top:.7rem; max-width:26ch; }
.mock { position:relative; margin-top:-1rem; }
.mock .tagline { position:absolute; top:0; right:0; font-family:var(--mono); font-size:.9rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted-l); }
.mock .mk-pill { display:inline-block; background:var(--lime); color:var(--ink); font-weight:600; font-size:1.05rem; letter-spacing:.04em; text-transform:uppercase; padding:.55rem .8rem; border-radius:.45rem; }
.mock h4 { font-size:4.6rem; letter-spacing:-.055em; line-height:.9; font-weight:600; margin:1rem 0 .6rem; font-family:Plex, var(--sans); }
.mock .where { display:flex; align-items:center; gap:.5rem; font-size:1.3rem; }
.mock .where svg { width:1.4rem; height:1.4rem; }
.mock .claim { display:flex; align-items:center; gap:.7rem; margin-top:1rem; color:#3a3a3a; font-size:1.2rem; }
.mock .claim .vbadge { font-size:.9rem; }
.mk-price { background:var(--lime); border-radius:1.25rem; padding:1.6rem 1.6rem 1.4rem; margin-top:1.4rem; font-family:Plex, var(--sans); }
.mk-price .k { font-size:1.3rem; font-weight:600; }
.mk-price .ask { font-size:4.4rem; font-weight:600; letter-spacing:-.045em; line-height:.92; margin:.6rem 0 1.4rem; }
.mk-price .ask span { font-size:2.6rem; margin-right:.5rem; letter-spacing:-.03em; }
.mk-splits { display:grid; grid-template-columns:1fr 1fr 1.1fr; border-top:1px solid rgba(10,10,10,.45); padding-top:1.1rem; }
.mk-splits div { padding:0 1rem; border-right:1px solid rgba(10,10,10,.45); }
.mk-splits div:first-child { padding-left:0; }
.mk-splits div:last-child { border-right:0; }
.mk-splits span { display:block; font-size:1.1rem; font-weight:500; }
.mk-splits b { display:block; margin-top:.3rem; font-size:1.6rem; font-weight:600; letter-spacing:-.02em; }
.mk-card { background:var(--card2); border:1px solid #242424; border-radius:1.375rem; padding:1.6rem 1.6rem .4rem; margin-top:1rem; color:#fff; font-family:Plex, var(--sans); }
.mk-card .hd { display:flex; justify-content:space-between; align-items:center; }
.mk-card h5 { margin:0; font-size:2.2rem; letter-spacing:-.03em; font-weight:600; }
.mk-pair { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:1rem; margin:1.4rem 0 .6rem; }
.mk-stat { display:flex; align-items:center; gap:.8rem; }
.mk-stat b { font-size:4.2rem; line-height:.85; letter-spacing:-.05em; font-weight:600; }
.mk-stat span { font-size:.9rem; line-height:1.15; letter-spacing:.05em; text-transform:uppercase; color:#e4e4e4; font-weight:600; max-width:7.2em; }
.mk-pair > i { width:1px; height:3.6rem; background:rgba(255,255,255,.22); }
.mk-kv div { display:flex; justify-content:space-between; align-items:center; padding:1.05rem 0; border-top:1px solid rgba(255,255,255,.14); font-size:1.25rem; }
.mk-kv b { font-weight:600; display:flex; align-items:center; gap:.6rem; }
.mk-kv .chk { width:1.6rem; height:1.6rem; }
.mk-kv .chk svg { width:.9rem; height:.9rem; }
.mock .stamp { position:absolute; right:-2.2rem; top:17.5rem; width:10.5rem; height:10.5rem; transform:rotate(12deg); filter:drop-shadow(0 1.2rem 2rem rgba(0,0,0,.25)); }

/* =========================================================
   08 — WHO IT'S FOR
   ========================================================= */
.s8 { display:grid; grid-template-columns:1.05fr .95fr; grid-template-rows:auto 1fr; column-gap:4.5rem; row-gap:3rem; }
.s8 .head { grid-column:1; display:flex; flex-direction:column; gap:2rem; }
.s8 h2 { font-size:6.8rem; }
.cats { grid-column:1; grid-row:2; display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; align-content:end; }
.cat { display:flex; align-items:center; gap:1rem; min-height:6.6rem; background:var(--card2); border:1px solid #1f1f1f; border-radius:1.4rem; padding:1.2rem 1.4rem; }
.cat svg { width:2.6rem; height:2.6rem; flex:none; }
.cat b { font-size:1.55rem; font-weight:600; letter-spacing:-.03em; }
.cat .chev { margin-left:auto; color:#9a9a9a; width:1.4rem; height:1.4rem; }
.emirates { grid-column:1 / span 2; font-family:var(--mono); font-size:1rem; letter-spacing:.12em; text-transform:uppercase; color:#6e6e6e; margin-top:.4rem; }
.emirates b { color:var(--lime); font-weight:500; }
.fit { grid-column:2; grid-row:1 / span 2; background:var(--card2); border:1px solid #242424; border-radius:2rem; padding:2.6rem 2.6rem 2.2rem; display:flex; flex-direction:column; }
.fit .ttl { display:flex; justify-content:space-between; align-items:center; }
.fit h3 { font-size:3rem; letter-spacing:-.045em; font-weight:700; }
.fit ul { list-style:none; padding:0; margin:1.8rem 0 0; }
.fit li { display:flex; gap:1.3rem; align-items:flex-start; padding:1.45rem 0; border-top:1px solid rgba(255,255,255,.12); }
.fit li .chk { width:2.4rem; height:2.4rem; margin-top:.1rem; }
.fit li b { display:block; font-size:1.65rem; letter-spacing:-.03em; font-weight:600; }
.fit li p { color:var(--soft); font-size:1.25rem; margin-top:.3rem; line-height:1.35; }
.fit .notfor { margin-top:auto; display:flex; align-items:center; gap:1rem; padding:1.2rem 1.3rem; border:1.5px dashed #3a3a3a; border-radius:1rem; color:#8a8a8a; font-size:1.2rem; }
.fit .notfor .chk { background:transparent; border:1.5px solid #5c5c5c; color:#8a8a8a; }
.fit .notfor b { color:#cfcfcf; font-weight:600; }

/* =========================================================
   09 — CTA (lime)
   ========================================================= */
.s9 { display:grid; grid-template-columns:1.18fr .82fr; column-gap:4.5rem; }
.s9 .left { display:flex; flex-direction:column; }
.s9 .pill { align-self:flex-start; }
.s9 h2 { font-size:9.6rem; line-height:.86; margin-top:2.2rem; }
.s9 h2 u { text-decoration:none; background:var(--ink); color:var(--lime); padding:0 .12em .04em; border-radius:.08em; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.s9 .lede { color:#2a2a2a; margin-top:2.4rem; font-size:1.9rem; max-width:30ch; }
.s9 .lede b { color:var(--ink); }
.s9 .acts { margin-top:auto; display:flex; align-items:center; gap:2rem; }
.s9 .url { font-family:var(--mono); font-size:1.5rem; letter-spacing:.02em; border-bottom:2px solid var(--ink); padding-bottom:.2rem; }
.conf { background:var(--ink); color:#fff; border-radius:2rem; padding:2.6rem; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.conf .lock { width:4.6rem; height:4.6rem; border-radius:1.2rem; background:var(--lime); color:var(--ink); display:grid; place-items:center; }
.conf .lock svg { width:2.3rem; height:2.3rem; }
.conf h3 { font-size:3.2rem; letter-spacing:-.05em; font-weight:700; line-height:.98; margin-top:2rem; }
.conf ol { list-style:none; margin:2rem 0 0; padding:0; }
.conf li { display:flex; gap:1.2rem; align-items:flex-start; padding:1.3rem 0; border-top:1px solid rgba(255,255,255,.12); }
.conf li > i { width:2.8rem; height:2.8rem; border-radius:50%; background:var(--lime); color:var(--ink); display:grid; place-items:center; font-style:normal; font-weight:700; font-size:1.05rem; flex:none; }
.conf li b { display:block; font-size:1.5rem; letter-spacing:-.025em; font-weight:600; }
.conf li p { color:var(--soft); font-size:1.2rem; margin-top:.25rem; line-height:1.35; }
.conf .ghost { position:absolute; right:-3rem; bottom:-3rem; width:16rem; opacity:.07; filter:grayscale(1) brightness(3); }

/* =========================================================
   10 — CLOSE
   ========================================================= */
.s10 { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding-top:4rem; }
.s10 .logo { height:5.2rem; width:auto; }
.s10 h2 { font-size:11.2rem; line-height:.86; margin-top:4rem; letter-spacing:-.06em; }
.s10 .row { display:flex; align-items:center; gap:2.4rem; margin-top:4rem; }
.s10 .row .mono { font-size:1.4rem; color:#9a9a9a; letter-spacing:.06em; }
.s10 .door { position:absolute; right:-3rem; bottom:-3rem; width:38rem; opacity:1; }
.s10 .grid-bg { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size:6rem 6rem; mask-image:radial-gradient(ellipse at 70% 60%, #000 10%, transparent 70%); -webkit-mask-image:radial-gradient(ellipse at 70% 60%, #000 10%, transparent 70%); pointer-events:none; }

/* hint overlay */
.hint { position:fixed; right:1.6rem; top:1.4rem; z-index:30; font-family:var(--mono); font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; color:#9a9a9a; background:rgba(10,10,10,.75); padding:.6rem .9rem; border-radius:.6rem; opacity:0; transition:opacity .4s; pointer-events:none; }
.hint.show { opacity:1; }

/* print / PDF: one slide per page */
@media print {
  @page { size:1920px 1080px; margin:0; }
  html { font-size:16px; }
  body { height:auto; overflow:visible; }
  .stage { position:static; transform:none; width:1920px; height:auto; overflow:visible; }
  .slide { position:relative; width:1920px; height:1080px; opacity:1 !important; visibility:visible !important; page-break-after:always; break-after:page; }
  .rv { opacity:1 !important; transform:none !important; }
  .dots, .bar, .hint { display:none; }
}

/* ---- layout refinements ---- */
.s4 { grid-template-columns:.72fr 1.28fr; }
.s4 h2 { font-size:6rem; }
.buyers { top:14.75rem; width:19rem; }
.buyer { height:5.4rem; padding:0 1.1rem; }
.buyer b { font-size:1.2rem; }
.buyer small { font-size:.95rem; }
.hub { transform:translate(-50%,-4.5rem); width:16rem; }
.hub .tile { width:9rem; height:9rem; border-radius:2.1rem; }
.biz { width:21rem; }
.seal-col .arr { position:absolute; top:50%; width:2.4rem; height:2.4rem; margin-top:-1.2rem; }
.seal-col .arr.l { left:-2.6rem; }
.seal-col .arr.r { right:-2.6rem; }
.gate { column-gap:3rem; align-self:center; }
.gate .seal-col { padding-top:2.4rem; }
.flow .rail i { margin-left:1.6rem; }
.flow .rail::before { left:3.3rem; right:auto; width:calc((100% + 1.3rem) / 6 * 5); }
.flow .rail::after { left:3.3rem; width:calc((100% + 1.3rem) / 6 * 2.5); }
.step h3 { font-size:2rem; }

/* ---- pass 2 ---- */
.left > .pill, .left > div > .pill { align-self:flex-start; }
.s1 .logo { align-self:flex-start; height:3rem; }
.s1 h1 { font-size:7.4rem; margin:1.8rem 0 2rem; }
.s1 .lede { font-size:1.75rem; }
.s1 .cta { margin-top:2.6rem; }
.s1 .left > div { padding-bottom:.5rem; }

.probs { align-content:stretch; grid-auto-rows:1fr; }
.s2 h2 { font-size:8rem; }

.s3 { row-gap:3rem; }
.s3 .head h2 { font-size:5.8rem; margin-top:1.6rem; }
.cost { padding:2.2rem 2.2rem 2.2rem; }
.cost h3 { font-size:2.9rem; }
.cost p { font-size:1.25rem; }
.week { margin:1.8rem 0 1.6rem; }
.week .row { margin-bottom:.6rem; }
.leak { margin:1.8rem 0 1rem; gap:.65rem; }
.leak div { padding:.75rem 1rem; }
.offer { margin:1.8rem 0 1rem; }
.offer .q { display:block; margin-top:.6rem; font-family:var(--mono); color:#bdbdbd; font-size:1.05rem; }

.s4 { grid-template-columns:minmax(0,1fr) 64rem; }
.net { width:64rem; height:55rem; justify-self:end; }
.buyers { width:21rem; }
.hub { left:32.5rem; }
.biz { width:20rem; }

.flow .rail i { z-index:1; }
.ui { margin-top:1.4rem; font-size:1.02rem; }
.ui-form { display:grid; gap:.35rem; }
.ui-form span { font-family:var(--mono); font-size:.8rem; color:#6e6e6e; text-transform:uppercase; letter-spacing:.06em; }
.ui-form i { font-style:normal; background:#0e0e0e; border:1px solid #333; border-radius:.6rem; padding:.55rem .7rem; color:#fff; margin-bottom:.4rem; }
.ui-files { display:grid; gap:.5rem; }
.ui-files i { font-style:normal; font-family:var(--mono); font-size:.82rem; color:#e8e8e8; background:#1f1f1f; border:1px solid #2f2f2f; border-radius:.55rem; padding:.55rem .65rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border-left:3px solid var(--lime); }
.ui-files i.x { border:1px dashed #3a3a3a; color:#6e6e6e; text-decoration:line-through; }
.ui-files i.x em { font-style:normal; text-decoration:none; display:inline-block; color:#9a9a9a; }
.ui-ver { display:grid; gap:.55rem; }
.ui-ver i { font-style:normal; display:grid; grid-template-columns:4.2rem 1fr 1.6rem; align-items:center; gap:.6rem; background:rgba(10,10,10,.1); border-radius:.55rem; padding:.5rem .6rem; }
.ui-ver b { font-weight:600; }
.ui-ver s { height:.4rem; border-radius:99px; background:var(--ink); }
.ui-ver em { font-style:normal; width:1.6rem; height:1.6rem; border-radius:50%; background:var(--ink); color:var(--lime); display:grid; place-items:center; font-size:.85rem; font-weight:700; }
.ui-live { display:flex; align-items:center; gap:.6rem; background:#1f1f1f; border:1px solid #2f2f2f; border-radius:999px; padding:.55rem .8rem; font-weight:600; width:max-content; max-width:100%; }
.ui-live .dot { width:.7rem; height:.7rem; border-radius:50%; background:var(--lime); box-shadow:0 0 0 .3rem rgba(214,255,74,.18); }
.ui-live em { font-style:normal; color:#9a9a9a; font-weight:400; font-size:.9rem; }
.ui-req { display:grid; gap:.45rem; }
.ui-req i { font-style:normal; display:flex; justify-content:space-between; align-items:center; background:#1f1f1f; border-radius:.55rem; padding:.45rem .5rem .45rem .7rem; color:#e8e8e8; }
.ui-req em { font-style:normal; font-size:.8rem; font-weight:700; padding:.3rem .55rem; border-radius:999px; background:#2a2a2a; color:#9a9a9a; }
.ui-req em.ok { background:var(--lime); color:var(--ink); }
.ui-req i.no { opacity:.5; }
.ui-close { display:flex; align-items:center; gap:.3rem; }
.ui-close i { font-style:normal; flex:1; text-align:center; font-size:.85rem; font-weight:600; padding:.55rem .2rem; border-radius:.5rem; background:#1f1f1f; color:#cfcfcf; }
.ui-close i:last-child { background:var(--lime); color:var(--ink); }

.mock .stamp { right:-2.6rem; top:16rem; }

.fit li { padding:1.8rem 0; }

.s9 { grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr); }
.s9 h2 { font-size:8.6rem; line-height:.98; }
.s9 h2 u { display:inline-block; margin-top:.6rem; line-height:1; padding:.02em .12em .1em; }
.status { margin-top:auto; display:flex; justify-content:space-between; align-items:center; background:#1a1a1a; border:1px solid #2a2a2a; border-radius:1.1rem; padding:1.2rem 1.4rem; }
.status span { display:block; font-family:var(--mono); font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; color:#8a8a8a; }
.status b { display:block; font-size:1.6rem; letter-spacing:-.03em; margin-top:.2rem; }
.tog { width:4.4rem; height:2.4rem; border-radius:99px; background:#2f2f2f; position:relative; }
.tog i { position:absolute; left:.3rem; top:.3rem; width:1.8rem; height:1.8rem; border-radius:50%; background:#8a8a8a; }

.s10 .foot { display:none; }
.s10 h2 { font-size:11.6rem; }
.s10 .door { width:34rem; right:-2rem; bottom:-2rem; }

/* ---- pass 3 ---- */
.h mark { position:relative; z-index:-1; }
.hub { transform:none !important; margin-left:-8rem; top:23rem; }
.biz { transform:none !important; top:16rem; }
.biz.rv { opacity:0; }
.is-active .biz.rv { opacity:1; }
.conf h3 { font-size:3.8rem; margin-top:2.4rem; }
.conf ol { margin-top:2.4rem; }
.conf li { padding:1.9rem 0; }
.conf li b { font-size:1.65rem; }
.conf li p { font-size:1.3rem; }
.s10 .door { width:30rem; }
