:root{
  --bg:#040914;
  --bg2:#07111d;
  --panel:#091522;
  --panel2:#0b1928;
  --line:rgba(118,183,234,.14);
  --line2:rgba(62,187,255,.34);
  --text:#f5f8fb;
  --muted:#8c9caf;
  --muted2:#61758b;
  --blue:#199eff;
  --cyan:#57d1ff;
  --yellow:#ffc83d;
  --shadow:0 30px 90px rgba(0,0,0,.40);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;min-height:100vh;color:var(--text);
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 12% 4%,rgba(19,147,255,.14),transparent 29%),
    radial-gradient(circle at 88% 28%,rgba(19,87,190,.10),transparent 31%),
    linear-gradient(180deg,#030812 0%,#06101b 48%,#030812 100%);
  overflow-x:hidden;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.20;z-index:-2;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,#000,transparent 90%);
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.container{width:min(1120px,calc(100% - 32px));margin:0 auto}
.ambient{position:fixed;border-radius:50%;pointer-events:none;z-index:-1}
.ambient-a{width:500px;height:500px;left:-330px;top:110px;background:radial-gradient(circle,rgba(22,151,255,.20),transparent 69%)}
.ambient-b{width:580px;height:580px;right:-390px;top:650px;background:radial-gradient(circle,rgba(24,77,180,.15),transparent 71%)}

.header{
  position:sticky;top:0;z-index:30;
  background:rgba(3,8,18,.78);backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.055);
}
.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:5px}
.brand-symbol{
  font-size:27px;font-weight:900;font-style:italic;letter-spacing:-.12em;
  background:linear-gradient(180deg,#fff,#9de6ff 48%,#21a8ff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 15px rgba(63,184,255,.16));
}
.brand-text{display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.12);padding-left:10px;margin-left:7px}
.brand-text strong{font-size:16px;letter-spacing:.10em;line-height:1}
.brand-text small{margin-top:5px;color:#5cc4f5;font-size:7px;font-weight:800;letter-spacing:.15em}
.header-right{display:flex;align-items:center;gap:14px}
.official{display:flex;align-items:center;gap:8px;color:#7f92a7;font-size:10px}
.official i{width:7px;height:7px;border-radius:50%;background:#42c6ff;box-shadow:0 0 15px rgba(66,198,255,.70)}
.back-store{
  min-height:38px;padding:0 14px;border-radius:999px;display:flex;align-items:center;gap:10px;
  border:1px solid rgba(95,174,230,.16);background:rgba(7,19,32,.62);
  color:#c6d7e6;font-size:10px;font-weight:750;
}
.back-store b{color:#58d0ff;font-size:15px}

.hero{
  display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;
  min-height:560px;padding-top:72px;padding-bottom:72px;
}
.eyebrow{display:flex;align-items:center;gap:9px;color:#68c7f5;font-size:9px;font-weight:900;letter-spacing:.17em}
.eyebrow span{width:28px;height:6px;border-radius:999px;background:linear-gradient(90deg,#55d4ff,#159eff);box-shadow:0 0 15px rgba(55,188,255,.25)}
.eyebrow.plain{display:block}
.hero h1{
  margin:18px 0 20px;font-size:clamp(48px,6.3vw,78px);line-height:.97;
  letter-spacing:-.055em;font-weight:500;
}
.hero h1 em{
  font-style:normal;font-weight:600;
  background:linear-gradient(90deg,#c7efff 0%,#57d2ff 40%,#169eff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p{max-width:650px;margin:0;color:#9aa9ba;font-size:15px;line-height:1.72}
.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:27px}
.hero-tags span{
  padding:9px 11px;border-radius:999px;
  color:#93a8bb;font-size:9px;font-weight:650;
  background:rgba(6,18,31,.62);border:1px solid rgba(105,173,223,.12);
}

.hero-card{
  position:relative;padding:29px;border-radius:26px;
  background:
    radial-gradient(circle at 94% 2%,rgba(36,173,255,.18),transparent 34%),
    linear-gradient(145deg,rgba(9,25,42,.95),rgba(5,14,25,.98));
  border:1px solid rgba(74,181,244,.18);
  box-shadow:var(--shadow);
}
.hero-card:after{
  content:"";position:absolute;inset:14px;border-radius:18px;pointer-events:none;
  border:1px solid rgba(255,255,255,.03);
}
.hero-card-top{display:flex;justify-content:space-between;gap:15px;align-items:center}
.hero-card-top span{color:#63c4f4;font-size:8px;font-weight:850;letter-spacing:.15em}
.hero-card-top b{font-size:11px;letter-spacing:.10em}
.hero-card-stars{margin-top:55px;color:var(--yellow);font-size:29px;letter-spacing:3px}
.hero-card blockquote{margin:22px 0 36px;font-size:30px;line-height:1.08;letter-spacing:-.04em;font-weight:650}
.hero-card-line{height:1px;background:rgba(255,255,255,.09)}
.hero-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}
.hero-card-grid div{padding:11px;border-radius:13px;background:rgba(4,14,24,.60);border:1px solid rgba(255,255,255,.045)}
.hero-card-grid strong{display:block;color:#5ec8f7;font-size:9px}
.hero-card-grid span{display:block;margin-top:5px;color:#75899e;font-size:8px}

.section{max-width:900px;padding:90px 0 75px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:30px}
.section-head h2{margin:8px 0 0;font-size:clamp(32px,5vw,50px);letter-spacing:-.045em}
.section-head p{max-width:340px;margin:0;color:#75889d;font-size:10px;line-height:1.7}
.progress-meta{display:flex;justify-content:space-between;color:#65798f;font-size:9px;margin:0 4px 8px}
.progress-meta strong{color:#67c9ff}
.progress{height:5px;border-radius:99px;overflow:hidden;background:#071421;border:1px solid rgba(255,255,255,.035);margin-bottom:17px}
.progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c82ff,#55d4ff);box-shadow:0 0 18px rgba(48,186,255,.23);transition:width .25s}

.form-card{
  padding:33px;border-radius:26px;
  background:
    radial-gradient(circle at 100% 0,rgba(24,154,243,.06),transparent 30%),
    linear-gradient(180deg,rgba(8,19,33,.97),rgba(4,11,21,.99));
  border:1px solid rgba(114,181,235,.13);box-shadow:var(--shadow);
}
.form-section{position:relative}
.step{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}
.step>span{
  width:45px;height:45px;flex:0 0 45px;border-radius:13px;display:grid;place-items:center;
  color:#73ccf8;font-size:10px;font-weight:900;
  background:rgba(20,149,240,.09);border:1px solid rgba(52,179,255,.18);
}
.step small{display:block;color:#57bae9;font-size:8px;font-weight:900;letter-spacing:.17em;margin:2px 0 6px}
.step h3{margin:0;font-size:19px;letter-spacing:-.025em}
.separator{height:1px;margin:34px 0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.field{display:flex;flex-direction:column;gap:8px}
.field>span{color:#c8d5e2;font-size:10px;font-weight:700}
.field em{font-style:normal;color:#607388;font-weight:500}
input,select,textarea{
  width:100%;outline:none;color:#f3f8fc;background:rgba(3,12,22,.90);
  border:1px solid #17293b;border-radius:13px;padding:14px;
  transition:border-color .16s,box-shadow .16s,background .16s;
}
input,select{min-height:48px}
textarea{min-height:118px;resize:vertical;line-height:1.55}
input::placeholder,textarea::placeholder{color:#506378}
input:focus,select:focus,textarea:focus{
  border-color:rgba(37,166,255,.68);background:#051525;
  box-shadow:0 0 0 3px rgba(21,155,255,.07),0 0 24px rgba(21,155,255,.05);
}
select option{background:#071421}
.space{margin-top:15px}
.counter{align-self:flex-end;color:#56697e;font-size:8px}

.ratings-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.rating-panel{padding:17px;border-radius:16px;background:rgba(3,12,22,.66);border:1px solid rgba(255,255,255,.065)}
.rating-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.rating-title span{display:block;color:#687d92;font-size:7px;font-weight:850;letter-spacing:.12em}
.rating-title strong{display:block;margin-top:5px;font-size:10px}
.rating-title>b{
  min-width:42px;height:31px;border-radius:9px;display:grid;place-items:center;
  color:#77d1ff;font-size:10px;background:rgba(18,148,239,.08);border:1px solid rgba(26,158,242,.12);
}
.star-rating{
  display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;
  gap:3px;margin-top:13px;
}
.star-rating input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.star-rating label{
  color:#293b50;font-size:32px;line-height:1;cursor:pointer;
  transition:color .14s,transform .14s,text-shadow .14s;
  user-select:none;
}
.star-rating label:hover,
.star-rating label:hover ~ label,
.star-rating input:checked ~ label{
  color:var(--yellow);
  text-shadow:0 0 16px rgba(255,200,61,.17);
}
.star-rating label:hover{transform:translateY(-1px)}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips label span{
  display:block;padding:9px 11px;border-radius:999px;cursor:pointer;
  color:#8498ac;font-size:9px;font-weight:650;background:#061422;border:1px solid #17293b;
}
.chips input:checked+span{
  color:#c8edff;border-color:rgba(48,173,255,.48);
  background:linear-gradient(90deg,rgba(19,151,244,.13),rgba(12,72,132,.08));
}

.consent{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;
  padding:15px;border-radius:14px;cursor:pointer;
  background:rgba(3,12,22,.63);border:1px solid rgba(255,255,255,.065);
}
.consent+.consent{margin-top:9px}
.consent input{position:absolute;opacity:0;pointer-events:none}
.check{
  width:20px;height:20px;border-radius:6px;display:grid;place-items:center;margin-top:1px;
  background:#061321;border:1px solid #2b4057;
}
.consent input:checked+.check{
  background:linear-gradient(145deg,#108fff,#49d0ff);border-color:#4ad0ff;
  box-shadow:0 0 17px rgba(27,163,255,.18);
}
.consent input:checked+.check:after{content:"✓";color:#fff;font-size:12px;font-weight:900}
.consent strong{display:block;color:#dce7f1;font-size:10px}
.consent small{display:block;margin-top:5px;color:#687b91;font-size:8px;line-height:1.6}

.submit{
  width:100%;min-height:56px;margin-top:22px;padding:0 20px;border:0;border-radius:14px;
  display:flex;align-items:center;justify-content:space-between;
  color:#03101a;font-size:12px;font-weight:900;
  background:linear-gradient(90deg,#64dcff,#3fc8ff 45%,#159eff);
  box-shadow:0 14px 38px rgba(14,148,241,.23),inset 0 1px rgba(255,255,255,.27);
}
.submit:hover{filter:brightness(1.04);transform:translateY(-1px)}
.submit b{font-size:20px}
.submit-note{text-align:center;margin:10px auto 0;max-width:630px;color:#566b80;font-size:8px;line-height:1.6}

.footer{border-top:1px solid rgba(255,255,255,.055);background:#02060d}
.footer-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.footer-inner div{display:flex;flex-direction:column}
.footer-inner strong{font-size:10px;letter-spacing:.09em}
.footer-inner span,.footer-inner a{margin-top:4px;color:#587087;font-size:8px}

@media(max-width:850px){
  .hero{grid-template-columns:1fr;gap:30px;min-height:auto;padding-top:62px}
  .hero-copy{max-width:760px}
  .hero-card{max-width:620px}
}
@media(max-width:680px){
  .container{width:min(100% - 22px,1120px)}
  .header-inner{min-height:66px}
  .official{display:none}
  .back-store{font-size:8px;padding:0 11px}
  .brand-text small{font-size:6px}
  .hero{padding-top:48px;padding-bottom:48px}
  .hero h1{font-size:clamp(43px,13vw,60px)}
  .hero p{font-size:13px}
  .hero-card{padding:22px}
  .hero-card blockquote{font-size:24px}
  .hero-card-stars{margin-top:38px}
  .section{padding-top:62px}
  .section-head{display:block}
  .section-head p{margin-top:12px}
  .form-card{padding:20px 15px;border-radius:20px}
  .grid-2,.ratings-grid{grid-template-columns:1fr}
  .step{gap:10px}
  .step>span{width:41px;height:41px;flex-basis:41px}
  .step h3{font-size:17px}
  .star-rating label{font-size:35px}
  .footer-inner{min-height:82px}
}
