/* ============================================================
   First Class Agency — Sniper Marketing
   Premium dark tech-marketing agency. v2 (full redesign)
   ============================================================ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}

:root{
  --bg:#000000;
  --bg-2:#0C0C0E;
  --panel:rgba(255,255,255,.045);
  --panel-2:rgba(255,255,255,.08);
  --cyan:#E8E8ED;
  --violet:#C7C7CC;
  --magenta:#8A8A90;
  --grad:linear-gradient(115deg,#FFFFFF 0%,#D2D2D7 52%,#86868B 100%);
  --grad-soft:linear-gradient(115deg,rgba(255,255,255,.1),rgba(210,210,215,.07) 50%,rgba(138,138,144,.05));
  --ink:#F5F5F7;
  --ink-2:#A1A1A6;
  --ink-3:#6E6E73;
  --line:rgba(255,255,255,.11);
  --line-2:rgba(255,255,255,.055);
  --glow-c:rgba(255,255,255,.3);
  --glow-v:rgba(210,210,215,.26);
  --glow-m:rgba(255,255,255,.2);
  --display:'Space Grotesk','Inter',sans-serif;
  --body:'Inter',system-ui,sans-serif;
}
html{scroll-behavior:smooth;}
body{background:var(--bg); color:var(--ink); font-family:var(--body); font-weight:300; line-height:1.7; overflow-x:hidden; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;}
a{text-decoration:none; color:inherit;} img{max-width:100%; display:block;}
::selection{background:var(--cyan); color:#04040A;}
.wrap{max-width:1240px; margin:0 auto; padding:0 40px;}
.gtext{background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent;}
.eyebrow{display:inline-flex; align-items:center; gap:10px; font-size:.72rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-2);}
.eyebrow::before{content:''; width:7px; height:7px; border-radius:50%; background:var(--grad); box-shadow:0 0 12px 1px var(--glow-v);}

/* ---------- AURORA background ---------- */
.aurora{position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none;}
.aurora b{position:absolute; display:block; border-radius:50%; filter:blur(100px); opacity:.26; mix-blend-mode:screen;}
.aurora .a1{width:62vw; height:62vw; background:#5A5A62; left:-16%; top:-22%; animation:au1 26s ease-in-out infinite;}
.aurora .a2{width:54vw; height:54vw; background:#3E3E44; right:-14%; top:-10%; animation:au2 30s ease-in-out infinite;}
.aurora .a3{width:52vw; height:52vw; background:#6A6A72; left:24%; top:46%; animation:au3 34s ease-in-out infinite;}
.aurora .grain{position:absolute; inset:0; background:radial-gradient(140% 100% at 50% 0%, transparent 40%, var(--bg) 92%);}
@keyframes au1{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(12vw,8vh) scale(1.12);}}
@keyframes au2{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-10vw,12vh) scale(1.08);}}
@keyframes au3{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(8vw,-10vh) scale(1.15);}}
@media (prefers-reduced-motion:reduce){.aurora b{animation:none;}}
body>*:not(.aurora):not(header){position:relative; z-index:1;}

