:root{
  --bg:#030712;
  --text:#f8fbff;
  --muted:rgba(248,251,255,.68);
  --line:rgba(248,251,255,.13);
  --cyan:#24e5ff;
  --blue:#5b7cfa;
  --violet:#a855f7;
  --green:#28e98c;
  --amber:#ffbf3d;
  --red:#ff477e;
  --shadow:0 30px 120px rgba(0,0,0,.58);
  --max:1220px;
  --radius:30px;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
  overflow-x:hidden;
  scrollbar-width:thin;
  scrollbar-color:rgba(36,229,255,.8) #050b16;
}

body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--bg);
  overflow-x:hidden;
  text-rendering:optimizeLegibility;
}

body.modal-open{
  overflow:hidden;
}

body.loaded .loader{
  opacity:0;
  pointer-events:none;
  transform:scale(1.04);
}

a{
  color:inherit;
  text-decoration:none;
}

button,
input,
textarea,
select{
  font:inherit;
}

button{
  cursor:pointer;
}

img,
svg,
video,
canvas{
  max-width:100%;
  display:block;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[role="button"]:focus-visible{
  outline:3px solid rgba(36,229,255,.75);
  outline-offset:4px;
}

::-webkit-scrollbar{
  width:10px;
}

::-webkit-scrollbar-track{
  background:#050b16;
}

::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(36,229,255,.85),rgba(91,124,250,.85));
  border-radius:999px;
  border:2px solid #050b16;
}

::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#41ebff,#6d8bff);
}

.loader{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  gap:16px;
  background:radial-gradient(circle at 50% 40%,rgba(36,229,255,.16),transparent 36%),#030712;
  transition:.7s cubic-bezier(.2,.9,.2,1);
}

.loader__ring{
  width:76px;
  height:76px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.14);
  border-top-color:var(--cyan);
  animation:spin 1s linear infinite;
  box-shadow:0 0 40px rgba(36,229,255,.25);
}

.loader span{
  color:var(--muted);
  font-size:.9rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}

@keyframes spin{
  to{transform:rotate(360deg)}
}

.noise{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.08;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");
}

.aurora{
  position:fixed;
  inset:-30%;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 25%,rgba(91,124,250,.42),transparent 28%),
    radial-gradient(circle at 78% 18%,rgba(36,229,255,.28),transparent 26%),
    radial-gradient(circle at 55% 82%,rgba(168,85,247,.28),transparent 29%),
    radial-gradient(circle at 80% 72%,rgba(40,233,140,.14),transparent 22%);
  filter:blur(40px);
  animation:aurora 16s ease-in-out infinite alternate;
}

@keyframes aurora{
  0%{transform:translate3d(-2%,0,0) rotate(0deg) scale(1)}
  100%{transform:translate3d(2%,3%,0) rotate(8deg) scale(1.08)}
}

.progress{
  position:fixed;
  top:0;
  left:0;
  width:0;
  height:3px;
  z-index:9999;
  background:linear-gradient(90deg,var(--cyan),var(--violet),var(--green));
  box-shadow:0 0 24px rgba(36,229,255,.75);
}

.cursor{
  position:fixed;
  width:440px;
  height:440px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  border-radius:50%;
  z-index:-2;
  background:radial-gradient(circle,rgba(36,229,255,.14),rgba(168,85,247,.08) 38%,transparent 68%);
  mix-blend-mode:screen;
  opacity:.9;
}

.container{
  width:min(var(--max),calc(100% - 40px));
  margin:0 auto;
}

.section{
  padding:112px 0;
  position:relative;
}

.topbar{
  position:fixed;
  top:16px;
  left:50%;
  transform:translateX(-50%);
  z-index:9000;
  width:min(var(--max),calc(100% - 32px));
  min-height:68px;
  padding:10px 12px 10px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  background:rgba(3,7,18,.58);
  backdrop-filter:blur(22px);
  box-shadow:0 18px 70px rgba(0,0,0,.36);
  transition:.25s ease;
}

.topbar.scrolled{
  min-height:62px;
  background:rgba(3,7,18,.78);
}

