:root{
  --bg:#050506;
  --bg-2:#0B0B0D;
  --surface:#101013;
  --line:#1C1C20;
  --line-2:#26262B;
  --fg:#F5F5F7;
  --fg-2:#C8C8CC;
  --muted:#8A8A92;
  --faint:#4A4A52;
  --accent:#3B6BFF;
  --accent-2:#7FA5FF;
  --accent-ink:#1E44C7;
  --ok:#5AE6A7;
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg)}
body{
  font-family:'Inter', ui-sans-serif, system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"ss01","cv11";
  font-size:16px; line-height:1.5;
  letter-spacing:-0.005em;
  overflow-x:hidden;
}
html{scroll-behavior:smooth}
a{color:inherit; text-decoration:none}
.mono{font-family:'JetBrains Mono',ui-monospace,Menlo,monospace; letter-spacing:0}
.wrap{max-width:1320px; margin:0 auto; padding:0 28px; position:relative}
.eyebrow{
  font-family:'JetBrains Mono',monospace; font-size:11.5px; font-weight:500;
  text-transform:uppercase; letter-spacing:.18em;
  color:var(--accent-2);
  display:inline-flex; align-items:center; gap:12px;
}
.eyebrow::before{ content:""; width:24px; height:1px; background:var(--accent); }

