/* ============================================================
   SimbaWeb — оформление «Aqua Glass» (стиль референса PRYDA)
   Тёмно-синий многослойный фон + cyan-glow, стеклянные панели,
   слоёные пластины, глянцевые кнопки-пилюли.
   Разметка и JS не менялись — только визуальный слой.
   Шрифты: Manrope (интерфейс и заголовки).
   ============================================================ */

:root {
  /* Фон */
  --bg-900:#04172d; --bg-800:#072347; --bg-700:#0b3b73; --bg-600:#114d88;
  /* Акценты */
  --cy-1:#47d8ff; --cy-2:#67f1ff; --cy-3:#87ffff; --cy-4:#7cc8ff;
  /* Стекло (осветлено — вариант B) */
  --glass:rgba(140,210,255,.17);
  --glass-strong:rgba(160,225,255,.26);
  --glass-border:rgba(170,235,255,.46);
  --glass-hi:rgba(255,255,255,.42);
  /* Текст */
  --text:#eaf6ff; --text-soft:#a9c6e4; --text-dim:#7c9cc0;
  /* Свечение */
  --glow-cy:rgba(71,216,255,.45); --glow-blue:rgba(28,120,220,.35);

  --font-display:'Manrope','Inter',ui-sans-serif,system-ui,sans-serif;
  --font-ui:'Manrope','Inter',ui-sans-serif,system-ui,sans-serif;

  --radius-btn:100px;
  --radius-card:28px;
  --radius-img:32px;
  --radius-pill:1000px;

  --ease:cubic-bezier(.22,1,.36,1);
  /* слоёная тень «стопка стекла» + свечение */
  --stack:9px 13px 0 -5px rgba(135,210,255,.06), 20px 28px 0 -12px rgba(120,200,255,.038);
  --glass-shadow:
    var(--stack),
    0 24px 60px -22px rgba(2,20,45,.9),
    0 0 44px -6px var(--glow-cy),
    inset 0 1px 0 var(--glass-hi),
    inset 0 -22px 48px -30px rgba(71,216,255,.5);
}

* { margin:0; padding:0; box-sizing:border-box; }

html { scroll-behavior:smooth; }

/* Якорные секции не ныряют под липкую навигацию */
section[id] { scroll-margin-top: 96px; }

body {
  font-family:var(--font-ui);
  background:var(--bg-900);
  color:var(--text);
  font-size:16px;
  line-height:1.5;
  overflow-x:hidden;
  position:relative;
  -webkit-font-smoothing:antialiased;
}

