@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");

:root{
  --bg:#f5f6f8;
  --ink:#2f3339;
  --muted:#6b7280;
  --stroke:rgba(17,24,39,.12);
  --shadow:0 30px 80px rgba(2,6,23,.16);
  --shadow2:0 18px 45px rgba(2,6,23,.12);
  --radius-xl:30px;
  --radius-lg:22px;
  --radius-md:16px;
  --primary:#4a5cff;
  --primary2:#5a86ff;
  --gold:#caa46c;
  --gold2:#f2d49b;
  --max:1220px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Rubik", system-ui, -apple-system, Segoe UI, sans-serif;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit}
img{max-width:100%; height:auto}

.i{
  width:18px;
  height:18px;
  display:inline-block;
  flex:0 0 auto;
  color:currentColor;
}
.icon-badge{
  width:44px;
  height:44px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.86);
  display:grid;
  place-items:center;
  box-shadow:0 18px 45px rgba(2,6,23,.06);
}

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

.skip{
  position:absolute;
  left:12px;
  top:12px;
  z-index:999;
  padding:10px 12px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--stroke);
  transform:translateY(-140%);
  transition:transform .18s ease;
  font-weight:850;
  text-decoration:none;
}
.skip:focus{transform:translateY(0)}

a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible{
  outline:3px solid rgba(74,92,255,.25);
  outline-offset:4px;
}

html.a11y-on{scroll-behavior:auto}
html.a11y-on body{zoom:var(--a11y-zoom, 1)}
html.a11y-on *{text-shadow:none}
html.a11y-on a{text-decoration:underline; text-underline-offset:3px}
html.a11y-on a:focus-visible, html.a11y-on button:focus-visible, html.a11y-on input:focus-visible, html.a11y-on summary:focus-visible{
  outline:4px solid rgba(74,92,255,.55);
  outline-offset:4px;
}
html.a11y-on * , html.a11y-on *::before, html.a11y-on *::after{transition:none !important; animation:none !important}
html.a11y-on[data-a11y-font="s"]{--a11y-zoom:1.00}
html.a11y-on[data-a11y-font="m"]{--a11y-zoom:1.12}
html.a11y-on[data-a11y-font="l"]{--a11y-zoom:1.24}

html.a11y-on[data-a11y-images="off"] img{display:none !important}

html.a11y-on[data-a11y-scheme="bw"]{
  --bg:#ffffff;
  --ink:#000000;
  --muted:#111111;
  --stroke:rgba(0,0,0,.60);
  --primary:#0b57d0;
  --primary2:#0b57d0;
  --gold:#0b57d0;
  --gold2:#0b57d0;
}
html.a11y-on[data-a11y-scheme="wb"]{
  --bg:#000000;
  --ink:#ffffff;
  --muted:rgba(255,255,255,.86);
  --stroke:rgba(255,255,255,.55);
  --primary:#00e5ff;
  --primary2:#00e5ff;
  --gold:#00e5ff;
  --gold2:#00e5ff;
}
html.a11y-on[data-a11y-scheme="by"]{
  --bg:#fff7c2;
  --ink:#111111;
  --muted:#222222;
  --stroke:rgba(17,17,17,.55);
  --primary:#0b57d0;
  --primary2:#0b57d0;
  --gold:#0b57d0;
  --gold2:#0b57d0;
}
html.a11y-on .card, html.a11y-on .accordion, html.a11y-on .panel, html.a11y-on .drawer__panel, html.a11y-on .modal__panel{
  background:rgba(255,255,255,.96);
  box-shadow:none;
  backdrop-filter:none;
}
html.a11y-on[data-a11y-scheme="wb"] .card,
html.a11y-on[data-a11y-scheme="wb"] .accordion,
html.a11y-on[data-a11y-scheme="wb"] .panel,
html.a11y-on[data-a11y-scheme="wb"] .drawer__panel,
html.a11y-on[data-a11y-scheme="wb"] .modal__panel{background:rgba(0,0,0,.92)}
html.a11y-on .btn{box-shadow:none}
html.a11y-on .btn--ghost{background:transparent}

.a11y-widget{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:grid;
  gap:10px;
}
.a11y-fab{
  width:52px;
  height:52px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.14);
  background:rgba(255,255,255,.86);
  box-shadow:0 22px 70px rgba(2,6,23,.16);
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.a11y-fab:hover{transform:translateY(-1px); box-shadow:0 28px 90px rgba(2,6,23,.18); border-color:rgba(74,92,255,.22)}
.a11y-fab__a{font-weight:980; letter-spacing:-.02em; font-size:20px; color:rgba(47,51,57,.92)}
.a11y-panel{
  width:min(360px, calc(100vw - 36px));
  border-radius:24px;
  border:1px solid rgba(47,51,57,.14);
  background:rgba(255,255,255,.92);
  box-shadow:0 30px 100px rgba(2,6,23,.18);
  backdrop-filter: blur(14px);
  padding:14px;
  display:none;
}
.a11y-panel.is-open{display:block}
.a11y-panel__top{display:flex; align-items:center; justify-content:space-between; gap:10px}
.a11y-panel__t{font-weight:980; letter-spacing:-.01em}
.a11y-panel__x{
  appearance:none;
  border:1px solid rgba(47,51,57,.14);
  background:transparent;
  border-radius:14px;
  padding:8px 10px;
  cursor:pointer;
  font-weight:950;
}
.a11y-switch{
  margin-top:10px;
  width:100%;
  padding:12px 14px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.14);
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.10));
  font-weight:950;
  cursor:pointer;
}
.a11y-row{margin-top:10px}
.a11y-row__k{font-size:12px; color:rgba(47,51,57,.62); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.a11y-seg{margin-top:8px; display:flex; flex-wrap:wrap; gap:8px}
.a11y-seg__btn{
  appearance:none;
  border:1px solid rgba(47,51,57,.14);
  background:rgba(255,255,255,.80);
  border-radius:999px;
  padding:9px 12px;
  cursor:pointer;
  font-weight:900;
}
.a11y-seg__btn[aria-pressed="true"]{border-color:rgba(74,92,255,.45); background:rgba(74,92,255,.10); color:rgba(74,92,255,.98)}
html.a11y-on[data-a11y-scheme="wb"] .a11y-panel{background:rgba(0,0,0,.92); border-color:rgba(255,255,255,.26)}
html.a11y-on[data-a11y-scheme="wb"] .a11y-fab{background:rgba(0,0,0,.92); border-color:rgba(255,255,255,.26)}
html.a11y-on[data-a11y-scheme="wb"] .a11y-fab__a{color:#fff}
html.a11y-on[data-a11y-scheme="wb"] .a11y-seg__btn{background:transparent; border-color:rgba(255,255,255,.26); color:#fff}
html.a11y-on[data-a11y-scheme="wb"] .a11y-panel__x{border-color:rgba(255,255,255,.26); color:#fff}
html.a11y-on[data-a11y-scheme="wb"] .a11y-row__k{color:rgba(255,255,255,.72)}
.a11y-reset{
  margin-top:12px;
  width:100%;
  padding:10px 14px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.14);
  background:transparent;
  cursor:pointer;
  font-weight:900;
}

.btn{
  appearance:none;
  border:0;
  cursor:pointer;
  text-decoration:none;
  padding:14px 18px;
  border-radius:999px;
  background:linear-gradient(135deg, var(--primary), var(--primary2), rgba(74,92,255,.9));
  background-size:180% 180%;
  background-position:0% 50%;
  color:white;
  font-weight:900;
  box-shadow:0 18px 45px rgba(74,92,255,.22);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.btn:hover{
  transform:translateY(-1px);
  box-shadow:0 26px 70px rgba(74,92,255,.26);
  background-position:100% 50%;
}
.btn--ghost{
  background:rgba(255,255,255,.78);
  color:rgba(47,51,57,.92);
  border:1px solid rgba(47,51,57,.12);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
}
.btn--ghost:hover{
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  border-color:rgba(74,92,255,.22);
  color:rgba(74,92,255,.95);
}
.btn--gold{
  background:
    radial-gradient(120% 120% at 25% 15%, rgba(242,212,155,.55), rgba(242,212,155,0) 55%),
    linear-gradient(135deg, rgba(202,164,108,1), rgba(245,223,171,1));
  color:rgba(47,51,57,.92);
  box-shadow:0 28px 80px rgba(202,164,108,.22);
}

.tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.70);
  backdrop-filter: blur(14px);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
  font-size:13px;
  color:rgba(47,51,57,.78);
  font-weight:800;
  white-space:nowrap;
}
.tag__dot{
  width:10px;
  height:10px;
  border-radius:99px;
  background:linear-gradient(135deg, var(--primary), var(--primary2));
  box-shadow:0 14px 35px rgba(74,92,255,.22);
}

.site-hero{
  position:relative;
  overflow:hidden;
  min-height:100svh;
  background:
    radial-gradient(1200px 780px at 20% 0%, rgba(74,92,255,.12), transparent 55%),
    radial-gradient(1000px 760px at 86% 10%, rgba(202,164,108,.14), transparent 60%),
    radial-gradient(1200px 760px at 55% 120%, rgba(90,134,255,.10), transparent 58%),
    linear-gradient(180deg, #f7f8fb, #eef0f6 60%, #f7f8fb);
}
.site-hero__grain{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.13;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E");
}
.site-hero__bg{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.55;
  filter:blur(.2px);
  background:
    radial-gradient(1200px 700px at 55% 40%, rgba(255,255,255,.92), rgba(255,255,255,0) 60%),
    radial-gradient(1200px 800px at 40% 50%, rgba(0,0,0,.22), rgba(0,0,0,0) 62%),
    linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,0) 50%, rgba(0,0,0,.12)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.0), rgba(255,255,255,.0) 24px, rgba(0,0,0,.035) 25px, rgba(255,255,255,.0) 26px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.0), rgba(255,255,255,.0) 32px, rgba(0,0,0,.03) 33px, rgba(255,255,255,.0) 34px);
  mix-blend-mode:multiply;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.85), rgba(0,0,0,.40) 55%, rgba(0,0,0,0) 100%);
}

