/* ─────────────────────────────────────────
   ComplyMode — DPDP Compliance Platform
   style.css v1.0
───────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

:root{
  --bg:#070707;--bg1:#0d0d0d;--bg2:#111111;--bg3:#1a1a1a;
  --text:#efefef;--muted:#888;--dim:#444;--dim2:#2a2a2a;
  --accent:#ffffff;--a10:rgba(255,255,255,.07);--a20:rgba(255,255,255,.14);
  --border:rgba(255,255,255,.06);--border2:rgba(255,255,255,.12);
  --r:10px;--r2:18px;
  --fh:'Oswald',sans-serif;--fb:'Open Sans',sans-serif;
  --nav:80px;--ease:cubic-bezier(.16,1,.3,1);
}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--fb);
  line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}

/* ── Cursor */
.cursor-dot,.cursor-ring{display:none;}

/* ── Scroll progress */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0;
  background:var(--accent);z-index:9998;transition:width .1s linear;}

/* ── Nav */
.nav{position:fixed;top:0;left:0;right:0;height:var(--nav);z-index:100;
  transition:background .4s var(--ease),border-color .4s;}
.nav.scrolled{background:rgba(7,7,7,.94);backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.nav-inner{max-width:1360px;margin:0 auto;padding:0 40px;height:100%;
  display:flex;align-items:center;gap:48px;}
.nav-logo img{height:38px;filter:brightness(0) invert(1);opacity:.9;}
.nav-links{display:flex;gap:32px;margin-left:auto;}
.nav-links a{font-size:15px;font-weight:500;color:var(--muted);
  letter-spacing:.02em;transition:color .2s;}
.nav-links a:hover{color:var(--text);}
.nav-cta{display:flex;gap:10px;align-items:center;}

/* ── Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 20px;border-radius:7px;font:500 14px/1 var(--fb);cursor:pointer;
  transition:all .25s var(--ease);border:1.5px solid transparent;
  white-space:nowrap;letter-spacing:.01em;}
.btn-primary{background:var(--accent);color:#000;border-color:var(--accent);}
.btn-primary:hover{background:transparent;color:var(--accent);}
.btn-outline{border-color:var(--border2);color:var(--muted);}
.btn-outline:hover{border-color:var(--text);color:var(--text);}
.btn-ghost{color:var(--muted);}
.btn-ghost:hover{color:var(--text);}
.btn-ghost .arrow{transition:transform .25s var(--ease);}
.btn-ghost:hover .arrow{transform:translateX(4px);}
.btn-dark{background:#111;color:var(--text);border-color:#111;}
.btn-dark:hover{background:#1e1e1e;border-color:#1e1e1e;}
.btn-lg{padding:13px 26px;font-size:14.5px;border-radius:8px;}

/* ── Hamburger */
.nav-toggle{display:none;flex-direction:column;gap:5px;
  background:none;border:none;cursor:pointer;padding:4px;}
.nav-toggle span{display:block;width:22px;height:1.5px;
  background:var(--text);transition:all .3s var(--ease);}
.nav-toggle.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-4.5px);}
.mobile-nav{position:fixed;top:var(--nav);left:0;right:0;
  background:rgba(7,7,7,.97);backdrop-filter:blur(20px);
  padding:0 40px;max-height:0;overflow:hidden;
  transition:max-height .4s var(--ease),padding .4s;border-bottom:1px solid transparent;}
.mobile-nav.open{max-height:340px;padding:24px 40px 36px;border-color:var(--border);}
.mobile-nav ul{display:flex;flex-direction:column;gap:4px;}
.mobile-nav a{display:block;padding:11px 0;font:600 17px/1 var(--fh);
  color:var(--muted);border-bottom:1px solid var(--border);transition:color .2s;}
.mobile-nav a:hover{color:var(--text);}

/* ── Container */
.container{max-width:1360px;margin:0 auto;padding:0 40px;}

/* ── Reveal */
.reveal{opacity:0;transform:translateY(28px);
  transition:opacity .85s var(--ease),transform .85s var(--ease);}
.reveal.active{opacity:1;transform:none;}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}
.d3{transition-delay:.34s;}.d4{transition-delay:.5s;}

/* ── Section commons */
.eyebrow{font:600 11px/1 var(--fb);letter-spacing:.16em;
  text-transform:uppercase;color:var(--accent);margin-bottom:18px;}