.logo{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.logo-image{
  height:44px;
  width:auto;
  flex:0 0 auto;
}

.logo__text{
  min-width:0;
}

.logo__text b{
  display:block;
  font-size:1.02rem;
  letter-spacing:.02em;
  white-space:nowrap;
}

.logo__text small{
  display:block;
  margin-top:1px;
  color:var(--muted);
  font-size:.72rem;
  letter-spacing:.04em;
  white-space:nowrap;
}

.nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  flex-wrap:wrap;
}

.nav a{
  padding:10px 12px;
  border-radius:999px;
  color:rgba(255,255,255,.76);
  font-size:.93rem;
  transition:.2s ease;
  white-space:nowrap;
}

.nav a:hover{
  color:white;
  background:rgba(255,255,255,.07);
}

.nav__button{
  background:linear-gradient(135deg,var(--cyan),var(--blue))!important;
  color:#03101a!important;
  font-weight:850;
  box-shadow:0 16px 36px rgba(36,229,255,.18);
}

.menu{
  display:none;
  width:44px;
  height:44px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(255,255,255,.055);
  flex:0 0 auto;
}

.menu span{
  display:block;
  width:20px;
  height:2px;
  background:white;
  border-radius:99px;
  margin:4px auto;
}

.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:150px 0 82px;
  position:relative;
  overflow:hidden;
}

.hero__bg-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:74px 74px;
  mask-image:radial-gradient(circle at 50% 48%,black,transparent 72%);
  opacity:.42;
}

.hero__orbit{
  position:absolute;
  border:1px solid rgba(36,229,255,.18);
  border-radius:50%;
  pointer-events:none;
}

.orbit-one{
  width:760px;
  height:760px;
  right:-250px;
  top:70px;
  animation:float 9s ease-in-out infinite;
}

.orbit-two{
  width:440px;
  height:440px;
  left:-140px;
  bottom:40px;
  animation:float 12s ease-in-out infinite reverse;
}

@keyframes float{
  50%{transform:translateY(-22px) rotate(5deg)}
}

.connector-word{
  position:absolute;
  left:50%;
  top:54%;
  transform:translate(-50%,-50%);
  font-size:min(15vw,210px);
  font-weight:900;
  letter-spacing:-0.08em;
  color:rgba(255,255,255,.06);
  pointer-events:none;
  user-select:none;
  white-space:nowrap;
  z-index:1;
  line-height:1;
  text-shadow:0 0 80px rgba(36,229,255,.18);
}

.hero__layout{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.98fr);
  align-items:center;
  gap:40px;
}

.pretitle,
.kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.76);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.72rem;
  max-width:100%;
}

.pulse{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 0 rgba(40,233,140,.55);
  animation:pulse 1.8s infinite;
  flex:0 0 auto;
}

@keyframes pulse{
  70%{box-shadow:0 0 0 13px rgba(40,233,140,0)}
}

.hero h1{
  margin:18px 0 0;
  font-size:clamp(2.25rem,4.2vw,4.9rem);
  line-height:1.02;
  letter-spacing:-.055em;
  max-width:780px;
  text-wrap:balance;
}

.hero__copy p{
  max-width:68ch;
  margin:24px 0 0;
  color:var(--muted);
  font-size:clamp(1rem,1.2vw,1.16rem);
  line-height:1.72;
}

.hero__actions{
  margin-top:32px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.btn{
  min-height:52px;
  padding:14px 19px;
  border-radius:17px;
  border:1px solid var(--line);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  transition:.22s ease;
  position:relative;
  overflow:hidden;
  text-align:center;
}

.btn::before{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-120%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transition:.55s ease;
}

.btn:hover::before{
  transform:translateX(120%);
}

.btn:hover{
  transform:translateY(-2px);
}

.btn--primary{
  border:0;
  background:linear-gradient(135deg,var(--cyan),var(--blue));
  color:#03101a;
  font-weight:900;
  box-shadow:0 22px 66px rgba(36,229,255,.24);
}

.btn--glass{
  background:rgba(255,255,255,.055);
  color:white;
  backdrop-filter:blur(10px);
}

.hero__proof,
.feature-list,
.report-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:30px;
}

.hero__proof span,
.feature-list span,
.report-tags span{
  padding:8px 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:rgba(255,255,255,.72);
  font-size:.86rem;
  white-space:normal;
}

.command-center{
  position:relative;
  padding:20px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  box-shadow:var(--shadow);
  transform-style:preserve-3d;
  overflow:hidden;
  min-width:0;
}

