:root{--bg:#05070f;--bg-soft:#0b1020;--surface:#11173399;--surface-strong:#0b1020d9;--border:#94a3b81f;--text:#e2e8f0;--text-soft:#94a3b8;--accent:#2dd4ff;--accent-2:#a855f7;--grid-line:#2dd4ff12;--marquee-fade:#03060fd9}html.light{--bg:#f8fafc;--bg-soft:#fff;--surface:#ffffffbf;--surface-strong:#f8fafcf2;--border:#0f172a14;--text:#0f172a;--text-soft:#475569;--accent:#2563eb;--accent-2:#7c3aed;--grid-line:#2563eb14;--marquee-fade:#f8fafcd9}html{scroll-behavior:smooth;background:var(--bg)}body{color:var(--text);background:0 0;font-family:Plus Jakarta Sans,system-ui,sans-serif;transition:color .6s;overflow-x:hidden}.grain:after{content:"";pointer-events:none;z-index:1;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:fixed;inset:0}html.light .grain:after{opacity:.03;mix-blend-mode:multiply}.grid-bg{background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:60px 60px}.glass{background:var(--surface);-webkit-backdrop-filter:blur(18px)saturate(140%);border:1px solid var(--border)}.glass-strong{background:var(--surface-strong);-webkit-backdrop-filter:blur(22px)saturate(140%);border:1px solid var(--border)}.grad-text{background:linear-gradient(120deg,#67e8f9 0%,#2dd4ff 35%,#a855f7 80%);color:#0000;-webkit-background-clip:text;background-clip:text}html.light .grad-text{background:linear-gradient(120deg,#0891b2 0%,#2563eb 40%,#7c3aed 90%);color:#0000;-webkit-background-clip:text;background-clip:text}.reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(30px)}.reveal.in{opacity:1;transform:translateY(0)}.reveal-x{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translate(-30px)}.reveal-x.in{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:scale(.94)}.reveal-scale.in{opacity:1;transform:scale(1)}.orb{filter:blur(90px);opacity:.4;pointer-events:none;mix-blend-mode:screen;border-radius:50%;animation:10s ease-in-out infinite float;position:absolute}html.light .orb{opacity:.35;mix-blend-mode:multiply}.spotlight{pointer-events:none;z-index:2;mix-blend-mode:screen;background:radial-gradient(circle,#2dd4ff2e 0%,#0000 60%);border-radius:50%;width:380px;height:380px;transition:opacity .3s;position:fixed;transform:translate(-50%,-50%)}html.light .spotlight{mix-blend-mode:multiply;background:radial-gradient(circle,#2563eb1f 0%,#0000 60%)}.tilt-card{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s;position:relative}.tilt-card:hover{border-color:#2dd4ff66;transform:translateY(-6px)rotateX(2deg)rotateY(-2deg);box-shadow:0 20px 60px -20px #2dd4ff66}html.light .tilt-card:hover{border-color:#2563eb66;box-shadow:0 20px 60px -20px #2563eb4d}.btn-primary{color:#fff;background:linear-gradient(120deg,#06b6d4 0%,#2dd4ff 40%,#7c3aed 100%);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 10px 40px -10px #2dd4ff8c}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 50px -10px #2dd4ffb3}.btn-primary:before{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);transition:transform .7s;position:absolute;inset:0;transform:translate(-100%)}.btn-primary:hover:before{transform:translate(100%)}.btn-ghost{border:1px solid var(--border);color:var(--text);background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .3s}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 30px -8px #2dd4ff66}.marquee-track{animation:40s linear infinite marquee}.marquee-track:hover{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.tw-cursor{background:var(--accent);vertical-align:middle;width:3px;height:1em;margin-left:4px;animation:1s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.draw-path{stroke-dasharray:1000;stroke-dashoffset:1000px;animation:3s ease-out forwards draw}@keyframes draw{to{stroke-dashoffset:0}}@keyframes pulseNode{0%,to{r:4;opacity:1}50%{r:7;opacity:.7}}.pulse-node{animation:2.6s ease-in-out infinite pulseNode}@keyframes drift{0%{opacity:0;transform:translate(0)}10%,90%{opacity:.7}to{transform:translate(var(--tx), var(--ty));opacity:0}}.particle{background:#2dd4ff;border-radius:50%;width:4px;height:4px;animation:12s linear infinite drift;position:absolute;box-shadow:0 0 10px #2dd4ff}html.light .particle{opacity:.5;background:#2563eb;box-shadow:0 0 8px #2563eb}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:linear-gradient(#2dd4ff,#a855f7);border-radius:6px}.wave-divider{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80'%3E%3Cpath d='M0 40 Q 300 0 600 40 T 1200 40' fill='none' stroke='%232dd4ff' stroke-width='1' opacity='0.25'/%3E%3Cpath d='M0 40 Q 300 80 600 40 T 1200 40' fill='none' stroke='%23a855f7' stroke-width='1' opacity='0.2'/%3E%3C/svg%3E");background-size:100% 100%;height:80px}.modal-enter{animation:.4s cubic-bezier(.2,.7,.2,1) forwards modalIn}.modal-leave{animation:.3s forwards modalOut}@keyframes modalIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes modalOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.faq-content{max-height:0;transition:max-height .5s cubic-bezier(.2,.7,.2,1),padding .4s;overflow:hidden}.faq-content.open{max-height:400px;padding-top:16px;padding-bottom:4px}.side-tab{transition:opacity .5s,transform .5s}.side-tab.hidden-tab{opacity:0;pointer-events:none;transform:translate(40px)}.site-bg{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.site-bg-video,.site-bg-fallback{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.site-bg-fallback{background:radial-gradient(at 30% 40%,#2dd4ff59 0%,#0000 55%),radial-gradient(at 70% 60%,#a855f74d 0%,#0000 55%),linear-gradient(135deg,#0b1020 0%,#1a2342 100%)}.site-bg-overlay{background:radial-gradient(80% 60% at 25% 30%,#2dd4ff2e 0%,#0000 60%),radial-gradient(80% 60% at 75% 70%,#a855f729 0%,#0000 60%),linear-gradient(#03060f9e 0%,#03060fb8 100%);position:absolute;inset:0}.site-bg-vignette{background:radial-gradient(110% 90%,#0000 35%,#03060f80 100%);position:absolute;inset:0}html.light .site-bg-overlay{background:radial-gradient(80% 60% at 25% 30%,#2563eb1f 0%,#0000 60%),radial-gradient(80% 60% at 75% 70%,#7c3aed1a 0%,#0000 60%),linear-gradient(#f8fafc8c 0%,#f8fafcb3 100%)}html.light .site-bg-vignette{background:radial-gradient(110% 90%,#0000 40%,#f8fafc59 100%)}html.light .site-bg-fallback{background:radial-gradient(at 30% 40%,#2563eb2e 0%,#0000 55%),radial-gradient(at 70% 60%,#7c3aed26 0%,#0000 55%),linear-gradient(135deg,#f1f5f9 0%,#e0e7ff 100%)}@media (pointer:coarse){.spotlight{display:none}}@media (prefers-reduced-motion:reduce){*{transition-duration:10ms!important;animation-duration:10ms!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.section-bg{isolation:isolate;position:relative}.section-bg:before{content:"";z-index:-1;background:radial-gradient(1000px 400px at 90% 10%,#2dd4ff0a,#0000 60%),radial-gradient(800px 400px at 10% 80%,#a855f70a,#0000 60%);position:absolute;inset:0}.video-fallback{background:radial-gradient(at 30% 40%,#2dd4ff59 0%,#0000 55%),radial-gradient(at 70% 60%,#a855f74d 0%,#0000 55%),linear-gradient(135deg,#0b1020 0%,#1a2342 100%)}.stat-card{transition:transform .4s,box-shadow .4s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px -12px #2dd4ff66}.ribbon{color:#fff;letter-spacing:.1em;background:linear-gradient(90deg,#2dd4ff,#a855f7);padding:4px 36px;font-size:11px;font-weight:600;position:absolute;top:14px;right:-34px;transform:rotate(40deg)}.flow-dot{animation:4s linear infinite flowAlong}@keyframes flowAlong{0%{offset-distance:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{offset-distance:100%;opacity:0}}

/* === Popup form dropdown and mobile overflow fix === */
select.form-input {
  cursor: pointer;
  color-scheme: dark;
  background-color: rgba(15, 23, 42, 0.96) !important;
}

select.form-input option,
select.form-input optgroup {
  background: #0b1020 !important;
  color: #e2e8f0 !important;
}

select.form-input option:checked {
  background: #2563eb !important;
  color: #ffffff !important;
}

html.light select.form-input {
  color-scheme: light;
  background-color: rgba(255, 255, 255, 0.96) !important;
}

html.light select.form-input option,
html.light select.form-input optgroup {
  background: #ffffff !important;
  color: #0f172a !important;
}

html.light select.form-input option:checked {
  background: #2563eb !important;
  color: #ffffff !important;
}

/* Keeps the popup usable on small laptop and mobile heights */
div[role="dialog"] > .relative.w-full.max-w-lg.glass-strong {
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}

div[role="dialog"] form button[type="submit"] {
  position: sticky;
  bottom: 0;
  z-index: 4;
}

@media (max-width: 640px) {
  div[role="dialog"] {
    align-items: flex-start !important;
    padding: 10px !important;
    overflow-y: auto !important;
  }

  div[role="dialog"] > .relative.w-full.max-w-lg.glass-strong {
    max-height: calc(100dvh - 20px) !important;
    border-radius: 22px !important;
    padding: 20px !important;
  }

  div[role="dialog"] form .grid.grid-cols-2.gap-3 {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .form-input {
    min-height: 46px;
  }
}

@media (max-height: 760px) {
  div[role="dialog"] > .relative.w-full.max-w-lg.glass-strong {
    max-height: calc(100dvh - 18px) !important;
  }

  .form-input {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
}