/* ---------- HEADER ---------- */
header{position:fixed; top:0; left:0; right:0; z-index:100; padding:20px 0; background:rgba(6,6,16,.5); -webkit-backdrop-filter:saturate(150%) blur(18px); backdrop-filter:saturate(150%) blur(18px); border-bottom:1px solid var(--line-2); transition:padding .35s, background .35s;}
header.scrolled{padding:13px 0; background:rgba(6,6,16,.85);}
.nav-inner{display:flex; align-items:center; justify-content:space-between; gap:30px;}
.brand{display:flex; align-items:center; gap:12px; font-family:var(--display); font-weight:700; font-size:1rem; letter-spacing:.02em; color:#fff;}
.brand .mark{width:32px; height:32px; border-radius:10px; background:var(--grad); display:grid; place-items:center; box-shadow:0 0 22px -3px var(--glow-v);}
.brand .mark span{width:11px; height:11px; border-radius:3px; background:#06060f;}
.brand small{display:block; font-family:var(--body); font-weight:400; font-size:.58rem; letter-spacing:.26em; text-transform:uppercase; color:var(--ink-3); margin-top:2px;}
.nav-links{display:flex; align-items:center; gap:34px;}
.nav-links a{font-size:.84rem; color:var(--ink-2); transition:color .25s; position:relative;}
.nav-links a::after{content:''; position:absolute; left:0; bottom:-7px; height:2px; width:0; background:var(--grad); border-radius:2px; transition:width .3s;}
.nav-links a:hover{color:#fff;} .nav-links a:hover::after,.nav-links a.active::after{width:100%;} .nav-links a.active{color:#fff;}
.nav-toggle{display:none; width:30px; height:20px; background:none; border:0; position:relative; cursor:pointer;}
.nav-toggle span{position:absolute; left:0; right:0; height:2px; background:#fff; border-radius:2px; transition:.3s;}
.nav-toggle span:nth-child(1){top:0;} .nav-toggle span:nth-child(2){top:9px;} .nav-toggle span:nth-child(3){top:18px;}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex; align-items:center; gap:10px; font-weight:600; font-size:.84rem; letter-spacing:.01em; padding:15px 30px; border-radius:100px; cursor:pointer; border:0; -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); transition:transform .25s, box-shadow .25s, background .25s, border-color .25s;}
/* Transparent glass, luxe (overal op de site) */
.btn-grad{color:#fff; background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.045)); border:1px solid rgba(255,255,255,.22); box-shadow:inset 0 1px 0 rgba(255,255,255,.4), inset 0 -1px 1px rgba(0,0,0,.45), 0 14px 34px -14px rgba(0,0,0,.9);}
.btn-grad:hover{transform:translateY(-2px); border-color:rgba(255,255,255,.42); background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.07)); box-shadow:inset 0 1px 0 rgba(255,255,255,.55), inset 0 -1px 1px rgba(0,0,0,.5), 0 22px 46px -16px rgba(0,0,0,.95), 0 0 34px -10px rgba(255,255,255,.22);}
.btn-grad:active{transform:translateY(0); box-shadow:inset 0 2px 7px rgba(0,0,0,.5);}
.btn-ghost{color:var(--ink); background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.015)); border:1px solid rgba(255,255,255,.12); box-shadow:inset 0 1px 0 rgba(255,255,255,.12), inset 0 -1px 1px rgba(0,0,0,.4), 0 12px 28px -16px rgba(0,0,0,.85);}
.btn-ghost:hover{transform:translateY(-2px); color:#fff; border-color:rgba(255,255,255,.28); background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.03)); box-shadow:inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 1px rgba(0,0,0,.42), 0 18px 36px -16px rgba(0,0,0,.9);}
.btn-ghost:active{transform:translateY(0); box-shadow:inset 0 2px 7px rgba(0,0,0,.45);}
.btn .arr{transition:transform .25s;} .btn:hover .arr{transform:translateX(4px);}

/* ---------- HERO ---------- */
.hero{position:relative; min-height:100vh; display:flex; flex-direction:column; justify-content:center; padding:160px 0 80px; text-align:center;}
.hero #globe{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 34%; z-index:0; opacity:.85; pointer-events:none;}
.hero::after{content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:radial-gradient(125% 95% at 50% 46%, transparent 24%, rgba(0,0,0,.5) 78%, rgba(0,0,0,.8) 100%), linear-gradient(180deg, rgba(0,0,0,.5), transparent 26%, transparent 70%, rgba(0,0,0,.72));}
.hero .wrap{position:relative; z-index:2;}
.hero .pill{display:inline-flex; align-items:center; gap:10px; margin:0 auto 30px; padding:8px 16px 8px 10px; border-radius:100px; background:rgba(255,255,255,.04); border:1px solid var(--line); font-size:.74rem; color:var(--ink-2);}
.hero .pill b{font-weight:600; color:#fff; background:var(--grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.hero .pill .dot{width:8px; height:8px; border-radius:50%; background:var(--grad);}
.hero h1{font-family:var(--display); font-weight:700; font-size:clamp(3.4rem,9vw,8rem); line-height:.92; letter-spacing:-.03em; margin-bottom:24px;}
.hero h1 .l1{color:#fff; display:block;}
.hero h1 .l2{display:block;}
.hero .sub{font-family:var(--display); font-weight:500; font-size:clamp(1.3rem,2.6vw,2.1rem); color:var(--ink); letter-spacing:-.01em; margin-bottom:22px;}
.hero p.lead{font-size:1.08rem; color:var(--ink-2); max-width:600px; margin:0 auto 40px;}
.hero-actions{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
.hero-scroll{margin-top:70px; font-size:.68rem; letter-spacing:.24em; text-transform:uppercase; color:var(--ink-3); display:flex; flex-direction:column; align-items:center; gap:10px;}
.hero-scroll .ln{width:1px; height:40px; background:linear-gradient(var(--violet),transparent); animation:sc 2.4s ease infinite;}
@keyframes sc{0%,100%{opacity:.3; transform:scaleY(.6);}50%{opacity:1; transform:scaleY(1);}}

/* ---------- MARQUEE ---------- */
.marquee{border-top:1px solid var(--line-2); border-bottom:1px solid var(--line-2); padding:30px 0; overflow:hidden;}
.marquee .lab{text-align:center; font-size:.68rem; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-3); margin-bottom:22px;}
.mq-track{display:flex; gap:70px; align-items:center; width:max-content; animation:mq 26s linear infinite;}
.mq-track .logo{display:inline-flex; align-items:center; gap:12px; color:var(--ink-2); font-family:var(--display); font-weight:600; font-size:1.15rem; opacity:.85;}
.mq-track .logo svg{width:30px; height:30px;}
@keyframes mq{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- SECTION ---------- */
section{position:relative; padding:120px 0;}
section.tint{background:#17171B; border-top:1px solid var(--line-2); border-bottom:1px solid var(--line-2);}
.section-head{max-width:740px; margin:0 auto 70px; text-align:center;}
.section-head .eyebrow{margin-bottom:20px;}
.section-head h2{font-family:var(--display); font-weight:700; font-size:clamp(2.1rem,4.4vw,3.4rem); line-height:1.08; letter-spacing:-.02em; color:#fff; margin-bottom:18px;}
.section-head p{color:var(--ink-2); font-size:1.05rem;}
.panel{background:var(--panel); border:1px solid var(--line); border-radius:20px; -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); transition:transform .3s, border-color .3s, box-shadow .3s;}

/* ---------- PAGE HERO (sub-pages) ---------- */
.page-hero{position:relative; padding:102px 0 50px; text-align:center;}
.page-hero .eyebrow{margin-bottom:12px;}
.page-hero h1{font-family:var(--display); font-weight:700; font-size:clamp(2.3rem,5.4vw,4.2rem); line-height:1.02; letter-spacing:-.03em; color:#fff; margin-bottom:14px;}
.page-hero p{color:var(--ink-2); font-size:1.1rem; max-width:620px; margin:0 auto;}
.banner{position:relative; margin:30px auto 0; width:100%; max-width:1180px; height:min(calc(100dvh - 400px), 497px); border-radius:24px; overflow:hidden; border:1px solid var(--line); background:#000; box-shadow:0 50px 120px -50px rgba(0,0,0,.9);}
.banner img, .banner video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.banner::after{content:''; position:absolute; inset:0; background:radial-gradient(120% 80% at 50% 40%, transparent 40%, rgba(0,0,0,.45) 100%);}
@media (max-width:680px){ .banner{height:min(calc(100dvh - 330px), 300px);} .page-hero{padding:100px 0 32px;} }

/* ---------- SERVICES ---------- */
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.svc{padding:40px 34px; position:relative; overflow:hidden;}
.svc::before{content:''; position:absolute; inset:0; background:var(--grad-soft); opacity:0; transition:opacity .35s;}
.svc:hover{transform:translateY(-6px); border-color:rgba(255,255,255,.5); box-shadow:0 40px 70px -40px var(--glow-v);}
.svc:hover::before{opacity:1;}
.svc>*{position:relative;}
.svc .ico{width:54px; height:54px; border-radius:15px; display:grid; place-items:center; margin-bottom:24px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.3); color:var(--cyan); box-shadow:0 0 28px -8px var(--glow-c);}
.svc .ico svg{width:24px; height:24px;}
.svc .num{position:absolute; top:0; right:0; font-family:var(--display); font-weight:700; font-size:.82rem; color:var(--ink-3);}
.svc h3{font-family:var(--display); font-weight:600; font-size:1.22rem; color:#fff; margin-bottom:11px;}
.svc p{color:var(--ink-2); font-size:.93rem;}

/* ---------- SPLIT ---------- */
.split{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;}
.split .panel-vis{border-radius:22px; padding:44px; position:relative; overflow:hidden; min-height:420px; display:flex; flex-direction:column; justify-content:flex-end; background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.12) 55%,rgba(255,255,255,.1)); border:1px solid rgba(255,255,255,.35);}
.split .panel-vis .big{font-family:var(--display); font-weight:700; font-size:clamp(3rem,7vw,5rem); line-height:1; letter-spacing:-.03em;}
.split .panel-vis .cap{color:var(--ink-2); margin-top:10px; max-width:300px;}
.split h2{font-family:var(--display); font-weight:700; font-size:clamp(2rem,3.6vw,2.9rem); line-height:1.1; letter-spacing:-.02em; color:#fff; margin-bottom:18px;}
.split p{color:var(--ink-2); margin-bottom:22px; max-width:520px;}
.feat{list-style:none; display:grid; gap:14px; margin:24px 0 30px;}
.feat li{display:flex; gap:13px; align-items:flex-start; color:var(--ink); font-size:.97rem;}
.feat li i{flex-shrink:0; width:22px; height:22px; border-radius:7px; background:var(--grad); display:grid; place-items:center; margin-top:1px; box-shadow:0 0 14px -3px var(--glow-c);}
.feat li i::before{content:''; width:7px; height:7px; border-radius:2px; background:#06060f;}

/* ---------- STATS ---------- */
.stats{display:grid; grid-template-columns:repeat(4,1fr); gap:22px; text-align:center;}
.stats .st{padding:40px 20px;}
.stats .st .n{font-family:var(--display); font-weight:700; font-size:3rem; line-height:1; margin-bottom:8px;}
.stats .st .l{font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3);}

/* ---------- PRICING ---------- */
.price-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; align-items:stretch;}
.price{padding:42px 34px; display:flex; flex-direction:column; position:relative;}
.price .tier{font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-3); margin-bottom:14px;}
.price .amt{font-family:var(--display); font-weight:700; font-size:2.6rem; color:#fff; line-height:1;}
.price .amt small{font-family:var(--body); font-weight:400; font-size:.9rem; color:var(--ink-3);}
.price .desc{color:var(--ink-2); font-size:.9rem; margin:14px 0 24px; min-height:42px;}
.price ul{list-style:none; display:grid; gap:13px; margin-bottom:30px; flex:1;}
.price li{display:flex; gap:11px; align-items:flex-start; font-size:.9rem; color:var(--ink);}
.price li::before{content:'✦'; color:var(--cyan); flex-shrink:0;}
.price .btn{justify-content:center;}
.price.feat-card{background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.18) 55%,rgba(255,255,255,.14)); border:1px solid rgba(255,255,255,.55); box-shadow:0 40px 90px -40px var(--glow-v);}
.price .tag{position:absolute; top:18px; right:22px; font-size:.6rem; letter-spacing:.16em; text-transform:uppercase; color:#06060f; background:var(--grad); padding:5px 12px; border-radius:100px; font-weight:700;}

/* ---------- CTA band ---------- */
.cta{position:relative; border-radius:28px; padding:80px 50px; text-align:center; overflow:hidden; background:linear-gradient(140deg,rgba(255,255,255,.16),rgba(255,255,255,.2) 50%,rgba(255,255,255,.16)); border:1px solid rgba(255,255,255,.45);}
.cta h2{font-family:var(--display); font-weight:700; font-size:clamp(2.2rem,4.6vw,3.4rem); line-height:1.05; letter-spacing:-.02em; color:#fff; margin-bottom:18px;}
.cta p{color:var(--ink-2); max-width:520px; margin:0 auto 36px;}

/* ---------- CONTACT ---------- */
.contact-wrap{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start;}
.contact-info h2{font-family:var(--display); font-weight:700; font-size:clamp(2rem,3.6vw,2.8rem); line-height:1.08; color:#fff; margin-bottom:18px;}
.contact-info p{color:var(--ink-2); margin-bottom:26px; max-width:420px;}
.contact-info .row{display:flex; align-items:center; gap:14px; margin-bottom:16px; color:var(--ink);}
.contact-info .row i{width:42px; height:42px; border-radius:12px; background:rgba(255,255,255,.04); border:1px solid var(--line); display:grid; place-items:center; color:var(--cyan);}
.contact-info .row i svg{width:18px; height:18px;}
form.contact{padding:38px; display:grid; gap:16px;}
form.contact .fr{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
form.contact label{display:block; font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-3); margin-bottom:7px;}
form.contact input, form.contact textarea{width:100%; background:rgba(255,255,255,.03); border:1px solid var(--line); color:#fff; border-radius:12px; padding:13px 15px; font-family:inherit; font-size:.95rem; transition:border-color .2s, box-shadow .2s;}
form.contact input::placeholder, form.contact textarea::placeholder{color:var(--ink-3);}
form.contact input:focus, form.contact textarea:focus{outline:none; border-color:var(--cyan); box-shadow:0 0 0 3px rgba(255,255,255,.12);}
form.contact textarea{resize:vertical; min-height:120px;}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid var(--line); padding:72px 0 40px; background:rgba(4,4,11,.6);}
.ftr-grid{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:44px;}
.ftr-grid .about p{color:var(--ink-2); font-size:.92rem; max-width:300px; margin-top:16px;}
footer h4{font-size:.68rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-3); margin-bottom:16px;}
footer .col a, footer .col p{display:block; color:var(--ink-2); font-size:.88rem; line-height:2.1; transition:color .2s;}
footer .col a:hover{color:var(--cyan);}
.ftr-bottom{margin-top:54px; padding-top:24px; border-top:1px solid var(--line-2); display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:.74rem; color:var(--ink-3);}

/* ---------- reveal ---------- */
.reveal{opacity:0; transform:translateY(24px); transition:opacity .9s cubic-bezier(.22,.61,.36,1), transform .9s cubic-bezier(.22,.61,.36,1);}
.reveal.in{opacity:1; transform:translateY(0);}
.rs>*{opacity:0; transform:translateY(24px); transition:opacity .8s cubic-bezier(.22,.61,.36,1), transform .8s cubic-bezier(.22,.61,.36,1);}
.rs.in>*{opacity:1; transform:translateY(0);}
.rs.in>*:nth-child(2){transition-delay:90ms;} .rs.in>*:nth-child(3){transition-delay:180ms;}
.rs.in>*:nth-child(4){transition-delay:270ms;} .rs.in>*:nth-child(5){transition-delay:360ms;} .rs.in>*:nth-child(6){transition-delay:450ms;}
@media (prefers-reduced-motion:reduce){.reveal,.rs>*{opacity:1!important; transform:none!important;}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:980px){
  .grid-3,.price-grid{grid-template-columns:1fr; max-width:460px; margin:0 auto;}
  .split{grid-template-columns:1fr; gap:34px;}
  .stats{grid-template-columns:1fr 1fr;}
  .contact-wrap{grid-template-columns:1fr; gap:30px;}
  .ftr-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:680px){
  .wrap{padding:0 22px;}
  .nav-toggle{display:block; position:relative; z-index:120;}
  .nav-links{position:fixed; top:0; right:0; height:100vh; height:100dvh; width:min(80vw,320px); flex-direction:column; align-items:flex-start; justify-content:center; gap:28px; padding:40px; background:rgba(8,8,20,.97); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); transform:translateX(100%); transition:transform .4s cubic-bezier(.22,.61,.36,1); z-index:110; border-left:1px solid var(--line);}
  .nav-links.open{transform:translateX(0);}
  .nav-links a{font-size:1.05rem;}
  .nav-toggle.open span:nth-child(1){top:9px; transform:rotate(45deg);} .nav-toggle.open span:nth-child(2){opacity:0;} .nav-toggle.open span:nth-child(3){top:9px; transform:rotate(-45deg);}
  section{padding:84px 0;}
  .ftr-grid{grid-template-columns:1fr;}
  .cta{padding:54px 26px;}
}
.nav-backdrop{position:fixed; inset:0; z-index:105; background:rgba(4,4,10,.6); opacity:0; visibility:hidden; transition:opacity .35s, visibility .35s;}
.nav-backdrop.show{opacity:1; visibility:visible;}
@media (min-width:681px){.nav-backdrop{display:none;}}

/* ---------- LANGUAGE SWITCH ---------- */
.lang-switch{display:inline-flex; align-items:center; gap:2px; margin-left:auto; padding:3px; border:1px solid var(--line); border-radius:100px; background:rgba(255,255,255,.04);}
.lang-switch button{font-family:var(--body); font-size:.7rem; font-weight:600; letter-spacing:.04em; color:var(--ink-3); background:none; border:0; cursor:pointer; padding:5px 9px; border-radius:100px; line-height:1; transition:color .2s, background .2s;}
.lang-switch button:hover{color:var(--ink);}
.lang-switch button.on{background:var(--grad); color:#06060f;}
@media (max-width:680px){ .nav-inner>a.btn{display:none;} .lang-switch{margin-left:0;} .nav-inner{gap:14px;} }

/* ---------- HOME HERO (clean screen) ---------- */
.home-hero{position:relative; padding:120px 0 64px; text-align:center;}
.home-hero .pill{display:inline-flex; align-items:center; gap:10px; margin:0 auto 16px; padding:8px 16px 8px 10px; border-radius:100px; background:rgba(255,255,255,.04); border:1px solid var(--line); font-size:.74rem; color:var(--ink-2);}
.home-hero .pill b{font-weight:600; color:#fff; background:var(--grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.home-hero .pill .dot{width:8px; height:8px; border-radius:50%; background:var(--grad);}
.home-hero h1{font-family:var(--display); font-weight:700; font-size:clamp(3rem,7.4vw,6.4rem); line-height:.94; letter-spacing:-.03em; margin-bottom:18px;}
.home-hero h1 .l1{color:#fff; display:block;}
.home-hero h1 .l2{display:block;}
.home-hero .sub{font-family:var(--display); font-weight:500; font-size:clamp(1.2rem,2.4vw,1.9rem); color:var(--ink); letter-spacing:-.01em; margin-bottom:6px;}
.home-hero .lead{font-size:1.05rem; color:var(--ink-2); max-width:600px; margin:34px auto 0;}
.home-hero .lead{margin:26px auto 0;}
.home-hero .hero-actions{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:22px;}
.hh-screen{position:relative; margin:34px auto 0; width:100%; max-width:1180px; height:min(calc(100dvh - 250px), 497px); border-radius:24px; overflow:hidden; border:1px solid var(--line); background:#000; box-shadow:0 60px 130px -55px rgba(0,0,0,.95), inset 0 0 0 1px rgba(255,255,255,.05);}
.hh-screen #globe{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 40%;}
.hh-screen::after{content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(125% 100% at 50% 50%, transparent 50%, rgba(0,0,0,.5) 100%);}
@media (max-width:680px){ .home-hero{padding:100px 0 44px;} .hh-screen{width:100%; height:min(calc(100dvh - 280px), 360px); border-radius:16px; margin-top:18px;} .home-hero .hero-actions{margin-top:18px;} .home-hero .sub{margin-bottom:0;} }

/* ---------- SMALL-SCREEN POLISH ---------- */
@media (max-width:680px){
  header{padding:13px 0;}
  .nav-inner{flex-wrap:nowrap; gap:10px;}
  .brand{font-size:.92rem; gap:10px; min-width:0;}
  .brand .mark{width:28px; height:28px; flex:0 0 auto;}
  .brand small{font-size:.5rem; letter-spacing:.2em;}
}
@media (max-height:680px){
  .home-hero{padding:96px 0 24px;}
}

/* Grafiek-banner (Tarieven): hele grafiek tonen op mobiel */
/* Grafiek-banner: hele grafiek tonen (geen crop) op alle schermen */
.banner-chart{aspect-ratio:2688/1353; height:auto; max-height:none;}
.banner-chart img{object-fit:cover;}
.banner-chart::after{display:none;}

/* ---------- BRAND LOGO: sniper scope reticle ---------- */
.brand .mark{width:34px; height:34px; border-radius:0; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%2048%2048%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%3E%3Ccircle%20cx%3D%2724%27%20cy%3D%2724%27%20r%3D%2719%27/%3E%3Ccircle%20cx%3D%2724%27%20cy%3D%2724%27%20r%3D%2710%27%20stroke-width%3D%271.2%27%20opacity%3D%27.55%27/%3E%3Cpath%20d%3D%27M24%202%20V13%20M24%2035%20V46%20M2%2024%20H13%20M35%2024%20H46%27/%3E%3Ccircle%20cx%3D%2724%27%20cy%3D%2714.5%27%20r%3D%271.1%27%20fill%3D%27white%27%20stroke%3D%27none%27/%3E%3Ccircle%20cx%3D%2724%27%20cy%3D%2733.5%27%20r%3D%271.1%27%20fill%3D%27white%27%20stroke%3D%27none%27/%3E%3Ccircle%20cx%3D%2714.5%27%20cy%3D%2724%27%20r%3D%271.1%27%20fill%3D%27white%27%20stroke%3D%27none%27/%3E%3Ccircle%20cx%3D%2733.5%27%20cy%3D%2724%27%20r%3D%271.1%27%20fill%3D%27white%27%20stroke%3D%27none%27/%3E%3Ccircle%20cx%3D%2724%27%20cy%3D%2724%27%20r%3D%272%27%20fill%3D%27white%27%20stroke%3D%27none%27/%3E%3C/svg%3E") center/contain no-repeat; box-shadow:none; filter:drop-shadow(0 0 5px rgba(255,255,255,.30));}
.brand .mark span{display:none;}

/* ---------- INSIGHTS PAGE ---------- */
.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
@media (max-width:780px){ .grid-2{grid-template-columns:1fr;} }
.pad{padding:38px 34px;}
.pad .num{display:inline-block; font-family:var(--display); font-weight:700; font-size:1.55rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; margin-bottom:8px; letter-spacing:.03em;}
.pad h3{font-family:var(--display); font-weight:600; font-size:1.3rem; color:#fff; margin-bottom:12px;}
.pad p{color:var(--ink-2); font-size:.97rem;}
.note{text-align:center; max-width:780px; margin:34px auto 0; color:var(--ink-2); font-size:1.02rem;}
.gloss{display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:14px;}
.gl{padding:18px 22px; transition:border-color .3s, transform .3s;}
.gl:hover{border-color:rgba(255,255,255,.3); transform:translateY(-3px);}
.gl b{display:block; font-family:var(--display); font-weight:700; font-size:1rem; color:#fff; letter-spacing:.05em;}
.gl b::after{content:''; display:block; width:26px; height:2px; background:var(--grad); border-radius:2px; margin:7px 0 9px;}
.gl span{color:var(--ink-2); font-size:.9rem; line-height:1.5;}

/* ---------- LIGHT / STEEL ACCENT (construction) ---------- */
.banner-light{border-color:rgba(255,255,255,.16);}
.banner-light::after{display:none;}
.split .banner{height:auto; aspect-ratio:16/11; max-height:none; margin:0;}
@media (max-width:980px){ .split .banner{aspect-ratio:16/9;} }

/* ---------- STEEL-BLUE ACCENT (construction) ---------- */
:root{ --steel:#7FA1C2; --steel-soft:rgba(127,161,194,.7); --steel-grad:linear-gradient(115deg,#C4D6E8 0%,#88A8CA 52%,#536F8E 100%); }
.theme-steel .gtext{ background:var(--steel-grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.theme-steel .eyebrow{ color:#A6BEd6; }
.theme-steel .eyebrow::before{ background:var(--steel-grad); box-shadow:0 0 12px 1px var(--steel-soft); }
.theme-steel .svc .ico{ color:#AFC6DE; border-color:rgba(127,161,194,.45); box-shadow:0 0 28px -8px var(--steel-soft); }
.theme-steel .svc .num{ color:#7FA1C2; }
.theme-steel .feat li i{ background:var(--steel-grad); box-shadow:0 0 14px -3px var(--steel-soft); }
.theme-steel .banner-light{ border-color:rgba(127,161,194,.4); box-shadow:0 40px 90px -40px rgba(127,161,194,.45), inset 0 0 0 1px rgba(127,161,194,.18); }
.theme-steel .panel-vis{ background:linear-gradient(160deg, rgba(127,161,194,.16), rgba(127,161,194,.06)); border-color:rgba(127,161,194,.3); }

/* ---------- LIGHT THEME (preview, omkeerbaar) ---------- */
body.theme-light{
  --bg:#F4F6F9; --bg-2:#FFFFFF;
  --panel:rgba(18,26,42,.035); --panel-2:rgba(18,26,42,.07);
  --ink:#0E1420; --ink-2:#515A6B; --ink-3:#8A93A3;
  --line:rgba(18,32,56,.13); --line-2:rgba(18,32,56,.07);
  --grad:linear-gradient(115deg,#243245 0%,#3E5F7E 52%,#7295BA 100%);
  --grad-soft:linear-gradient(115deg,rgba(110,147,184,.12),rgba(110,147,184,.05));
  --glow-c:rgba(110,147,184,.4); --glow-v:rgba(110,147,184,.3); --cyan:#3E5F7E;
  background:var(--bg); color:var(--ink);
}
.theme-light h1,.theme-light h2,.theme-light h3,.theme-light .brand,.theme-light .home-hero h1,.theme-light .page-hero h1,.theme-light .home-hero .sub{color:var(--ink);}
.theme-light .brand small{color:var(--ink-3);}
.theme-light p,.theme-light .cap,.theme-light .note,.theme-light .svc p,.theme-light .pad p,.theme-light .gl span,.theme-light .section-head p{color:var(--ink-2);}
.theme-light header{background:rgba(255,255,255,.74); border-bottom-color:var(--line-2);}
.theme-light header.scrolled{background:rgba(255,255,255,.92);}
.theme-light .nav-links a{color:var(--ink-2);} .theme-light .nav-links a:hover,.theme-light .nav-links a.active{color:var(--ink);}
.theme-light .nav-toggle span{background:var(--ink);}
.theme-light .aurora b{mix-blend-mode:normal; opacity:.45;}
.theme-light .aurora .a1{background:#CBD8E8;} .theme-light .aurora .a2{background:#DEE5ED;} .theme-light .aurora .a3{background:#C4D2E4;}
.theme-light .pill{background:rgba(18,26,42,.04); border-color:var(--line); color:var(--ink-2);}
.theme-light .panel{background:#fff; border-color:var(--line); box-shadow:0 20px 45px -30px rgba(20,40,80,.30);}
.theme-light .tint{background:#E9EEF4; border-color:var(--line-2);}
.theme-light .btn-grad{background:#0E1420; color:#fff; border-color:#0E1420; box-shadow:0 14px 30px -14px rgba(14,20,32,.5);}
.theme-light .btn-grad:hover{background:#1B2433; border-color:#1B2433;}
.theme-light .btn-ghost{background:#fff; color:var(--ink); border-color:var(--line);}
.theme-light .btn-ghost:hover{color:var(--ink); border-color:var(--ink-3);}
.theme-light .svc .ico{color:#3E5F7E; background:rgba(110,147,184,.12); border-color:rgba(110,147,184,.4); box-shadow:none;}
.theme-light .svc .num{color:var(--ink-3);}
.theme-light .marquee .lab{color:var(--ink-3);}
.theme-light .panel-vis{background:var(--grad-soft); border-color:rgba(110,147,184,.3);}
.theme-light .gl b{color:var(--ink);}
.theme-light .price.feat-card{background:#0E1420;} .theme-light .price.feat-card *{color:#fff;}
.theme-light .lang-switch{background:rgba(18,26,42,.04); border-color:var(--line);}
.theme-light .lang-switch button{color:var(--ink-3);} .theme-light .lang-switch button.on{color:#fff;}
.theme-light ::selection{background:#3E5F7E; color:#fff;}

/* ---------- LIGHT THEME — CONTRAST PASS (tegenpolen) ---------- */
/* header reticle donker op licht */
.theme-light header .brand .mark{filter:invert(1);}
/* lichte vlakken die poppen */
.theme-light .panel{background:#fff; border-color:rgba(18,32,56,.12); box-shadow:0 22px 50px -34px rgba(20,40,80,.35);}
.theme-light .svc:hover{border-color:#3E5F7E; box-shadow:0 40px 70px -44px rgba(62,95,126,.45);}
.theme-light .banner{border-color:rgba(18,32,56,.14);}
/* donker eiland: CTA */
.theme-light .cta{background:linear-gradient(140deg,#0E1420,#1B2A3D 55%,#0E1420); border-color:#0E1420;}
.theme-light .cta h2{color:#fff;} .theme-light .cta p{color:rgba(255,255,255,.72);}
.theme-light .cta .gtext{background:linear-gradient(115deg,#C9DAEC,#8FB0D0); -webkit-background-clip:text; background-clip:text; color:transparent;}
.theme-light .cta .btn-grad{background:#fff; color:#0E1420; border-color:#fff;}
.theme-light .cta .btn-grad:hover{background:#E6EEF6; border-color:#E6EEF6;}
.theme-light .cta .btn-ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.4);}
/* donker eiland: panel-vis */
.theme-light .split .panel-vis{background:linear-gradient(160deg,#1B2A3D,#2C435C 55%,#1B2A3D); border-color:rgba(110,147,184,.35);}
.theme-light .panel-vis .big{-webkit-text-fill-color:#fff; color:#fff; background:none;}
.theme-light .panel-vis .cap{color:rgba(255,255,255,.62);}
.theme-light .panel-vis .eyebrow{color:rgba(255,255,255,.66);}
/* prijs-kaarten */
.theme-light .price .amt{color:var(--ink);} .theme-light .price .amt small{color:var(--ink-3);}
.theme-light .price li{color:var(--ink);} .theme-light .price li::before{color:#3E5F7E;}
.theme-light .price .tier{color:var(--ink-3);} .theme-light .price .desc{color:var(--ink-2);}
.theme-light .price.feat-card{background:linear-gradient(160deg,#0E1420,#1B2A3D 55%,#0E1420); border-color:#1B2A3D;}
.theme-light .price.feat-card .amt,.theme-light .price.feat-card .amt small,.theme-light .price.feat-card .tier,.theme-light .price.feat-card .desc,.theme-light .price.feat-card li{color:#fff;}
.theme-light .price.feat-card li::before{color:#8FB0D0;}
.theme-light .price.feat-card .btn-grad{background:#fff; color:#0E1420; border-color:#fff;}
.theme-light .price .tag{color:#0E1420; background:linear-gradient(115deg,#C4D6E8,#88A8CA);}
/* formulieren leesbaar */
.theme-light form.contact,.theme-light .form-card{background:#fff;}
.theme-light form.contact input,.theme-light form.contact textarea,.theme-light .form-card input,.theme-light .form-card textarea,.theme-light .form-card select{background:#fff; color:var(--ink); border:1px solid rgba(18,32,56,.18);}
.theme-light form.contact input::placeholder,.theme-light form.contact textarea::placeholder,.theme-light .form-card input::placeholder,.theme-light .form-card textarea::placeholder{color:var(--ink-3);}
.theme-light form.contact input:focus,.theme-light form.contact textarea:focus,.theme-light .form-card input:focus,.theme-light .form-card textarea:focus{border-color:#3E5F7E; box-shadow:0 0 0 3px rgba(110,147,184,.18);}
.theme-light form.contact label,.theme-light .form-card label,.theme-light .form-card .sec{color:var(--ink-3);}
.theme-light .plan{background:#fff; border-color:rgba(18,32,56,.14);}
.theme-light .plan:has(input:checked){border-color:#3E5F7E; background:#fff; box-shadow:0 0 0 1px #3E5F7E inset;}
.theme-light .plan .pt{color:var(--ink-3);} .theme-light .plan .pa{color:var(--ink);} .theme-light .plan .pd{color:var(--ink-2);}
/* contact-info */
.theme-light .contact-info h2{color:var(--ink);} .theme-light .contact-info .row{color:var(--ink);}
.theme-light .contact-info .row i{background:rgba(110,147,184,.1); border-color:rgba(18,32,56,.14); color:#3E5F7E;}
/* donker eiland: footer */
.theme-light footer{background:#0B0F16; border-top-color:rgba(255,255,255,.08);}
.theme-light footer .brand{color:#fff;} .theme-light footer .brand small{color:rgba(255,255,255,.42);}
.theme-light footer .about p{color:rgba(255,255,255,.55);}
.theme-light footer .col h4{color:#fff;}
.theme-light footer .col a{color:rgba(255,255,255,.62);} .theme-light footer .col a:hover{color:#fff;}
.theme-light footer .col p{color:rgba(255,255,255,.55);}
.theme-light .ftr-bottom{color:rgba(255,255,255,.5); border-top-color:rgba(255,255,255,.08);}
/* marquee: witte logo's (TikTok) zichtbaar maken */
.theme-light .marquee svg path[fill="#fff"],.theme-light .marquee svg path[fill="#ffffff"]{fill:#0E1420;}

/* ---------- VARIANT: NAVY + GOUD ---------- */
body.theme-navy{
  --bg:#0A1626; --bg-2:#0E2138; --panel:rgba(255,255,255,.05); --panel-2:rgba(255,255,255,.09);
  --ink:#EAF1F8; --ink-2:#9FB2C6; --ink-3:#6E8298; --line:rgba(150,180,210,.16); --line-2:rgba(150,180,210,.08);
  --grad:linear-gradient(115deg,#F1E4C6 0%,#C9A87A 55%,#9A7B4A 100%); --cyan:#C9A87A;
  --glow-c:rgba(201,168,122,.35); --glow-v:rgba(201,168,122,.3);
  background:var(--bg); color:var(--ink);
}
.theme-navy header{background:rgba(10,22,38,.62); border-bottom-color:var(--line-2);}
.theme-navy header.scrolled{background:rgba(10,22,38,.88);}
.theme-navy .tint{background:#0E2138; border-color:var(--line-2);}
.theme-navy .panel{background:rgba(255,255,255,.05); border-color:var(--line);}
.theme-navy .aurora .a1{background:#163A5C;} .theme-navy .aurora .a2{background:#1B2E47;} .theme-navy .aurora .a3{background:#123553;}
.theme-navy .btn-grad{background:var(--grad); color:#1A1206; border:none;}
.theme-navy .btn-ghost{background:rgba(255,255,255,.05); border-color:var(--line); color:var(--ink);}
.theme-navy .svc .ico{color:#D9B57A; background:rgba(201,168,122,.12); border-color:rgba(201,168,122,.4);}
.theme-navy .lang-switch button.on{color:#1A1206;}
.theme-navy footer{background:rgba(6,14,24,.6);}

/* ---------- VARIANT: WARM LICHT (crème + brons) ---------- */
body.theme-warm{
  --bg:#F7F3EC; --bg-2:#FFFFFF; --panel:rgba(46,34,20,.035); --panel-2:rgba(46,34,20,.07);
  --ink:#241F17; --ink-2:#5C5347; --ink-3:#938979; --line:rgba(70,52,28,.14); --line-2:rgba(70,52,28,.07);
  --grad:linear-gradient(115deg,#3C2C16 0%,#9A6E38 50%,#C79A56 100%); --cyan:#9A6E38;
  --grad-soft:linear-gradient(115deg,rgba(154,110,56,.14),rgba(154,110,56,.05));
  --glow-c:rgba(154,110,56,.3); --glow-v:rgba(154,110,56,.25);
  background:var(--bg); color:var(--ink);
}
.theme-warm h1,.theme-warm h2,.theme-warm h3,.theme-warm .brand,.theme-warm .home-hero h1,.theme-warm .home-hero .sub,.theme-warm .page-hero h1,.theme-warm .section-head h2{color:var(--ink);}
.theme-warm .brand small{color:var(--ink-3);}
.theme-warm p,.theme-warm .cap,.theme-warm .note,.theme-warm .svc p,.theme-warm .pad p,.theme-warm .section-head p{color:var(--ink-2);}
.theme-warm header{background:rgba(247,243,236,.78); border-bottom-color:var(--line-2);}
.theme-warm header.scrolled{background:rgba(247,243,236,.94);}
.theme-warm .nav-links a{color:var(--ink-2);} .theme-warm .nav-links a:hover,.theme-warm .nav-links a.active{color:var(--ink);}
.theme-warm .nav-toggle span{background:var(--ink);}
.theme-warm header .brand .mark{filter:invert(1);}
.theme-warm .aurora b{mix-blend-mode:normal; opacity:.4;}
.theme-warm .aurora .a1{background:#E6D6BC;} .theme-warm .aurora .a2{background:#EFE5D4;} .theme-warm .aurora .a3{background:#E3D2B4;}
.theme-warm .pill{background:rgba(46,34,20,.04); border-color:var(--line); color:var(--ink-2);}
.theme-warm .panel{background:#fff; border-color:var(--line); box-shadow:0 22px 50px -34px rgba(70,52,28,.28);}
.theme-warm .tint{background:#EFE7DA; border-color:var(--line-2);}
.theme-warm .btn-grad{background:#241F17; color:#fff; border-color:#241F17;}
.theme-warm .btn-ghost{background:#fff; color:var(--ink); border-color:var(--line);}
.theme-warm .svc .ico{color:#9A6E38; background:rgba(154,110,56,.12); border-color:rgba(154,110,56,.4); box-shadow:none;}
.theme-warm .cta{background:linear-gradient(140deg,#241F17,#3A2F1E 55%,#241F17); border-color:#241F17;}
.theme-warm .cta h2{color:#fff;} .theme-warm .cta p{color:rgba(255,255,255,.72);} .theme-warm .cta .btn-grad{background:#fff;color:#241F17;border-color:#fff;}
.theme-warm .split .panel-vis{background:linear-gradient(160deg,#3A2F1E,#52401F 55%,#3A2F1E); border-color:rgba(154,110,56,.4);}
.theme-warm .panel-vis .big{-webkit-text-fill-color:#fff;color:#fff;background:none;} .theme-warm .panel-vis .cap,.theme-warm .panel-vis .eyebrow{color:rgba(255,255,255,.66);}
.theme-warm footer{background:#211C14;} .theme-warm footer .brand,.theme-warm footer .col h4{color:#fff;} .theme-warm footer .col a,.theme-warm footer .about p,.theme-warm .ftr-bottom,.theme-warm footer .col p{color:rgba(255,255,255,.58);} .theme-warm footer .brand small{color:rgba(255,255,255,.4);}
.theme-warm .lang-switch{background:rgba(46,34,20,.04);border-color:var(--line);} .theme-warm .lang-switch button{color:var(--ink-3);} .theme-warm .lang-switch button.on{color:#fff;}
.theme-warm .marquee svg path[fill="#fff"]{fill:#241F17;}

/* ---------- DONKERE ACCENT-VARIANTEN (donkere vlakken + lichte tekst) ---------- */
body.theme-gold{ --grad:linear-gradient(115deg,#F2E6C8 0%,#C9A87A 52%,#9A7B4A 100%); --cyan:#D9B57A; --glow-c:rgba(201,168,122,.4); --glow-v:rgba(201,168,122,.3); }
body.theme-emerald{ --grad:linear-gradient(115deg,#CFEFDD 0%,#5FC79A 52%,#2E8F66 100%); --cyan:#7FD3A8; --glow-c:rgba(95,199,154,.38); --glow-v:rgba(95,199,154,.3); }

/* ---------- MARQUEE: naadloos doorlopend ---------- */
.mq-track{gap:0;}
.mq-track .logo{margin-right:70px;}

/* ---------- THEME-LIGHT: WIT + DONKERE KAARTEN (donkere vlakken, lichte tekst) ---------- */
.theme-light .panel{background:#0E1420; border-color:rgba(255,255,255,.10); box-shadow:0 30px 62px -38px rgba(20,40,80,.42);}
.theme-light .panel h3,.theme-light .svc h3,.theme-light .gl b{color:#fff;}
.theme-light .panel p,.theme-light .svc p,.theme-light .pad p,.theme-light .gl span{color:rgba(255,255,255,.66);}
.theme-light .panel .feat li,.theme-light .pad .feat li{color:rgba(255,255,255,.85);}
.theme-light .panel .feat li i::before{background:#0E1420;}
.theme-light .svc .num{color:rgba(255,255,255,.5);}
.theme-light .svc .ico{color:#AFC6DE; background:rgba(127,161,194,.16); border-color:rgba(127,161,194,.42); box-shadow:none;}
.theme-light .panel .gtext,.theme-light .stats .n,.theme-light .pad .num{background:linear-gradient(115deg,#C9DAEC 0%,#8FB0D0 55%,#6E93B8 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;}
.theme-light .stats .st .l{color:rgba(255,255,255,.55);}
/* prijs-kaarten donker */
.theme-light .price{background:#0E1420;}
.theme-light .price .amt{color:#fff;} .theme-light .price .amt small{color:rgba(255,255,255,.55);}
.theme-light .price .tier{color:rgba(255,255,255,.5);} .theme-light .price .desc{color:rgba(255,255,255,.62);}
.theme-light .price li{color:rgba(255,255,255,.82);} .theme-light .price li::before{color:#88A8CA;}
.theme-light .price .btn-ghost{background:rgba(255,255,255,.06); color:#fff; border-color:rgba(255,255,255,.2);}
/* formulieren als donkere kaart */
.theme-light form.contact,.theme-light .form-card{background:#0E1420; border:1px solid rgba(255,255,255,.1);}
.theme-light form.contact input,.theme-light form.contact textarea,.theme-light .form-card input,.theme-light .form-card textarea,.theme-light .form-card select{background:rgba(255,255,255,.05); color:#fff; border:1px solid rgba(255,255,255,.16);}
.theme-light form.contact input::placeholder,.theme-light form.contact textarea::placeholder,.theme-light .form-card input::placeholder,.theme-light .form-card textarea::placeholder{color:rgba(255,255,255,.42);}
.theme-light form.contact label,.theme-light .form-card label,.theme-light .form-card .sec{color:rgba(255,255,255,.55);}
.theme-light .plan{background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.14);}
.theme-light .plan .pt{color:rgba(255,255,255,.5);} .theme-light .plan .pa{color:#fff;} .theme-light .plan .pd{color:rgba(255,255,255,.6);}
.theme-light .plan:has(input:checked){border-color:#7FA1C2; background:rgba(127,161,194,.08); box-shadow:0 0 0 1px #7FA1C2 inset;}
/* contact-info links blijft donkere tekst op wit; icoon-vakje donker */
.theme-light .contact-info h2{color:var(--ink);} .theme-light .contact-info .row{color:var(--ink);}
.theme-light .contact-info .row i{background:#0E1420; border-color:rgba(255,255,255,.12); color:#AFC6DE;}

/* ---------- STAALBLAUW TINT op alle content-beelden + video ---------- */
.banner img, .banner video, .hh-screen video, .hh-screen img, .hh-screen #globe{
  filter: grayscale(1) sepia(.5) hue-rotate(178deg) saturate(1.5) brightness(.98);
}

/* ---------- ZWEVENDE CONTACT (bel + WhatsApp) ---------- */
.fab{position:fixed; right:22px; bottom:22px; z-index:200; display:flex; flex-direction:column; gap:12px;}
.fab-btn{width:56px; height:56px; border-radius:50%; display:grid; place-items:center; color:#fff; box-shadow:0 14px 32px -8px rgba(0,0,0,.55); transition:transform .2s, box-shadow .2s;}
.fab-btn svg{width:26px; height:26px;}
.fab-btn:hover{transform:translateY(-3px) scale(1.04);}
.fab-btn.wa{background:#25D366;}
.fab-btn.call{background:#0E1420; border:1px solid rgba(255,255,255,.16);}
@media (max-width:680px){ .fab{right:15px; bottom:15px;} .fab-btn{width:52px; height:52px;} }
/* grotere positioneer-kop voor home */
.home-hero h1.hh-lead{font-size:clamp(1.9rem,4.4vw,3.4rem); line-height:1.12; letter-spacing:-.02em; margin-bottom:16px; max-width:14ch; margin-left:auto; margin-right:auto;}