.artifact{
  position:absolute;
  border-radius:999px;
  filter:blur(28px);
  opacity:.85;
  transform:translateZ(0);
  animation:float 11s ease-in-out infinite;
  pointer-events:none;
}
.artifact--a{left:-200px; top:200px; width:560px; height:560px; background:radial-gradient(circle at 30% 30%, rgba(74,92,255,.55), rgba(74,92,255,0) 64%)}
.artifact--b{right:-260px; top:-80px; width:680px; height:680px; animation-duration:13s; background:radial-gradient(circle at 30% 30%, rgba(202,164,108,.55), rgba(202,164,108,0) 66%)}
.artifact--c{left:38%; bottom:-360px; width:900px; height:900px; animation-duration:15s; background:radial-gradient(circle at 30% 30%, rgba(90,134,255,.38), rgba(90,134,255,0) 68%)}
@keyframes float{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-18px,0) scale(1.03)}
}
@media (prefers-reduced-motion: reduce){
  .artifact{animation:none}
}

.header{
  position:absolute;
  inset-inline:0;
  top:0;
  padding:18px 0;
  z-index:10;
}
.header__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}
.brand__mark{
  width:42px;
  height:42px;
  border-radius:16px;
  background:
    radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,.84), rgba(255,255,255,0) 58%),
    radial-gradient(90% 110% at 70% 70%, rgba(74,92,255,.42), rgba(74,92,255,0) 62%),
    radial-gradient(120% 120% at 40% 85%, rgba(202,164,108,.42), rgba(202,164,108,0) 60%),
    linear-gradient(135deg, rgba(47,51,57,.98), rgba(47,51,57,.68));
  box-shadow:0 18px 40px rgba(2,6,23,.18);
}
.brand__text{display:flex; flex-direction:column; line-height:1.05}
.brand__text b{font-weight:950; letter-spacing:-.01em}
.brand__text span{font-size:12px; color:rgba(47,51,57,.62); font-weight:700}

.nav{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;
}
.nav a{
  text-decoration:none;
  padding:12px 14px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.70);
  backdrop-filter: blur(14px);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
  font-size:13px;
  color:rgba(47,51,57,.78);
  font-weight:850;
  white-space:nowrap;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.nav__drop{position:relative}
.nav__trigger{
  appearance:none;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.70);
  backdrop-filter: blur(14px);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
  padding:12px 14px;
  border-radius:999px;
  font:inherit;
  font-size:13px;
  color:rgba(47,51,57,.78);
  font-weight:850;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.nav__trigger:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  background:rgba(255,255,255,.82);
  color:rgba(74,92,255,.95);
}
.nav__menu{
  position:absolute;
  left:50%;
  top:calc(100% + 10px);
  transform:translateX(-50%) translateY(8px);
  opacity:0;
  pointer-events:none;
  min-width:220px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.86);
  backdrop-filter: blur(18px);
  box-shadow:0 26px 80px rgba(2,6,23,.14);
  padding:10px;
  transition:opacity .18s ease, transform .18s ease;
}
.nav__menu:before{
  content:"";
  position:absolute;
  left:50%;
  top:-12px;
  width:240px;
  height:14px;
  transform:translateX(-50%);
}
.nav__menu a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(47,51,57,.08);
  background:rgba(255,255,255,.72);
  text-decoration:none;
  font-weight:600;
  color:rgba(47,51,57,.86);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.nav__menu a:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  border-color:rgba(74,92,255,.18);
  background:rgba(74,92,255,.08);
  color:rgba(74,92,255,.95);
}
.nav__drop:hover .nav__menu,
.nav__drop:focus-within .nav__menu,
.nav__drop.is-open .nav__menu{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav__drop:hover .nav__trigger svg,
.nav__drop:focus-within .nav__trigger svg,
.nav__drop.is-open .nav__trigger svg{
  transform:rotate(45deg);
}
.nav__trigger svg{transition:transform .18s ease}
.nav a:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  background:rgba(255,255,255,.82);
  color:rgba(74,92,255,.95);
}

.header__right{
  display:flex;
  align-items:center;
  gap:14px;
}
.header__phones{
  display:grid;
  gap:2px;
  text-align:right;
}
.phone{
  font-weight:950;
  text-decoration:none;
  letter-spacing:.01em;
  color:rgba(47,51,57,.92);
  font-size:14px;
  line-height:1.1;
}
.phone small{
  display:block;
  font-size:10px;
  font-weight:700;
  color:rgba(47,51,57,.55);
  text-transform:uppercase;
  letter-spacing:.02em;
}
.burger{
  display:none;
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.72);
  backdrop-filter: blur(14px);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.burger:hover{transform:translateY(-1px); box-shadow:0 18px 45px rgba(2,6,23,.10); background:rgba(255,255,255,.86)}