.command-center::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(520px 200px at 20% 0%,rgba(36,229,255,.25),transparent 62%),
    radial-gradient(520px 260px at 100% 10%,rgba(168,85,247,.22),transparent 62%);
  pointer-events:none;
}

.command-center>*{
  position:relative;
  z-index:1;
}

.cc__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}

.cc__top strong{
  display:block;
}

.cc__top small{
  display:block;
  color:var(--muted);
  margin-top:3px;
}

.status-pill{
  padding:7px 10px;
  border-radius:99px;
  background:rgba(40,233,140,.12);
  border:1px solid rgba(40,233,140,.28);
  color:#9fffcf;
  font-size:.75rem;
  font-weight:900;
  white-space:nowrap;
}

.cc__metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.cc__metrics article{
  padding:13px;
  border:1px solid var(--line);
  border-radius:19px;
  background:rgba(0,0,0,.20);
  min-width:0;
}

.cc__metrics small{
  display:block;
  color:var(--muted);
  font-size:.74rem;
  min-height:31px;
}

.cc__metrics b{
  display:block;
  font-size:2rem;
  letter-spacing:-.06em;
}

.cc__metrics i{
  font-style:normal;
  color:rgba(36,229,255,.8);
  font-size:.75rem;
}

.cc__timeline{
  margin-top:14px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(0,0,0,.18);
}

.cc__timeline-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:rgba(255,255,255,.8);
  font-weight:750;
  margin-bottom:12px;
}

.cc__timeline-head em{
  font-style:normal;
  color:var(--cyan);
  font-size:.82rem;
}

.bar-row{
  height:38px;
  position:relative;
  overflow:hidden;
  border-radius:14px;
  background:rgba(255,255,255,.045);
  margin:9px 0;
}

.bar-row label{
  position:absolute;
  left:11px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  color:rgba(255,255,255,.82);
  font-size:.82rem;
  max-width:70%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.bar-row span{
  position:absolute;
  left:var(--x);
  width:var(--w);
  top:8px;
  bottom:8px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--blue));
  box-shadow:0 0 22px rgba(36,229,255,.22);
}

.bar-row.danger span{
  background:linear-gradient(90deg,var(--red),var(--amber));
  box-shadow:0 0 25px rgba(255,71,126,.34);
}

.cc__flow{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:14px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:21px;
  background:rgba(255,255,255,.04);
}

.cc__flow span{
  padding:7px 10px;
  border-radius:99px;
  background:rgba(255,255,255,.07);
  font-size:.78rem;
  color:rgba(255,255,255,.8);
}

.cc__flow i{
  width:24px;
  height:2px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));
}

.cc__alert{
  margin-top:14px;
  padding:14px;
  border-radius:20px;
  background:rgba(255,71,126,.11);
  border:1px solid rgba(255,71,126,.24);
}

.cc__alert b{
  display:block;
}

.cc__alert p{
  margin:3px 0 0;
  color:rgba(255,255,255,.72);
  font-size:.88rem;
}

.section-title{
  max-width:980px;
  margin-bottom:34px;
}