/* ===== Многослойный фон ===== */
body::before {
  content:"";
  position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:
    radial-gradient(45% 32% at 50% 0%, rgba(103,241,255,.42) 0%, rgba(71,216,255,.16) 40%, transparent 72%),
    radial-gradient(38% 40% at 82% 16%, rgba(71,216,255,.16) 0%, transparent 65%),
    radial-gradient(42% 45% at 10% 40%, rgba(28,120,220,.24) 0%, transparent 62%),
    radial-gradient(50% 42% at 90% 78%, rgba(71,216,255,.12) 0%, transparent 60%),
    radial-gradient(120% 72% at 50% -8%, #114d88 0%, #0b3b73 24%, #072347 55%, #04172d 100%);
}
body::after {
  content:"";
  position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(115deg, transparent 46%, rgba(135,255,255,.045) 49%, transparent 52%),
    linear-gradient(115deg, transparent 63%, rgba(124,200,255,.04) 66%, transparent 69%);
}

.container { max-width:1200px; margin:0 auto; padding:0 24px; position:relative; z-index:1; }
.container--narrow { max-width:820px; }

h2 {
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(1.9rem, 4vw, 3rem);
  line-height:1.1;
  letter-spacing:-.02em;
  color:#fff;
  text-shadow:0 0 24px rgba(103,241,255,.35);
  margin-bottom:20px;
}
h3 { font-weight:700; font-size:1.25rem; letter-spacing:-.01em; color:#fff; }

/* ===== Появление при скролле (JS-хук) — до компонентов, чтобы :hover перекрывал ===== */
.reveal { opacity:0; transform:translateY(20px); transition:opacity .6s ease, transform .6s ease; }
.reveal.visible { opacity:1; transform:none; }

/* ===== Кнопки — глянцевые пилюли ===== */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:14px 28px;
  border-radius:var(--radius-btn);
  font-weight:600; font-size:.94rem;
  text-decoration:none; border:none; cursor:pointer;
  font-family:var(--font-ui);
  position:relative; overflow:hidden;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.btn--primary {
  color:#032033;
  background:linear-gradient(180deg,var(--cy-3) 0%,var(--cy-1) 48%,var(--cy-4) 100%);
  box-shadow:
    0 12px 30px -8px var(--glow-cy),
    0 0 22px -2px rgba(103,241,255,.5),
    inset 0 1px 0 rgba(255,255,255,.85),
    inset 0 -6px 14px -6px rgba(2,40,70,.5);
}
.btn--primary:hover {
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 18px 40px -8px var(--glow-cy),0 0 40px 0 rgba(103,241,255,.7),inset 0 1px 0 rgba(255,255,255,.9);
}
.btn--ghost, .btn--ghost-light {
  color:var(--text);
  background:linear-gradient(180deg,var(--glass-strong),var(--glass));
  border:1px solid var(--glass-border);
  box-shadow:0 10px 26px -12px rgba(2,20,45,.8),0 0 20px -6px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
}
.btn--ghost:hover, .btn--ghost-light:hover {
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 14px 32px -10px rgba(2,20,45,.9),0 0 34px -4px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
}
.btn--small { padding:11px 20px; font-size:.86rem; }
.btn--full { width:100%; }

/* ===== Бейджи-чипы ===== */
.chip {
  display:inline-block;
  padding:6px 14px;
  border-radius:var(--radius-pill);
  font-size:.72rem; font-weight:600;
  letter-spacing:.04em;
  color:var(--cy-3);
  background:rgba(71,216,255,.1);
  border:1px solid rgba(71,216,255,.28);
  box-shadow:0 0 14px rgba(71,216,255,.2);
}
.chip--teal   { color:var(--cy-3);   background:rgba(71,216,255,.12); border-color:rgba(71,216,255,.34); }
.chip--amber  { color:#032033; background:linear-gradient(180deg,var(--cy-3),var(--cy-1)); border-color:transparent; box-shadow:0 0 18px var(--glow-cy); }
.chip--lavender { color:var(--cy-2); background:rgba(124,200,255,.12); border-color:rgba(124,200,255,.34); }
.chip--outline { color:var(--text-soft); background:var(--glass); border:1px solid var(--glass-border); }

/* ===== Верхний баннер ===== */
.banner {
  text-align:center;
  font-size:.85rem; font-weight:500;
  color:var(--text-soft);
  padding:11px 16px;
  background:rgba(4,20,40,.5);
  border-bottom:1px solid rgba(71,216,255,.14);
  position:relative; z-index:5;
}

/* ===== Навигация — стеклянная пилюля ===== */
.nav { position:sticky; top:14px; z-index:100; padding:0 24px; margin-top:14px; }
.nav__inner {
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:11px 12px 11px 22px;
  border-radius:var(--radius-btn);
  background:linear-gradient(160deg,var(--glass-strong),var(--glass));
  border:1px solid var(--glass-border);
  backdrop-filter:blur(20px) saturate(140%); -webkit-backdrop-filter:blur(20px) saturate(140%);
  box-shadow:0 16px 40px -20px rgba(2,20,45,.8),0 0 34px -8px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
  transition:box-shadow .25s ease;
}
.nav.scrolled .nav__inner {
  box-shadow:0 20px 50px -18px rgba(2,20,45,.95),0 0 44px -4px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
}
.nav__logo {
  font-family:var(--font-display); font-weight:800; font-size:1.3rem;
  color:#fff; text-decoration:none; letter-spacing:-.02em;
  text-shadow:0 0 18px rgba(103,241,255,.55);
}
.nav__logo span { color:var(--cy-2); font-style:normal; }
.nav__links { display:flex; gap:6px; }
.nav__links a {
  color:var(--text-soft); text-decoration:none;
  font-size:.9rem; font-weight:500;
  padding:9px 15px; border-radius:100px;
  transition:color .3s var(--ease), background .3s var(--ease), box-shadow .3s var(--ease);
}
.nav__links a:hover {
  color:#fff;
  background:linear-gradient(180deg,rgba(103,241,255,.2),rgba(71,216,255,.07));
  box-shadow:inset 0 1px 0 var(--glass-hi),0 0 18px -2px var(--glow-cy);
}
.nav__burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px; }
.nav__burger span { width:22px; height:2px; background:var(--cy-3); border-radius:2px; box-shadow:0 0 8px var(--cy-2); }

/* ===== Герой ===== */
.hero { position:relative; text-align:center; padding:96px 0 104px; overflow:hidden; }
.hero__badge {
  display:inline-block;
  padding:7px 16px; border-radius:var(--radius-pill);
  font-size:.72rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase;
  color:var(--cy-3);
  background:var(--glass); border:1px solid var(--glass-border);
  box-shadow:0 0 20px rgba(71,216,255,.25),inset 0 1px 0 var(--glass-hi);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  margin-bottom:32px;
}
.hero h1 {
  font-family:var(--font-display); font-weight:700;
  font-size:clamp(2.5rem, 7vw, 5.4rem);
  line-height:1.04; letter-spacing:-.03em;
  color:#fff; text-shadow:0 0 30px rgba(103,241,255,.3);
}
.hero h1 .tone { color:var(--text-soft); text-shadow:none; }
.hero h1 .underlined { position:relative; white-space:nowrap;
  background:linear-gradient(120deg,var(--cy-3),var(--cy-1) 60%,var(--cy-4));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 26px rgba(103,241,255,.5));
}
.hero h1 .underlined::after {
  content:''; position:absolute; left:-1%; right:-1%; bottom:.02em; height:.1em;
  background:linear-gradient(90deg,transparent,var(--cy-2),transparent);
  border-radius:var(--radius-pill);
  box-shadow:0 0 18px var(--glow-cy);
  -webkit-text-fill-color:initial;
}
.hero__subtitle {
  max-width:500px; margin:30px auto 38px;
  color:var(--text-soft); font-size:1.12rem; font-weight:300; line-height:1.5;
}
.hero__actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* Декоративные орбы — мягкое голубое свечение + «эквалайзер» */
.orb { position:absolute; border-radius:var(--radius-pill); pointer-events:none; }
.orb--amber {
  width:180px; height:180px; left:-30px; top:30%;
  display:flex; align-items:center; justify-content:center; gap:7px;
  background:radial-gradient(circle at 40% 35%,rgba(103,241,255,.22),rgba(28,120,220,.12) 70%,transparent);
  border:1px solid rgba(150,225,255,.22);
  box-shadow:0 0 70px -6px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  animation:float 7s ease-in-out infinite;
}
.orb--amber i { display:block; width:9px; border-radius:var(--radius-pill);
  background:linear-gradient(180deg,var(--cy-3),var(--cy-1)); box-shadow:0 0 12px var(--glow-cy); }
.orb--amber i:nth-child(1){height:32px}
.orb--amber i:nth-child(2){height:68px}
.orb--amber i:nth-child(3){height:46px}
.orb--amber i:nth-child(4){height:82px}
.orb--amber i:nth-child(5){height:38px}
.orb--teal {
  width:150px; height:150px; right:-20px; top:54%;
  background:radial-gradient(circle at 40% 35%,rgba(71,216,255,.2),rgba(28,120,220,.1) 70%,transparent);
  border:1px solid rgba(150,225,255,.2);
  box-shadow:0 0 60px -6px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  animation:float 9s ease-in-out infinite reverse;
}
.orb--teal::before { content:''; position:absolute; inset:26px;
  border:2px dashed rgba(135,255,255,.5); border-radius:var(--radius-pill); }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-18px)} }