.drawer{
  position:fixed;
  inset:0;
  z-index:50;
  pointer-events:none;
}
.cookie{
  position:fixed;
  left:14px;
  right:14px;
  bottom:14px;
  z-index:49;
  pointer-events:none;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .22s ease, transform .22s ease;
}
.cookie.is-open{
  pointer-events:auto;
  opacity:1;
  transform:translateY(0);
}
.cookie__panel{
  margin:0 auto;
  max-width:980px;
  border-radius:22px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.86);
  box-shadow:0 24px 80px rgba(2,6,23,.14);
  backdrop-filter: blur(14px);
  padding:14px 14px;
  display:grid;
  gap:10px;
}
.cookie__t{font-weight:950; letter-spacing:-.01em}
.cookie__d{color:rgba(47,51,57,.70); font-weight:650; line-height:1.4}
.cookie__d a{color:rgba(74,92,255,.95); text-decoration:none; font-weight:850}
.cookie__d a:hover{text-decoration:underline}
.cookie__actions{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
.drawer__backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,24,39,.32);
  opacity:0;
  transition:opacity .22s ease;
}
.drawer__panel{
  position:absolute;
  right:12px;
  top:12px;
  width:min(420px, calc(100% - 24px));
  border-radius:22px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.86);
  backdrop-filter: blur(18px);
  box-shadow:0 30px 90px rgba(2,6,23,.18);
  transform:translateY(-10px) scale(.98);
  opacity:0;
  transition:transform .22s ease, opacity .22s ease;
  padding:14px;
}
.drawer__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:4px 4px 12px;
  border-bottom:1px solid rgba(47,51,57,.10);
  margin-bottom:12px;
}
.drawer__title{font-weight:950; letter-spacing:-.01em}
.drawer__close{
  width:44px;
  height:44px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.86);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.drawer__close:hover{transform:translateY(-1px); box-shadow:0 18px 45px rgba(2,6,23,.10)}
.drawer__nav{
  display:grid;
  gap:10px;
  padding:6px 2px 2px;
}
.drawer__nav a{
  text-decoration:none;
  padding:14px 14px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.72);
  font-weight:900;
  color:rgba(47,51,57,.86);
  transition:transform .18s ease, box-shadow .18s ease;
}
.drawer__nav a:hover{transform:translateY(-1px); box-shadow:0 18px 45px rgba(2,6,23,.10)}
.drawer.is-open{pointer-events:auto}
.drawer.is-open .drawer__backdrop{opacity:1}
.drawer.is-open .drawer__panel{opacity:1; transform:translateY(0) scale(1)}

.modal{
  position:fixed;
  inset:0;
  z-index:70;
  display:none;
}
.modal.is-open{display:block}
.modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,24,39,.34);
  opacity:0;
  transition:opacity .22s ease;
}
.modal__panel{
  position:absolute;
  left:50%;
  top:50%;
  width:min(560px, calc(100% - 24px));
  transform:translate(-50%, -50%) translateY(10px) scale(.98);
  opacity:0;
  border-radius:28px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.90);
  backdrop-filter: blur(18px);
  box-shadow:0 34px 100px rgba(2,6,23,.22);
  padding:16px;
  transition:opacity .22s ease, transform .22s ease;
}
.modal.is-open .modal__backdrop{opacity:1}
.modal.is-open .modal__panel{opacity:1; transform:translate(-50%, -50%) translateY(0) scale(1)}
.modal__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:6px 6px 12px;
  border-bottom:1px solid rgba(47,51,57,.10);
  margin-bottom:12px;
}
.modal__title{font-weight:950; letter-spacing:-.01em}
.modal__close{
  width:44px;
  height:44px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.88);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
  display:grid;
  place-items:center;
}
.modal__close:hover{transform:translateY(-1px); box-shadow:0 18px 45px rgba(2,6,23,.10)}

.hero{
  padding:116px 0 56px;
}
.hero__grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:end;
}
.hero__kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(202,164,108,.40);
  color:rgba(47,51,57,.82);
  background:rgba(255,255,255,.70);
  font-weight:850;
  font-size:13px;
  width:max-content;
}
.hero__kicker:before{
  content:"";
  width:18px;
  height:18px;
  border-radius:999px;
  background:
    radial-gradient(circle at 30% 30%, rgba(255,255,255,.9), rgba(255,255,255,0) 55%),
    linear-gradient(135deg, rgba(202,164,108,1), rgba(242,212,155,1));
  box-shadow:0 18px 40px rgba(202,164,108,.22);
}
.hero h1{
  margin:18px 0 0;
  font-weight:950;
  letter-spacing:-.03em;
  font-size:clamp(36px, 4.4vw, 54px);
  line-height:1.05;
  color:rgba(47,51,57,.90);
  text-wrap:balance;
}
.hero__lead{
  margin-top:18px;
  display:flex;
  align-items:center;
  gap:12px;
  font-size:18px;
  color:rgba(47,51,57,.72);
  font-weight:700;
}
.hero__lead b{color:rgba(47,51,57,.92)}
.hero__lead svg{flex:0 0 auto}

.hero__cards{
  margin-top:26px;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:16px;
  align-items:stretch;
}
.panel{
  border-radius:var(--radius-xl);
  background:rgba(255,255,255,.78);
  border:1px solid rgba(47,51,57,.10);
  box-shadow:var(--shadow2);
  backdrop-filter: blur(14px);
}
.panel--big{
  padding:22px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.panel--big h2{
  margin:0;
  font-size:26px;
  font-weight:950;
  letter-spacing:-.02em;
}
.panel--big p{
  margin:10px 0 0;
  color:rgba(47,51,57,.64);
  font-weight:650;
  line-height:1.45;
  max-width:44ch;
  font-size:13px;
}
.arrow{
  width:54px;
  height:54px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.80);
  display:grid;
  place-items:center;
  box-shadow:0 18px 45px rgba(2,6,23,.08);
}
.panel--mini{
  padding:18px 18px;
}
.panel--mini .t{
  font-size:13px;
  font-weight:900;
  color:rgba(74,92,255,.92);
  letter-spacing:.01em;
}
.panel--mini ul{
  margin:12px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:rgba(47,51,57,.70);
  font-weight:650;
  font-size:13px;
  line-height:1.35;
}
.panel--mini li{display:flex; gap:10px; align-items:flex-start}
.panel--mini li:before{content:"—"; color:rgba(47,51,57,.42)}

.person{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  min-height:520px;
}
.person__img{
  width:min(520px, 100%);
  height:auto;
  display:block;
  filter:drop-shadow(0 40px 70px rgba(2,6,23,.22));
  transform:translateY(6px);
  opacity:0;
}
.person__img.is-ready{animation:pop .7s ease forwards}
@keyframes pop{to{transform:translateY(0); opacity:1}}
.nameplate{
  position:absolute;
  right:0;
  bottom:54px;
  width:min(460px, 90%);
  padding:18px 18px;
  border-radius:18px;
  background:
    radial-gradient(120% 120% at 25% 15%, rgba(242,212,155,.55), rgba(242,212,155,0) 55%),
    linear-gradient(135deg, rgba(202,164,108,1), rgba(245,223,171,1));
  color:rgba(47,51,57,.92);
  box-shadow:0 28px 80px rgba(202,164,108,.24);
  border:1px solid rgba(202,164,108,.55);
  transform:translateY(10px);
  opacity:0;
  animation:pop .7s ease forwards .12s;
}
.nameplate b{font-weight:950; letter-spacing:-.01em}
.nameplate p{
  margin:8px 0 0;
  font-size:13px;
  line-height:1.35;
  color:rgba(47,51,57,.72);
  font-weight:650;
}
.nameplate .small{margin-top:10px; font-size:13px; font-weight:900; color:rgba(47,51,57,.84)}