/* ========= NAV ========= */
nav.top{
  position:fixed; top:0; left:0; right:0; z-index:60;
  padding:18px 28px;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  transition: background .3s, backdrop-filter .3s, border-color .3s;
  border-bottom:1px solid transparent;
}
nav.top.scrolled{
  background:rgba(5,5,6,.72);
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  border-bottom:1px solid var(--line);
}
.logo{
  display:inline-flex; align-items:center; gap:10px;
  font-weight:700; font-size:14px; letter-spacing:.02em;
}
.logo-mk{
  width:28px; height:28px; border-radius:7px;
  background: conic-gradient(from 140deg, #3B6BFF, #7FA5FF, #3B6BFF);
  position:relative;
}
.logo-mk::after{
  content:""; position:absolute; inset:4px; border-radius:4px;
  background:var(--bg);
  box-shadow: inset 0 0 0 1px var(--accent-2);
}
.logo-mk::before{
  content:""; position:absolute; inset:9px; border-radius:2px;
  background:var(--accent-2);
}
.nav-links{
  display:flex; gap:4px; padding:5px;
  border:1px solid var(--line); border-radius:999px;
  background:rgba(16,16,19,.6);
  backdrop-filter: blur(10px);
}
.nav-links a{
  padding:7px 14px; border-radius:999px; font-size:13px;
  color:var(--fg-2); font-weight:500; transition:background .2s, color .2s;
}
.nav-links a:hover{ background:var(--line); color:#fff; }
.nav-right{ display:flex; justify-content:flex-end; align-items:center; gap:10px; }
.btn{
  display:inline-flex; align-items:center; gap:10px;
  height:40px; padding:0 16px; border-radius:10px;
  font-size:13.5px; font-weight:500;
  border:1px solid transparent; cursor:pointer;
  transition: background .2s, color .2s, border-color .2s, transform .15s;
  white-space:nowrap; font-family:inherit;
}
.btn:active{ transform: translateY(1px); }
.btn-p{ background:#fff; color:#0B0B0D; }
.btn-p:hover{ background:var(--accent); color:#fff; }
.btn-a{ background:var(--accent); color:#fff; }
.btn-a:hover{ background:var(--accent-ink); }
.btn-g{ background:transparent; color:#fff; border-color:var(--line-2); }
.btn-g:hover{ border-color:#fff; background:rgba(255,255,255,.04);}
.btn-lg{ height:52px; padding:0 22px; font-size:14.5px; border-radius:12px;}
.arr{ transition: transform .2s; }
.btn:hover .arr{ transform: translateX(3px); }

/* ========= HERO ========= */
.hero{
  position:relative;
  min-height: 100vh;
  overflow:hidden;
  isolation:isolate;
}
.hero video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover;
  z-index:0;
  filter: saturate(1.1) contrast(1.02) brightness(.92);
}
.hero .scrim{
  position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(5,5,6,.55) 0%, rgba(5,5,6,.15) 30%, rgba(5,5,6,.35) 70%, rgba(5,5,6,.95) 100%),
    linear-gradient(90deg, rgba(5,5,6,.78) 0%, rgba(5,5,6,.10) 60%, rgba(5,5,6,0) 100%);
}
.hero .vignette{
  position:absolute; inset:0; z-index:1; pointer-events:none;
  background: radial-gradient(circle at 50% 55%, transparent 50%, rgba(5,5,6,.55) 100%);
}
.hero .noise{
  position:absolute; inset:0; z-index:2; pointer-events:none; opacity:.05;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.5'/></svg>");
  mix-blend-mode: overlay;
}

.hero-inner{
  position:relative; z-index:4;
  min-height: 100vh;
  display:flex; flex-direction:column;
  padding: 120px 28px 56px;
  max-width:1320px; margin:0 auto;
}
.hero-top{
  display:flex; justify-content:space-between; align-items:center;
  color:var(--fg-2); font-family:'JetBrains Mono',monospace; font-size:11px;
  letter-spacing:.14em; text-transform:uppercase;
}
.hero-top .row{ display:inline-flex; gap:18px; align-items:center;}
.hero-top .dot{ width:6px;height:6px;border-radius:50%; background:var(--ok); box-shadow:0 0 10px var(--ok); }
.hero-main{
  margin-top:auto;
  display:grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.95fr);
  gap: 56px; align-items:end;
}
.hero-title{
  font-size: clamp(42px, 7vw, 104px);
  line-height: .94;
  letter-spacing: -.04em;
  font-weight:600;
  margin: 22px 0 0;
  text-wrap: balance;
  color:#fff;
  mix-blend-mode: normal;
}
.hero-title .out{
  -webkit-text-stroke: 1px #fff;
  color: transparent;
  font-weight:500;
}
.hero-title .ital{ font-style:italic; font-weight:400; color:var(--accent-2);}
.hero-kicker{
  max-width: 46ch;
  font-size: 17.5px;
  color: var(--fg-2);
  line-height: 1.45;
  margin: 28px 0 0;
}
.hero-ctas{ margin-top: 28px; display:flex; gap:10px; flex-wrap:wrap; }
.hero-side{
  display:flex; flex-direction:column; gap:14px;
  align-items:flex-end;
}
.hud-card{
  width:100%; max-width:340px;
  background: rgba(10,10,12,.55);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border: 1px solid rgba(127,165,255,.18);
  border-radius: 14px;
  padding: 16px 18px;
  color:#E9EDF7;
  font-size:13px;
}
.hud-card .lbl{
  font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--accent-2);
  letter-spacing:.14em; text-transform:uppercase; margin-bottom:8px;
  display:flex; justify-content:space-between;
}
.hud-card .lbl .d{
  width:6px;height:6px;border-radius:50%; background:var(--accent);
  box-shadow:0 0 8px var(--accent); align-self:center;
}
.hud-card b{ font-size:20px; font-weight:600; letter-spacing:-.015em; display:block; margin-bottom:2px;}
.hud-card span{ color:#A9B1C3; font-size:12.5px; }
.hud-row{
  display:grid; grid-template-columns: 1fr 1fr; gap:10px;
}
.hud-row .cell{
  background:rgba(10,10,12,.5); backdrop-filter: blur(10px);
  border:1px solid rgba(127,165,255,.15); border-radius:10px;
  padding:10px 12px;
}
.hud-row .cell .k{ font-family:'JetBrains Mono',monospace; font-size:10px; color:var(--muted); letter-spacing:.1em; text-transform:uppercase;}
.hud-row .cell .v{ font-size:16px; font-weight:600; color:#fff; margin-top:3px;}
.hud-row .cell .v span{ color:var(--accent-2); font-size:12px; font-weight:500; margin-left:4px;}
.hero-bottom{
  margin-top: 40px;
  display:flex; justify-content:space-between; align-items:center; gap:20px;
  color:var(--muted); font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;
}
.hero-bottom .trust{ display:flex; gap:22px; flex-wrap:wrap; }
.hero-bottom .trust span{ display:inline-flex; align-items:center; gap:8px; color:var(--fg-2);}
.hero-bottom .trust .ck{ width:13px; height:13px; border-radius:50%; background:var(--accent); display:grid; place-items:center; color:#fff;}

.sound-btn{
  position:absolute; z-index:5;
  right:28px; bottom:28px;
  width:42px; height:42px; border-radius:50%;
  background:rgba(10,10,12,.6);
  backdrop-filter: blur(10px);
  border:1px solid var(--line-2); color:#fff; cursor:pointer;
  display:grid; place-items:center;
  transition: background .2s, border-color .2s;
}
.sound-btn:hover{ background:rgba(59,107,255,.35); border-color:var(--accent); }

/* ========= SECTIONS ========= */
section{ padding: 120px 0; position:relative; }
.s-head{
  display:grid; grid-template-columns: auto 1fr auto; gap: 40px; align-items:end;
  margin-bottom: 72px;
  padding-bottom:24px; border-bottom:1px solid var(--line);
}
.s-head .num{
  font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--muted);
  letter-spacing:.14em; text-transform:uppercase;
}
.s-head h2{
  grid-column: 2;
  font-size: clamp(34px, 4.8vw, 64px);
  letter-spacing:-.03em; line-height: 1; font-weight:600;
  margin:0; text-wrap:balance; color:#fff;
}
.s-head h2 em{ font-style:italic; color:var(--accent-2); font-weight:400;}
.s-head .side{
  color:var(--muted); font-size:13.5px; max-width: 34ch; line-height:1.5;
  text-align:right;
}

/* ===== MARQUEE TICKER ===== */
.ticker{
  overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:var(--bg-2);
  padding:22px 0;
}
.ticker-track{
  display:flex; gap:64px; width:max-content;
  animation: slide 40s linear infinite;
  font-family:'JetBrains Mono',monospace; font-size:14px; color:var(--fg-2);
  letter-spacing:.08em; text-transform:uppercase;
  align-items:center;
}
.ticker-track span{ display:inline-flex; align-items:center; gap:14px;}
.ticker-track .d{ width:6px; height:6px; border-radius:50%; background:var(--accent);}
@keyframes slide{ from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* ===== PROBLEM / PROMISE split ===== */
.split{
  display:grid; grid-template-columns:1fr 1fr; gap:0;
  border:1px solid var(--line); border-radius: var(--radius); overflow:hidden;
}
.split > div{ padding:48px 44px; }
.split .p-old{
  background:var(--bg-2);
  border-right:1px solid var(--line);
  position:relative;
}
.split .p-new{
  background: linear-gradient(180deg, rgba(59,107,255,.08), rgba(59,107,255,0) 60%), var(--surface);
  position:relative;
}
.split h3{
  font-size: 28px; letter-spacing:-.02em; font-weight:600; margin:14px 0 22px; line-height:1.1;
}
.split .p-old h3{ color:var(--muted);}
.split .p-new h3{ color:#fff;}
.split ul{ list-style:none; padding:0; margin:0; display:grid; gap:14px;}
.split li{
  display:grid; grid-template-columns: 24px 1fr; gap:14px; align-items:flex-start;
  font-size: 15px; line-height:1.45;
}
.split .p-old li{ color: var(--muted); text-decoration: line-through; text-decoration-color:var(--faint);}
.split .p-new li{ color:var(--fg-2);}
.split .ic{
  width:22px;height:22px; border-radius:50%;
  display:grid; place-items:center; margin-top:1px;
}
.split .p-old .ic{ background:rgba(255,255,255,.05); color:var(--faint);}
.split .p-new .ic{ background: rgba(59,107,255,.16); color:var(--accent-2);}
.split .tag{
  font-family:'JetBrains Mono',monospace; font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted);
}
.split .p-new .tag{ color:var(--accent-2);}

/* ===== HOW IT WORKS — 5 phases ===== */
.phases{
  display:grid; grid-template-columns: repeat(5,1fr); gap:0;
  border-top:1px solid var(--line);
}
.phase{
  position:relative;
  padding: 40px 24px 36px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  transition: background .3s;
  cursor:default;
}
.phase:last-child{ border-right:none;}
.phase::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:2px;
  background:var(--accent); transform: scaleY(0); transform-origin: top;
  transition: transform .4s ease;
}
.phase:hover::before{ transform: scaleY(1); }
.phase:hover{ background: rgba(59,107,255,.04);}
.phase .n{
  font-family:'JetBrains Mono',monospace; font-size:13px; color:var(--muted); letter-spacing:.14em;
}
.phase h4{
  font-size: 22px; letter-spacing:-.02em; font-weight:600; margin:22px 0 8px; color:#fff; line-height:1.12;
}
.phase p{ color:var(--muted); font-size:13.5px; margin:0; line-height:1.5;}
.phase .ic{
  margin: 28px 0 0; color:var(--accent-2); opacity:.9;
}

/* ===== 3 BIDS ===== */
.bids{ display:grid; grid-template-columns: repeat(3,1fr); gap:14px;}
.bid{
  background:var(--bg-2); border:1px solid var(--line); border-radius: var(--radius);
  padding:28px; transition: transform .3s, border-color .3s;
}
.bid:hover{ transform:translateY(-3px); border-color:var(--line-2);}
.bid.best{
  background: linear-gradient(180deg, rgba(59,107,255,.1), rgba(59,107,255,0) 50%), var(--surface);
  border-color: rgba(59,107,255,.45);
  box-shadow: 0 0 0 2px rgba(59,107,255,.15);
}
.bid-top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:12px;}
.bid-top b{ font-weight:600; font-size:14px;}
.bid-top .badge{
  font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:.12em;
  padding:4px 8px; border-radius:999px; background:var(--line); color:var(--fg-2); text-transform:uppercase;
}
.bid.best .badge{ background:var(--accent); color:#fff;}
.bid .price{ font-size:34px; font-weight:700; letter-spacing:-.025em; color:#fff; margin-bottom:6px; font-feature-settings:"tnum";}
.bid .meta{ color:var(--muted); font-size:12.5px; margin-bottom:18px; font-family:'JetBrains Mono',monospace;}
.bid ul{ list-style:none; padding:0; margin:0; display:grid; gap:7px;}
.bid li{ font-size:13px; color:var(--fg-2); display:flex; align-items:center; gap:8px;}
.bid li::before{ content:""; width:5px;height:5px; border-radius:50%; background:var(--accent);}
.bid-bar{
  margin-top:18px; height:6px; border-radius:3px; background:var(--line); overflow:hidden;
  display:flex; gap:2px;
}
.bid-bar i{ display:block; height:100%; background:var(--line-2); border-radius:2px;}
.bid.best .bid-bar i{ background: var(--accent); }

/* ===== DEMO 3D (video or iframe) ===== */
.demo-wrap{
  position:relative; border:1px solid var(--line); border-radius: 22px; overflow:hidden;
  background:#06080E;
  box-shadow: 0 40px 100px rgba(0,0,0,.5);
}
.demo-wrap video{
  display:block; width:100%; height:auto;
  aspect-ratio: 16/8.5; object-fit:cover;
}
.demo-over{
  position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(circle at 50% 100%, rgba(5,5,6,.7), transparent 60%);
}
.demo-chip{
  position:absolute; pointer-events:none;
  background: rgba(5,6,10,.66); backdrop-filter: blur(10px);
  border: 1px solid rgba(127,165,255,.28);
  color:#E9EDF7; padding:10px 13px; border-radius:10px;
  font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.04em;
}
.demo-chip b{ display:block; color:var(--accent-2); font-size:9.5px; font-weight:500; text-transform:uppercase; letter-spacing:.14em; margin-bottom:3px;}
.demo-chip.a{ top:20px; left:20px;}
.demo-chip.b{ top:20px; right:20px;}
.demo-chip.c{ bottom:20px; left:20px;}
.demo-chip.d{ bottom:20px; right:20px;}
.demo-caption{
  margin-top:28px; display:grid; grid-template-columns: 1fr auto; gap:20px; align-items:end;
}
.demo-caption h3{ font-size:clamp(22px, 2.6vw, 32px); margin:0; font-weight:500; color:var(--fg); letter-spacing:-.015em; line-height:1.15; text-wrap:balance;}
.demo-caption h3 em{ font-style:italic; color:var(--accent-2);}
.demo-caption .mono{ color:var(--muted); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase;}

/* ===== SERVICES — horizontal scroll ===== */
.svcs{
  display:grid; grid-template-columns: repeat(3, 1fr); gap:14px;
}
.svc{
  position:relative; overflow:hidden;
  background:var(--bg-2); border:1px solid var(--line);
  border-radius: var(--radius);
  padding: 30px 28px; min-height:240px;
  display:flex; flex-direction:column; justify-content:space-between;
  transition: border-color .3s, transform .3s, background .3s;
  cursor:pointer;
}
.svc::after{
  content:""; position:absolute; right:-60px; bottom:-60px; width:200px; height:200px;
  border-radius:50%; background: radial-gradient(closest-side, rgba(59,107,255,.18), transparent 70%);
  opacity:0; transition: opacity .35s;
}
.svc:hover{ transform:translateY(-3px); border-color: rgba(59,107,255,.4);}
.svc:hover::after{ opacity:1;}
.svc-media{
  display:block; margin:-30px -28px 22px;
  aspect-ratio: 16 / 10; overflow:hidden;
  background:var(--bg); border-bottom:1px solid var(--line);
}
.svc-media img{
  display:block; width:100%; height:100%; object-fit:cover;
  filter: saturate(.9) brightness(.92);
  transition: transform .5s ease, filter .3s;
}
.svc:hover .svc-media img{ transform:scale(1.03); filter: saturate(1) brightness(1);}
.svc-top{ display:flex; justify-content:space-between; align-items:flex-start;}
.svc-n{ font-family:'JetBrains Mono',monospace; font-size:11.5px; color:var(--muted); letter-spacing:.14em;}
.svc-ic{ color:var(--accent-2);}
.svc h4{ font-size: 24px; font-weight:600; letter-spacing:-.02em; margin:28px 0 8px; color:#fff;}
.svc p{ color:var(--muted); font-size:14px; margin:0;}
.svc-arr{
  align-self:flex-end;
  width:36px; height:36px; border-radius:999px; border:1px solid var(--line-2);
  display:grid; place-items:center; color:#fff;
  transition: background .25s, border-color .25s, transform .25s;
}
.svc:hover .svc-arr{ background:var(--accent); border-color:var(--accent); transform:translateX(3px);}

/* ===== ASSUREURS (light inversion) ===== */
.assureurs{
  background:#F4F4F6; color:#0B0B0D;
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.assureurs .s-head{ border-bottom:1px solid #E3E3E7;}
.assureurs .s-head .num{ color:#6B6B74;}
.assureurs .s-head h2{ color:#0B0B0D;}
.assureurs .s-head h2 em{ color:var(--accent);}
.assureurs .s-head .side{ color:#6B6B74;}
.ass-grid{ display:grid; grid-template-columns: 1.05fr 1fr; gap: 64px; align-items:center;}
.ass-list{ list-style:none; padding:0; margin:0; display:grid; gap:0;}
.ass-list li{
  display:grid; grid-template-columns: auto 1fr auto; gap:18px;
  align-items:center;
  padding:22px 4px; border-top:1px solid #E3E3E7;
  font-size:15px;
}
.ass-list li:last-child{ border-bottom:1px solid #E3E3E7;}
.ass-list b{ font-weight:600; color:#0B0B0D;}
.ass-list span{ display:block; color:#6B6B74; font-size:13px; margin-top:3px;}
.ass-list .num{
  font-family:'JetBrains Mono',monospace; font-size:11px; color:#9C9CA3; letter-spacing:.14em;
}
.ass-list .ck{
  width:28px;height:28px;border-radius:8px;
  background: var(--accent); color:#fff;
  display:grid; place-items:center;
}
.pdf-mock{
  position:relative; aspect-ratio: 3/4;
  background:#fff; border:1px solid #E3E3E7; border-radius:16px;
  overflow:hidden;
  box-shadow: 0 30px 60px rgba(0,0,0,.15), 0 0 0 1px rgba(59,107,255,.06);
}
.pdf-head{
  padding:16px 20px; border-bottom:1px solid #EEEEF1;
  display:flex; justify-content:space-between; align-items:center;
  font-family:'JetBrains Mono',monospace; font-size:10.5px; color:#6B6B74; letter-spacing:.1em;
}
.pdf-head b{ color:#0B0B0D;}
.pdf-body{ padding:24px 22px; display:grid; gap:16px;}
.pdf-title{ font-size: 20px; font-weight:600; letter-spacing:-.015em; color:#0B0B0D;}
.pdf-kv{ display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.pdf-kv .cell{ border:1px solid #EEEEF1; border-radius:10px; padding:10px 12px;}
.pdf-kv .k{ font-family:'JetBrains Mono',monospace; font-size:10px; color:#8A8A92; text-transform:uppercase; letter-spacing:.1em;}
.pdf-kv .v{ font-size:13.5px; color:#0B0B0D; margin-top:2px;}
.pdf-row{ display:flex; justify-content:space-between; font-size:13px; padding:10px 0; border-top:1px dashed #EEEEF1; color:#4A4A52;}
.pdf-row b{ color:#0B0B0D; font-weight:500;}
.pdf-total{ font-size:15px; color:#0B0B0D !important; border-top:1px solid #E3E3E7 !important; padding-top:14px !important;}
.pdf-chart{
  height:88px; border-radius:10px; border:1px solid #EEEEF1; position:relative; overflow:hidden;
  background: linear-gradient(180deg, rgba(59,107,255,.08), rgba(59,107,255,0) 70%);
}
.pdf-stamp{
  position:absolute; right:-14px; top:44%;
  transform:rotate(-8deg);
  border:2px solid var(--accent); color:var(--accent);
  padding:7px 12px; border-radius:6px;
  font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.16em; font-weight:700;
  background: rgba(59,107,255,.06);
}
.pdf-foot{
  padding:12px 20px; border-top:1px solid #EEEEF1;
  display:flex; justify-content:space-between;
  font-family:'JetBrains Mono',monospace; font-size:10.5px; color:#8A8A92;
}

/* ===== $399 CAPTURE ===== */
.capture{
  display:grid; grid-template-columns: 1fr 1fr; gap:0;
  border:1px solid var(--line); border-radius: 22px; overflow:hidden;
  background:var(--bg-2);
}
.cap-l{
  padding:48px 44px; position:relative;
  background:
    radial-gradient(800px 380px at -10% -10%, rgba(59,107,255,.14), transparent 60%),
    linear-gradient(180deg, var(--surface), var(--bg-2));
  border-right:1px solid var(--line);
}
.cap-r{ padding:48px 44px; background:var(--bg-2);}
.price-card{
  display:inline-flex; align-items:baseline; gap:10px;
  padding:10px 16px; border-radius:10px;
  background: rgba(59,107,255,.1); border:1px solid rgba(59,107,255,.3);
  font-family:'JetBrains Mono',monospace;
}
.price-card .p{ font-size:30px; font-weight:700; letter-spacing:-.02em; color:#fff;}
.price-card .u{ color:var(--accent-2); font-size:12.5px; letter-spacing:.06em;}
.cap-l h3{
  font-size: clamp(28px, 3vw, 40px); font-weight:600; line-height:1.08;
  letter-spacing:-.025em; margin:22px 0 12px; color:#fff; text-wrap:balance;
}
.cap-l h3 em{ font-style:italic; color:var(--accent-2);}
.cap-l > p.lead{ color:var(--muted); font-size:15.5px; max-width: 48ch; margin:0 0 28px;}
.adv{
  list-style:none; padding:0; margin:0; display:grid; gap:0;
}
.adv li{
  display:grid; grid-template-columns: 28px 1fr; gap:14px; align-items:flex-start;
  padding:14px 0; border-top:1px solid var(--line);
  font-size: 14px; color:var(--fg-2); line-height:1.45;
}
.adv li:last-child{ border-bottom:1px solid var(--line);}
.adv li .ck{
  width:22px;height:22px; border-radius:6px;
  background: rgba(59,107,255,.16); color:var(--accent-2);
  display:grid; place-items:center; margin-top:1px;
}
.adv li b{ color:#fff; font-weight:600;}
.guarantee{
  margin-top:26px; padding:14px 16px; border-radius:10px;
  background: rgba(90,230,167,.06); border:1px solid rgba(90,230,167,.2);
  font-size:13px; color:#B4E8CF; display:flex; gap:10px; align-items:center;
}

.cap-r h4{ font-size: 20px; font-weight:600; margin:0 0 6px; color:#fff;}
.cap-r .sub{ color:var(--muted); font-size:13.5px; margin:0 0 24px;}
.form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px;}
.fld{ display:flex; flex-direction:column; gap:6px;}
.fld.full{ grid-column: 1 / -1; }
.fld label{ font-family:'JetBrains Mono',monospace; font-size:10px; color:var(--muted); text-transform:uppercase; letter-spacing:.14em;}
.fld input, .fld select, .fld textarea{
  background:var(--surface); border:1px solid var(--line); color:var(--fg);
  border-radius:10px; padding:12px 14px; font:inherit; font-size:14px;
  outline:none; transition:border-color .2s, box-shadow .2s;
}
.fld input::placeholder, .fld textarea::placeholder{ color:var(--faint);}
.fld input:focus, .fld select:focus, .fld textarea:focus{
  border-color:var(--accent); box-shadow:0 0 0 4px rgba(59,107,255,.15);
}
.fld textarea{ min-height: 86px; resize:vertical;}
.fld .req{ color:#ff6b6b; margin-left:3px; font-style:normal;}
.fld.error input, .fld.error select, .fld.error textarea{
  border-color:#ff4d4d; box-shadow:0 0 0 3px rgba(255,77,77,.15);
}
.fld.error > label{ color:#ff4d4d;}
.fld .err-msg{ display:none; font-size:11px; color:#ff4d4d; margin-top:2px;}
.fld.error .err-msg{ display:block;}
.fld-kind.error .rdrow{ outline:1.5px solid #ff4d4d; border-radius:10px; padding:6px;}
.rdrow{ display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.rd{
  position:relative; display:flex; gap:8px; align-items:center;
  padding:11px 12px; border-radius:10px;
  border:1px solid var(--line); background:var(--surface);
  font-size:13.5px; cursor:pointer;
  transition: border-color .2s, background .2s;
}
.rd input{ position:absolute; opacity:0; pointer-events:none;}
.rd .dt{ width:14px; height:14px; border-radius:50%; border:1.5px solid var(--faint); position:relative; flex-shrink:0;}
.rd input:checked ~ .dt{ border-color:var(--accent);}
.rd input:checked ~ .dt::after{ content:""; position:absolute; inset:2.5px; background:var(--accent); border-radius:50%;}
.rd:has(input:checked){ background: rgba(59,107,255,.08); border-color: rgba(59,107,255,.4);}
.sub-row{ margin-top:20px; display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap;}
.consent{ color:var(--muted); font-size:11.5px; max-width:40ch; line-height:1.5;}
.success{
  display:none; margin-top:18px; padding:18px;
  border:1px solid rgba(90,230,167,.25); background:rgba(90,230,167,.07);
  border-radius:12px; color:#B4E8CF;
}
.success.on{ display:block;}
.success h5{ margin:0 0 4px; color:#E4F8EE; font-size:15px;}
.success p{ margin:0; font-size:13px;}

/* ===== TESTIMONIALS ===== */
.testis{ display:grid; grid-template-columns:1fr 1fr; gap:14px;}
.testi{
  background:var(--bg-2); border:1px solid var(--line); border-radius:var(--radius);
  padding:32px;
}
.testi q{
  display:block; font-size: 20px; line-height:1.45; letter-spacing:-.015em;
  margin:0 0 20px; color:var(--fg); text-wrap:pretty; font-weight:400;
}
.testi q::before, .testi q::after{ content:"";}
.testi-by{ display:flex; align-items:center; gap:12px;}
.avatar{
  width:38px;height:38px; border-radius:50%; background:var(--line);
  display:grid; place-items:center; font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--accent-2);
  border:1px solid var(--line-2);
}
.testi-by b{ font-size:14px; font-weight:600;}
.testi-by span{ display:block; color:var(--muted); font-size:12.5px;}

/* ===== CERTS ===== */
.certs{
  display:grid; grid-template-columns: repeat(4,1fr); gap:0;
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.cert{
  padding: 32px 24px; text-align:center;
  border-right:1px solid var(--line);
  color:var(--faint);
  display:flex; flex-direction:column; gap:4px; align-items:center; justify-content:center;
  transition: color .25s, background .25s;
  font-family:'JetBrains Mono',monospace;
}
.cert:last-child{ border-right:none;}
.cert:hover{ color:var(--accent-2); background:var(--bg-2);}
.cert b{ font-size:18px; letter-spacing:.06em; color:var(--fg);}
.cert span{ font-size:10.5px; letter-spacing:.14em; text-transform:uppercase;}

/* ===== FINAL CTA ===== */
.final{
  padding: 140px 0;
  position:relative; overflow:hidden;
  background:
    radial-gradient(1000px 500px at 50% 100%, rgba(59,107,255,.25), transparent 60%),
    radial-gradient(600px 400px at 50% 0%, rgba(59,107,255,.1), transparent 60%);
  border-top:1px solid var(--line);
}
.final h2{
  text-align:center; font-size: clamp(44px, 7vw, 120px);
  letter-spacing:-.045em; line-height:.92; font-weight:600;
  margin:0 auto; max-width: 14ch; color:#fff; text-wrap:balance;
}
.final h2 em{ font-style:italic; color:var(--accent-2); font-weight:400;}
.final p{ text-align:center; color:var(--fg-2); font-size:18px; margin:28px auto 36px; max-width:48ch;}
.final .ctas{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap;}

/* ===== FOOTER ===== */
footer{
  border-top:1px solid var(--line); padding: 64px 0 32px;
}
.ft{
  display:grid; grid-template-columns: 1.4fr 1fr 1fr 1.3fr; gap:40px; margin-bottom:44px;
}
.ft p{ color:var(--muted); font-size:13.5px; max-width:34ch; margin:14px 0 0;}
.ft h6{
  margin:0 0 14px; font-family:'JetBrains Mono',monospace;
  font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted);
}
.ft ul{ list-style:none; padding:0; margin:0; display:grid; gap:8px;}
.ft a{ color:var(--fg-2); font-size:14px;}
.ft a:hover{ color:var(--accent-2);}
.news{
  display:flex; gap:6px; border:1px solid var(--line); border-radius:10px; padding:4px; background:var(--bg-2);
}
.news input{ flex:1; background:transparent; border:none; outline:none; color:var(--fg); padding:10px 12px; font:inherit; font-size:13.5px;}
.news button{ height:36px; padding:0 14px; border-radius:8px; border:none; background:#fff; color:#0B0B0D; font:inherit; font-size:13px; font-weight:500; cursor:pointer;}
.ft-bot{
  display:flex; justify-content:space-between; align-items:center; padding-top:22px; border-top:1px solid var(--line);
  color:var(--muted); font-size:12.5px; flex-wrap:wrap; gap:14px;
}
.lang{ display:flex; gap:2px; border:1px solid var(--line); border-radius:8px; padding:2px;}
.lang button{ border:none; background:transparent; padding:5px 10px; font:inherit; font-size:12px; color:var(--muted); cursor:pointer; border-radius:6px;}
.lang button.on{ background:#fff; color:#0B0B0D;}

/* ===== Tweaks panel ===== */
#tweaks{
  position:fixed; right:16px; bottom:16px; z-index:90;
  width:280px; padding:16px; border-radius:14px;
  background:rgba(16,16,19,.88); backdrop-filter: blur(12px);
  border:1px solid var(--line-2);
  display:none; font-size:13px; color:var(--fg);
}
#tweaks.on{ display:block;}
#tweaks h6{ margin:0 0 10px; font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); display:flex; justify-content:space-between; align-items:center;}
#tweaks .row{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:8px 0; border-top:1px solid var(--line); }
#tweaks .row:first-of-type{ border-top:none;}
#tweaks label{ font-size:12.5px; color:var(--fg-2);}
#tweaks .swatches{ display:flex; gap:6px;}
#tweaks .sw{
  width:22px; height:22px; border-radius:6px; border:1px solid var(--line-2); cursor:pointer;
}
#tweaks .sw.on{ outline:2px solid #fff; outline-offset:2px;}
#tweaks input, #tweaks select{
  background:var(--bg); border:1px solid var(--line-2); color:var(--fg); border-radius:6px;
  padding:5px 8px; font:inherit; font-size:12px;
}

/* ===== LEGAL PAGES ===== */
.legal{
  padding: 140px 0 80px;
}
.legal .wrap{ max-width: 860px; }
.legal h1{
  font-size: clamp(38px, 5.5vw, 72px);
  letter-spacing:-.035em; line-height:1; font-weight:600;
  margin: 0 0 48px; color:#fff; text-wrap:balance;
}
.legal h2{
  font-size: 22px; letter-spacing:-.015em; font-weight:600;
  margin: 56px 0 18px; color:#fff;
}
.legal h3{ font-size: 16px; font-weight:600; margin: 28px 0 10px; color:var(--fg);}
.legal p{ color:var(--fg-2); font-size:15px; line-height:1.65; margin: 0 0 14px;}
.legal ul{ padding-left:22px; margin: 0 0 14px; color:var(--fg-2); font-size:15px; line-height:1.65;}
.legal ul li{ margin-bottom:6px;}
.legal a{ color:var(--accent-2); text-decoration:underline; text-underline-offset:3px;}
.legal a:hover{ color:var(--accent);}
.legal .meta{
  color:var(--muted); font-family:'JetBrains Mono',monospace; font-size:11.5px;
  letter-spacing:.12em; text-transform:uppercase; margin-bottom:28px;
}
.legal hr{
  border:none; border-top:1px solid var(--line); margin: 56px 0 28px;
}
.legal .closing{
  color:var(--muted); font-size:13px;
}

/* ===== TOP LANG BAR ===== */
.topbar{
  position:fixed; top:0; left:0; right:0; z-index:70;
  background:rgba(5,5,6,.92);
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  border-bottom:1px solid var(--line);
  height:30px;
  display:flex; justify-content:flex-end; align-items:center;
  padding: 0 28px; gap:14px;
  font-family:'JetBrains Mono',monospace; font-size:11px;
  color:var(--muted); letter-spacing:.08em; text-transform:uppercase;
}
.topbar .lang{ display:flex; gap:2px; border:1px solid var(--line-2); border-radius:6px; padding:2px;}
.topbar .lang button{
  border:none; background:transparent; padding:3px 9px;
  font:inherit; font-size:10.5px; color:var(--muted);
  cursor:pointer; border-radius:4px;
  text-transform:uppercase; letter-spacing:.1em;
  transition: background .15s, color .15s;
}
.topbar .lang button:hover{ color:var(--fg);}
.topbar .lang button.on{ background:#fff; color:#0B0B0D;}

/* shift main nav down to make room for the topbar */
nav.top{ top:30px;}
.hero-inner{ padding-top: 150px;}

/* ===== PHONE CTA ===== */
.nav-phone{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'JetBrains Mono',monospace; font-size:12.5px; letter-spacing:.02em;
  color:var(--fg-2); padding:0 14px 0 4px;
  border-right:1px solid var(--line-2); margin-right:6px; height:28px;
  transition: color .2s;
}
.nav-phone svg{ color:var(--accent-2); transition: transform .2s;}
.nav-phone:hover{ color:#fff;}
.nav-phone:hover svg{ transform: rotate(-12deg);}
.btn-call{ background:transparent; color:#fff; border-color:var(--accent-2);}
.btn-call svg.ph{ color:var(--accent-2); transition: transform .2s;}
.btn-call:hover{ background:var(--accent); border-color:var(--accent); color:#fff;}
.btn-call:hover svg.ph{ color:#fff; transform: rotate(-12deg);}

.stickycall{
  position:fixed; left:0; right:0; bottom:0; z-index:55;
  background:rgba(5,5,6,.92);
  backdrop-filter: blur(16px) saturate(160%);
  -webkit-backdrop-filter: blur(16px) saturate(160%);
  border-top:1px solid var(--line);
  padding:12px 22px;
  transform: translateY(100%);
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  color:#fff;
}
.stickycall.on{ transform: translateY(0);}
body:has(.stickycall.on){ padding-bottom: 72px;}
.stickycall .msg{
  color:var(--fg-2); font-size:13.5px; letter-spacing:.01em;
  display:flex; align-items:center; gap:10px;
}
.stickycall .msg .pulse{
  width:8px; height:8px; border-radius:50%; background:var(--ok);
  box-shadow:0 0 0 0 rgba(90,230,167,.6);
  animation: pulsecall 2s ease-out infinite;
}
@keyframes pulsecall{
  0%{ box-shadow:0 0 0 0 rgba(90,230,167,.55);}
  100%{ box-shadow:0 0 0 14px rgba(90,230,167,0);}
}
.stickycall .msg b{ color:#fff; font-weight:600;}
.stickycall .btn-call{ height:44px; padding:0 20px; font-size:14px;}

/* ===== RESPONSIVE ===== */
@media (max-width: 1080px){
  .hero-main{ grid-template-columns:1fr; gap:32px;}
  .hero-side{ align-items:stretch;}
  .hud-card, .hud-row{ max-width:none;}
  .split, .ass-grid, .capture{ grid-template-columns:1fr;}
  .split .p-old, .cap-l{ border-right:none; border-bottom:1px solid var(--line);}
  .phases{ grid-template-columns: 1fr 1fr;}
  .phase:nth-child(2n){ border-right:none;}
  .bids, .svcs{ grid-template-columns:1fr 1fr;}
  .testis{ grid-template-columns:1fr;}
  .certs{ grid-template-columns:1fr 1fr;}
  .cert:nth-child(2){ border-right:none;}
  .ft{ grid-template-columns:1fr 1fr;}
}
@media (max-width: 720px){
  .nav-links{ display:none;}
  .nav-phone{ display:none;}
  .stickycall{ padding:10px 14px;}
  .stickycall .msg{ font-size:12px;}
  .stickycall .msg .hide-sm{ display:none;}
  .stickycall .btn-call{ height:40px; padding:0 14px; font-size:13px;}
  .s-head{ grid-template-columns:1fr; gap:14px;}
  .s-head h2{ grid-column:1;}
  .s-head .side{ text-align:left;}
  .bids, .svcs, .phases{ grid-template-columns:1fr;}
  .form-grid, .pdf-kv, .rdrow{ grid-template-columns:1fr;}
  section{ padding:80px 0;}
  .cap-l, .cap-r{ padding:32px 24px;}
  .ft{ grid-template-columns:1fr;}
}

/* ===== THEME TOGGLE BUTTON ===== */
.theme-toggle{
  display:inline-flex; align-items:center; justify-content:center;
  width:26px; height:22px; border-radius:5px;
  background:transparent; border:1px solid var(--line-2);
  color:var(--muted); cursor:pointer;
  transition: color .2s, border-color .2s, background .2s;
  margin-right:4px;
}
.theme-toggle:hover{ color:var(--fg); border-color:var(--fg);}
.theme-toggle svg{ width:12px; height:12px;}
.theme-toggle .sun{ display:none;}
body.theme-light .theme-toggle .moon{ display:none;}
body.theme-light .theme-toggle .sun{ display:block;}

/* ===== LIGHT THEME (warm paper / beige) ===== */
body.theme-light{
  --bg:#EFE8DA;
  --bg-2:#F5F0E4;
  --surface:#FAF6EC;
  --line:#E0D9C8;
  --line-2:#C9C1AE;
  --fg:#1E1A16;
  --fg-2:#3D3630;
  --muted:#7A7266;
  --faint:#B0A893;
  --accent:#2A54D8;
  --accent-2:#3B6BFF;
  --accent-ink:#1A3DA8;
  --ok:#2F7D58;
}
body.theme-light .topbar{
  background:rgba(239,232,218,.92);
  border-bottom:1px solid var(--line);
  color:var(--muted);
}
body.theme-light .topbar .lang{ border-color:var(--line-2);}
body.theme-light .topbar .lang button.on{ background:var(--fg); color:var(--bg);}
body.theme-light nav.top.scrolled{
  background:rgba(245,240,228,.78);
  border-bottom:1px solid var(--line);
}
body.theme-light .nav-links{
  background:rgba(250,246,236,.6); border-color:var(--line);
}
body.theme-light .nav-links a{ color:var(--fg-2);}
body.theme-light .nav-links a:hover{ background:var(--line); color:var(--fg);}
body.theme-light .nav-phone{ color:var(--fg-2); border-right-color:var(--line-2);}
body.theme-light .nav-phone:hover{ color:var(--fg);}

body.theme-light .btn-p{ background:#1E1A16; color:#FAF6EC;}
body.theme-light .btn-p:hover{ background:var(--accent); color:#fff;}
body.theme-light .btn-g{ color:var(--fg); border-color:var(--line-2);}
body.theme-light .btn-g:hover{ border-color:var(--fg); background:rgba(30,26,22,.04);}
body.theme-light .btn-call{ color:var(--fg); border-color:var(--accent);}
body.theme-light .btn-call:hover{ background:var(--accent); border-color:var(--accent); color:#fff;}
body.theme-light .btn-call svg.ph{ color:var(--accent);}

body.theme-light .hero .scrim{
  background:
    linear-gradient(180deg, rgba(239,232,218,.25) 0%, rgba(239,232,218,.05) 28%, rgba(239,232,218,.35) 72%, rgba(239,232,218,.96) 100%),
    linear-gradient(90deg, rgba(239,232,218,.72) 0%, rgba(239,232,218,.08) 60%, rgba(239,232,218,0) 100%);
}
body.theme-light .hero .vignette{
  background: radial-gradient(circle at 50% 55%, transparent 55%, rgba(239,232,218,.5) 100%);
}
body.theme-light .hero-title{ color:var(--fg);}
body.theme-light .hero-title .out{ -webkit-text-stroke:1px var(--fg); color:transparent;}
body.theme-light .hero-title .ital{ color:var(--accent);}
body.theme-light .hero-kicker{ color:var(--fg-2);}
body.theme-light .hero-top{ color:var(--fg-2);}
body.theme-light .hero-top .dot{ background:#2F7D58; box-shadow:0 0 10px #2F7D58;}
body.theme-light .hero-bottom{ border-top-color:rgba(30,26,22,.14); color:var(--muted);}
body.theme-light .hero-bottom .trust span{ color:var(--fg-2);}
body.theme-light .hud-card{
  background:rgba(250,246,236,.75);
  border-color: rgba(42,84,216,.28);
  color:var(--fg);
}
body.theme-light .hud-card b{ color:var(--fg);}
body.theme-light .hud-card span{ color:var(--muted);}
body.theme-light .hud-row .cell{
  background:rgba(250,246,236,.7); border-color:rgba(42,84,216,.22);
}
body.theme-light .hud-row .cell .v{ color:var(--fg);}
body.theme-light .sound-btn{
  background:rgba(250,246,236,.75); border-color:var(--line-2); color:var(--fg);
}

body.theme-light .ticker{ background:var(--bg-2);}
body.theme-light .ticker-track{ color:var(--fg-2);}

body.theme-light .s-head{ border-bottom-color:var(--line);}
body.theme-light .s-head h2{ color:var(--fg);}
body.theme-light .s-head h2 em{ color:var(--accent);}
body.theme-light .s-head .side{ color:var(--muted);}
body.theme-light .s-head .num{ color:var(--muted);}

body.theme-light .split{ border-color:var(--line);}
body.theme-light .split .p-old{ background:var(--bg-2); border-right-color:var(--line);}
body.theme-light .split .p-new{
  background: linear-gradient(180deg, rgba(42,84,216,.08), rgba(42,84,216,0) 60%), var(--surface);
}
body.theme-light .split .p-old h3{ color:var(--muted);}
body.theme-light .split .p-new h3{ color:var(--fg);}
body.theme-light .split .p-old li{ color:var(--muted);}
body.theme-light .split .p-new li{ color:var(--fg-2);}
body.theme-light .split .p-old .ic{ background:rgba(30,26,22,.06); color:var(--faint);}
body.theme-light .split .p-new .ic{ background:rgba(42,84,216,.14); color:var(--accent);}
body.theme-light .split .tag{ color:var(--muted);}
body.theme-light .split .p-new .tag{ color:var(--accent);}

body.theme-light .phases{ border-top-color:var(--line);}
body.theme-light .phase{ border-right-color:var(--line); border-bottom-color:var(--line);}
body.theme-light .phase:hover{ background:rgba(42,84,216,.05);}
body.theme-light .phase .n{ color:var(--muted);}
body.theme-light .phase h4{ color:var(--fg);}
body.theme-light .phase p{ color:var(--muted);}
body.theme-light .phase .ic{ color:var(--accent);}

body.theme-light .bid{ background:var(--bg-2); border-color:var(--line);}
body.theme-light .bid.best{
  background: linear-gradient(180deg, rgba(42,84,216,.12), rgba(42,84,216,0) 50%), var(--surface);
  border-color: rgba(42,84,216,.45);
  box-shadow: 0 0 0 2px rgba(42,84,216,.12);
}
body.theme-light .bid-top b{ color:var(--fg);}
body.theme-light .bid-top .badge{ background:var(--line); color:var(--fg-2);}
body.theme-light .bid.best .badge{ background:var(--accent); color:#fff;}
body.theme-light .bid .price{ color:var(--fg);}
body.theme-light .bid .meta{ color:var(--muted);}
body.theme-light .bid li{ color:var(--fg-2);}
body.theme-light .bid-bar{ background:var(--line);}

body.theme-light .demo-wrap{ background:#06080E; border-color:var(--line);}
body.theme-light .demo-caption h3{ color:var(--fg);}
body.theme-light .demo-caption h3 em{ color:var(--accent);}
body.theme-light .demo-caption .mono{ color:var(--muted);}

body.theme-light .svc{ background:var(--bg-2); border-color:var(--line);}
body.theme-light .svc:hover{ border-color:rgba(42,84,216,.45);}
body.theme-light .svc-media{ background:var(--bg); border-bottom-color:var(--line);}
body.theme-light .svc h4{ color:var(--fg);}
body.theme-light .svc p{ color:var(--muted);}
body.theme-light .svc-n{ color:var(--muted);}
body.theme-light .svc-ic{ color:var(--accent);}
body.theme-light .svc-arr{ border-color:var(--line-2); color:var(--fg);}
body.theme-light .svc:hover .svc-arr{ background:var(--accent); border-color:var(--accent); color:#fff;}

/* Insurers section — in light mode, invert to DARK for visual rhythm */
body.theme-light .assureurs{
  background:#14110F; color:#F5F0E4;
  border-color:#14110F;
}
body.theme-light .assureurs .s-head{ border-bottom-color:#3D3630;}
body.theme-light .assureurs .s-head .num{ color:#A69D8E;}
body.theme-light .assureurs .s-head h2{ color:#F5F0E4;}
body.theme-light .assureurs .s-head h2 em{ color:var(--accent-2);}
body.theme-light .assureurs .s-head .side{ color:#A69D8E;}
body.theme-light .ass-list li{ border-top-color:#3D3630;}
body.theme-light .ass-list li:last-child{ border-bottom-color:#3D3630;}
body.theme-light .ass-list b{ color:#F5F0E4;}
body.theme-light .ass-list span{ color:#A69D8E;}
body.theme-light .ass-list .num{ color:#8B8478;}
body.theme-light .ass-list .ck{ background:var(--accent-2); color:#fff;}

body.theme-light .capture{ background:var(--bg-2); border-color:var(--line);}
body.theme-light .cap-l{
  background:
    radial-gradient(800px 380px at -10% -10%, rgba(42,84,216,.10), transparent 60%),
    linear-gradient(180deg, var(--surface), var(--bg-2));
  border-right-color:var(--line);
}
body.theme-light .cap-r{ background:var(--bg-2);}
body.theme-light .price-card{ background:rgba(42,84,216,.08); border-color:rgba(42,84,216,.3);}
body.theme-light .price-card .p{ color:var(--fg);}
body.theme-light .price-card .u{ color:var(--accent);}
body.theme-light .cap-l h3{ color:var(--fg);}
body.theme-light .cap-l h3 em{ color:var(--accent);}
body.theme-light .cap-l > p.lead{ color:var(--muted);}
body.theme-light .adv li{ border-top-color:var(--line); color:var(--fg-2);}
body.theme-light .adv li:last-child{ border-bottom-color:var(--line);}
body.theme-light .adv li b{ color:var(--fg);}
body.theme-light .adv li .ck{ background:rgba(42,84,216,.14); color:var(--accent);}
body.theme-light .cap-r h4{ color:var(--fg);}
body.theme-light .cap-r .sub{ color:var(--muted);}
body.theme-light .fld label{ color:var(--muted);}
body.theme-light .fld input, body.theme-light .fld select, body.theme-light .fld textarea{
  background:#fff; border-color:var(--line); color:var(--fg);
}
body.theme-light .fld input::placeholder, body.theme-light .fld textarea::placeholder{ color:var(--faint);}
body.theme-light .rd{ background:#fff; border-color:var(--line); color:var(--fg-2);}
body.theme-light .rd:has(input:checked){ background:rgba(42,84,216,.08); border-color:rgba(42,84,216,.4);}
body.theme-light .consent{ color:var(--muted);}
body.theme-light .guarantee{
  background:rgba(47,125,88,.08); border-color:rgba(47,125,88,.28); color:#1E4E34;
}

body.theme-light .testi{ background:var(--bg-2); border-color:var(--line);}
body.theme-light .testi q{ color:var(--fg);}
body.theme-light .testi-by b{ color:var(--fg);}
body.theme-light .testi-by span{ color:var(--muted);}
body.theme-light .avatar{ background:var(--line); color:var(--accent); border-color:var(--line-2);}

body.theme-light .certs{ border-top-color:var(--line); border-bottom-color:var(--line);}
body.theme-light .cert{ border-right-color:var(--line); color:var(--faint);}
body.theme-light .cert:hover{ color:var(--accent); background:var(--bg-2);}
body.theme-light .cert b{ color:var(--fg);}

body.theme-light .final{
  background:
    radial-gradient(1000px 500px at 50% 100%, rgba(42,84,216,.18), transparent 60%),
    radial-gradient(600px 400px at 50% 0%, rgba(42,84,216,.08), transparent 60%);
  border-top-color:var(--line);
}
body.theme-light .final h2{ color:var(--fg);}
body.theme-light .final h2 em{ color:var(--accent);}
body.theme-light .final p{ color:var(--fg-2);}

body.theme-light footer{ border-top-color:var(--line);}
body.theme-light .ft p{ color:var(--muted);}
body.theme-light .ft h6{ color:var(--muted);}
body.theme-light .ft a{ color:var(--fg-2);}
body.theme-light .ft a:hover{ color:var(--accent);}
body.theme-light .ft-bot{ border-top-color:var(--line); color:var(--muted);}
body.theme-light .lang{ border-color:var(--line-2);}
body.theme-light .lang button{ color:var(--muted);}
body.theme-light .lang button.on{ background:var(--fg); color:var(--bg);}

body.theme-light .stickycall{
  background:rgba(239,232,218,.94); border-top:1px solid var(--line);
}
body.theme-light .stickycall .msg{ color:var(--fg-2);}
body.theme-light .stickycall .msg b{ color:var(--fg);}
body.theme-light .stickycall .msg .pulse{ background:var(--ok); box-shadow:0 0 0 0 rgba(47,125,88,.5);}

body.theme-light .legal h1, body.theme-light .legal h2, body.theme-light .legal h3{ color:var(--fg);}
body.theme-light .legal p, body.theme-light .legal ul{ color:var(--fg-2);}
body.theme-light .legal a{ color:var(--accent);}
body.theme-light .legal .meta{ color:var(--muted);}
body.theme-light .legal hr{ border-top-color:var(--line);}
body.theme-light .legal .closing{ color:var(--muted);}