.s-title{font:700 clamp(36px,4.5vw,62px)/1.08 var(--fh);
  letter-spacing:.04em;color:var(--text);text-transform:uppercase;}
.s-sub{font-size:17px;color:var(--muted);line-height:1.72;max-width:520px;}

/* ══════════════════════════════
   HERO
══════════════════════════════ */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;}
#hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;}
.hero::before{content:'';position:absolute;inset:0;z-index:0;
  background-image:
    linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
  background-size:72px 72px;pointer-events:none;}
.hero-inner{position:relative;z-index:1;flex:1;
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
  padding-top:calc(var(--nav) + 60px);padding-bottom:80px;}

/* Badge */
.hero-badge{display:inline-flex;align-items:center;gap:9px;
  padding:6px 14px;border-radius:100px;
  border:none;background:transparent;
  font:500 12px/1 var(--fb);color:var(--accent);letter-spacing:.04em;
  margin-bottom:24px;
  opacity:0;transform:translateY(18px);
  transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);}
.hero-badge.vis{opacity:1;transform:none;}
.bdot{width:6px;height:6px;border-radius:50%;background:var(--accent);
  animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(.7);}}

/* Title */
.hero-title{font:700 clamp(48px,6vw,82px)/1.04 var(--fh);
  letter-spacing:.04em;text-transform:uppercase;margin-bottom:22px;}
.tline{display:block;overflow:hidden;}
.tline>span{display:block;
  opacity:0;transform:translateY(100%);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);}
.tline:nth-child(3)>span{color:rgba(255,255,255,.45);}
.tline>span.vis{opacity:1;transform:none;}

.hero-sub{font-size:16.5px;color:var(--muted);line-height:1.74;
  max-width:460px;margin-bottom:32px;
  opacity:0;transform:translateY(18px);
  transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);}
.hero-sub.vis{opacity:1;transform:none;}
.hero-actions{display:flex;gap:12px;align-items:center;margin-bottom:36px;
  opacity:0;transform:translateY(18px);
  transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);}
.hero-actions.vis{opacity:1;transform:none;}
.hero-trust{display:flex;align-items:center;gap:10px;
  opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1) .1s;}
.hero-trust.vis{opacity:1;}
.trust-sep{width:1px;height:14px;background:var(--border2);}
.trust-l{font-size:12px;color:var(--dim);}
.trust-n{font:700 13px/1 var(--fh);color:var(--text);}

/* Clock */
.hero-visual{display:flex;flex-direction:column;align-items:center;gap:22px;
  opacity:0;transform:translateY(18px);
  transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);}
.hero-visual.vis{opacity:1;transform:none;}
.clock-wrap{position:relative;width:340px;height:340px;}
.cglow{position:absolute;inset:-40px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.07) 0%,transparent 65%);
  animation:gp 3s ease-in-out infinite;}
.cglow.c2{inset:-80px;background:radial-gradient(circle,rgba(255,255,255,.03) 0%,transparent 60%);
  animation-delay:1.5s;}
@keyframes gp{0%,100%{opacity:.6;transform:scale(1);}50%{opacity:1;transform:scale(1.05);}}
#compliance-clock{width:100%;height:100%;
  filter:drop-shadow(0 0 18px rgba(255,255,255,.1));}

/* Status cards */
.status-cards{display:flex;flex-direction:column;gap:8px;width:100%;}
.scard{display:flex;align-items:center;gap:12px;padding:11px 15px;
  border-radius:10px;background:var(--bg2);border:1px solid var(--border);
  opacity:0;transform:translateX(20px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
  transition-delay:var(--d,0s);}
.scard.vis{opacity:1;transform:none;}
.sdot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.sdot.g{background:#fff;box-shadow:0 0 5px rgba(255,255,255,.4);}
.sdot.a{background:#777;box-shadow:none;}
.slabel{font-size:11.5px;color:var(--muted);line-height:1;}
.sval{font:600 12px/1 var(--fb);color:var(--text);margin-top:3px;}

/* Ticker */
.hero-ticker{position:relative;z-index:1;
  padding:14px 0;overflow:hidden;background:rgba(7,7,7,.4);}
.ticker-track{display:flex;animation:ticker 35s linear infinite;width:max-content;}
.ticker-item{display:inline-flex;align-items:center;
  font:500 11px/1 var(--fb);letter-spacing:.1em;text-transform:uppercase;
  color:var(--dim);padding:0 36px;white-space:nowrap;}
.ticker-item::before{content:'·';margin-right:36px;color:var(--accent);font-size:20px;line-height:0;}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ══════════════════════════════
   ABOUT / DPDP BRIEF
══════════════════════════════ */
.section-about{padding:140px 0;background:var(--bg);position:relative;}
.section-about::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--border2),transparent);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;}
.about-left{display:flex;flex-direction:column;gap:20px;}
.about-left .s-title{margin-bottom:4px;}
.about-right{display:grid;grid-template-columns:1fr 1fr;gap:1px;
  background:var(--border);border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;}