.main{
  position:relative;
  background:linear-gradient(180deg, rgba(247,248,251,0), rgba(247,248,251,1) 22%, rgba(247,248,251,1));
}
.section{
  padding:54px 0;
}
.section__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.section__head h2{
  margin:0;
  font-size:28px;
  letter-spacing:-.02em;
  font-weight:950;
}
.section__head p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
  max-width:72ch;
  font-weight:650;
}
.grid-3{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
.grid-2{display:grid; grid-template-columns:repeat(2, 1fr); gap:14px}
.grid-4{display:grid; grid-template-columns:repeat(4, 1fr); gap:14px}

.card{
  border-radius:24px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  padding:16px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  min-width:0;
}
.card:hover{transform:translateY(-1px); border-color:rgba(74,92,255,.22); box-shadow:0 26px 80px rgba(2,6,23,.10)}
.card__k{font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.card__t{margin-top:8px; font-weight:950; letter-spacing:-.01em}
.card__d{margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45}
.card__actions{margin-top:12px; display:flex; flex-wrap:wrap; gap:10px; align-items:center}

.list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.list__item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  font-weight:700;
  color:rgba(47,51,57,.82);
}
.list__item:before{
  content:"";
  width:12px;
  height:12px;
  border-radius:6px;
  margin-top:4px;
  background:linear-gradient(135deg, rgba(74,92,255,1), rgba(90,134,255,1));
  box-shadow:0 18px 40px rgba(74,92,255,.16);
  flex:0 0 auto;
}

.accordion{
  border-radius:22px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  overflow:hidden;
}
.accordion details{border-top:1px solid rgba(47,51,57,.08)}
.accordion details:first-child{border-top:0}
.accordion summary{
  list-style:none;
  cursor:pointer;
  padding:16px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-weight:950;
  letter-spacing:-.01em;
  transition:background .18s ease;
}
.accordion summary:hover{background:rgba(255,255,255,.92)}
.accordion summary::-webkit-details-marker{display:none}
.acc__left{display:flex; align-items:center; gap:12px; min-width:0}
.acc__title{min-width:0}
.acc__meta{
  font-weight:950;
  color:rgba(74,92,255,.92);
  letter-spacing:.02em;
  font-size:12px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(74,92,255,.18);
  background:rgba(74,92,255,.06);
  white-space:nowrap;
}
.accordion .acc__body{
  padding:0 16px 16px;
  color:var(--muted);
  line-height:1.65;
  font-weight:650;
}
.acc__icon{
  width:42px;
  height:42px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  display:grid;
  place-items:center;
  box-shadow:0 18px 45px rgba(2,6,23,.06);
  flex:0 0 auto;
  transition:transform .18s ease;
}
details[open] .acc__icon{transform:rotate(45deg)}

.pill-list{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px}
.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(17,24,39,.03);
  color:rgba(47,51,57,.70);
  font-weight:750;
  font-size:12.5px;
  transition:background .18s ease, border-color .18s ease, color .18s ease;
}
.pill:hover{
  background:rgba(74,92,255,.08);
  border-color:rgba(74,92,255,.18);
  color:rgba(74,92,255,.92);
}

.problems__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.problem-card{
  border-radius:24px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  padding:18px;
  min-width:0;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display:flex;
  flex-direction:column;
  gap:12px;
  position:relative;
  overflow:hidden;
}
.problem-card:hover{transform:translateY(-1px); border-color:rgba(74,92,255,.22); box-shadow:0 26px 80px rgba(2,6,23,.10)}
.problem-card::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--pc-bg);
  background-size:cover;
  background-position:center;
  opacity:.42;
  transform:scale(1.02);
  transition:opacity .18s ease, transform .18s ease;
  filter:saturate(1.06) contrast(1.02);
}
.problem-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 320px at 0% 0%, rgba(255,255,255,.82), rgba(255,255,255,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.64));
  opacity:.86;
}
.problem-card:hover::before{opacity:.28; transform:scale(1.05)}
.problem-card > *{position:relative; z-index:1}
.problem-card__head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px}
.problem-card__title{font-weight:950; letter-spacing:-.01em}
.problem-card__desc{color:var(--muted); font-size:13px; line-height:1.45}
.problem-card__actions{margin-top:auto; display:flex; flex-wrap:wrap; gap:10px; align-items:center}

.problem-card--featured{
  grid-column:1 / -1;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(135deg, rgba(17,24,39,.92), rgba(17,24,39,.62));
  box-shadow:0 40px 120px rgba(2,6,23,.22);
  color:rgba(255,255,255,.92);
}
.problem-card--featured::before{opacity:.62; transform:scale(1.03)}
.problem-card--featured::after{
  background:
    radial-gradient(1000px 420px at 0% 0%, rgba(0,0,0,.55), rgba(0,0,0,0) 60%),
    linear-gradient(90deg, rgba(0,0,0,.70), rgba(0,0,0,.18) 58%, rgba(0,0,0,.45));
  opacity:.92;
}
.problem-card--featured:hover{border-color:rgba(242,212,155,.35); box-shadow:0 55px 150px rgba(2,6,23,.26)}
.problem-card--featured:hover::before{opacity:.52; transform:scale(1.06)}
.problem-card--featured .icon-badge{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.10);
  box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.problem-card--featured .pill{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.16);
  color:rgba(255,255,255,.84);
}
.problem-card--featured .pill:hover{
  background:rgba(242,212,155,.16);
  border-color:rgba(242,212,155,.26);
  color:rgba(242,212,155,.92);
}

.problem-feature{display:flex; align-items:flex-end; justify-content:space-between; gap:18px}
.problem-feature__main{min-width:0; max-width:860px}
.problem-feature__k{
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.70);
}
.problem-feature__t{margin-top:8px; font-weight:980; letter-spacing:-.02em; font-size:28px; line-height:1.05}
.problem-feature__d{margin-top:10px; color:rgba(255,255,255,.78); font-size:13.5px; line-height:1.5; max-width:64ch}
.problem-feature__side{display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; gap:14px}
.problem-feature__actions{display:flex; align-items:center; gap:12px}

.catalog{display:grid; gap:14px}
.catalog__top{
  position:sticky;
  top:14px;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border-radius:22px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
}
.searchbox{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:1 1 auto;
}
.searchbox__icon{
  width:40px;
  height:40px;
  border-radius:16px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(17,24,39,.03);
  display:grid;
  place-items:center;
  color:rgba(47,51,57,.66);
  flex:0 0 auto;
}
.searchbox__input{min-width:0; padding-left:0}
.catalog__filtersBtn{display:none}
.catalog__meta{display:flex; align-items:center; gap:12px; flex:0 0 auto}
.catalog__count{font-weight:900; color:rgba(47,51,57,.72); white-space:nowrap}

.select{display:inline-flex}
.select__control{
  appearance:none;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(17,24,39,.03);
  padding:12px 14px;
  font:inherit;
  font-size:13px;
  font-weight:850;
  color:rgba(47,51,57,.82);
}