.section-title.center{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.section-title h2{
  font-size:clamp(1.75rem,2.15vw,2.8rem);
  line-height:1.14;
  letter-spacing:-.035em;
  max-width:980px;
  margin:14px 0 0;
  text-wrap:balance;
}

.section-title.center h2,
.section-title.center p{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.section-title p{
  margin:18px 0 0;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.75;
}

.big-numbers{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.big-numbers article{
  min-height:210px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  box-shadow:0 24px 80px rgba(0,0,0,.24);
  position:relative;
  overflow:hidden;
  isolation:isolate;
  cursor:default;
  transition:transform .35s ease,border-color .35s ease;
}

.stat-tile::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:linear-gradient(135deg,rgba(36,229,255,.2),rgba(168,85,247,.15),rgba(40,233,140,.15));
  opacity:0;
  transition:.4s;
  z-index:-2;
}

.stat-tile:hover::before{
  opacity:1;
}

.stat-tile:hover{
  transform:translateY(-10px) scale(1.02);
  border-color:rgba(36,229,255,.3);
}

.tile-orbit{
  position:absolute;
  width:240px;
  height:240px;
  right:-90px;
  top:-90px;
  border-radius:50%;
  border:1px solid rgba(36,229,255,.15);
  animation:tileRotate 18s linear infinite;
}

.tile-orbit::before{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  background:var(--cyan);
  border-radius:50%;
  left:50%;
  top:-5px;
  box-shadow:0 0 20px var(--cyan);
}

@keyframes tileRotate{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

.big-numbers b{
  display:block;
  position:relative;
  z-index:2;
  font-size:clamp(3rem,6vw,6.4rem);
  line-height:.82;
  letter-spacing:-.08em;
  background:linear-gradient(135deg,#fff,var(--cyan),var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.big-numbers span{
  display:block;
  margin-top:22px;
  color:var(--muted);
  max-width:24ch;
}

.galaxy{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:radial-gradient(900px 520px at 50% 0%,rgba(36,229,255,.12),transparent 70%),rgba(255,255,255,.018);
}

.module-shell{
  display:grid;
  grid-template-columns:290px minmax(0,1fr);
  gap:18px;
  padding:18px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:36px;
  background:rgba(3,7,18,.48);
  box-shadow:var(--shadow);
}

.module-tabs{
  display:grid;
  gap:8px;
  align-content:start;
  max-height:680px;
  overflow:auto;
  padding-right:4px;
}

.module-tabs button{
  text-align:left;
  padding:13px 14px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.045);
  color:rgba(255,255,255,.72);
  transition:.2s ease;
}

.module-tabs button:hover{
  color:white;
  border-color:rgba(36,229,255,.28);
}

.module-tabs button.active{
  background:linear-gradient(135deg,var(--cyan),var(--blue));
  color:#03101a;
  border-color:transparent;
  font-weight:900;
}

.module-display{
  min-height:560px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  gap:22px;
  align-items:center;
  padding:28px;
  border-radius:28px;
  background:radial-gradient(500px 260px at 100% 0%,rgba(168,85,247,.18),transparent 65%),rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.10);
  min-width:0;
}

.module-copy span{
  display:inline-flex;
  color:var(--cyan);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.78rem;
}

.module-copy h3{
  font-size:clamp(1.8rem,2.8vw,3.2rem);
  line-height:1.08;
  letter-spacing:-.045em;
  max-width:900px;
  margin:14px 0;
}

.module-copy p{
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.75;
}

.module-copy ul{
  display:grid;
  gap:10px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}

.module-copy li{
  position:relative;
  padding-left:28px;
  color:rgba(255,255,255,.8);
}

.module-copy li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:13px;
  height:13px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--green),var(--cyan));
  box-shadow:0 0 16px rgba(36,229,255,.38);
}

.holo-card{
  height:420px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  box-shadow:0 30px 100px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.14);
  padding:20px;
  position:relative;
  overflow:hidden;
}

.holo-card::before{
  content:"";
  position:absolute;
  inset:-70% -30%;
  background:linear-gradient(100deg,transparent,rgba(36,229,255,.24),transparent);
  animation:scan 4.6s ease-in-out infinite;
}

.holo-card>*{
  position:relative;
}

.holo-card__top{
  display:flex;
  gap:8px;
}

.holo-card__top span{
  width:12px;
  height:12px;
  border-radius:50%;
  background:rgba(255,255,255,.24);
}

.holo-card__title{
  height:26px;
  width:66%;
  border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));
  margin-top:28px;
}

.holo-card__grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-top:24px;
}

.holo-card__grid i{
  height:80px;
  border-radius:20px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
}

.holo-card__list{
  display:grid;
  gap:10px;
  margin-top:24px;
}

.holo-card__list b{
  height:20px;
  border-radius:99px;
  background:rgba(255,255,255,.075);
}

.holo-card__list b:nth-child(2){width:82%}
.holo-card__list b:nth-child(3){width:72%}
.holo-card__list b:nth-child(4){width:91%}
.holo-card__list b:nth-child(5){width:64%}

@keyframes scan{
  0%,30%{transform:translateX(-60%) rotate(18deg)}
  80%,100%{transform:translateX(60%) rotate(18deg)}
}

.workflow{
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.018),transparent);
}

.process-map{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  position:relative;
}

.process-step{
  min-height:230px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.045);
  position:relative;
  overflow:hidden;
  transition:.3s ease;
}

.process-step::before{
  content:"";
  position:absolute;
  inset:auto 16px 16px;
  height:4px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));
  transform:scaleX(.2);
  transform-origin:left;
  transition:.3s ease;
}

