/* =========================================================
   СВ Коммуникации — тёмно-синий корпоративный + liquid glass
   ========================================================= */

:root{
  --bg:            #040a14;
  --bg-2:          #071228;

  --ink:           #eaf1fb;
  --muted:         rgba(226,236,250,.62);
  --muted-2:       rgba(226,236,250,.42);

  --accent:        #4da3ff;
  --accent-2:      #8fd8ff;
  --accent-deep:   #1e5fbf;
  --warn:          #ffc46b;

  --stroke:        rgba(255,255,255,.10);
  --stroke-strong: rgba(255,255,255,.18);

  --r-sm: 14px;
  --r-md: 20px;
  --r-lg: 28px;
  --r-xl: 36px;

  --shadow-lg: 0 40px 80px -40px rgba(2,7,18,.95), 0 12px 32px -20px rgba(2,7,18,.8);
  --container: 100%;
  --gutter: clamp(20px, 3.2vw, 76px);

  --f-head: "Montserrat", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --f-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

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

html{ scroll-behavior:smooth; scroll-padding-top:96px; -webkit-text-size-adjust:100%; }

body{
  margin:0;
  font-family:var(--f-body);
  font-size:16px;
  line-height:1.65;
  color:var(--ink);
  background:var(--bg);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

/* ---------- фоновая сцена ---------- */
.scene{ position:fixed; inset:0; z-index:-2; overflow:hidden; background:
    radial-gradient(1200px 800px at 78% -10%, #0e2b57 0%, transparent 60%),
    radial-gradient(900px 700px at 8% 12%, #0a2247 0%, transparent 58%),
    radial-gradient(1000px 900px at 50% 108%, #08203f 0%, transparent 62%),
    linear-gradient(180deg, #040a14 0%, #050e1e 45%, #04101f 100%);
}
.scene__blob{ position:absolute; border-radius:50%; filter:blur(90px); opacity:.5; will-change:transform; }
.scene__blob--1{ width:640px; height:640px; top:-160px; left:-140px; background:radial-gradient(circle at 40% 40%, rgba(77,163,255,.55), transparent 70%); animation:float1 26s ease-in-out infinite; }
.scene__blob--2{ width:720px; height:720px; top:38%; right:-220px; background:radial-gradient(circle at 50% 50%, rgba(30,95,191,.5), transparent 70%); animation:float2 32s ease-in-out infinite; }
.scene__blob--3{ width:560px; height:560px; bottom:-180px; left:26%; background:radial-gradient(circle at 50% 50%, rgba(143,216,255,.28), transparent 70%); animation:float1 38s ease-in-out infinite reverse; }
.scene__grid{ position:absolute; inset:0; opacity:.16;
  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:64px 64px;
  mask-image:radial-gradient(120% 90% at 50% 0%, #000 20%, transparent 78%);
  -webkit-mask-image:radial-gradient(120% 90% at 50% 0%, #000 20%, transparent 78%);
}
.scene__noise{ position:absolute; inset:0; opacity:.28; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
@keyframes float1{ 0%,100%{ transform:translate3d(0,0,0) scale(1);} 50%{ transform:translate3d(60px,50px,0) scale(1.08);} }
@keyframes float2{ 0%,100%{ transform:translate3d(0,0,0) scale(1);} 50%{ transform:translate3d(-70px,-45px,0) scale(1.06);} }

/* ---------- сетка ---------- */
.container{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:var(--gutter); }
.section{ padding:96px 0; position:relative; }
.section--tight{ padding:64px 0; }

/* ---------- типографика ---------- */
h1,h2,h3,h4{ font-family:var(--f-head); margin:0; line-height:1.14; letter-spacing:-.02em; font-weight:700; }
h1{ font-size:clamp(34px, 5.4vw, 64px); font-weight:800; }
h2{ font-size:clamp(26px, 3.4vw, 42px); }
h3{ font-size:clamp(19px, 2vw, 24px); }
p{ margin:0 0 16px; }
a{ color:inherit; text-decoration:none; }

.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--f-head); font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--accent-2); margin-bottom:18px;
}
.eyebrow::before{ content:""; width:26px; height:1px; background:linear-gradient(90deg, transparent, var(--accent)); }
.lead{ font-size:clamp(16px,1.5vw,18px); color:var(--muted); max-width:62ch; }
.section__head{ max-width:760px; margin-bottom:48px; }
.section__head--center{ margin-inline:auto; text-align:center; }
.section__head--center .eyebrow::before{ display:none; }

/* ---------- liquid glass ---------- */
.glass{
  position:relative; isolation:isolate;
  border-radius:var(--r-lg);
  background:linear-gradient(155deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.032) 46%, rgba(255,255,255,.06) 100%);
  border:1px solid var(--stroke);
  box-shadow:var(--shadow-lg), inset 0 1px 0 rgba(255,255,255,.26), inset 0 -1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.glass::before{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:0;
  background:linear-gradient(180deg, rgba(255,255,255,.14), transparent 22%);
  opacity:.7;
}
.glass::after{
  content:""; position:absolute; inset:-1px; border-radius:inherit; pointer-events:none; z-index:0;
  background:radial-gradient(460px circle at var(--mx,50%) var(--my,0%), rgba(143,216,255,.20), transparent 62%);
  opacity:0; transition:opacity .45s ease;
}
.glass:hover::after{ opacity:1; }
.glass > *{ position:relative; z-index:1; }

.glass--blur{
  -webkit-backdrop-filter:blur(22px) saturate(165%);
  backdrop-filter:blur(22px) saturate(165%);
}
.glass--soft{ background:linear-gradient(155deg, rgba(255,255,255,.075), rgba(255,255,255,.028)); }
.glass--tint{
  background:
    linear-gradient(155deg, rgba(77,163,255,.16), rgba(255,255,255,.03) 55%),
    linear-gradient(155deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  border-color:rgba(143,216,255,.22);
}

/* ---------- кнопки ---------- */
.btn{
  --btn-bg:rgba(255,255,255,.08);
  position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--f-head); font-weight:700; font-size:14.5px; letter-spacing:.01em;
  padding:15px 26px; border-radius:999px; border:1px solid var(--stroke-strong);
  background:var(--btn-bg);
  color:var(--ink); cursor:pointer; overflow:hidden; white-space:nowrap;
  transition:transform .28s cubic-bezier(.2,.7,.3,1), box-shadow .28s ease, border-color .28s ease, background .28s ease;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 14px 30px -18px rgba(2,8,20,.9);
}
.btn:hover{ transform:translateY(-2px); border-color:rgba(143,216,255,.42); }
.btn:active{ transform:translateY(0); }
.btn--primary{
  background:linear-gradient(135deg, #2f7fe0 0%, #4da3ff 52%, #6fc0ff 100%);
  border-color:rgba(255,255,255,.28); color:#031222;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 20px 40px -20px rgba(77,163,255,.85);
}
.btn--primary:hover{ box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 26px 52px -22px rgba(77,163,255,.95); }
.btn--ghost{ background:rgba(255,255,255,.05); }
.btn--sm{ padding:11px 18px; font-size:13.5px; }
.btn--block{ width:100%; }
.btn__icon{ width:17px; height:17px; flex:none; }

/* ---------- шапка ---------- */
.header{ position:fixed; inset:14px 0 auto; z-index:50; transition:transform .4s ease; }
.header .container{ max-width:none; }
.header__inner{
  display:flex; align-items:center; gap:22px;
  padding:10px 12px 10px 18px; border-radius:999px;
  background:linear-gradient(150deg, rgba(255,255,255,.10), rgba(255,255,255,.035));
  -webkit-backdrop-filter:blur(24px) saturate(170%); backdrop-filter:blur(24px) saturate(170%);
  border:1px solid var(--stroke);
  box-shadow:0 24px 50px -30px rgba(2,8,20,.95), inset 0 1px 0 rgba(255,255,255,.26);
  transition:padding .3s ease, background .3s ease, box-shadow .3s ease;
}
.header.is-scrolled .header__inner{
  background:linear-gradient(150deg, rgba(8,20,40,.86), rgba(6,14,30,.72));
  box-shadow:0 26px 54px -28px rgba(2,8,20,1), inset 0 1px 0 rgba(255,255,255,.2);
}
.brand{ display:flex; align-items:center; gap:12px; flex:none; }
.brand img{ height:38px; width:auto; display:block; filter:drop-shadow(0 4px 12px rgba(0,0,0,.5)); }
.brand__text{ display:flex; flex-direction:column; gap:3px; line-height:1.1; }
.brand__name{ font-family:var(--f-head); font-weight:800; font-size:14px; letter-spacing:.04em; }
.brand__sub{ font-size:9.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted-2); white-space:nowrap; }

.nav{ display:flex; align-items:center; gap:2px; margin-left:auto; }
.nav a{
  position:relative; padding:9px 12px; border-radius:999px; font-size:13.5px; color:var(--muted); white-space:nowrap;
  transition:color .25s ease, background .25s ease;
}
.nav a:hover, .nav a.is-active{ color:var(--ink); background:rgba(255,255,255,.08); }
.header__cta{ display:flex; align-items:center; gap:10px; flex:none; }
.header__phone{ font-family:var(--f-head); font-weight:700; font-size:15px; letter-spacing:.01em; padding:11px 18px; border-radius:999px; border:1px solid var(--stroke-strong); background:rgba(255,255,255,.06); transition:border-color .25s, background .25s; }
.header__phone:hover{ border-color:rgba(143,216,255,.45); background:rgba(255,255,255,.1); }
.burger{ display:none; width:44px; height:44px; border-radius:999px; border:1px solid var(--stroke-strong); background:rgba(255,255,255,.06); cursor:pointer; align-items:center; justify-content:center; flex-direction:column; gap:5px; }
.burger span{ display:block; width:18px; height:1.5px; background:var(--ink); border-radius:2px; transition:transform .3s ease, opacity .25s ease; }
.burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.burger.is-open span:nth-child(2){ opacity:0; }
.burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.mobile-menu{
  position:fixed; inset:86px 16px auto; z-index:49; padding:18px; border-radius:var(--r-lg);
  background:linear-gradient(160deg, rgba(9,22,44,.94), rgba(5,12,26,.9));
  -webkit-backdrop-filter:blur(26px) saturate(170%); backdrop-filter:blur(26px) saturate(170%);
  border:1px solid var(--stroke); box-shadow:var(--shadow-lg);
  display:none; flex-direction:column; gap:4px;
  opacity:0; transform:translateY(-12px); transition:opacity .3s ease, transform .3s ease;
}
.mobile-menu.is-open{ display:flex; opacity:1; transform:translateY(0); }
.mobile-menu a{ padding:13px 14px; border-radius:14px; font-size:16px; color:var(--muted); }
.mobile-menu a:hover{ background:rgba(255,255,255,.07); color:var(--ink); }
.mobile-menu .btn{ margin-top:10px; }

/* ---------- hero ---------- */
.hero{ position:relative; min-height:min(920px, 100svh); display:flex; align-items:center; padding:150px 0 90px; overflow:hidden; }
.hero__bg{ position:absolute; inset:0; z-index:-1; }
.hero__bg img{ width:100%; height:100%; object-fit:cover; opacity:.5; transform:scale(1.06); }
.hero__bg::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(4,10,20,.72) 0%, rgba(4,10,20,.55) 40%, rgba(4,10,20,.95) 100%),
             radial-gradient(90% 70% at 20% 30%, rgba(9,32,68,.5), transparent 70%); }
.hero__grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center; }
.hero h1{ margin-bottom:22px; }
.hero h1 .accent{ background:linear-gradient(120deg, #8fd8ff 0%, #4da3ff 55%, #b9e6ff 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero__text{ font-size:clamp(16px,1.6vw,18.5px); color:var(--muted); max-width:52ch; margin-bottom:34px; }
.hero__actions{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:44px; }
.hero__stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; max-width:620px; }
.stat{ padding:18px 20px; border-radius:var(--r-md); }
.stat__value{ font-family:var(--f-head); font-weight:800; font-size:clamp(22px,2.6vw,30px); line-height:1; margin-bottom:7px;
  background:linear-gradient(120deg,#ffffff,#8fd8ff); -webkit-background-clip:text; background-clip:text; color:transparent; }
.stat__label{ font-size:12.5px; color:var(--muted); line-height:1.4; }

.hero__card{ padding:30px; border-radius:var(--r-xl); max-width:520px; margin-left:auto; }
.hero__card-title{ font-family:var(--f-head); font-weight:700; font-size:17px; margin-bottom:6px; }
.hero__card-sub{ font-size:13.5px; color:var(--muted); margin-bottom:22px; }
.hero__price{ display:flex; align-items:baseline; gap:12px; margin-bottom:6px; }
.hero__price-value{ font-family:var(--f-head); font-weight:800; font-size:clamp(34px,4vw,46px); letter-spacing:-.03em; }
.badge-discount{
  font-family:var(--f-head); font-weight:700; font-size:12px; letter-spacing:.05em; padding:6px 12px; border-radius:999px;
  background:linear-gradient(135deg, rgba(77,163,255,.9), rgba(143,216,255,.85)); color:#04121f;
  box-shadow:0 10px 24px -12px rgba(77,163,255,.9);
}
.hero__price-note{ font-size:12.5px; color:var(--muted-2); margin-bottom:22px; }
.hero__list{ list-style:none; margin:0 0 24px; padding:0; display:grid; gap:11px; }
.hero__list li{ display:flex; gap:11px; font-size:14px; color:var(--muted); }
.tick{ flex:none; width:19px; height:19px; margin-top:2px; border-radius:50%; display:grid; place-items:center;
  background:linear-gradient(135deg, rgba(77,163,255,.35), rgba(143,216,255,.2)); border:1px solid rgba(143,216,255,.35); }
.tick svg{ width:10px; height:10px; stroke:var(--accent-2); }

/* ---------- о направлении ---------- */
.split{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.split--reverse .split__media{ order:2; }
.split__media{ position:relative; }
.media-frame{ position:relative; border-radius:var(--r-xl); overflow:hidden; padding:26px; }
.media-frame img{ width:100%; height:auto; display:block; border-radius:var(--r-md); }
.media-frame--photo{ padding:0; }
.media-frame--photo img{ border-radius:var(--r-xl); aspect-ratio:16/10; object-fit:cover; }
.media-glow{ position:absolute; inset:-14% -10% -10%; z-index:-1; filter:blur(60px); opacity:.55;
  background:radial-gradient(circle at 50% 45%, rgba(77,163,255,.6), transparent 68%); }

.pill-row{ display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.pill{ font-size:13px; padding:9px 15px; border-radius:999px; border:1px solid var(--stroke); background:rgba(255,255,255,.05); color:var(--muted); }


/* ---------- схема: путь воды от источника до крана ---------- */
.flow{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); column-gap:30px; row-gap:36px; }

.flow__node{
  position:relative; grid-row:1; z-index:1;
  display:flex; flex-direction:column; gap:14px; text-align:left;
  padding:22px 18px 20px; border-radius:22px; cursor:pointer;
  font-family:inherit; color:var(--ink);
  border:1px solid var(--stroke);
  background:linear-gradient(155deg, rgba(255,255,255,.09), rgba(255,255,255,.026));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22), 0 26px 46px -34px rgba(2,8,20,.9);
  transition:transform .32s cubic-bezier(.2,.7,.3,1), border-color .32s ease, background .32s ease;
}
.flow__node:hover{ transform:translateY(-4px); border-color:rgba(143,216,255,.32); }
.flow__node:focus-visible{ outline:2px solid var(--accent-2); outline-offset:3px; }
.flow__node.is-active{
  border-color:rgba(143,216,255,.5);
  background:linear-gradient(155deg, rgba(77,163,255,.30), rgba(143,216,255,.06) 70%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34), 0 26px 50px -30px rgba(77,163,255,.6);
}

/* соединительная линия + стрелка между этапами */
.flow__node::before{
  content:""; position:absolute; right:-30px; top:50%; width:30px; height:2px; margin-top:-1px;
  background:linear-gradient(90deg, rgba(143,216,255,.08), rgba(143,216,255,.5));
}
.flow__node::after{
  content:""; position:absolute; right:-21px; top:50%; width:9px; height:9px;
  border-top:2px solid rgba(143,216,255,.65); border-right:2px solid rgba(143,216,255,.65);
  transform:translateY(-50%) rotate(45deg);
}
.flow__node:last-of-type::before, .flow__node:last-of-type::after{ display:none; }

.flow__num{ font-family:var(--f-head); font-weight:700; font-size:10.5px; letter-spacing:.15em;
  text-transform:uppercase; color:var(--accent-2); opacity:.85; }
.flow__icon{ width:44px; height:44px; border-radius:14px; display:grid; place-items:center;
  background:linear-gradient(140deg, rgba(77,163,255,.3), rgba(143,216,255,.08));
  border:1px solid rgba(143,216,255,.26); box-shadow:inset 0 1px 0 rgba(255,255,255,.3); }
.flow__icon svg{ width:23px; height:23px; stroke:var(--accent-2); fill:none; stroke-width:1.5; }
.flow__title{ font-family:var(--f-head); font-weight:700; font-size:14.5px; line-height:1.32; }
.flow__tag{ margin-top:auto; display:flex; align-items:flex-start; gap:8px; font-size:11.5px; line-height:1.4; color:var(--muted-2); }
.flow__tag::before{ content:""; flex:none; width:6px; height:6px; margin-top:5px; border-radius:50%;
  background:var(--warn); box-shadow:0 0 0 3px rgba(255,196,107,.16); }
.flow__node.is-active .flow__tag{ color:var(--muted); }

.flow__detail{
  grid-column:1 / -1; grid-row:2; display:none;
  padding:34px 36px; border-radius:var(--r-xl);
  border:1px solid var(--stroke);
  background:linear-gradient(155deg, rgba(255,255,255,.085), rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2), var(--shadow-lg);
}
.flow__detail.is-active{ display:block; animation:fadeUp .45s ease both; }
.flow__detail-head{ display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 16px; margin-bottom:14px; }
.flow__detail-head h3{ font-size:clamp(20px,2.2vw,26px); }
.flow__step{ font-family:var(--f-head); font-weight:700; font-size:11px; letter-spacing:.1em; text-transform:uppercase;
  padding:6px 12px; border-radius:999px; color:#04121f;
  background:linear-gradient(135deg, rgba(77,163,255,.95), rgba(143,216,255,.9)); }
.flow__sub{ font-size:13px; color:var(--muted-2); }
.flow__detail > p{ font-size:15px; color:var(--muted); max-width:76ch; margin:0; }

.risks{ list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:24px 0 0; padding:0; }
.risks li{ padding:18px 20px; border-radius:18px; border:1px solid var(--stroke); background:rgba(255,255,255,.04); }
.risks b{ display:block; font-family:var(--f-head); font-size:13.5px; margin-bottom:7px; color:var(--ink); }
.risks span{ display:block; font-size:13px; line-height:1.55; color:var(--muted); }

/* вывод про кипячение */
.boil{ display:grid; grid-template-columns:.72fr 1.28fr; gap:42px; align-items:center;
  padding:40px; border-radius:var(--r-xl); margin-top:26px; }
.boil__media{ position:relative; display:grid; place-items:center; }
.boil__media img{ position:relative; max-width:100%; max-height:280px; width:auto;
  filter:drop-shadow(0 28px 42px rgba(0,0,0,.5)); }
.boil h3{ font-size:clamp(21px,2.4vw,28px); margin-bottom:16px; }
.boil p{ font-size:14.5px; color:var(--muted); max-width:74ch; }

/* ---------- карточки-преимущества ---------- */
.cards{ display:grid; gap:22px; }
.cards--3{ grid-template-columns:repeat(3,1fr); }
.cards--4{ grid-template-columns:repeat(4,1fr); }
.card{ padding:30px; border-radius:var(--r-lg); display:flex; flex-direction:column;
  transition:transform .38s cubic-bezier(.2,.7,.3,1), border-color .38s ease; }
.card:hover{ transform:translateY(-5px); border-color:rgba(143,216,255,.3); }
.card__icon{ width:52px; height:52px; border-radius:16px; display:grid; place-items:center; margin-bottom:20px;
  background:linear-gradient(140deg, rgba(77,163,255,.28), rgba(143,216,255,.1));
  border:1px solid rgba(143,216,255,.26); box-shadow:inset 0 1px 0 rgba(255,255,255,.32); }
.card__icon svg{ width:24px; height:24px; stroke:var(--accent-2); fill:none; stroke-width:1.6; }
.card h3{ margin-bottom:12px; }
.card p{ font-size:14.5px; color:var(--muted); margin:0; max-width:60ch; }
.card__num{ font-family:var(--f-head); font-weight:800; font-size:13px; letter-spacing:.14em; color:var(--accent-2); margin-bottom:14px; }



/* ---------- карточка графика обслуживания ---------- */
.schedule{ padding:36px 34px; border-radius:var(--r-xl); }
.schedule__big{ display:flex; align-items:baseline; gap:16px; margin-bottom:30px; }
.schedule__big b{ font-family:var(--f-head); font-weight:800; line-height:1; letter-spacing:-.03em;
  font-size:clamp(46px, 5vw, 64px);
  background:linear-gradient(120deg,#ffffff,#8fd8ff); -webkit-background-clip:text; background-clip:text; color:transparent; }
.schedule__big span{ font-size:14px; line-height:1.5; color:var(--muted); max-width:22ch; }
.schedule__years{ position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:10px; padding-top:16px; }
.schedule__rail{ position:absolute; left:8%; right:8%; top:21px; height:2px; border-radius:2px; z-index:0;
  background:linear-gradient(90deg, rgba(143,216,255,.55), rgba(143,216,255,.1)); }
.schedule__year{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:12px; }
.schedule__dots{ display:flex; gap:8px; }
.schedule__dots i{ width:10px; height:10px; border-radius:50%;
  background:linear-gradient(140deg,#4da3ff,#8fd8ff); box-shadow:0 0 0 4px rgba(77,163,255,.15); }
.schedule__year > span:last-child{ font-size:11.5px; color:var(--muted-2); }
.schedule__foot{ margin-top:28px; padding-top:20px; border-top:1px solid var(--stroke);
  font-size:13.5px; line-height:1.6; color:var(--muted); }

/* ---------- маршрут воды: где мы вступаем ---------- */
.route{ padding:46px 40px 36px; border-radius:var(--r-xl); }
.route__items{ display:grid; grid-template-columns:repeat(8, minmax(0,1fr)); padding-top:26px; }

.route__item{ position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; }
.route__item::after{                                   /* труба до следующего этапа */
  content:""; position:absolute; top:25px; left:calc(50% + 33px); right:calc(-50% + 33px);
  height:4px; border-radius:2px;
  background:linear-gradient(90deg, rgba(255,196,107,.22), rgba(255,196,107,.42));
}
.route__item:last-child::after{ display:none; }
.route__item--catch::after{
  background:linear-gradient(90deg, rgba(77,163,255,.85), rgba(143,216,255,.95));
  box-shadow:0 0 18px rgba(77,163,255,.55);
}

.route__dot{ position:relative; z-index:1; width:54px; height:54px; border-radius:50%; display:grid; place-items:center;
  background:linear-gradient(150deg, rgba(255,255,255,.09), rgba(255,255,255,.028));
  border:1px solid var(--stroke); box-shadow:inset 0 1px 0 rgba(255,255,255,.22); }
.route__dot svg{ width:24px; height:24px; stroke:rgba(226,236,250,.5); fill:none; stroke-width:1.5; }
.route__dot--main{ background:linear-gradient(140deg,#2f7fe0,#6fc0ff); border-color:rgba(255,255,255,.42);
  box-shadow:0 0 0 7px rgba(77,163,255,.15), 0 18px 36px -14px rgba(77,163,255,.95); }
.route__dot--main svg{ stroke:#04121f; stroke-width:1.7; }
.route__dot--clean{ border-color:rgba(143,216,255,.4);
  background:linear-gradient(150deg, rgba(143,216,255,.22), rgba(255,255,255,.04)); }
.route__dot--clean svg{ stroke:var(--accent-2); }

.route__label{ font-size:12px; line-height:1.35; color:var(--muted-2); }
.route__label--main{ font-family:var(--f-head); font-weight:700; font-size:12.5px; color:var(--ink); }
.route__label--clean{ color:var(--accent-2); }

.route__badge{ position:absolute; top:-32px; left:50%; transform:translateX(-50%); white-space:nowrap;
  font-family:var(--f-head); font-weight:700; font-size:10.5px; letter-spacing:.09em; text-transform:uppercase;
  padding:6px 12px; border-radius:999px; color:#04121f;
  background:linear-gradient(135deg,#4da3ff,#8fd8ff); box-shadow:0 12px 24px -12px rgba(77,163,255,.95); }
.route__badge::after{ content:""; position:absolute; bottom:-4px; left:50%; width:8px; height:8px; margin-left:-4px;
  background:#7cc7ff; border-radius:2px; transform:rotate(45deg); }

.route__legend{ display:grid; grid-template-columns:repeat(8, minmax(0,1fr)); margin-top:34px; }
.route__note{ position:relative; grid-column:1 / 7; margin-right:14px; padding:16px 4px 0;
  font-size:13px; line-height:1.55; color:var(--muted-2); border-top:1px dashed rgba(255,196,107,.32); }
.route__note::before, .route__note::after{ content:""; position:absolute; top:0; width:1px; height:9px;
  background:rgba(255,196,107,.32); }
.route__note::before{ left:0; }
.route__note::after{ right:0; }
.route__note--accent{ grid-column:7 / -1; margin:0 0 0 14px; color:var(--muted);
  border-top:1px solid rgba(143,216,255,.5); }
.route__note--accent::before, .route__note--accent::after{ background:rgba(143,216,255,.5); }

/* ---------- предупреждение ---------- */
.alert{ padding:38px 40px; border-radius:var(--r-xl);
  background:linear-gradient(150deg, rgba(255,196,107,.14), rgba(255,255,255,.03) 60%);
  border-color:rgba(255,196,107,.28); }
.alert__head{ display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.alert__icon{ width:44px; height:44px; flex:none; border-radius:14px; display:grid; place-items:center;
  background:linear-gradient(140deg, rgba(255,196,107,.32), rgba(255,196,107,.08)); border:1px solid rgba(255,196,107,.32); }
.alert__icon svg{ width:22px; height:22px; stroke:var(--warn); fill:none; stroke-width:1.7; }
.alert h3{ color:var(--warn); font-size:clamp(17px,2vw,21px); letter-spacing:.04em; text-transform:uppercase; }
.alert p{ color:var(--muted); font-size:15px; max-width:96ch; }
.alert__phone{ display:inline-flex; align-items:center; gap:12px; margin-top:10px; padding:14px 22px; border-radius:999px;
  border:1px solid rgba(255,196,107,.4); background:rgba(255,196,107,.1); font-family:var(--f-head); font-weight:700; }
.alert__phone span{ font-size:12px; font-weight:500; color:var(--muted-2); font-family:var(--f-body); }

/* ---------- витрина товаров ---------- */
.showcase{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; align-items:stretch; }
.product{ display:flex; flex-direction:column; border-radius:var(--r-lg); overflow:hidden;
  transition:transform .4s cubic-bezier(.2,.7,.3,1), border-color .4s ease; }
.product:hover{ transform:translateY(-6px); border-color:rgba(143,216,255,.34); }
.product__media{ position:relative; padding:22px; aspect-ratio:4/3; display:grid; place-items:center;
  background:linear-gradient(165deg, rgba(255,255,255,.96), rgba(224,238,255,.86)); }
.product__media img{ max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply;
  filter:drop-shadow(0 12px 24px rgba(10,30,60,.22)); }
.product__media--photo{ padding:0; }
.product__media--photo img{ width:100%; height:100%; object-fit:cover; mix-blend-mode:normal; filter:none; }
.product__tag{ position:absolute; top:14px; left:14px; z-index:2; font-family:var(--f-head); font-weight:700; font-size:11px;
  letter-spacing:.09em; text-transform:uppercase; padding:7px 13px; border-radius:999px;
  background:rgba(6,16,34,.82); color:var(--accent-2); border:1px solid rgba(143,216,255,.3);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.product__body{ padding:24px 24px 26px; display:flex; flex-direction:column; flex:1; }
.product__title{ font-family:var(--f-head); font-weight:700; font-size:18px; line-height:1.25; margin-bottom:9px; }
.product__desc{ font-size:13.5px; color:var(--muted); margin-bottom:18px; }
@media (min-width:601px){
  .product__title{ min-height:3.75em; }
  .product__desc{ min-height:6em; }
}
.product__price{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:5px; }
.product__price-value{ font-family:var(--f-head); font-weight:800; font-size:29px; letter-spacing:-.02em; }
.product__note{ font-size:11.5px; line-height:1.45; color:var(--muted-2); margin-bottom:20px; }
.product__actions{ margin-top:auto; padding-top:20px; display:grid; gap:9px; }
.product__includes{ margin-top:4px; padding-top:18px; border-top:1px solid var(--stroke); }
.product__includes-title{ font-family:var(--f-head); font-weight:700; font-size:13px; letter-spacing:.01em; }
.product__includes .steps{ margin-top:14px; }
.product__link{ display:inline-flex; align-items:center; gap:7px; font-size:13px; color:var(--accent-2);
  padding:6px 0; transition:gap .25s ease; }
.product__link:hover{ gap:12px; }

.disclosure{ border-top:1px solid var(--stroke); margin-top:18px; padding-top:16px; }
.disclosure__btn{ display:flex; align-items:center; justify-content:space-between; width:100%; gap:10px;
  background:none; border:0; color:var(--ink); font-family:var(--f-head); font-weight:700; font-size:13.5px;
  cursor:pointer; padding:0; }
.disclosure__btn svg{ width:16px; height:16px; stroke:var(--accent-2); fill:none; stroke-width:2; transition:transform .35s ease; }
.disclosure.is-open .disclosure__btn svg{ transform:rotate(45deg); }
.disclosure__body{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s cubic-bezier(.2,.7,.3,1); }
.disclosure.is-open .disclosure__body{ grid-template-rows:1fr; }
.disclosure__inner{ overflow:hidden; }
.steps{ counter-reset:s; list-style:none; margin:16px 0 0; padding:0; display:grid; gap:12px; }
.steps li{ counter-increment:s; position:relative; padding-left:34px; font-size:13.5px; color:var(--muted); line-height:1.55; max-width:88ch; }
.steps li::before{ content:counter(s); position:absolute; left:0; top:1px; width:23px; height:23px; border-radius:8px;
  display:grid; place-items:center; font-family:var(--f-head); font-weight:700; font-size:11.5px; color:var(--accent-2);
  background:rgba(77,163,255,.16); border:1px solid rgba(143,216,255,.24); }

/* ---------- из чего формируется стоимость ---------- */
.price-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.price-block{ padding:32px; border-radius:var(--r-lg); }
.price-block h3{ margin-bottom:12px; }
.price-block p{ font-size:14.5px; color:var(--muted); margin:0; max-width:70ch; }
.price-block__foot{ margin-top:18px; font-size:13px; color:var(--accent-2); }

/* ---------- сравнение ---------- */
.compare{ display:grid; grid-template-columns:1.12fr 1fr 1fr; gap:22px; align-items:start; }
.compare__col{ padding:32px 28px; border-radius:var(--r-lg); height:100%; }
.compare__col--main{ border-color:rgba(143,216,255,.3); }
.compare__badge{ display:inline-flex; font-family:var(--f-head); font-weight:700; font-size:11px; letter-spacing:.1em;
  text-transform:uppercase; padding:6px 12px; border-radius:999px; margin-bottom:16px;
  background:linear-gradient(135deg, rgba(77,163,255,.9), rgba(143,216,255,.8)); color:#04121f; }
.compare__badge--muted{ background:rgba(255,255,255,.09); color:var(--muted); border:1px solid var(--stroke); }
.compare__col h3{ font-size:19px; margin-bottom:8px; }
.compare__sub{ font-size:13.5px; color:var(--muted-2); margin-bottom:22px; }
.check-list{ list-style:none; margin:0; padding:0; display:grid; gap:13px; }
.check-list li{ display:flex; gap:12px; font-size:14px; color:var(--muted); line-height:1.5; padding-bottom:13px; border-bottom:1px solid rgba(255,255,255,.07); }
.check-list li:last-child{ border-bottom:0; padding-bottom:0; }
.ic{ flex:none; width:20px; height:20px; margin-top:2px; border-radius:50%; display:grid; place-items:center; }
.ic svg{ width:10px; height:10px; stroke-width:2.4; fill:none; }
.ic--yes{ background:rgba(77,163,255,.2); border:1px solid rgba(143,216,255,.34); }
.ic--yes svg{ stroke:var(--accent-2); }
.ic--no{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); }
.ic--no svg{ stroke:rgba(226,236,250,.5); }

/* ---------- модули ---------- */
.modules{ display:grid; grid-template-columns:.95fr 1.05fr; gap:52px; align-items:center; }
.modules__tabs{ display:flex; flex-wrap:wrap; gap:9px; margin-bottom:30px; }
.tab{ font-family:var(--f-head); font-weight:700; font-size:12.5px; letter-spacing:.03em; padding:11px 17px; border-radius:999px;
  border:1px solid var(--stroke); background:rgba(255,255,255,.045); color:var(--muted); cursor:pointer;
  transition:color .25s, background .25s, border-color .25s; }
.tab:hover{ color:var(--ink); }
.tab.is-active{ color:#04121f; background:linear-gradient(135deg,#4da3ff,#8fd8ff); border-color:rgba(255,255,255,.3); }
.module-panel{ display:none; }
.module-panel.is-active{ display:block; animation:fadeUp .5s ease both; }
.module-panel h3{ font-size:clamp(24px,3vw,34px); margin-bottom:14px; }
.module-panel p{ color:var(--muted); font-size:15px; max-width:56ch; }
.module-stage{ position:relative; border-radius:var(--r-xl); padding:40px; display:grid; place-items:center; min-height:440px; }
.module-stage__img{ display:none; max-height:clamp(280px, 20vw, 400px); width:auto; max-width:100%; object-fit:contain;
  filter:drop-shadow(0 30px 50px rgba(0,0,0,.55)); }
.module-stage__img.is-active{ display:block; animation:fadeUp .55s ease both; }
.module-stage__ring{ position:absolute; width:330px; height:330px; border-radius:50%; z-index:0;
  background:radial-gradient(circle, rgba(77,163,255,.35), transparent 68%); filter:blur(30px); }
@keyframes fadeUp{ from{ opacity:0; transform:translateY(14px);} to{ opacity:1; transform:none;} }

/* ---------- отзывы ---------- */
.reviews{ position:relative; }
.reviews__track{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(340px, 1fr); gap:22px;
  overflow-x:auto; scroll-snap-type:x mandatory; padding:6px 4px 22px; scrollbar-width:none; }
.reviews__track::-webkit-scrollbar{ display:none; }
.review{ scroll-snap-align:start; padding:30px; border-radius:var(--r-lg); display:flex; flex-direction:column; }
.review__quote{ width:30px; height:30px; margin-bottom:18px; opacity:.5; }
.review__quote svg{ width:100%; height:100%; fill:var(--accent-2); }
.review__text{ font-size:14.5px; color:var(--muted); line-height:1.62; margin-bottom:22px; flex:1; }
.review__foot{ display:flex; align-items:center; gap:13px; padding-top:18px; border-top:1px solid var(--stroke); }
.review__ava{ width:42px; height:42px; border-radius:50%; flex:none; display:grid; place-items:center;
  font-family:var(--f-head); font-weight:700; font-size:15px; color:#04121f;
  background:linear-gradient(140deg,#8fd8ff,#4da3ff); }
.review__name{ font-family:var(--f-head); font-weight:700; font-size:14.5px; }
.review__src{ font-size:11.5px; color:var(--muted-2); line-height:1.35; }
.reviews__nav{ display:flex; gap:10px; justify-content:flex-end; margin-top:8px; }
.rnav{ width:46px; height:46px; border-radius:50%; border:1px solid var(--stroke-strong); background:rgba(255,255,255,.06);
  color:var(--ink); cursor:pointer; display:grid; place-items:center; transition:background .25s, border-color .25s, transform .25s; }
.rnav:hover{ background:rgba(255,255,255,.11); border-color:rgba(143,216,255,.4); transform:translateY(-2px); }
.rnav svg{ width:17px; height:17px; stroke:currentColor; fill:none; stroke-width:1.8; }

/* ---------- CTA / контакты ---------- */
.cta{ padding:56px; border-radius:var(--r-xl); text-align:center; }
.cta h2{ margin-bottom:16px; }
.cta p{ color:var(--muted); max-width:56ch; margin-inline:auto; margin-bottom:32px; }
.cta__actions{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

.contacts{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.contact-card{ padding:30px; border-radius:var(--r-lg); }
.contact-card__label{ font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted-2); margin-bottom:12px; }
.contact-card__value{ font-family:var(--f-head); font-weight:700; font-size:22px; margin-bottom:8px; display:inline-block; }
.contact-card p{ font-size:13.5px; color:var(--muted); margin:0; }

/* ---------- подвал ---------- */
.footer{ padding:64px 0 40px; border-top:1px solid var(--stroke); margin-top:40px; }
.footer__grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:44px; margin-bottom:44px; }
.footer__about{ font-size:13.5px; color:var(--muted); max-width:42ch; margin-top:18px; }
.footer h4{ font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted-2); margin-bottom:18px; font-weight:700; }
.footer__links{ list-style:none; margin:0; padding:0; display:grid; gap:11px; }
.footer__links a{ font-size:14px; color:var(--muted); transition:color .25s; }
.footer__links a:hover{ color:var(--accent-2); }
.footer__legal{ font-size:12px; color:var(--muted-2); line-height:1.65; padding-top:26px; border-top:1px solid var(--stroke); }
.footer__bottom{ display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-top:18px; font-size:12.5px; color:var(--muted-2); }

/* ---------- страница-подстраница ---------- */
.page-hero{ padding:170px 0 60px; }
.page-hero h1{ font-size:clamp(30px,4.4vw,52px); margin-bottom:16px; }
.crumbs{ display:flex; gap:10px; align-items:center; font-size:13px; color:var(--muted-2); margin-bottom:20px; }
.crumbs a:hover{ color:var(--accent-2); }
.doc{ padding:44px; border-radius:var(--r-xl); }
.doc p{ color:var(--muted); font-size:15.5px; }
.doc strong{ color:var(--ink); }

/* ---------- каталог ---------- */
.catalog-item{ display:grid; grid-template-columns:.85fr 1.15fr; gap:0; border-radius:var(--r-xl); overflow:hidden; margin-bottom:26px; }
.catalog-item__media{ position:relative; min-height:340px; display:grid; place-items:center; padding:36px;
  background:linear-gradient(165deg, rgba(255,255,255,.96), rgba(219,235,255,.85)); }
.catalog-item__media img{ max-width:100%; max-height:300px; object-fit:contain; mix-blend-mode:multiply;
  filter:drop-shadow(0 16px 30px rgba(10,30,60,.24)); }
.catalog-item__media--photo{ padding:0; }
.catalog-item__media--photo img{ width:100%; height:100%; max-height:none; object-fit:cover; mix-blend-mode:normal; filter:none; }
.catalog-item__body{ padding:38px 40px; }
.catalog-item__body h2{ font-size:clamp(22px,2.6vw,30px); margin-bottom:10px; }
.catalog-item__sub{ font-size:14px; color:var(--muted); margin-bottom:22px; max-width:82ch; }
.catalog-item__price{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:6px; }
.catalog-item__price-value{ font-family:var(--f-head); font-weight:800; font-size:clamp(30px,3.4vw,40px); letter-spacing:-.02em; }
.catalog-item__actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:26px; }

/* ---------- анимация появления ---------- */
[data-reveal]{ opacity:0; transform:translateY(26px); transition:opacity .8s cubic-bezier(.2,.7,.3,1), transform .8s cubic-bezier(.2,.7,.3,1); }
[data-reveal].is-visible{ opacity:1; transform:none; }

/* ---------- адаптив ---------- */
@media (max-width:1340px){
  .brand__sub{ display:none; }
}
@media (max-width:1180px){
  .header__phone{ display:none; }
}
@media (max-width:1180px){
  .flow{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .flow__node:nth-of-type(1),.flow__node:nth-of-type(2),.flow__node:nth-of-type(3){ grid-row:1; }
  .flow__node:nth-of-type(4),.flow__node:nth-of-type(5),.flow__node:nth-of-type(6){ grid-row:2; }
  .flow__node:nth-of-type(3)::before,.flow__node:nth-of-type(3)::after{ display:none; }
  .flow__detail{ grid-row:3; }
  .risks{ grid-template-columns:1fr; }
}

@media (max-width:1080px){
  .route{ padding:40px 24px 30px; }
  .route__dot{ width:48px; height:48px; }
  .route__dot svg{ width:21px; height:21px; }
  .route__item::after{ top:22px; left:calc(50% + 30px); right:calc(-50% + 30px); }
  .route__label{ font-size:11px; }
  .hero__grid{ grid-template-columns:1fr; gap:44px; }
  .showcase{ grid-template-columns:repeat(2,1fr); }
  .cards--4{ grid-template-columns:repeat(2,1fr); }
  .compare{ grid-template-columns:1fr; }
  .modules{ grid-template-columns:1fr; gap:36px; }
  .contacts{ grid-template-columns:1fr; }
  .footer__grid{ grid-template-columns:1fr 1fr; }
  .nav{ display:none; }
  .burger{ display:flex; }
  .header__phone{ display:none; }
}
@media (max-width:820px){
  .section{ padding:72px 0; }
  .flow{ grid-template-columns:1fr; row-gap:0; column-gap:0; }
  .flow__detail{ grid-column:1; grid-row:auto; }
  .flow__node:nth-of-type(n){ grid-column:1; grid-row:auto; }
  .flow__node:nth-of-type(3)::before, .flow__node:nth-of-type(3)::after{ display:block; }
  .flow__node{ flex-direction:row; align-items:center; flex-wrap:wrap; gap:14px; margin-bottom:34px; padding:18px 20px; }
  .flow__node .flow__num{ order:1; width:100%; margin-bottom:-6px; }
  .flow__node .flow__icon{ order:2; }
  .flow__node .flow__title{ order:3; flex:1; }
  .flow__node .flow__tag{ order:4; width:100%; margin-top:2px; }
  .flow__node::before{ right:auto; left:50%; top:auto; bottom:-34px; width:2px; height:34px; margin:0 0 0 -1px;
    background:linear-gradient(180deg, rgba(143,216,255,.08), rgba(143,216,255,.5)); }
  .flow__node::after{ right:auto; left:50%; top:auto; bottom:-25px; transform:translateX(-50%) rotate(135deg); }
  .flow__node:last-of-type::before, .flow__node:last-of-type::after{ display:none; }
  .flow__node.is-active::before, .flow__node.is-active::after{ display:none; }
  .flow__detail{ padding:26px 22px; margin:-16px 0 34px; }
  .boil{ grid-template-columns:1fr; gap:28px; padding:30px 24px; }
  .schedule{ padding:28px 22px; }
  .schedule__big b{ font-size:44px; }
  .route{ padding:30px 22px 26px; }
  .route__items{ grid-template-columns:1fr; row-gap:30px; padding-top:36px; }
  .route__item{ flex-direction:row; align-items:center; text-align:left; gap:16px; }
  .route__item::after{ top:auto; bottom:-26px; left:22px; right:auto; width:4px; height:22px; }
  .route__label{ font-size:14px; color:var(--muted); }
  .route__note{ color:var(--muted); }
  .route__badge{ top:-34px; left:0; transform:none; }
  .route__badge::after{ left:24px; }
  .route__legend{ grid-template-columns:1fr; gap:18px; margin-top:28px; }
  .route__note, .route__note--accent{ grid-column:1; margin:0; }
  .boil__media img{ max-height:210px; }
  .split, .price-grid{ grid-template-columns:1fr; gap:36px; }
  .split--reverse .split__media{ order:0; }
  .cards--3{ grid-template-columns:1fr; }
  .catalog-item{ grid-template-columns:1fr; }
  .catalog-item__media{ min-height:260px; }
  .catalog-item__body{ padding:30px 26px; }
  .cta{ padding:38px 26px; }
  .alert{ padding:28px 24px; }
  .hero{ padding:130px 0 70px; }
}
@media (max-width:760px){
  .header__cta .btn--primary{ display:none; }
  .header__inner{ padding:8px 8px 8px 14px; }
  .brand img{ height:32px; }
  .brand__name{ font-size:13px; }
}
@media (max-width:600px){
  .container{ padding-inline:18px; }
  .showcase, .cards--4{ grid-template-columns:1fr; }
  .hero__stats{ grid-template-columns:1fr; }
  .footer__grid{ grid-template-columns:1fr; gap:32px; }
  .reviews__track{ grid-auto-columns:minmax(280px,1fr); }
  .brand__sub{ display:none; }
  .doc{ padding:28px 22px; }
}

@media (max-width:1000px){
  .glass, .glass--blur, .header__inner, .mobile-menu, .header__phone, .product__tag, .tab, .btn{
    -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  }
  .glass{ background:linear-gradient(155deg, rgba(21,44,82,.74), rgba(9,20,40,.68)); }
  .glass--soft{ background:linear-gradient(155deg, rgba(16,34,64,.66), rgba(8,18,36,.6)); }
  .glass--tint{ background:linear-gradient(155deg, rgba(33,78,146,.72), rgba(11,26,52,.7)); }
  .alert{ background:linear-gradient(150deg, rgba(74,58,30,.8), rgba(12,24,46,.72)); }
  .header__inner{ background:linear-gradient(150deg, rgba(10,24,48,.95), rgba(6,15,32,.92)); }
  .product__tag{ background:rgba(6,16,34,.92); }
}

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