:root{
  --bg:            #05070c;
  --bg-2:          #070b13;
  --surface:       #090E17;
  --surface-2:     #0C1320;
  --line:          rgba(255,255,255,.075);
  --line-strong:   rgba(255,255,255,.14);

  --tg:            #2AABEE;
  --tg-light:      #56CCF2;
  --tg-deep:       #0F7FC0;
  --tg-dark:       #0A5C90;
  --grad:          linear-gradient(135deg, #56CCF2 0%, #2AABEE 45%, #0F7FC0 100%);
  --grad-soft:     linear-gradient(140deg, rgba(86,204,242,.22) 0%, rgba(42,171,238,.14) 50%, rgba(15,127,192,.06) 100%);

  --text:          #EDF3FA;
  --text-2:        #A9B9CC;
  --text-3:        #6E8095;

  --r-sm:  12px;
  --r-md:  18px;
  --r-lg:  24px;
  --r-xl:  32px;
  --container: 1760px;
  --header-h: 92px;

  --shadow-card: 0 24px 60px -30px rgba(0,0,0,.9);
  --shadow-glow: 0 0 0 1px rgba(42,171,238,.35), 0 30px 70px -35px rgba(42,171,238,.55);

  --ease: cubic-bezier(.22,.68,.28,1);
}

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

html{ scroll-behavior:smooth; scroll-padding-top:110px; }

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3,h4{
  font-family:'Onest','Inter',system-ui,sans-serif;
  font-weight:800;
  letter-spacing:-.032em;
  line-height:1.06;
  margin:0;
}

p{ margin:0; }
a{ color:inherit; text-decoration:none; }
ul,ol{ margin:0; padding:0; list-style:none; }
img,svg{ display:block; max-width:100%; }

::selection{ background:rgba(42,171,238,.35); color:#fff; }

:focus-visible{
  outline:2px solid var(--tg-light);
  outline-offset:3px;
  border-radius:6px;
}

.container{
  width:100%;
  max-width:var(--container);
  margin:0 auto;
  padding:0 5%;
}

.bg-layer{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.glow{
  position:absolute;
  border-radius:50%;
  filter:blur(90px);
  will-change:transform;
}
.glow--1{
  width:1500px; height:980px;
  top:-320px; left:50%;
  margin-left:-750px;
  background:radial-gradient(closest-side, rgba(52,183,250,.72), rgba(24,120,190,.28) 48%, transparent 74%);
  transform:translate3d(var(--mx,0px), var(--my,0px), 0);
  animation:drift 16s ease-in-out infinite alternate;
}
.glow--2{
  width:700px; height:700px;
  top:44vh; left:-260px;
  background:radial-gradient(closest-side, rgba(86,204,242,.22), transparent 70%);
  animation:drift 22s ease-in-out infinite alternate-reverse;
}
.glow--3{
  width:760px; height:600px;
  top:76vh; right:-280px;
  background:radial-gradient(closest-side, rgba(15,127,192,.26), transparent 70%);
  animation:drift 19s ease-in-out infinite alternate;
}
@keyframes drift{
  from{ transform:translate3d(var(--mx,0px), var(--my,0px), 0) scale(1); }
  to  { transform:translate3d(calc(var(--mx,0px) + 40px), calc(var(--my,0px) - 30px), 0) scale(1.08); }
}
.grid-lines{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
  background-size:76px 76px;
  mask-image:radial-gradient(ellipse 90% 55% at 50% 8%, #000 20%, transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 90% 55% at 50% 8%, #000 20%, transparent 78%);
}

main, .site-header, .site-footer{ position:relative; z-index:1; }

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-family:'Onest',sans-serif;
  font-weight:600;
  font-size:15px;
  letter-spacing:-.01em;
  padding:14px 28px;
  border-radius:999px;
  border:1px solid transparent;
  cursor:pointer;
  white-space:nowrap;
  transition:transform .25s var(--ease), background .25s var(--ease),
             box-shadow .3s var(--ease), border-color .25s var(--ease), color .2s;
}
.btn:hover{ transform:translateY(-2px); }
.btn:active{ transform:translateY(0); }

.btn-lg{ padding:17px 36px; font-size:16px; }
.btn-sm{ padding:11px 22px; font-size:14px; }
.btn-block{ display:flex; width:100%; }

.btn-white{
  background:#fff;
  color:#06121d;
  box-shadow:0 12px 34px -18px rgba(255,255,255,.6);
}
.btn-white:hover{ background:#EAF6FE; box-shadow:0 18px 44px -18px rgba(120,205,255,.7); }

.btn-primary{
  background:var(--grad);
  color:#fff;
  box-shadow:0 14px 40px -16px rgba(42,171,238,.85);
}
.btn-primary:hover{ box-shadow:0 20px 50px -16px rgba(42,171,238,1); }

.btn-glass{
  background:rgba(255,255,255,.06);
  border-color:var(--line-strong);
  color:var(--text);
  backdrop-filter:blur(10px);
}
.btn-glass:hover{ background:rgba(255,255,255,.11); border-color:rgba(86,204,242,.5); }

.btn-outline{
  background:transparent;
  border-color:var(--line-strong);
  color:var(--text);
}
.btn-outline:hover{ border-color:var(--tg); background:rgba(42,171,238,.1); }

.btn-dark{
  background:rgba(5,12,22,.42);
  border-color:rgba(255,255,255,.28);
  color:#fff;
  backdrop-filter:blur(8px);
}
.btn-dark:hover{ background:rgba(5,12,22,.6); }

.site-header{
  position:sticky;
  top:0;
  z-index:60;
  padding:20px 0;
  transition:padding .3s var(--ease), background .3s var(--ease);
}
.site-header::before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(5,7,12,.72);
  backdrop-filter:blur(16px);
  border-bottom:1px solid transparent;
  opacity:0;
  transition:opacity .3s var(--ease), border-color .3s var(--ease);
}
.site-header.is-stuck{ padding:12px 0; }
.site-header.is-stuck::before{ opacity:1; border-bottom-color:var(--line); }

.header-inner{
  position:relative;
  width:100%;
  max-width:var(--container);
  margin:0 auto;
  padding:0 5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.brand{ display:inline-flex; align-items:center; gap:11px; }
.brand-mark{
  width:38px; height:38px;
  display:grid; place-items:center;
  border-radius:11px;
  background:var(--grad);
  box-shadow:0 8px 22px -10px rgba(42,171,238,.9);
}
.brand-mark{ overflow:hidden; background:#000; }
.brand-mark img{ width:100%; height:100%; object-fit:cover; display:block; }
.brand-name{
  font-family:'Onest',sans-serif;
  font-weight:700;
  font-size:20px;
  letter-spacing:-.03em;
}

.main-nav{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:4px;
  padding:6px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid var(--line);
  backdrop-filter:blur(14px);
}
.main-nav a{
  font-family:'Onest',sans-serif;
  font-size:15px;
  font-weight:500;
  color:var(--text-2);
  padding:11px 24px;
  border-radius:999px;
  transition:color .2s, background .25s var(--ease);
}
.main-nav a:hover{ color:var(--text); }
.main-nav a.is-active{
  color:var(--text);
  background:rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

.header-actions{ display:flex; align-items:center; gap:12px; }

.nav-toggle{
  display:none;  width:44px; height:44px;
  border-radius:12px;
  background:rgba(255,255,255,.06);
  border:1px solid var(--line);
  cursor:pointer;
  padding:0;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.nav-toggle span{
  display:block;
  width:18px; height:2px;
  border-radius:2px;
  background:var(--text);
  transition:transform .3s var(--ease), opacity .2s;
}
.nav-toggle[aria-expanded="true"] span:first-child{ transform:translateY(3.5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:last-child{ transform:translateY(-3.5px) rotate(-45deg); }

.hero{
  padding:96px 0 0;
  text-align:center;
}
.hero-inner{ max-width:1280px; margin-inline:auto; container-type:inline-size; }

.hero-eyebrow{
  display:inline-block;
  font-family:'Onest',sans-serif;
  font-size:14px;
  font-weight:500;
  color:var(--tg-light);
  padding:8px 18px;
  border-radius:999px;
  border:1px solid rgba(86,204,242,.28);
  background:rgba(42,171,238,.09);
  margin-bottom:30px;
}

.hero-title{
  font-size:clamp(2.1rem, 3.4vw, 4.4rem);
  font-size:clamp(2.1rem, 5.8cqi, 4.4rem);
  width:fit-content;
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
  line-height:.98;
  margin-bottom:26px;
  background:linear-gradient(180deg, #ffffff 30%, #B9D9EF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  will-change:transform;
}

.hero-sub{
  max-width:720px;
  margin:0 auto;
  font-size:clamp(1.02rem, 1.3vw, 1.26rem);
  color:var(--text-2);
  line-height:1.65;
}

.hero-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:38px;
}

.hero-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:62px;
  padding:36px 28px;
  border-radius:var(--r-lg);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012));
  border:1px solid var(--line);
  backdrop-filter:blur(8px);
}
.stat{ display:flex; flex-direction:column; gap:6px; }
.stat + .stat{ border-left:1px solid var(--line); }
.stat-num{
  font-family:'Onest',sans-serif;
  font-weight:800;
  font-size:clamp(1.8rem, 2.4vw, 2.7rem);
  letter-spacing:-.04em;
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.stat-label{ font-size:14.5px; color:var(--text-3); line-height:1.4; }

.ticker{
  margin-top:78px;
  padding:18px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  overflow:hidden;
  mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}
.ticker-track{
  display:flex;
  align-items:center;
  width:max-content;
  will-change:transform;
  animation:ticker 60s linear infinite;
}
.ticker-group{
  display:flex;
  align-items:center;
  gap:26px;
  padding-right:26px;
  flex:none;
}
.ticker-track span{
  font-family:'Onest',sans-serif;
  font-size:15px;
  font-weight:500;
  color:var(--text-3);
  white-space:nowrap;
}
.ticker-track i{
  width:5px; height:5px;
  border-radius:50%;
  background:var(--tg);
  opacity:.55;
  flex:none;
}
@keyframes ticker{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

.promo-wrap{ margin-top:88px; }

.promo-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  align-items:center;
  gap:40px;
  padding:66px 64px;
  border-radius:var(--r-xl);
  background:
    radial-gradient(90% 150% at 88% 6%, rgba(42,171,238,.22), transparent 58%),
    radial-gradient(70% 120% at 0% 100%, rgba(15,127,192,.16), transparent 60%),
    linear-gradient(160deg, #0F1B2A 0%, #0A121D 55%, #070C14 100%);
  border:1px solid rgba(86,204,242,.2);
  box-shadow:0 40px 100px -60px rgba(42,171,238,.7);
}
.promo-card::after{
  content:'';
  position:absolute;
  left:64px; top:0;
  width:180px; height:1px;
  background:linear-gradient(90deg, transparent, var(--tg-light), transparent);
  opacity:.8;
}
.promo-text h2{
  font-size:clamp(2rem, 3.2vw, 3.2rem);
  margin-bottom:18px;
}
.promo-text p{
  max-width:600px;
  color:var(--text-2);
  font-size:16.5px;
  margin-bottom:34px;
}
.promo-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:34px;
}
.promo-points li{
  font-family:'Onest',sans-serif;
  font-size:14px;
  font-weight:500;
  color:var(--text-2);
  padding:9px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid var(--line);
}

.promo-visual{ position:relative; will-change:transform; }
.fractal{
  width:100%;
  max-width:440px;
  height:auto;
  margin-inline:auto;
  overflow:visible;
}
.f-spin{
  transform-box:fill-box;
  transform-origin:center;
  animation:spin 46s linear infinite;
}
.f-spin--slow{ animation-duration:60s; }
.f-spin--rev{ animation-duration:34s; animation-direction:reverse; }
.f-spin--fast{ animation-duration:24s; }
.f-spin--orbit{ animation-duration:14s; }
.f-core{
  transform-box:fill-box;
  transform-origin:center;
  animation:pulse 6s ease-in-out infinite;
}
@keyframes spin{ to{ transform:rotate(360deg); } }
@keyframes pulse{
  0%,100%{ transform:scale(.86); opacity:.55; }
  50%    { transform:scale(1.06); opacity:.95; }
}

.price-volume{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:18px 0 22px;
  padding:16px 18px;
  border-radius:var(--r-md, 16px);
  border:1px solid rgba(86,204,242,.24);
  background:
    radial-gradient(120% 160% at 0% 0%, rgba(42,171,238,.16), transparent 62%),
    rgba(255,255,255,.03);
}
.pv-row{
  display:flex;
  align-items:baseline;
  gap:10px;
  font-size:14px;
  line-height:1.35;
  color:var(--text-2);
}
.pv-row b{
  font-family:'Onest',sans-serif;
  font-size:19px;
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--tg-light, #56CCF2);
  white-space:nowrap;
  flex:none;
  min-width:74px;
}
.pv-total{
  margin-top:2px;
  padding-top:12px;
  border-top:1px solid rgba(86,204,242,.2);
  color:var(--text);
  font-weight:600;
}
.pv-total b{
  font-size:24px;
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.price-card--hl .price-volume{
  border-color:rgba(86,204,242,.4);
  background:
    radial-gradient(120% 160% at 0% 0%, rgba(42,171,238,.24), transparent 62%),
    rgba(255,255,255,.05);
}

.section{ padding:112px 0; }

.kicker{
  text-align:center;
  font-family:'Onest',sans-serif;
  font-size:15px;
  font-weight:500;
  color:var(--text-3);
  margin-bottom:14px;
}
.section-title{
  text-align:center;
  font-size:clamp(2.1rem, 3.8vw, 3.9rem);
  margin-bottom:18px;
}
.section-sub{
  text-align:center;
  max-width:620px;
  margin:0 auto 56px;
  color:var(--text-2);
}
.section-title + .service-grid,
.section-title + .why-grid,
.section-title + .step-list,
.section-title + .review-grid{ margin-top:58px; }

.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.service-card{
  position:relative;
  overflow:hidden;
  padding:40px 36px 38px;
  border-radius:var(--r-lg);
  background:var(--surface);
  border:1px solid var(--line);
  transition:border-color .35s var(--ease), transform .35s var(--ease), box-shadow .35s var(--ease);
}

.service-card:hover{ transform:translateY(-5px); }

.service-icon{
  position:relative;
  display:grid;
  place-items:center;
  width:56px; height:56px;
  border-radius:17px;
  margin-bottom:26px;
  color:var(--tg-light);
  background:rgba(42,171,238,.12);
  border:1px solid rgba(86,204,242,.24);
}
.service-icon svg{ width:26px; height:26px; }

.service-card h3{
  position:relative;
  min-height:2.12em;
  font-size:22px;
  letter-spacing:-.025em;
  margin-bottom:12px;
}
.service-card > p{
  position:relative;
  color:var(--text-2);
  font-size:15.5px;
  margin-bottom:26px;
}

.tick-list{ position:relative; display:flex; flex-direction:column; gap:11px; }
.tick-list li{
  position:relative;
  padding-left:27px;
  font-size:15px;
  color:var(--text-2);
  line-height:1.45;
}
.tick-list li::before{
  content:'';
  position:absolute;
  left:0; top:3px;
  width:17px; height:17px;
  border-radius:50%;
  background:rgba(42,171,238,.16);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2356CCF2' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17.5 19 7'/%3E%3C/svg%3E");
  background-size:11px 11px;
  background-position:center;
  background-repeat:no-repeat;
}
.tick-list li.off{ color:var(--text-3); opacity:.6; }
.tick-list li.off::before{
  background-color:rgba(255,255,255,.06);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236E8095' stroke-width='3.4' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7 7 17'/%3E%3C/svg%3E");
  background-size:9px 9px;
}

.soon-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  flex-wrap:wrap;
  margin-top:20px;
  padding:34px 38px;
  border-radius:var(--r-lg);
  background:linear-gradient(100deg, rgba(42,171,238,.1), rgba(11,17,28,.4));
  border:1px solid var(--line);
}
.badge{
  display:inline-block;
  font-family:'Onest',sans-serif;
  font-size:12.5px;
  font-weight:600;
  color:var(--tg-light);
  padding:5px 13px;
  border-radius:999px;
  background:rgba(42,171,238,.14);
  border:1px solid rgba(86,204,242,.3);
  margin-bottom:14px;
}
.soon-card h3{ font-size:22px; margin-bottom:9px; }
.soon-card p{ color:var(--text-2); font-size:15px; max-width:620px; }

.why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  overflow:hidden;
}
.why-item{
  padding:44px 38px 46px;
  background:var(--bg-2);
  transition:background .4s var(--ease);
}
.why-icon{
  display:grid;
  place-items:center;
  width:44px; height:44px;
  border-radius:13px;
  margin-bottom:20px;
  color:var(--tg-light);
  background:rgba(42,171,238,.1);
}
.why-icon svg{ width:23px; height:23px; }
.why-item h3{ font-size:20px; margin-bottom:10px; }
.why-item p{ color:var(--text-2); font-size:15px; }

.step-list{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  counter-reset:step;
}
.step{
  position:relative;
  padding:38px 32px 36px;
  border-radius:var(--r-md);
  border:1px solid var(--line);
  transition:border-color .35s var(--ease), transform .35s var(--ease), box-shadow .4s var(--ease);
}
.step:hover{ transform:translateY(-4px); }
.step::after{
  content:'';
  position:absolute;
  top:52px; right:-14px;
  width:8px; height:8px;
  border-top:1.5px solid var(--line-strong);
  border-right:1.5px solid var(--line-strong);
  transform:rotate(45deg);
}
.step:last-child::after{ display:none; }
.step-num{
  display:grid;
  place-items:center;
  width:36px; height:36px;
  border-radius:50%;
  margin-bottom:18px;
  font-family:'Onest',sans-serif;
  font-weight:700;
  font-size:15px;
  color:#04121d;
  background:var(--grad);
}
.step h3{ min-height:2.2em; font-size:19.5px; margin-bottom:9px; }
.step p{ color:var(--text-2); font-size:15px; }

.pricing{ position:relative; }
.pricing::before{
  content:'';
  position:absolute;
  top:8%; left:50%;
  width:min(1100px, 86%); height:620px;
  transform:translateX(-50%);
  background:radial-gradient(closest-side, rgba(86,204,242,.22), transparent 72%);
  filter:blur(20px);
  pointer-events:none;
}
.pricing > .container{ position:relative; }

.tabs{
  display:flex;
  width:fit-content;
  gap:4px;
  padding:6px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid var(--line);
  margin:0 auto 46px;
}
.tab-btn{
  font-family:'Onest',sans-serif;
  font-size:15px;
  white-space:nowrap;
  font-weight:600;
  color:var(--text-2);
  background:transparent;
  border:0;
  padding:12px 30px;
  border-radius:999px;
  cursor:pointer;
  transition:color .2s, background .3s var(--ease), box-shadow .3s;
}
.tab-btn:hover{ color:var(--text); }
.tab-btn.is-active{
  color:#fff;
  background:var(--grad);
  box-shadow:0 12px 30px -14px rgba(42,171,238,.9);
}

.tab-panel{ display:none; }
.tab-panel.is-active{ display:block; animation:panelIn .45s var(--ease); }
@keyframes panelIn{
  from{ opacity:0; transform:translateY(14px); }
  to{ opacity:1; transform:none; }
}

.price-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  align-items:center;
}

.price-card{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:48px 40px;
  border-radius:var(--r-lg);
  background:var(--surface);
  border:1px solid var(--line);
  transition:border-color .35s var(--ease), transform .35s var(--ease);
}
.price-card{ transition:border-color .35s var(--ease), transform .35s var(--ease), box-shadow .4s var(--ease); }
.price-card:hover{ transform:translateY(-4px); }

.price-card--hl{
  position:relative;
  padding:60px 42px;
  border-color:rgba(120,214,252,.55);

}
.price-tag{
  position:absolute;
  top:-13px; left:50%;
  transform:translateX(-50%);
  font-family:'Onest',sans-serif;
  font-size:12.5px;
  font-weight:600;
  color:#04121d;
  background:var(--tg-light);
  padding:5px 16px;
  border-radius:999px;
  white-space:nowrap;
}

.price-card h3{
  font-size:17px;
  font-weight:600;
  color:var(--tg-light);
  letter-spacing:.01em;
  margin-bottom:14px;
}
.price{
  font-family:'Onest',sans-serif;
  font-weight:800;
  font-size:clamp(2.8rem, 3.8vw, 3.9rem);
  letter-spacing:-.05em;
  line-height:1;
}
.price-note{
  color:var(--text-3);
  font-size:14px;
  margin:10px 0 26px;
  padding-bottom:26px;
  border-bottom:1px solid var(--line);
}
.price-card .tick-list{ margin-bottom:32px; }
.price-card .btn{ margin-top:auto; }

.review-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.review-card{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:42px 38px 34px;
  border-radius:var(--r-lg);
  background:var(--surface);
  border:1px solid var(--line);
  transition:border-color .35s var(--ease), transform .35s var(--ease);
}
.review-card:hover{ transform:translateY(-4px); }
.review-card--hl{ border-color:rgba(86,204,242,.4); }
.review-card--hl::before{ opacity:.28; }
.quote-mark{
  font-family:'Onest',sans-serif;
  font-size:64px;
  line-height:.6;
  color:rgba(86,204,242,.3);
  margin-bottom:8px;
}
.stars{ color:#FFC24B; font-size:15px; letter-spacing:3px; margin-bottom:16px; }
.review-card p{ color:var(--text-2); font-size:15.5px; margin-bottom:26px; }

.review-author{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:auto;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.review-author .avatar{
  display:grid;
  place-items:center;
  width:40px; height:40px;
  border-radius:50%;
  font-family:'Onest',sans-serif;
  font-weight:700;
  font-size:16px;
  color:#04121d;
  background:var(--grad);
  flex:none;
}
.review-author span:last-child{
  display:flex;
  flex-direction:column;
  font-size:13.5px;
  color:var(--text-3);
  line-height:1.35;
}
.review-author b{
  font-family:'Onest',sans-serif;
  font-weight:600;
  font-size:15px;
  color:var(--text);
}

.cta-wrap{ padding-top:20px; padding-bottom:20px; }
.cta-band{
  position:relative;
  overflow:hidden;
  text-align:center;
  padding:110px 40px;
  border-radius:var(--r-xl);
  background:
    radial-gradient(90% 130% at 50% 0%, rgba(86,204,242,.4), transparent 60%),
    linear-gradient(135deg, #1596D8 0%, #0F7FC0 40%, #0A3D5F 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 50px 110px -60px rgba(42,171,238,.9);
}
.cta-shape{
  position:absolute;
  top:50%;
  width:280px; height:280px;
  margin-top:-140px;
  background:
    radial-gradient(closest-side, rgba(255,255,255,.55), transparent 70%);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 0c4 27 19 46 50 50-31 4-46 23-50 50-4-27-19-46-50-50 31-4 46-23 50-50z' fill='%23000'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 0c4 27 19 46 50 50-31 4-46 23-50 50-4-27-19-46-50-50 31-4 46-23 50-50z' fill='%23000'/%3E%3C/svg%3E");
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  opacity:.55;
  will-change:transform;
}
.cta-shape--l{ left:-70px; }
.cta-shape--r{ right:-70px; width:220px; height:220px; margin-top:-110px; }

.cta-kicker{
  position:relative;
  font-family:'Onest',sans-serif;
  font-size:14px;
  font-weight:500;
  color:rgba(255,255,255,.75);
  margin-bottom:14px;
}
.cta-band h2{
  position:relative;
  font-size:clamp(2rem, 3.5vw, 3.6rem);
  max-width:820px;
  margin:0 auto;
}
.cta-band .hero-actions{ position:relative; }

.contact-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:start;
}
.contact-text .kicker,
.contact-text .section-title{ text-align:left; }
.contact-text .section-title{ margin-bottom:18px; }
.contact-text > p{ color:var(--text-2); max-width:440px; margin-bottom:30px; }

.contact-form{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:46px;
  border-radius:var(--r-lg);
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:var(--shadow-card);
}
.contact-form label{
  display:flex;
  flex-direction:column;
  gap:9px;
  font-family:'Onest',sans-serif;
  font-size:14px;
  font-weight:500;
  color:var(--text-2);
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  font-family:'Inter',sans-serif;
  font-size:15px;
  color:var(--text);
  background:rgba(255,255,255,.035);
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  padding:14px 16px;
  transition:border-color .25s, background .25s;
  resize:vertical;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder{ color:var(--text-3); }
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  outline:none;
  border-color:var(--tg);
  background:rgba(42,171,238,.07);
}
.contact-form select{ appearance:none; cursor:pointer; }
.contact-form select option{ background:#0b111c; color:var(--text); }
.contact-form input.is-invalid{ border-color:#F2555A; background:rgba(242,85,90,.07); }

.form-note{ font-size:13px; color:var(--text-3); text-align:center; }
.form-note.is-ok{ color:var(--tg-light); }

.site-footer{
  border-top:1px solid var(--line);
  padding-top:72px;
  background:linear-gradient(180deg, transparent, rgba(42,171,238,.05));
}
.footer-inner{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:44px;
  padding-bottom:56px;
}
.footer-brand .brand{ margin-bottom:18px; }
.footer-brand p{ color:var(--text-3); font-size:14.5px; max-width:340px; }
.footer-col h4{
  font-size:15px;
  font-weight:600;
  margin-bottom:18px;
}
.footer-col a{
  display:block;
  color:var(--text-3);
  font-size:14.5px;
  padding:6px 0;
  transition:color .2s;
}
.footer-col a:hover{ color:var(--tg-light); }

.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  padding-top:24px;
  padding-bottom:32px;
  border-top:1px solid var(--line);
  color:var(--text-3);
  font-size:13.5px;
}

.reveal{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .7s var(--ease), transform .7s var(--ease);
}
.reveal.is-visible{ opacity:1; transform:none; }

@media (min-width:1500px){
  .service-grid, .why-grid, .review-grid, .price-grid, .step-list{ gap:24px; }
  .section{ padding:130px 0; }
}

@media (max-width:1080px){
  .service-grid,
  .why-grid,
  .review-grid,
  .price-grid{ grid-template-columns:repeat(2,1fr); }
  .step-list{ grid-template-columns:repeat(2,1fr); }
  .step::after{ display:none; }
  .price-card--hl{ padding:44px 34px; }
  .footer-inner{ grid-template-columns:1fr 1fr; }
}

@media (max-width:900px){
  .glow{ filter:blur(56px); }
  .glow--1{
    width:118vw; height:46vh;
    top:-8vh; left:50%;
    margin-left:-59vw;
    background:radial-gradient(closest-side, rgba(52,183,250,.55), rgba(24,120,190,.18) 46%, transparent 72%);
  }
  .glow--2{
    width:80vw; height:38vh;
    top:52vh; left:-26vw;
    background:radial-gradient(closest-side, rgba(86,204,242,.16), transparent 70%);
  }
  .glow--3{
    width:86vw; height:40vh;
    top:82vh; right:-30vw;
    background:radial-gradient(closest-side, rgba(15,127,192,.18), transparent 70%);
  }
  .grid-lines{ background-size:52px 52px; }

  .main-nav{
    position:fixed;
    left:16px; right:16px;
    top:78px;
    transform:none;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
    padding:12px;
    border-radius:var(--r-lg);
    background:rgba(8,13,22,.96);
    backdrop-filter:blur(20px);
    box-shadow:var(--shadow-card);
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px);
    transition:opacity .28s var(--ease), transform .28s var(--ease), visibility .28s;
  }
  .main-nav.is-open{ opacity:1; visibility:visible; transform:none; }
  .main-nav a{ padding:14px 18px; font-size:16px; }
  .nav-toggle{ display:flex; }
  .header-actions .btn-white{ display:none; }

  .hero{ padding-top:56px; }
  .hero-stats{ grid-template-columns:repeat(2,1fr); gap:26px 16px; }
  .stat:nth-child(3){ border-left:0; }
  .stat + .stat{ padding-left:16px; }
  .stat:nth-child(odd){ padding-left:0; }

  .promo-card{ grid-template-columns:1fr; padding:48px 36px; text-align:left; }
  .promo-card::after{ left:36px; }
  .promo-visual{ display:block; max-width:300px; margin:8px auto 0; }

  .contact-inner{ grid-template-columns:1fr; gap:40px; }
  .section{ padding:96px 0; }
}

@media (max-width:640px){
  .container{ padding:0 18px; }
  .header-inner{ padding:0 18px; }
  .service-grid,
  .why-grid,
  .review-grid,
  .price-grid,
  .step-list{ grid-template-columns:1fr; }
  .why-item{ padding:30px 26px; }
  .hero-actions .btn{ width:100%; }
  .tabs{ width:100%; overflow-x:auto; justify-content:flex-start; }
  .tab-btn{ padding:12px 22px; font-size:14px; }
  .cta-band{ padding:64px 24px; }
  .cta-shape{ display:none; }
  .contact-form{ padding:28px 22px; }
  .footer-inner{ grid-template-columns:1fr; gap:32px; }
  .ticker{ margin-top:64px; }
  .promo-card{ padding:38px 24px; }
  .promo-card::after{ left:24px; width:120px; }
  .promo-points li{ font-size:13px; padding:8px 14px; }
}

@media (max-width:640px){
  .promo-visual{ max-width:230px !important; }
  .glow{ filter:blur(48px); }
  .glow--1{
    width:112vw; height:38vh;
    top:-4vh;
    margin-left:-56vw;
    background:radial-gradient(closest-side, rgba(52,183,250,.5), rgba(24,120,190,.14) 44%, transparent 70%);
  }
  .glow--2{ opacity:.7; }
  .glow--3{ opacity:.7; }
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  .reveal{ opacity:1; transform:none; }
}

.price-card--hl .price-note{ color:rgba(255,255,255,.75); border-bottom-color:rgba(255,255,255,.2); }
.price-card--hl .tick-list li{ color:rgba(255,255,255,.92); }
.price-card--hl .tick-list li::before{ background-color:rgba(255,255,255,.24); }
.price-card--hl h3{ color:#BFE7FB; }

.service-card,
.price-card,
.review-card,
.step,
.contact-form,
.soon-card{
  background:var(--surface);
  box-shadow:none;
}
.hero-stats{
  background:rgba(255,255,255,.028);
}

.service-card::before,
.price-card::before,
.review-card::before,
.step::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    radial-gradient(135% 125% at 50% 112%, #6FD3F7 0%, #2AABEE 24%, rgba(23,124,190,.72) 46%, rgba(12,66,105,.34) 66%, transparent 84%),
    linear-gradient(180deg, transparent 30%, rgba(42,171,238,.16) 100%);
  opacity:0;
  transition:opacity .45s var(--ease);
  pointer-events:none;
  z-index:0;
}
.service-card > *,
.price-card > *,
.review-card > *,
.step > *{ position:relative; z-index:1; }
.price-card > .price-tag{ z-index:2; }

.service-card:hover::before,
.review-card:hover::before,
.step:hover::before{ opacity:1; }

.service-card:hover,
.review-card:hover,
.step:hover{
  border-color:var(--tg-light);
  box-shadow:0 0 44px -12px rgba(42,171,238,.65), 0 26px 60px -34px rgba(0,0,0,.9);
}

.service-card:hover > p,
.service-card:hover .tick-list li,
.review-card:hover p,
.step:hover p{ color:rgba(255,255,255,.94); }
.service-card:hover .tick-list li::before,
.price-card--hl .tick-list li::before{ background-color:rgba(255,255,255,.3); }
.service-card:hover .service-icon{
  color:#fff;
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.34);
}
.review-card:hover .review-author span:last-child{ color:rgba(255,255,255,.78); }

.price-card--hl::before{ opacity:1; }
.price-card--hl{
  border-color:var(--tg-light);
  background:var(--surface);
  box-shadow:0 0 60px -16px rgba(42,171,238,.6);
}
.price-card:not(.price-card--hl):hover::before{ opacity:.55; }
.price-card:not(.price-card--hl):hover{ border-color:rgba(86,204,242,.6); }

.why-item{ position:relative; }
.why-item:hover{
  background:
    radial-gradient(120% 120% at 50% 130%, rgba(42,171,238,.32), transparent 66%),
    var(--surface-2);
}
.why-item:hover .why-icon{ color:#fff; background:rgba(255,255,255,.16); }

.price-card > .price-tag{
  position:absolute;
  top:-13px; left:50%;
  transform:translateX(-50%);
  width:auto;
  z-index:2;
}

@media (hover:none){
  .service-card::before,
  .review-card::before,
  .step::before{ opacity:.16; }
  .service-card:active::before,
  .review-card:active::before,
  .step:active::before{ opacity:1; }
  .service-card:active,
  .review-card:active,
  .step:active{
    border-color:var(--tg-light);
    box-shadow:0 0 40px -14px rgba(42,171,238,.6);
  }
  .service-card:hover, .review-card:hover, .step:hover, .price-card:hover{ transform:none; }
}

.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.service-card h3 .badge { vertical-align: middle; margin-left: 6px; font-size: 11px; }

.hero-title .ht-line{ display:block; white-space:nowrap; }
@media (max-width:900px){
  .hero-title .ht-line{ display:inline; white-space:normal; }
  .hero-title{ font-size:clamp(2.3rem, 10vw, 3rem); }
}

.faq-list{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; align-items:start; }
@media (max-width:900px){ .faq-list{ grid-template-columns:1fr; } }
.faq-item{
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:var(--surface);
  transition:border-color .3s var(--ease), background .3s var(--ease);
}
.faq-item[open]{ border-color:rgba(86,204,242,.35); background:var(--surface-2); }
.faq-item summary{
  list-style:none;
  cursor:pointer;
  padding:22px 60px 22px 26px;
  font-family:'Onest', sans-serif;
  font-weight:600;
  font-size:clamp(1rem, 1.2vw, 1.15rem);
  position:relative;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary::after{
  content:"";
  position:absolute;
  right:26px;
  top:50%;
  width:10px;
  height:10px;
  border-right:2px solid var(--tg-light);
  border-bottom:2px solid var(--tg-light);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .3s var(--ease);
}
.faq-item[open] summary::after{ transform:translateY(-30%) rotate(-135deg); }
.faq-item p{ margin:0; padding:0 26px 24px; color:var(--text-2); line-height:1.65; }
@media (max-width:640px){
  .faq-item summary{ padding:18px 48px 18px 18px; }
  .faq-item summary::after{ right:20px; }
  .faq-item p{ padding:0 18px 20px; }
}
.faq .section-title{ margin-bottom:48px; }
.main-nav a{ white-space:nowrap; }
@media (max-width:1180px) and (min-width:901px){
  .main-nav a{ padding-left:14px; padding-right:14px; }
}