.process-step:hover,
.process-step.active{
  transform:translateY(-6px);
  border-color:rgba(36,229,255,.30);
  background:rgba(255,255,255,.07);
}

.process-step:hover::before,
.process-step.active::before{
  transform:scaleX(1);
}

.process-step span{
  display:block;
  color:var(--cyan);
  font-weight:900;
  margin-bottom:32px;
}

.process-step b{
  font-size:1.2rem;
}

.process-step p{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.55;
}

.split-layout{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:34px;
  align-items:center;
}

.planner-image{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.03);
  box-shadow:0 40px 100px rgba(0,0,0,.45);
  transition:.4s ease;
  cursor:zoom-in;
  min-width:0;
}

.planner-image:hover{
  transform:translateY(-6px);
}

.planner-image img{
  width:100%;
  height:auto;
  display:block;
}

.planner-glow{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 20%,rgba(36,229,255,.15),transparent 35%),
    radial-gradient(circle at 80% 80%,rgba(168,85,247,.12),transparent 35%);
  pointer-events:none;
}

.zoom-hint{
  position:absolute;
  right:18px;
  bottom:18px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(3,7,18,.75);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.12);
  font-size:.85rem;
  color:white;
  opacity:0;
  transition:.3s ease;
  z-index:2;
}

.planner-image:hover .zoom-hint{
  opacity:1;
}

.intel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.intel{
  padding:22px;
  border:1px solid var(--line);
  border-radius:26px;
  background:rgba(255,255,255,.045);
  transition:.24s ease;
}

.intel:hover{
  transform:translateY(-5px);
  border-color:rgba(36,229,255,.26);
  background:rgba(255,255,255,.065);
}

.intel span{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,var(--cyan),var(--blue),var(--violet));
  color:#03101a;
  font-size:1.35rem;
  box-shadow:0 18px 50px rgba(36,229,255,.20);
}

.intel h3{
  margin:18px 0 8px;
}

.intel p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

.configurator-box{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:50px;
  align-items:start;
}

.configurator-content h2{
  margin-top:14px;
  font-size:clamp(1.6rem,1.9vw,2.4rem);
  line-height:1.1;
  letter-spacing:-.03em;
  max-width:none;
}

.configurator-content p{
  color:var(--muted);
  margin-top:20px;
  max-width:60ch;
}

.configurator-features{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:36px;
}

.config-item{
  display:flex;
  gap:14px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.04);
  transition:.3s ease;
  min-width:0;
}

.config-item:hover{
  transform:translateY(-4px);
  border-color:rgba(36,229,255,.35);
  background:rgba(255,255,255,.07);
}

.config-item i{
  width:50px;
  height:50px;
  flex:0 0 50px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,var(--cyan),var(--blue));
  color:#03101a;
  font-size:1.15rem;
}

.config-item strong{
  display:block;
  margin-bottom:6px;
}

.config-item span{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.5;
}

.configurator-visual{
  display:flex;
  justify-content:center;
  padding-top:40px;
}

.image-placeholder{
  width:100%;
  max-width:620px;
  min-height:610px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.15);
  background:linear-gradient(135deg,rgba(36,229,255,.08),rgba(168,85,247,.08));
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:20px;
  position:relative;
  overflow:hidden;
}

.image-placeholder::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 40px);
}

.image-placeholder i,
.image-placeholder span{
  position:relative;
  z-index:1;
}

.image-placeholder i{
  font-size:4rem;
  color:var(--cyan);
}

.image-placeholder span{
  color:var(--muted);
  text-align:center;
  max-width:260px;
}

.reports{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.018);
}

.reports-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:34px;
  align-items:center;
}

.report-card{
  padding:22px;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  box-shadow:var(--shadow);
  min-width:0;
}

.report-card__top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.report-card__top span{
  color:var(--muted);
}

.chart{
  height:300px;
  display:flex;
  align-items:end;
  gap:14px;
  margin-top:28px;
  padding:18px;
  border-radius:24px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.09);
}

.chart i{
  flex:1;
  height:var(--h);
  border-radius:15px 15px 6px 6px;
  background:linear-gradient(180deg,var(--cyan),var(--blue),var(--violet));
  box-shadow:0 0 24px rgba(36,229,255,.18);
  animation:bar 2.2s ease-in-out infinite alternate;
}