.catalog__grid{display:grid; grid-template-columns:1fr; gap:14px; align-items:start}
.catalog__aside{position:static; top:auto; align-self:stretch}
.filter-card{
  border-radius:0;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  padding:0;
  display:grid;
  gap:10px;
}
.filter-card__top{display:none}
.filter-card__t{font-weight:980; letter-spacing:-.01em}
.filter-card__close{
  display:none;
  width:44px;
  height:44px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(17,24,39,.03);
  cursor:pointer;
  color:rgba(47,51,57,.78);
}

.filter-group{display:grid; gap:10px}
.filter-group__t{
  font-size:12px;
  color:rgba(47,51,57,.58);
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.chip-row{
  display:none;
  flex-wrap:nowrap;
  gap:8px;
  overflow:auto;
  padding:2px 2px 6px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.chip-row::-webkit-scrollbar{display:none}
.chip{
  appearance:none;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(17,24,39,.03);
  color:rgba(47,51,57,.76);
  padding:10px 12px;
  border-radius:999px;
  font:inherit;
  font-size:12.5px;
  font-weight:850;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.chip:hover{
  transform:translateY(-1px);
  background:rgba(74,92,255,.08);
  border-color:rgba(74,92,255,.18);
  color:rgba(74,92,255,.92);
}
.chip[aria-pressed="true"]{
  background:rgba(74,92,255,.10);
  border-color:rgba(74,92,255,.25);
  color:rgba(74,92,255,.95);
  box-shadow:0 18px 50px rgba(74,92,255,.12);
}

.filter-actions{display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:flex-end}

.services-grid{display:grid; grid-template-columns:repeat(4, 1fr); gap:14px}
.service-card.card{padding:0; overflow:hidden}
.service-card{display:flex; flex-direction:column}
.service-card__media{height:160px; background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12))}
.service-card__media img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.02) contrast(1.02)}
.service-card__body{padding:16px; display:grid; gap:8px}
.service-card__txt{min-width:0}
.service-card__k{font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.service-card__t{font-weight:980; letter-spacing:-.01em}
.service-card__d{color:var(--muted); font-size:13px; line-height:1.45}

.video-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:14px;
}
.video-card{
  display:grid;
  grid-template-rows:200px 1fr;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  text-decoration:none;
  color:inherit;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.video-card:hover{
  transform:translateY(-2px);
  box-shadow:0 26px 80px rgba(2,6,23,.10);
  border-color:rgba(74,92,255,.22);
}
.video-card__media{
  position:relative;
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12));
}
.video-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.02) contrast(1.06);
}
.video-card__play{
  position:absolute;
  left:14px;
  bottom:14px;
  width:44px;
  height:44px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(2,6,23,.35);
  display:grid;
  place-items:center;
  color:rgba(255,255,255,.95);
  backdrop-filter: blur(12px);
  box-shadow:0 18px 55px rgba(2,6,23,.20);
}
.video-card__dur{
  position:absolute;
  right:14px;
  bottom:14px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(2,6,23,.35);
  color:rgba(255,255,255,.95);
  font-size:12px;
  font-weight:850;
  backdrop-filter: blur(12px);
}
.video-card__body{
  padding:16px;
  display:grid;
  gap:8px;
  align-content:start;
}
.video-card__k{font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.video-card__t{font-weight:980; letter-spacing:-.01em}
.video-card__d{color:var(--muted); font-size:13px; line-height:1.45}

.symptoms-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:14px;
}
.symptom-card{
  display:grid;
  grid-template-rows:170px 1fr;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  text-decoration:none;
  color:inherit;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.symptom-card:hover{
  transform:translateY(-2px);
  box-shadow:0 26px 80px rgba(2,6,23,.10);
  border-color:rgba(74,92,255,.22);
}
.symptom-card__media{
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12));
}
.symptom-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.02) contrast(1.05);
}
.symptom-card__body{
  padding:16px;
  display:grid;
  gap:8px;
  align-content:start;
}
.symptom-card__t{
  font-weight:980;
  letter-spacing:-.01em;
}
.symptom-card__d{
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}
.symptom-card__actions{
  margin-top:6px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.catwall {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.catwall__card {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(47, 51, 57, .10);
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 22px 70px rgba(2, 6, 23, .10);
  backdrop-filter: blur(14px);
  text-decoration: none;
  color: inherit;
  min-height: 320px;
  display: grid;
  grid-template-rows: 1fr auto;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.catwall__card:hover {
  transform: translateY(-2px);
  box-shadow: 0 30px 90px rgba(2, 6, 23, .14);
  border-color: rgba(74, 92, 255, .22);
}

/* ---- Последняя карточка на десктопе: шире в 2 раза и по центру ---- */
.catwall__card:last-child {
  grid-column: 2 / 4;   /* занимает колонки 2 и 3 (центральные) */
}

.catwall__media {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(1200px 600px at 12% 8%, rgba(74, 92, 255, .24), transparent 55%),
    radial-gradient(900px 520px at 88% 16%, rgba(202, 164, 108, .26), transparent 58%),
    linear-gradient(180deg, rgba(245, 246, 248, .0), rgba(245, 246, 248, .55));
}

.catwall__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1.04) contrast(1.08) brightness(.83);
  transform: scale(1.02);
}

.catwall__card:hover .catwall__media img {
  transform: scale(1.06);
}

.catwall__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(2, 6, 23, .17) 0%, rgba(2, 6, 23, .27) 46%, rgba(2, 6, 23, .36) 100%),
    radial-gradient(900px 460px at 50% 0%, rgba(255, 255, 255, .10), transparent 62%);
  pointer-events: none;
}

.catwall__body {
  position: relative;
  z-index: 1;
  padding: 18px;
  display: grid;
  gap: 10px;
  align-content: end;
}

.catwall__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.catwall__k {
  font-size: 12px;
  color: rgba(255, 255, 255, .86);
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  background: rgba(2, 6, 23, .38);
  border: 1px solid rgba(255, 255, 255, .18);
  padding: 7px 10px;
  border-radius: 999px;
  backdrop-filter: blur(12px);
}

.catwall__meta {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(2, 6, 23, .38);
  color: rgba(255, 255, 255, .92);
  display: grid;
  place-items: center;
  font-weight: 950;
  letter-spacing: -.02em;
  backdrop-filter: blur(12px);
}

.catwall__t {
  font-weight: 980;
  letter-spacing: -.02em;
  font-size: 18px;
  line-height: 1.15;
  color: rgba(255, 255, 255, .96);
  text-shadow: 0 10px 24px rgba(2, 6, 23, .35);
}

.catwall__d {
  color: rgba(255, 255, 255, .86);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
  max-width: 52ch;
}

.catwall__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 6px;
}

.catwall__actions .btn {
  background: rgba(255, 255, 255, .88);
  border-color: rgba(255, 255, 255, .30);
  color: rgba(2, 6, 23, .88);
}

.catwall__actions .btn:hover {
  background: rgba(255, 255, 255, .96);
  border-color: rgba(255, 255, 255, .40);
}

.catwall__arrow {
  width: 44px;
  height: 44px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(2, 6, 23, .28);
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, .92);
  box-shadow: 0 18px 45px rgba(2, 6, 23, .16);
  transform: rotate(180deg);
}

.catwall__card:hover .catwall__arrow {
  background: rgba(74, 92, 255, .22);
  border-color: rgba(74, 92, 255, .30);
}

.catalog-empty {
  margin-top: 14px;
}

/* ===== АДАПТИВНОСТЬ ===== */

/* Планшеты и небольшие экраны (≤ 768px) – сетка в 2 колонки */
@media (max-width: 768px) {
  .catwall {
    grid-template-columns: repeat(2, 1fr);
  }

  /* На планшетах последняя карточка остаётся широкой (занимает обе колонки) */
  .catwall__card:last-child {
    grid-column: span 2;
  }
}