.fact-card{background:var(--bg1);padding:36px 28px;transition:background .2s;}
.fact-card:hover{background:var(--bg2);}
.fact-n{font:700 44px/1 var(--fh);color:var(--accent);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;}
.fact-l{font-size:13px;color:var(--muted);line-height:1.55;}

/* ══════════════════════════════
   MARQUEE STRIP
══════════════════════════════ */
.marquee-wrap{padding:18px 0;overflow:hidden;background:var(--bg1);}
.marquee-track{display:flex;animation:mq 28s linear infinite;width:max-content;}
.mq-item{display:inline-flex;align-items:center;
  font:600 11px/1 var(--fb);letter-spacing:.13em;text-transform:uppercase;
  color:var(--dim);padding:0 44px;white-space:nowrap;}
.mq-item::after{content:'●';margin-left:44px;font-size:5px;color:var(--accent);}
@keyframes mq{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ══════════════════════════════
   PLATFORM
══════════════════════════════ */
.section-platform{padding:140px 0;background:var(--bg1);}
.plat-head{text-align:center;margin-bottom:72px;}
.plat-head .s-title{margin-bottom:16px;}
.plat-head .s-sub{margin:0 auto;}
.plat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--border);border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;}
.fcard{background:var(--bg1);padding:44px 36px 36px;position:relative;
  transition:background .25s;overflow:hidden;}
.fcard::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--accent),transparent);
  transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);}
.fcard:hover::after{transform:scaleX(1);}
.fcard:hover{background:var(--bg2);}
.fnum{display:none;}
.ficon{width:44px;height:44px;border-radius:10px;background:var(--a10);
  border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;
  justify-content:center;color:var(--accent);margin-bottom:22px;}
.ftitle{font:600 19px/1.2 var(--fh);letter-spacing:.06em;text-transform:uppercase;margin-bottom:11px;}
.fdesc{font-size:13.5px;color:var(--muted);line-height:1.68;margin-bottom:18px;}
.flink{font:500 13px/1 var(--fb);color:var(--dim);transition:color .2s;}
.flink:hover{color:var(--accent);}

/* ══════════════════════════════
   HOW IT WORKS
══════════════════════════════ */
.section-process{padding:140px 0;background:var(--bg);}
.proc-head{margin-bottom:80px;}
.proc-head .s-title{margin-top:12px;}
.proc-steps{display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;position:relative;}
.proc-steps::before{content:'';position:absolute;top:22px;left:14%;right:14%;
  height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);z-index:0;}
.pstep{padding:0 32px 40px;position:relative;z-index:1;}
.pstep:first-child{padding-left:0;}
.pstep:last-child{padding-right:0;}
.pnum{width:46px;height:46px;border-radius:50%;background:var(--bg);
  border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;
  font:700 15px/1 var(--fh);color:var(--accent);margin-bottom:28px;}
.ptitle{font:600 22px/1.2 var(--fh);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;}
.pdesc{font-size:14px;color:var(--muted);line-height:1.72;margin-bottom:20px;}
.plist{display:flex;flex-direction:column;gap:9px;}
.plist li{font-size:13px;color:var(--dim);padding-left:18px;position:relative;}
.plist li::before{content:'—';position:absolute;left:0;color:var(--accent);font-size:10px;top:1px;}

/* ══════════════════════════════
   STATS
══════════════════════════════ */
.section-stats{padding:100px 0;background:var(--bg1);}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--border);border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;}
.sitem{background:var(--bg1);padding:52px 36px;transition:background .25s;}
.sitem:hover{background:var(--bg2);}
.snumber{font:700 clamp(48px,5vw,72px)/1 var(--fh);letter-spacing:.03em;text-transform:uppercase;margin-bottom:10px;}
.slabel{font-size:13px;color:var(--muted);line-height:1.5;}