.chart i:nth-child(2){animation-delay:.15s}
.chart i:nth-child(3){animation-delay:.3s}
.chart i:nth-child(4){animation-delay:.45s}
.chart i:nth-child(5){animation-delay:.6s}
.chart i:nth-child(6){animation-delay:.75s}

@keyframes bar{
  to{height:calc(var(--h) - 12%)}
}

.report-lines{
  display:grid;
  gap:10px;
  margin-top:18px;
}

.report-lines span{
  height:16px;
  border-radius:99px;
  background:rgba(255,255,255,.07);
}

.report-lines span:nth-child(2){width:82%}
.report-lines span:nth-child(3){width:62%}

.final-cta{
  padding-bottom:120px;
}

.cta-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.86fr);
  gap:30px;
  align-items:start;
  padding:34px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:38px;
  background:
    radial-gradient(700px 320px at 0% 0%,rgba(36,229,255,.20),transparent 65%),
    radial-gradient(620px 320px at 100% 20%,rgba(168,85,247,.20),transparent 65%),
    rgba(255,255,255,.045);
  box-shadow:var(--shadow);
}

.cta-copy h2{
  font-size:clamp(1.9rem,3vw,3.4rem);
  line-height:1.08;
  letter-spacing:-.045em;
  max-width:900px;
  margin:16px 0 0;
}

.cta-copy p{
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.75;
}

.phone{
  display:inline-flex;
  margin-top:16px;
  font-size:1.4rem;
  font-weight:900;
  color:var(--cyan);
}

.form{
  display:grid;
  gap:12px;
}

.form input,
.form textarea,
.form select{
  width:100%;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(0,0,0,.22);
  color:white;
  padding:14px 15px;
  outline:none;
}

.form select option{
  background:#07111f;
}

.form textarea{
  min-height:130px;
  resize:vertical;
}

.form input:focus,
.form textarea:focus,
.form select:focus{
  border-color:rgba(36,229,255,.48);
  box-shadow:0 0 0 4px rgba(36,229,255,.10);
}

.form small{
  min-height:18px;
  color:var(--muted);
}

.footer{
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  padding:30px max(20px,calc((100vw - var(--max))/2));
  border-top:1px solid var(--line);
  color:var(--muted);
  background:rgba(0,0,0,.18);
}

.image-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(12px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px;
  opacity:0;
  visibility:hidden;
  transition:.3s ease;
  z-index:99999;
}

.image-modal.open{
  opacity:1;
  visibility:visible;
}

.image-modal img{
  max-width:95vw;
  max-height:92vh;
  border-radius:24px;
  box-shadow:0 50px 120px rgba(0,0,0,.55);
  transform:scale(.92);
  transition:.3s ease;
}

.image-modal.open img{
  transform:scale(1);
}

.image-modal__close{
  position:absolute;
  top:20px;
  right:20px;
  width:46px;
  height:46px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:white;
  display:grid;
  place-items:center;
}

.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .75s ease,transform .75s cubic-bezier(.2,.9,.2,1);
}

.reveal.in{
  opacity:1;
  transform:translateY(0);
}

.magnetic{
  will-change:transform;
}