/* Мобильные устройства (≤ 480px) – одна колонка */
@media (max-width: 480px) {
  .catwall {
    grid-template-columns: 1fr;
  }

  /* На мобилках последняя карточка становится обычной (на всю ширину, как все) */
  .catwall__card:last-child {
    grid-column: auto;   /* сбрасываем явное позиционирование */
  }
}

.prose{
  color:rgba(47,51,57,.88);
  font-weight:650;
  line-height:1.7;
}
.prose h2,.prose h3,.prose h4{
  margin:22px 0 10px;
  font-weight:980;
  letter-spacing:-.02em;
  line-height:1.15;
}
.prose h2{font-size:26px}
.prose h3{font-size:20px}
.prose h4{font-size:16px}
.prose p{margin:0 0 12px}
.prose ul,.prose ol{margin:0 0 14px; padding-left:18px}
.prose li{margin:6px 0}
.prose a{color:rgba(74,92,255,.95); text-decoration:none}
.prose a:hover{text-decoration:underline}
.prose table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.72);
  box-shadow:0 18px 55px rgba(2,6,23,.06);
}
.prose th,.prose td{
  text-align:left;
  padding:12px 12px;
  border-top:1px solid rgba(47,51,57,.08);
}
.prose tr:first-child th,.prose tr:first-child td{border-top:0}
.prose blockquote{
  margin:14px 0;
  padding:14px 14px;
  border-radius:18px;
  border:1px solid rgba(74,92,255,.18);
  background:rgba(74,92,255,.06);
  color:rgba(47,51,57,.80);
}

.prose img{max-width:100%; height:auto; border-radius:22px; display:block; box-shadow:0 18px 55px rgba(2,6,23,.10); border:1px solid rgba(47,51,57,.10); background:rgba(255,255,255,.55)}

.svc-hero{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:16px;
  align-items:stretch;
}
.svc-hero__text{
  border-radius:30px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.78);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  backdrop-filter: blur(12px);
  padding:18px;
}
.svc-hero__lead{
  margin:10px 0 0;
  color:var(--muted);
  font-weight:650;
  max-width:70ch;
  line-height:1.55;
}
.svc-hero__media{
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12));
}
.svc-hero__media img{width:100%; height:100%; object-fit:cover; display:block}

.svc-layout{display:grid; grid-template-columns:1fr 360px; gap:14px; align-items:start}
.svc-aside{position:sticky; top:92px}
.svc-asideCard .card__t{font-size:18px}
.svc-nav{
  display:flex;
  gap:10px;
  overflow:auto;
  padding:2px 2px 8px;
  scrollbar-width:none;
}
.svc-nav::-webkit-scrollbar{display:none}
.svc-nav__a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(17,24,39,.03);
  color:rgba(47,51,57,.76);
  font-weight:850;
  font-size:12.5px;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.svc-nav__a:hover{
  transform:translateY(-1px);
  background:rgba(74,92,255,.08);
  border-color:rgba(74,92,255,.18);
  color:rgba(74,92,255,.92);
}
.svc-section{margin-top:14px}
.svc-section__head h2{margin:0; font-size:20px}

.related-grid{display:grid; grid-template-columns:repeat(4, 1fr); gap:14px}
.mini-card.card{padding:0; overflow:hidden; text-decoration:none; color:inherit}
.mini-card__media{height:140px; background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12))}
.mini-card__media img{width:100%; height:100%; object-fit:cover; display:block}
.mini-card__body{padding:14px}
.mini-card__t{font-weight:980; letter-spacing:-.01em; line-height:1.2}
.mini-card__k{margin-top:8px; font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}

.proc-head{display:grid; gap:12px}
.proc-title{margin:0; font-size:44px; letter-spacing:-.03em}
.proc-media{
  border-radius:28px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  overflow:hidden;
  height:210px;
}
.proc-media img{width:100%; height:100%; object-fit:cover; display:block}
.proc-lead{margin:0; color:rgba(47,51,57,.70); font-size:13px; line-height:1.6; max-width:86ch; font-weight:650}

.proc-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:14px}
.proc-grid--2{margin-top:14px; grid-template-columns:1fr 1fr}
.proc-card{display:grid; gap:10px}
.proc-card__k{font-weight:980; letter-spacing:-.01em}
.proc-card__p{color:var(--muted); font-size:13px; line-height:1.55}
.proc-book__actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:10px}
.proc-book__note{margin-top:10px; color:rgba(47,51,57,.62); font-size:11.5px; line-height:1.45; font-weight:650}
.proc-list .proc-card__k{margin-bottom:6px}
.proc-ul{margin:0; padding-left:18px; color:rgba(47,51,57,.72); font-size:13px; line-height:1.6; font-weight:650}
.proc-ul li{margin:6px 0}

.proc-h2{margin:0 0 14px; font-size:34px; letter-spacing:-.03em}
.proc-steps{display:grid; gap:14px}
.proc-step{display:grid; gap:6px}
.proc-step__t{font-weight:980; letter-spacing:-.01em}
.proc-step__d{color:var(--muted); font-size:13px; line-height:1.55}

.doc-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
.doc-card.card{padding:0; overflow:hidden; text-decoration:none; color:inherit}
.doc-card__media{height:220px; background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12))}
.doc-card__media img{width:100%; height:100%; object-fit:cover; display:block}
.doc-card__body{padding:14px}
.doc-card__name{font-weight:980; letter-spacing:-.01em; line-height:1.2}
.doc-card__spec{margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45; font-weight:650}
.doc-card__meta{margin-top:10px; display:flex; flex-wrap:wrap; gap:8px}

.doc-hero{display:grid; grid-template-columns:340px 1fr; gap:14px; align-items:stretch}
.doc-hero__media{
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12));
}
.doc-hero__media img{width:100%; height:100%; object-fit:cover; display:block}
.doc-hero__text{
  border-radius:28px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.78);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  backdrop-filter: blur(12px);
  padding:18px;
}
.doc-hero__spec{margin-top:10px; color:rgba(47,51,57,.72); font-weight:800; line-height:1.35}
.doc-hero__note{margin-top:12px; color:rgba(47,51,57,.60); font-size:11.5px; line-height:1.45; font-weight:650}

.about-hero{display:grid; grid-template-columns:340px 1fr; gap:14px; align-items:stretch}
.about-hero__media{
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12));
}
.about-hero__media img{width:100%; height:100%; object-fit:cover; display:block}
.about-hero__text{
  border-radius:28px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.78);
  box-shadow:0 30px 90px rgba(2,6,23,.12);
  backdrop-filter: blur(12px);
  padding:18px;
}
.about-hero__spec{margin-top:10px; color:rgba(47,51,57,.72); font-weight:850; line-height:1.35}
.about-hero__lead{margin:12px 0 0; color:var(--muted); font-weight:650; max-width:78ch; line-height:1.55}