/* ===== Слоёные стеклянные пластины, торчащие из-за секций ===== */
.hero, #services, #portfolio, #pricing, #contact { position:relative; }
.hero::before, #services::before, #portfolio::before, #pricing::before, #contact::before {
  content:""; position:absolute; z-index:0; pointer-events:none;
  border-radius:30px;
  background:linear-gradient(155deg,rgba(150,220,255,.13),rgba(120,200,255,.03) 60%,transparent);
  border:1px solid rgba(160,230,255,.22);
  box-shadow:0 0 60px -6px var(--glow-cy),0 22px 55px -24px rgba(2,20,45,.85),
    inset 0 1px 0 rgba(255,255,255,.34),inset 0 -18px 40px -26px rgba(71,216,255,.5);
  backdrop-filter:blur(7px) saturate(130%); -webkit-backdrop-filter:blur(7px) saturate(130%);
  animation:sheetFloat 9s ease-in-out infinite;
}
.hero::before     { left:-60px;  top:80px;    width:230px; height:210px; --rot:-4deg; border-radius:44px 30px 46px 30px; }
#services::before { right:-56px; top:70px;    width:160px; height:280px; --rot:3deg;  border-radius:34px 44px 30px 44px; animation-delay:-2s; }
#portfolio::before{ left:-60px;  top:100px;   width:150px; height:290px; --rot:-3deg; border-radius:44px 30px 44px 34px; animation-delay:-4s; }
#pricing::before  { right:-58px; bottom:40px;  width:150px; height:270px; --rot:3.5deg; animation-delay:-3s; }
#contact::before  { right:-54px; bottom:48px;  width:170px; height:210px; --rot:4deg;  border-radius:34px 46px 30px 44px; animation-delay:-1s; }
@keyframes sheetFloat { 0%,100%{transform:translateY(0) rotate(var(--rot,0deg))} 50%{transform:translateY(-14px) rotate(var(--rot,0deg))} }