/* TABLET */
@media(max-width:1100px){
  .process-map{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .big-numbers{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .intel-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* MOBILE / SMALL TABLET */
@media(max-width:900px){
  .topbar{
    top:10px;
    width:calc(100% - 20px);
    min-height:62px;
    border-radius:20px;
  }

  .menu{
    display:block;
  }

  .nav{
    position:absolute;
    top:72px;
    left:0;
    right:0;
    padding:14px;
    display:none;
    grid-template-columns:1fr;
    border:1px solid var(--line);
    border-radius:24px;
    background:rgba(3,7,18,.96);
    box-shadow:var(--shadow);
  }

  .nav.open{
    display:grid;
  }

  .nav a{
    padding:13px 14px;
    white-space:normal;
  }

  .logo__text small{
    display:none;
  }

  .hero{
    min-height:auto;
    padding:118px 0 72px;
  }

  .hero__layout,
  .module-shell,
  .module-display,
  .split-layout,
  .configurator-box,
  .reports-layout,
  .cta-panel{
    grid-template-columns:1fr;
  }

  .module-display{
    min-height:auto;
  }

  .module-tabs{
    display:flex;
    flex-wrap:wrap;
    max-height:none;
    overflow:visible;
    padding-right:0;
  }

  .module-tabs button{
    flex:1 1 auto;
    text-align:center;
  }

  .configurator-visual{
    padding-top:0;
  }

  .image-placeholder{
    min-height:360px;
  }

  .holo-card{
    height:330px;
  }
}

/* PHONE */
@media(max-width:700px){
  .cursor,
  .connector-word{
    display:none;
  }

  .container{
    width:min(var(--max),calc(100% - 28px));
  }

  .section{
    padding:76px 0;
  }

  .hero{
    padding:112px 0 64px;
  }

  .hero h1{
    font-size:clamp(2rem,9vw,3rem);
    line-height:1.08;
    letter-spacing:-.045em;
    max-width:100%;
  }

  .pretitle,
  .kicker{
    font-size:.68rem;
    line-height:1.35;
  }

  .hero__copy p,
  .section-title p,
  .module-copy p,
  .cta-copy p{
    font-size:1rem;
    line-height:1.65;
  }

  .hero__actions{
    flex-direction:column;
  }

  .hero__actions .btn,
  .form .btn{
    width:100%;
  }

  .hero__proof,
  .feature-list,
  .report-tags,
  .cc__flow{
    gap:8px;
  }

  .section-title{
    max-width:100%;
    margin-bottom:26px;
  }

  .section-title h2{
    font-size:clamp(1.58rem,7vw,2.25rem);
    line-height:1.15;
    max-width:100%;
  }

  .section-title.center h2,
  .section-title.center p{
    text-align:left;
  }

  .section-title.center{
    text-align:left;
  }

  .big-numbers,
  .process-map,
  .intel-grid,
  .configurator-features{
    grid-template-columns:1fr;
  }

  .big-numbers article{
    min-height:170px;
  }

  .big-numbers b{
    font-size:clamp(3rem,18vw,5.6rem);
  }

  .cc__metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .cc__top{
    flex-direction:column;
  }

  .bar-row label{
    max-width:88%;
  }

  .cc__flow i{
    display:none;
  }

  .module-shell{
    padding:14px;
    border-radius:26px;
  }

  .module-display{
    padding:18px;
    border-radius:22px;
  }

  .module-tabs button{
    flex:1 1 calc(50% - 8px);
    font-size:.9rem;
  }

  .module-copy h3{
    font-size:clamp(1.55rem,7vw,2.25rem);
  }

  .holo-card{
    height:260px;
  }

  .process-step{
    min-height:auto;
  }

  .planner-image,
  .report-card,
  .cta-panel{
    border-radius:24px;
  }

  .zoom-hint{
    opacity:1;
    right:12px;
    bottom:12px;
    font-size:.78rem;
  }

  .configurator-content h2{
    font-size:clamp(1.55rem,7vw,2.2rem);
    line-height:1.12;
  }

  .config-item{
    padding:16px;
  }

  .config-item i{
    width:44px;
    height:44px;
    flex-basis:44px;
  }

  .image-placeholder{
    min-height:280px;
    border-radius:22px;
  }

  .chart{
    height:230px;
    gap:8px;
    padding:14px;
  }

  .footer{
    flex-direction:column;
  }

  .image-modal{
    padding:16px;
  }

  .image-modal img{
    max-width:96vw;
    max-height:86vh;
    border-radius:16px;
  }

  .image-modal__close{
    top:12px;
    right:12px;
  }
}

@media(max-width:420px){
  .logo-image{
    height:38px;
  }

  .logo__text b{
    font-size:.95rem;
  }

  .topbar{
    padding:9px 10px;
  }

  .menu{
    width:40px;
    height:40px;
  }

  .cc__metrics{
    grid-template-columns:1fr;
  }

  .module-tabs button{
    flex:1 1 100%;
  }

  .btn{
    padding-left:14px;
    padding-right:14px;
  }
}

@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }

  .cursor{
    display:none;
  }
}

.image-placeholder--filled{
  padding:0;
  min-height:auto;
}

.image-placeholder--filled::before{
  display:none;
}

.image-placeholder--filled img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}

.hidden-field{
  position:absolute!important;
  left:-9999px!important;
  opacity:0!important;
  pointer-events:none!important;
}