.about-facts{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
.about-timeline{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.about-timeline__card{padding:18px}
.about-timeline__k{font-size:12px; color:rgba(47,51,57,.60); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.about-timeline__item{margin-top:10px; color:rgba(47,51,57,.76); font-weight:700; line-height:1.55}
.about-timeline__y{display:inline-block; min-width:92px; color:rgba(74,92,255,.95); font-weight:950}

.about-edu{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
.about-courses{padding:18px}
.about-courses__grid{margin-top:10px; display:grid; grid-template-columns:repeat(2, 1fr); gap:10px}
.about-course{padding:12px 12px; border-radius:18px; border:1px solid rgba(47,51,57,.10); background:rgba(255,255,255,.70); box-shadow:0 10px 28px rgba(2,6,23,.06); color:rgba(47,51,57,.74); font-weight:700; line-height:1.45}
.about-course__y{display:inline-block; min-width:54px; color:rgba(74,92,255,.95); font-weight:950}

.about-spec-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.about-spec{padding:18px}
.about-spec__t{font-weight:980; letter-spacing:-.01em; font-size:18px}
.about-ul{margin:12px 0 0; padding-left:18px; color:rgba(47,51,57,.74); font-size:13px; line-height:1.6; font-weight:650}
.about-ul li{margin:6px 0}

.promo-detail{padding:0; overflow:hidden}
.promo-detail__media{height:260px; background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12))}
.promo-detail__media img{width:100%; height:100%; object-fit:cover; display:block}
.promo-detail__body{padding:18px}
.promo-detail__t{margin:12px 0 0; font-size:28px; letter-spacing:-.02em}
.promo-detail__d{margin-top:10px; color:var(--muted); font-size:13px; line-height:1.55; font-weight:650; max-width:90ch}
.promo-detail__box{margin-top:12px; border-radius:22px; border:1px solid rgba(47,51,57,.10); background:rgba(17,24,39,.03); padding:14px}
.promo-detail__boxT{font-weight:980; letter-spacing:-.01em}
.promo-detail__ul{margin:10px 0 0; padding-left:18px; color:rgba(47,51,57,.72); font-size:13px; line-height:1.6; font-weight:650}
.promo-detail__ul li{margin:6px 0}

.promo-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
.promo-card.card{padding:0; overflow:hidden; text-align:left}
.promo-card{cursor:pointer}
.promo-card__media{height:150px; background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.12))}
.promo-card__media img{width:100%; height:100%; object-fit:cover; display:block}
.promo-card__body{padding:14px}
.promo-card__k{font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.promo-card__t{margin-top:8px; font-weight:980; letter-spacing:-.01em; line-height:1.18}
.promo-card__d{margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45; font-weight:650}
.promo-card.is-active{outline:2px solid rgba(74,92,255,.26); box-shadow:0 22px 70px rgba(2,6,23,.12)}

.cta-split{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:14px;
  align-items:stretch;
}

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

.slider{
  position:relative;
}
.slider__viewport{
  overflow:hidden;
  border-radius:28px;
}
.slider__track{
  display:flex;
  gap:14px;
  overflow:auto;
  padding:2px 2px 14px;
  scroll-snap-type:x mandatory;
  scroll-padding:14px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.slider__track::-webkit-scrollbar{display:none}
.slider__item{
  flex:0 0 clamp(280px, 34vw, 420px);
  scroll-snap-align:start;
}
.slider--pages .slider__item{flex:0 0 100%}

.methods-page{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:14px;
}
.slide{
  border-radius:24px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  min-width:0;
  height:100%;
  display:grid;
  grid-template-rows:180px 1fr;
}
.slide:hover{transform:translateY(-1px); border-color:rgba(74,92,255,.22); box-shadow:0 26px 80px rgba(2,6,23,.10)}
.slide__media{
  position:relative;
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.10));
}
.slide__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.slide__body{padding:16px; display:grid; gap:8px}
.slide__k{font-size:12px; color:rgba(47,51,57,.58); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.slide__t{font-weight:950; letter-spacing:-.01em}
.slide__d{color:var(--muted); font-size:13px; line-height:1.45}
.slide__actions{margin-top:6px; display:flex; flex-wrap:wrap; gap:10px; align-items:center}

.slider__controls{
  position:absolute;
  inset:0;
  pointer-events:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 10px;
  z-index:10;
}
.slider__btn{
  width:46px;
  height:46px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.78);
  backdrop-filter: blur(14px);
  box-shadow:0 14px 35px rgba(2,6,23,.06);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
  display:grid;
  place-items:center;
  color:rgba(47,51,57,.86);
  pointer-events:auto;
}
.slider__btn:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  background:rgba(74,92,255,.10);
  border-color:rgba(74,92,255,.22);
  color:rgba(74,92,255,.95);
}

.methods-swiper{position:relative}
.methods-swiper .swiper-wrapper{display:flex}
.methods-swiper .swiper-slide{height:auto}
.methods-swiper{padding:0 62px}
.methods-swiper .slider__controls{padding:0}
.methods-swiper .slider__btn{transform:none}
.methods-swiper .slider__btn:hover{transform:translateY(-1px)}

.video-swiper{position:relative; padding:0 62px}
.video-swiper .slider__controls{padding:0}
.video-swiper .swiper-slide{height:auto}

.contact-split{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:14px;
  align-items:stretch;
}
.contact-card{
  border-radius:28px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  padding:18px;
}
.contact-list{display:grid; gap:12px; margin-top:12px}
.contact-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px;
  border-radius:20px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 12px 35px rgba(2,6,23,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.contact-item:hover{transform:translateY(-1px); border-color:rgba(74,92,255,.20); box-shadow:0 18px 45px rgba(2,6,23,.10)}
.contact-item__left{display:flex; gap:12px; align-items:center; min-width:0}
.contact-item__txt{min-width:0}
.contact-item__k{font-size:12px; color:rgba(47,51,57,.60); font-weight:900; letter-spacing:.12em; text-transform:uppercase}
.contact-item__v{margin-top:6px; font-weight:950; letter-spacing:-.01em}
.contact-item__v a{text-decoration:none}
.contact-item__d{margin-top:6px; color:var(--muted); font-size:12.5px; line-height:1.35}

.form-card{
  border-radius:28px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  padding:18px;
}
.form{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.field{display:grid; gap:6px}
.label{font-size:12px; color:rgba(47,51,57,.66); font-weight:850; letter-spacing:.02em}
.input{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.92);
  font:inherit;
}
.check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-weight:650;
  color:rgba(47,51,57,.75);
  font-size:13px;
  line-height:1.35;
}
.check__input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
}
.check__box{
  width:18px;
  height:18px;
  border-radius:6px;
  border:1px solid rgba(47,51,57,.18);
  background:rgba(255,255,255,.78);
  box-shadow:0 10px 24px rgba(2,6,23,.06);
  flex:0 0 auto;
  margin-top:2px;
}
.check__text a{color:rgba(74,92,255,.95); text-decoration:none; font-weight:850}
.check__text a:hover{text-decoration:underline}
.check__input:focus-visible + .check__box{outline:2px solid rgba(74,92,255,.30); outline-offset:2px}
.check__input:checked + .check__box{
  background:rgba(74,92,255,.95);
  border-color:rgba(74,92,255,1);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-size: 12px;
  background-position: center;
  background-repeat: no-repeat;
}
.note{color:var(--muted); font-size:12.5px; line-height:1.45}
.method-card{
  border-radius:24px;
  border:1px solid rgba(47,51,57,.10);
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 55px rgba(2,6,23,.08);
  backdrop-filter: blur(12px);
  overflow:hidden;
  min-width:0;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display:grid;
  grid-template-rows:170px 1fr;
}
.method-card:hover{transform:translateY(-1px); border-color:rgba(74,92,255,.22); box-shadow:0 26px 80px rgba(2,6,23,.10)}
.method-card__media{
  position:relative;
  background:linear-gradient(135deg, rgba(74,92,255,.10), rgba(202,164,108,.10));
}
.method-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.02) contrast(1.02);
}
.method-card__plus{
  position:absolute;
  right:12px;
  top:12px;
  width:46px;
  height:46px;
  border-radius:18px;
  border:1px solid rgba(47,51,57,.12);
  background:rgba(255,255,255,.86);
  backdrop-filter: blur(14px);
  box-shadow:0 18px 45px rgba(2,6,23,.10);
  display:grid;
  place-items:center;
  color:rgba(47,51,57,.86);
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}
.method-card:hover .method-card__plus{
  background:rgba(74,92,255,.12);
  border-color:rgba(74,92,255,.22);
  color:rgba(74,92,255,.95);
  transform:rotate(45deg);
}
.method-card__body{padding:16px}
.method-card__t{font-weight:950; letter-spacing:-.01em}
.method-card__d{margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45}