/* ══════════════════════════════
   SOLUTIONS
══════════════════════════════ */
.section-solutions{padding:140px 0;background:var(--bg);}
.sol-head{margin-bottom:64px;}
.sol-head .s-title{margin:12px 0 16px;}
.sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.solcard{border:1px solid var(--border);border-radius:14px;padding:32px;
  background:transparent;transition:all .3s var(--ease);position:relative;overflow:hidden;}
.solcard::before{content:'';position:absolute;inset:0;border-radius:inherit;
  background:var(--a10);opacity:0;transition:opacity .3s;}
.solcard:hover::before{opacity:1;}
.solcard:hover{border-color:rgba(255,255,255,.22);transform:translateY(-3px);}
.solico{width:40px;height:40px;margin-bottom:16px;border-radius:10px;
  background:var(--bg2);border:1px solid var(--border2);
  display:flex;align-items:center;justify-content:center;color:var(--muted);}
.soltitle{font:600 17px/1.2 var(--fh);letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px;}
.soldesc{font-size:13px;color:var(--muted);line-height:1.65;}

/* ══════════════════════════════
   PRICING
══════════════════════════════ */
.section-pricing{padding:140px 0;background:var(--bg1);}
.price-head{margin-bottom:64px;}
.price-head .s-title{margin:12px 0 16px;}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pcard{border:1px solid var(--border);border-radius:var(--r2);padding:40px;
  background:var(--bg);transition:transform .3s var(--ease),border-color .3s;
  display:flex;flex-direction:column;}