/* ===== Полоса фактов ===== */
.strip { padding-bottom:64px; padding-top:8px; }
.strip__inner { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.strip__item {
  text-align:center; padding:26px 30px;
  border-radius:var(--radius-card);
  background:linear-gradient(160deg,var(--glass-strong) 0%,var(--glass) 46%,rgba(80,160,235,.05) 100%);
  border:1px solid var(--glass-border);
  backdrop-filter:blur(18px) saturate(140%); -webkit-backdrop-filter:blur(18px) saturate(140%);
  box-shadow:var(--glass-shadow);
}
.strip__item strong { display:block; font-family:var(--font-display); font-weight:800;
  font-size:1.9rem; letter-spacing:-.02em; color:#fff; text-shadow:0 0 18px rgba(103,241,255,.5); margin-bottom:5px; }
.strip__item span { color:var(--text-dim); font-size:.86rem; }

/* ===== Секции ===== */
.section { padding:72px 0; position:relative; }
.section--dark::after {
  content:""; position:absolute; inset:24px 0; z-index:0; pointer-events:none;
  border-radius:40px;
  background:radial-gradient(60% 60% at 50% 0%,rgba(28,120,220,.12),transparent 70%);
}
.section__label {
  display:inline-block; padding:7px 16px; border-radius:var(--radius-pill);
  font-size:.72rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase;
  color:var(--cy-3);
  background:var(--glass); border:1px solid var(--glass-border);
  box-shadow:0 0 20px rgba(71,216,255,.25),inset 0 1px 0 var(--glass-hi);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  margin-bottom:22px;
}
.section__sub { color:var(--text-soft); max-width:560px; margin-bottom:44px;
  font-size:1.02rem; font-weight:300; line-height:1.5; }

/* ===== Универсальная стеклянная поверхность ===== */
.card, .step, .work, .price-card, .faq {
  position:relative;
  background:linear-gradient(160deg,var(--glass-strong) 0%,var(--glass) 46%,rgba(80,160,235,.05) 100%);
  border:1px solid var(--glass-border);
  backdrop-filter:blur(20px) saturate(140%); -webkit-backdrop-filter:blur(20px) saturate(140%);
  box-shadow:var(--glass-shadow);
}

/* ===== Услуги ===== */
.cards { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.card { border-radius:var(--radius-card); padding:30px;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease); overflow:hidden; }
.card:hover {
  transform:translateY(-7px);
  box-shadow:var(--stack),0 34px 70px -24px rgba(2,20,45,.95),0 0 60px -4px var(--glow-cy),
    inset 0 1px 0 var(--glass-hi),inset 0 -22px 48px -30px rgba(71,216,255,.6);
}
.card .chip { margin-bottom:18px; }
.card h3 { font-size:1.3rem; margin-bottom:10px; }
.card p { color:var(--text-soft); font-size:.95rem; font-weight:300; line-height:1.5; margin-bottom:18px; }
.card ul { list-style:none; display:flex; flex-wrap:wrap; gap:8px; }
.card li {
  font-size:.78rem; font-weight:500; color:var(--text-soft);
  border:1px solid rgba(150,225,255,.2); border-radius:var(--radius-pill);
  padding:6px 13px; background:var(--glass);
}

/* ===== Этапы ===== */
.steps { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; position:relative; z-index:1; }
.step { border-radius:var(--radius-card); padding:28px;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease); overflow:hidden; }
.step:hover { transform:translateY(-6px);
  box-shadow:var(--stack),0 30px 64px -22px rgba(2,20,45,.95),0 0 54px -6px var(--glow-cy),inset 0 1px 0 var(--glass-hi); }
.step__num {
  display:inline-flex; align-items:center; justify-content:center;
  width:48px; height:48px; border-radius:var(--radius-pill);
  font-family:var(--font-display); font-weight:800; font-size:1.4rem;
  color:#032033; background:linear-gradient(180deg,var(--cy-3),var(--cy-1));
  box-shadow:0 0 22px var(--glow-cy),inset 0 1px 0 rgba(255,255,255,.7);
  margin-bottom:20px;
}
.step:nth-child(even) .step__num { background:linear-gradient(180deg,var(--cy-2),var(--cy-4)); }
.step h3 { color:#fff; font-size:1.1rem; margin-bottom:10px; }
.step p { color:var(--text-soft); font-size:.9rem; font-weight:300; line-height:1.5; }

/* ===== Портфолио ===== */
.portfolio { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.work { border-radius:var(--radius-card); overflow:hidden; text-decoration:none; color:var(--text);
  transition:transform .4s var(--ease), box-shadow .4s var(--ease); }
.work:hover { transform:translateY(-7px);
  box-shadow:var(--stack),0 34px 70px -24px rgba(2,20,45,.95),0 0 60px -4px var(--glow-cy),inset 0 1px 0 var(--glass-hi); }
.work__preview { position:relative; height:160px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.work__preview--1 { background:linear-gradient(135deg,#6b4a2f,#0b3b73 120%); }
.work__preview--2 { background:linear-gradient(135deg,#0a1730,#114d88); }
.work__preview--3 { background:linear-gradient(135deg,#3a2350,#0b3b73); }
.work__preview--4 { background:linear-gradient(135deg,#08324f,#0b3b73); }
.work__preview::before, .work__preview::after { content:''; position:absolute; border-radius:var(--radius-pill); filter:blur(2px); }
.work__preview--1::before { width:130px; height:130px; background:radial-gradient(circle,rgba(103,241,255,.5),transparent 70%); left:-30px; bottom:-40px; }
.work__preview--1::after  { width:70px;  height:70px;  background:radial-gradient(circle,rgba(124,200,255,.5),transparent 70%); right:20px; top:-18px; }
.work__preview--2::before { width:130px; height:130px; background:radial-gradient(circle,rgba(71,216,255,.5),transparent 70%); right:-30px; bottom:-42px; }
.work__preview--2::after  { width:64px;  height:64px;  background:radial-gradient(circle,rgba(135,255,255,.45),transparent 70%); left:24px; top:-14px; }
.work__preview--3::before { width:130px; height:130px; background:radial-gradient(circle,rgba(135,255,255,.4),transparent 70%); left:-34px; top:-40px; }
.work__preview--3::after  { width:66px;  height:66px;  background:radial-gradient(circle,rgba(71,216,255,.5),transparent 70%); right:22px; bottom:-16px; }
.work__preview--4::before { width:130px; height:130px; background:radial-gradient(circle,rgba(103,241,255,.55),transparent 70%); right:-32px; top:-40px; }
.work__preview--4::after  { width:68px;  height:68px;  background:radial-gradient(circle,rgba(71,216,255,.5),transparent 70%); left:22px; bottom:-18px; }
.work__preview span {
  position:relative; z-index:1;
  font-family:var(--font-display); font-weight:700; font-size:1.35rem; letter-spacing:-.02em;
  color:#fff; text-shadow:0 2px 16px rgba(2,20,45,.6),0 0 20px rgba(103,241,255,.4);
}
.work__body { padding:22px 24px 26px; }
.work__body .chip { margin-bottom:14px; }
.work h3 { font-size:1.1rem; margin-bottom:6px; }
.work p { color:var(--text-soft); font-size:.88rem; font-weight:300; line-height:1.45; }

/* ===== Лента-приглашение ===== */
.band {
  position:relative; text-align:center;
  margin:0 24px; padding:56px 24px; border-radius:var(--radius-card);
  background:linear-gradient(160deg,rgba(103,241,255,.14),var(--glass) 60%,rgba(80,160,235,.06));
  border:1px solid rgba(150,235,255,.4);
  backdrop-filter:blur(20px) saturate(150%); -webkit-backdrop-filter:blur(20px) saturate(150%);
  box-shadow:var(--stack),0 30px 66px -22px rgba(2,20,45,.9),0 0 70px -4px rgba(103,241,255,.55),inset 0 1px 0 var(--glass-hi);
  overflow:hidden;
}
.band h2 { margin-bottom:14px; }
.band h2 em { font-style:normal; background:linear-gradient(120deg,var(--cy-3),var(--cy-1));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.band p { color:var(--text-soft); max-width:520px; margin:0 auto 30px; font-size:1rem; font-weight:300; line-height:1.5; }

/* ===== Цены ===== */
.pricing { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch; }
.price-card { border-radius:var(--radius-card); padding:34px 30px; display:flex; flex-direction:column; overflow:hidden;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease); }
.price-card:hover { transform:translateY(-6px);
  box-shadow:var(--stack),0 32px 66px -22px rgba(2,20,45,.95),0 0 58px -6px var(--glow-cy),inset 0 1px 0 var(--glass-hi); }
.price-card--featured {
  border-color:rgba(150,235,255,.5);
  box-shadow:var(--stack),0 34px 70px -22px rgba(2,20,45,.95),0 0 66px -2px rgba(103,241,255,.6),
    inset 0 1px 0 var(--glass-hi),inset 0 -22px 48px -30px rgba(71,216,255,.7);
}
.price-card .chip { align-self:flex-start; margin-bottom:20px; }
.price-card h3 { font-size:1.18rem; margin-bottom:8px; }
.price-card__price { font-family:var(--font-display); font-weight:800;
  font-size:clamp(1.8rem,3vw,2.4rem); letter-spacing:-.02em; color:#fff;
  text-shadow:0 0 20px rgba(103,241,255,.4); margin-bottom:24px; }
.price-card ul { list-style:none; margin-bottom:28px; flex:1; }
.price-card li { font-size:.92rem; color:var(--text-soft); font-weight:300;
  padding:10px 0 10px 26px; position:relative; border-bottom:1px solid rgba(150,225,255,.14); }
.price-card li::before { content:'✓'; position:absolute; left:2px; color:var(--cy-2); font-weight:700;
  text-shadow:0 0 10px var(--glow-cy); }
.pricing__note { color:var(--text-dim); margin-top:36px; font-size:.92rem; font-weight:300; text-align:center; }

/* ===== FAQ ===== */
.faq { border-radius:20px; margin-bottom:12px; overflow:hidden; }
.faq summary {
  padding:20px 56px 20px 26px; cursor:pointer;
  font-weight:600; font-size:1rem; color:#fff; list-style:none; position:relative;
}
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after {
  content:'+'; position:absolute; right:22px; top:50%; transform:translateY(-50%);
  width:26px; height:26px; display:flex; align-items:center; justify-content:center;
  border-radius:var(--radius-pill);
  color:var(--cy-3); background:rgba(71,216,255,.12); border:1px solid rgba(71,216,255,.35);
  box-shadow:0 0 14px rgba(71,216,255,.25);
  font-size:1.05rem; font-weight:400; transition:transform .3s var(--ease);
}
.faq[open] summary::after { transform:translateY(-50%) rotate(45deg); }
.faq p { padding:0 26px 22px; color:var(--text-soft); font-size:.92rem; font-weight:300; line-height:1.5; }

/* ===== Контакты ===== */
.section--cta { text-align:center; }
.cta__subtitle { color:var(--text-soft); margin:0 auto 44px; max-width:560px; font-size:1.02rem; font-weight:300; }

/* Карточки прямой связи (без формы — сайт не собирает персональные данные) */
.contacts {
  max-width:720px; margin:0 auto; position:relative; z-index:1;
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.contact-card {
  display:flex; flex-direction:column; align-items:center; gap:8px;
  padding:30px 22px; text-decoration:none;
  border-radius:var(--radius-card);
  background:linear-gradient(160deg,var(--glass-strong),var(--glass));
  border:1px solid var(--glass-border);
  backdrop-filter:blur(20px) saturate(140%); -webkit-backdrop-filter:blur(20px) saturate(140%);
  box-shadow:var(--glass-shadow);
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);
}
.contact-card:hover {
  transform:translateY(-4px) scale(1.02);
  border-color:rgba(103,241,255,.55);
  box-shadow:var(--stack),0 26px 60px -22px rgba(2,20,45,.9),0 0 52px -4px var(--glow-cy),inset 0 1px 0 var(--glass-hi);
}
.contact-card__icon {
  font-size:1.9rem; line-height:1;
  filter:drop-shadow(0 0 12px var(--glow-cy));
}
.contact-card__label { color:#fff; font-weight:600; font-size:1.05rem; }
.contact-card__value { color:var(--cy-3); font-size:.86rem; word-break:break-word; }

.cta__note { margin-top:28px; color:var(--text-dim); font-size:.86rem; font-weight:300; }

/* ===== Футер ===== */
.footer { padding:32px 0; margin-top:20px; color:var(--text-soft);
  border-top:1px solid rgba(71,216,255,.14); background:rgba(4,20,40,.4); }
.footer__inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; font-size:.85rem; }
.footer a { color:var(--cy-3); text-decoration:none; font-weight:500; }
.footer a:hover { color:var(--cy-2); text-shadow:0 0 12px var(--glow-cy); }

/* ===== Адаптив ===== */
@media (max-width:1024px) {
  .steps { grid-template-columns:repeat(2,1fr); }
  .portfolio { grid-template-columns:1fr; }
}
@media (max-width:960px) {
  .hero::before, #services::before, #portfolio::before, #pricing::before, #contact::before { display:none; }
}
@media (max-width:900px) {
  .cards { grid-template-columns:1fr; }
  .pricing { grid-template-columns:1fr; }
  .orb--amber { width:130px; height:130px; left:-50px; }
  .orb--amber i { width:6px; }
  .orb--teal { width:100px; height:100px; right:-40px; }
}
@media (max-width:820px) {
  .nav { top:8px; padding:0 12px; }
  .nav__links {
    position:absolute; top:calc(100% + 8px); left:12px; right:12px;
    flex-direction:column; gap:14px; padding:18px; display:none;
    border-radius:var(--radius-card);
    background:linear-gradient(160deg,var(--glass-strong),var(--glass));
    border:1px solid var(--glass-border);
    backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
    box-shadow:0 24px 60px -20px rgba(2,20,45,.9),0 0 44px -6px var(--glow-cy);
  }
  .nav__links.open { display:flex; }
  .nav__burger { display:flex; }
  .nav .btn--small { display:none; }
  .hero { padding:64px 0 76px; }
  .section { padding:52px 0; }
  .strip__inner { grid-template-columns:1fr; }
  .steps { grid-template-columns:1fr; }
  .contacts { grid-template-columns:1fr; }
  .band { margin:0 12px; }
}