.reveal{
  opacity:0;
  transform:translateY(10px);
  transition:opacity .6s ease, transform .6s ease;
}
.reveal.is-in{
  opacity:1;
  transform:translateY(0);
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; transition:none}
  .btn,.nav a,.card,.burger,.drawer__panel,.drawer__backdrop{transition:none}
}

@media (max-width: 1060px){
  .hero__grid{grid-template-columns:1fr; align-items:start}
  .person{min-height:440px; justify-content:center}
  .nameplate{right:50%; transform:translate(50%, 10px)}
  .grid-4{grid-template-columns:repeat(2, 1fr)}
  .problems__grid{grid-template-columns:repeat(2, 1fr)}
  .problem-feature{flex-direction:column; align-items:stretch}
  .problem-feature__side{flex-direction:row; align-items:center; justify-content:space-between}
  .services-grid{grid-template-columns:repeat(2, 1fr)}
  .video-grid{grid-template-columns:repeat(2, 1fr)}
  .methods__grid{grid-template-columns:repeat(2, 1fr)}
  .methods-page{grid-template-columns:repeat(2, 1fr)}
  .symptoms-grid{grid-template-columns:repeat(2, 1fr)}
  .catwall{grid-template-columns:repeat(2, 1fr)}
  .contact-split{grid-template-columns:1fr}
  .svc-hero{grid-template-columns:1fr}
  .svc-layout{grid-template-columns:1fr}
  .svc-aside{position:static}
  .related-grid{grid-template-columns:repeat(2, 1fr)}
  .proc-grid{grid-template-columns:1fr}
  .proc-grid--2{grid-template-columns:1fr}
  .cta-split{grid-template-columns:1fr}
  .doc-grid{grid-template-columns:repeat(2, 1fr)}
  .doc-hero{grid-template-columns:1fr}
  .about-hero{grid-template-columns:1fr}
  .about-facts{grid-template-columns:repeat(2, 1fr)}
  .about-timeline{grid-template-columns:1fr}
  .about-edu{grid-template-columns:repeat(2, 1fr)}
  .about-courses__grid{grid-template-columns:1fr}
  .about-spec-grid{grid-template-columns:1fr}
  .promo-grid{grid-template-columns:repeat(2, 1fr)}
}

@media (max-width: 640px){
  .catwall{grid-template-columns:1fr}
  .catwall__card{min-height:280px}
  .symptoms-grid{grid-template-columns:1fr}
  .video-grid{grid-template-columns:1fr}
}
@media (max-width: 960px){
  .nav{display:none}
  .burger{display:inline-grid; place-items:center}
  .phone{display:none}
  .hero__cards{grid-template-columns:1fr}
  .panel--big{flex-direction:column; align-items:flex-start}
  .grid-3{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  .problems__grid{grid-template-columns:1fr}
  .catalog__top{position:static; top:auto; flex-wrap:wrap}
  .catalog__meta{width:100%; justify-content:space-between}
  .services-grid{grid-template-columns:1fr}
  .service-card__media{height:180px}
  .methods__grid{grid-template-columns:1fr}
  .related-grid{grid-template-columns:1fr}
}
@media (max-width: 520px){
  .hero{padding-top:98px}
  .hero h1{font-size:34px}
  .hero__lead{font-size:16px}
  .panel--big h2{font-size:22px}
  .section{padding:44px 0}
  .doc-grid{grid-template-columns:1fr}
  .doc-card__media{height:210px}
  .about-facts{grid-template-columns:1fr}
  .about-edu{grid-template-columns:1fr}
  .promo-grid{grid-template-columns:1fr}
  .promo-detail__media{height:210px}
}
 /* Контейнер блока */
        .benefits-grid {
            max-width: 1280px;
            width: 100%;
            margin: 0 auto;
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 1.8rem;
        }

        /* Карточка-ссылка: горизонтальный flex (иконка слева, текст справа) */
        .benefit-card {
            display: flex;
            align-items: center;
            gap: 1rem;
            background: white;
            border-radius: 1.5rem;
            padding: 1.2rem 1.2rem;
            text-decoration: none;
            border: 1px solid #e2edf2;
            transition: all 0.25s ease;
            box-shadow: 0 5px 12px rgba(0, 0, 0, 0.02);
        }

        .benefit-card:hover {
            transform: translateY(-4px);
            border-color: #c2dae8;
            box-shadow: 0 15px 25px -10px rgba(44, 125, 160, 0.15);
            background: #ffffff;
        }

        /* Круглая иконка */
        .benefit-icon {
            flex-shrink: 0;
            width: 52px;
            height: 52px;
            background: #eef3fc;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.2s;
        }

        .benefit-card:hover .benefit-icon {
            background: #2c7da0;
        }

        .benefit-icon i {
            font-size: 1.6rem;
            color: #2c7da0;
            transition: color 0.2s;
        }

        .benefit-card:hover .benefit-icon i {
            color: white;
        }

        /* Текстовая часть */
        .benefit-text {
            flex: 1;
        }

        .benefit-title {
            font-size: 1.2rem;
            font-weight: 700;
            color: #0f2c3b;
            margin-bottom: 0.25rem;
            line-height: 1.3;
        }

        .benefit-description {
            font-size: 0.85rem;
            line-height: 1.4;
            color: #2e556b;
            margin: 0;
        }

        /* Адаптив: планшет -> 2 колонки */
        @media (max-width: 992px) {
            .benefits-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 1.5rem;
            }
        }

        /* Мобильный: 1 колонка, но внутри карточки иконка остаётся слева (если достаточно места) */
        @media (max-width: 640px) {
            .benefits-grid {
                grid-template-columns: 1fr;
                gap: 1rem;
            }
            .benefit-card {
                padding: 1rem 1.2rem;
            }
            .benefit-icon {
                width: 48px;
                height: 48px;
            }
            .benefit-icon i {
                font-size: 1.4rem;
            }
            .benefit-title {
                font-size: 1.1rem;
            }
            .benefit-description {
                font-size: 0.8rem;
            }
        }

        /* На очень маленьких телефонах (ширина < 400px) можно перевести иконку вверх, но по условию оставляем строкой */
        @media (max-width: 420px) {
            .benefit-card {
                flex-direction: column;
                text-align: center;
                gap: 0.6rem;
            }
            .benefit-icon {
                margin-bottom: 0.2rem;
            }
        }

        .benefit-card:focus-visible {
            outline: 3px solid #2c7da0;
            outline-offset: 2px;
            border-radius: 1.5rem;
        }


.services-grid .service-card__d{
	display:none;
}
.services-grid .service-card__k{
		display:none;
}