.pcard:hover{transform:translateY(-4px);border-color:var(--border2);}
.pcard.feat{background:var(--text);color:#000;border-color:var(--text);}
.pbadge{display:inline-block;padding:4px 10px;border-radius:100px;
  background:rgba(0,0,0,.08);font:600 10px/1 var(--fb);
  letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;}
.ptier{font:600 12px/1 var(--fb);letter-spacing:.1em;text-transform:uppercase;
  color:var(--accent);margin-bottom:14px;}
.pcard.feat .ptier{color:#000;}
.pprice{font:800 52px/1 var(--fh);letter-spacing:-.04em;margin-bottom:8px;}
.pprice sub{font-size:20px;font-weight:500;vertical-align:baseline;}
.pdesc{font-size:13px;color:var(--muted);margin-bottom:28px;flex:1;}
.pcard.feat .pdesc{color:rgba(0,0,0,.58);}
.pfeats{display:flex;flex-direction:column;gap:10px;margin-bottom:28px;}
.pfeat{display:flex;align-items:baseline;gap:9px;font-size:13px;color:var(--muted);}
.pcard.feat .pfeat{color:rgba(0,0,0,.65);}
.pfeat::before{content:'✓';color:var(--accent);font-weight:700;font-size:11px;flex-shrink:0;}
.pcard.feat .pfeat::before{color:#000;}

/* ══════════════════════════════
   CTA
══════════════════════════════ */
.section-cta{padding:160px 0;background:var(--bg);text-align:center;
  position:relative;overflow:hidden;}
.section-cta::before{content:'';position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);width:700px;height:700px;
  background:radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 65%);
  pointer-events:none;}
.cta-inner{position:relative;z-index:1;max-width:600px;margin:0 auto;}
.cta-title{font:700 clamp(44px,5.5vw,72px)/1.05 var(--fh);
  letter-spacing:.04em;text-transform:uppercase;margin:12px auto 22px;}
.cta-sub{font-size:17px;color:var(--muted);line-height:1.72;margin-bottom:44px;}
.demo-form{background:var(--bg1);border:1px solid var(--border);
  border-radius:var(--r2);padding:36px;text-align:left;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.demo-form input,.demo-form select{width:100%;padding:12px 16px;
  background:var(--bg);border:1px solid var(--border2);border-radius:8px;
  color:var(--text);font:400 14px var(--fb);transition:border-color .2s;
  outline:none;appearance:none;}
.demo-form input::placeholder{color:var(--dim);}
.demo-form input:focus,.demo-form select:focus{border-color:rgba(255,255,255,.35);}
.demo-form select{cursor:pointer;}
.demo-form select option{background:var(--bg2);}
.form-btn-row{margin-top:14px;}
.form-btn-row .btn{width:100%;justify-content:center;}
.form-note{text-align:center;margin-top:14px;font-size:12px;color:var(--dim);}

/* ══════════════════════════════
   FOOTER
══════════════════════════════ */
.footer{background:var(--bg1);border-top:1px solid var(--border);padding:72px 0 36px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:48px;margin-bottom:64px;}
.footer-logo{height:26px;filter:brightness(0) invert(1);opacity:.7;margin-bottom:16px;}
.fbrand p{font-size:13px;color:var(--muted);line-height:1.68;max-width:260px;margin-bottom:20px;}
.fsocial{display:flex;gap:12px;}
.fsoc{width:34px;height:34px;border-radius:8px;background:var(--bg2);
  border:1px solid var(--border);display:flex;align-items:center;justify-content:center;
  color:var(--muted);transition:all .2s;}
.fsoc:hover{color:var(--text);border-color:var(--border2);}
.fcol-title{font:600 11px/1 var(--fb);letter-spacing:.12em;text-transform:uppercase;
  color:var(--dim);margin-bottom:18px;}
.fcol-links{display:flex;flex-direction:column;gap:10px;}
.fcol-links a{font-size:13px;color:var(--muted);transition:color .2s;}
.fcol-links a:hover{color:var(--text);}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;
  padding-top:28px;border-top:1px solid var(--border);font-size:12px;color:var(--dim);}
.foot-india{display:flex;align-items:center;gap:6px;}
.india-flag{width:16px;height:11px;display:inline-flex;flex-direction:column;overflow:hidden;border-radius:1px;}
.india-flag span{flex:1;display:block;}
.india-flag .saf{background:#FF9933;}
.india-flag .swh{background:#fff;}
.india-flag .sgr{background:#138808;}

/* ══════════════════════════════
   CTA — LIGHT THEME
══════════════════════════════ */
.section-cta-light{background:#eeece7;color:#0a0a0a;}
.section-cta-light::before{background:radial-gradient(circle,rgba(0,0,0,.03) 0%,transparent 65%);}
.section-cta-light .eyebrow{color:#888;}
.section-cta-light .cta-title{color:#0a0a0a;}
.section-cta-light .cta-sub{color:#666;}

/* Knob widget layout */
.dpdp-widget{margin:44px auto 28px;display:flex;flex-direction:column;align-items:center;gap:18px;}
.knob-wrap{display:flex;align-items:center;gap:32px;}
.knob-side-label{font:700 22px/1 var(--fh);letter-spacing:.22em;text-transform:uppercase;
  width:36px;text-align:center;transition:color .4s;}
.knob-off-lbl{color:#bbb;}
.knob-on-lbl{color:#bbb;}
.knob-on-lbl.active{color:#0a0a0a;}

/* Knob SVG container */
.knob-container{width:268px;height:268px;cursor:grab;user-select:none;
  -webkit-user-select:none;touch-action:none;
  transition:filter .5s cubic-bezier(.16,1,.3,1);}
.knob-container:active{cursor:grabbing;}
.knob-container.is-on{
  filter:drop-shadow(0 8px 32px rgba(0,0,0,.18)) drop-shadow(0 2px 8px rgba(0,0,0,.1));}
#knob-svg{width:100%;height:100%;overflow:visible;}

/* Status pill */
.knob-status-row{display:flex;align-items:center;gap:9px;
  padding:7px 16px;border-radius:100px;
  background:rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.07);
  font:500 11.5px/1 var(--fb);color:#888;letter-spacing:.06em;
  transition:background .5s,border-color .5s,color .5s;}
.knob-status-row.is-on{background:#0a0a0a;border-color:#0a0a0a;color:#fff;}
.ks-dot{width:6px;height:6px;border-radius:50%;background:#ccc;
  flex-shrink:0;transition:background .4s,box-shadow .4s;}
.knob-status-row.is-on .ks-dot{background:#fff;
  animation:ksdotpulse 2s ease-in-out infinite;}
@keyframes ksdotpulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.5);}
  50%{box-shadow:0 0 0 5px rgba(255,255,255,0);}
}
.knob-hint{font-size:11px;color:#bbb;letter-spacing:.05em;
  transition:opacity .4s;}
.knob-hint.hidden{opacity:0;pointer-events:none;}
.knob-toggle-btn{border-color:rgba(0,0,0,.2);color:#555;font-size:13px;
  letter-spacing:.05em;padding:11px 28px;border-radius:8px;
  transition:all .25s var(--ease);}
.knob-toggle-btn:hover{border-color:#0a0a0a;color:#0a0a0a;}
.knob-toggle-btn.is-on{background:#0a0a0a;color:#fff;border-color:#0a0a0a;}
.knob-toggle-btn.is-on:hover{background:#333;border-color:#333;}

/* Knob ON pop animation */
@keyframes knobOnPop{
  0%{transform:scale(1);}40%{transform:scale(1.04);}
  70%{transform:scale(.98);}100%{transform:scale(1);}
}
.knob-container.pop{animation:knobOnPop .55s cubic-bezier(.16,1,.3,1) forwards;}

/* Form reveal */
.knob-form-reveal{max-height:0;overflow:hidden;opacity:0;
  transition:max-height .9s cubic-bezier(.16,1,.3,1),opacity .7s cubic-bezier(.16,1,.3,1) .1s;}
.knob-form-reveal.revealed{max-height:640px;opacity:1;}

/* Light-theme form overrides */
.section-cta-light .demo-form{background:#fff;border-color:rgba(0,0,0,.1);}
.section-cta-light .demo-form input,
.section-cta-light .demo-form select{
  background:#f5f4f0;border-color:rgba(0,0,0,.12);color:#0a0a0a;}
.section-cta-light .demo-form input::placeholder{color:#aaa;}
.section-cta-light .demo-form select option{background:#fff;color:#0a0a0a;}
.section-cta-light .demo-form input:focus,
.section-cta-light .demo-form select:focus{border-color:rgba(0,0,0,.36);}
.section-cta-light .btn-primary{background:#0a0a0a;color:#fff;border-color:#0a0a0a;}
.section-cta-light .btn-primary:hover{background:transparent;color:#0a0a0a;}
.section-cta-light .form-note{color:#aaa;}

/* ══════════════════════════════
   HERO COUNTDOWN TIMER
══════════════════════════════ */
.hero-visual{display:flex;align-items:center;justify-content:center;
  flex:1;min-width:0;}

.dpdp-countdown{
  position:relative;z-index:2;
  border:none;
  background:transparent;
  backdrop-filter:none;
  border-radius:20px;
  padding:40px 44px 36px;
  display:flex;flex-direction:column;align-items:center;gap:18px;
  box-shadow:none;}

.cdown-label{font:600 10px/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.35);}

.cdown-date{font:700 22px/1 var(--fh);letter-spacing:.18em;
  color:rgba(255,255,255,.9);text-transform:uppercase;}

/* Grid of digit blocks */
.cdown-grid{display:flex;align-items:center;gap:6px;margin:6px 0;}

.cdown-unit{display:flex;flex-direction:column;align-items:center;gap:8px;}

.cdown-digits{
  font:700 52px/1 var(--fh);letter-spacing:.06em;
  color:#ffffff;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  padding:14px 18px;
  min-width:84px;text-align:center;
  position:relative;overflow:hidden;
  text-shadow:0 0 30px rgba(255,255,255,.25);
  /* Scanline effect */
  background-image:repeating-linear-gradient(
    0deg,transparent,transparent 3px,rgba(255,255,255,.012) 3px,rgba(255,255,255,.012) 4px);}

/* Middle fold line */
.cdown-digits::after{
  content:'';position:absolute;left:0;right:0;top:50%;height:1px;
  background:rgba(255,255,255,.06);}

.cdown-digits.flip{animation:digitFlip .22s cubic-bezier(.16,1,.3,1);}
@keyframes digitFlip{
  0%{transform:scaleY(1);opacity:1;}
  40%{transform:scaleY(.7) translateY(-4px);opacity:.5;}
  100%{transform:scaleY(1);opacity:1;}}

.cdown-unit-label{font:500 9px/1 var(--fb);letter-spacing:.2em;
  text-transform:uppercase;color:rgba(255,255,255,.3);}

.cdown-sep{font:700 36px/1 var(--fh);color:rgba(255,255,255,.2);
  margin-bottom:20px;animation:sepBlink 1s step-end infinite;}
@keyframes sepBlink{0%,100%{opacity:.2;}50%{opacity:.6;}}

.cdown-footer{display:flex;align-items:center;justify-content:center;
  font:600 17px/1 var(--fh);letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.6);margin-top:4px;}

/* ══════════════════════════════
   HERO INTERACTIVE ENHANCEMENTS
══════════════════════════════ */

/* Spotlight overlay that follows cursor */
.hero-spotlight{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(600px circle at 50% 50%,rgba(255,255,255,.04) 0%,transparent 65%);
  transition:opacity .4s;opacity:0;}
.hero:hover .hero-spotlight{opacity:1;}

/* Magnetic button wrapper */
.btn-magnetic{display:inline-flex;transition:transform .15s cubic-bezier(.16,1,.3,1);}

/* Floating compliance chips */
.hero-chips{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.hchip{
  position:absolute;display:inline-flex;align-items:center;gap:6px;
  padding:5px 12px;border-radius:100px;
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);
  font:500 10px/1 var(--fb);color:rgba(255,255,255,.35);
  letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;
  animation:chipFloat var(--dur,18s) ease-in-out infinite var(--delay,0s);
  opacity:0;}
.hchip.vis{opacity:1;}
@keyframes chipFloat{
  0%{transform:translateY(0) translateX(0);}
  33%{transform:translateY(-14px) translateX(8px);}
  66%{transform:translateY(-6px) translateX(-10px);}
  100%{transform:translateY(0) translateX(0);}
}

/* Clock pulse ring after animation */
.clock-pulse{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:340px;height:340px;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,255,255,.15);opacity:0;
  animation:none;}
.clock-pulse.active{animation:cpulse 2.4s ease-out forwards;}
@keyframes cpulse{
  0%{opacity:.6;transform:translate(-50%,-50%) scale(1);}
  100%{opacity:0;transform:translate(-50%,-50%) scale(1.22);}
}

/* Status dot live pulse for active state */
.sdot.g{background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.4);
  animation:sdotPulse 2.2s ease-in-out infinite;}
@keyframes sdotPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.35);}
  50%{box-shadow:0 0 0 4px rgba(255,255,255,0);}
}

/* Scramble text style */
.tscramble{font-family:var(--fh);}

/* Click ripple on canvas */
.canvas-ripple{
  position:absolute;border-radius:50%;pointer-events:none;z-index:1;
  border:1px solid rgba(255,255,255,.3);
  animation:cripple .7s ease-out forwards;}
@keyframes cripple{
  from{width:0;height:0;opacity:.8;margin:-0px 0 0 -0px;}
  to{width:180px;height:180px;opacity:0;margin:-90px 0 0 -90px;}
}

/* ══════════════════════════════
   LANGUAGE SELECTOR
══════════════════════════════ */
.lang-select-wrap{position:relative;}

.lang-btn{display:flex;align-items:center;gap:7px;
  padding:8px 14px;border-radius:8px;
  border:1px solid rgba(255,255,255,.2);background:transparent;
  color:rgba(255,255,255,.85);cursor:pointer;
  font:600 12px/1 var(--fb);letter-spacing:.06em;
  transition:all .25s var(--ease);}
.lang-btn:hover{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.06);}
.lang-chevron{transition:transform .25s var(--ease);flex-shrink:0;}
.lang-btn[aria-expanded="true"] .lang-chevron{transform:rotate(180deg);}

.lang-dropdown{
  position:absolute;top:calc(100% + 8px);right:0;
  min-width:160px;
  background:#111;border:1px solid rgba(255,255,255,.12);
  border-radius:10px;padding:6px;
  list-style:none;
  box-shadow:0 16px 48px rgba(0,0,0,.6);
  opacity:0;pointer-events:none;transform:translateY(-6px);
  transition:opacity .22s var(--ease),transform .22s var(--ease);
  z-index:200;}
.lang-dropdown.open{opacity:1;pointer-events:all;transform:none;}

.lang-opt{padding:9px 13px;border-radius:6px;
  font:500 13px/1 var(--fb);color:rgba(255,255,255,.65);
  cursor:pointer;transition:background .15s,color .15s;}
.lang-opt:hover{background:rgba(255,255,255,.07);color:#fff;}
.lang-opt.active{color:#fff;background:rgba(255,255,255,.09);font-weight:600;}

/* Light mode adjustments */
body.light-mode .lang-btn{border-color:rgba(0,0,0,.18);color:#333;}
body.light-mode .lang-btn:hover{border-color:rgba(0,0,0,.4);background:rgba(0,0,0,.04);}
body.light-mode .lang-dropdown{background:#fff;border-color:rgba(0,0,0,.1);box-shadow:0 16px 48px rgba(0,0,0,.12);}
body.light-mode .lang-opt{color:#555;}
body.light-mode .lang-opt:hover{background:rgba(0,0,0,.05);color:#111;}
body.light-mode .lang-opt.active{background:rgba(0,0,0,.07);color:#111;}

/* ══════════════════════════════
   THEME TOGGLE
══════════════════════════════ */
.theme-toggle{
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(255,255,255,.18);background:transparent;
  color:rgba(255,255,255,.7);cursor:pointer;position:relative;
  transition:all .3s var(--ease);}
.theme-toggle:hover{border-color:rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.06);}
.theme-toggle svg{width:16px;height:16px;transition:opacity .25s,transform .35s;position:absolute;}
body:not(.light-mode) .theme-toggle .icon-sun{opacity:0;transform:rotate(90deg) scale(.6);}
body:not(.light-mode) .theme-toggle .icon-moon{opacity:1;transform:rotate(0) scale(1);}
body.light-mode .theme-toggle .icon-sun{opacity:1;transform:rotate(0) scale(1);}
body.light-mode .theme-toggle .icon-moon{opacity:0;transform:rotate(-90deg) scale(.6);}
body.light-mode .theme-toggle{border-color:rgba(0,0,0,.18);color:rgba(0,0,0,.7);}
body.light-mode .theme-toggle:hover{border-color:rgba(0,0,0,.5);color:#000;background:rgba(0,0,0,.05);}

/* ── Light mode overrides ── */
body.light-mode{--bg:#f4f3ef;--bg1:#eceae4;--bg2:#e4e2db;--text:#0a0a0a;
  --muted:#888;--dim:#aaa;--border:rgba(0,0,0,.1);--accent:#0a0a0a;}
body.light-mode #hero-canvas{opacity:.25;}
body.light-mode .hero{background:#f4f3ef;}
body.light-mode .tline span{color:#0a0a0a;}
body.light-mode .tline:last-child span{color:#888;}
body.light-mode .hero-sub,
body.light-mode .hero-badge,
body.light-mode .hero-trust{color:#555;}
body.light-mode .btn-primary{background:#0a0a0a;color:#fff;border-color:#0a0a0a;}
body.light-mode .btn-ghost{color:#0a0a0a;border-color:rgba(0,0,0,.25);}
body.light-mode .btn-outline{color:#0a0a0a;border-color:rgba(0,0,0,.25);}
body.light-mode #nav{background:rgba(244,243,239,.92);}
body.light-mode .nav-links a{color:#555;}
body.light-mode .nav-logo img{filter:none;opacity:1;}
body.light-mode .cdown-digits{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.1);
  color:#0a0a0a;text-shadow:none;background-image:none;}
body.light-mode .cdown-label,
body.light-mode .cdown-footer{color:rgba(0,0,0,.4);}
body.light-mode .cdown-date{color:#0a0a0a;}
body.light-mode .cdown-sep{color:rgba(0,0,0,.2);}
body.light-mode .cdown-unit-label{color:rgba(0,0,0,.35);}
body.light-mode .cdown-dot{background:#0a0a0a;}

/* ══════════════════════════════
   RESPONSIVE
══════════════════════════════ */
@media(max-width:1100px){
  .hero-inner{grid-template-columns:1fr;text-align:center;}
  .hero-sub,.hero-trust{margin-left:auto;margin-right:auto;}
  .hero-actions{justify-content:center;}
  .hero-visual{display:none;}
  .about-grid{grid-template-columns:1fr;gap:60px;}
  .plat-grid{grid-template-columns:repeat(2,1fr);}
  .stats-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr 1fr;}
  .fbrand{grid-column:1/-1;}
}
@media(max-width:768px){
  .nav-links,.nav-cta{display:none;}
  .nav-toggle{display:flex;}
  .nav-inner{gap:20px;}
  .container{padding:0 20px;}
  .hero-inner{padding-top:calc(var(--nav) + 36px);padding-bottom:60px;}
  .plat-grid,.proc-steps,.sol-grid,.price-grid,.about-right,.stats-grid{grid-template-columns:1fr;}
  .proc-steps::before{display:none;}
  .pstep{padding:0 0 36px;}
  .form-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
  .fbrand{grid-column:1/-1;}
  .foot-bottom{flex-direction:column;gap:8px;text-align:center;}
  .section-about,.section-platform,.section-process,.section-solutions,
  .section-pricing,.section-cta,.section-stats{padding:90px 0;}
}
