/* =====================================================================
   FileSDLTonline — marketing site
   Visual language: obsidian green-black, lime accent, cream bands,
   floating pill navigation, mono micro-labels.
   ===================================================================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ob-950:#0b110e;--ob-900:#131917;--ob-850:#181f1c;--ob-800:#223329;--ob-700:#314b3b;--ob-black:#050806;
  --lime-50:#f3fce9;--lime-100:#e3f8ce;--lime-200:#caf1a6;--lime-300:#b5e85c;--lime-400:#a2db35;--lime-500:#89c02b;--lime-600:#71a924;--lime-700:#558319;--lime-800:#446817;--lime-900:#3a5717;
  --cream-50:#f4f6f4;--cream-100:#ebf0eb;--paper:#fafaf7;
  --n-0:#fff;--n-50:#f8faf9;--n-100:#f0f3f1;--n-200:#e5e9e6;--n-300:#d1d8d3;--n-400:#a1b5a7;--n-500:#6c7b70;--n-600:#556358;--n-700:#424e45;--n-800:#353f38;--n-900:#29312c;--n-950:#141a16;
  --amber:#f2a93b;--amber-l:#fdf1dc;--rose:#e5484d;--rose-l:#fde8e8;--blue:#3e7bfa;--blue-l:#e6efff;
  --ink:var(--n-950);--slate:var(--n-600);--mist:var(--n-200);--cloud:var(--n-100);--snow:var(--n-50);
  --em:var(--lime-400);--em-d:var(--lime-700);--em-dd:var(--lime-800);--em-l:var(--lime-100);
  --fb:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;--fd:var(--fb);--fm:'JetBrains Mono',ui-monospace,Menlo,Consolas,monospace;
  --r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;
  --sh-sm:0 1px 2px rgba(11,17,14,.06);--sh-md:0 6px 20px -6px rgba(11,17,14,.14);--sh-lg:0 20px 50px -18px rgba(11,17,14,.28);--sh-xl:0 40px 80px -24px rgba(0,0,0,.6);
  --max:1240px;--nav:88px;
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--fb);color:var(--ink);background:#fff;line-height:1.6;font-size:16px;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}
h1,h2,h3,h4{font-family:var(--fd);line-height:1.15;font-weight:800;letter-spacing:-.025em;color:var(--n-950)}
p{color:var(--slate)}
strong{color:var(--n-950)}
:focus-visible{outline:3px solid var(--lime-400);outline-offset:2px;border-radius:6px}
.container{max-width:var(--max);margin:0 auto;padding:0 24px}
.narrow{max-width:860px;margin:0 auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--lime-400);color:#000;padding:8px 14px;z-index:2000;border-radius:999px;font-weight:700}
.skip:focus{left:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ic{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mono{font-family:var(--fm)}

/* ---------- buttons ---------- */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 .9rem/1.3 var(--fb);border:0;cursor:pointer;border-radius:999px;padding:11px 22px;transition:transform .25s,background .2s,box-shadow .25s,color .2s,border-color .2s;white-space:nowrap}
.btn .ic{width:17px;height:17px;transition:transform .25s}
.btn:hover .ic{transform:translateX(2px)}
.btn--primary{background:var(--lime-400);color:var(--ob-950)}
.btn--primary:hover{background:var(--lime-500);box-shadow:0 10px 30px -10px rgba(162,219,53,.7)}
.btn--primary::after{content:"";position:absolute;inset:0;width:40px;background:rgba(255,255,255,.35);filter:blur(6px);transform:skew(-12deg) translateX(-150%);transition:none}
.btn--primary:hover::after{transform:skew(-12deg) translateX(900%);transition:transform 1s ease}
.btn--dark{background:var(--ob-950);color:#fff}
.btn--dark:hover{background:var(--ob-800)}
.btn--outline{border:1.5px solid var(--n-300);background:#fff;color:var(--n-900)}
.btn--outline:hover{border-color:var(--lime-600);color:var(--lime-800)}
.btn--ghost-w{border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#fff}
.btn--ghost-w:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4)}
.btn--white{background:#fff;color:var(--ob-950)}
.btn--white:hover{transform:translateY(-1px);box-shadow:var(--sh-lg)}
.btn--lg{padding:15px 30px;font-size:1rem}
.btn--block{width:100%}

/* ---------- floating pill navigation ---------- */
.nav{position:fixed;inset:16px 0 auto 0;z-index:1000;padding:0 16px}
.nav__in{max-width:var(--max);margin:0 auto;height:60px;padding:0 10px 0 22px;display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--n-200);border-radius:999px;box-shadow:0 8px 30px -12px rgba(11,17,14,.25);transition:box-shadow .3s}
.nav.is-scrolled .nav__in{box-shadow:0 14px 40px -14px rgba(11,17,14,.35)}
.logo{display:flex;align-items:center;gap:9px;font-family:var(--fd);font-weight:800;font-size:1.12rem;letter-spacing:-.03em;color:var(--n-950)}
.logo__mark{width:32px;height:32px;border-radius:10px;background:var(--ob-950);display:grid;place-items:center;flex:none}
.logo__mark svg{width:19px;height:19px;stroke:var(--lime-400);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.logo b{color:var(--lime-700);font-weight:800}
.logo span span{font-weight:600;color:var(--n-500)}
.nav__badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font:700 10.5px var(--fb);letter-spacing:.12em;text-transform:uppercase;background:rgba(162,219,53,.16);color:var(--lime-800);border:1px solid rgba(162,219,53,.35)}
.nav__badge i,.dot{width:6px;height:6px;border-radius:50%;background:var(--lime-500);display:inline-block;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.35}}
.nav__links{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav__link,.nav__drop>button{padding:7px 14px;font:700 13.5px var(--fb);border-radius:999px;color:var(--n-600);background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:.15s}
.nav__link:hover,.nav__link.is-active,.nav__drop>button:hover,.nav__drop.open>button{background:var(--n-100);color:var(--n-950)}
.nav__drop{position:relative}
.nav__drop>button .ic{width:14px;height:14px;transition:transform .2s}
.nav__menu{position:absolute;top:calc(100% + 16px);left:50%;width:580px;margin-left:-290px;background:#fff;border:1px solid var(--n-200);border-radius:24px;box-shadow:var(--sh-lg);padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s}
.nav__menu::before{content:"";position:absolute;top:-18px;left:0;right:0;height:18px}
.nav__drop:hover .nav__menu,.nav__drop:focus-within .nav__menu,.nav__drop.open .nav__menu{opacity:1;visibility:visible;transform:none}
.nav__drop:hover>button .ic,.nav__drop.open>button .ic{transform:rotate(180deg)}
.nav__item{display:flex;gap:12px;padding:12px;border-radius:16px;transition:.15s}
.nav__item:hover{background:var(--cream-50)}
.nav__item-ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none;background:var(--ob-950);color:var(--lime-400)}
.nav__item-ic .ic{width:18px;height:18px}
.nav__item strong{display:block;font-size:.88rem;font-weight:700}
.nav__item small{display:block;font-size:.78rem;color:var(--n-500);line-height:1.45}
.nav__actions{display:flex;align-items:center;gap:6px}
.nav__signin{font:700 13.5px var(--fb);color:var(--n-600);padding:8px 14px;border-radius:999px}
.nav__signin:hover{background:var(--n-100);color:var(--n-950)}
.nav .btn{padding:10px 20px;font-size:13.5px}
.burger{display:none;margin-left:auto;width:42px;height:42px;border:1px solid var(--n-200);background:var(--n-100);cursor:pointer;border-radius:999px;align-items:center;justify-content:center;color:var(--n-800)}
.burger .ic{width:22px;height:22px}
.mob{position:fixed;inset:0;background:#fff;z-index:1100;padding:20px 24px 32px;overflow-y:auto;transform:translateX(100%);transition:transform .25s ease;display:flex;flex-direction:column}
.mob.open{transform:none}
.mob__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.mob a.mob__link{display:block;padding:13px 4px;border-bottom:1px solid var(--n-100);font-weight:700;font-size:1.02rem}
.mob__group{font:700 .7rem var(--fm);letter-spacing:.15em;text-transform:uppercase;color:var(--lime-700);margin:20px 0 4px}
.mob__actions{display:grid;gap:10px;margin-top:24px}
@media (max-width:1100px){.nav__badge{display:none}}
@media (max-width:1020px){.nav__links,.nav__actions{display:none}.burger{display:inline-flex}}

/* ---------- labels ---------- */
.label{display:inline-flex;align-items:center;gap:8px;font:700 12px var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--lime-700);margin-bottom:16px}
.label::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.section--dark .label,.hero .label,.page-hero .label{color:var(--lime-400)}
.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 14px;border-radius:999px;background:rgba(162,219,53,.08);border:1px solid rgba(162,219,53,.25);font:700 11px var(--fb);letter-spacing:.15em;text-transform:uppercase;color:var(--lime-400);margin-bottom:24px;transition:.2s}
a.eyebrow:hover{background:rgba(162,219,53,.14)}
.eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--lime-400);display:block;animation:pulse 2s infinite}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--ob-950);color:#fff;padding:168px 0 104px;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;width:640px;height:640px;top:-320px;right:-200px;border-radius:50%;background:rgba(162,219,53,.12);filter:blur(120px);z-index:-1}
.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(ellipse 70% 60% at 70% 40%,#000 20%,transparent 75%);z-index:-1}
.hero__in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.hero h1{color:#fff;font-size:clamp(2.1rem,4.2vw,3.25rem);font-weight:800;letter-spacing:-.035em;line-height:1.1;margin-bottom:22px}
.hero h1 em{font-style:normal;color:var(--lime-400)}
.hero__sub{font-size:1.1rem;color:rgba(255,255,255,.7);max-width:560px;margin-bottom:26px;font-weight:500}
.typed{color:var(--lime-400);font-weight:800}
.typed::after{content:"";display:inline-block;width:2px;height:.95em;background:currentColor;margin-left:3px;vertical-align:-2px;animation:pulse 1s steps(1) infinite}
.hero__list{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin-bottom:32px;max-width:580px}
.hero__list li{display:flex;gap:9px;font-size:.92rem;color:rgba(255,255,255,.82);line-height:1.45}
.hero__list li .ic{width:18px;height:18px;color:var(--lime-400);margin-top:1px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.hero__micro{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.8rem;color:rgba(255,255,255,.5)}
.hero__micro span{display:inline-flex;align-items:center;gap:7px}
.hero__micro span::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--lime-400)}
.hero__trust{display:flex;gap:28px;flex-wrap:wrap;margin-top:30px;padding-top:26px;border-top:1px solid rgba(255,255,255,.1)}
.trust{display:flex;align-items:center;gap:11px}
.trust__ic{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);display:grid;place-items:center;color:var(--lime-400)}
.trust strong{display:block;color:#fff;font-size:.86rem}
.trust small{display:block;color:rgba(255,255,255,.5);font-size:.76rem}
.page-hero{position:relative;background:var(--ob-950);color:#fff;padding:160px 0 84px;overflow:hidden;isolation:isolate}
.page-hero::before{content:"";position:absolute;width:560px;height:560px;top:-280px;right:-140px;border-radius:50%;background:rgba(162,219,53,.11);filter:blur(110px);z-index:-1}
.page-hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(90deg,transparent,#000 60%);z-index:-1}
.page-hero h1{color:#fff;font-size:clamp(2rem,4vw,3rem);margin-bottom:16px;max-width:860px}
.page-hero h1 em{font-style:normal;color:var(--lime-400)}
.page-hero p{color:rgba(255,255,255,.7);font-size:1.08rem;max-width:700px;font-weight:500}
.page-hero .hero__cta{margin:30px 0 0}
.crumb{font:600 12px var(--fm);letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}
.crumb a:hover{color:var(--lime-400)}
@media (max-width:980px){.hero__in{grid-template-columns:1fr}.hero{padding:140px 0 72px}}
@media (max-width:560px){.hero__list{grid-template-columns:1fr}}

/* ---------- product window mockup ---------- */
.mock{position:relative}
.mock::before{content:"";position:absolute;width:380px;height:380px;left:50%;top:50%;margin:-190px 0 0 -190px;border-radius:50%;background:rgba(162,219,53,.25);filter:blur(80px);animation:glow 6s ease-in-out infinite;z-index:0}
@keyframes glow{50%{opacity:.55;transform:scale(1.08)}}
.mock__win{position:relative;z-index:1;background:var(--ob-900);border-radius:26px;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 80px -24px rgba(0,0,0,.9),0 0 70px -18px rgba(162,219,53,.45);overflow:hidden;color:#fff}
.mock__bar{display:flex;align-items:center;gap:7px;padding:13px 18px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}
.mock__bar i{width:11px;height:11px;border-radius:50%;display:block;opacity:.8}
.mock__url{margin-left:10px;font:600 11.5px var(--fm);color:var(--n-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mock__body{display:grid;grid-template-columns:150px 1fr;min-height:340px}
.mock__side{background:rgba(255,255,255,.02);border-right:1px solid rgba(255,255,255,.06);padding:16px 10px;display:flex;flex-direction:column;gap:4px}
.mock__step{font-size:.72rem;font-weight:700;color:var(--n-500);padding:7px 8px;border-radius:10px;display:flex;align-items:center;gap:8px}
.mock__step b{width:18px;height:18px;border-radius:6px;border:1.5px solid rgba(255,255,255,.15);display:grid;place-items:center;font-size:.58rem;flex:none}
.mock__step.done{color:var(--n-400)}
.mock__step.done b{background:var(--lime-400);border-color:var(--lime-400);color:var(--ob-950)}
.mock__step.cur{background:rgba(162,219,53,.1);border:1px solid rgba(162,219,53,.2);color:#fff}
.mock__step.cur b{border-color:var(--lime-400);color:var(--lime-400)}
.mock__main{padding:18px 20px}
.mock__h{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:8px}
.mock__h strong{color:#fff;font-size:.95rem}
.pill{font:700 10px var(--fb);letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:7px;background:rgba(162,219,53,.12);color:var(--lime-700);border:1px solid rgba(162,219,53,.3);white-space:nowrap}
.mock .pill,.section--dark .pill{color:var(--lime-400)}
.pill--amber{background:rgba(242,169,59,.12);color:#b86e00;border-color:rgba(242,169,59,.35)}
.mock .pill--amber{color:#f5c26b}
.pill--blue{background:var(--blue-l);color:#2650b8;border-color:#c9d9ff}
.mock__total{background:rgba(162,219,53,.08);border:1px solid rgba(162,219,53,.2);border-radius:16px;padding:14px 16px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:flex-end}
.mock__total small{display:block;font-size:.66rem;color:var(--n-400);font-weight:600}
.mock__total b{font-size:1.7rem;letter-spacing:-.03em;color:#fff}
.mock__rows{font-size:.73rem}
.mock__row{display:grid;grid-template-columns:1fr auto auto;gap:14px;padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.08);color:var(--n-400);font-weight:600}
.mock__row span:last-child{color:#fff;min-width:52px;text-align:right;font-family:var(--fm)}
.mock__row.dim{opacity:.4}
.float{position:absolute;z-index:2;background:#fff;color:var(--n-950);border-radius:18px;padding:11px 14px;display:flex;gap:10px;align-items:center;box-shadow:var(--sh-xl);font-size:.78rem;animation:bob 6s ease-in-out infinite}
.float strong{display:block;font-size:.8rem}
.float small{display:block;color:var(--n-500);font-size:.72rem;font-family:var(--fm)}
.float__ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;flex:none}
.float__ic .ic{width:17px;height:17px}
.float--1{left:-26px;bottom:34px}
.float--2{right:-12px;top:-22px;animation-delay:-3s}
@keyframes bob{50%{transform:translateY(-8px)}}
@media (max-width:980px){.float--1{left:8px;bottom:-18px}.float--2{right:8px}}
@media (max-width:560px){.mock__body{grid-template-columns:1fr}.mock__side{display:none}}

/* ---------- cream strip cards ---------- */
.strip{background:var(--cream-50);padding:36px 0;border-bottom:1px solid var(--n-200)}
.strip .container{display:grid;gap:16px}
.strip-card{display:flex;align-items:center;gap:24px;background:#fff;border:1px solid var(--n-200);border-radius:24px;padding:22px 26px;transition:.3s;position:relative}
.strip-card:hover{border-color:rgba(137,192,43,.5);box-shadow:var(--sh-lg);transform:translateY(-2px)}
.strip-card__ic{width:52px;height:52px;border-radius:16px;background:var(--lime-50);border:1px solid var(--lime-100);color:var(--lime-800);display:grid;place-items:center;flex:none;transition:.3s}
.strip-card:hover .strip-card__ic{background:var(--lime-800);color:#fff}
.strip-card__ic .ic{width:24px;height:24px}
.strip-card__k{font:800 11px var(--fm);letter-spacing:.15em;text-transform:uppercase;color:var(--lime-800);margin-bottom:4px;display:flex;align-items:center;gap:8px}
.strip-card p{color:var(--n-900);font-weight:700;font-size:1rem;line-height:1.5}
.strip-card small{display:block;color:var(--n-500);font-size:.8rem;font-weight:500;margin-top:3px}
.strip-card__go{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.88rem;color:var(--lime-800);background:var(--lime-100);padding:10px 18px;border-radius:999px;white-space:nowrap;transition:.3s}
.strip-card:hover .strip-card__go{background:var(--lime-500);color:#fff}
@media (max-width:760px){.strip-card{flex-direction:column;align-items:flex-start}.strip-card__go{margin-left:0}}

/* ---------- stats ---------- */
.stats{background:#fff;border-bottom:1px solid var(--n-200)}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:34px 24px;border-right:1px solid var(--n-200)}
.stat:last-child{border-right:0}
.stat b{display:block;font-size:2.5rem;font-weight:800;letter-spacing:-.04em;color:var(--n-950);line-height:1.1}
.stat b em{font-style:normal;color:var(--lime-600)}
.stat span{font-size:.86rem;color:var(--n-500);font-weight:500}
@media (max-width:760px){.stats__grid{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--n-200)}}
.logos{padding:24px 0;background:var(--paper);border-bottom:1px solid var(--n-200)}
.logos .container{display:flex;align-items:center;gap:30px;flex-wrap:wrap;justify-content:center}
.logos small{font:700 11px var(--fm);color:var(--n-500);text-transform:uppercase;letter-spacing:.15em}
.logos span{display:inline-flex;align-items:center;gap:8px;color:var(--n-800);font-weight:700;font-size:.9rem}
.logos span .ic{color:var(--lime-700)}

/* ---------- sections ---------- */
.section{padding:104px 0;position:relative}
.section--tight{padding:64px 0}
.section--gray{background:var(--cream-50);border-top:1px solid var(--n-200);border-bottom:1px solid var(--n-200)}
.section--paper{background:var(--paper);border-bottom:1px solid var(--n-200)}
.section--paper::before{content:"";position:absolute;inset:0;background-image:radial-gradient(var(--n-300) 1px,transparent 1px);background-size:22px 22px;opacity:.35;pointer-events:none}
.section--paper>.container{position:relative}
.section--dark{background:var(--ob-900);color:#fff;overflow:hidden}
.section--dark::before{content:"";position:absolute;width:800px;height:800px;top:20%;right:-300px;border-radius:50%;background:rgba(162,219,53,.05);filter:blur(120px);pointer-events:none}
.section--dark>.container{position:relative}
.section--dark p{color:var(--n-400)}
.section--dark strong,.section--dark h2,.section--dark h3,.section--dark h4{color:#fff}
.head{max-width:740px;margin:0 0 60px}
.head.center,.head--center{text-align:center;margin-left:auto;margin-right:auto}
.head h2,.h2{font-size:clamp(1.75rem,3.1vw,2.35rem);margin-bottom:16px;line-height:1.15}
.head h2 em,.h2 em{font-style:normal;color:var(--lime-700)}
.section--dark .head h2 em,.section--dark .h2 em{color:var(--lime-400)}
.head p{font-size:1.06rem;font-weight:500}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:980px){.grid-3,.grid-4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:72px 0}}

.card{background:#fff;border:1px solid var(--n-200);border-radius:var(--r-xl);padding:30px;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative}
.card:hover{transform:translateY(-3px);box-shadow:var(--sh-lg);border-color:rgba(137,192,43,.45)}
.card--flat:hover{transform:none;box-shadow:none;border-color:var(--n-200)}
.section--gray .card,.section--paper .card{background:#fff}
.card h3{font-size:1.14rem;margin-bottom:10px;font-weight:800}
.card p{font-size:.94rem;line-height:1.6}
.card__ic{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;margin-bottom:22px;background:var(--ob-950);color:var(--lime-400)}
.card__ic .ic{width:22px;height:22px}
.t-em,.t-blue,.t-amber,.t-violet,.t-rose,.t-teal{background:var(--ob-950);color:var(--lime-400)}
.t-blue{color:#8fb6ff}.t-amber{color:#f5c26b}.t-violet{color:#c3b2ff}.t-rose{color:#ff9a9e}.t-teal{color:#7de3cf}
.float__ic.t-em{background:var(--lime-100);color:var(--lime-800)}
.float__ic.t-blue{background:var(--blue-l);color:#2650b8}
.card__link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-weight:800;font-size:.88rem;color:var(--lime-800)}
.card__link .ic{width:15px;height:15px;transition:transform .2s}
.card:hover .card__link .ic,.card__link:hover .ic{transform:translateX(3px)}
.checks{margin-top:16px;display:grid;gap:10px}
.checks li{display:flex;gap:10px;font-size:.93rem;color:var(--n-700);font-weight:500}
.checks li::before{content:"";flex:none;width:19px;height:19px;margin-top:2px;border-radius:6px;background:var(--lime-400) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b110e' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
.section--dark .checks li,.aud--dark .checks li,.auth__aside .checks li{color:rgba(255,255,255,.82)}

/* feature rows */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:44px 0}
.feature + .feature{border-top:1px solid var(--n-200)}
.feature--rev .feature__text{order:2}
.feature__text h3{font-size:1.75rem;margin-bottom:14px}
.feature__text>p{font-size:1.02rem;margin-bottom:6px;font-weight:500}
.feature__visual{position:relative;background:var(--ob-950);border-radius:var(--r-xl);padding:34px;min-height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}
.feature__visual::before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(162,219,53,.18);filter:blur(70px);z-index:-1}
@media (max-width:900px){.feature{grid-template-columns:1fr;gap:28px}.feature--rev .feature__text{order:0}}

/* mini UI panels */
.ui{background:#fff;border:1px solid var(--n-200);border-radius:20px;box-shadow:var(--sh-xl);width:100%;max-width:460px;font-size:.8rem;overflow:hidden}
.ui__h{padding:13px 18px;border-bottom:1px solid var(--n-100);display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:800;background:var(--n-50)}
.ui__b{padding:14px 18px}
.ui__row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--n-100);gap:10px;color:var(--n-700);font-weight:500}
.ui__row b{font-family:var(--fm)}
.ui__row:last-child{border-bottom:0}
.rag{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:.72rem;letter-spacing:.04em}
.rag::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.rag--g{color:var(--lime-700)}.rag--a{color:#c07a0a}.rag--r{color:var(--rose)}
.ui__err{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:var(--rose-l);color:#9b1c1f;margin-bottom:8px;font-size:.78rem}
.ui__ok{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:var(--lime-100);color:var(--lime-900);font-size:.78rem}
.ui__err .ic,.ui__ok .ic{width:16px;height:16px;margin-top:1px}
.code{font-family:var(--fm);font-size:.73rem;background:var(--ob-black);border:1px solid rgba(255,255,255,.08);color:var(--lime-300);border-radius:18px;padding:18px;line-height:1.75;width:100%;max-width:460px;overflow:hidden;white-space:pre}
.code i{color:var(--n-500);font-style:normal}
.code b{color:#9fc5ff;font-weight:400}

/* path / accordion (dark section) */
.path{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.path__list{border-top:1px solid rgba(255,255,255,.1)}
.path__item{border-bottom:1px solid rgba(255,255,255,.1)}
.path__item button{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:24px 0;font:800 1.3rem var(--fb);letter-spacing:-.02em;color:var(--n-500);display:flex;justify-content:space-between;gap:16px;transition:color .2s}
.path__item button:hover{color:#fff}
.path__item.on button{color:var(--lime-400)}
.path__item button span.n{font:700 12px var(--fm);color:var(--n-600);margin-top:8px}
.path__item p{color:var(--n-400);font-size:1rem;font-weight:500;max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s;padding-right:32px}
.path__item.on p{max-height:160px;padding-bottom:24px}
.win{background:var(--ob-950);border:1px solid rgba(255,255,255,.1);border-radius:30px;box-shadow:0 30px 70px -20px rgba(0,0,0,.8);overflow:hidden}
.win__bar{display:flex;align-items:center;gap:7px;padding:15px 22px;border-bottom:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.02)}
.win__bar i{width:13px;height:13px;border-radius:50%;display:block;opacity:.8}
.win__bar span{margin-left:10px;font:600 12px var(--fm);color:var(--n-500)}
.win__body{padding:30px}
.win__k{font:700 12px var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--lime-400);margin-bottom:20px}
.chk{display:flex;align-items:center;gap:14px;border-radius:18px;padding:14px 18px;margin-bottom:10px;border:1px solid transparent;transition:.3s}
.chk__ic{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;flex:none;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:var(--n-600);position:relative}
.chk__ic .ic{width:19px;height:19px}
.chk__t{flex:1;font-weight:800;font-size:.98rem;color:var(--n-600);transition:.3s}
.chk__s{font:700 10.5px var(--fb);letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:7px;display:none}
.chk.done .chk__ic{background:var(--lime-400);border-color:var(--lime-400);color:var(--ob-950)}
.chk.done .chk__t{color:var(--n-300)}
.chk.on{background:rgba(162,219,53,.1);border-color:rgba(162,219,53,.2)}
.chk.on .chk__ic{border:2px solid var(--lime-400);color:var(--lime-400);background:transparent}
.chk.on .chk__ic::after{content:"";position:absolute;inset:-1px;border-radius:14px;background:rgba(162,219,53,.25);animation:ping 1.6s cubic-bezier(0,0,.2,1) infinite}
@keyframes ping{75%,100%{transform:scale(1.6);opacity:0}}
.chk.on .chk__t{color:#fff}
.chk.on .chk__s{display:inline-block;background:rgba(162,219,53,.1);border:1px solid rgba(162,219,53,.2);color:var(--lime-400)}
@media (max-width:900px){.path{grid-template-columns:1fr}}

/* numbered timeline with sticky visual */
.timeline{display:grid;grid-template-columns:5fr 7fr;gap:64px}
.timeline__visual{position:sticky;top:120px;align-self:start}
.tl{position:relative;padding-left:60px}
.tl::before{content:"";position:absolute;left:21px;top:20px;bottom:20px;width:2px;background:var(--n-200)}
.tl__item{position:relative;min-height:220px;padding:28px 0;display:flex;flex-direction:column;justify-content:center}
.tl__dot{position:absolute;left:-60px;top:34px;width:44px;height:44px;border-radius:14px;background:#fff;border:2px solid var(--n-200);display:grid;place-items:center;color:var(--n-500);transition:.3s}
.tl__dot .ic{width:19px;height:19px}
.tl__item.in .tl__dot{background:var(--ob-950);border-color:var(--ob-950);color:var(--lime-400)}
.tl__num{position:absolute;right:0;top:0;font-weight:800;font-size:clamp(4.5rem,8vw,6.5rem);line-height:1;color:var(--n-100);letter-spacing:-.05em;transition:color .5s;pointer-events:none}
.tl__item.in .tl__num{color:var(--lime-100)}
.tl__item h3{font-size:1.4rem;margin-bottom:8px;position:relative}
.tl__item p{font-size:1rem;max-width:520px;position:relative;font-weight:500}
@media (max-width:980px){.timeline{grid-template-columns:1fr}.timeline__visual{position:static}}

/* steps (compact) */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{position:relative;background:#fff;border:1px solid var(--n-200);border-radius:var(--r-xl);padding:28px 24px}
.section--gray .step,.section--paper .step{background:#fff}
.step__n{font:800 2.6rem var(--fb);letter-spacing:-.05em;color:var(--lime-500);line-height:1;margin-bottom:18px}
.step h3{font-size:1.06rem;margin-bottom:8px}
.step p{font-size:.9rem}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* audience */
.aud{border-radius:var(--r-xl);padding:34px;border:1px solid var(--n-200);background:#fff;display:flex;flex-direction:column;transition:.3s}
.aud:hover{box-shadow:var(--sh-lg);transform:translateY(-3px)}
.aud--dark{background:var(--ob-950);color:#fff;border-color:var(--ob-950)}
.aud--dark h3{color:#fff}
.aud--dark p{color:var(--n-400)}
.aud h3{font-size:1.35rem;margin:16px 0 10px}
.aud .btn{margin-top:auto;align-self:flex-start}
.aud .checks{margin-bottom:28px}

/* comparison */
.compare{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--n-200);border-radius:24px;overflow:hidden;font-size:.92rem;background:#fff}
.compare th{background:var(--ob-950);color:#fff;font-weight:800;padding:17px 20px;text-align:left}
.compare th:not(:first-child),.compare td:not(:first-child){text-align:center}
.compare td{padding:13px 20px;border-bottom:1px solid var(--n-100);color:var(--n-700);font-weight:500}
.compare tr:last-child td{border-bottom:0}
.compare tr.g td{background:var(--cream-50);font:700 11px var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--lime-800)}
.compare .y{color:var(--lime-600);font-weight:800;font-size:1.05rem}
.compare .n{color:var(--n-400)}
.table-scroll{overflow-x:auto;border-radius:24px}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.plan{background:#fff;border:1px solid var(--n-200);border-radius:var(--r-xl);padding:34px;display:flex;flex-direction:column;position:relative}
.plan--pop{background:var(--ob-950);border-color:var(--ob-950);color:#fff;box-shadow:0 30px 60px -20px rgba(11,17,14,.55),0 0 60px -20px rgba(162,219,53,.4)}
.plan--pop h3,.plan--pop .plan__price{color:#fff}
.plan--pop .plan__for,.plan--pop .plan__note,.plan--pop .plan__price small{color:var(--n-400)}
.plan--pop .checks li{color:rgba(255,255,255,.85)}
.plan__tag{position:absolute;top:-13px;left:34px;background:var(--lime-400);color:var(--ob-950);font:800 10.5px var(--fb);letter-spacing:.14em;padding:6px 12px;border-radius:999px}
.plan h3{font-size:1.18rem}
.plan__for{font-size:.88rem;margin:6px 0 22px;font-weight:500}
.plan__price{font-size:3rem;font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--n-950)}
.plan__price small{font-size:.92rem;font-weight:600;color:var(--n-500);letter-spacing:0}
.plan__note{font-size:.82rem;color:var(--n-500);margin:10px 0 24px;min-height:2.6em;font-weight:500}
.plan .checks{margin:0 0 28px}
.plan .btn{margin-top:auto}
@media (max-width:900px){.plans{grid-template-columns:1fr}}

/* FAQ — two column with dark contact card */
.faq-wrap{display:grid;grid-template-columns:4fr 8fr;gap:64px;align-items:start}
.faq-side{position:sticky;top:120px}
.faq-side h2{font-size:clamp(1.75rem,3vw,2.25rem);margin-bottom:28px}
.contact-card{background:var(--ob-950);border-radius:26px;padding:28px;color:#fff}
.contact-card .k{font:700 11px var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--lime-400);margin-bottom:10px}
.contact-card p{color:rgba(255,255,255,.7);font-size:.92rem;margin-bottom:20px}
@media (max-width:900px){.faq-wrap{grid-template-columns:1fr;gap:28px}.faq-side{position:static}}
.faq{display:block;border-top:1px solid var(--n-200)}
.faq details{border-bottom:1px solid var(--n-200)}
.faq summary{list-style:none;cursor:pointer;padding:24px 0;font-weight:700;font-size:1.12rem;color:var(--n-900);display:flex;justify-content:space-between;gap:20px;align-items:center;transition:color .2s}
.faq summary:hover{color:var(--lime-600)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--n-200);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23556358' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .3s,background-color .2s}
.faq details[open] summary::after{transform:rotate(45deg);background-color:var(--lime-400);border-color:var(--lime-400)}
.faq details>div{padding:0 56px 24px 0;color:var(--n-500);font-size:1rem;font-weight:500}
.faq details>div p{color:var(--n-500)}
.faq details>div a{color:var(--lime-700);font-weight:700;text-decoration:underline}

/* prose */
.prose{font-size:1.02rem}
.prose h2{font-size:1.6rem;margin:52px 0 14px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:1.18rem;margin:30px 0 10px}
.prose p{margin-bottom:14px;color:var(--n-700);font-weight:500}
.prose ul,.prose ol{margin:0 0 16px 22px;color:var(--n-700)}
.prose ul{list-style:disc}
.prose li{margin-bottom:6px}
.prose li::marker{color:var(--lime-600)}
.prose a{color:var(--lime-700);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.prose table{width:100%;border-collapse:separate;border-spacing:0;margin:8px 0 24px;font-size:.92rem;border:1px solid var(--n-200);border-radius:16px;overflow:hidden}
.prose th{background:var(--ob-950);color:#fff;text-align:left;font-weight:700;padding:12px 16px}
.prose td{padding:11px 16px;border-bottom:1px solid var(--n-100)}
.prose tr:last-child td{border-bottom:0}
.prose td.r,.prose th.r{text-align:right;font-family:var(--fm)}
.callout{border-radius:18px;padding:18px 20px;margin:22px 0;display:flex;gap:14px;background:var(--lime-50);border:1px solid var(--lime-100);color:var(--lime-900)}
.callout p{color:inherit;margin:0}
.callout .ic{margin-top:2px}
.callout--amber{background:var(--amber-l);border-color:#f8dcaa;color:#7a4a00}
.callout--blue{background:var(--cream-50);border-color:var(--n-200);color:var(--n-800)}
.toc{position:sticky;top:120px;background:var(--cream-50);border:1px solid var(--n-200);border-radius:22px;padding:22px}
.toc strong{display:block;font:700 11px var(--fm);letter-spacing:.15em;text-transform:uppercase;color:var(--lime-800);margin-bottom:12px}
.toc a{display:block;font-size:.88rem;color:var(--n-600);padding:6px 0;font-weight:600}
.toc a:hover{color:var(--lime-700)}
.with-toc{display:grid;grid-template-columns:250px 1fr;gap:60px;align-items:start}
@media (max-width:900px){.with-toc{grid-template-columns:1fr}.toc{position:static}}

/* calculator */
.calc{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;align-items:start;margin-top:-64px;position:relative;z-index:2}
.panel{background:#fff;border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-lg);padding:32px}
.panel--sticky{position:sticky;top:110px}
aside.panel--sticky{background:var(--ob-950);border-color:var(--ob-950);color:#fff}
aside.panel--sticky h2,aside.panel--sticky .result-total{color:#fff}
aside.panel--sticky p{color:var(--n-400)}
aside.panel--sticky .bands th{color:var(--n-500);border-color:rgba(255,255,255,.1)}
aside.panel--sticky .bands td{border-color:rgba(255,255,255,.07);color:rgba(255,255,255,.85)}
aside.panel--sticky .bands tr.z td{color:var(--n-600)}
aside.panel--sticky .bands tfoot td{color:var(--lime-400)}
aside.panel--sticky h3{color:var(--lime-400)!important;font:700 11px var(--fb)!important;letter-spacing:.15em;text-transform:uppercase}
aside.panel--sticky .notes li{color:var(--n-400)}
aside.panel--sticky .notes li.w{color:#f5c26b}
.panel h2{font-size:1.2rem;margin-bottom:6px}
.result-total{font-size:3.2rem;font-weight:800;letter-spacing:-.045em;line-height:1.05;color:var(--lime-400)}
@media (max-width:900px){.calc{grid-template-columns:1fr}.panel--sticky{position:static}}
.f{margin-bottom:18px}
.f>label,.f>.lbl,.f legend{display:block;font-weight:700;font-size:.88rem;margin-bottom:7px;color:var(--n-900)}
.f .hint{display:block;font-size:.8rem;color:var(--n-500);margin:-3px 0 8px;font-weight:500}
.inp,.f input[type=text],.f input[type=email],.f input[type=password],.f input[type=date],.f input[type=number],.f input[type=tel],.f select,.f textarea{width:100%;font:500 .95rem var(--fb);padding:12px 15px;border:1.5px solid var(--n-200);border-radius:14px;background:#fff;color:var(--n-950);transition:border-color .15s,box-shadow .15s}
.f input:focus,.f select:focus,.f textarea:focus,.inp:focus{outline:0;border-color:var(--lime-500);box-shadow:0 0 0 4px rgba(162,219,53,.22)}
.f textarea{min-height:130px}
.money{position:relative}
.money::before{content:"£";position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--n-500);font-weight:700}
.money input{padding-left:29px!important}
.seg{display:flex;flex-wrap:wrap;gap:8px;border:0}
.seg label{position:relative;cursor:pointer}
.seg input{position:absolute;opacity:0}
.seg span{display:block;padding:9px 16px;border:1.5px solid var(--n-200);border-radius:999px;font-size:.86rem;font-weight:700;color:var(--n-700);transition:.15s}
.seg input:checked+span{border-color:var(--ob-950);background:var(--ob-950);color:var(--lime-400)}
.seg input:focus-visible+span{outline:3px solid var(--lime-400)}
.tick{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border:1.5px solid var(--n-200);border-radius:16px;cursor:pointer;margin-bottom:8px;transition:.15s}
.tick:hover{border-color:var(--n-300)}
.tick input{width:18px;height:18px;margin-top:2px;accent-color:var(--lime-600);flex:none}
.tick span{font-size:.9rem;font-weight:600}
.tick small{display:block;color:var(--n-500);font-weight:500;font-size:.8rem}
.tick:has(input:checked){border-color:var(--lime-500);background:var(--lime-50)}
.bands{width:100%;border-collapse:collapse;font-size:.86rem;margin-top:6px}
.bands th{font:700 10.5px var(--fb);text-transform:uppercase;letter-spacing:.1em;color:var(--n-400);text-align:left;padding:8px 0;border-bottom:1px solid var(--n-200)}
.bands td{padding:9px 0;border-bottom:1px solid var(--n-100)}
.bands .r{text-align:right;font-family:var(--fm)}
.bands tr.z td{color:var(--n-400)}
.bands tfoot td{font-weight:800;border-bottom:0;padding-top:12px}
.notes{margin-top:14px;display:grid;gap:8px}
.notes li{font-size:.84rem;color:var(--n-500);padding-left:16px;position:relative}
.notes li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--n-400)}
.notes li.w{color:#7a4a00}
.notes li.w::before{background:var(--amber)}

/* CTA */
.cta{position:relative;overflow:hidden;background:var(--ob-950);border-radius:36px;padding:68px;color:#fff;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;isolation:isolate}
.cta::before{content:"";position:absolute;width:520px;height:520px;right:-140px;top:-220px;border-radius:50%;background:rgba(162,219,53,.22);filter:blur(100px);z-index:-1}
.cta::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent,#000);z-index:-1}
.cta h2{color:#fff;font-size:clamp(1.7rem,3vw,2.4rem);margin-bottom:12px}
.cta p{color:var(--n-400);font-size:1.04rem;font-weight:500}
.cta__btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:860px){.cta{grid-template-columns:1fr;padding:42px 28px}.cta__btns{justify-content:flex-start}}

/* footer */
.foot{background:var(--ob-black);color:var(--n-400);padding:80px 0 34px;font-size:.9rem;border-top:1px solid rgba(255,255,255,.08)}
.foot__grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:40px;margin-bottom:56px}
.foot .logo{color:#fff;margin-bottom:18px}
.foot .logo b{color:var(--lime-400)}
.foot .logo span span{color:var(--n-500)}
.foot .logo__mark{background:var(--lime-400)}
.foot .logo__mark svg{stroke:var(--ob-950)}
.foot p{color:var(--n-300);font-size:.88rem;max-width:330px;line-height:1.65}
.foot p.small{color:var(--n-500);font-size:.8rem;margin-top:10px}
.foot h4{font:700 11px var(--fm);letter-spacing:.15em;text-transform:uppercase;color:var(--lime-400);margin-bottom:18px}
.foot li{margin-bottom:11px}
.foot a{color:var(--n-300)}
.foot a:hover{color:#fff}
.foot__bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.8rem;color:var(--n-500)}
@media (max-width:900px){.foot__grid{grid-template-columns:1fr 1fr}}

/* auth */
.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}
.auth__aside{position:relative;background:var(--ob-950);color:#fff;padding:48px 56px;display:flex;flex-direction:column;overflow:hidden;isolation:isolate}
.auth__aside::before{content:"";position:absolute;width:560px;height:560px;left:-200px;bottom:-260px;border-radius:50%;background:rgba(162,219,53,.2);filter:blur(100px);z-index:-1}
.auth__aside::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:26px 26px;z-index:-1}
.auth__aside .logo{color:#fff}.auth__aside .logo b{color:var(--lime-400)}.auth__aside .logo span span{color:var(--n-500)}
.auth__aside .logo__mark{background:var(--lime-400)}.auth__aside .logo__mark svg{stroke:var(--ob-950)}
.auth__quote{margin-top:auto}
.auth__quote h2{color:#fff;font-size:2.1rem;margin-bottom:14px;max-width:460px}
.auth__quote p{color:var(--n-400);max-width:460px;font-weight:500}
.auth__main{display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--cream-50)}
.auth__box{width:100%;max-width:440px;background:#fff;border:1px solid var(--n-200);border-radius:28px;padding:36px;box-shadow:var(--sh-md)}
.auth__box.wide{max-width:560px}
.auth__box h1{font-size:1.9rem;margin-bottom:8px}
.auth__box>p{margin-bottom:26px;font-weight:500}
.auth__alt{margin-top:22px;font-size:.9rem;color:var(--n-500)}
.auth__alt a{color:var(--lime-700);font-weight:800}
@media (max-width:900px){.auth{grid-template-columns:1fr}.auth__aside{display:none}}

/* alerts */
.alert{border-radius:16px;padding:13px 16px;margin-bottom:20px;font-size:.9rem;font-weight:600;display:flex;gap:10px}
.alert--ok{background:var(--lime-100);color:var(--lime-900)}
.alert--bad{background:var(--rose-l);color:#9b1c1f}
.alert--warn{background:var(--amber-l);color:#7a4a00}
.err-sum{border:2px solid var(--rose);border-radius:16px;padding:16px 18px;margin-bottom:22px;background:#fff}
.err-sum h2{font-size:1rem;color:#b4232a;margin-bottom:6px}
.err-sum ul{list-style:disc;margin-left:18px;font-size:.9rem}
.err-sum a{color:#b4232a;font-weight:700;text-decoration:underline}
.f.has-err input,.f.has-err select,.tick.has-err{border-color:var(--rose)}
.f .err,.err{display:block;color:#b4232a;font-weight:700;font-size:.84rem;margin-bottom:6px}
.link{color:var(--lime-700);font-weight:800}
.link:hover{text-decoration:underline}

/* misc */
.badge-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;padding:6px 12px;border-radius:999px;background:var(--n-100);color:var(--n-700)}
.chip .ic{width:14px;height:14px;color:var(--lime-700)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:32px}}
.kpi{display:flex;gap:16px;align-items:flex-start}
.kpi__ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex:none}
.kpi h4{font-size:1.02rem;margin-bottom:4px;font-weight:800}
.kpi p{font-size:.9rem;font-weight:500}
.mt-0{margin-top:0}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-40{margin-top:40px}
.center{text-align:center}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.float,.eyebrow i,.nav__badge i,.dot,.typed::after,.mock::before,.chk.on .chk__ic::after{animation:none}html{scroll-behavior:auto}}

/* cookie notice */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:1200;display:flex;justify-content:center;animation:cookieIn .4s ease}
.cookie[hidden]{display:none}
.cookie__in{max-width:880px;width:100%;display:flex;align-items:center;gap:16px;background:var(--ob-950);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:14px 14px 14px 18px;box-shadow:0 24px 60px -20px rgba(0,0,0,.7)}
.cookie__ic{width:38px;height:38px;border-radius:12px;background:rgba(162,219,53,.12);border:1px solid rgba(162,219,53,.25);color:var(--lime-400);display:grid;place-items:center;flex:none}
.cookie p{color:rgba(255,255,255,.85);font-size:.88rem;font-weight:500;line-height:1.5;flex:1}
.cookie p a{color:var(--lime-400);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.cookie .btn{flex:none}
@keyframes cookieIn{from{opacity:0;transform:translateY(16px)}}
@media (max-width:600px){.cookie__in{flex-wrap:wrap}.cookie__ic{display:none}.cookie .btn{width:100%}}
@media (prefers-reduced-motion:reduce){.cookie{animation:none}}

/* pricing: two plans, price list, cheaper-option finder */
.price2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:920px;margin:0 auto}
@media (max-width:760px){.price2{grid-template-columns:1fr}}
.pricelist td{vertical-align:middle}
.pricelist s{color:var(--n-400);font-weight:600}
.pricelist .pl-price{font-size:1.3rem;color:var(--n-950)}
.pricelist .pl-per{font-size:.8rem;color:var(--n-500);margin-left:2px}
.pricelist .pl-sub{font-size:.78rem;color:var(--n-500);font-weight:500}
.pricelist .pl-save{display:inline-block;background:var(--lime-100,#eef8d9);color:var(--lime-800,#3d5a12);font-weight:800;font-size:.8rem;padding:5px 10px;border-radius:999px}
.pricelist tr.pl-payg td{background:var(--cream-50,#fbfaf6)}
.pl-fine{font-size:.85rem;color:var(--n-500);margin-top:14px;text-align:center}
.pcalc{padding:28px}
.pcalc label{display:flex;justify-content:space-between;font-weight:700;color:var(--n-900);gap:12px}
.pcalc output{font-size:1.5rem;font-weight:800;color:var(--n-950)}
.pcalc input[type=range]{width:100%;margin:14px 0 22px;accent-color:var(--lime-500,#8cc63f)}
.pcalc__res{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pcalc__res>div{background:var(--cream-50,#fbfaf6);border:1px solid var(--n-200);border-radius:16px;padding:14px 16px}
.pcalc__res small{display:block;font-size:.75rem;color:var(--n-500);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.pcalc__res b{display:block;font-size:1.25rem;color:var(--n-950);margin:4px 0 2px}
.pcalc__res span{font-size:.8rem;color:var(--n-500)}
.pcalc__res .pcalc__best{background:var(--ob-950,#0b110e);border-color:var(--ob-950,#0b110e)}
.pcalc__res .pcalc__best b{color:var(--lime-400,#a2db35)}
.pcalc__res .pcalc__best small,.pcalc__res .pcalc__best span{color:#c8d0ca}
@media (max-width:640px){.pcalc__res{grid-template-columns:1fr}}
/* getting-started video */
.vid-sec{padding-bottom:24px}
.vid{position:relative;margin:0;border-radius:24px;overflow:hidden;background:var(--ob-950,#0b110e);border:1px solid var(--n-200);box-shadow:0 30px 60px -30px rgba(11,17,14,.45);aspect-ratio:16/9}
.vid video{display:block;width:100%;height:100%;object-fit:contain;background:#0b110e}
.vid__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;border:0;cursor:pointer;color:#fff;
  background:radial-gradient(circle at 30% 20%,rgba(162,219,53,.28),transparent 55%),linear-gradient(180deg,rgba(11,17,14,.15),rgba(11,17,14,.65));transition:opacity .2s}
.vid__btn{width:84px;height:84px;border-radius:50%;background:var(--lime-400,#a2db35);display:grid;place-items:center;box-shadow:0 0 0 12px rgba(162,219,53,.22);transition:transform .2s}
.vid__btn svg{width:34px;height:34px;fill:#0b110e;margin-left:4px}
.vid__play:hover .vid__btn{transform:scale(1.06)}
.vid__txt{text-align:left}.vid__txt b{display:block;font-size:1.15rem}.vid__txt small{color:#c8d0ca;font-weight:600}
.vid.is-playing .vid__play{opacity:0;pointer-events:none}
@media (max-width:640px){.vid{border-radius:16px}.vid__btn{width:64px;height:64px}.vid__txt{display:none}}
.vid__play{font:inherit}
.vid--poster .vid__play{align-items:flex-end;justify-content:flex-start;padding:0 0 9% 7%;background:linear-gradient(180deg,transparent 55%,rgba(11,17,14,.55))}
.vid--poster .vid__btn{width:68px;height:68px;box-shadow:0 0 0 9px rgba(162,219,53,.22)}
.vid--poster .vid__btn svg{width:28px;height:28px}

/* ---------- paid public reports ---------- */
.page-hero--slim{padding-bottom:56px}
.cust-bar{background:#fff;border-bottom:1px solid var(--n-200)}
.cust-bar__in{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:54px;font-size:.9rem;color:var(--n-600);flex-wrap:wrap}
.cust-bar__links{display:flex;gap:18px;align-items:center}
.cust-bar__links a,.cust-bar .linkish{font-weight:700;color:var(--lime-800);background:none;border:0;cursor:pointer;font:inherit;font-weight:700;padding:0}
.cust-empty{text-align:center;background:#fff;border:1px solid rgba(17,24,20,.08);border-radius:24px;padding:48px 28px}
.cust-empty b{display:block;font-size:1.2rem;color:var(--n-950);margin-bottom:6px}
.cust-empty p{max-width:460px;margin:0 auto 20px}
.cust-list{display:flex;flex-direction:column;gap:10px}
.cust-row{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid rgba(17,24,20,.08);border-radius:18px;padding:16px 18px;color:inherit;text-decoration:none;transition:transform .35s var(--spring,ease),box-shadow .35s var(--spring,ease)}
.cust-row:hover{box-shadow:0 14px 34px -22px rgba(17,24,20,.35)}
.cust-row:active{transform:scale(.99)}
.cust-row__ic{width:42px;height:42px;border-radius:13px;background:var(--lime-50);color:var(--lime-800);display:grid;place-items:center;flex:none}
.cust-row__ic .ic{width:20px;height:20px}
.cust-row__main{flex:1;min-width:0}
.cust-row__main b{display:block;color:var(--n-950)}
.cust-row__main small{color:var(--n-500);font-size:.8rem}
.cust-row__go{color:var(--n-400)}
.cust-tag{font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:999px;background:#fff4e0;color:#b25e00;white-space:nowrap}
.cust-tag--ok{background:#e3f8ce;color:#446817}
.buy{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
@media (max-width:900px){.buy{grid-template-columns:1fr}}
.buy__main{background:#fff;border:1px solid rgba(17,24,20,.08);border-radius:24px;padding:28px}
.buy__main h2{font-size:1.25rem;margin-bottom:4px}
.buy__sub{font-size:.9rem;margin-bottom:16px}
.buy__sub a{color:var(--lime-800);font-weight:700;text-decoration:underline}
.buy__answers{width:100%;border-collapse:collapse;font-size:.92rem}
.buy__answers td{padding:10px 4px;border-bottom:1px solid rgba(17,24,20,.06)}
.buy__answers td:first-child{color:var(--n-500)}
.buy__answers td:last-child{font-weight:700;color:var(--n-950);text-align:right}
.buy__side{position:sticky;top:100px}
.buy__card{background:var(--ob-950);color:#fff;border-radius:24px;padding:26px;box-shadow:0 30px 60px -30px rgba(11,17,14,.6)}
.buy__card small{display:block;color:var(--lime-400);font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.buy__lock{width:42px;height:42px;border-radius:13px;background:rgba(162,219,53,.14);color:var(--lime-400);display:grid;place-items:center;margin-bottom:14px}
.buy__lock .ic{width:20px;height:20px}
.buy__price{font-size:2.6rem;font-weight:800;letter-spacing:-.04em;margin:6px 0 14px;color:#fff}
.buy__price span{font-size:.85rem;font-weight:600;color:#c8d0ca;letter-spacing:0}
.buy__card .checks li{color:#e6ece7}
.buy__card .btn{margin-top:18px}
.buy__fine{font-size:.78rem;color:#9aa69e;margin:12px 0 0;line-height:1.5}
.buy__main + * .buy__fine, .buy__side > .buy__fine{color:var(--n-500)}
/* calculator: locked result panel */
.unlock{background:var(--ob-950);color:#fff;border-radius:22px;padding:24px;margin-top:6px}
.unlock h3{color:#fff;font-size:1.35rem;margin-bottom:4px}
.unlock p{color:#c8d0ca;margin:0 0 14px}
.unlock .checks li{color:#e6ece7}
.unlock__row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.unlock__price{font-size:2rem;font-weight:800;letter-spacing:-.03em}
.unlock__price small{font-size:.8rem;color:#c8d0ca;font-weight:600;letter-spacing:0}
.locked-amt{display:inline-flex;align-items:center;gap:10px}
.locked-amt .blur{filter:blur(9px);user-select:none;opacity:.75}
.locked-amt .ic{width:20px;height:20px;color:var(--lime-400)}

/* ---------- stamp duty guides ---------- */
.guide-meta{font-size:.82rem;color:rgba(255,255,255,.55);margin-top:14px}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:980px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.guide-grid{grid-template-columns:1fr}}
.guide-card{position:relative;display:block;background:#fff;border:1px solid rgba(17,24,20,.08);border-radius:20px;padding:22px 52px 22px 22px;color:inherit;text-decoration:none;transition:transform .35s var(--spring,ease),box-shadow .35s var(--spring,ease)}
.guide-card:hover{box-shadow:0 18px 40px -24px rgba(17,24,20,.35);transform:translateY(-2px)}
.guide-card b{display:block;color:var(--n-950);font-size:1.02rem;margin-bottom:6px}
.guide-card span{display:block;font-size:.88rem;color:var(--n-500);line-height:1.5}
.guide-card i{position:absolute;right:20px;top:22px;color:var(--lime-700)}
.guide-card i .ic{width:18px;height:18px}
.guide-card--calc{background:var(--ob-950);border-color:var(--ob-950)}
.guide-card--calc b{color:#fff}.guide-card--calc span{color:#c8d0ca}.guide-card--calc i{color:var(--lime-400)}
.guide-grid--big .guide-card{padding:26px 56px 26px 26px}
.guide-more{margin-top:48px;max-width:760px}
.guide-more h2{font-size:1.4rem;margin-bottom:6px}
.guide-more a{color:var(--lime-800);font-weight:700;text-decoration:underline}
.prose .guide-link{margin:-4px 0 14px;font-weight:700}.prose .guide-link a{color:var(--lime-800);text-decoration:underline;text-underline-offset:3px}

/* ---------- answer-first blocks, sources, glossary (AEO / GEO) ---------- */
.quick-answer{border:1px solid rgba(137,192,43,.45);background:linear-gradient(180deg,#f7fdec,#fff);border-radius:18px;padding:18px 20px;margin:0 0 26px}
.quick-answer__k{display:inline-block;font:800 11px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--lime-800);margin-bottom:6px}
.quick-answer p{margin:0;font-size:1.05rem;color:var(--n-900);line-height:1.6}
.sources{margin-top:32px;border-top:1px solid var(--n-200);padding-top:18px;font-size:.88rem}
.sources b{display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--n-500);margin-bottom:6px}
.sources ul{margin:0 0 10px;padding-left:18px}
.sources li{margin:4px 0;color:var(--n-500)}
.sources a{color:var(--lime-800);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sources p{color:var(--n-500);margin:0}
.glossary{margin:0;display:grid;gap:10px}
.glossary__item{background:#fff;border:1px solid rgba(17,24,20,.08);border-radius:16px;padding:16px 18px;scroll-margin-top:110px}
.glossary dt{font-weight:800;color:var(--n-950);margin-bottom:4px}
.glossary dd{margin:0;color:var(--n-600);line-height:1.6}
.glossary__item:target{border-color:var(--lime-500);box-shadow:0 0 0 3px rgba(162,219,53,.25)}
