/* =========================
   ALEXCLUB THEME — STABLE SYNC V12
   Полный чистый main.css, не патч.
========================= */

@font-face{
  font-family:"Evolventa";
  src:url("../fonts/Evolventa-Regular.woff") format("woff");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"Evolventa";
  src:url("../fonts/Evolventa-Bold.woff") format("woff");
  font-weight:700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"Evolventa";
  src:url("../fonts/Evolventa-Oblique.woff") format("woff");
  font-weight:400;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:"Evolventa";
  src:url("../fonts/Evolventa-BoldOblique.woff") format("woff");
  font-weight:700;
  font-style:italic;
  font-display:swap;
}

:root{
  --ac-blue:#0b4fa3;
  --ac-cyan:#0787bd;
  --ac-blue2:#2d7fff;
  --ac-red:#ef3340;
  --ac-green:#35d07f;
  --ac-purple:#9b78ff;
  --ac-bg:#f4f8ff;
  --ac-surface:#fff;
  --ac-text:#071936;
  --ac-muted:#64748b;
  --ac-line:rgba(8,28,62,.12);
  --ac-header-height:92px;
}

html[data-theme=dark]{
  --ac-bg:#060914;
  --ac-surface:#101827;
  --ac-text:#fff;
  --ac-muted:rgba(255,255,255,.64);
  --ac-line:rgba(255,255,255,.14);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  padding-top:var(--ac-header-height);
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:radial-gradient(circle at top left,rgba(45,127,255,.12),transparent 30rem),var(--ac-bg);
  color:var(--ac-text);
}
body.ac-menu-open{overflow:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto}
button,input,textarea,select{font-family:inherit}
.ac-container{width:min(1180px,calc(100% - 32px));margin:0 auto}

/* HEADER */

.ac-header{
  position:fixed;
  inset:0 0 auto;
  z-index:1000;
  padding:12px 0;
  pointer-events:none;
}
.admin-bar .ac-header{top:32px}

.ac-header__inner{
  width:calc(100% - 32px);
  max-width:none;
  min-height:68px;
  margin:0 auto;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.76);
  box-shadow:0 16px 42px rgba(8,28,62,.12);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  pointer-events:auto;
  transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,min-height .22s ease;
}

.ac-header.is-scrolled .ac-header__inner{
  width:calc(100% - 32px);
  min-height:62px;
  background:rgba(9,13,24,.72);
  border-color:rgba(255,255,255,.14);
  box-shadow:0 18px 46px rgba(5,18,42,.22);
}

.ac-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.ac-brand__logo{
  width:50px;
  height:50px;
  border-radius:999px;
  background:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 10px 24px rgba(11,79,163,.13);
  flex:0 0 auto;
}
.ac-brand__logo img{width:40px;height:40px;object-fit:contain}

.ac-brand__text{
  display:flex;
  flex-direction:column;
  gap:4px;
  line-height:1;
  min-width:0;
}
.ac-brand__text strong{
  color:var(--ac-cyan);
  font-size:24px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ac-brand__text em{
  color:#485160;
  font-size:12px;
  line-height:1;
  font-style:normal;
  font-weight:700;
  white-space:nowrap;
}
.ac-header.is-scrolled .ac-brand__text strong{color:#fff}
.ac-header.is-scrolled .ac-brand__text em{color:rgba(255,255,255,.68)}

html[data-theme=dark] .ac-header__inner{
  background:rgba(9,13,24,.72);
  border-color:rgba(255,255,255,.14);
}
html[data-theme=dark] .ac-brand__text strong{color:#38bdf8}
html[data-theme=dark] .ac-brand__text em{color:rgba(255,255,255,.70)}

/* BURGER */

.ac-burger{
  position:relative;
  width:50px;
  height:50px;
  border:0;
  border-radius:14px;
  cursor:pointer;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.16),transparent 34%),linear-gradient(180deg,#101827,#05070d);
  box-shadow:0 16px 34px rgba(5,18,42,.24),inset 0 1px 0 rgba(255,255,255,.10);
  overflow:hidden;
  flex:0 0 auto;
}
.ac-burger::after{
  content:"";
  position:absolute;
  right:11px;
  top:11px;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--ac-red);
  box-shadow:0 0 0 4px rgba(239,51,64,.16);
}
.ac-burger span{
  position:absolute;
  left:14px;
  height:2px;
  border-radius:999px;
  background:#fff;
  transition:transform .22s ease,width .22s ease,opacity .22s ease;
}
.ac-burger span:nth-child(1){top:18px;width:16px}
.ac-burger span:nth-child(2){top:25px;width:24px}
.ac-burger span:nth-child(3){top:32px;width:11px}
body.ac-menu-open .ac-burger span:nth-child(1){width:24px;transform:translateY(7px) rotate(45deg)}
body.ac-menu-open .ac-burger span:nth-child(2){opacity:0;transform:translateX(8px)}
body.ac-menu-open .ac-burger span:nth-child(3){width:24px;transform:translateY(-7px) rotate(-45deg)}
body.ac-menu-open .ac-burger::after{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.14)}

/* MENU */

.ac-menu{position:fixed;inset:0;z-index:2000;pointer-events:none}
.ac-menu__backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(0,0,0,.58);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  opacity:0;
  transition:.25s;
}
.ac-menu__panel{
  position:absolute;
  top:16px;
  left:16px;
  bottom:16px;
  width:min(560px,calc(100vw - 32px));
  padding:24px;
  overflow:auto;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.14);
  background:radial-gradient(circle at 20% 0%,rgba(45,127,255,.24),transparent 34%),radial-gradient(circle at 90% 20%,rgba(239,51,64,.18),transparent 32%),linear-gradient(180deg,#101827,#070a12);
  color:#fff;
  box-shadow:0 40px 100px rgba(0,0,0,.45);
  transform:translateX(-18px) scale(.98);
  opacity:0;
  transition:.25s;
}
body.ac-menu-open .ac-menu{pointer-events:auto}
body.ac-menu-open .ac-menu__backdrop{opacity:1}
body.ac-menu-open .ac-menu__panel{opacity:1;transform:none}

.ac-menu__head{display:flex;justify-content:space-between;gap:18px;margin-bottom:20px}
.ac-kicker{display:block;font-size:12px;letter-spacing:.16em;font-weight:700;color:rgba(255,255,255,.54);margin-bottom:10px}
.ac-menu h2{margin:0;font-size:34px;line-height:1;letter-spacing:-.04em}
.ac-menu p{max-width:360px;color:rgba(255,255,255,.66);font-weight:400;line-height:1.35}
.ac-menu__close{width:48px;height:48px;border:0;border-radius:17px;background:rgba(255,255,255,.10);color:#fff;font-size:30px;cursor:pointer}

/* MENU CARDS */

.ac-menu__grid{display:grid;gap:10px}
.ac-menu-card{
  position:relative;
  min-height:78px;
  padding:14px 18px 14px 14px;
  border-radius:22px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  align-items:center;
  gap:14px;
  overflow:hidden;
}
.ac-menu-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--card-color)}
.ac-card-icon{
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.07));
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  font-size:23px;
  border:1px solid rgba(255,255,255,.10);
}
.ac-card-copy{display:flex;flex-direction:column;min-width:0}
.ac-menu-card strong{font-size:16px;text-transform:uppercase;letter-spacing:.035em;line-height:1.08;font-weight:700}
.ac-menu-card em{margin-top:5px;color:rgba(255,255,255,.64);font-size:13px;font-style:normal;font-weight:400;line-height:1.25}
.ac-menu-card--blue{--card-color:#2d7fff}
.ac-menu-card--cyan{--card-color:#28d5ff}
.ac-menu-card--green{--card-color:#35d07f}
.ac-menu-card--purple{--card-color:#9b78ff}
.ac-menu-card--red{--card-color:#ef3340}
.ac-menu-card--dark{--card-color:#fff}

/* LINKS / ICONS */

.ac-menu__mini-title{margin:18px 0 8px;color:rgba(255,255,255,.48);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ac-menu__links{display:grid;gap:10px}
.ac-menu__links a,.ac-search,.ac-menu__bottom{
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
}
.ac-menu__links a{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  font-weight:700;
}
.ac-link-icon{
  width:30px;
  height:30px;
  border-radius:10px;
  background:rgba(255,255,255,.12);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 30px;
}
.ac-link-icon svg{width:17px;height:17px;display:block;fill:#fff}

/* APP CARD */

.ac-app-card{
  margin-top:16px;
  padding:18px;
  border-radius:22px;
  background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.16),transparent 34%),linear-gradient(180deg,#151515,#060606);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.ac-app-card__icon{
  width:38px;
  height:38px;
  border-radius:14px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:11px;
}
.ac-app-card__icon svg{width:22px;height:22px;display:block;fill:#fff}
.ac-app-card strong{display:block;font-size:17px;line-height:1.08;font-weight:700;letter-spacing:.04em}
.ac-app-card p{margin:8px 0 12px;color:rgba(255,255,255,.68);font-size:13px;line-height:1.35}
.ac-app-card ul{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:5px}
.ac-app-card li{font-size:13px;font-weight:700;color:rgba(255,255,255,.82)}
.ac-app-card li::before{content:"✓";margin-right:8px;color:#fff}
.ac-app-card a:not(.ach-btn){min-height:46px;border-radius:14px;background:#fff;color:#050505;display:flex;align-items:center;justify-content:center;font-weight:700;text-transform:uppercase;font-size:13px}

/* SEARCH / BOTTOM */

.ac-search{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px;padding:8px;margin-top:16px}
.ac-search input{min-width:0;min-height:44px;border:0;border-radius:12px;background:rgba(255,255,255,.08);color:#fff;padding:0 12px}
.ac-search button{min-width:108px;border:0;border-radius:12px;background:#fff;color:#050505;font-weight:700;padding:0 18px;cursor:pointer}
.ac-menu__bottom{margin-top:16px;padding:14px;display:grid;gap:8px;color:rgba(255,255,255,.78);font-weight:700}
.ac-menu__socials{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px}
.ac-menu__socials a{min-height:44px;border-radius:14px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.10);display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.06em}
.ac-menu-theme{min-height:42px;border:0;border-radius:14px;background:rgba(255,255,255,.09);color:#fff;font-weight:700;cursor:pointer}

/* PAGE */

.ac-main{min-height:60vh}
.ac-hero{padding:96px 0 80px;background:radial-gradient(circle at top right,rgba(45,127,255,.22),transparent 28rem),linear-gradient(135deg,rgba(11,79,163,.10),transparent)}
.ac-pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:rgba(45,127,255,.10);color:var(--ac-blue);font-weight:700}
.ac-hero h1,.ac-page__header h1{max-width:900px;margin:20px 0 0;font-size:clamp(42px,7vw,86px);line-height:.9;letter-spacing:-.07em}
.ac-hero p{max-width:640px;margin:20px 0 0;font-size:20px;color:var(--ac-muted);line-height:1.45}
.ac-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.ac-btn{min-height:52px;padding:0 20px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;font-weight:700}
.ac-btn--primary{background:var(--ac-red);color:#fff}
.ac-btn--ghost{border:1px solid var(--ac-line);background:var(--ac-surface)}
.ac-section,.ac-page{padding:64px 0}
.ac-section h2{font-size:clamp(30px,4vw,54px);letter-spacing:-.05em;margin:0 0 24px}
.ac-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ac-card{padding:22px;border-radius:24px;background:var(--ac-surface);border:1px solid var(--ac-line);box-shadow:0 16px 36px rgba(8,28,62,.06)}
.ac-card strong{display:block;font-size:20px;margin-bottom:8px;font-weight:700}
.ac-card span{color:var(--ac-muted);line-height:1.45}
.ac-content{font-size:18px;line-height:1.65}
.ac-footer{padding:42px 0;background:#06162f;color:#fff}
.ac-footer__inner{width:min(1180px,calc(100% - 32px));margin:0 auto;display:flex;justify-content:space-between;gap:24px}
.ac-footer p{color:rgba(255,255,255,.66)}
.ac-footer__links{display:flex;flex-wrap:wrap;gap:12px 18px;color:rgba(255,255,255,.78)}

@media(max-width:900px){
  .ac-card-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  :root{--ac-header-height:84px}
  .admin-bar .ac-header{top:46px}
  .ac-header{padding:9px 0}
  .ac-header__inner,.ac-header.is-scrolled .ac-header__inner{
    width:calc(100% - 18px);
    min-height:64px;
    border-radius:14px;
    padding:8px 9px;
  }
  .ac-brand{gap:9px}
  .ac-brand__logo{width:44px;height:44px}
  .ac-brand__logo img{width:35px;height:35px}
  .ac-brand__text strong{font-size:20px;letter-spacing:.06em}
  .ac-brand__text em{font-size:10px;max-width:170px;white-space:normal;line-height:1.15}
  .ac-burger{width:46px;height:46px;border-radius:13px}
  .ac-burger span{left:13px}
  .ac-burger span:nth-child(1){top:16px}
  .ac-burger span:nth-child(2){top:23px}
  .ac-burger span:nth-child(3){top:30px}
  .ac-menu__panel{inset:10px;width:auto;border-radius:26px;padding:20px}
  .ac-menu h2{font-size:30px}
  .ac-menu-card{min-height:72px;padding-right:14px}
  .ac-card-icon{width:42px;height:42px;border-radius:15px;font-size:21px}
  .ac-menu-card strong{font-size:14px}
  .ac-menu-card em{font-size:12px}
  .ac-search{grid-template-columns:1fr}
  .ac-search button{width:100%;min-height:44px}
  .ac-hero{padding:64px 0 56px}
  .ac-hero p{font-size:17px}
  .ac-footer__inner{display:grid}
}


/* =========================
   V13 — header brand typography
   Спортивный комплекс — тонкий
   АЛЕКСЕЕВА — главный акцент
   основан в 1936 году — тонкий наклон
========================= */

.ac-brand__text--stack{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  line-height:1 !important;
  min-width:0 !important;
}

.ac-brand__line--top{
  display:block !important;
  color:#485160 !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:.095em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.ac-brand__text--stack strong{
  display:block !important;
  color:var(--ac-cyan) !important;
  font-size:25px !important;
  line-height:.92 !important;
  font-weight:700 !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.ac-brand__text--stack em{
  display:block !important;
  color:#485160 !important;
  font-size:12px !important;
  line-height:1 !important;
  font-style:italic !important;
  font-weight:400 !important;
  letter-spacing:.035em !important;
  white-space:nowrap !important;
}

/* Скролл: возвращаем компактный темный хедер, без лишнего текста */
.ac-header.is-scrolled .ac-brand__line--top,
.ac-header.is-scrolled .ac-brand__text--stack em{
  display:none !important;
}

.ac-header.is-scrolled .ac-brand__text--stack strong{
  color:#fff !important;
  font-size:22px !important;
  letter-spacing:.07em !important;
}

html[data-theme=dark] .ac-brand__line--top,
html[data-theme=dark] .ac-brand__text--stack em{
  color:rgba(255,255,255,.70) !important;
}

html[data-theme=dark] .ac-brand__text--stack strong{
  color:#38bdf8 !important;
}

/* На мобильной делаем компактнее */
@media(max-width:640px){
  .ac-brand__line--top{
    font-size:9px !important;
    letter-spacing:.07em !important;
  }

  .ac-brand__text--stack strong{
    font-size:20px !important;
    letter-spacing:.055em !important;
  }

  .ac-brand__text--stack em{
    font-size:9px !important;
    letter-spacing:.02em !important;
  }

  .ac-header.is-scrolled .ac-brand__text--stack strong{
    font-size:19px !important;
  }
}


/* =========================
   V14 — precise brand alignment
   1) «Спортивный комплекс» меньше и не шире «АЛЕКСЕЕВА»
   2) «основан в 1936г.» на 20% меньше и по правому краю слова
========================= */

.ac-brand__text--stack{
  width:184px !important;
  max-width:184px !important;
  align-items:stretch !important;
  gap:2px !important;
}

.ac-brand__line--top{
  width:100% !important;
  max-width:100% !important;
  color:#485160 !important;
  font-size:8.6px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:.025em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}

.ac-brand__text--stack strong{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  color:var(--ac-cyan) !important;
  font-size:25px !important;
  line-height:.92 !important;
  font-weight:700 !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.ac-brand__text--stack em{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  color:#485160 !important;
  font-size:9.6px !important;
  line-height:1 !important;
  font-style:italic !important;
  font-weight:400 !important;
  letter-spacing:.02em !important;
  white-space:nowrap !important;
  text-align:right !important;
}

.ac-header.is-scrolled .ac-brand__line--top,
.ac-header.is-scrolled .ac-brand__text--stack em{
  display:none !important;
}

.ac-header.is-scrolled .ac-brand__text--stack{
  width:auto !important;
  max-width:none !important;
}

.ac-header.is-scrolled .ac-brand__text--stack strong{
  color:#fff !important;
  font-size:22px !important;
  letter-spacing:.07em !important;
}

html[data-theme=dark] .ac-brand__line--top,
html[data-theme=dark] .ac-brand__text--stack em{
  color:rgba(255,255,255,.70) !important;
}

html[data-theme=dark] .ac-brand__text--stack strong{
  color:#38bdf8 !important;
}

@media(max-width:640px){
  .ac-brand__text--stack{
    width:148px !important;
    max-width:calc(100vw - 128px) !important;
  }

  .ac-brand__line--top{
    font-size:6.8px !important;
    letter-spacing:.015em !important;
  }

  .ac-brand__text--stack strong{
    font-size:20px !important;
    letter-spacing:.055em !important;
  }

  .ac-brand__text--stack em{
    font-size:7.6px !important;
    text-align:right !important;
  }

  .ac-header.is-scrolled .ac-brand__text--stack{
    width:auto !important;
    max-width:none !important;
  }

  .ac-header.is-scrolled .ac-brand__text--stack strong{
    font-size:19px !important;
  }
}


/* =========================
   V15 — unified SVG wordmark
   Название больше не верстается как 3 независимые HTML-строки.
   Это единый wordmark-блок, поэтому строки не разъезжаются.
========================= */

.ac-brand__text,
.ac-brand__text--stack,
.ac-brand__line--top{
  display:none !important;
}

.ac-brand__wordmark-wrap{
  width:220px !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  overflow:visible !important;
}

.ac-brand__wordmark{
  display:block !important;
  width:100% !important;
  height:auto !important;
  overflow:visible !important;
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-brand__wordmark text{
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  paint-order:stroke !important;
}

.ac-brand__wordmark .wm-top{
  fill:#485160 !important;
  font-size:10.6px !important;
  font-weight:400 !important;
  letter-spacing:1.1px !important;
}

.ac-brand__wordmark .wm-main{
  fill:var(--ac-cyan) !important;
  font-size:32px !important;
  font-weight:700 !important;
  letter-spacing:2.4px !important;
}

.ac-brand__wordmark .wm-sub{
  fill:#485160 !important;
  font-size:9.4px !important;
  font-weight:400 !important;
  font-style:italic !important;
  letter-spacing:.2px !important;
}

.ac-brand__wordmark--short{
  display:none !important;
  width:154px !important;
}

.ac-brand__wordmark .wm-main-short{
  fill:#fff !important;
  font-size:30px !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
}

.ac-header.is-scrolled .ac-brand__wordmark-wrap{
  width:154px !important;
  height:38px !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--full{
  display:none !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--short{
  display:block !important;
}

/* dark theme */
html[data-theme=dark] .ac-brand__wordmark .wm-top,
html[data-theme=dark] .ac-brand__wordmark .wm-sub{
  fill:rgba(255,255,255,.70) !important;
}

html[data-theme=dark] .ac-brand__wordmark .wm-main{
  fill:#38bdf8 !important;
}

/* mobile */
@media(max-width:640px){
  .ac-brand__wordmark-wrap{
    width:172px !important;
    height:52px !important;
  }

  .ac-brand__wordmark .wm-top{
    font-size:10.4px !important;
    letter-spacing:.9px !important;
  }

  .ac-brand__wordmark .wm-main{
    font-size:31px !important;
    letter-spacing:2px !important;
  }

  .ac-brand__wordmark .wm-sub{
    font-size:9px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:132px !important;
    height:34px !important;
  }

  .ac-brand__wordmark--short{
    width:132px !important;
  }

  .ac-brand__wordmark .wm-main-short{
    font-size:29px !important;
    letter-spacing:1.8px !important;
  }
}

@media(max-width:380px){
  .ac-brand__wordmark-wrap{
    width:154px !important;
  }
}


/* =========================
   V16 — reference-like wide wordmark
   Верх: СПОРТИВНЫЙ / КОМПЛЕКС по краям
   Центр: крупное АЛЕКСЕЕВА
   Низ: основан в 1936г. вправо
========================= */

.ac-brand{
  gap:12px !important;
}

.ac-brand__logo{
  width:56px !important;
  height:56px !important;
}

.ac-brand__logo img{
  width:44px !important;
  height:44px !important;
}

.ac-brand__wordmark-wrap{
  width:322px !important;
  height:68px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 322px !important;
  overflow:visible !important;
}

.ac-brand__wordmark--full{
  display:block !important;
  width:322px !important;
  height:auto !important;
  overflow:visible !important;
}

.ac-brand__wordmark--short{
  display:none !important;
  width:156px !important;
  height:auto !important;
}

.ac-brand__wordmark text{
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-brand__wordmark .wm-top{
  fill:#626a78 !important;
  font-size:30px !important;
  font-weight:400 !important;
  letter-spacing:9px !important;
}

.ac-brand__wordmark .wm-main{
  fill:var(--ac-cyan) !important;
  font-size:86px !important;
  font-weight:700 !important;
  letter-spacing:13px !important;
}

.ac-brand__wordmark .wm-sub{
  fill:#626a78 !important;
  font-size:29px !important;
  font-weight:400 !important;
  font-style:italic !important;
  letter-spacing:4px !important;
}

/* Скролл: темный хедер и компактный wordmark */
.ac-header.is-scrolled .ac-brand__wordmark-wrap{
  width:156px !important;
  height:38px !important;
  flex-basis:156px !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--full{
  display:none !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--short{
  display:block !important;
  width:156px !important;
}

.ac-brand__wordmark .wm-main-short{
  fill:#fff !important;
  font-size:58px !important;
  font-weight:700 !important;
  letter-spacing:7px !important;
}

/* На темной теме полный wordmark тоже сохраняет фирменность */
html[data-theme=dark] .ac-brand__wordmark .wm-top,
html[data-theme=dark] .ac-brand__wordmark .wm-sub{
  fill:rgba(255,255,255,.70) !important;
}

html[data-theme=dark] .ac-brand__wordmark .wm-main{
  fill:#38bdf8 !important;
}

/* Mobile: чтобы не раздавить шапку, оставляем упрощенную компактную версию */
@media(max-width:640px){
  .ac-brand__logo{
    width:44px !important;
    height:44px !important;
  }

  .ac-brand__logo img{
    width:35px !important;
    height:35px !important;
  }

  .ac-brand__wordmark-wrap,
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:132px !important;
    height:34px !important;
    flex-basis:132px !important;
  }

  .ac-brand__wordmark--full,
  .ac-header.is-scrolled .ac-brand__wordmark--full{
    display:none !important;
  }

  .ac-brand__wordmark--short,
  .ac-header.is-scrolled .ac-brand__wordmark--short{
    display:block !important;
    width:132px !important;
  }

  .ac-brand__wordmark .wm-main-short{
    font-size:58px !important;
    letter-spacing:6px !important;
    fill:var(--ac-cyan) !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark .wm-main-short{
    fill:#fff !important;
  }
}

@media(max-width:390px){
  .ac-brand__wordmark-wrap,
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:118px !important;
    flex-basis:118px !important;
  }

  .ac-brand__wordmark--short,
  .ac-header.is-scrolled .ac-brand__wordmark--short{
    width:118px !important;
  }
}


/* =========================
   V17 — fixed wordmark boundaries + mobile full text
   Все строки находятся внутри ширины слова «АЛЕКСЕЕВА».
   На мобильной версии возвращен полный текст, а не только «АЛЕКСЕЕВА».
========================= */

.ac-brand{
  gap:12px !important;
}

.ac-brand__logo{
  width:56px !important;
  height:56px !important;
}

.ac-brand__logo img{
  width:44px !important;
  height:44px !important;
}

/* Единая ширина wordmark. Все 3 строки живут внутри этой ширины. */
.ac-brand__wordmark-wrap{
  width:286px !important;
  height:68px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 286px !important;
  overflow:visible !important;
}

.ac-brand__wordmark{
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-brand__wordmark--full{
  display:block !important;
  width:286px !important;
  height:auto !important;
  overflow:visible !important;
}

.ac-brand__wordmark--short{
  display:none !important;
  width:156px !important;
  height:auto !important;
}

.ac-brand__wordmark text{
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-brand__wordmark .wm-top{
  fill:#626a78 !important;
  font-size:28px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

.ac-brand__wordmark .wm-main{
  fill:var(--ac-cyan) !important;
  font-size:86px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
}

.ac-brand__wordmark .wm-sub{
  fill:#626a78 !important;
  font-size:27px !important;
  font-weight:400 !important;
  font-style:italic !important;
  letter-spacing:0 !important;
}

/* Скролл на desktop: компактная темная версия */
.ac-header.is-scrolled .ac-brand__wordmark-wrap{
  width:156px !important;
  height:38px !important;
  flex-basis:156px !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--full{
  display:none !important;
}

.ac-header.is-scrolled .ac-brand__wordmark--short{
  display:block !important;
  width:156px !important;
}

.ac-brand__wordmark .wm-main-short{
  fill:#fff !important;
  font-size:58px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
}

html[data-theme=dark] .ac-brand__wordmark .wm-top,
html[data-theme=dark] .ac-brand__wordmark .wm-sub{
  fill:rgba(255,255,255,.70) !important;
}

html[data-theme=dark] .ac-brand__wordmark .wm-main{
  fill:#38bdf8 !important;
}

/* Mobile: возвращаем полный текст, только масштабируем */
@media(max-width:640px){
  .ac-brand{
    gap:8px !important;
  }

  .ac-brand__logo{
    width:44px !important;
    height:44px !important;
  }

  .ac-brand__logo img{
    width:35px !important;
    height:35px !important;
  }

  .ac-brand__wordmark-wrap,
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:166px !important;
    height:48px !important;
    flex-basis:166px !important;
  }

  .ac-brand__wordmark--full,
  .ac-header.is-scrolled .ac-brand__wordmark--full{
    display:block !important;
    width:166px !important;
  }

  .ac-brand__wordmark--short,
  .ac-header.is-scrolled .ac-brand__wordmark--short{
    display:none !important;
  }

  .ac-brand__wordmark .wm-top{
    font-size:28px !important;
  }

  .ac-brand__wordmark .wm-main{
    font-size:86px !important;
  }

  .ac-brand__wordmark .wm-sub{
    font-size:27px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark .wm-top,
  .ac-header.is-scrolled .ac-brand__wordmark .wm-sub{
    fill:rgba(255,255,255,.70) !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark .wm-main{
    fill:#fff !important;
  }
}

@media(max-width:390px){
  .ac-brand__wordmark-wrap,
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:148px !important;
    flex-basis:148px !important;
  }

  .ac-brand__wordmark--full,
  .ac-header.is-scrolled .ac-brand__wordmark--full{
    width:148px !important;
  }
}


/* =========================
   V18 — wordmark subline update
   «школа олимпийских чемпионов»
========================= */

.ac-brand__wordmark .wm-sub{
  font-size:24px !important;
  letter-spacing:0 !important;
}

@media(max-width:640px){
  .ac-brand__wordmark .wm-sub{
    font-size:24px !important;
  }
}


/* =========================
   V19 — desktop wordmark 20% smaller
   На веб-версии все три строки wordmark уменьшены,
   чтобы блок текста был ниже/компактнее и не спорил с кругом логотипа.
========================= */

@media(min-width:641px){
  .ac-brand__wordmark-wrap{
    width:229px !important;
    height:54px !important;
    flex-basis:229px !important;
  }

  .ac-brand__wordmark--full{
    width:229px !important;
  }

  /* при скролле компактная версия остается как в прошлой версии */
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:156px !important;
    height:38px !important;
    flex-basis:156px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark--short{
    width:156px !important;
  }
}


/* =========================
   V20 — wordmark final scale + subline full width
   1) «школа олимпийских чемпионов» без наклона
   2) нижняя строка по общей ширине wordmark
   3) desktop wordmark еще на 10% меньше
========================= */

.ac-brand__wordmark .wm-sub{
  font-style:normal !important;
  font-size:23px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Desktop: еще минус 10% от V19 */
@media(min-width:641px){
  .ac-brand__wordmark-wrap{
    width:206px !important;
    height:49px !important;
    flex-basis:206px !important;
  }

  .ac-brand__wordmark--full{
    width:206px !important;
  }

  /* Compact при скролле оставляем читаемым */
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:156px !important;
    height:38px !important;
    flex-basis:156px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark--short{
    width:156px !important;
  }
}

@media(max-width:640px){
  .ac-brand__wordmark .wm-sub{
    font-style:normal !important;
    font-size:23px !important;
  }
}


/* =========================
   V21 — desktop scroll keeps full wordmark
   На веб-версии при скролле оставляем все три строки.
========================= */

@media(min-width:641px){
  .ac-header.is-scrolled .ac-brand__wordmark-wrap{
    width:206px !important;
    height:49px !important;
    flex-basis:206px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark--full{
    display:block !important;
    width:206px !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark--short{
    display:none !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark .wm-top,
  .ac-header.is-scrolled .ac-brand__wordmark .wm-sub{
    fill:rgba(255,255,255,.72) !important;
  }

  .ac-header.is-scrolled .ac-brand__wordmark .wm-main{
    fill:#ffffff !important;
  }
}


/* =========================
   V23 — FOOTER FIXED STABLE
   Футер без конфликта со старым .ac-footer__inner.
   Логотип + wordmark в той же логике, что в шапке.
========================= */

.ac-footer{
  position:relative !important;
  overflow:hidden !important;
  margin-top:70px !important;
  padding:64px 0 28px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.28),transparent 30rem),
    radial-gradient(circle at 92% 18%,rgba(239,51,64,.18),transparent 28rem),
    linear-gradient(180deg,#101827,#050814) !important;
  color:#fff !important;
}

.ac-footer__bg{
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
  background-size:56px 56px !important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.65),transparent 82%) !important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.65),transparent 82%) !important;
  opacity:.55 !important;
}

.ac-footer__inner{
  position:relative !important;
  z-index:1 !important;
  width:min(1280px,calc(100% - 32px)) !important;
  margin:0 auto !important;
  display:block !important;
}

.ac-footer__top{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  padding-bottom:28px !important;
  margin-bottom:28px !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}

.ac-footer__brand{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0 !important;
}

.ac-footer__logo{
  width:64px !important;
  height:64px !important;
  border-radius:999px !important;
  background:#fff !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
  box-shadow:0 18px 44px rgba(0,0,0,.24) !important;
}

.ac-footer__logo img{
  width:50px !important;
  height:50px !important;
  object-fit:contain !important;
}

.ac-footer__wordmark-wrap{
  width:250px !important;
  height:60px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 250px !important;
  overflow:visible !important;
}

.ac-footer__wordmark{
  display:block !important;
  width:250px !important;
  height:auto !important;
  overflow:visible !important;
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-footer__wordmark text{
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

.ac-footer__wordmark .fwm-top{
  fill:rgba(255,255,255,.66) !important;
  font-size:28px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

.ac-footer__wordmark .fwm-main{
  fill:#ffffff !important;
  font-size:86px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
}

.ac-footer__wordmark .fwm-sub{
  fill:rgba(255,255,255,.66) !important;
  font-size:23px !important;
  font-weight:400 !important;
  font-style:normal !important;
  letter-spacing:0 !important;
}

.ac-footer__cta{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:6px !important;
  text-align:right !important;
  flex:0 0 auto !important;
}

.ac-footer__cta a{
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
}

.ac-footer__cta span{
  color:rgba(255,255,255,.62) !important;
  font-size:13px !important;
  font-weight:400 !important;
}

.ac-footer__main{
  display:grid !important;
  grid-template-columns:minmax(330px,410px) minmax(0,1fr) !important;
  gap:22px !important;
  align-items:stretch !important;
}

.ac-footer__contact-card{
  padding:22px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.14),transparent 42%),
    rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.22) !important;
}

.ac-footer__contact-card h2{
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.ac-footer__contact-list{
  display:grid !important;
  gap:10px !important;
}

.ac-footer__contact-list a,
.ac-footer__contact-list div{
  min-height:64px !important;
  padding:13px 14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:5px !important;
}

.ac-footer__contact-list span,
.ac-footer__app span{
  color:rgba(255,255,255,.52) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-footer__contact-list strong,
.ac-footer__app strong{
  color:#fff !important;
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.ac-footer__messengers{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:9px !important;
  margin-top:12px !important;
}

.ac-footer__messengers a{
  min-height:46px !important;
  border-radius:15px !important;
  background:#fff !important;
  color:#070a12 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  transition:transform .18s ease, background .18s ease !important;
}

.ac-footer__messengers a:hover{
  transform:translateY(-2px) !important;
  background:#f3f7ff !important;
}

.ac-footer__app{
  margin-top:12px !important;
  padding:14px !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,#151515,#050505) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:14px !important;
  align-items:center !important;
}

.ac-footer__app div{
  display:grid !important;
  gap:6px !important;
}

.ac-footer__app a{
  min-height:42px !important;
  padding:0 14px !important;
  border-radius:14px !important;
  background:var(--ac-red) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:13px !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.ac-footer__nav{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(150px,1fr)) !important;
  gap:14px !important;
  min-width:0 !important;
}

.ac-footer__col{
  padding:20px !important;
  min-height:100% !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  min-width:0 !important;
}

.ac-footer__col h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ac-footer__col a{
  display:block !important;
  color:rgba(255,255,255,.66) !important;
  font-size:14px !important;
  line-height:1.25 !important;
  padding:7px 0 !important;
  transition:color .18s ease, transform .18s ease !important;
}

.ac-footer__col a:hover{
  color:#fff !important;
  transform:translateX(3px) !important;
}

.ac-footer__bottom{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-top:28px !important;
  padding-top:22px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.46) !important;
  font-size:12px !important;
  line-height:1.35 !important;
}

@media(max-width:1160px){
  .ac-footer__main{
    grid-template-columns:1fr !important;
  }

  .ac-footer__nav{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .ac-footer__nav{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-footer{
    margin-top:48px !important;
    padding:42px 0 24px !important;
  }

  .ac-footer__inner{
    width:calc(100% - 24px) !important;
  }

  .ac-footer__top{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .ac-footer__brand{
    gap:12px !important;
  }

  .ac-footer__logo{
    width:54px !important;
    height:54px !important;
  }

  .ac-footer__logo img{
    width:42px !important;
    height:42px !important;
  }

  .ac-footer__wordmark-wrap{
    width:178px !important;
    height:48px !important;
    flex-basis:178px !important;
  }

  .ac-footer__wordmark{
    width:178px !important;
  }

  .ac-footer__cta{
    align-items:flex-start !important;
    text-align:left !important;
  }

  .ac-footer__cta a{
    font-size:22px !important;
  }

  .ac-footer__contact-card{
    padding:18px !important;
    border-radius:24px !important;
  }

  .ac-footer__app{
    grid-template-columns:1fr !important;
  }

  .ac-footer__app a{
    width:100% !important;
  }

  .ac-footer__nav{
    grid-template-columns:1fr !important;
  }

  .ac-footer__col{
    padding:18px !important;
  }

  .ac-footer__bottom{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
}

@media(max-width:420px){
  .ac-footer__brand{
    align-items:center !important;
  }

  .ac-footer__wordmark-wrap{
    width:158px !important;
    height:44px !important;
    flex-basis:158px !important;
  }

  .ac-footer__wordmark{
    width:158px !important;
  }

  .ac-footer__messengers{
    grid-template-columns:1fr !important;
  }
}


/* =========================
   V25 — HOME PAGE FOR ADMIN HTML BLOCK
   HTML вставляется в страницу «Главная» через блок «Произвольный HTML».
========================= */

.ac-main{
  overflow:hidden !important;
}

.ach-wrap{
  width:min(1280px,calc(100% - 32px));
  margin:0 auto;
}

.ach-kicker{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(7,135,189,.10);
  color:var(--ac-cyan);
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ach-kicker--light{
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.12);
}

.ach-btn{
  min-height:52px;
  padding:0 20px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.ach-btn:hover{
  transform:translateY(-2px);
}

.ach-btn--primary{
  background:var(--ac-red);
  color:#fff;
  box-shadow:0 14px 30px rgba(239,51,64,.26);
}

.ach-btn--glass{
  background:rgba(255,255,255,.10);
  color:#fff;
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(12px);
}

/* HERO */

.ach-hero{
  position:relative;
  min-height:calc(100vh - var(--ac-header-height));
  display:flex;
  align-items:stretch;
  overflow:hidden;
  background:#060914;
  color:#fff;
  margin-top:calc(var(--ac-header-height) * -1);
  padding-top:var(--ac-header-height);
}

.ach-hero__media,
.ach-hero__shade{
  position:absolute;
  inset:0;
}

.ach-hero__media{
  z-index:0;
  background:url("https://alexclub.ru/wp-content/uploads/2023/03/15-4.jpg") center/cover no-repeat;
}

.ach-hero__video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.04) contrast(1.04);
}

.ach-hero__shade{
  z-index:1;
  background:
    radial-gradient(circle at 18% 22%,rgba(45,127,255,.32),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.92) 0%,rgba(5,8,20,.74) 42%,rgba(5,8,20,.42) 100%),
    linear-gradient(180deg,rgba(5,8,20,.35) 0%,rgba(5,8,20,.82) 100%);
}

.ach-hero__inner{
  position:relative;
  z-index:2;
  width:min(1280px,calc(100% - 32px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,390px);
  gap:34px;
  align-items:end;
  padding:120px 0 58px;
}

.ach-hero__content{
  max-width:880px;
}

.ach-hero h1{
  margin:20px 0 0;
  max-width:880px;
  font-size:clamp(46px,6.4vw,94px);
  line-height:.94;
  letter-spacing:-.065em;
  text-transform:uppercase;
  font-weight:700;
}

.ach-hero__lead{
  max-width:650px;
  margin:22px 0 0;
  color:rgba(255,255,255,.82);
  font-size:clamp(18px,1.7vw,24px);
  line-height:1.45;
  font-weight:400;
}

.ach-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.ach-hero__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:28px;
}

.ach-hero__chips span{
  min-height:38px;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.74);
  font-size:13px;
  font-weight:400;
}

.ach-hero__panel{
  padding:24px;
  border-radius:28px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(18px);
  box-shadow:0 24px 80px rgba(0,0,0,.24);
}

.ach-hero__panel span{
  display:block;
  color:rgba(255,255,255,.56);
  font-size:12px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ach-hero__panel strong{
  display:block;
  margin-top:12px;
  color:#fff;
  font-size:30px;
  line-height:1;
  font-weight:700;
}

.ach-hero__panel p{
  margin:14px 0 0;
  color:rgba(255,255,255,.72);
  line-height:1.6;
}

/* STATS */

.ach-stats{
  position:relative;
  z-index:3;
  margin-top:-32px;
}

.ach-stats__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ach-stat{
  min-height:142px;
  padding:22px;
  border-radius:26px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 18px 48px rgba(8,28,62,.12);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ach-stat strong{
  color:var(--ac-cyan);
  font-size:clamp(42px,4.5vw,64px);
  line-height:.9;
  font-weight:700;
  letter-spacing:-.055em;
}

.ach-stat span{
  margin-top:14px;
  color:#485160;
  font-size:14px;
  line-height:1.3;
  font-weight:400;
}

/* COMMON SECTIONS */

.ach-section{
  padding:78px 0 0;
}

.ach-section__head{
  max-width:880px;
  margin-bottom:28px;
}

.ach-section__head h2,
.ach-official__story h2,
.ach-final h2{
  margin:14px 0 0;
  color:var(--ac-text);
  font-size:clamp(34px,4.2vw,62px);
  line-height:.98;
  letter-spacing:-.055em;
  font-weight:700;
}

.ach-section__head--split{
  max-width:none;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:24px;
  align-items:end;
}

.ach-section__head--split p{
  margin:0;
  color:var(--ac-muted);
  line-height:1.65;
}

.ach-intro__grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:16px;
}

.ach-text-card{
  padding:28px;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.88));
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
}

.ach-text-card--large{
  padding:34px;
}

.ach-text-card h3{
  margin:0 0 14px;
  color:var(--ac-text);
  font-size:24px;
  line-height:1.05;
  font-weight:700;
}

.ach-text-card p{
  margin:0;
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.8;
}

.ach-text-card p + p{
  margin-top:16px;
}

/* DIRECTIONS */

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

.ach-direction{
  position:relative;
  min-height:188px;
  padding:22px;
  border-radius:30px;
  overflow:hidden;
  background:linear-gradient(180deg,#111827,#060914);
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 20px 50px rgba(8,28,62,.13);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.ach-direction::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:6px;
  background:var(--dir);
}

.ach-direction span{
  width:48px;
  height:48px;
  border-radius:16px;
  background:rgba(255,255,255,.10);
  display:grid;
  place-items:center;
  font-size:24px;
  border:1px solid rgba(255,255,255,.10);
}

.ach-direction strong{
  margin-top:20px;
  display:block;
  font-size:22px;
  line-height:1;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.ach-direction em{
  margin-top:8px;
  display:block;
  color:rgba(255,255,255,.64);
  font-size:14px;
  line-height:1.35;
  font-style:normal;
}

.ach-direction--blue{--dir:#2d7fff}
.ach-direction--cyan{--dir:#28d5ff}
.ach-direction--green{--dir:#35d07f}
.ach-direction--purple{--dir:#9b78ff}
.ach-direction--red{--dir:#ef3340}
.ach-direction--dark{--dir:#fff}

/* OFFICIAL STORY */

.ach-official__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,390px);
  gap:16px;
  align-items:stretch;
}

.ach-official__story{
  padding:38px;
  border-radius:34px;
  background:linear-gradient(180deg,#fff,rgba(255,255,255,.90));
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
}

.ach-official__story p{
  margin:18px 0 0;
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.82;
}

.ach-official__story .ach-btn{
  margin-top:26px;
}

.ach-official__facts{
  display:grid;
  gap:12px;
}

.ach-official__facts div{
  padding:24px;
  border-radius:28px;
  background:#0b1222;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:150px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 48px rgba(8,28,62,.14);
}

.ach-official__facts strong{
  color:#fff;
  font-size:46px;
  line-height:.9;
  font-weight:700;
}

.ach-official__facts span{
  margin-top:12px;
  color:rgba(255,255,255,.66);
  line-height:1.4;
}

/* PROGRAMS */

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

.ach-program{
  min-height:280px;
  padding:24px;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.88));
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
  display:flex;
  flex-direction:column;
}

.ach-program__num{
  color:var(--ac-cyan);
  font-size:13px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
}

.ach-program h3{
  margin:28px 0 0;
  color:var(--ac-text);
  font-size:26px;
  line-height:1.05;
  font-weight:700;
}

.ach-program p{
  margin:14px 0 0;
  color:var(--ac-muted);
  line-height:1.65;
}

.ach-program a{
  margin-top:auto;
  padding-top:18px;
  color:var(--ac-cyan);
  font-weight:700;
}

/* BENEFITS */

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

.ach-benefits__grid article{
  padding:26px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
}

.ach-benefits__grid strong{
  display:block;
  color:var(--ac-text);
  font-size:21px;
  line-height:1.1;
  font-weight:700;
}

.ach-benefits__grid p{
  margin:14px 0 0;
  color:var(--ac-muted);
  line-height:1.7;
}

/* INFRA */

.ach-infra__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.ach-infra__list li{
  min-height:58px;
  padding:14px 16px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 12px 30px rgba(8,28,62,.06);
  color:#485160;
  display:flex;
  align-items:center;
  font-weight:700;
}

.ach-infra__list li::before{
  content:"✓";
  width:24px;
  height:24px;
  margin-right:10px;
  border-radius:999px;
  background:rgba(7,135,189,.10);
  color:var(--ac-cyan);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}

/* FINAL */

.ach-final{
  padding-bottom:0;
}

.ach-final__box{
  padding:42px;
  border-radius:36px;
  background:
    radial-gradient(circle at 20% 0%,rgba(45,127,255,.24),transparent 32rem),
    linear-gradient(180deg,#101827,#060914);
  color:#fff;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  box-shadow:0 24px 80px rgba(8,28,62,.18);
}

.ach-final h2{
  color:#fff;
}

.ach-final p{
  max-width:680px;
  margin:16px 0 0;
  color:rgba(255,255,255,.72);
  line-height:1.7;
  font-size:17px;
}

.ach-final__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

/* RESPONSIVE */

@media(max-width:1080px){
  .ach-hero__inner,
  .ach-intro__grid,
  .ach-official__grid{
    grid-template-columns:1fr;
  }

  .ach-hero__panel{
    max-width:560px;
  }

  .ach-program-grid,
  .ach-direction-grid,
  .ach-benefits__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ach-infra__list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:720px){
  .ach-wrap,
  .ach-hero__inner{
    width:calc(100% - 24px);
  }

  .ach-hero{
    min-height:auto;
    margin-top:calc(var(--ac-header-height) * -1);
  }

  .ach-hero__video{
    display:none;
  }

  .ach-hero__shade{
    background:
      radial-gradient(circle at 18% 20%,rgba(45,127,255,.30),transparent 24rem),
      linear-gradient(180deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.94) 100%);
  }

  .ach-hero__inner{
    padding:110px 0 42px;
  }

  .ach-hero h1{
    font-size:clamp(38px,11vw,56px);
  }

  .ach-hero__lead{
    font-size:17px;
  }

  .ach-hero__panel{
    padding:20px;
  }

  .ach-stats{
    margin-top:0;
    padding-top:12px;
  }

  .ach-stats__grid,
  .ach-program-grid,
  .ach-direction-grid,
  .ach-benefits__grid,
  .ach-infra__list{
    grid-template-columns:1fr;
  }

  .ach-section{
    padding-top:54px;
  }

  .ach-section__head--split{
    grid-template-columns:1fr;
  }

  .ach-text-card,
  .ach-text-card--large,
  .ach-official__story,
  .ach-final__box{
    padding:24px;
    border-radius:28px;
  }

  .ach-final__box{
    grid-template-columns:1fr;
  }

  .ach-final__actions{
    justify-content:flex-start;
  }

  .ach-btn{
    width:100%;
  }
}


/* =========================
   V26 — PAGE TEMPLATE FULL WIDTH HOME
   Главная из админки выводится на всю ширину.
   Для остальных страниц остается обычный контейнер.
========================= */

.ac-page--home{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--home .ac-content--home{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--home .wp-block-html,
.ac-page--home .wp-block-group,
.ac-page--home .wp-block{
  max-width:none !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.ac-page--home .ach-hero,
.ac-page--home .ach-stats,
.ac-page--home .ach-section{
  width:100% !important;
  max-width:none !important;
}

.ac-page--home .ach-hero{
  margin-top:calc(var(--ac-header-height) * -1) !important;
}


/* =========================
   V27 — HERO UNDER HEADER
   Первый блок заходит под фиксированный хедер.
   Визуально остается только прямоугольник хедера с закруглениями.
========================= */

body:has(.ac-page--home){
  padding-top:0 !important;
}

body:has(.ac-page--home) .ac-main{
  padding-top:0 !important;
}

body:has(.ac-page--home) .ac-page--home{
  padding-top:0 !important;
  margin-top:0 !important;
}

body:has(.ac-page--home) .ac-header{
  background:transparent !important;
}

body:has(.ac-page--home) .ac-header__inner{
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(255,255,255,.76) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.16) !important;
}

body:has(.ac-page--home) .ac-header.is-scrolled .ac-header__inner{
  background:rgba(9,13,24,.72) !important;
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 18px 46px rgba(5,18,42,.24) !important;
}

body:has(.ac-page--home) .ach-hero{
  margin-top:0 !important;
  padding-top:var(--ac-header-height) !important;
  min-height:100vh !important;
}

body:has(.ac-page--home) .ach-hero__inner{
  padding-top:calc(var(--ac-header-height) + 72px) !important;
}

/* Фолбэк, если браузер не применит :has */
.ac-page--home{
  padding-top:0 !important;
  margin-top:0 !important;
}

.ac-page--home .ach-hero{
  margin-top:calc(var(--ac-header-height) * -1) !important;
  padding-top:var(--ac-header-height) !important;
}

@media(max-width:720px){
  body:has(.ac-page--home) .ach-hero__inner{
    padding-top:calc(var(--ac-header-height) + 42px) !important;
  }

  body:has(.ac-page--home) .ach-hero{
    min-height:auto !important;
  }
}


/* =========================
   V28 — WIDE SCREEN FULL WIDTH CONTENT
   На веб-версии контент занимает почти всю ширину экрана.
   Сохраняем внутренние отступы, чтобы блоки не прилипали к краям.
========================= */

@media(min-width:1025px){
  .ach-wrap,
  .ach-hero__inner{
    width:calc(100vw - 72px) !important;
    max-width:none !important;
  }

  .ach-hero__content{
    max-width:1080px !important;
  }

  .ach-hero h1{
    max-width:1080px !important;
    font-size:clamp(58px,6.8vw,122px) !important;
  }

  .ach-hero__lead{
    max-width:760px !important;
  }

  .ach-stats__grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }

  .ach-stat{
    min-height:160px !important;
  }

  .ach-section__head{
    max-width:1040px !important;
  }

  .ach-section__head--split{
    max-width:none !important;
    grid-template-columns:minmax(0,1fr) minmax(360px,520px) !important;
  }

  .ach-intro__grid{
    grid-template-columns:minmax(0,1.45fr) minmax(360px,.55fr) !important;
  }

  .ach-direction-grid{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }

  .ach-direction{
    min-height:220px !important;
  }

  .ach-program-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ach-benefits__grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ach-infra__list{
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  }

  .ach-official__grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,460px) !important;
  }
}

/* Очень широкие мониторы */
@media(min-width:1600px){
  .ach-wrap,
  .ach-hero__inner{
    width:calc(100vw - 96px) !important;
  }

  .ach-hero__inner{
    grid-template-columns:minmax(0,1fr) minmax(380px,460px) !important;
    gap:42px !important;
  }

  .ach-hero h1{
    font-size:clamp(72px,6.6vw,132px) !important;
  }

  .ach-direction{
    min-height:238px !important;
  }

  .ach-program{
    min-height:300px !important;
  }
}

/* Средние ноутбуки: не делаем 6 колонок, чтобы карточки не стали слишком узкими */
@media(min-width:1025px) and (max-width:1320px){
  .ach-direction-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ach-infra__list{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}


/* =========================
   V29 — HEADER WORDMARK COLOR
   В светлом хедере слово «АЛЕКСЕЕВА» теперь #1E3A55.
   При скролле и на темном фоне сохраняем светлую версию.
========================= */

/* Светлый хедер */
.ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main{
  fill:#1E3A55 !important;
}

/* Светлый хедер на мобильной компактной/полной версии */
.ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main-short{
  fill:#1E3A55 !important;
}

/* Темный хедер при скролле */
.ac-header.is-scrolled .ac-brand__wordmark .wm-main,
.ac-header.is-scrolled .ac-brand__wordmark .wm-main-short{
  fill:#ffffff !important;
}

/* Если включена темная тема без скролла */
html[data-theme=dark] .ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main,
html[data-theme=dark] .ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main-short{
  fill:#ffffff !important;
}


/* =========================
   V31 — HOME HERO ONLY / FINAL FIRST BLOCK
   Первый блок главной: чистый официальный hero.
   Видео остается на desktop и mobile.
========================= */

/* Главная из админки — на всю ширину */
.ac-page--home{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--home .ac-content--home{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--home .wp-block-html,
.ac-page--home .wp-block-group,
.ac-page--home .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Hero заходит под хедер */
body:has(.ac-page--home){
  padding-top:0 !important;
}

body:has(.ac-page--home) .ac-main,
body:has(.ac-page--home) .ac-page--home{
  padding-top:0 !important;
  margin-top:0 !important;
}

body:has(.ac-page--home) .ac-header{
  background:transparent !important;
}

/* Сам хедер остается только как закругленный прямоугольник */
body:has(.ac-page--home) .ac-header__inner{
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(255,255,255,.76) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.16) !important;
}

body:has(.ac-page--home) .ac-header.is-scrolled .ac-header__inner{
  background:rgba(9,13,24,.72) !important;
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 18px 46px rgba(5,18,42,.24) !important;
}

/* Цвет АЛЕКСЕЕВА в светлом хедере */
.ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main,
.ac-header:not(.is-scrolled) .ac-brand__wordmark .wm-main-short{
  fill:#1E3A55 !important;
}

.ac-header.is-scrolled .ac-brand__wordmark .wm-main,
.ac-header.is-scrolled .ac-brand__wordmark .wm-main-short{
  fill:#ffffff !important;
}

/* Общие элементы hero */
.ach-wrap,
.ach-hero__inner{
  width:calc(100vw - 72px) !important;
  max-width:none !important;
  margin:0 auto !important;
}

.ach-kicker{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ach-kicker--light{
  background:rgba(255,255,255,.14) !important;
  color:rgba(255,255,255,.86) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  backdrop-filter:blur(10px) !important;
}

.ach-btn{
  min-height:54px !important;
  padding:0 22px !important;
  border-radius:16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}

.ach-btn:hover{
  transform:translateY(-2px) !important;
}

.ach-btn--primary{
  background:var(--ac-red) !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(239,51,64,.26) !important;
}

/* Первый блок */
.ach-hero,
.ach-hero--clean{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  min-height:100vh !important;
  display:flex !important;
  align-items:stretch !important;
  overflow:hidden !important;
  background:#060914 !important;
  color:#fff !important;
  margin-top:0 !important;
  padding-top:var(--ac-header-height) !important;
}

.ach-hero__media,
.ach-hero__shade{
  position:absolute !important;
  inset:0 !important;
}

.ach-hero__media{
  z-index:0 !important;
  background:url("https://alexclub.ru/wp-content/uploads/2023/03/15-4.jpg") center/cover no-repeat !important;
}

.ach-hero__video{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  filter:saturate(1.04) contrast(1.04) !important;
}

/* Overlay легче, чем в прошлой версии */
.ach-hero__shade{
  z-index:1 !important;
  background:
    radial-gradient(circle at 18% 24%,rgba(45,127,255,.18),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.54) 0%,rgba(5,8,20,.34) 45%,rgba(5,8,20,.14) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10) 0%,rgba(5,8,20,.44) 100%) !important;
}

.ach-hero__inner{
  position:relative !important;
  z-index:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-height:calc(100vh - var(--ac-header-height)) !important;
  padding:calc(var(--ac-header-height) + 48px) 0 72px !important;
}

.ach-hero__content{
  max-width:1120px !important;
}

.ach-hero h1{
  margin:22px 0 0 !important;
  max-width:1120px !important;
  color:#fff !important;
  font-size:clamp(56px,7.2vw,128px) !important;
  line-height:.92 !important;
  letter-spacing:-.065em !important;
  text-transform:uppercase !important;
  font-weight:700 !important;
  text-wrap:balance !important;
}

.ach-hero__lead{
  max-width:760px !important;
  margin:24px 0 0 !important;
  color:rgba(255,255,255,.88) !important;
  font-size:clamp(19px,1.65vw,26px) !important;
  line-height:1.42 !important;
  font-weight:400 !important;
  text-shadow:0 8px 28px rgba(0,0,0,.28) !important;
}

.ach-hero__actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:34px !important;
}

/* Убираем старые элементы, если случайно остались в HTML */
.ach-hero__chips,
.ach-hero__panel{
  display:none !important;
}

/* Мобильная версия: видео оставляем */
@media(max-width:720px){
  .ach-wrap,
  .ach-hero__inner{
    width:calc(100% - 24px) !important;
  }

  .ach-hero,
  .ach-hero--clean{
    min-height:100svh !important;
    padding-top:var(--ac-header-height) !important;
  }

  .ach-hero__video{
    display:block !important;
  }

  .ach-hero__shade{
    background:
      radial-gradient(circle at 18% 20%,rgba(45,127,255,.20),transparent 22rem),
      linear-gradient(180deg,rgba(5,8,20,.36) 0%,rgba(5,8,20,.64) 100%) !important;
  }

  .ach-hero__inner{
    min-height:calc(100svh - var(--ac-header-height)) !important;
    padding:calc(var(--ac-header-height) + 36px) 0 46px !important;
    align-items:center !important;
  }

  .ach-hero h1{
    font-size:clamp(40px,12vw,62px) !important;
    line-height:.94 !important;
  }

  .ach-hero__lead{
    font-size:18px !important;
  }

  .ach-btn{
    width:100% !important;
  }
}


/* =========================
   V32 — HERO TEXT UP + 5% DESKTOP SIDE PADDING
   1) Текстовый блок hero поднят примерно на 10% вверх.
   2) На веб-версии основные контейнеры информации имеют отступ 5% слева и справа.
========================= */

@media(min-width:1025px){
  :root{
    --ac-desktop-side-gap:5vw;
  }

  /* Единая ширина информационных контейнеров на веб-версии */
  .ac-container,
  .ach-wrap,
  .ach-hero__inner,
  .ac-footer__inner{
    width:calc(100vw - (var(--ac-desktop-side-gap) * 2)) !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Обычные страницы тоже держим с отступами 5% */
  .ac-page:not(.ac-page--home) .ac-container{
    width:calc(100vw - 10vw) !important;
    max-width:none !important;
  }

  /* Поднимаем именно текстовый блок hero */
  .ach-hero__content{
    transform:translateY(-10vh) !important;
  }

  /* Чтобы нижний край первого экрана не стал слишком пустым */
  .ach-hero__inner{
    align-items:center !important;
  }
}

/* На планшетах делаем мягче */
@media(min-width:721px) and (max-width:1024px){
  .ach-hero__content{
    transform:translateY(-6vh) !important;
  }
}

/* На мобильной не поднимаем на 10%, чтобы текст не залез под хедер */
@media(max-width:720px){
  .ach-hero__content{
    transform:none !important;
  }
}


/* =========================
   V34 — HERO TEXT POSITION
   Desktop: текстовый блок первого экрана опущен примерно на 5%.
   Mobile: текстовый блок первого экрана поднят примерно на 10%.
========================= */

@media(min-width:1025px){
  .ach-hero__content{
    transform:translateY(-5vh) !important;
  }
}

@media(min-width:721px) and (max-width:1024px){
  .ach-hero__content{
    transform:translateY(-4vh) !important;
  }
}

@media(max-width:720px){
  .ach-hero__content{
    transform:translateY(-10vh) !important;
  }

  .ach-hero__inner{
    align-items:center !important;
  }
}

@media(max-width:420px){
  .ach-hero__content{
    transform:translateY(-8vh) !important;
  }
}


/* =========================
   V35 — BLOCK 2 / ACHIEVEMENTS
   Второй блок после hero: медали, рекорды, статус школы.
========================= */

.ach-achievements{
  position:relative !important;
  z-index:4 !important;
  margin-top:-76px !important;
  padding:0 0 82px !important;
}

.ach-achievements__panel{
  position:relative !important;
  overflow:hidden !important;
  padding:34px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 10% 0%,rgba(45,127,255,.12),transparent 28rem),
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.90)) !important;
  border:1px solid rgba(255,255,255,.88) !important;
  box-shadow:0 26px 72px rgba(8,28,62,.16) !important;
}

.ach-achievements__panel::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.035) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.68),transparent 82%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.68),transparent 82%) !important;
  opacity:.48 !important;
}

.ach-achievements__head,
.ach-achievements__grid{
  position:relative !important;
  z-index:1 !important;
}

.ach-achievements__head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px) !important;
  gap:28px !important;
  align-items:end !important;
  margin-bottom:24px !important;
}

.ach-achievements__head .ach-kicker{
  grid-column:1 / -1 !important;
  width:max-content !important;
}

.ach-achievements__head h2{
  margin:0 !important;
  max-width:880px !important;
  color:var(--ac-text) !important;
  font-size:clamp(34px,4vw,64px) !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ach-achievements__head p{
  margin:0 !important;
  color:var(--ac-muted) !important;
  font-size:16px !important;
  line-height:1.72 !important;
  font-weight:400 !important;
}

.ach-achievements__grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ach-achievement-card{
  min-height:170px !important;
  padding:22px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 36px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}

.ach-achievement-card strong{
  display:block !important;
  color:#1E3A55 !important;
  font-size:clamp(46px,4.2vw,72px) !important;
  line-height:.86 !important;
  font-weight:700 !important;
  letter-spacing:-.065em !important;
}

.ach-achievement-card span{
  display:block !important;
  margin-top:18px !important;
  color:#485160 !important;
  font-size:14px !important;
  line-height:1.32 !important;
  font-weight:700 !important;
}

@media(min-width:1600px){
  .ach-achievements__panel{
    padding:40px !important;
  }

  .ach-achievement-card{
    min-height:190px !important;
  }
}

@media(min-width:1025px) and (max-width:1320px){
  .ach-achievements__grid{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }

  .ach-achievement-card{
    padding:18px !important;
  }

  .ach-achievement-card span{
    font-size:13px !important;
  }
}

@media(max-width:1024px){
  .ach-achievements{
    margin-top:-46px !important;
    padding-bottom:64px !important;
  }

  .ach-achievements__head{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  .ach-achievements__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ach-achievement-card:last-child{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:720px){
  .ach-achievements{
    margin-top:0 !important;
    padding:18px 0 54px !important;
  }

  .ach-achievements__panel{
    padding:22px !important;
    border-radius:28px !important;
  }

  .ach-achievements__head h2{
    font-size:clamp(32px,9vw,44px) !important;
  }

  .ach-achievements__head p{
    font-size:15px !important;
  }

  .ach-achievements__grid{
    grid-template-columns:1fr !important;
  }

  .ach-achievement-card,
  .ach-achievement-card:last-child{
    grid-column:auto !important;
    min-height:132px !important;
    padding:20px !important;
  }

  .ach-achievement-card strong{
    font-size:56px !important;
  }
}


/* =========================
   V36 — HERO / ACHIEVEMENTS SEAM FIX + USSR TEXT
   Убираем видимую линию стыка первого и второго блока.
========================= */

/* Плавный переход снизу hero, чтобы не было жесткой горизонтальной линии */
.ach-hero::after,
.ach-hero--clean::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:-1px !important;
  height:190px !important;
  z-index:2 !important;
  pointer-events:none !important;
  background:linear-gradient(
    180deg,
    rgba(244,248,255,0) 0%,
    rgba(244,248,255,.24) 44%,
    var(--ac-bg) 100%
  ) !important;
}

.ach-hero__inner{
  z-index:3 !important;
}

/* Второй блок сильнее заходит на hero и не показывает прямой стык фона */
.ach-achievements{
  margin-top:-118px !important;
  padding-top:0 !important;
  background:transparent !important;
}

.ach-achievements::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:-110px !important;
  height:160px !important;
  z-index:-1 !important;
  pointer-events:none !important;
  background:linear-gradient(
    180deg,
    rgba(244,248,255,0) 0%,
    var(--ac-bg) 72%
  ) !important;
}

.ach-achievements__panel{
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
}

/* Чуть мягче верхняя граница самой панели */
.ach-achievements__panel{
  border-top-color:rgba(255,255,255,.72) !important;
}

@media(max-width:720px){
  .ach-hero::after,
  .ach-hero--clean::after{
    height:120px !important;
    background:linear-gradient(
      180deg,
      rgba(244,248,255,0) 0%,
      var(--ac-bg) 100%
    ) !important;
  }

  .ach-achievements{
    margin-top:-24px !important;
    padding-top:0 !important;
  }

  .ach-achievements::before{
    top:-70px !important;
    height:100px !important;
  }
}


/* =========================
   V37 — CLEAN HERO / ACHIEVEMENTS JOIN
   Убираем белую дымку, тень и искусственный градиент между первым и вторым блоком.
   Оставляем чистое наложение карточки достижений на видео.
========================= */

/* Полностью отключаем белый градиент/дымку, который был добавлен в V36 */
.ach-hero::after,
.ach-hero--clean::after,
.ach-achievements::before{
  display:none !important;
  content:none !important;
  background:none !important;
}

/* Чистое наложение второго блока на первый без туманной полосы */
.ach-achievements{
  margin-top:-84px !important;
  padding:0 0 82px !important;
  background:transparent !important;
}

/* Сама панель без тяжелой внешней тени и без blur-эффекта */
.ach-achievements__panel{
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(255,255,255,.86) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.10) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* Убираем визуально жесткую верхнюю линию панели */
.ach-achievements__panel{
  border-top-color:rgba(255,255,255,.92) !important;
}

/* На мобильной блок идет спокойнее и почти без наложения */
@media(max-width:720px){
  .ach-achievements{
    margin-top:0 !important;
    padding:22px 0 54px !important;
  }

  .ach-achievements__panel{
    box-shadow:0 14px 34px rgba(8,28,62,.08) !important;
  }
}


/* =========================
   V38 — ACHIEVEMENTS HISTORY LINK
   Быстрая ссылка на историю школы во втором блоке.
========================= */

.ach-achievements__text{
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:16px !important;
}

.ach-achievements__text p{
  margin:0 !important;
  color:var(--ac-muted) !important;
  font-size:16px !important;
  line-height:1.72 !important;
  font-weight:400 !important;
}

.ach-history-link{
  min-height:44px !important;
  padding:0 16px !important;
  border-radius:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#1E3A55 !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  box-shadow:0 12px 28px rgba(30,58,85,.18) !important;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.ach-history-link:hover{
  color:#fff !important;
  background:#0f2b42 !important;
  transform:translateY(-2px) !important;
  box-shadow:0 16px 34px rgba(30,58,85,.22) !important;
}

.ach-history-link::after{
  content:"→" !important;
  margin-left:10px !important;
  font-size:16px !important;
  line-height:1 !important;
}

@media(max-width:720px){
  .ach-achievements__text{
    gap:14px !important;
  }

  .ach-history-link{
    width:100% !important;
  }
}


/* =========================
   V39 — OPAQUE ACHIEVEMENTS PANEL
   Второй блок теперь полностью непрозрачный,
   чтобы не было видно перекрытие с первым экраном.
========================= */

.ach-achievements__panel{
  background:#ffffff !important;
  border-color:rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.10) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* Карточки внутри второго блока тоже делаем полностью белыми */
.ach-achievement-card{
  background:#ffffff !important;
  border-color:rgba(8,28,62,.08) !important;
}

/* Технический паттерн оставляем, но он теперь лежит поверх белого фона, без просвечивания видео */
.ach-achievements__panel::before{
  opacity:.36 !important;
}

/* Никаких дополнительных белых дымок между hero и блоком достижений */
.ach-hero::after,
.ach-hero--clean::after,
.ach-achievements::before{
  display:none !important;
  content:none !important;
  background:none !important;
}


/* =========================
   V40 — DARK THEME FIX FOR ACHIEVEMENTS
   Исправление читаемости второго блока в темной теме.
   Панель достижений остается белой, а текст внутри всегда темный.
========================= */

.ach-achievements__panel,
html[data-theme="dark"] .ach-achievements__panel{
  background:#ffffff !important;
  color:#071936 !important;
}

.ach-achievements__head h2,
html[data-theme="dark"] .ach-achievements__head h2{
  color:#071936 !important;
}

.ach-achievements__head p,
.ach-achievements__text p,
html[data-theme="dark"] .ach-achievements__head p,
html[data-theme="dark"] .ach-achievements__text p{
  color:#64748b !important;
}

.ach-achievement-card,
html[data-theme="dark"] .ach-achievement-card{
  background:#ffffff !important;
  color:#071936 !important;
}

.ach-achievement-card strong,
html[data-theme="dark"] .ach-achievement-card strong{
  color:#1E3A55 !important;
}

.ach-achievement-card span,
html[data-theme="dark"] .ach-achievement-card span{
  color:#26384d !important;
}

.ach-achievements__panel .ach-kicker,
html[data-theme="dark"] .ach-achievements__panel .ach-kicker{
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
}

.ach-history-link,
html[data-theme="dark"] .ach-history-link{
  background:#1E3A55 !important;
  color:#ffffff !important;
}

.ach-history-link:hover,
html[data-theme="dark"] .ach-history-link:hover{
  background:#0f2b42 !important;
  color:#ffffff !important;
}


/* =========================
   V41 — BLOCK 3 / MATERIAL BASE
   Третий блок главной: материальная база, инфраструктура, развитие комплекса.
========================= */

.ach-material{
  position:relative !important;
  padding:10px 0 92px !important;
  background:
    radial-gradient(circle at 14% 18%,rgba(45,127,255,.10),transparent 34rem),
    radial-gradient(circle at 88% 24%,rgba(7,135,189,.08),transparent 30rem),
    var(--ac-bg) !important;
}

.ach-material__intro{
  display:grid !important;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ach-material__copy{
  padding:38px !important;
  border-radius:36px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.08) !important;
}

.ach-material__copy h2{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(38px,4.7vw,78px) !important;
  line-height:.94 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  max-width:900px !important;
}

.ach-material__text{
  margin-top:26px !important;
  display:grid !important;
  gap:16px !important;
}

.ach-material__text p{
  margin:0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.78 !important;
  font-weight:400 !important;
}

.ach-material__accent{
  margin-top:4px !important;
  padding:18px 20px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#1E3A55,#10283f) !important;
  color:#ffffff !important;
  font-size:17px !important;
  line-height:1.55 !important;
  font-weight:700 !important;
}

.ach-material__visual{
  position:relative !important;
  min-height:100% !important;
  border-radius:36px !important;
  overflow:hidden !important;
  background:#0b1222 !important;
  box-shadow:0 22px 60px rgba(8,28,62,.14) !important;
}

.ach-material__visual-photo{
  position:relative !important;
  min-height:100% !important;
  height:100% !important;
  display:flex !important;
  align-items:flex-end !important;
  padding:28px !important;
  color:#fff !important;
  background:
    linear-gradient(180deg,rgba(5,8,20,.08),rgba(5,8,20,.72)),
    radial-gradient(circle at 20% 16%,rgba(45,127,255,.34),transparent 32rem),
    linear-gradient(135deg,#123a61,#091322 62%,#050814) !important;
}

.ach-material__visual-photo::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.58 !important;
}

.ach-material__visual-photo::after{
  content:"17 000+ м²" !important;
  position:absolute !important;
  right:28px !important;
  top:28px !important;
  min-height:44px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
}

.ach-material__visual-photo span{
  position:relative !important;
  z-index:1 !important;
  max-width:420px !important;
  color:rgba(255,255,255,.86) !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ach-material__facts{
  margin-top:16px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ach-material__facts article{
  min-height:146px !important;
  padding:22px !important;
  border-radius:28px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 36px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}

.ach-material__facts strong{
  color:#1E3A55 !important;
  font-size:clamp(34px,3.3vw,56px) !important;
  line-height:.88 !important;
  font-weight:700 !important;
  letter-spacing:-.055em !important;
}

.ach-material__facts span{
  margin-top:16px !important;
  color:#485160 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

.ach-material__cards{
  margin-top:16px !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ach-material-card{
  min-height:320px !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 36px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ach-material-card__photo{
  position:relative !important;
  min-height:150px !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:flex-end !important;
  padding:16px !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02),rgba(5,8,20,.62)),linear-gradient(135deg,#1E3A55,#0787bd) !important;
}

.ach-material-card__photo::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px) !important;
  background-size:40px 40px !important;
  opacity:.55 !important;
}

.ach-material-card__photo span{
  position:relative !important;
  z-index:1 !important;
  min-height:32px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ach-material-card__photo--track{background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.66)),linear-gradient(135deg,#0f5f9c,#06162f) !important;}
.ach-material-card__photo--gym{background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.66)),linear-gradient(135deg,#16243a,#ef3340) !important;}
.ach-material-card__photo--fitness{background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.66)),linear-gradient(135deg,#0787bd,#35d07f) !important;}
.ach-material-card__photo--halls{background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.66)),linear-gradient(135deg,#1E3A55,#9b78ff) !important;}
.ach-material-card__photo--development{background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.66)),linear-gradient(135deg,#101827,#2d7fff) !important;}

.ach-material-card__body{
  padding:20px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

.ach-material-card__body h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:21px !important;
  line-height:1.08 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
}

.ach-material-card__body p{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

html[data-theme="dark"] .ach-material__copy,
html[data-theme="dark"] .ach-material__facts article,
html[data-theme="dark"] .ach-material-card{
  background:#ffffff !important;
  color:#071936 !important;
}
html[data-theme="dark"] .ach-material__copy h2,
html[data-theme="dark"] .ach-material-card__body h3{color:#071936 !important;}
html[data-theme="dark"] .ach-material__text p,
html[data-theme="dark"] .ach-material-card__body p{color:#64748b !important;}
html[data-theme="dark"] .ach-material__facts strong{color:#1E3A55 !important;}
html[data-theme="dark"] .ach-material__facts span{color:#485160 !important;}

@media(min-width:1600px){
  .ach-material__copy{padding:44px !important;}
  .ach-material-card{min-height:344px !important;}
  .ach-material-card__photo{min-height:170px !important;}
}

@media(min-width:1025px) and (max-width:1420px){
  .ach-material__cards{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}

@media(max-width:1024px){
  .ach-material{padding:0 0 70px !important;}
  .ach-material__intro{grid-template-columns:1fr !important;}
  .ach-material__visual{min-height:360px !important;}
  .ach-material__facts{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ach-material__cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ach-material-card--wide{grid-column:1 / -1 !important;}
}

@media(max-width:720px){
  .ach-material{padding:0 0 56px !important;}
  .ach-material__copy{padding:24px !important;border-radius:28px !important;}
  .ach-material__copy h2{font-size:clamp(34px,10vw,48px) !important;}
  .ach-material__text p{font-size:15px !important;}
  .ach-material__accent{padding:16px !important;border-radius:18px !important;font-size:16px !important;}
  .ach-material__visual{min-height:280px !important;border-radius:28px !important;}
  .ach-material__visual-photo{padding:20px !important;}
  .ach-material__visual-photo::after{right:18px !important;top:18px !important;}
  .ach-material__facts,.ach-material__cards{grid-template-columns:1fr !important;}
  .ach-material__facts article{min-height:122px !important;border-radius:24px !important;}
  .ach-material-card,.ach-material-card--wide{min-height:auto !important;grid-column:auto !important;border-radius:26px !important;}
  .ach-material-card__photo{min-height:150px !important;}
}


/* =========================
   V42 — REAL PHOTOS FOR MATERIAL BASE
   Фото берутся с основного домена alexclub.ru/wp-content/uploads/,
   чтобы после переноса нового сайта ничего не менять.
========================= */

/* Главное фото блока */
.ach-material__visual-photo--main{
  background:
    linear-gradient(180deg,rgba(5,8,20,.08),rgba(5,8,20,.70)),
    url("https://alexclub.ru/wp-content/uploads/2025/10/1-min-scaled.jpg") center center / cover no-repeat !important;
}

/* Манеж */
.ach-material-card__photo--track{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2023/09/34.jpg") center center / cover no-repeat !important;
}

/* Тренажерный зал */
.ach-material-card__photo--gym{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2025/10/1-min-scaled.jpg") center center / cover no-repeat !important;
}

/* Фитнес-центр */
.ach-material-card__photo--fitness{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2023/03/fit-3.jpg") center center / cover no-repeat !important;
}

/* Спортивные залы */
.ach-material-card__photo--halls{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-3-scaled.jpg") center center / cover no-repeat !important;
}

/* Развитие комплекса / новые пространства */
.ach-material-card__photo--development{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-4.jpg") center center / cover no-repeat !important;
}

/* Убираем техническую сетку поверх реальных фото, чтобы фото были чище */
.ach-material__visual-photo::before,
.ach-material-card__photo::before{
  opacity:.18 !important;
}

/* Подписи на фото оставляем читаемыми */
.ach-material-card__photo span,
.ach-material__visual-photo span{
  background:rgba(5,8,20,.36) !important;
  border-color:rgba(255,255,255,.22) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}


/* =========================
   V43 — MATERIAL BASE FIXES
   1) Добавлена тонкая техническая сетка в текстовую карточку «База, которая работает на результат».
   2) Большое фото заменено на manege-01.webp.
   3) Акцентная фраза сделана контрастной и читаемой.
========================= */

/* Тонкая сетка в белой текстовой карточке */
.ach-material__copy{
  position:relative !important;
  overflow:hidden !important;
}

.ach-material__copy::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.035) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.38 !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 86%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 86%) !important;
}

.ach-material__copy > *{
  position:relative !important;
  z-index:1 !important;
}

/* Большое фото блока: манеж */
.ach-material__visual-photo--main{
  background:
    linear-gradient(180deg,rgba(5,8,20,.06),rgba(5,8,20,.58)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

/* Акцентная фраза: исправление читаемости.
   Раньше ее перебивал селектор .ach-material__text p. */
.ach-material__text p.ach-material__accent,
html[data-theme="dark"] .ach-material__text p.ach-material__accent{
  margin-top:8px !important;
  padding:20px 22px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#163956,#0B2237) !important;
  color:#ffffff !important;
  font-size:18px !important;
  line-height:1.55 !important;
  font-weight:700 !important;
  box-shadow:0 14px 32px rgba(16,40,63,.22) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

@media(max-width:720px){
  .ach-material__text p.ach-material__accent,
  html[data-theme="dark"] .ach-material__text p.ach-material__accent{
    padding:17px 18px !important;
    border-radius:18px !important;
    font-size:16px !important;
  }
}


/* =========================
   V44 — MATERIAL BASE STRUCTURE UPDATE
   1) Фраза-мост к тренерам добавлена в конец блока.
   2) Карточка «Развитие комплекса» убрана, смысл перенесен в основной текст.
   3) Фото из карточки «Развитие» поставлено в «Спортивные залы».
   4) Добавлены карточки: Центр настольного тенниса и Центр единоборств.
   5) Главное фото временно оставлено текущим: для фото комплекса с улицы нужен точный URL.
========================= */

/* Спортивные залы: ставим фото, которое раньше было в «Развитие комплекса» */
.ach-material-card__photo--halls{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-4.jpg") center center / cover no-repeat !important;
}

/* Центр настольного тенниса */
.ach-material-card__photo--tabletennis{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2023/06/5-1.jpg") center center / cover no-repeat !important;
}

/* Центр единоборств */
.ach-material-card__photo--combat{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2024/11/zbb-16-scaled.jpg") center center / cover no-repeat !important;
}

/* 6 карточек на широком экране: 3 + 3, чтобы не мельчить */
@media(min-width:1421px){
  .ach-material__cards{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ach-material-card{
    min-height:350px !important;
  }

  .ach-material-card__photo{
    min-height:190px !important;
  }
}

/* Мост к следующему блоку тренеров */
.ach-material__bridge{
  margin-top:16px !important;
  padding:24px 28px !important;
  border-radius:28px !important;
  background:#1E3A55 !important;
  color:#ffffff !important;
  font-size:clamp(18px,1.55vw,24px) !important;
  line-height:1.42 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  box-shadow:0 18px 46px rgba(8,28,62,.14) !important;
  position:relative !important;
  overflow:hidden !important;
}

.ach-material__bridge::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  background-size:48px 48px !important;
  opacity:.45 !important;
}

@media(max-width:720px){
  .ach-material__bridge{
    padding:20px !important;
    border-radius:22px !important;
    font-size:17px !important;
  }
}


/* =========================
   V45 — MATERIAL BASE PHOTOS UPDATE
   Новые фото и уточнения для блока материальной базы.
========================= */

/* Главное большое фото: комплекс с улицы / сверху */
.ach-material__visual-photo--main{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.52)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-sportivnyy-kompleks-sverhu.webp") center center / cover no-repeat !important;
}

/* Фитнес-центр */
.ach-material-card__photo--fitness{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/fitness-group-02.webp") center center / cover no-repeat !important;
}

/* Центр настольного тенниса */
.ach-material-card__photo--tabletennis{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-nastolnogo-tennisa.webp") center center / cover no-repeat !important;
}

/* Центр единоборств */
.ach-material-card__photo--combat{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-edinoborstv-ringi.webp") center center / cover no-repeat !important;
}


/* =========================
   V46 — MATERIAL BASE / FULL STRUCTURE
   3 большие карточки + сетка направлений.
========================= */

/* Главное фото: комплекс сверху */
.ach-material__visual-photo--main{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.52)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-sportivnyy-kompleks-sverhu.webp") center center / cover no-repeat !important;
}

/* Сетка в текстовой карточке */
.ach-material__copy{
  position:relative !important;
  overflow:hidden !important;
}

.ach-material__copy::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.035) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.38 !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 86%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 86%) !important;
}

.ach-material__copy > *{
  position:relative !important;
  z-index:1 !important;
}

/* Акцентная фраза */
.ach-material__text p.ach-material__accent,
html[data-theme="dark"] .ach-material__text p.ach-material__accent{
  margin-top:8px !important;
  padding:20px 22px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#163956,#0B2237) !important;
  color:#ffffff !important;
  font-size:18px !important;
  line-height:1.55 !important;
  font-weight:700 !important;
  box-shadow:0 14px 32px rgba(16,40,63,.22) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

/* Подзаголовки внутри блока */
.ach-material__section-head{
  margin-top:34px !important;
  margin-bottom:14px !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:20px !important;
}

.ach-material__section-head span{
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ach-material__section-head h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(26px,2.3vw,42px) !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:-.04em !important;
  text-align:right !important;
}

/* 3 большие карточки */
.ach-material__flagships{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
}

.ach-material-feature{
  min-height:470px !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ach-material-feature__photo{
  position:relative !important;
  min-height:270px !important;
  padding:18px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  background:
    linear-gradient(180deg,rgba(5,8,20,.03),rgba(5,8,20,.64)),
    linear-gradient(135deg,#1E3A55,#0787bd) !important;
  overflow:hidden !important;
}

.ach-material-feature__photo::before,
.ach-material-sport-card__photo::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  background-size:44px 44px !important;
  opacity:.18 !important;
}

.ach-material-feature__photo--manege{
  background:
    linear-gradient(180deg,rgba(5,8,20,.03),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

.ach-material-feature__photo--gym{
  background:
    linear-gradient(180deg,rgba(5,8,20,.03),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2025/10/1-min-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-feature__photo--fitness{
  background:
    linear-gradient(180deg,rgba(5,8,20,.03),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/fitness-group-02.webp") center center / cover no-repeat !important;
}

.ach-material-feature__badges{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.ach-material-feature__badges span,
.ach-material-sport-card__photo span{
  min-height:34px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(5,8,20,.38) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}

.ach-material-feature__body{
  padding:24px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

.ach-material-feature__body h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:28px !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

.ach-material-feature__body p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.62 !important;
}

/* Средние карточки по видам спорта */
.ach-material__sports-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ach-material-sport-card{
  min-height:300px !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ach-material-sport-card__photo{
  position:relative !important;
  min-height:152px !important;
  padding:14px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  overflow:hidden !important;
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    linear-gradient(135deg,#1E3A55,#0787bd) !important;
}

.ach-material-sport-card__photo--football{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-4.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--tennis{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-3-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--volleyball{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/vb-4-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--basketball{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/vb-9-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--badminton{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/vb-5-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--tabletennis{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-nastolnogo-tennisa.webp") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--combat{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-edinoborstv-ringi.webp") center center / cover no-repeat !important;
}

.ach-material-sport-card__body{
  padding:20px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

.ach-material-sport-card__body h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:22px !important;
  line-height:1.06 !important;
  font-weight:700 !important;
  letter-spacing:-.025em !important;
}

.ach-material-sport-card__body p{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

/* Мост к тренерам */
.ach-material__bridge{
  margin-top:16px !important;
  padding:24px 28px !important;
  border-radius:28px !important;
  background:#1E3A55 !important;
  color:#ffffff !important;
  font-size:clamp(18px,1.55vw,24px) !important;
  line-height:1.42 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  box-shadow:0 18px 46px rgba(8,28,62,.14) !important;
  position:relative !important;
  overflow:hidden !important;
}

.ach-material__bridge::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  background-size:48px 48px !important;
  opacity:.45 !important;
}

/* Темная тема: карточки внутри этого блока остаются светлыми */
html[data-theme="dark"] .ach-material__section-head h3,
html[data-theme="dark"] .ach-material-feature__body h3,
html[data-theme="dark"] .ach-material-sport-card__body h3{
  color:#071936 !important;
}

html[data-theme="dark"] .ach-material-feature,
html[data-theme="dark"] .ach-material-sport-card{
  background:#ffffff !important;
}

html[data-theme="dark"] .ach-material-feature__body p,
html[data-theme="dark"] .ach-material-sport-card__body p{
  color:#64748b !important;
}

@media(max-width:1420px){
  .ach-material__sports-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:1180px){
  .ach-material__flagships{
    grid-template-columns:1fr !important;
  }

  .ach-material-feature{
    min-height:auto !important;
  }

  .ach-material-feature__photo{
    min-height:320px !important;
  }
}

@media(max-width:1024px){
  .ach-material__sports-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ach-material__section-head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .ach-material__section-head h3{
    text-align:left !important;
  }
}

@media(max-width:720px){
  .ach-material__text p.ach-material__accent,
  html[data-theme="dark"] .ach-material__text p.ach-material__accent{
    padding:17px 18px !important;
    border-radius:18px !important;
    font-size:16px !important;
  }

  .ach-material__flagships,
  .ach-material__sports-grid{
    grid-template-columns:1fr !important;
  }

  .ach-material-feature{
    border-radius:26px !important;
  }

  .ach-material-feature__photo{
    min-height:220px !important;
  }

  .ach-material-feature__body{
    padding:20px !important;
  }

  .ach-material-feature__body h3{
    font-size:24px !important;
  }

  .ach-material-sport-card{
    min-height:auto !important;
    border-radius:24px !important;
  }

  .ach-material__bridge{
    padding:20px !important;
    border-radius:22px !important;
    font-size:17px !important;
  }
}


/* =========================
   V47 — MATERIAL BASE TEXT/PHOTO REFINEMENTS
   Правки карточек материальной базы.
========================= */

/* Внутренние подзаголовки разделов скрываем, чтобы блок шел компактнее */
.ach-material__section-head{
  display:none !important;
}

/* Фото по новым ссылкам */
.ach-material-sport-card__photo--tennis{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/ten-3-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--volleyball{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/vb-5-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--basketball{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/basket-zal-3-1.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--badminton{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/05/bad-8-scaled.jpg") center center / cover no-repeat !important;
}

/* Фразу-мост делаем визуально спокойнее и меньше */
.ach-material__bridge{
  font-size:clamp(15px,1.1vw,18px) !important;
  line-height:1.55 !important;
  font-weight:600 !important;
  padding:20px 24px !important;
}

@media(max-width:720px){
  .ach-material__bridge{
    font-size:15px !important;
    padding:18px !important;
  }
}


/* =========================
   V48 — MATERIAL BASE SPACING FIX
   После скрытия внутренних подзаголовков вернули нормальные отступы между группами карточек.
========================= */

/* Отступ между фактами и тремя большими карточками */
.ach-material__facts{
  margin-bottom:18px !important;
}

/* 3 большие карточки: возвращаем воздух между карточками и сверху */
.ach-material__flagships{
  margin-top:18px !important;
  gap:18px !important;
}

/* Отступ между большими карточками и сеткой направлений */
.ach-material__sports-grid{
  margin-top:18px !important;
  gap:18px !important;
}

/* Немного больше воздуха внутри всего блока, чтобы карточки не выглядели склеенными */
.ach-material-feature,
.ach-material-sport-card,
.ach-material__facts article{
  margin:0 !important;
}

/* На широких экранах делаем сетку аккуратнее */
@media(min-width:1421px){
  .ach-material__flagships{
    gap:18px !important;
  }

  .ach-material__sports-grid{
    gap:18px !important;
  }
}

/* На планшетах и мобильных отступы чуть меньше, но карточки не склеиваются */
@media(max-width:1024px){
  .ach-material__facts{
    margin-bottom:14px !important;
  }

  .ach-material__flagships,
  .ach-material__sports-grid{
    margin-top:14px !important;
    gap:14px !important;
  }
}

@media(max-width:720px){
  .ach-material__flagships,
  .ach-material__sports-grid{
    gap:12px !important;
  }
}


/* =========================
   V49 — BADMINTON PHOTO CONFIRM
   Явно фиксируем фото бадминтона.
========================= */

.ach-material-sport-card__photo--badminton{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/05/bad-8-scaled.jpg") center center / cover no-repeat !important;
}


/* =========================
   V50 — HERO STRAY BRIDGE FIX
   Защита: фраза-мост не должна появляться в hero.
========================= */

.ach-hero .ach-material__bridge,
.ach-achievements .ach-material__bridge{
  display:none !important;
}


/* =========================
   V51 — FULL WIDTH BRIDGE STRIP
   Фраза-мост стала отдельной полноширинной разделительной полосой
   с легкой анимацией и sport-tech паттерном.
========================= */

.ach-material__bridge{
  width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  margin-top:42px !important;
  margin-bottom:-18px !important;
  padding:46px var(--ac-desktop-side-gap,5vw) !important;
  border-radius:0 !important;
  background:
    radial-gradient(circle at 16% 50%,rgba(45,127,255,.30),transparent 34rem),
    radial-gradient(circle at 86% 46%,rgba(7,135,189,.24),transparent 34rem),
    linear-gradient(135deg,#071936 0%,#10283f 48%,#06101f 100%) !important;
  color:#ffffff !important;
  box-shadow:none !important;
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
}

.ach-material__bridge::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.42 !important;
  animation:acBridgeGridMove 16s linear infinite !important;
}

.ach-material__bridge::after{
  content:"" !important;
  position:absolute !important;
  inset:-40% -20% !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:linear-gradient(
    105deg,
    transparent 0%,
    transparent 38%,
    rgba(255,255,255,.16) 48%,
    rgba(255,255,255,.06) 54%,
    transparent 66%,
    transparent 100%
  ) !important;
  transform:translateX(-40%) !important;
  animation:acBridgeLightSweep 7s ease-in-out infinite !important;
  opacity:.55 !important;
}

.ach-material__bridge-inner{
  width:calc(100vw - (var(--ac-desktop-side-gap,5vw) * 2)) !important;
  max-width:none !important;
  margin:0 auto !important;
  position:relative !important;
  z-index:1 !important;
  color:#ffffff !important;
  font-size:clamp(24px,2.5vw,44px) !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  text-wrap:balance !important;
}

.ach-material__bridge-inner::before{
  content:"ДАЛЬШЕ — ЛЮДИ, КОТОРЫЕ ВЕДУТ К РЕЗУЛЬТАТУ" !important;
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:34px !important;
  margin:0 0 16px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:rgba(255,255,255,.82) !important;
  font-size:12px !important;
  line-height:34px !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

@keyframes acBridgeGridMove{
  0%{ background-position:0 0,0 0; }
  100%{ background-position:54px 54px,54px 54px; }
}

@keyframes acBridgeLightSweep{
  0%,32%{ transform:translateX(-55%); opacity:0; }
  48%{ opacity:.55; }
  72%,100%{ transform:translateX(55%); opacity:0; }
}

/* Если пользователь предпочитает меньше анимации */
@media (prefers-reduced-motion: reduce){
  .ach-material__bridge::before,
  .ach-material__bridge::after{
    animation:none !important;
  }
}

@media(max-width:1024px){
  .ach-material__bridge{
    margin-top:34px !important;
    padding:38px 24px !important;
  }

  .ach-material__bridge-inner{
    width:100% !important;
    font-size:clamp(22px,5vw,34px) !important;
  }
}

@media(max-width:720px){
  .ach-material__bridge{
    margin-top:28px !important;
    margin-bottom:-8px !important;
    padding:34px 18px !important;
  }

  .ach-material__bridge-inner{
    font-size:24px !important;
    line-height:1.18 !important;
  }

  .ach-material__bridge-inner::before{
    width:auto !important;
    line-height:1.25 !important;
    min-height:auto !important;
    padding:9px 11px !important;
    font-size:10px !important;
  }
}


/* =========================
   V52 — BLOCK 4 / COACHES
   Тренеры и наставники: портреты, ФИО и направления.
========================= */

.ach-coaches{
  position:relative !important;
  padding:92px 0 96px !important;
  background:
    radial-gradient(circle at 16% 12%,rgba(7,135,189,.10),transparent 34rem),
    radial-gradient(circle at 88% 20%,rgba(45,127,255,.09),transparent 34rem),
    var(--ac-bg) !important;
  overflow:hidden !important;
}

.ach-coaches::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.028) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
  opacity:.42 !important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.88),transparent 78%) !important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.88),transparent 78%) !important;
}

.ach-coaches .ach-wrap{
  position:relative !important;
  z-index:1 !important;
}

.ach-coaches__head{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr) !important;
  gap:30px !important;
  align-items:end !important;
  margin-bottom:28px !important;
}

.ach-coaches__title h2{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(42px,5vw,86px) !important;
  line-height:.94 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  max-width:940px !important;
}

.ach-coaches__text{
  padding:28px !important;
  border-radius:30px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
}

.ach-coaches__text p{
  margin:0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.72 !important;
}

.ach-coaches__text p + p{
  margin-top:14px !important;
}

.ach-coaches__grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ach-coach-card{
  min-height:520px !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
}

.ach-coach-card__photo{
  position:relative !important;
  min-height:360px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% 20%,rgba(45,127,255,.16),transparent 20rem),
    linear-gradient(180deg,#eaf3ff,#ffffff) !important;
}

.ach-coach-card__photo::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(180deg,rgba(5,8,20,0) 56%,rgba(5,8,20,.28) 100%),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px) !important;
  background-size:auto,46px 46px,46px 46px !important;
  opacity:.72 !important;
}

.ach-coach-card__photo img{
  width:100% !important;
  height:100% !important;
  min-height:360px !important;
  object-fit:cover !important;
  object-position:center top !important;
  display:block !important;
}

.ach-coach-card--fitness .ach-coach-card__photo{
  background:linear-gradient(180deg,#eaf3ff,#dfefff) !important;
}

.ach-coach-card--fitness .ach-coach-card__photo img{
  object-fit:contain !important;
  object-position:center bottom !important;
  padding:10px 10px 0 !important;
}

.ach-coach-card__body{
  padding:22px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

.ach-coach-card__body span{
  width:max-content !important;
  max-width:100% !important;
  min-height:32px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
}

.ach-coach-card__body h3{
  margin:15px 0 0 !important;
  color:#071936 !important;
  font-size:24px !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

.ach-coach-card__body p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.ach-coaches__actions{
  margin-top:24px !important;
  display:flex !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
}

.ach-btn--ghost{
  background:#ffffff !important;
  color:#071936 !important;
  border:1px solid rgba(8,28,62,.10) !important;
  box-shadow:0 12px 28px rgba(8,28,62,.06) !important;
}

html[data-theme="dark"] .ach-coaches{
  background:
    radial-gradient(circle at 16% 12%,rgba(7,135,189,.10),transparent 34rem),
    radial-gradient(circle at 88% 20%,rgba(45,127,255,.09),transparent 34rem),
    var(--ac-bg) !important;
}

html[data-theme="dark"] .ach-coaches__title h2,
html[data-theme="dark"] .ach-coach-card__body h3{
  color:#071936 !important;
}

html[data-theme="dark"] .ach-coaches__text,
html[data-theme="dark"] .ach-coach-card{
  background:#ffffff !important;
}

html[data-theme="dark"] .ach-coaches__text p,
html[data-theme="dark"] .ach-coach-card__body p{
  color:#64748b !important;
}

@media(max-width:1280px){
  .ach-coaches__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:1024px){
  .ach-coaches{
    padding:76px 0 80px !important;
  }

  .ach-coaches__head{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
}

@media(max-width:720px){
  .ach-coaches{
    padding:58px 0 64px !important;
  }

  .ach-coaches__title h2{
    font-size:clamp(34px,10vw,52px) !important;
  }

  .ach-coaches__text{
    padding:22px !important;
    border-radius:26px !important;
  }

  .ach-coaches__grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .ach-coach-card{
    min-height:auto !important;
    border-radius:28px !important;
  }

  .ach-coach-card__photo{
    min-height:320px !important;
  }

  .ach-coach-card__photo img{
    min-height:320px !important;
  }

  .ach-coach-card__body{
    padding:20px !important;
  }

  .ach-coaches__actions .ach-btn{
    width:100% !important;
  }
}


/* =========================
   V53 — COACHES LIST UPDATE
   Обновленный список тренеров: 6 карточек в утвержденном порядке.
========================= */

.ach-coaches__grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ach-coach-card__photo img{
  object-position:center top !important;
}

/* Для портретов 400x471 держим одинаковую аккуратную посадку */
.ach-coach-card__photo img[src*="400x471"]{
  object-fit:cover !important;
  object-position:center top !important;
}

@media(max-width:1280px){
  .ach-coaches__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ach-coaches__grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================
   V54 — COACHES TEXT UPDATE
   Обновлен основной текст блока тренеров, убрана кнопка «Выбрать направление»,
   Волкова — старший тренер по легкой атлетике.
========================= */

.ach-coaches__text{
  display:grid !important;
  gap:14px !important;
}

.ach-coaches__text p,
.ach-coaches__text p + p{
  margin:0 !important;
}

.ach-coaches__actions{
  justify-content:center !important;
}

.ach-coaches__actions .ach-btn--ghost{
  display:none !important;
}


/* =========================
   V55 — GLOBAL HOME SPACING + UNIFIED BACKGROUND
   1) Уменьшена высота блока достижений.
   2) Выравнены отступы секций на главной.
   3) Уменьшен верхний отступ блока тренеров.
   4) Единый фон страницы без видимых границ между блоками.
   5) Плашка разделителя переименована в «Тренеры и наставники».
========================= */

:root{
  --ac-home-gap-x:5vw;
  --ac-section-y:72px;
  --ac-section-y-tight:56px;
  --ac-section-y-mobile:52px;
  --ac-card-gap:18px;
}

/* Единый фон всей главной после hero */
.ac-page--home,
.ac-page--home .ac-content--home{
  position:relative !important;
  background:
    radial-gradient(circle at 12% 18%,rgba(45,127,255,.11),transparent 38rem),
    radial-gradient(circle at 86% 22%,rgba(7,135,189,.10),transparent 34rem),
    radial-gradient(circle at 48% 62%,rgba(155,120,255,.055),transparent 42rem),
    linear-gradient(180deg,#f4f8ff 0%,#eef5ff 48%,#f7fbff 100%) !important;
  overflow:hidden !important;
}

/* Общий декоративный слой — одна сетка на всю страницу, а не отдельные границы блоков */
.ac-page--home .ac-content--home::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.030) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.024) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
  opacity:.58 !important;
  animation:acHomeGridFloat 28s linear infinite !important;
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.85) 18%,rgba(0,0,0,.72) 86%,transparent 100%) !important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.85) 18%,rgba(0,0,0,.72) 86%,transparent 100%) !important;
}

.ac-page--home .ac-content--home > *{
  position:relative !important;
  z-index:1 !important;
}

@keyframes acHomeGridFloat{
  0%{ background-position:0 0,0 0; }
  100%{ background-position:58px 58px,58px 58px; }
}

/* Секции после hero становятся прозрачными, чтобы работал единый фон */
.ach-achievements,
.ach-material,
.ach-coaches{
  background:transparent !important;
}

/* Но hero остается видео-блоком */
.ach-hero,
.ach-hero--clean{
  background:#060914 !important;
}

/* Блок достижений — компактнее по высоте */
.ach-achievements{
  margin-top:-72px !important;
  padding:0 0 var(--ac-section-y-tight) !important;
}

.ach-achievements__panel{
  padding:24px 28px 28px !important;
  border-radius:32px !important;
}

.ach-achievements__head{
  gap:18px !important;
  margin-bottom:18px !important;
  align-items:center !important;
}

.ach-achievements__head h2{
  font-size:clamp(32px,3.65vw,56px) !important;
}

.ach-achievements__head p,
.ach-achievements__text p{
  font-size:15px !important;
  line-height:1.6 !important;
}

.ach-history-link{
  min-height:40px !important;
}

.ach-achievements__grid{
  gap:10px !important;
}

.ach-achievement-card{
  min-height:136px !important;
  padding:18px !important;
  border-radius:24px !important;
}

.ach-achievement-card strong{
  font-size:clamp(42px,3.6vw,62px) !important;
}

.ach-achievement-card span{
  margin-top:14px !important;
  font-size:13px !important;
}

/* Единые вертикальные отступы следующих блоков */
.ach-material{
  padding-top:var(--ac-section-y-tight) !important;
  padding-bottom:var(--ac-section-y) !important;
}

.ach-coaches{
  padding-top:var(--ac-section-y-tight) !important;
  padding-bottom:var(--ac-section-y) !important;
}

/* Блок тренеров — меньше свободного пространства сверху */
.ach-coaches__head{
  margin-bottom:24px !important;
}

.ach-coaches__title h2{
  margin-top:14px !important;
}

/* Плашка на разделителе: это не техническая плашка, а смысловой маркер следующего блока */
.ach-material__bridge-inner::before{
  content:"ТРЕНЕРЫ И НАСТАВНИКИ" !important;
}

/* Разделитель немного ближе к сетке карточек, но сохраняет акцент */
.ach-material__bridge{
  margin-top:36px !important;
  margin-bottom:-8px !important;
}

/* Темная тема: единый фон тоже цельный */
html[data-theme="dark"] .ac-page--home,
html[data-theme="dark"] .ac-page--home .ac-content--home{
  background:
    radial-gradient(circle at 12% 18%,rgba(45,127,255,.14),transparent 38rem),
    radial-gradient(circle at 86% 22%,rgba(7,135,189,.11),transparent 34rem),
    radial-gradient(circle at 48% 62%,rgba(155,120,255,.08),transparent 42rem),
    linear-gradient(180deg,#060914 0%,#0b1222 48%,#060914 100%) !important;
}

html[data-theme="dark"] .ac-page--home .ac-content--home::before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
  opacity:.42 !important;
}

/* Убираем лишние отдельные сетки секций, чтобы не появлялись видимые границы */
.ach-material::before,
.ach-coaches::before{
  opacity:.18 !important;
}

@media (prefers-reduced-motion: reduce){
  .ac-page--home .ac-content--home::before{
    animation:none !important;
  }
}

@media(max-width:1024px){
  :root{
    --ac-section-y:64px;
    --ac-section-y-tight:50px;
  }

  .ach-achievements{
    margin-top:-44px !important;
    padding-bottom:50px !important;
  }

  .ach-achievements__panel{
    padding:22px !important;
  }

  .ach-coaches{
    padding-top:50px !important;
  }
}

@media(max-width:720px){
  :root{
    --ac-section-y:var(--ac-section-y-mobile);
    --ac-section-y-tight:44px;
    --ac-card-gap:14px;
  }

  .ach-achievements{
    margin-top:0 !important;
    padding:18px 0 44px !important;
  }

  .ach-achievements__panel{
    padding:20px !important;
    border-radius:26px !important;
  }

  .ach-achievement-card{
    min-height:118px !important;
  }

  .ach-material,
  .ach-coaches{
    padding-top:44px !important;
    padding-bottom:54px !important;
  }

  .ach-material__bridge{
    margin-top:28px !important;
    margin-bottom:-4px !important;
  }
}


/* =========================
   V56 — UNIFIED SECTION TITLE SCALE
   Единый размер заголовков основных смысловых блоков главной.
   Исправляет разницу:
   - «Школа олимпийских чемпионов в цифрах»
   - «База, которая работает на результат»
   - «Люди, которые ведут к результату»
========================= */

:root{
  --ac-home-section-title-size:clamp(38px,4.7vw,78px);
  --ac-home-section-title-line:.94;
  --ac-home-section-title-letter:-.065em;
}

/* Основные H2 секций должны быть в одной визуальной системе */
.ach-achievements__head h2,
.ach-material__copy h2,
.ach-coaches__title h2{
  font-size:var(--ac-home-section-title-size) !important;
  line-height:var(--ac-home-section-title-line) !important;
  letter-spacing:var(--ac-home-section-title-letter) !important;
  font-weight:700 !important;
}

/* Для блока достижений компенсируем высоту не уменьшением заголовка, а компактными отступами */
.ach-achievements__panel{
  padding-top:24px !important;
  padding-bottom:28px !important;
}

.ach-achievements__head{
  margin-bottom:18px !important;
}

/* На мобильной тоже единый масштаб */
@media(max-width:720px){
  :root{
    --ac-home-section-title-size:clamp(34px,10vw,52px);
    --ac-home-section-title-line:.96;
  }
}


/* =========================
   V58 — COACHES BLOCK BALANCED LAYOUT
   Возврат к двухколоночной верстке блока тренеров:
   слева заголовок, справа компактная светлая текстовая карточка.
   Акцентная полоса остается, но становится аккуратнее.
========================= */

/* Акцентная полоса — сохраняем премиальность, но уменьшаем высоту */
.ach-material__bridge{
  margin-top:38px !important;
  margin-bottom:0 !important;
  padding:36px var(--ac-desktop-side-gap,5vw) !important;
}

.ach-material__bridge-inner{
  max-width:1220px !important;
  font-size:clamp(22px,2.15vw,38px) !important;
  line-height:1.16 !important;
  letter-spacing:-.04em !important;
}

.ach-material__bridge-inner::before{
  content:"ТРЕНЕРЫ И НАСТАВНИКИ" !important;
  min-height:30px !important;
  margin-bottom:13px !important;
  padding:0 11px !important;
  font-size:10px !important;
  line-height:30px !important;
  letter-spacing:.14em !important;
}

/* Блок тренеров — ближе к разделителю, но без ощущения слипания */
.ach-coaches{
  padding-top:46px !important;
  padding-bottom:var(--ac-section-y,72px) !important;
}

/* Возвращаем аккуратную двухколоночную композицию */
.ach-coaches__head{
  display:grid !important;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr) !important;
  gap:28px !important;
  align-items:center !important;
  margin-bottom:28px !important;
}

.ach-coaches__title h2{
  max-width:900px !important;
  margin-top:14px !important;
}

/* Текстовая карточка справа — компактнее, плотнее и официальнее */
.ach-coaches__text{
  padding:22px 24px !important;
  border-radius:28px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
  display:grid !important;
  gap:11px !important;
}

.ach-coaches__text p,
.ach-coaches__text p + p{
  margin:0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
  font-weight:400 !important;
}

/* Карточки тренеров держим близко к заголовочному блоку */
.ach-coaches__grid{
  margin-top:0 !important;
  gap:18px !important;
}

/* Убираем любые плашки из неудачного варианта, если браузер их закешировал */
.ach-coaches__chips{
  display:none !important;
}

/* Темная тема: правую карточку оставляем светлой и читаемой */
html[data-theme="dark"] .ach-coaches__text{
  background:#ffffff !important;
  border-color:rgba(255,255,255,.10) !important;
}

html[data-theme="dark"] .ach-coaches__text p{
  color:#64748b !important;
}

/* Планшет */
@media(max-width:1024px){
  .ach-material__bridge{
    padding:32px 24px !important;
  }

  .ach-material__bridge-inner{
    font-size:clamp(22px,4.2vw,32px) !important;
  }

  .ach-coaches{
    padding-top:40px !important;
  }

  .ach-coaches__head{
    grid-template-columns:1fr !important;
    gap:18px !important;
    align-items:start !important;
  }

  .ach-coaches__text{
    max-width:860px !important;
  }
}

/* Мобильная версия */
@media(max-width:720px){
  .ach-material__bridge{
    padding:28px 18px !important;
  }

  .ach-material__bridge-inner{
    font-size:22px !important;
    line-height:1.22 !important;
  }

  .ach-material__bridge-inner::before{
    width:max-content !important;
    max-width:100% !important;
    min-height:auto !important;
    padding:8px 10px !important;
    font-size:9px !important;
    line-height:1.2 !important;
  }

  .ach-coaches{
    padding-top:34px !important;
  }

  .ach-coaches__head{
    gap:16px !important;
    margin-bottom:20px !important;
  }

  .ach-coaches__text{
    padding:20px !important;
    border-radius:24px !important;
  }

  .ach-coaches__text p{
    font-size:14px !important;
    line-height:1.56 !important;
  }
}


/* =========================
   V59 — FULL WIDTH BRIDGE TEXT
   Текст акцентной полосы растянут по рабочей ширине страницы.
========================= */

.ach-material__bridge-inner{
  width:calc(100vw - (var(--ac-desktop-side-gap,5vw) * 2)) !important;
  max-width:none !important;
  margin:0 auto !important;
  text-wrap:balance !important;
}

.ach-material__bridge-inner::before{
  width:max-content !important;
  max-width:100% !important;
}

/* На широких экранах текст занимает всю рабочую ширину, но остается читаемым */
@media(min-width:1280px){
  .ach-material__bridge-inner{
    font-size:clamp(24px,2.35vw,42px) !important;
    line-height:1.14 !important;
  }
}

@media(max-width:1024px){
  .ach-material__bridge-inner{
    width:100% !important;
  }
}


/* =========================
   V60 — REMOVE BRIDGE / CLEAN TRANSITION TO COACHES
   Разделитель между материальной базой и тренерами убран.
   Его смысл встроен в первый абзац блока тренеров.
========================= */

/* Полностью скрываем разделитель, даже если старый HTML остался в кеше */
.ach-material__bridge{
  display:none !important;
}

/* Материальная база теперь заканчивается спокойно, без баннера-разделителя */
.ach-material{
  padding-bottom:52px !important;
}

/* Блок тренеров начинается ближе и логичнее */
.ach-coaches{
  padding-top:38px !important;
}

/* Правая карточка с текстом стала чуть просторнее под усиленный первый абзац */
.ach-coaches__text{
  padding:24px 26px !important;
}

.ach-coaches__text p{
  font-size:15px !important;
  line-height:1.6 !important;
}

/* На широких экранах сохраняем компактную связку блоков */
@media(min-width:1280px){
  .ach-material{
    padding-bottom:54px !important;
  }

  .ach-coaches{
    padding-top:40px !important;
  }
}

@media(max-width:1024px){
  .ach-material{
    padding-bottom:44px !important;
  }

  .ach-coaches{
    padding-top:34px !important;
  }
}

@media(max-width:720px){
  .ach-material{
    padding-bottom:38px !important;
  }

  .ach-coaches{
    padding-top:30px !important;
  }

  .ach-coaches__text{
    padding:20px !important;
  }
}


/* =========================
   V61 — HERO VIDEO POSTER FIX
   Запасная картинка под видео заменена на актуальное фото манежа.
========================= */

/* Картинка, которая видна до старта видео */
.ach-hero__media{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

/* Дублируем для надежности, если браузер берет фон у hero */
.ach-hero,
.ach-hero--clean{
  background:#060914 !important;
}


/* =========================
   V62 — HERO DARK PRELOAD BACKGROUND
   До загрузки видео показываем аккуратный темный фон без фотографии.
========================= */

/* Никакой фотографии-подложки под hero-видео */
.ach-hero__media{
  background:
    radial-gradient(circle at 20% 18%, rgba(45,127,255,.22), transparent 34%),
    radial-gradient(circle at 80% 72%, rgba(0,220,255,.14), transparent 30%),
    linear-gradient(135deg,#030817 0%,#07152c 46%,#02050d 100%) !important;
}

/* На сам герой тоже ставим темную подложку, чтобы не было белого/старого кадра */
.ach-hero,
.ach-hero--clean{
  background:
    radial-gradient(circle at 20% 18%, rgba(45,127,255,.22), transparent 34%),
    radial-gradient(circle at 80% 72%, rgba(0,220,255,.14), transparent 30%),
    linear-gradient(135deg,#030817 0%,#07152c 46%,#02050d 100%) !important;
}

/* Видео при загрузке плавно накрывает темную подложку */
.ach-hero__video{
  background:transparent !important;
}


/* =========================
   V63 — COACHES 4 COLUMNS
   Карточки тренеров на широком экране: 4 в одну линию.
========================= */

/* Широкий экран: 4 карточки в ряд */
.ach-coaches__grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}

/* Чтобы 4 карточки не выглядели слишком тяжелыми */
.ach-coach{
  border-radius:26px !important;
}

.ach-coach__photo{
  aspect-ratio:4 / 4.65 !important;
}

.ach-coach__body{
  padding:16px 16px 18px !important;
}

.ach-coach__name{
  font-size:17px !important;
  line-height:1.14 !important;
}

.ach-coach__role{
  font-size:12px !important;
  line-height:1.25 !important;
}

.ach-coach__desc{
  font-size:13px !important;
  line-height:1.38 !important;
}

/* Ноутбуки и узкие экраны: возвращаем 3 в ряд */
@media(max-width:1180px){
  .ach-coaches__grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

/* Планшет: 2 в ряд */
@media(max-width:860px){
  .ach-coaches__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* Мобильный: 1 в ряд */
@media(max-width:560px){
  .ach-coaches__grid{
    grid-template-columns:1fr !important;
  }

  .ach-coach__body{
    padding:18px 18px 20px !important;
  }

  .ach-coach__name{
    font-size:18px !important;
  }
}


/* =========================
   V64 — COACHES SHOW MORE
   На главной показываем 4 тренера. Остальные раскрываются по кнопке.
========================= */

/* По умолчанию показываем только первые 4 карточки тренеров */
.ach-coaches:not(.is-expanded) .ach-coaches__grid .ach-coach-card:nth-child(n+5){
  display:none !important;
}

/* При раскрытии сетка показывает всех */
.ach-coaches.is-expanded .ach-coaches__grid .ach-coach-card{
  display:block !important;
}

/* Кнопка раскрытия вместо перехода на отдельную страницу */
.ach-coaches__actions{
  margin-top:26px !important;
  display:flex !important;
  justify-content:center !important;
}

.ach-coaches__toggle{
  cursor:pointer !important;
  border:0 !important;
  font-family:inherit !important;
}

/* Мягкое появление дополнительных карточек */
.ach-coaches.is-expanded .ach-coach-card:nth-child(n+5){
  animation:achCoachReveal .34s ease both;
}

@keyframes achCoachReveal{
  from{
    opacity:0;
    transform:translateY(14px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* На мобильном кнопка на всю ширину выглядит удобнее */
@media(max-width:560px){
  .ach-coaches__actions{
    margin-top:22px !important;
  }

  .ach-coaches__toggle{
    width:100% !important;
    justify-content:center !important;
  }
}


/* =========================
   V65 — ATMOSPHERE BLOCK
   Новый блок после тренеров:
   «Атмосфера, которая помогает двигаться вперед».
   В текстах не используем сокращение «СК».
========================= */

.ach-atmosphere{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--ac-section-y,72px) var(--ac-desktop-side-gap,5vw);
  background:
    radial-gradient(circle at 12% 20%, rgba(45,127,255,.11), transparent 32%),
    radial-gradient(circle at 88% 78%, rgba(0,201,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(246,249,255,.86), rgba(255,255,255,.94));
}

.ach-atmosphere__bg{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.72;
  background-image:
    linear-gradient(rgba(30,58,85,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.055) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
}

.ach-atmosphere__inner{
  width:100%;
  max-width:none;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);
  gap:34px;
  align-items:center;
}

.ach-atmosphere__content{
  min-width:0;
}

.ach-atmosphere h2{
  margin:14px 0 0;
  max-width:860px;
  color:#071C3A;
  font-size:var(--ac-home-section-title-size,clamp(38px,4.7vw,78px));
  line-height:var(--ac-home-section-title-line,.94);
  letter-spacing:var(--ac-home-section-title-letter,-.065em);
  font-weight:700;
}

.ach-atmosphere__lead{
  margin:22px 0 0;
  max-width:790px;
  color:#64748b;
  font-size:18px;
  line-height:1.62;
  font-weight:400;
}

.ach-atmosphere__features{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.ach-atmosphere__feature{
  min-height:88px;
  border-radius:24px;
  padding:18px 18px 16px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
  background:#ffffff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 34px rgba(8,28,62,.065);
  position:relative;
  overflow:hidden;
}

.ach-atmosphere__feature::after{
  content:"";
  position:absolute;
  inset:auto -30px -44px auto;
  width:104px;
  height:104px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,255,.12), transparent 68%);
}

.ach-atmosphere__feature span{
  color:#2d7fff;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.08em;
}

.ach-atmosphere__feature strong{
  color:#10233f;
  font-size:16px;
  line-height:1.18;
  font-weight:800;
  letter-spacing:-.02em;
}

.ach-atmosphere__visual{
  min-height:560px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  grid-template-rows:1fr 1fr;
  gap:14px;
}

.ach-atmosphere__photo{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  margin:0;
  background:#dbe8f7;
  box-shadow:0 24px 60px rgba(8,28,62,.16);
  border:1px solid rgba(255,255,255,.72);
}

.ach-atmosphere__photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, transparent 42%, rgba(3,8,23,.20)),
    linear-gradient(90deg, rgba(45,127,255,.10), transparent 44%);
  pointer-events:none;
}

.ach-atmosphere__photo--large{
  grid-row:1 / span 2;
}

.ach-atmosphere__photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.012);
}

.ach-atmosphere__photo--large img{
  object-position:center center;
}

/* Темная тема */
html[data-theme="dark"] .ach-atmosphere{
  background:
    radial-gradient(circle at 12% 20%, rgba(45,127,255,.16), transparent 32%),
    radial-gradient(circle at 88% 78%, rgba(0,201,255,.12), transparent 34%),
    linear-gradient(180deg, #07101f, #050914);
}

html[data-theme="dark"] .ach-atmosphere h2,
html[data-theme="dark"] .ach-atmosphere__feature strong{
  color:#ffffff;
}

html[data-theme="dark"] .ach-atmosphere__lead{
  color:rgba(255,255,255,.72);
}

html[data-theme="dark"] .ach-atmosphere__feature{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.11);
  box-shadow:0 18px 48px rgba(0,0,0,.24);
}

/* Адаптив */
@media(max-width:1180px){
  .ach-atmosphere__inner{
    grid-template-columns:1fr;
    gap:28px;
  }

  .ach-atmosphere__lead{
    max-width:900px;
  }

  .ach-atmosphere__visual{
    min-height:480px;
  }
}

@media(max-width:720px){
  .ach-atmosphere{
    padding:56px 18px;
  }

  .ach-atmosphere__lead{
    margin-top:18px;
    font-size:15px;
    line-height:1.58;
  }

  .ach-atmosphere__features{
    grid-template-columns:1fr;
    gap:10px;
  }

  .ach-atmosphere__feature{
    min-height:76px;
    border-radius:22px;
    padding:16px;
  }

  .ach-atmosphere__visual{
    min-height:auto;
    grid-template-columns:1fr;
    grid-template-rows:none;
    gap:12px;
  }

  .ach-atmosphere__photo,
  .ach-atmosphere__photo--large{
    grid-row:auto;
    min-height:230px;
    border-radius:26px;
  }

  .ach-atmosphere__photo--large{
    min-height:320px;
  }
}


/* =========================
   V66 — MAIN DIRECTIONS BLOCK
========================= */
.ach-directions{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--ac-section-y,72px) var(--ac-desktop-side-gap,5vw);
  background:radial-gradient(circle at 18% 18%, rgba(45,127,255,.12), transparent 34%),radial-gradient(circle at 86% 76%, rgba(98,70,255,.10), transparent 34%),linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,248,255,.92));
}
.ach-directions__bg{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.78;
  background-image:linear-gradient(rgba(30,58,85,.052) 1px, transparent 1px),linear-gradient(90deg, rgba(30,58,85,.052) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}
.ach-directions__inner{width:100%;max-width:none;margin:0 auto;}
.ach-directions__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.58fr);
  gap:28px;
  align-items:end;
  margin-bottom:30px;
}
.ach-directions__head h2{
  margin:14px 0 0;
  color:#071C3A;
  font-size:var(--ac-home-section-title-size,clamp(38px,4.7vw,78px));
  line-height:var(--ac-home-section-title-line,.94);
  letter-spacing:var(--ac-home-section-title-letter,-.065em);
  font-weight:700;
}
.ach-directions__head p{margin:0;color:#64748b;font-size:17px;line-height:1.62;font-weight:400;}
.ach-directions__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.ach-direction-card{
  position:relative;
  overflow:hidden;
  min-height:520px;
  border-radius:34px;
  padding:26px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:28px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 20px 54px rgba(8,28,62,.085);
}
.ach-direction-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 20% 6%, rgba(255,255,255,.92), transparent 24%),linear-gradient(135deg, rgba(45,127,255,.08), transparent 42%);
}
.ach-direction-card::after{
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  right:-86px;
  top:-86px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,255,.18), transparent 68%);
  pointer-events:none;
}
.ach-direction-card--cyan::after{background:radial-gradient(circle, rgba(0,201,255,.18), transparent 68%);}
.ach-direction-card--navy::after{background:radial-gradient(circle, rgba(98,70,255,.18), transparent 68%);}
.ach-direction-card__top,.ach-direction-card__links{position:relative;z-index:1;}
.ach-direction-card__tag{
  width:max-content;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#2d7fff;
  background:rgba(45,127,255,.08);
  border:1px solid rgba(45,127,255,.14);
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ach-direction-card h3{
  margin:18px 0 0;
  color:#10233f;
  font-size:clamp(28px,2.2vw,40px);
  line-height:1;
  letter-spacing:-.055em;
  font-weight:800;
}
.ach-direction-card p{margin:16px 0 0;max-width:520px;color:#64748b;font-size:15px;line-height:1.55;}
.ach-direction-card__links{display:grid;gap:9px;}
.ach-direction-card__links a{
  min-height:45px;
  padding:0 14px 0 16px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:#10233f;
  background:rgba(246,249,255,.84);
  border:1px solid rgba(8,28,62,.075);
  text-decoration:none;
  font-size:14px;
  line-height:1.18;
  font-weight:750;
  transition:transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.ach-direction-card__links a::after{content:"→";flex:0 0 auto;color:#2d7fff;font-size:16px;line-height:1;transition:transform .22s ease;}
.ach-direction-card__links a:hover{transform:translateY(-2px);background:#fff;border-color:rgba(45,127,255,.20);box-shadow:0 12px 26px rgba(8,28,62,.07);}
.ach-direction-card__links a:hover::after{transform:translateX(3px);}
html[data-theme="dark"] .ach-directions{background:radial-gradient(circle at 18% 18%, rgba(45,127,255,.16), transparent 34%),radial-gradient(circle at 86% 76%, rgba(98,70,255,.12), transparent 34%),linear-gradient(180deg, #050914, #07101f);}
html[data-theme="dark"] .ach-directions__head h2,html[data-theme="dark"] .ach-direction-card h3,html[data-theme="dark"] .ach-direction-card__links a{color:#fff;}
html[data-theme="dark"] .ach-directions__head p,html[data-theme="dark"] .ach-direction-card p{color:rgba(255,255,255,.72);}
html[data-theme="dark"] .ach-direction-card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.11);box-shadow:0 20px 54px rgba(0,0,0,.25);}
html[data-theme="dark"] .ach-direction-card__links a{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.11);}
@media(max-width:1180px){
  .ach-directions__head{grid-template-columns:1fr;align-items:start;}
  .ach-directions__head p{max-width:900px;}
  .ach-directions__grid{grid-template-columns:1fr;}
  .ach-direction-card{min-height:auto;}
}
@media(min-width:860px) and (max-width:1180px){
  .ach-direction-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(340px,1fr);align-items:start;}
}
@media(max-width:720px){
  .ach-directions{padding:56px 18px;}
  .ach-directions__head{gap:18px;margin-bottom:22px;}
  .ach-directions__head p{font-size:15px;line-height:1.58;}
  .ach-direction-card{border-radius:28px;padding:22px;}
  .ach-direction-card h3{font-size:30px;}
  .ach-direction-card p{font-size:14px;}
  .ach-direction-card__links a{min-height:43px;border-radius:15px;font-size:13px;}
}



/* =========================
   V67 — INTENT-BASED DIRECTIONS
   Блок направлений стал коммуникабельным:
   «Чем хотите заняться?»
========================= */

.ach-directions--intent .ach-directions__head{
  align-items:center !important;
}

.ach-directions--intent .ach-directions__head h2{
  max-width:980px !important;
}

.ach-directions--intent .ach-directions__head p{
  max-width:620px !important;
  font-size:18px !important;
}

/* Карточки теперь не про разделы сайта, а про задачу посетителя */
.ach-directions__grid--intent{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ach-direction-card--intent{
  min-height:540px !important;
  padding:28px !important;
}

.ach-direction-card--intent h3{
  max-width:470px !important;
  font-size:clamp(30px,2.35vw,44px) !important;
  line-height:.98 !important;
  letter-spacing:-.06em !important;
}

.ach-direction-card--intent p{
  max-width:520px !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

/* Более разговорные метки */
.ach-direction-card--intent .ach-direction-card__tag{
  color:#ffffff !important;
  background:linear-gradient(135deg,#2d7fff,#00b7ff) !important;
  border-color:rgba(255,255,255,.28) !important;
  box-shadow:0 10px 24px rgba(45,127,255,.18) !important;
}

/* Первый пункт в каждой карточке — главный переход */
.ach-direction-card--intent .ach-direction-card__links a:first-child{
  min-height:50px !important;
  color:#ffffff !important;
  background:linear-gradient(135deg,#1f66f2,#00a8ff) !important;
  border-color:rgba(255,255,255,.24) !important;
  box-shadow:0 14px 30px rgba(45,127,255,.18) !important;
}

.ach-direction-card--intent .ach-direction-card__links a:first-child::after{
  color:#ffffff !important;
}

.ach-direction-card--intent .ach-direction-card__links a:first-child:hover{
  background:linear-gradient(135deg,#174fe0,#008fe8) !important;
}

/* На планшетах карточки остаются удобными */
@media(max-width:1180px){
  .ach-directions--intent .ach-directions__head p{
    max-width:920px !important;
  }

  .ach-directions__grid--intent{
    grid-template-columns:1fr !important;
  }

  .ach-direction-card--intent{
    min-height:auto !important;
  }
}

@media(min-width:860px) and (max-width:1180px){
  .ach-direction-card--intent{
    display:grid !important;
    grid-template-columns:minmax(0,.9fr) minmax(360px,1fr) !important;
    align-items:start !important;
  }
}

@media(max-width:720px){
  .ach-directions--intent .ach-directions__head p{
    font-size:15px !important;
  }

  .ach-direction-card--intent{
    padding:22px !important;
  }

  .ach-direction-card--intent h3{
    font-size:31px !important;
  }
}



/* =========================
   V68 — EVENTS BLOCK
   Новый блок после «Чем хотите заняться?»:
   «Соревнования и мероприятия».
========================= */

.ach-events{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--ac-section-y,72px) var(--ac-desktop-side-gap,5vw);
  background:
    radial-gradient(circle at 18% 18%, rgba(45,127,255,.13), transparent 34%),
    radial-gradient(circle at 88% 70%, rgba(0,201,255,.10), transparent 36%),
    linear-gradient(180deg, rgba(244,248,255,.94), rgba(255,255,255,.96));
}

.ach-events__bg{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.72;
  background-image:
    linear-gradient(rgba(30,58,85,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.052) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}

.ach-events__inner{
  width:100%;
  max-width:none;
  margin:0 auto;
}

.ach-events__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(390px,.62fr);
  gap:28px;
  align-items:end;
  margin-bottom:30px;
}

.ach-events__head h2{
  margin:14px 0 0;
  color:#071C3A;
  font-size:var(--ac-home-section-title-size,clamp(38px,4.7vw,78px));
  line-height:var(--ac-home-section-title-line,.94);
  letter-spacing:var(--ac-home-section-title-letter,-.065em);
  font-weight:700;
}

.ach-events__head p{
  margin:0;
  color:#64748b;
  font-size:17px;
  line-height:1.62;
  font-weight:400;
}

.ach-events__layout{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:22px;
  align-items:stretch;
}

.ach-events__visual{
  position:relative;
  min-height:610px;
  border-radius:38px;
  overflow:hidden;
  background:#dbe8f7;
  box-shadow:0 24px 64px rgba(8,28,62,.15);
}

.ach-events__photo{
  position:absolute;
  inset:0;
  margin:0;
}

.ach-events__photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.012);
}

.ach-events__photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(3,8,23,.44), transparent 56%),
    linear-gradient(180deg, transparent 46%, rgba(3,8,23,.52));
  pointer-events:none;
}

.ach-events__facts{
  position:absolute;
  left:22px;
  right:22px;
  bottom:22px;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.ach-events__facts div{
  min-height:104px;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 18px 40px rgba(0,0,0,.14);
  backdrop-filter:blur(14px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
}

.ach-events__facts strong{
  color:#071C3A;
  font-size:clamp(22px,2vw,34px);
  line-height:.95;
  letter-spacing:-.055em;
  font-weight:850;
}

.ach-events__facts span{
  color:#64748b;
  font-size:12px;
  line-height:1.22;
  font-weight:700;
  letter-spacing:.02em;
}

.ach-events__cards{
  display:grid;
  gap:14px;
}

.ach-event-card{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  padding:24px 24px 22px;
  background:#ffffff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.075);
}

.ach-event-card::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-72px;
  top:-72px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,255,.14), transparent 68%);
  pointer-events:none;
}

.ach-event-card span{
  width:36px;
  height:36px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  background:linear-gradient(135deg,#2d7fff,#00b7ff);
  box-shadow:0 10px 24px rgba(45,127,255,.18);
  font-size:12px;
  line-height:1;
  font-weight:850;
}

.ach-event-card h3{
  margin:18px 0 0;
  color:#10233f;
  font-size:clamp(24px,1.85vw,34px);
  line-height:1;
  letter-spacing:-.055em;
  font-weight:850;
}

.ach-event-card p{
  margin:12px 0 0;
  color:#64748b;
  font-size:15px;
  line-height:1.55;
}

.ach-events__cta{
  border-radius:30px;
  padding:24px;
  background:linear-gradient(135deg,#071C3A,#123a72);
  color:#ffffff;
  box-shadow:0 20px 54px rgba(8,28,62,.16);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.ach-events__cta .ach-btn{
  flex:0 0 auto;
}

.ach-events__cta span{
  color:rgba(255,255,255,.76);
  font-size:14px;
  line-height:1.42;
  font-weight:500;
}

/* Темная тема */
html[data-theme="dark"] .ach-events{
  background:
    radial-gradient(circle at 18% 18%, rgba(45,127,255,.16), transparent 34%),
    radial-gradient(circle at 88% 70%, rgba(0,201,255,.12), transparent 36%),
    linear-gradient(180deg, #07101f, #050914);
}

html[data-theme="dark"] .ach-events__head h2,
html[data-theme="dark"] .ach-event-card h3{
  color:#ffffff;
}

html[data-theme="dark"] .ach-events__head p,
html[data-theme="dark"] .ach-event-card p{
  color:rgba(255,255,255,.72);
}

html[data-theme="dark"] .ach-event-card{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.11);
  box-shadow:0 18px 48px rgba(0,0,0,.25);
}

/* Адаптив */
@media(max-width:1180px){
  .ach-events__head{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ach-events__head p{
    max-width:900px;
  }

  .ach-events__layout{
    grid-template-columns:1fr;
  }

  .ach-events__visual{
    min-height:520px;
  }
}

@media(max-width:760px){
  .ach-events{
    padding:56px 18px;
  }

  .ach-events__head{
    gap:18px;
    margin-bottom:22px;
  }

  .ach-events__head p{
    font-size:15px;
    line-height:1.58;
  }

  .ach-events__visual{
    min-height:520px;
    border-radius:30px;
  }

  .ach-events__facts{
    left:14px;
    right:14px;
    bottom:14px;
    grid-template-columns:1fr;
  }

  .ach-events__facts div{
    min-height:78px;
  }

  .ach-event-card,
  .ach-events__cta{
    border-radius:26px;
    padding:22px;
  }

  .ach-events__cta{
    align-items:flex-start;
    flex-direction:column;
  }

  .ach-events__cta .ach-btn{
    width:100%;
    justify-content:center;
  }
}



/* =========================
   V69 — PARTNERS / PARTICIPANTS BLOCK
   Новый блок после соревнований:
   «Партнеры и участники».
========================= */

.ach-partners{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--ac-section-y,72px) var(--ac-desktop-side-gap,5vw);
  background:
    radial-gradient(circle at 16% 20%, rgba(45,127,255,.12), transparent 34%),
    radial-gradient(circle at 88% 80%, rgba(0,201,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,248,255,.94));
}

.ach-partners__bg{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.7;
  background-image:
    linear-gradient(rgba(30,58,85,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.052) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}

.ach-partners__inner{
  width:100%;
  max-width:none;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(560px,1.08fr);
  gap:34px;
  align-items:start;
}

.ach-partners__intro{
  position:sticky;
  top:104px;
  min-width:0;
}

.ach-partners__intro h2{
  margin:14px 0 0;
  max-width:920px;
  color:#071C3A;
  font-size:var(--ac-home-section-title-size,clamp(38px,4.7vw,78px));
  line-height:var(--ac-home-section-title-line,.94);
  letter-spacing:var(--ac-home-section-title-letter,-.065em);
  font-weight:700;
}

.ach-partners__intro p{
  margin:22px 0 0;
  max-width:760px;
  color:#64748b;
  font-size:18px;
  line-height:1.62;
  font-weight:400;
}

.ach-partners__intro .ach-btn{
  margin-top:26px;
}

.ach-partners__content{
  display:grid;
  gap:16px;
}

.ach-partners__cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.ach-partner-card{
  position:relative;
  overflow:hidden;
  min-height:250px;
  border-radius:30px;
  padding:24px;
  background:#ffffff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.075);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
}

.ach-partner-card::after{
  content:"";
  position:absolute;
  width:154px;
  height:154px;
  right:-76px;
  top:-76px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,255,.15), transparent 68%);
  pointer-events:none;
}

.ach-partner-card span{
  width:38px;
  height:38px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  background:linear-gradient(135deg,#2d7fff,#00b7ff);
  box-shadow:0 10px 24px rgba(45,127,255,.18);
  font-size:12px;
  line-height:1;
  font-weight:850;
}

.ach-partner-card h3{
  margin:auto 0 0;
  color:#10233f;
  font-size:clamp(23px,1.7vw,32px);
  line-height:1;
  letter-spacing:-.052em;
  font-weight:850;
}

.ach-partner-card p{
  margin:0;
  color:#64748b;
  font-size:14px;
  line-height:1.52;
  font-weight:400;
}

.ach-partners__note{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  padding:26px;
  background:linear-gradient(135deg,#071C3A,#123a72);
  color:#ffffff;
  box-shadow:0 20px 54px rgba(8,28,62,.16);
}

.ach-partners__note::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-90px;
  bottom:-110px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(0,201,255,.22), transparent 68%);
  pointer-events:none;
}

.ach-partners__note strong,
.ach-partners__note p{
  position:relative;
  z-index:1;
}

.ach-partners__note strong{
  display:block;
  max-width:780px;
  font-size:clamp(24px,2vw,36px);
  line-height:1;
  letter-spacing:-.055em;
  font-weight:850;
}

.ach-partners__note p{
  margin:14px 0 0;
  max-width:880px;
  color:rgba(255,255,255,.76);
  font-size:15px;
  line-height:1.55;
}

/* Темная тема */
html[data-theme="dark"] .ach-partners{
  background:
    radial-gradient(circle at 16% 20%, rgba(45,127,255,.16), transparent 34%),
    radial-gradient(circle at 88% 80%, rgba(0,201,255,.12), transparent 34%),
    linear-gradient(180deg, #050914, #07101f);
}

html[data-theme="dark"] .ach-partners__intro h2,
html[data-theme="dark"] .ach-partner-card h3{
  color:#ffffff;
}

html[data-theme="dark"] .ach-partners__intro p,
html[data-theme="dark"] .ach-partner-card p{
  color:rgba(255,255,255,.72);
}

html[data-theme="dark"] .ach-partner-card{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.11);
  box-shadow:0 18px 48px rgba(0,0,0,.25);
}

/* Адаптив */
@media(max-width:1180px){
  .ach-partners__inner{
    grid-template-columns:1fr;
  }

  .ach-partners__intro{
    position:relative;
    top:auto;
  }

  .ach-partners__intro p{
    max-width:900px;
  }
}

@media(max-width:760px){
  .ach-partners{
    padding:56px 18px;
  }

  .ach-partners__inner{
    gap:24px;
  }

  .ach-partners__intro p{
    margin-top:18px;
    font-size:15px;
    line-height:1.58;
  }

  .ach-partners__cards{
    grid-template-columns:1fr;
  }

  .ach-partner-card{
    min-height:210px;
    border-radius:26px;
    padding:22px;
  }

  .ach-partners__note{
    border-radius:26px;
    padding:22px;
  }

  .ach-partners__note p{
    font-size:14px;
  }
}



/* =========================
   V70 — PARTNERS LOGOS
   В блок партнеров добавлены логотипы:
   «У нас тренируются» и «Наши партнеры».
========================= */

.ach-logo-groups{
  display:grid;
  gap:16px;
}

.ach-logo-group{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  padding:24px;
  background:#ffffff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.075);
}

.ach-logo-group::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-84px;
  top:-84px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,255,.12), transparent 68%);
  pointer-events:none;
}

.ach-logo-group__head{
  position:relative;
  z-index:1;
  margin-bottom:18px;
}

.ach-logo-group__kicker{
  width:max-content;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#2d7fff;
  background:rgba(45,127,255,.08);
  border:1px solid rgba(45,127,255,.14);
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ach-logo-group h3{
  margin:16px 0 0;
  color:#10233f;
  font-size:clamp(24px,1.8vw,34px);
  line-height:1.02;
  letter-spacing:-.055em;
  font-weight:850;
}

.ach-logo-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.ach-logo-tile{
  min-height:164px;
  padding:18px 16px 14px;
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  text-decoration:none;
  background:rgba(246,249,255,.86);
  border:1px solid rgba(8,28,62,.075);
  transition:transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.ach-logo-tile:hover{
  transform:translateY(-3px);
  background:#ffffff;
  border-color:rgba(45,127,255,.18);
  box-shadow:0 14px 30px rgba(8,28,62,.07);
}

.ach-logo-tile img{
  width:100%;
  max-width:126px;
  height:74px;
  display:block;
  object-fit:contain;
  filter:grayscale(0%);
}

.ach-logo-tile span{
  color:#4b5d76;
  font-size:12px;
  line-height:1.3;
  font-weight:700;
  text-align:center;
}

/* Темная тема */
html[data-theme="dark"] .ach-logo-group{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.11);
  box-shadow:0 18px 48px rgba(0,0,0,.25);
}

html[data-theme="dark"] .ach-logo-group h3{
  color:#ffffff;
}

html[data-theme="dark"] .ach-logo-tile{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.10);
}

html[data-theme="dark"] .ach-logo-tile:hover{
  background:rgba(255,255,255,.09);
}

html[data-theme="dark"] .ach-logo-tile span{
  color:rgba(255,255,255,.76);
}

/* Адаптив */
@media(max-width:1040px){
  .ach-logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .ach-logo-group{
    border-radius:26px;
    padding:22px;
  }

  .ach-logo-group h3{
    font-size:28px;
  }

  .ach-logo-grid{
    grid-template-columns:1fr;
  }

  .ach-logo-tile{
    min-height:138px;
    padding:16px 14px 14px;
    border-radius:20px;
  }

  .ach-logo-tile img{
    max-width:118px;
    height:64px;
  }
}



/* =========================
   V71 — PARTNERS PREMIUM CAROUSEL
   Усиленный блок партнеров + карусели логотипов.
========================= */

.ach-partners--carousel{
  color:#ffffff !important;
  background:
    radial-gradient(circle at 12% 14%, rgba(45,127,255,.34), transparent 34%),
    radial-gradient(circle at 86% 18%, rgba(0,201,255,.18), transparent 30%),
    radial-gradient(circle at 72% 86%, rgba(98,70,255,.20), transparent 34%),
    linear-gradient(135deg,#031023 0%,#071b3a 48%,#040814 100%) !important;
  padding-bottom:0 !important;
}

.ach-partners--carousel .ach-partners__bg{
  opacity:.42 !important;
  background-image:
    linear-gradient(rgba(255,255,255,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.075) 1px, transparent 1px) !important;
  background-size:46px 46px !important;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%) !important;
}

.ach-partners--carousel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255,255,255,.055) 38%, transparent 58%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 18px);
  opacity:.48;
}

.ach-partners--carousel .ach-partners__inner{
  position:relative;
  z-index:2;
  align-items:stretch !important;
}

.ach-partners--carousel .ach-partners__intro{
  position:relative !important;
  top:auto !important;
  min-height:100%;
  border-radius:38px;
  padding:34px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  overflow:hidden;
}

.ach-partners--carousel .ach-partners__intro::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-120px;
  bottom:-130px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(0,201,255,.22), transparent 68%);
  pointer-events:none;
}

.ach-partners--carousel .ach-partners__intro h2{
  color:#ffffff !important;
}

.ach-partners--carousel .ach-partners__intro p{
  color:rgba(255,255,255,.76) !important;
}

.ach-partners__markers{
  position:relative;
  z-index:1;
  margin-top:24px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ach-partners__markers span{
  min-height:38px;
  padding:0 13px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#ffffff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.ach-partners--carousel .ach-partners__intro .ach-btn{
  position:relative;
  z-index:1;
}

.ach-partners--carousel .ach-partner-card{
  background:rgba(255,255,255,.09) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:0 18px 52px rgba(0,0,0,.20) !important;
  backdrop-filter:blur(14px);
}

.ach-partners--carousel .ach-partner-card h3{
  color:#ffffff !important;
}

.ach-partners--carousel .ach-partner-card p{
  color:rgba(255,255,255,.72) !important;
}

.ach-partners--carousel .ach-partners__note{
  background:linear-gradient(135deg,rgba(45,127,255,.96),rgba(0,172,255,.82)) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.22) !important;
}

/* Логотипы — премиальная широкая сцена */
.ach-logo-stage{
  position:relative;
  z-index:2;
  margin-top:44px;
  padding:30px 0 42px;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.11);
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
}

.ach-logo-stage::before,
.ach-logo-stage::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  z-index:3;
  width:min(170px,13vw);
  pointer-events:none;
}

.ach-logo-stage::before{
  left:0;
  background:linear-gradient(90deg,#031023,transparent);
}

.ach-logo-stage::after{
  right:0;
  background:linear-gradient(270deg,#040814,transparent);
}

.ach-logo-stage__head{
  width:calc(100% - (var(--ac-desktop-side-gap,5vw) * 2));
  margin:0 auto 16px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
}

.ach-logo-stage__head--second{
  margin-top:28px;
}

.ach-logo-stage__head span{
  flex:0 0 auto;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#ffffff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  font-size:11px;
  line-height:1;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.ach-logo-stage__head strong{
  max-width:760px;
  color:rgba(255,255,255,.78);
  font-size:15px;
  line-height:1.35;
  font-weight:650;
  text-align:right;
}

.ach-logo-marquee{
  width:100%;
  overflow:hidden;
  padding:4px 0;
}

.ach-logo-track{
  width:max-content;
  display:flex;
  align-items:stretch;
  gap:14px;
  padding-left:var(--ac-desktop-side-gap,5vw);
  animation:achLogoMarquee 38s linear infinite;
  will-change:transform;
}

.ach-logo-marquee--reverse .ach-logo-track{
  animation-name:achLogoMarqueeReverse;
  animation-duration:44s;
}

.ach-logo-marquee:hover .ach-logo-track{
  animation-play-state:paused;
}

.ach-logo-pill{
  flex:0 0 auto;
  width:220px;
  min-height:142px;
  padding:18px 18px 14px;
  border-radius:26px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 18px 46px rgba(0,0,0,.18);
  backdrop-filter:blur(12px);
}

.ach-logo-pill img{
  width:100%;
  max-width:132px;
  height:76px;
  display:block;
  object-fit:contain;
}

.ach-logo-pill span{
  color:#263a55;
  font-size:12px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

@keyframes achLogoMarquee{
  from{ transform:translate3d(0,0,0); }
  to{ transform:translate3d(calc(-50% - 7px),0,0); }
}

@keyframes achLogoMarqueeReverse{
  from{ transform:translate3d(calc(-50% - 7px),0,0); }
  to{ transform:translate3d(0,0,0); }
}

/* Темная тема — блок и так темный, но сохраняем читаемость */
html[data-theme="dark"] .ach-partners--carousel{
  background:
    radial-gradient(circle at 12% 14%, rgba(45,127,255,.34), transparent 34%),
    radial-gradient(circle at 86% 18%, rgba(0,201,255,.18), transparent 30%),
    radial-gradient(circle at 72% 86%, rgba(98,70,255,.20), transparent 34%),
    linear-gradient(135deg,#031023 0%,#071b3a 48%,#040814 100%) !important;
}

/* Адаптив */
@media(max-width:1180px){
  .ach-partners--carousel .ach-partners__intro{
    padding:30px;
  }

  .ach-logo-stage{
    margin-top:34px;
  }
}

@media(max-width:760px){
  .ach-partners--carousel .ach-partners__intro{
    border-radius:28px;
    padding:24px;
  }

  .ach-partners__markers{
    margin-top:20px;
  }

  .ach-partners__markers span{
    min-height:34px;
    font-size:10px;
  }

  .ach-logo-stage{
    margin-top:28px;
    padding:24px 0 34px;
  }

  .ach-logo-stage__head{
    width:calc(100% - 36px);
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }

  .ach-logo-stage__head strong{
    text-align:left;
    font-size:13px;
  }

  .ach-logo-track{
    gap:10px;
    padding-left:18px;
    animation-duration:34s;
  }

  .ach-logo-marquee--reverse .ach-logo-track{
    animation-duration:39s;
  }

  .ach-logo-pill{
    width:178px;
    min-height:126px;
    border-radius:22px;
    padding:15px 14px 12px;
  }

  .ach-logo-pill img{
    max-width:108px;
    height:62px;
  }

  .ach-logo-pill span{
    font-size:11px;
  }
}

@media(prefers-reduced-motion:reduce){
  .ach-logo-track{
    animation:none !important;
  }

  .ach-logo-marquee{
    overflow-x:auto;
  }
}



/* =========================
   V72 — PARTNERS LIGHT PREMIUM CAROUSEL
   Возвращаем блок партнеров в светлую систему сайта.
   Карусели логотипов остаются.
========================= */

.ach-partners--carousel{
  color:#071C3A !important;
  background:
    radial-gradient(circle at 14% 16%, rgba(45,127,255,.13), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(0,201,255,.11), transparent 31%),
    radial-gradient(circle at 74% 86%, rgba(98,70,255,.08), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.94)) !important;
  padding-bottom:0 !important;
}

.ach-partners--carousel .ach-partners__bg{
  opacity:.72 !important;
  background-image:
    linear-gradient(rgba(30,58,85,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.052) 1px, transparent 1px) !important;
  background-size:44px 44px !important;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%) !important;
}

.ach-partners--carousel::before{
  background:
    linear-gradient(115deg, transparent 0%, rgba(45,127,255,.06) 38%, transparent 58%),
    repeating-linear-gradient(135deg, rgba(30,58,85,.035) 0 1px, transparent 1px 18px) !important;
  opacity:.42 !important;
}

/* Левая карточка: светлая, но с премиальным стеклом */
.ach-partners--carousel .ach-partners__intro{
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 22px 62px rgba(8,28,62,.10) !important;
  backdrop-filter:blur(16px);
}

.ach-partners--carousel .ach-partners__intro::after{
  background:radial-gradient(circle, rgba(45,127,255,.16), transparent 68%) !important;
}

.ach-partners--carousel .ach-partners__intro h2{
  color:#071C3A !important;
}

.ach-partners--carousel .ach-partners__intro p{
  color:#64748b !important;
}

/* Маркеры светлые, не темные */
.ach-partners__markers span{
  color:#1E3A55 !important;
  background:rgba(45,127,255,.075) !important;
  border:1px solid rgba(45,127,255,.13) !important;
}

/* Карточки форматов — светлые */
.ach-partners--carousel .ach-partner-card{
  background:#ffffff !important;
  border-color:rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.075) !important;
  backdrop-filter:none !important;
}

.ach-partners--carousel .ach-partner-card h3{
  color:#10233f !important;
}

.ach-partners--carousel .ach-partner-card p{
  color:#64748b !important;
}

/* CTA-зона: синяя, но не тяжелая */
.ach-partners--carousel .ach-partners__note{
  background:
    radial-gradient(circle at 88% 24%, rgba(0,201,255,.20), transparent 32%),
    linear-gradient(135deg,#0b2f6b,#1e6bdb) !important;
  box-shadow:0 20px 54px rgba(8,28,62,.15) !important;
}

/* Сцена логотипов теперь светлая */
.ach-logo-stage{
  border-top:1px solid rgba(8,28,62,.08) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(244,248,255,.88)) !important;
}

.ach-logo-stage::before{
  background:linear-gradient(90deg, rgba(255,255,255,.98), transparent) !important;
}

.ach-logo-stage::after{
  background:linear-gradient(270deg, rgba(244,248,255,.98), transparent) !important;
}

.ach-logo-stage__head span{
  color:#2d7fff !important;
  background:rgba(45,127,255,.075) !important;
  border:1px solid rgba(45,127,255,.14) !important;
}

.ach-logo-stage__head strong{
  color:#64748b !important;
}

/* Логотипы — более воздушные и чистые */
.ach-logo-pill{
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 38px rgba(8,28,62,.075) !important;
}

.ach-logo-pill span{
  color:#334a66 !important;
}

/* Немного усиливаем hover, чтобы карусель была живой на светлом фоне */
.ach-logo-pill:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 44px rgba(8,28,62,.11) !important;
}

/* На темной теме можно оставить светлый блок, чтобы главная была последовательной */
html[data-theme="dark"] .ach-partners--carousel{
  color:#071C3A !important;
  background:
    radial-gradient(circle at 14% 16%, rgba(45,127,255,.13), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(0,201,255,.11), transparent 31%),
    radial-gradient(circle at 74% 86%, rgba(98,70,255,.08), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.94)) !important;
}

html[data-theme="dark"] .ach-partners--carousel .ach-partners__intro h2,
html[data-theme="dark"] .ach-partners--carousel .ach-partner-card h3{
  color:#071C3A !important;
}

html[data-theme="dark"] .ach-partners--carousel .ach-partners__intro p,
html[data-theme="dark"] .ach-partners--carousel .ach-partner-card p{
  color:#64748b !important;
}

html[data-theme="dark"] .ach-logo-stage__head strong{
  color:#64748b !important;
}



/* =========================
   V73 — USER UPDATED COPY SYNC
   Синхронизация HTML с обновленным текстом пользователя.
========================= */

/* В обновленном блоке атмосферы появились дополнительные абзацы */
.ach-atmosphere__content > p:not(.ach-atmosphere__lead){
  margin:12px 0 0;
  max-width:790px;
  color:#64748b;
  font-size:17px;
  line-height:1.62;
  font-weight:400;
}

/* Длинные формулировки в плашках атмосферы должны выглядеть аккуратно */
.ach-atmosphere__feature strong{
  max-width:100%;
}

/* Обновленный текст в карточках материальной базы немного длиннее — усиливаем читаемость */
.ach-material-feature__body p,
.ach-material-sport-card__body p{
  text-wrap:pretty;
}

/* Темная тема для новых абзацев атмосферы */
html[data-theme="dark"] .ach-atmosphere__content > p:not(.ach-atmosphere__lead){
  color:rgba(255,255,255,.72);
}

@media(max-width:720px){
  .ach-atmosphere__content > p:not(.ach-atmosphere__lead){
    font-size:15px;
    line-height:1.58;
  }
}


/* =========================
   V74 — COMFORT BLOCK
========================= */
.ach-comfort{position:relative;isolation:isolate;overflow:hidden;padding:var(--ac-section-y,72px) var(--ac-desktop-side-gap,5vw);background:radial-gradient(circle at 16% 18%,rgba(45,127,255,.12),transparent 34%),radial-gradient(circle at 84% 76%,rgba(0,201,255,.10),transparent 34%),linear-gradient(180deg,rgba(244,248,255,.94),rgba(255,255,255,.98));}
.ach-comfort__bg{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.72;background-image:linear-gradient(rgba(30,58,85,.052) 1px,transparent 1px),linear-gradient(90deg,rgba(30,58,85,.052) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);}
.ach-comfort__inner{width:100%;max-width:none;margin:0 auto;}
.ach-comfort__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.62fr);gap:28px;align-items:end;margin-bottom:30px;}
.ach-comfort__head h2{margin:14px 0 0;color:#071C3A;font-size:var(--ac-home-section-title-size,clamp(38px,4.7vw,78px));line-height:var(--ac-home-section-title-line,.94);letter-spacing:var(--ac-home-section-title-letter,-.065em);font-weight:700;}
.ach-comfort__head p{margin:0;color:#64748b;font-size:17px;line-height:1.62;font-weight:400;}
.ach-comfort__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.ach-comfort-card{position:relative;overflow:hidden;min-height:330px;border-radius:32px;padding:24px;background:#fff;border:1px solid rgba(8,28,62,.08);box-shadow:0 18px 48px rgba(8,28,62,.075);display:flex;flex-direction:column;justify-content:space-between;gap:22px;}
.ach-comfort-card::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 8%,rgba(255,255,255,.94),transparent 25%),linear-gradient(135deg,rgba(45,127,255,.075),transparent 46%);}
.ach-comfort-card::after{content:"";position:absolute;width:170px;height:170px;right:-82px;top:-82px;border-radius:999px;background:radial-gradient(circle,rgba(45,127,255,.15),transparent 68%);pointer-events:none;}
.ach-comfort-card__icon,.ach-comfort-card>div:not(.ach-comfort-card__icon){position:relative;z-index:1;}
.ach-comfort-card__icon{width:52px;height:52px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#2d7fff,#00b7ff);box-shadow:0 12px 28px rgba(45,127,255,.18);font-size:22px;line-height:1;font-weight:850;}
.ach-comfort-card span{display:block;color:#2d7fff;font-size:11px;line-height:1;font-weight:850;letter-spacing:.12em;text-transform:uppercase;}
.ach-comfort-card h3{margin:16px 0 0;color:#10233f;font-size:clamp(24px,1.75vw,34px);line-height:1;letter-spacing:-.055em;font-weight:850;}
.ach-comfort-card p{margin:14px 0 0;color:#64748b;font-size:14px;line-height:1.55;}
.ach-comfort__links{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px;}
.ach-comfort__links a{min-height:44px;padding:0 15px;border-radius:999px;display:inline-flex;align-items:center;color:#1E3A55;background:#fff;border:1px solid rgba(8,28,62,.08);box-shadow:0 12px 26px rgba(8,28,62,.055);text-decoration:none;font-size:13px;line-height:1;font-weight:800;letter-spacing:.04em;text-transform:uppercase;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;}
.ach-comfort__links a:hover{transform:translateY(-2px);border-color:rgba(45,127,255,.20);box-shadow:0 14px 30px rgba(8,28,62,.08);}
.ach-comfort__cta{margin-top:20px;border-radius:34px;padding:28px;background:radial-gradient(circle at 88% 24%,rgba(0,201,255,.22),transparent 32%),linear-gradient(135deg,#071C3A,#1e6bdb);color:#fff;box-shadow:0 22px 58px rgba(8,28,62,.16);display:flex;align-items:center;justify-content:space-between;gap:24px;}
.ach-comfort__cta strong{display:block;color:#fff;font-size:clamp(26px,2.4vw,44px);line-height:1;letter-spacing:-.06em;font-weight:850;}
.ach-comfort__cta p{margin:12px 0 0;max-width:760px;color:rgba(255,255,255,.76);font-size:15px;line-height:1.55;}
.ach-comfort__cta .ach-btn{flex:0 0 auto;}
html[data-theme="dark"] .ach-comfort{background:radial-gradient(circle at 16% 18%,rgba(45,127,255,.16),transparent 34%),radial-gradient(circle at 84% 76%,rgba(0,201,255,.12),transparent 34%),linear-gradient(180deg,#07101f,#050914);}
html[data-theme="dark"] .ach-comfort__head h2,html[data-theme="dark"] .ach-comfort-card h3{color:#fff;}
html[data-theme="dark"] .ach-comfort__head p,html[data-theme="dark"] .ach-comfort-card p{color:rgba(255,255,255,.72);}
html[data-theme="dark"] .ach-comfort-card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.11);box-shadow:0 18px 48px rgba(0,0,0,.25);}
html[data-theme="dark"] .ach-comfort__links a{color:#fff;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.11);}
@media(max-width:1240px){.ach-comfort__grid{grid-template-columns:repeat(2,minmax(0,1fr));}.ach-comfort-card{min-height:280px;}}
@media(max-width:900px){.ach-comfort__head{grid-template-columns:1fr;align-items:start;}.ach-comfort__head p{max-width:900px;}.ach-comfort__cta{align-items:flex-start;flex-direction:column;}}
@media(max-width:720px){.ach-comfort{padding:56px 18px;}.ach-comfort__head{gap:18px;margin-bottom:22px;}.ach-comfort__head p{font-size:15px;line-height:1.58;}.ach-comfort__grid{grid-template-columns:1fr;}.ach-comfort-card{min-height:245px;border-radius:26px;padding:22px;}.ach-comfort-card h3{font-size:28px;}.ach-comfort__links a{width:100%;justify-content:center;}.ach-comfort__cta{border-radius:28px;padding:24px;}.ach-comfort__cta .ach-btn{width:100%;justify-content:center;}}


/* =========================
   V75 — FINAL CTA / CONTACTS BLOCK
   Финальный блок главной: выбрать направление, связаться, как добраться.
========================= */

.ach-final{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:calc(var(--ac-section-y,72px) + 10px) var(--ac-desktop-side-gap,5vw);
  color:#ffffff;
  background:
    radial-gradient(circle at 14% 18%, rgba(45,127,255,.34), transparent 34%),
    radial-gradient(circle at 84% 22%, rgba(0,201,255,.18), transparent 32%),
    radial-gradient(circle at 72% 88%, rgba(98,70,255,.20), transparent 36%),
    linear-gradient(135deg,#031023 0%,#071b3a 48%,#040814 100%);
}

.ach-final__bg{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.5;
  background-image:
    linear-gradient(rgba(255,255,255,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.075) 1px, transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}

.ach-final::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255,255,255,.055) 38%, transparent 58%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 18px);
  opacity:.5;
}

.ach-final__inner{
  width:100%;
  max-width:none;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(460px,.95fr);
  gap:28px;
  align-items:stretch;
}

.ach-final__main{
  min-height:560px;
  border-radius:42px;
  padding:42px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(3,8,23,.52), rgba(3,8,23,.10)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-sportivnyy-kompleks-sverhu.webp") center center / cover no-repeat;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 26px 76px rgba(0,0,0,.28);
}

.ach-final__main::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, transparent 34%, rgba(3,8,23,.68)),
    radial-gradient(circle at 20% 20%, rgba(45,127,255,.24), transparent 32%);
}

.ach-final__main > *{
  position:relative;
  z-index:1;
}

.ach-final__main h2{
  margin:16px 0 0;
  max-width:980px;
  color:#ffffff;
  font-size:clamp(44px,6vw,104px);
  line-height:.9;
  letter-spacing:-.075em;
  font-weight:760;
}

.ach-final__main p{
  margin:22px 0 0;
  max-width:820px;
  color:rgba(255,255,255,.78);
  font-size:18px;
  line-height:1.58;
  font-weight:400;
}

.ach-final__actions{
  margin-top:28px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.ach-final .ach-btn--ghost{
  color:#ffffff !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:none !important;
  backdrop-filter:blur(12px);
}

.ach-final .ach-btn--ghost:hover{
  background:rgba(255,255,255,.16) !important;
}

.ach-final__side{
  display:grid;
  gap:16px;
}

.ach-final-card{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  padding:30px;
  min-height:270px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:22px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 56px rgba(0,0,0,.20);
  backdrop-filter:blur(16px);
}

.ach-final-card::after{
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  right:-90px;
  top:-90px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(0,201,255,.22), transparent 68%);
  pointer-events:none;
}

.ach-final-card--accent{
  background:
    radial-gradient(circle at 90% 20%, rgba(0,201,255,.20), transparent 32%),
    linear-gradient(135deg,rgba(45,127,255,.92),rgba(0,140,255,.70));
}

.ach-final-card span,
.ach-final-card h3,
.ach-final-card p,
.ach-final-card__actions{
  position:relative;
  z-index:1;
}

.ach-final-card > span{
  width:max-content;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#ffffff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  font-size:11px;
  line-height:1;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.ach-final-card h3{
  margin:auto 0 0;
  color:#ffffff;
  font-size:clamp(28px,2.35vw,44px);
  line-height:1;
  letter-spacing:-.06em;
  font-weight:850;
}

.ach-final-card p{
  margin:0;
  color:rgba(255,255,255,.75);
  font-size:15px;
  line-height:1.55;
}

.ach-final-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ach-final-card__actions a{
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#ffffff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  text-decoration:none;
  font-size:12px;
  line-height:1;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
  transition:transform .22s ease, background .22s ease;
}

.ach-final-card__actions a:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.18);
}

/* Адаптив */
@media(max-width:1180px){
  .ach-final__inner{
    grid-template-columns:1fr;
  }

  .ach-final__main{
    min-height:520px;
  }
}

@media(max-width:720px){
  .ach-final{
    padding:56px 18px;
  }

  .ach-final__main{
    min-height:540px;
    border-radius:30px;
    padding:26px;
  }

  .ach-final__main h2{
    font-size:clamp(42px,13vw,70px);
  }

  .ach-final__main p{
    font-size:15px;
    line-height:1.58;
  }

  .ach-final__actions{
    flex-direction:column;
  }

  .ach-final__actions .ach-btn{
    width:100%;
    justify-content:center;
  }

  .ach-final-card{
    min-height:245px;
    border-radius:28px;
    padding:24px;
  }

  .ach-final-card__actions a{
    width:100%;
    justify-content:center;
  }
}


/* =========================
   V76 — FINAL CONTACTS / DIRECTIONS
   Финальный блок обновлен по странице volleyball-arenda:
   как добраться + контакты.
========================= */

.ach-final--contacts{
  background:
    radial-gradient(circle at 14% 16%, rgba(45,127,255,.13), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(0,201,255,.11), transparent 31%),
    radial-gradient(circle at 74% 86%, rgba(98,70,255,.08), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.94)) !important;
  color:#071C3A !important;
}

.ach-final--contacts::before{
  background:
    linear-gradient(115deg, transparent 0%, rgba(45,127,255,.06) 38%, transparent 58%),
    repeating-linear-gradient(135deg, rgba(30,58,85,.035) 0 1px, transparent 1px 18px) !important;
  opacity:.42 !important;
}

.ach-final--contacts .ach-final__bg{
  opacity:.72 !important;
  background-image:
    linear-gradient(rgba(30,58,85,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.052) 1px, transparent 1px) !important;
  background-size:44px 44px !important;
}

.ach-final__inner--contacts{
  grid-template-columns:minmax(0,.98fr) minmax(520px,1.02fr) !important;
}

.ach-final__main--contacts{
  min-height:620px;
  background:
    linear-gradient(180deg, rgba(3,8,23,.12), rgba(3,8,23,.64)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-sportivnyy-kompleks-sverhu.webp") center center / cover no-repeat !important;
}

.ach-final__main--contacts h2{
  max-width:900px;
  color:#ffffff;
}

.ach-final__main--contacts p{
  color:rgba(255,255,255,.82);
}

.ach-final__route{
  position:relative;
  z-index:1;
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.ach-final__route div{
  min-height:100px;
  border-radius:22px;
  padding:16px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 18px 40px rgba(0,0,0,.14);
  backdrop-filter:blur(14px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
}

.ach-final__route span{
  color:#2d7fff;
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.ach-final__route strong{
  color:#071C3A;
  font-size:16px;
  line-height:1.14;
  letter-spacing:-.035em;
  font-weight:850;
}

.ach-final-card--contact{
  min-height:220px;
  background:#ffffff !important;
  border-color:rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.075) !important;
  backdrop-filter:none !important;
}

.ach-final-card--contact > span{
  color:#2d7fff !important;
  background:rgba(45,127,255,.075) !important;
  border-color:rgba(45,127,255,.14) !important;
}

.ach-final-card--contact h3{
  color:#10233f !important;
}

.ach-final-card--contact p{
  color:#64748b !important;
}

.ach-final-card__contacts{
  position:relative;
  z-index:1;
  display:grid;
  gap:10px;
}

.ach-final-card__contacts a{
  min-height:46px;
  padding:0 14px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#1E3A55;
  background:rgba(45,127,255,.075);
  border:1px solid rgba(45,127,255,.13);
  text-decoration:none;
  font-size:15px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.01em;
  transition:transform .22s ease, background .22s ease;
}

.ach-final-card__contacts a:hover{
  transform:translateY(-2px);
  background:rgba(45,127,255,.12);
}

.ach-final--contacts .ach-final-card--contact .ach-final-card__actions a{
  color:#1E3A55;
  background:rgba(45,127,255,.075);
  border-color:rgba(45,127,255,.13);
}

.ach-final--contacts .ach-final-card--contact .ach-final-card__actions a:hover{
  background:rgba(45,127,255,.12);
}

/* Сохраняем синюю карточку быстрой связи */
.ach-final--contacts .ach-final-card--accent{
  background:
    radial-gradient(circle at 90% 20%, rgba(0,201,255,.20), transparent 32%),
    linear-gradient(135deg,#0b2f6b,#1e6bdb) !important;
  box-shadow:0 20px 54px rgba(8,28,62,.15) !important;
}

.ach-final--contacts .ach-final-card--accent h3,
.ach-final--contacts .ach-final-card--accent p{
  color:#ffffff !important;
}

@media(max-width:1180px){
  .ach-final__inner--contacts{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:820px){
  .ach-final__route{
    grid-template-columns:1fr;
  }

  .ach-final__route div{
    min-height:82px;
  }
}

@media(max-width:720px){
  .ach-final__main--contacts{
    min-height:600px;
  }

  .ach-final__route strong{
    font-size:15px;
  }

  .ach-final-card__contacts a{
    width:100%;
  }
}


/* =========================
   V77 — FINAL CONTACT HELP COPY
   Точный текст карточки «Поможем выбрать».
========================= */

.ach-final--contacts .ach-final-card--accent > span{
  color:#ffffff !important;
  background:rgba(255,255,255,.13) !important;
  border-color:rgba(255,255,255,.18) !important;
}


/* =========================
   V78 — YANDEX MAP IN FINAL CONTACTS
   Вместо фото в финальном блоке вставлена Яндекс Карта.
========================= */

.ach-final__main--contacts.ach-final__main--map{
  padding:0 !important;
  min-height:620px;
  overflow:hidden;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 22px 62px rgba(8,28,62,.10) !important;
  display:grid !important;
  grid-template-rows:minmax(300px,1fr) auto;
  justify-content:stretch !important;
}

.ach-final__main--contacts.ach-final__main--map::after{
  display:none !important;
}

.ach-final__map{
  position:relative;
  z-index:1;
  min-height:340px;
  width:100%;
  overflow:hidden;
  background:#dbe8f7;
}

.ach-final__map iframe{
  width:100%;
  height:100%;
  min-height:340px;
  display:block;
  border:0;
  filter:saturate(1.02) contrast(1.02);
}

.ach-final__map-info{
  position:relative;
  z-index:2;
  padding:30px;
  background:
    radial-gradient(circle at 88% 14%, rgba(45,127,255,.11), transparent 32%),
    linear-gradient(180deg,#ffffff,#f6f9ff);
  border-top:1px solid rgba(8,28,62,.08);
}

.ach-final__main--map .ach-kicker--light{
  color:#2d7fff !important;
  background:rgba(45,127,255,.08) !important;
  border:1px solid rgba(45,127,255,.14) !important;
}

.ach-final__main--map h2{
  margin:16px 0 0;
  max-width:920px;
  color:#071C3A !important;
  font-size:clamp(40px,5.2vw,86px);
  line-height:.9;
  letter-spacing:-.075em;
  font-weight:760;
}

.ach-final__main--map p{
  margin:18px 0 0;
  max-width:820px;
  color:#64748b !important;
  font-size:16px;
  line-height:1.58;
}

.ach-final__main--map .ach-final__route{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.ach-final__main--map .ach-final__route div{
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 28px rgba(8,28,62,.06) !important;
}

.ach-final__main--map .ach-final__actions{
  margin-top:22px;
}

.ach-final__main--map .ach-btn--ghost{
  color:#1E3A55 !important;
  background:rgba(45,127,255,.075) !important;
  border:1px solid rgba(45,127,255,.13) !important;
}

.ach-final__main--map .ach-btn--ghost:hover{
  background:rgba(45,127,255,.12) !important;
}

/* Темная тема: карта и финальные контакты остаются светлыми, чтобы блок был читаемым */
html[data-theme="dark"] .ach-final__main--contacts.ach-final__main--map{
  background:#ffffff !important;
}

html[data-theme="dark"] .ach-final__main--map h2{
  color:#071C3A !important;
}

html[data-theme="dark"] .ach-final__main--map p{
  color:#64748b !important;
}

@media(max-width:1180px){
  .ach-final__main--contacts.ach-final__main--map{
    min-height:auto;
  }

  .ach-final__map{
    min-height:420px;
  }

  .ach-final__map iframe{
    min-height:420px;
  }
}

@media(max-width:820px){
  .ach-final__main--map .ach-final__route{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .ach-final__main--contacts.ach-final__main--map{
    border-radius:30px;
  }

  .ach-final__map{
    min-height:360px;
  }

  .ach-final__map iframe{
    min-height:360px;
  }

  .ach-final__map-info{
    padding:24px;
  }

  .ach-final__main--map h2{
    font-size:clamp(40px,13vw,68px);
  }

  .ach-final__main--map p{
    font-size:15px;
  }
}


/* =========================
   V79 — CONTACTS / MAP SWAP
   В финальном блоке контакты слева, карта справа.
========================= */

.ach-final__inner--contacts{
  grid-template-columns:minmax(520px,1.02fr) minmax(0,.98fr) !important;
}

.ach-final__side--contacts{
  order:1;
}

.ach-final__main--contacts.ach-final__main--map{
  order:2;
}

/* При такой расстановке карточки контактов выглядят как основной блок */
.ach-final__side--contacts .ach-final-card--contact{
  min-height:205px;
}

.ach-final__side--contacts .ach-final-card--accent{
  min-height:245px;
}

/* Карта справа должна быть чуть выше и цельнее */
.ach-final__main--contacts.ach-final__main--map{
  min-height:680px;
}

.ach-final__map{
  min-height:410px;
}

.ach-final__map iframe{
  min-height:410px;
}

/* На планшете и мобильном оставляем логичный порядок: карта сверху, контакты ниже */
@media(max-width:1180px){
  .ach-final__inner--contacts{
    grid-template-columns:1fr !important;
  }

  .ach-final__main--contacts.ach-final__main--map{
    order:1;
    min-height:auto;
  }

  .ach-final__side--contacts{
    order:2;
  }
}


/* =========================
   V80 — FINAL CONTACTS LAYOUT
   Слева: заголовок «Как добраться и контакты» + карта.
   Справа: адрес, режим, телефоны, email, помощь с выбором.
========================= */

.ach-final--map-layout .ach-final__inner--contacts{
  grid-template-columns:minmax(0,1.02fr) minmax(500px,.98fr) !important;
}

.ach-final--map-layout .ach-final__main--contacts.ach-final__main--map{
  order:1 !important;
  min-height:720px;
  display:grid !important;
  grid-template-rows:auto minmax(360px,1fr) !important;
}

.ach-final--map-layout .ach-final__side--contacts{
  order:2 !important;
}

.ach-final--map-layout .ach-final__map-info{
  border-top:0 !important;
  border-bottom:1px solid rgba(8,28,62,.08);
}

.ach-final--map-layout .ach-final__map{
  min-height:410px;
}

.ach-final--map-layout .ach-final__map iframe{
  min-height:410px;
}

.ach-final__route--side{
  margin-top:14px !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}

.ach-final__route--side div{
  min-height:76px !important;
  background:rgba(246,249,255,.92) !important;
  border:1px solid rgba(8,28,62,.075) !important;
  box-shadow:none !important;
}

.ach-final-card--route{
  min-height:300px !important;
}

.ach-final-card--route .ach-final-card__actions{
  margin-top:14px;
}

@media(max-width:1180px){
  .ach-final--map-layout .ach-final__inner--contacts{
    grid-template-columns:1fr !important;
  }

  .ach-final--map-layout .ach-final__main--contacts.ach-final__main--map{
    order:1 !important;
    min-height:auto;
  }

  .ach-final--map-layout .ach-final__side--contacts{
    order:2 !important;
  }
}

@media(max-width:720px){
  .ach-final--map-layout .ach-final__main--contacts.ach-final__main--map{
    grid-template-rows:auto minmax(340px,1fr) !important;
  }

  .ach-final--map-layout .ach-final__map{
    min-height:340px;
  }

  .ach-final--map-layout .ach-final__map iframe{
    min-height:340px;
  }

  .ach-final-card--route{
    min-height:260px !important;
  }
}


/* =========================================================
   ALEXCLUB WEBSITE GUIDELINE v1.2 — CLEAN STABLE OVERRIDES
   База: V80 без накопленных хвостов V81/V82/V83.
========================================================= */

:root{
  --ac-font:"Evolventa", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ac-bg:#f4f8ff;
  --ac-bg-2:#ffffff;
  --ac-bg-3:#eef5ff;
  --ac-navy:#071C3A;
  --ac-navy-2:#10233f;
  --ac-text:#64748b;
  --ac-muted:#8da0b8;
  --ac-blue:#2d7fff;
  --ac-blue-2:#00b7ff;
  --ac-red:#e31b23;
  --ac-red-dark:#b9141b;
  --ac-border:rgba(8,28,62,.08);
  --ac-border-blue:rgba(45,127,255,.14);
  --ac-radius-xl:42px;
  --ac-radius-lg:34px;
  --ac-radius-md:28px;
  --ac-radius-sm:20px;
  --ac-radius-pill:999px;
  --ac-shadow-card:0 16px 42px rgba(8,28,62,.075);
  --ac-shadow-media:0 22px 62px rgba(8,28,62,.10);
  --ac-shadow-cta:0 18px 34px rgba(227,27,35,.22);
  --ac-section-y:76px;
  --ac-section-y-mobile:56px;
  --ac-side-gap:5vw;
  --ac-side-gap-mobile:18px;
  --ac-h1-size:clamp(54px,7.2vw,118px);
  --ac-h2-size:clamp(38px,4.7vw,78px);
  --ac-h3-size:clamp(24px,1.75vw,34px);
  --ac-body-size:17px;
  --ac-body-line:1.62;
  --ac-title-line:.94;
  --ac-title-letter:-.065em;
}

/* Единый светлый фон страницы */
html,
body{
  margin:0 !important;
  padding:0 !important;
  min-height:100%;
  font-family:var(--ac-font) !important;
  color:var(--ac-navy);
  background:
    radial-gradient(circle at 12% 8%, rgba(45,127,255,.10), transparent 30%),
    radial-gradient(circle at 88% 24%, rgba(0,183,255,.08), transparent 28%),
    radial-gradient(circle at 72% 78%, rgba(98,70,255,.055), transparent 34%),
    linear-gradient(180deg, var(--ac-bg-2) 0%, var(--ac-bg) 42%, var(--ac-bg-2) 100%) !important;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.54;
  background-image:
    linear-gradient(rgba(30,58,85,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,58,85,.045) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}

/* Убираем нижний пустой отступ */
#page,
.site,
.site-content,
.content-area,
.site-main,
.entry-content,
.wp-site-blocks,
main{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

.entry-content > *:last-child,
.site-main > *:last-child,
main > *:last-child,
.ach-final:last-child,
.ach-final--contacts:last-child{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

/* Обычные секции на едином фоне */
.ach-achievements,
.ach-material,
.ach-coaches,
.ach-atmosphere,
.ach-directions,
.ach-events,
.ach-partners,
.ach-comfort,
.ach-final--contacts{
  background:transparent !important;
  padding-top:var(--ac-section-y) !important;
  padding-bottom:var(--ac-section-y) !important;
}

/* Декоративные фоновые сетки внутри секций мягкие */
.ach-achievements::before,
.ach-achievements::after,
.ach-material::before,
.ach-material::after,
.ach-coaches::before,
.ach-coaches::after,
.ach-atmosphere::before,
.ach-atmosphere::after,
.ach-directions::before,
.ach-directions::after,
.ach-events::before,
.ach-events::after,
.ach-partners::before,
.ach-partners::after,
.ach-comfort::before,
.ach-comfort::after,
.ach-final--contacts::before,
.ach-final--contacts::after,
.ach-events__bg,
.ach-partners__bg,
.ach-comfort__bg,
.ach-final--contacts .ach-final__bg{
  opacity:.22 !important;
}

/* Блок достижений снова заходит на hero */
.ach-hero{
  margin-bottom:0 !important;
}

.ach-achievements{
  position:relative;
  z-index:10;
  margin-top:-88px !important;
  padding-top:0 !important;
}

.ach-achievements .ach-wrap{
  position:relative;
  z-index:2;
}

.ach-achievements__panel{
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 26px 72px rgba(8,28,62,.14) !important;
}

.ach-material{
  padding-top:var(--ac-section-y,76px) !important;
}

/* Единая типографика */
.ach-hero,
.ach-achievements,
.ach-material,
.ach-coaches,
.ach-atmosphere,
.ach-directions,
.ach-events,
.ach-partners,
.ach-comfort,
.ach-final{
  font-family:var(--ac-font) !important;
}

.ach-hero h1{
  font-size:var(--ac-h1-size) !important;
  line-height:.88 !important;
  letter-spacing:-.075em !important;
  font-weight:760 !important;
}

.ach-achievements h2,
.ach-material h2,
.ach-coaches h2,
.ach-atmosphere h2,
.ach-directions h2,
.ach-events h2,
.ach-partners h2,
.ach-comfort h2,
.ach-final h2{
  font-size:var(--ac-h2-size) !important;
  line-height:var(--ac-title-line) !important;
  letter-spacing:var(--ac-title-letter) !important;
  font-weight:740 !important;
}

.ach-achievement-card span,
.ach-material p,
.ach-material-feature__body p,
.ach-material-sport-card__body p,
.ach-coaches p,
.ach-atmosphere p,
.ach-directions p,
.ach-events p,
.ach-partners p,
.ach-comfort p,
.ach-final p{
  font-size:var(--ac-body-size);
  line-height:var(--ac-body-line);
  font-weight:400;
}

/* Плашки/kicker */
.ach-kicker,
.ach-kicker--light,
.ach-logo-group__kicker,
.ach-logo-stage__head span,
.ach-comfort-card span,
.ach-final-card > span{
  min-height:30px;
  padding:0 11px;
  border-radius:var(--ac-radius-pill);
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  font-family:var(--ac-font) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
}

.ach-kicker:not(.ach-kicker--light),
.ach-logo-group__kicker,
.ach-logo-stage__head span,
.ach-comfort-card span,
.ach-final-card--contact > span{
  color:var(--ac-blue) !important;
  background:rgba(45,127,255,.075) !important;
  border:1px solid var(--ac-border-blue) !important;
}

.ach-kicker--light{
  color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.18) !important;
}

/* Базовая кнопка */
.ach-btn{
  min-height:50px;
  padding:0 20px;
  border-radius:var(--ac-radius-pill);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-family:var(--ac-font) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  border:0;
  outline:0;
  cursor:pointer;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    background .22s ease,
    border-color .22s ease,
    color .22s ease;
}

/* Primary CTA — утвержденный вариант C без видимой обводки */
.ach-btn--primary{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#ffffff !important;
  background:
    linear-gradient(135deg,#ff3a42 0%,#e31b23 42%,#b9141b 100%) !important;
  border:none !important;
  outline:none !important;
  box-shadow:
    0 18px 34px rgba(227,27,35,.22),
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -10px 18px rgba(120,0,8,.14) !important;
  text-shadow:0 1px 1px rgba(80,0,0,.18);
}

.ach-btn--primary::before{
  content:"";
  position:absolute;
  inset:1px 1px auto 1px;
  height:48%;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0));
  pointer-events:none;
  z-index:-1;
}

.ach-btn--primary::after{
  content:"→";
  width:28px;
  height:28px;
  margin-left:2px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  background:rgba(255,255,255,.16) !important;
  border:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18) !important;
  font-size:18px;
  line-height:1;
  font-weight:800;
  transition:transform .22s ease, background .22s ease;
}

.ach-btn--primary:hover{
  transform:translateY(-2px);
  background:
    linear-gradient(135deg,#ff4b52 0%,#ec2029 42%,#aa1017 100%) !important;
  border:none !important;
  box-shadow:
    0 22px 44px rgba(227,27,35,.28),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -10px 18px rgba(120,0,8,.16) !important;
}

.ach-btn--primary:hover::after{
  transform:translateX(3px);
  background:rgba(255,255,255,.20) !important;
}

/* Ghost/Secondary */
.ach-btn--ghost{
  color:#10233f !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.10) !important;
  box-shadow:0 12px 28px rgba(8,28,62,.06) !important;
}

.ach-btn--ghost:hover{
  transform:translateY(-2px);
  color:#2d7fff !important;
  border-color:rgba(45,127,255,.22) !important;
  box-shadow:0 16px 34px rgba(8,28,62,.085) !important;
}

.ach-hero .ach-btn--ghost,
.ach-final__main:not(.ach-final__main--map) .ach-btn--ghost{
  color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
  border-color:rgba(255,255,255,.22) !important;
  box-shadow:none !important;
}

/* «Подробнее об истории школы» — компактная ссылка, без вылезания */
.ach-history-link{
  width:auto !important;
  max-width:100% !important;
  min-height:auto !important;
  padding:0 0 3px !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
  white-space:normal !important;
  line-height:1.3 !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
  vertical-align:top;
  color:#10233f !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid rgba(16,35,63,.22) !important;
  box-shadow:none !important;
  font-size:14px !important;
  font-weight:850 !important;
  letter-spacing:.02em !important;
  text-transform:none !important;
  text-decoration:none !important;
}

.ach-history-link::after{
  content:"→";
  flex:0 0 auto;
  margin-top:-1px;
  color:#e31b23;
  font-size:18px;
  line-height:1;
  font-weight:800;
  transition:transform .22s ease;
}

.ach-history-link:hover{
  color:#e31b23 !important;
  border-color:rgba(227,27,35,.35) !important;
}

.ach-history-link:hover::after{
  transform:translateX(3px);
}

/* Text-link */
.ach-text-link{
  color:#10233f !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid rgba(16,35,63,.22) !important;
  font-weight:850 !important;
  text-decoration:none !important;
}

.ach-text-link:hover{
  color:#e31b23 !important;
  border-color:rgba(227,27,35,.35) !important;
}

/* Карточки */
.ach-card,
.ach-achievements__panel,
.ach-achievement-card,
.ach-material-feature,
.ach-material-sport-card,
.ach-coach-card,
.ach-atmosphere__feature,
.ach-event-card,
.ach-partner-card,
.ach-logo-pill,
.ach-comfort-card,
.ach-final-card--contact{
  background:#ffffff !important;
  border:1px solid var(--ac-border) !important;
  box-shadow:var(--ac-shadow-card) !important;
}

/* Радиусы */
.ach-achievements__panel,
.ach-material__intro,
.ach-atmosphere__content,
.ach-final__main--map{
  border-radius:var(--ac-radius-xl) !important;
}

.ach-material-feature,
.ach-material-sport-card,
.ach-coach-card,
.ach-event-card,
.ach-partner-card,
.ach-logo-group,
.ach-comfort-card,
.ach-final-card{
  border-radius:var(--ac-radius-lg) !important;
}

/* Медиа */
.ach-material-feature__photo,
.ach-material-sport-card__photo,
.ach-coach-card__photo,
.ach-atmosphere__photo,
.ach-events__visual,
.ach-final__map{
  overflow:hidden;
  box-shadow:var(--ac-shadow-media);
}

/* CTA-плашки */
.ach-comfort__cta,
.ach-partners__note,
.ach-events__cta,
.ach-final-card--accent{
  background:
    radial-gradient(circle at 88% 24%, rgba(0,201,255,.22), transparent 32%),
    linear-gradient(135deg,#071C3A,#1e6bdb) !important;
  color:#ffffff !important;
  box-shadow:0 20px 54px rgba(8,28,62,.15) !important;
}

.ach-final-card--accent .ach-final-card__actions a{
  color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
  border-color:rgba(255,255,255,.18) !important;
}

.ach-final-card__actions a,
.ach-final-card__contacts a,
.ach-comfort__links a{
  text-shadow:none !important;
}

/* Mobile */
@media(max-width:720px){
  :root{
    --ac-section-y:var(--ac-section-y-mobile);
    --ac-side-gap:var(--ac-side-gap-mobile);
    --ac-body-size:15px;
  }

  .ach-achievements,
  .ach-material,
  .ach-coaches,
  .ach-atmosphere,
  .ach-directions,
  .ach-events,
  .ach-partners,
  .ach-comfort,
  .ach-final--contacts{
    padding:var(--ac-section-y-mobile) var(--ac-side-gap-mobile) !important;
  }

  .ach-achievements{
    margin-top:-54px !important;
  }

  .ach-btn{
    min-height:50px;
    width:100%;
  }

  .ach-btn--primary::after{
    width:26px;
    height:26px;
    font-size:16px;
  }

  .ach-history-link{
    font-size:13px !important;
    line-height:1.35 !important;
  }

  .ach-achievements__panel,
  .ach-material__intro,
  .ach-atmosphere__content,
  .ach-final__main--map{
    border-radius:30px !important;
  }

  .ach-material-feature,
  .ach-material-sport-card,
  .ach-coach-card,
  .ach-event-card,
  .ach-partner-card,
  .ach-comfort-card,
  .ach-final-card{
    border-radius:26px !important;
  }

  .ach-final__map,
  .ach-final__map iframe{
    min-height:340px !important;
  }
}

/* Последняя секция вплотную к футеру */
.ach-final--map-layout,
.ach-final--contacts{
  margin-bottom:0 !important;
}


/* =========================================================
   V85 — MOBILE LAYOUT + HISTORY LINK FIX
========================================================= */

.ach-hero *,
.ach-achievements *,
.ach-material *,
.ach-coaches *,
.ach-atmosphere *,
.ach-directions *,
.ach-events *,
.ach-partners *,
.ach-comfort *,
.ach-final *{
  box-sizing:border-box;
}

body{overflow-x:hidden;}

/* «Подробнее об истории школы» — обычная текстовая ссылка, не кнопка */
.ach-achievements .ach-history-link,
.ach-history-link{
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  display:inline !important;
  color:#10233f !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:850 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

.ach-achievements .ach-history-link::before,
.ach-history-link::before{
  display:none !important;
  content:none !important;
}

.ach-achievements .ach-history-link::after,
.ach-history-link::after{
  content:" →" !important;
  position:static !important;
  display:inline !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#e31b23 !important;
  font-size:1em !important;
  line-height:inherit !important;
  font-weight:900 !important;
  transform:none !important;
}

.ach-achievements .ach-history-link:hover,
.ach-history-link:hover{
  color:#e31b23 !important;
  text-decoration:underline !important;
  text-underline-offset:5px;
}

.ach-achievements__head .ach-history-link{
  justify-self:start !important;
}

@media(max-width:720px){
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }

  :root{
    --ac-side-gap-mobile:12px;
    --ac-section-y-mobile:48px;
    --ac-body-size:15px;
  }

  .ach-hero,
  .ach-achievements,
  .ach-material,
  .ach-coaches,
  .ach-atmosphere,
  .ach-directions,
  .ach-events,
  .ach-partners,
  .ach-comfort,
  .ach-final--contacts{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .ach-wrap,
  .ach-hero__inner,
  .ach-achievements .ach-wrap,
  .ach-material .ach-wrap,
  .ach-coaches .ach-wrap,
  .ach-atmosphere .ach-wrap,
  .ach-directions .ach-wrap,
  .ach-events .ach-wrap,
  .ach-partners .ach-wrap,
  .ach-comfort .ach-wrap,
  .ach-final .ach-wrap{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .ach-material,
  .ach-coaches,
  .ach-atmosphere,
  .ach-directions,
  .ach-events,
  .ach-partners,
  .ach-comfort,
  .ach-final--contacts{
    padding-left:12px !important;
    padding-right:12px !important;
    padding-top:48px !important;
    padding-bottom:48px !important;
  }

  .ach-achievements{
    margin-top:-64px !important;
    padding-top:0 !important;
    padding-left:12px !important;
    padding-right:12px !important;
    padding-bottom:48px !important;
  }

  .ach-achievements__panel{
    position:relative !important;
    z-index:5 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
  }

  .ach-btn{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .ach-btn--primary::after{
    flex:0 0 26px !important;
    width:26px !important;
    height:26px !important;
  }

  .ach-achievements .ach-history-link,
  .ach-history-link{
    display:inline !important;
    width:auto !important;
    max-width:100% !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }

  .ach-achievements__head{
    gap:16px !important;
  }

  .ach-achievements__panel,
  .ach-material__intro,
  .ach-atmosphere__content,
  .ach-final__main--map{
    border-radius:28px !important;
  }

  .ach-material-feature,
  .ach-material-sport-card,
  .ach-coach-card,
  .ach-event-card,
  .ach-partner-card,
  .ach-comfort-card,
  .ach-final-card{
    border-radius:24px !important;
  }
}

@media(max-width:390px){
  .ach-material,
  .ach-coaches,
  .ach-atmosphere,
  .ach-directions,
  .ach-events,
  .ach-partners,
  .ach-comfort,
  .ach-final--contacts,
  .ach-achievements{
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .ach-btn{
    padding-left:14px !important;
    padding-right:14px !important;
    font-size:12px !important;
    letter-spacing:.025em !important;
  }
}


/* =========================================================
   V86 — PRIMARY CTA ARROW REFRESH
   1. Убираем любую «обводку/капсулу» у стрелки.
   2. Вместо обычной стрелочки используем более современный знак ↗.
========================================================= */

.ach-btn--primary{
  gap:12px !important;
}

.ach-btn--primary::after{
  content:"↗" !important;
  display:inline-block !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin-left:2px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#ffffff !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  opacity:.96 !important;
  transform:translateY(-1px) !important;
  transition:transform .22s ease, opacity .22s ease !important;
}

.ach-btn--primary:hover::after{
  transform:translate(2px,-2px) !important;
  opacity:1 !important;
  background:transparent !important;
}

@media(max-width:720px){
  .ach-btn--primary{
    gap:10px !important;
  }

  .ach-btn--primary::after{
    font-size:17px !important;
  }
}


/* =========================================================
   V87 — PRIMARY CTA APPROVED
   Утвержден вариант иконки №1: ↗
========================================================= */

.ach-btn--primary::after{
  content:"↗" !important;
}


/* =========================================================
   V88 — MAIN PAGE FINAL POLISH
   Утверждено:
   - текущая визуальная система главной страницы сохраняется;
   - на mobile заголовок hero уменьшаем примерно на 5%.
========================================================= */

@media(max-width:720px){
  .ach-hero h1{
    font-size:calc(var(--ac-h1-size) * .95) !important;
  }
}

@media(max-width:420px){
  .ach-hero h1{
    font-size:calc(var(--ac-h1-size) * .93) !important;
  }
}


/* =========================================================
   V89 — MOBILE HERO SIDE PADDING
   Утверждено:
   - в hero на mobile боковые отступы по 1%.
========================================================= */

@media(max-width:720px){
  .ach-hero{
    padding-left:1% !important;
    padding-right:1% !important;
  }

  .ach-hero__inner{
    padding-left:0 !important;
    padding-right:0 !important;
    width:100% !important;
    max-width:100% !important;
  }
}


/* =========================================================
   V90 — MOBILE HERO SIDE PADDING 8PX
   Утверждено:
   - в hero на mobile боковые отступы по 8px.
   - правило 1% отменено.
========================================================= */

@media(max-width:720px){
  .ach-hero{
    padding-left:8px !important;
    padding-right:8px !important;
  }

  .ach-hero__inner{
    padding-left:0 !important;
    padding-right:0 !important;
    width:100% !important;
    max-width:100% !important;
  }
}


/* =========================================================
   V92 — ATMOSPHERE VIDEO TOUR
   Блок «Место, куда хочется возвращаться»:
   вместо фотоколлажа используется видеоэкскурсия VK Video.
========================================================= */

.ach-atmosphere__visual--video{
  min-height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
  gap:0 !important;
}

.ach-atmosphere__video{
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border-radius:34px;
  background:
    radial-gradient(circle at 20% 16%, rgba(45,127,255,.20), transparent 35%),
    linear-gradient(135deg,#071c3a,#10233f);
  box-shadow:0 24px 64px rgba(8,28,62,.16);
  border:1px solid rgba(255,255,255,.72);
}

.ach-atmosphere__video iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  border:0;
  background:#071c3a;
}

@media(max-width:1180px){
  .ach-atmosphere__visual--video{
    width:100%;
  }

  .ach-atmosphere__video{
    max-width:980px;
    margin:0 auto;
  }
}

@media(max-width:720px){
  .ach-atmosphere__visual--video{
    min-height:auto !important;
  }

  .ach-atmosphere__video{
    border-radius:24px;
    box-shadow:0 18px 42px rgba(8,28,62,.14);
  }
}


/* =========================================================
   V93 — ATMOSPHERE FEATURES UNDER VIDEO
   Блоки 01–04 в «Атмосфере» перенесены под видеоэкскурсию.
========================================================= */

.ach-atmosphere__visual--video{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:18px !important;
}

.ach-atmosphere__features--under-video{
  width:100%;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 !important;
}

.ach-atmosphere__features--under-video .ach-atmosphere__feature{
  min-height:96px;
  padding:18px;
}

@media(max-width:1180px){
  .ach-atmosphere__features--under-video{
    max-width:980px;
    margin:0 auto !important;
  }
}

@media(max-width:720px){
  .ach-atmosphere__visual--video{
    gap:12px !important;
  }

  .ach-atmosphere__features--under-video{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .ach-atmosphere__features--under-video .ach-atmosphere__feature{
    min-height:72px;
    padding:16px;
  }
}


/* =========================================================
   V94 — EVENTS MAIN PHOTO UPDATE
   Блок «Планируете спортивное событие?»:
   главное фото обновлено на dance-parade-sk-alekseeva.webp
========================================================= */


/* =========================================================
   V95 — COMFORT SVG ICONS
   Блок «Всё для удобного визита»:
   текстовые символы заменены на inline SVG, чтобы иконки
   стабильно отображались во всех браузерах и на всех устройствах.
========================================================= */

.ach-comfort-card__icon--svg{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:0 !important;
  line-height:0 !important;
}

.ach-comfort-card__icon--svg svg{
  width:28px;
  height:28px;
  display:block;
  overflow:visible;
}

.ach-comfort-card__icon--svg svg path,
.ach-comfort-card__icon--svg svg circle{
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(max-width:720px){
  .ach-comfort-card__icon--svg svg{
    width:26px;
    height:26px;
  }
}


/* =========================================================
   V95.1 — EVENTS GALLERY PATCH FROM STABLE V95
   База: alexclub-home-v95-comfort-svg-icons.
   Блок «Планируете спортивное событие?»:
   - плашки-факты с основного фото убраны;
   - добавлена нижняя галерея мероприятий с подписями.
========================================================= */

.ach-events__visual .ach-events__facts{
  display:none !important;
}

.ach-events__photo::after{
  background:
    linear-gradient(90deg, rgba(3,8,23,.20), transparent 58%),
    linear-gradient(180deg, transparent 54%, rgba(3,8,23,.24)) !important;
}

.ach-events-gallery{
  margin-top:22px;
  border-radius:38px;
  padding:28px;
  background:
    radial-gradient(circle at 12% 20%, rgba(45,127,255,.12), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.94));
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 52px rgba(8,28,62,.075);
}

.ach-events-gallery__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.62fr);
  gap:24px;
  align-items:end;
  margin-bottom:20px;
}

.ach-events-gallery__head .ach-kicker{
  width:max-content;
  align-self:start;
}

.ach-events-gallery__head h3{
  grid-column:1;
  margin:12px 0 0;
  color:#071C3A;
  font-size:clamp(32px,3.2vw,56px);
  line-height:.96;
  letter-spacing:-.06em;
  font-weight:850;
}

.ach-events-gallery__head p{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:end;
  max-width:620px;
  margin:0;
  color:#64748b;
  font-size:16px;
  line-height:1.6;
  font-weight:400;
}

.ach-events-gallery__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.ach-events-gallery__card{
  position:relative;
  min-height:260px;
  overflow:hidden;
  border-radius:28px;
  background:#10233f;
  box-shadow:0 18px 44px rgba(8,28,62,.12);
  isolation:isolate;
}

.ach-events-gallery__card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.015);
  transition:transform .45s ease;
}

.ach-events-gallery__card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg, transparent 32%, rgba(3,8,23,.78) 100%),
    linear-gradient(90deg, rgba(3,8,23,.20), transparent 62%);
  pointer-events:none;
}

.ach-events-gallery__card div{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:2;
  color:#ffffff;
}

.ach-events-gallery__card span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.26);
  backdrop-filter:blur(12px);
  color:rgba(255,255,255,.88);
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ach-events-gallery__card strong{
  display:block;
  margin-top:10px;
  color:#ffffff;
  font-size:clamp(18px,1.35vw,24px);
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:850;
}

.ach-events-gallery__card:hover img{
  transform:scale(1.055);
}

@media(max-width:1180px){
  .ach-events-gallery__head{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ach-events-gallery__head h3,
  .ach-events-gallery__head p{
    grid-column:1;
    grid-row:auto;
  }

  .ach-events-gallery__head p{
    max-width:900px;
  }

  .ach-events-gallery__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .ach-events-gallery{
    margin-top:16px;
    border-radius:30px;
    padding:18px;
  }

  .ach-events-gallery__head{
    gap:12px;
    margin-bottom:16px;
  }

  .ach-events-gallery__head h3{
    font-size:clamp(30px,9vw,42px);
    line-height:1;
  }

  .ach-events-gallery__head p{
    font-size:15px;
    line-height:1.55;
  }

  .ach-events-gallery__grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .ach-events-gallery__card{
    min-height:260px;
    border-radius:24px;
  }

  .ach-events-gallery__card div{
    left:16px;
    right:16px;
    bottom:16px;
  }
}

/* =========================
   V95.1 PAGE — SINGLE PASS / ЕДИНЫЙ АБОНЕМЕНТ — V7
   Основа: ALEXCLUB THEME — STABLE SYNC V12 + V95.1.
   Исправление V7: без 100vw/negative-margin хака, полноширинный вывод через page.php,
   мобильная сетка и hero по логике главной страницы.
========================= */


/* Страница выводится полноширинно через page.php, без 100vw-хака и отрицательных margin. */
.ac-page--single-pass{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--single-pass .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--single-pass .wp-block-html,
.ac-page--single-pass .wp-block-group,
.ac-page--single-pass .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.ac-pass{
  --pass-navy:#1E3A55;
  --pass-deep:#071936;
  --pass-muted:#64748b;
  --pass-line:rgba(8,28,62,.10);
  --pass-bg:#f4f8ff;
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 12% 18%,rgba(45,127,255,.10),transparent 38rem),
    radial-gradient(circle at 86% 24%,rgba(7,135,189,.10),transparent 34rem),
    radial-gradient(circle at 46% 64%,rgba(155,120,255,.055),transparent 42rem),
    linear-gradient(180deg,#f4f8ff 0%,#eef5ff 48%,#f7fbff 100%) !important;
  color:var(--pass-deep) !important;
  position:relative !important;
  isolation:isolate !important;
}

.ac-pass::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:0 !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.030) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.024) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
  opacity:.52 !important;
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.86) 12%,rgba(0,0,0,.70) 88%,transparent 100%) !important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.86) 12%,rgba(0,0,0,.70) 88%,transparent 100%) !important;
}

.ac-pass > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-wrap{
  width:calc(100% - 10vw) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

.ac-pass-hero{
  position:relative !important;
  min-height:calc(100vh - var(--ac-header-height)) !important;
  padding:calc(var(--ac-header-height) + 88px) 0 74px !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  background:#060914 !important;
  color:#fff !important;
}

.ac-pass-hero__bg{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.78),rgba(5,8,20,.38)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/gym-general-01.webp") center center / cover no-repeat !important;
  filter:saturate(1.04) contrast(1.04) !important;
}

.ac-pass-hero__bg::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.72)) !important;
  background-size:58px 58px,58px 58px,auto !important;
  opacity:.66 !important;
}

.ac-pass-hero__inner{
  position:relative !important;
  z-index:1 !important;
  width:calc(100% - 10vw) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,430px) !important;
  gap:36px !important;
  align-items:end !important;
  box-sizing:border-box !important;
}

.ac-pass-hero__content{
  max-width:1080px !important;
  min-width:0 !important;
  transform:translateY(-4vh) !important;
}

.ac-pass-hero h1{
  margin:22px 0 0 !important;
  max-width:1080px !important;
  color:#fff !important;
  font-size:clamp(54px,7vw,118px) !important;
  line-height:.92 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
  overflow-wrap:break-word !important;
}

.ac-pass-hero__lead{
  max-width:760px !important;
  margin:24px 0 0 !important;
  color:rgba(255,255,255,.86) !important;
  font-size:clamp(19px,1.55vw,25px) !important;
  line-height:1.43 !important;
  font-weight:400 !important;
  text-shadow:0 8px 28px rgba(0,0,0,.28) !important;
}

.ac-pass-hero__actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:34px !important;
}

.ac-pass-hero__deal{
  min-width:0 !important;
  padding:26px !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  box-shadow:0 24px 80px rgba(0,0,0,.26) !important;
}

.ac-pass-hero__deal > span{
  display:inline-flex !important;
  min-height:32px !important;
  align-items:center !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(239,51,64,.22) !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-hero__deal strong{
  display:block !important;
  margin:18px 0 0 !important;
  color:#fff !important;
  font-size:clamp(56px,5vw,82px) !important;
  line-height:.88 !important;
  font-weight:700 !important;
  letter-spacing:-.065em !important;
}

.ac-pass-hero__deal p{
  margin:16px 0 0 !important;
  color:rgba(255,255,255,.76) !important;
  font-size:16px !important;
  line-height:1.62 !important;
}

.ac-pass-hero__deal-grid{
  margin-top:18px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-pass-hero__deal-grid div{
  min-height:94px !important;
  padding:14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

.ac-pass-hero__deal-grid b{
  color:#fff !important;
  font-size:20px !important;
  line-height:1 !important;
}

.ac-pass-hero__deal-grid small{
  margin-top:8px !important;
  color:rgba(255,255,255,.62) !important;
  font-size:12px !important;
  line-height:1.25 !important;
}

.ac-pass-hero__deal-note{
  margin-top:14px !important;
  padding:13px 14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

.ac-pass-intent{
  margin-top:-56px !important;
  padding:0 0 64px !important;
}

.ac-pass-intent__panel{
  padding:28px !important;
  border-radius:34px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 20px 58px rgba(8,28,62,.14) !important;
}

.ac-pass-intent__head{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin-bottom:16px !important;
}

.ac-pass-intent__head h2{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.8vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-pass-intent__grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-pass-intent__grid a{
  min-height:118px !important;
  padding:16px !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 10px 26px rgba(8,28,62,.055) !important;
  display:flex !important;
  flex-direction:column !important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}

.ac-pass-intent__grid a:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(7,135,189,.22) !important;
  box-shadow:0 16px 34px rgba(8,28,62,.10) !important;
}

.ac-pass-intent__grid span,
.ac-pass-start__grid span,
.ac-pass-compare span{
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

.ac-pass-intent__grid strong{
  margin-top:10px !important;
  color:#071936 !important;
  font-size:17px !important;
  line-height:1.08 !important;
  font-weight:700 !important;
}

.ac-pass-intent__grid em{
  margin-top:5px !important;
  padding-top:0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-style:normal !important;
}

.ac-pass-section{
  padding:74px 0 !important;
}

.ac-pass-section__head{
  max-width:1040px !important;
  margin:0 0 28px !important;
  text-align:left !important;
  display:block !important;
}

.ac-pass-section__head--split{
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px) !important;
  gap:26px !important;
  align-items:end !important;
}

.ac-pass-section__head h2,
.ac-pass-subscription__copy h2,
.ac-pass-visit__content h2,
.ac-pass-contact__copy h2{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(38px,4.8vw,78px) !important;
  line-height:.94 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  text-wrap:balance !important;
}

.ac-pass-section__head p,
.ac-pass-subscription__copy p,
.ac-pass-visit__content p,
.ac-pass-contact__copy p{
  margin:18px 0 0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.72 !important;
}

.ac-pass-section__head--split > p{
  margin:0 !important;
}

.ac-pass-included__grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-pass-zone-card{
  min-height:420px !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-pass-zone-card__photo{
  position:relative !important;
  min-height:230px !important;
  padding:18px !important;
  display:flex !important;
  align-items:flex-start !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02),rgba(5,8,20,.66)),linear-gradient(135deg,#1E3A55,#0787bd) !important;
  overflow:hidden !important;
}

.ac-pass-zone-card__photo::before,
.ac-pass-gallery__item::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  background-size:44px 44px !important;
  opacity:.18 !important;
  pointer-events:none !important;
}

.ac-pass-zone-card--gym .ac-pass-zone-card__photo,
.ac-pass-gallery__item--gym{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/gym-general-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--fitness .ac-pass-zone-card__photo,
.ac-pass-gallery__item--fitness{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/fitness-group-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--power .ac-pass-zone-card__photo,
.ac-pass-gallery__item--power{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/powerlifting-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--arm .ac-pass-zone-card__photo,
.ac-pass-gallery__item--arm{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/armwrestling-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--box .ac-pass-zone-card__photo,
.ac-pass-gallery__item--box{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/boxing-corner-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--manege .ac-pass-zone-card__photo,
.ac-pass-gallery__item--manege{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/manege-02.webp") center center / cover no-repeat !important;
}

.ac-pass-zone-card__photo span{
  position:relative !important;
  z-index:1 !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(5,8,20,.38) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}

.ac-pass-zone-card__body{
  padding:23px !important;
  flex:1 !important;
}

.ac-pass-zone-card__body h3,
.ac-pass-price-card h3,
.ac-pass-start__grid strong,
.ac-pass-compare strong,
.ac-pass-installment__timeline strong,
.ac-pass-visit__rules strong,
.ac-pass-contact__cards strong{
  margin:0 !important;
  color:#071936 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

.ac-pass-zone-card__body h3{
  font-size:26px !important;
  line-height:1.04 !important;
}

.ac-pass-zone-card__body p,
.ac-pass-price-card p,
.ac-pass-price-card li,
.ac-pass-start__grid p,
.ac-pass-compare p,
.ac-pass-installment__timeline p,
.ac-pass-visit__rules p,
.ac-pass-contact__cards span{
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.6 !important;
}

.ac-pass-zone-card__body p{
  margin:13px 0 0 !important;
}

.ac-pass-included__notes{
  margin-top:18px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-pass-included__notes article,
.ac-pass-compare article,
.ac-pass-start__grid article,
.ac-pass-installment__timeline article,
.ac-pass-visit__rules article,
.ac-pass-contact__cards article{
  padding:24px !important;
  border-radius:28px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-pass-included__notes strong{
  color:#1E3A55 !important;
  font-size:22px !important;
  line-height:1.1 !important;
}

.ac-pass-included__notes p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  line-height:1.62 !important;
}

.ac-pass-prices{
  background:rgba(255,255,255,.28) !important;
}

.ac-pass-price-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-price-card{
  position:relative !important;
  padding:26px !important;
  border-radius:32px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}

.ac-pass-price-card--best{
  background:radial-gradient(circle at 20% 0%,rgba(45,127,255,.16),transparent 26rem),linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border-color:rgba(7,135,189,.22) !important;
  box-shadow:0 22px 60px rgba(8,28,62,.14) !important;
  transform:translateY(-10px) !important;
}

.ac-pass-price-card__tag{
  width:max-content !important;
  max-width:100% !important;
  min-height:32px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-price-card--best .ac-pass-price-card__tag{
  background:rgba(239,51,64,.10) !important;
  color:var(--ac-red) !important;
}

.ac-pass-price-card h3{
  margin-top:18px !important;
  font-size:28px !important;
  line-height:1.04 !important;
}

.ac-pass-price-card__price{
  margin-top:20px !important;
  display:flex !important;
  align-items:flex-end !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.ac-pass-price-card__price strong{
  color:#1E3A55 !important;
  font-size:clamp(44px,4.2vw,70px) !important;
  line-height:.86 !important;
  font-weight:700 !important;
  letter-spacing:-.065em !important;
}

.ac-pass-price-card__price del{
  color:#94a3b8 !important;
  font-size:22px !important;
  line-height:1 !important;
  text-decoration-thickness:2px !important;
}

.ac-pass-price-card__price small{
  margin-bottom:7px !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.ac-pass-price-card p{
  margin:18px 0 0 !important;
}

.ac-pass-price-card ul{
  margin:18px 0 24px !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:9px !important;
}

.ac-pass-price-card li{
  position:relative !important;
  padding-left:28px !important;
  margin:0 !important;
}

.ac-pass-price-card li::before{
  content:"✓" !important;
  position:absolute !important;
  left:0 !important;
  top:1px !important;
  width:20px !important;
  height:20px !important;
  border-radius:999px !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.ac-pass-price-card .ach-btn{
  margin-top:auto !important;
  width:100% !important;
}

.ac-pass-subscription__layout,
.ac-pass-visit__panel,
.ac-pass-contact__panel{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(420px,.78fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-subscription__copy,
.ac-pass-visit__content,
.ac-pass-contact__copy{
  position:relative !important;
  overflow:hidden !important;
  padding:38px !important;
  border-radius:36px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.08) !important;
}

.ac-pass-subscription__copy::before,
.ac-pass-contact__copy::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.035) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.38 !important;
  pointer-events:none !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.70),transparent 86%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.70),transparent 86%) !important;
}

.ac-pass-subscription__copy > *,
.ac-pass-contact__copy > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-subscription__actions,
.ac-pass-visit__actions,
.ac-pass-contact__buttons{
  margin-top:28px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}

.ac-pass-compare{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

.ac-pass-compare strong,
.ac-pass-start__grid strong{
  display:block !important;
  margin-top:20px !important;
  font-size:21px !important;
  line-height:1.08 !important;
}

.ac-pass-compare p,
.ac-pass-start__grid p{
  margin:12px 0 0 !important;
}

.ac-pass-installment__timeline{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  counter-reset:passInstallment !important;
}

.ac-pass-installment__timeline article{
  min-height:250px !important;
  position:relative !important;
  overflow:hidden !important;
}

.ac-pass-installment__timeline article::after{
  counter-increment:passInstallment !important;
  content:"0" counter(passInstallment) !important;
  position:absolute !important;
  right:18px !important;
  bottom:12px !important;
  color:rgba(7,135,189,.08) !important;
  font-size:86px !important;
  line-height:.8 !important;
  font-weight:700 !important;
  letter-spacing:-.08em !important;
}

.ac-pass-installment__timeline span{
  display:inline-flex !important;
  min-height:32px !important;
  align-items:center !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-installment__timeline strong{
  display:block !important;
  margin-top:24px !important;
  color:#1E3A55 !important;
  font-size:clamp(42px,4vw,66px) !important;
  line-height:.86 !important;
  letter-spacing:-.065em !important;
}

.ac-pass-installment__timeline p{
  position:relative !important;
  z-index:1 !important;
  margin:18px 0 0 !important;
}

.ac-pass-visit__panel,
.ac-pass-contact__panel{
  padding:0 !important;
  border-radius:38px !important;
  background:
    radial-gradient(circle at 14% 18%,rgba(45,127,255,.30),transparent 34rem),
    radial-gradient(circle at 88% 24%,rgba(7,135,189,.22),transparent 34rem),
    linear-gradient(135deg,#071936 0%,#10283f 48%,#06101f 100%) !important;
  box-shadow:0 24px 80px rgba(8,28,62,.18) !important;
  overflow:hidden !important;
}

.ac-pass-contact__panel{
  background:
    radial-gradient(circle at 14% 18%,rgba(45,127,255,.30),transparent 34rem),
    radial-gradient(circle at 88% 24%,rgba(239,51,64,.18),transparent 34rem),
    linear-gradient(135deg,#071936 0%,#10283f 48%,#06101f 100%) !important;
}

.ac-pass-visit__content,
.ac-pass-contact__copy{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.ac-pass-visit__content h2,
.ac-pass-visit__content p,
.ac-pass-contact__copy h2,
.ac-pass-contact__copy p{
  color:#fff !important;
}

.ac-pass-visit__content p,
.ac-pass-contact__copy p{
  color:rgba(255,255,255,.74) !important;
}

.ac-pass-visit__rules{
  padding:18px !important;
  display:grid !important;
  gap:12px !important;
}

.ac-pass-visit__rules article,
.ac-pass-contact__cards article{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:none !important;
}

.ac-pass-visit__rules strong{
  color:#fff !important;
  font-size:19px !important;
}

.ac-pass-visit__rules p{
  margin:10px 0 0 !important;
  color:rgba(255,255,255,.68) !important;
}

.ac-pass-start__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-pass-start__grid article{
  min-height:230px !important;
}

.ac-pass-gallery__grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-pass-gallery__item{
  position:relative !important;
  min-height:340px !important;
  margin:0 !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02),rgba(5,8,20,.64)),linear-gradient(135deg,#1E3A55,#0787bd) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
}

.ac-pass-gallery__item figcaption{
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  bottom:18px !important;
  min-height:46px !important;
  padding:0 16px !important;
  border-radius:16px !important;
  background:rgba(5,8,20,.42) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}

.ac-pass-contact__copy::before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.055) 1px,transparent 1px) !important;
  opacity:.36 !important;
}

.ac-pass-contact__cards{
  padding:18px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-pass-contact__cards span{
  display:block !important;
  color:rgba(255,255,255,.52) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-contact__cards strong{
  display:block !important;
  margin-top:12px !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.35 !important;
}

.ac-pass-faq{
  padding-bottom:96px !important;
}

.ac-pass-faq__list{
  max-width:980px !important;
  margin:0 !important;
  display:grid !important;
  gap:10px !important;
}

.ac-pass-faq__list details{
  border-radius:22px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
  overflow:hidden !important;
}

.ac-pass-faq__list summary{
  list-style:none !important;
  cursor:pointer !important;
  padding:20px 54px 20px 22px !important;
  color:#071936 !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  position:relative !important;
}

.ac-pass-faq__list summary::-webkit-details-marker{display:none !important;}

.ac-pass-faq__list summary::after{
  content:"+" !important;
  position:absolute !important;
  right:20px !important;
  top:50% !important;
  width:28px !important;
  height:28px !important;
  margin-top:-14px !important;
  border-radius:999px !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:20px !important;
  line-height:1 !important;
}

.ac-pass-faq__list details[open] summary::after{
  content:"−" !important;
}

.ac-pass-faq__list p{
  margin:0 !important;
  padding:0 22px 22px !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.68 !important;
}

html[data-theme="dark"] .ac-pass{
  background:
    radial-gradient(circle at 12% 18%,rgba(45,127,255,.14),transparent 38rem),
    radial-gradient(circle at 86% 24%,rgba(7,135,189,.12),transparent 34rem),
    linear-gradient(180deg,#060914 0%,#0b1222 48%,#060914 100%) !important;
}

html[data-theme="dark"] .ac-pass-intent__panel,
html[data-theme="dark"] .ac-pass-zone-card,
html[data-theme="dark"] .ac-pass-price-card,
html[data-theme="dark"] .ac-pass-subscription__copy,
html[data-theme="dark"] .ac-pass-compare article,
html[data-theme="dark"] .ac-pass-start__grid article,
html[data-theme="dark"] .ac-pass-installment__timeline article,
html[data-theme="dark"] .ac-pass-included__notes article,
html[data-theme="dark"] .ac-pass-faq__list details{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-section__head h2,
html[data-theme="dark"] .ac-pass-subscription__copy h2,
html[data-theme="dark"] .ac-pass-zone-card__body h3,
html[data-theme="dark"] .ac-pass-price-card h3,
html[data-theme="dark"] .ac-pass-start__grid strong,
html[data-theme="dark"] .ac-pass-compare strong,
html[data-theme="dark"] .ac-pass-installment__timeline strong,
html[data-theme="dark"] .ac-pass-faq__list summary{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-section__head p,
html[data-theme="dark"] .ac-pass-subscription__copy p,
html[data-theme="dark"] .ac-pass-zone-card__body p,
html[data-theme="dark"] .ac-pass-price-card p,
html[data-theme="dark"] .ac-pass-price-card li,
html[data-theme="dark"] .ac-pass-start__grid p,
html[data-theme="dark"] .ac-pass-compare p,
html[data-theme="dark"] .ac-pass-faq__list p{
  color:#64748b !important;
}

@media(max-width:1320px){
  .ac-pass-intent__grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:1180px){
  .ac-pass-hero__inner,
  .ac-pass-subscription__layout,
  .ac-pass-visit__panel,
  .ac-pass-contact__panel,
  .ac-pass-section__head--split{
    grid-template-columns:1fr !important;
  }

  .ac-pass-hero__content{
    transform:none !important;
  }

  .ac-pass-included__grid,
  .ac-pass-price-grid,
  .ac-pass-installment__timeline{
    grid-template-columns:1fr !important;
  }

  .ac-pass-price-card--best{
    transform:none !important;
  }

  .ac-pass-start__grid,
  .ac-pass-gallery__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-pass{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .ac-pass-wrap,
  .ac-pass-hero__inner{
    width:calc(100% - 24px) !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .ac-pass-hero{
    min-height:100svh !important;
    padding:calc(var(--ac-header-height) + 52px) 0 48px !important;
  }

  .ac-pass-hero h1{
    font-size:clamp(38px,11.2vw,60px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
  }

  .ac-pass-hero__lead{
    font-size:18px !important;
  }

  .ac-pass-hero__actions,
  .ac-pass-subscription__actions,
  .ac-pass-visit__actions,
  .ac-pass-contact__buttons{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .ac-pass .ach-btn{
    width:100% !important;
  }

  .ac-pass-hero__deal{
    padding:20px !important;
    border-radius:26px !important;
  }

  .ac-pass-hero__deal-grid,
  .ac-pass-intent__head,
  .ac-pass-intent__grid,
  .ac-pass-included__notes,
  .ac-pass-compare,
  .ac-pass-start__grid,
  .ac-pass-contact__cards,
  .ac-pass-gallery__grid{
    grid-template-columns:1fr !important;
  }

  .ac-pass-intent{
    margin-top:0 !important;
    padding:18px 0 46px !important;
  }

  .ac-pass-intent__panel{
    padding:20px !important;
    border-radius:28px !important;
  }

  .ac-pass-intent__head h2{
    grid-column:auto !important;
    font-size:30px !important;
  }

  .ac-pass-intent__grid a{
    min-height:auto !important;
  }

  .ac-pass-section{
    padding:52px 0 !important;
  }

  .ac-pass-section__head h2,
  .ac-pass-subscription__copy h2,
  .ac-pass-visit__content h2,
  .ac-pass-contact__copy h2{
    font-size:clamp(34px,10vw,50px) !important;
  }

  .ac-pass-subscription__copy,
  .ac-pass-visit__content,
  .ac-pass-contact__copy{
    padding:24px !important;
    border-radius:28px !important;
  }

  .ac-pass-zone-card,
  .ac-pass-price-card,
  .ac-pass-gallery__item{
    border-radius:26px !important;
  }

  .ac-pass-zone-card{
    min-height:auto !important;
  }

  .ac-pass-zone-card__photo{
    min-height:210px !important;
  }

  .ac-pass-gallery__item{
    min-height:260px !important;
  }

  .ac-pass-installment__timeline article,
  .ac-pass-start__grid article{
    min-height:auto !important;
  }

  .ac-pass-faq{
    padding-bottom:62px !important;
  }
}


/* =========================
   SINGLE PASS V10 — APPROVED BLOCKS 4-8
   Точечные стили только для новых уникальных элементов страницы.
   Системные кнопки ach-btn / ach-btn--primary / ach-btn--ghost не переопределяются.
========================= */

.ac-pass-installment__note{
  margin-top:18px !important;
  padding:20px 22px !important;
  border-radius:24px !important;
  background:#1E3A55 !important;
  color:#ffffff !important;
  font-size:16px !important;
  line-height:1.55 !important;
  box-shadow:0 16px 42px rgba(8,28,62,.10) !important;
}

.ac-pass-installment__note strong{
  color:#ffffff !important;
}

.ac-pass-installment__actions,
.ac-pass-start__actions{
  margin-top:24px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}

.ac-pass-visit__rules{
  grid-template-columns:1fr !important;
}

@media(max-width:720px){
  .ac-pass-installment__note{
    padding:18px !important;
    border-radius:20px !important;
    font-size:15px !important;
  }

  .ac-pass-installment__actions .ach-btn,
  .ac-pass-start__actions .ach-btn{
    width:100% !important;
  }
}


/* =========================
   SINGLE PASS V11 — UNIFIED DECISION BLOCK
   Блоки 4–8 объединены в одну секцию: стоимость, не подписка, рассрочка, гостевой визит и старт.
   Системные кнопки ach-btn / ach-btn--primary / ach-btn--ghost не переопределяются.
========================= */

.ac-pass-decision{
  padding:68px 0 72px !important;
  background:rgba(255,255,255,.22) !important;
}

.ac-pass-decision__panel{
  position:relative !important;
  overflow:hidden !important;
  padding:34px !important;
  border-radius:40px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.12),transparent 34rem),
    radial-gradient(circle at 88% 12%,rgba(7,135,189,.10),transparent 32rem),
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.88)) !important;
  border:1px solid rgba(255,255,255,.88) !important;
  box-shadow:0 24px 72px rgba(8,28,62,.12) !important;
}

.ac-pass-decision__panel::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.040) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.030) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.34 !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.70),transparent 88%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.70),transparent 88%) !important;
}

.ac-pass-decision__panel > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-decision__head{
  max-width:1060px !important;
  margin:0 0 22px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}

.ac-pass-decision__head h2{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(38px,4.6vw,78px) !important;
  line-height:.94 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  text-align:left !important;
}

.ac-pass-decision__head p{
  max-width:780px !important;
  margin:18px 0 0 !important;
  color:#64748b !important;
  font-size:17px !important;
  line-height:1.68 !important;
  text-align:left !important;
}

.ac-pass-decision__module{
  margin-top:18px !important;
}

.ac-pass-decision__module--prices{
  margin-top:22px !important;
}

.ac-pass-trust-strip{
  padding:20px !important;
  border-radius:30px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
  display:grid !important;
  grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-trust-strip__copy{
  padding:10px 8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
}

.ac-pass-trust-strip__copy h3,
.ac-pass-decision-card h3,
.ac-pass-start-compact__head h3{
  margin:14px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.5vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
  text-align:left !important;
}

.ac-pass-trust-strip__copy p,
.ac-pass-decision-card > p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.65 !important;
  text-align:left !important;
}

.ac-pass-trust-strip .ac-pass-compare{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-pass-trust-strip .ac-pass-compare article{
  min-height:150px !important;
  padding:18px !important;
  border-radius:22px !important;
  box-shadow:0 10px 24px rgba(8,28,62,.045) !important;
}

.ac-pass-trust-strip .ac-pass-compare strong{
  margin-top:14px !important;
  font-size:18px !important;
}

.ac-pass-trust-strip .ac-pass-compare p{
  margin-top:9px !important;
  font-size:14px !important;
  line-height:1.48 !important;
}

.ac-pass-decision__split{
  display:grid !important;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-decision-card{
  position:relative !important;
  overflow:hidden !important;
  padding:28px !important;
  border-radius:32px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
}

.ac-pass-decision-card--visit{
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.25),transparent 28rem),
    radial-gradient(circle at 86% 18%,rgba(239,51,64,.16),transparent 26rem),
    linear-gradient(135deg,#071936 0%,#10283f 52%,#06101f 100%) !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#fff !important;
  box-shadow:0 18px 46px rgba(8,28,62,.14) !important;
}

.ac-pass-decision-card--visit h3,
.ac-pass-decision-card--visit p{
  color:#fff !important;
}

.ac-pass-decision-card--visit > p{
  color:rgba(255,255,255,.74) !important;
}

.ac-pass-decision-card .ac-pass-installment__timeline{
  margin-top:20px !important;
  gap:10px !important;
}

.ac-pass-decision-card .ac-pass-installment__timeline article{
  min-height:190px !important;
  padding:18px !important;
  border-radius:22px !important;
  box-shadow:0 10px 24px rgba(8,28,62,.045) !important;
}

.ac-pass-decision-card .ac-pass-installment__timeline strong{
  margin-top:18px !important;
  font-size:clamp(34px,3vw,52px) !important;
}

.ac-pass-decision-card .ac-pass-installment__timeline p{
  margin-top:14px !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.ac-pass-decision-card .ac-pass-installment__timeline article::after{
  font-size:64px !important;
  right:14px !important;
  bottom:8px !important;
}

.ac-pass-decision-card .ac-pass-installment__note{
  margin-top:12px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
}

.ac-pass-decision-card .ac-pass-visit__actions{
  margin-top:22px !important;
}

.ac-pass-decision-card .ac-pass-visit__rules{
  margin-top:18px !important;
  padding:0 !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-pass-decision-card .ac-pass-visit__rules article{
  padding:16px !important;
  border-radius:20px !important;
}

.ac-pass-decision-card .ac-pass-visit__rules strong{
  font-size:17px !important;
}

.ac-pass-decision-card .ac-pass-visit__rules p{
  font-size:14px !important;
  line-height:1.48 !important;
}

.ac-pass-start-compact{
  padding:24px !important;
  border-radius:32px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
}

.ac-pass-start-compact__head{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  margin-bottom:18px !important;
}

.ac-pass-start-compact .ac-pass-start__grid{
  gap:12px !important;
}

.ac-pass-start-compact .ac-pass-start__grid article{
  min-height:176px !important;
  padding:18px !important;
  border-radius:22px !important;
  box-shadow:0 10px 24px rgba(8,28,62,.045) !important;
}

.ac-pass-start-compact .ac-pass-start__grid strong{
  margin-top:14px !important;
  font-size:18px !important;
}

.ac-pass-start-compact .ac-pass-start__grid p{
  margin-top:9px !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.ac-pass-start-compact .ac-pass-start__actions{
  margin-top:18px !important;
}

html[data-theme="dark"] .ac-pass-decision__panel,
html[data-theme="dark"] .ac-pass-trust-strip,
html[data-theme="dark"] .ac-pass-decision-card,
html[data-theme="dark"] .ac-pass-start-compact{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-decision__head h2,
html[data-theme="dark"] .ac-pass-trust-strip__copy h3,
html[data-theme="dark"] .ac-pass-decision-card h3,
html[data-theme="dark"] .ac-pass-start-compact__head h3{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-decision__head p,
html[data-theme="dark"] .ac-pass-trust-strip__copy p,
html[data-theme="dark"] .ac-pass-decision-card > p{
  color:#64748b !important;
}

html[data-theme="dark"] .ac-pass-decision-card--visit,
html[data-theme="dark"] .ac-pass-decision-card--visit h3{
  color:#ffffff !important;
}

html[data-theme="dark"] .ac-pass-decision-card--visit{
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.25),transparent 28rem),
    radial-gradient(circle at 86% 18%,rgba(239,51,64,.16),transparent 26rem),
    linear-gradient(135deg,#071936 0%,#10283f 52%,#06101f 100%) !important;
}

html[data-theme="dark"] .ac-pass-decision-card--visit > p{
  color:rgba(255,255,255,.74) !important;
}

@media(max-width:1320px){
  .ac-pass-trust-strip{
    grid-template-columns:1fr !important;
  }

  .ac-pass-trust-strip .ac-pass-compare{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:1180px){
  .ac-pass-decision__split{
    grid-template-columns:1fr !important;
  }

  .ac-pass-decision-card .ac-pass-installment__timeline{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:720px){
  .ac-pass-decision{
    padding:46px 0 52px !important;
  }

  .ac-pass-decision__panel{
    padding:20px !important;
    border-radius:30px !important;
  }

  .ac-pass-decision__head{
    margin-bottom:18px !important;
  }

  .ac-pass-decision__head h2{
    font-size:clamp(34px,10vw,50px) !important;
  }

  .ac-pass-decision__head p{
    font-size:15px !important;
    line-height:1.58 !important;
  }

  .ac-pass-decision__module{
    margin-top:12px !important;
  }

  .ac-pass-trust-strip,
  .ac-pass-decision-card,
  .ac-pass-start-compact{
    padding:18px !important;
    border-radius:26px !important;
  }

  .ac-pass-trust-strip .ac-pass-compare,
  .ac-pass-decision-card .ac-pass-visit__rules,
  .ac-pass-start-compact .ac-pass-start__grid{
    grid-template-columns:1fr !important;
  }

  .ac-pass-decision-card .ac-pass-installment__timeline article,
  .ac-pass-start-compact .ac-pass-start__grid article{
    min-height:auto !important;
  }

  .ac-pass-start-compact .ac-pass-start__actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
}


/* =========================
   SINGLE PASS V12 — VIDEO GALLERY BLOCK
   Видео и фото спортивных зон единого абонемента.
   Системные кнопки и общие компоненты не переопределяются.
========================= */

.ac-pass-gallery__video-card{
  margin-top:26px !important;
  margin-bottom:18px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.42fr) minmax(300px,.58fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-gallery__video{
  position:relative !important;
  overflow:hidden !important;
  border-radius:34px !important;
  background:#071936 !important;
  box-shadow:0 18px 48px rgba(8,28,62,.12) !important;
  aspect-ratio:16 / 9 !important;
}

.ac-pass-gallery__video iframe{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  border:0 !important;
}

.ac-pass-gallery__video-caption{
  position:relative !important;
  overflow:hidden !important;
  padding:26px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(45,127,255,.16),transparent 24rem),
    #ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  min-height:100% !important;
}

.ac-pass-gallery__video-caption::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.042) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.032) 1px,transparent 1px) !important;
  background-size:50px 50px !important;
  opacity:.38 !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 88%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 88%) !important;
}

.ac-pass-gallery__video-caption > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-gallery__video-caption span{
  width:max-content !important;
  max-width:100% !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-gallery__video-caption strong{
  display:block !important;
  margin-top:18px !important;
  color:#071936 !important;
  font-size:clamp(28px,2.35vw,42px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
}

.ac-pass-gallery__video-caption p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.ac-pass-gallery__item--large{
  grid-column:span 2 !important;
}

.ac-pass-gallery__item figcaption{
  min-height:auto !important;
  padding:14px 16px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:7px !important;
}

.ac-pass-gallery__item figcaption strong{
  color:#fff !important;
  font-size:15px !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}

.ac-pass-gallery__item figcaption span{
  color:rgba(255,255,255,.72) !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

.ac-pass-gallery__sauna-note{
  margin-top:18px !important;
  padding:24px 26px !important;
  border-radius:28px !important;
  background:#1E3A55 !important;
  color:#fff !important;
  display:grid !important;
  grid-template-columns:minmax(220px,.35fr) minmax(0,.65fr) !important;
  gap:18px !important;
  align-items:center !important;
  box-shadow:0 18px 46px rgba(8,28,62,.14) !important;
}

.ac-pass-gallery__sauna-note strong{
  display:block !important;
  color:#fff !important;
  font-size:clamp(22px,2vw,34px) !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.ac-pass-gallery__sauna-note p{
  margin:0 !important;
  color:rgba(255,255,255,.76) !important;
  font-size:16px !important;
  line-height:1.58 !important;
}

html[data-theme="dark"] .ac-pass-gallery__video-caption{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-gallery__video-caption strong{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-gallery__video-caption p{
  color:#64748b !important;
}

@media(max-width:1180px){
  .ac-pass-gallery__video-card{
    grid-template-columns:1fr !important;
  }

  .ac-pass-gallery__video-caption{
    min-height:auto !important;
  }

  .ac-pass-gallery__item--large{
    grid-column:auto !important;
  }
}

@media(max-width:720px){
  .ac-pass-gallery__video-card{
    margin-top:20px !important;
    margin-bottom:14px !important;
    gap:14px !important;
  }

  .ac-pass-gallery__video{
    border-radius:26px !important;
  }

  .ac-pass-gallery__video-caption{
    padding:22px !important;
    border-radius:26px !important;
  }

  .ac-pass-gallery__video-caption strong{
    font-size:28px !important;
  }

  .ac-pass-gallery__sauna-note{
    padding:20px !important;
    border-radius:24px !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .ac-pass-gallery__sauna-note strong{
    font-size:25px !important;
  }
}


/* =========================
   SINGLE PASS V13 — EXPANDED PHOTO GALLERY
   Видео + редакционные группы фото: зал, люди, фитнес, манеж.
   Системные кнопки и общие компоненты не переопределяются.
========================= */

/* Манеж в блоке «Что входит» и в галерее — утверждённое фото manege-01.webp */
.ac-pass-zone-card--manege .ac-pass-zone-card__photo,
.ac-pass-gallery__item--manege{
  background:linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.64)),url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

.ac-pass-photo-sets{
  margin-top:20px !important;
  display:grid !important;
  gap:22px !important;
}

.ac-pass-photo-set{
  position:relative !important;
  overflow:hidden !important;
  padding:22px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.10),transparent 28rem),
    #ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.08) !important;
}

.ac-pass-photo-set::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.032) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.026) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.42 !important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.70),transparent 82%) !important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.70),transparent 82%) !important;
}

.ac-pass-photo-set > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-photo-set__head{
  display:grid !important;
  grid-template-columns:minmax(0,.38fr) minmax(0,.62fr) !important;
  gap:10px 22px !important;
  align-items:end !important;
  margin-bottom:18px !important;
}

.ac-pass-photo-set__head span{
  width:max-content !important;
  max-width:100% !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-photo-set__head h3{
  grid-column:1 / 2 !important;
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.6vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-pass-photo-set__head p{
  grid-column:2 / 3 !important;
  grid-row:1 / 3 !important;
  margin:0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.ac-pass-photo-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-pass-photo-card{
  position:relative !important;
  min-height:220px !important;
  margin:0 !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#071936 !important;
  box-shadow:0 12px 30px rgba(8,28,62,.08) !important;
}

.ac-pass-photo-card--hero{
  grid-column:span 2 !important;
  grid-row:span 2 !important;
  min-height:452px !important;
}

.ac-pass-photo-card--wide{
  grid-column:span 2 !important;
}

.ac-pass-photo-card--panorama{
  grid-column:1 / -1 !important;
  min-height:430px !important;
}

.ac-pass-photo-card img{
  width:100% !important;
  height:100% !important;
  min-height:inherit !important;
  object-fit:cover !important;
  display:block !important;
  filter:saturate(1.02) contrast(1.02) !important;
  transition:transform .35s ease !important;
}

.ac-pass-photo-card:hover img{
  transform:scale(1.035) !important;
}

.ac-pass-photo-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(5,8,20,0) 44%,rgba(5,8,20,.72) 100%) !important;
}

.ac-pass-photo-card figcaption{
  position:absolute !important;
  left:14px !important;
  right:14px !important;
  bottom:14px !important;
  z-index:1 !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  background:rgba(5,8,20,.42) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:#fff !important;
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}

.ac-pass-photo-card figcaption strong{
  color:#fff !important;
  font-size:13px !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ac-pass-photo-card figcaption span{
  color:rgba(255,255,255,.72) !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:400 !important;
}

.ac-pass-photo-grid--fitness{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.ac-pass-photo-grid--fitness .ac-pass-photo-card{
  min-height:330px !important;
}

.ac-pass-photo-grid--manege{
  grid-template-columns:1fr !important;
}

html[data-theme="dark"] .ac-pass-photo-set{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-photo-set__head h3{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-photo-set__head p{
  color:#64748b !important;
}

@media(max-width:1180px){
  .ac-pass-photo-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ac-pass-photo-card--hero,
  .ac-pass-photo-card--wide{
    grid-column:span 2 !important;
  }

  .ac-pass-photo-card--panorama{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:860px){
  .ac-pass-photo-set__head{
    grid-template-columns:1fr !important;
  }

  .ac-pass-photo-set__head h3,
  .ac-pass-photo-set__head p{
    grid-column:auto !important;
    grid-row:auto !important;
  }

  .ac-pass-photo-grid,
  .ac-pass-photo-grid--fitness{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-pass-photo-card--hero,
  .ac-pass-photo-card--wide,
  .ac-pass-photo-card--panorama{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:720px){
  .ac-pass-photo-sets{
    gap:16px !important;
  }

  .ac-pass-photo-set{
    padding:16px !important;
    border-radius:28px !important;
  }

  .ac-pass-photo-set__head{
    margin-bottom:14px !important;
  }

  .ac-pass-photo-set__head h3{
    font-size:30px !important;
  }

  .ac-pass-photo-grid,
  .ac-pass-photo-grid--fitness{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .ac-pass-photo-card,
  .ac-pass-photo-card--hero,
  .ac-pass-photo-card--wide,
  .ac-pass-photo-card--panorama,
  .ac-pass-photo-grid--fitness .ac-pass-photo-card{
    grid-column:auto !important;
    grid-row:auto !important;
    min-height:240px !important;
    border-radius:22px !important;
  }

  .ac-pass-photo-card figcaption{
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
  }
}


/* =========================
   SINGLE PASS V14 — PHOTO HEIGHT + COMPACT GALLERY
   1) В блоке «Что входит» фото-карточки выше.
   2) Фото/видео-блок компактнее: одна общая галерея без подкатегорий.
   Системные кнопки и общие компоненты не переопределяются.
========================= */

.ac-pass-zone-card__photo{
  min-height:310px !important;
}

.ac-pass-zone-card{
  min-height:500px !important;
}

.ac-pass-photo-sets--compact{
  margin-top:18px !important;
  display:block !important;
}

.ac-pass-photo-sets--compact .ac-pass-photo-set,
.ac-pass-photo-sets--compact .ac-pass-photo-set__head{
  display:none !important;
}

.ac-pass-photo-grid--compact{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card{
  min-height:184px !important;
  border-radius:22px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card--hero{
  grid-column:span 2 !important;
  grid-row:span 2 !important;
  min-height:378px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card--wide{
  grid-column:span 2 !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
  grid-column:span 3 !important;
  min-height:260px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption{
  padding:10px 12px !important;
  border-radius:14px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption strong{
  font-size:12px !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption span{
  font-size:11px !important;
}

@media(max-width:1180px){
  .ac-pass-zone-card__photo{
    min-height:290px !important;
  }

  .ac-pass-zone-card{
    min-height:480px !important;
  }

  .ac-pass-photo-grid--compact{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:860px){
  .ac-pass-photo-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
  }
}

@media(max-width:720px){
  .ac-pass-zone-card{
    min-height:auto !important;
  }

  .ac-pass-zone-card__photo{
    min-height:260px !important;
  }

  .ac-pass-photo-sets--compact{
    margin-top:14px !important;
  }

  .ac-pass-photo-grid--compact{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
    grid-column:auto !important;
    grid-row:auto !important;
    min-height:240px !important;
    border-radius:22px !important;
  }
}


/* =========================
   SINGLE PASS V15 — GALLERY WITHOUT EMPTY SPACES
   1) Подписи в галерее всегда под фото.
   2) Веб-галерея — ровная сетка без masonry, wide/hero/panorama-растяжений и пустых пространств.
   3) Использован утверждённый набор фото: 7 фото зала + 14 фото с людьми + 2 фитнес + манеж.
   Системные кнопки и общие компоненты не переопределяются.
========================= */

.ac-pass-photo-grid--compact{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card,
.ac-pass-photo-grid--compact .ac-pass-photo-card--hero,
.ac-pass-photo-grid--compact .ac-pass-photo-card--wide,
.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
  grid-column:auto !important;
  grid-row:auto !important;
  min-height:0 !important;
  height:auto !important;
  display:flex !important;
  flex-direction:column !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card::after{
  display:none !important;
  content:none !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card img{
  width:100% !important;
  height:230px !important;
  min-height:0 !important;
  object-fit:cover !important;
  display:block !important;
  flex:0 0 auto !important;
  border-radius:0 !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card:hover img{
  transform:none !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:auto !important;
  min-height:86px !important;
  padding:15px 16px !important;
  border-radius:0 !important;
  background:#ffffff !important;
  border:0 !important;
  border-top:1px solid rgba(8,28,62,.08) !important;
  color:#071936 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:6px !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption strong{
  color:#071936 !important;
  font-size:13px !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card figcaption span{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
}

html[data-theme="dark"] .ac-pass-photo-grid--compact .ac-pass-photo-card,
html[data-theme="dark"] .ac-pass-photo-grid--compact .ac-pass-photo-card figcaption{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-photo-grid--compact .ac-pass-photo-card figcaption strong{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-pass-photo-grid--compact .ac-pass-photo-card figcaption span{
  color:#64748b !important;
}

@media(max-width:1180px){
  .ac-pass-photo-grid--compact{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:860px){
  .ac-pass-photo-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card img{
    height:240px !important;
  }
}

@media(max-width:720px){
  .ac-pass-photo-grid--compact{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
    border-radius:22px !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card img{
    height:250px !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card figcaption{
    min-height:auto !important;
    padding:14px !important;
  }
}


/* ======================================================================
   AlexClub Single Pass V17 — Variant 1 soft cool tint for all photos
   Applies the approved soft cool tint to all photo-based blocks:
   — zone cards in “Не один зал, а несколько форматов тренировок”
   — gallery cards in “Посмотрите, где будете тренироваться”
   ====================================================================== */

/* Zone cards: gentle cool overlay with hover reveal */
.ac-pass-zone-card__photo{
  background-color:#dce8f6 !important;
  transition:transform .28s ease !important;
}

.ac-pass-zone-card__photo::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg,rgba(7,135,189,.12),rgba(30,58,85,.10)) !important;
  opacity:1 !important;
  transition:opacity .28s ease !important;
  pointer-events:none !important;
}

.ac-pass-zone-card:hover .ac-pass-zone-card__photo::after{
  opacity:0 !important;
}

.ac-pass-zone-card--gym .ac-pass-zone-card__photo,
.ac-pass-gallery__item--gym{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/gym-general-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--fitness .ac-pass-zone-card__photo,
.ac-pass-gallery__item--fitness{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/fitness-group-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--power .ac-pass-zone-card__photo,
.ac-pass-gallery__item--power{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/powerlifting-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--arm .ac-pass-zone-card__photo,
.ac-pass-gallery__item--arm{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/armwrestling-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--box .ac-pass-zone-card__photo,
.ac-pass-gallery__item--box{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/boxing-corner-01.webp") center center / cover no-repeat !important;
}
.ac-pass-zone-card--manege .ac-pass-zone-card__photo,
.ac-pass-gallery__item--manege{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/manege-02.webp") center center / cover no-repeat !important;
}

/* Photo gallery: approved variant 1 = soft cool tint with hover reveal */
.ac-pass-photo-grid--compact .ac-pass-photo-card,
.ac-pass-photo-grid--compact .ac-pass-photo-card--hero,
.ac-pass-photo-grid--compact .ac-pass-photo-card--wide,
.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama{
  position:relative !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--hero::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--wide::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:230px !important;
  background:linear-gradient(180deg,rgba(7,135,189,.12),rgba(30,58,85,.10)) !important;
  opacity:1 !important;
  pointer-events:none !important;
  transition:opacity .28s ease !important;
  z-index:1 !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card img{
  filter:brightness(.94) saturate(.92) contrast(1.03) !important;
  transition:filter .28s ease, transform .28s ease !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card:hover img,
.ac-pass-photo-grid--compact .ac-pass-photo-card--hero:hover img,
.ac-pass-photo-grid--compact .ac-pass-photo-card--wide:hover img,
.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama:hover img{
  filter:brightness(1) saturate(1.04) contrast(1.02) !important;
  transform:scale(1.03) !important;
}

.ac-pass-photo-grid--compact .ac-pass-photo-card:hover::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--hero:hover::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--wide:hover::before,
.ac-pass-photo-grid--compact .ac-pass-photo-card--panorama:hover::before{
  opacity:0 !important;
}

@media(max-width:860px){
  .ac-pass-photo-grid--compact .ac-pass-photo-card::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama::before{
    height:240px !important;
  }
}

@media(max-width:720px){
  .ac-pass-zone-card__photo::after{
    opacity:.18 !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide::before,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama::before{
    height:250px !important;
    opacity:.18 !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card img{
    filter:brightness(.98) saturate(.98) contrast(1.02) !important;
  }

  .ac-pass-photo-grid--compact .ac-pass-photo-card:hover img,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--hero:hover img,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--wide:hover img,
  .ac-pass-photo-grid--compact .ac-pass-photo-card--panorama:hover img{
    transform:none !important;
  }
}


/* ======================================================================
   AlexClub Single Pass V19 — Combined FAQ + contact final block
   Swaps the previous order of contact and FAQ, then merges them into one
   closing block: FAQ first, contact/action second.
   ====================================================================== */

.ac-pass-final{
  padding-bottom:96px !important;
}

.ac-pass-final__panel{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(380px,.78fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-pass-final__faq{
  padding:24px !important;
  border-radius:38px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.08) !important;
}

.ac-pass-final__label{
  margin:0 0 14px !important;
  color:#0787bd !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-pass-final__faq .ac-pass-faq__list{
  max-width:none !important;
  margin:0 !important;
}

.ac-pass-final__faq .ac-pass-faq__list details{
  box-shadow:none !important;
  border-color:rgba(8,28,62,.08) !important;
  background:#f8fbff !important;
}

.ac-pass-final__contact{
  display:flex !important;
  flex-direction:column !important;
  border-radius:38px !important;
  background:
    radial-gradient(circle at 14% 18%,rgba(45,127,255,.30),transparent 34rem),
    radial-gradient(circle at 88% 24%,rgba(239,51,64,.18),transparent 34rem),
    linear-gradient(135deg,#071936 0%,#10283f 48%,#06101f 100%) !important;
  box-shadow:0 24px 80px rgba(8,28,62,.18) !important;
  overflow:hidden !important;
}

.ac-pass-final__contact .ac-pass-contact__copy{
  padding:34px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.ac-pass-final__contact .ac-pass-contact__cards{
  margin-top:auto !important;
  padding:18px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
}

.ac-pass-final__contact .ac-pass-contact__cards article{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:none !important;
}

.ac-pass-final__contact .ac-pass-contact__cards strong,
.ac-pass-final__contact .ac-pass-contact__cards strong a{
  color:#fff !important;
}

html[data-theme="dark"] .ac-pass-final__faq,
html[data-theme="dark"] .ac-pass-final__faq .ac-pass-faq__list details{
  background:#ffffff !important;
  color:#071936 !important;
}

@media(max-width:1180px){
  .ac-pass-final__panel{
    grid-template-columns:1fr !important;
  }

  .ac-pass-final__contact .ac-pass-contact__cards{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-pass-final{
    padding-bottom:72px !important;
  }

  .ac-pass-final__faq{
    padding:14px !important;
    border-radius:28px !important;
  }

  .ac-pass-final__contact{
    border-radius:28px !important;
  }

  .ac-pass-final__contact .ac-pass-contact__copy{
    padding:24px !important;
  }

  .ac-pass-final__contact .ac-pass-contact__cards{
    grid-template-columns:1fr !important;
  }
}
/* =========================
   V95.2 SYSTEM — CTA / CONTACTS / TRACKING
   Системный слой для централизованных контактов, CTA и аналитики.
   Добавлен append-only: не переопределяет ach-btn / ach-btn--primary / ach-btn--ghost.
========================= */

.ac-system-contact{
  position:relative !important;
  overflow:hidden !important;
  border-radius:34px !important;
  padding:30px !important;
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.15),transparent 34rem),
    linear-gradient(180deg,#ffffff,rgba(255,255,255,.92)) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.08) !important;
}

.ac-system-contact::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.035) 1px,transparent 1px) !important;
  background-size:54px 54px !important;
  opacity:.34 !important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.74),transparent 86%) !important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.74),transparent 86%) !important;
}

.ac-system-contact > *{
  position:relative !important;
  z-index:1 !important;
}

.ac-system-contact__head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:22px !important;
  align-items:end !important;
}

.ac-system-contact__head h2{
  margin:12px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(32px,3.7vw,58px) !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ac-system-contact__head p{
  margin:0 !important;
  max-width:520px !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.62 !important;
}

.ac-system-contact__actions{
  margin-top:22px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.ac-system-contact__cards{
  margin-top:18px !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-system-contact__card{
  min-height:94px !important;
  padding:16px !important;
  border-radius:22px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:7px !important;
}

.ac-system-contact__card span{
  color:#64748b !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-system-contact__card strong{
  color:#071936 !important;
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.ac-system-contact__card a{
  color:inherit !important;
}

.ac-system-contact__trainer{
  margin-top:18px !important;
  padding:18px !important;
  border-radius:24px !important;
  background:#1E3A55 !important;
  color:#fff !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:14px !important;
  align-items:center !important;
}

.ac-system-contact__trainer span{
  display:block !important;
  color:rgba(255,255,255,.62) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-system-contact__trainer strong{
  display:block !important;
  margin-top:7px !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ac-system-contact__trainer a{
  color:#fff !important;
  font-weight:700 !important;
}

.ac-menu__socials,
.ac-footer__messengers{
  grid-template-columns:repeat(2,1fr) !important;
}

/* Служебные hidden-поля не должны занимать место в формах */
input[data-ac-context-field],
input[name^="ac_source_"]{
  display:none !important;
}

html[data-theme="dark"] .ac-system-contact,
html[data-theme="dark"] .ac-system-contact__card{
  background:#ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ac-system-contact__head h2,
html[data-theme="dark"] .ac-system-contact__card strong{
  color:#071936 !important;
}

html[data-theme="dark"] .ac-system-contact__head p,
html[data-theme="dark"] .ac-system-contact__card span{
  color:#64748b !important;
}

@media(max-width:920px){
  .ac-system-contact__head{
    grid-template-columns:1fr !important;
  }

  .ac-system-contact__cards{
    grid-template-columns:1fr !important;
  }

  .ac-system-contact__trainer{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:720px){
  .ac-system-contact{
    padding:22px !important;
    border-radius:28px !important;
  }

  .ac-system-contact__actions .ach-btn{
    width:100% !important;
  }
}
/* =========================
   V95.3 HOME — LEAD MODAL
   Контекстная форма заявки с главной страницы.
   Не переопределяет системные кнопки ach-btn.
========================= */

body.ac-lead-modal-open{
  overflow:hidden !important;
}

.ach-lead-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:3000 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  color:#071936 !important;
}

.ach-lead-modal.is-open{
  display:flex !important;
}

.ach-lead-modal__backdrop{
  position:absolute !important;
  inset:0 !important;
  border:0 !important;
  background:rgba(3,8,23,.68) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  cursor:pointer !important;
}

.ach-lead-modal__panel{
  position:relative !important;
  width:min(680px,100%) !important;
  max-height:min(760px,calc(100vh - 48px)) !important;
  overflow:auto !important;
  padding:30px !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.12),transparent 26rem),
    #ffffff !important;
  border:1px solid rgba(255,255,255,.86) !important;
  box-shadow:0 34px 110px rgba(0,0,0,.34) !important;
}

.ach-lead-modal__panel::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.028) 1px,transparent 1px) !important;
  background-size:52px 52px !important;
  opacity:.42 !important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 82%) !important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 82%) !important;
}

.ach-lead-modal__panel > *{
  position:relative !important;
  z-index:1 !important;
}

.ach-lead-modal__close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  z-index:2 !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:15px !important;
  background:#071936 !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1 !important;
  cursor:pointer !important;
}

.ach-lead-modal__head{
  padding-right:48px !important;
  margin-bottom:20px !important;
}

.ach-lead-modal__head h2{
  margin:14px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3.4vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ach-lead-modal__head p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.58 !important;
}

.ach-lead-modal__form{
  margin-top:18px !important;
}

.ach-lead-modal__form form{
  display:grid !important;
  gap:12px !important;
}

.ach-lead-modal__form label,
.ach-lead-modal__field{
  display:grid !important;
  gap:7px !important;
  color:#1E3A55 !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
}

.ach-lead-modal__form input[type="text"],
.ach-lead-modal__form input[type="tel"],
.ach-lead-modal__form input[type="email"],
.ach-lead-modal__form textarea{
  width:100% !important;
  min-height:52px !important;
  padding:13px 15px !important;
  border-radius:16px !important;
  border:1px solid rgba(8,28,62,.12) !important;
  background:#f7fbff !important;
  color:#071936 !important;
  font-size:15px !important;
  font-weight:400 !important;
  outline:none !important;
}

.ach-lead-modal__form textarea{
  min-height:118px !important;
  resize:vertical !important;
}

.ach-lead-modal__form input:focus,
.ach-lead-modal__form textarea:focus{
  border-color:rgba(7,135,189,.38) !important;
  box-shadow:0 0 0 4px rgba(7,135,189,.10) !important;
}

.ach-lead-modal__form input[type="submit"],
.ach-lead-modal__form button[type="submit"]{
  width:100% !important;
  min-height:54px !important;
  border:0 !important;
  border-radius:16px !important;
  background:var(--ac-red) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  cursor:pointer !important;
  box-shadow:0 14px 30px rgba(239,51,64,.26) !important;
}

.ach-lead-modal__form .wpcf7-not-valid-tip{
  margin-top:6px !important;
  color:var(--ac-red) !important;
  font-size:12px !important;
}

.ach-lead-modal__form .wpcf7-response-output{
  margin:6px 0 0 !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.ach-lead-modal__fallback{
  margin-top:16px !important;
  padding-top:14px !important;
  border-top:1px solid rgba(8,28,62,.10) !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
}

.ach-lead-modal__fallback span{
  width:100% !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.ach-lead-modal__fallback a{
  min-height:38px !important;
  padding:0 13px !important;
  border-radius:12px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#071936 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

html[data-theme="dark"] .ach-lead-modal__panel{
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.12),transparent 26rem),
    #ffffff !important;
  color:#071936 !important;
}

html[data-theme="dark"] .ach-lead-modal__head h2{
  color:#071936 !important;
}

html[data-theme="dark"] .ach-lead-modal__head p{
  color:#64748b !important;
}

@media(max-width:720px){
  .ach-lead-modal{
    padding:12px !important;
    align-items:flex-end !important;
  }

  .ach-lead-modal__panel{
    max-height:calc(100svh - 24px) !important;
    padding:22px !important;
    border-radius:26px !important;
  }

  .ach-lead-modal__head{
    padding-right:40px !important;
  }

  .ach-lead-modal__head p{
    font-size:15px !important;
  }
}


/* =========================
   V95.4 HOME — CONTACT CHOICE MODAL
   Быстрое окно выбора канала связи вместо формы.
   Не меняет системные кнопки ach-btn/ach-btn--primary/ach-btn--ghost.
========================= */

.ach-contact-choice{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:20px !important;
}

.ach-contact-choice .ach-btn{
  width:100% !important;
  min-height:56px !important;
}

.ach-contact-choice__trust{
  margin-top:16px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  background:rgba(7,135,189,.08) !important;
  border:1px solid rgba(7,135,189,.14) !important;
  display:grid !important;
  gap:6px !important;
}

.ach-contact-choice__trust strong{
  color:#1E3A55 !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ach-contact-choice__trust span{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

html[data-theme="dark"] .ach-contact-choice__trust{
  background:rgba(7,135,189,.08) !important;
  border-color:rgba(7,135,189,.14) !important;
}

html[data-theme="dark"] .ach-contact-choice__trust strong{
  color:#1E3A55 !important;
}

html[data-theme="dark"] .ach-contact-choice__trust span{
  color:#64748b !important;
}

@media(max-width:560px){
  .ach-contact-choice{
    grid-template-columns:1fr !important;
  }
}

/* =========================
   V95.6 HOME — CSS TARGET CONTACT MODALS
   Окна выбора связи работают без JavaScript.
   Кнопки ведут на отдельные #id модальных окон, CSS открывает их через :target.
   Системные кнопки ach-btn / ach-btn--primary / ach-btn--ghost не переопределяются.
========================= */

.ach-lead-modal:target{
  display:flex !important;
}

.ach-lead-modal:target .ach-lead-modal__panel{
  animation:achCssTargetModalIn .18s ease both;
}

.ach-lead-modal__backdrop[href]{
  display:block !important;
  text-decoration:none !important;
}

.ach-lead-modal__close[href]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
}

@keyframes achCssTargetModalIn{
  from{
    opacity:0;
    transform:translateY(10px) scale(.985);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce){
  .ach-lead-modal:target .ach-lead-modal__panel{
    animation:none !important;
  }
}

/* =========================
   V95.7 HOME — CONTACT MODAL NO-SCROLL FIX
   Модальное окно открывается выше липкого header/menu и не требует прокрутки страницы.
   JS перехватывает hash-ссылки, а :target остается только резервным fallback.
========================= */

.ach-lead-modal{
  z-index:2147483000 !important;
  isolation:isolate !important;
}

.ach-lead-modal.is-open{
  display:flex !important;
}

.ach-lead-modal.is-open .ach-lead-modal__panel{
  animation:achCssTargetModalIn .18s ease both;
}

body.ac-lead-modal-open .ac-header,
body.ac-lead-modal-open .ac-menu{
  pointer-events:none !important;
}

body.ac-lead-modal-open .ach-lead-modal{
  pointer-events:auto !important;
}

@media (prefers-reduced-motion: reduce){
  .ach-lead-modal.is-open .ach-lead-modal__panel{
    animation:none !important;
  }
}

/* =========================
   V95.8 HOME — NATIVE DIALOG CONTACT MODAL
   Третий вариант окна связи: нативный <dialog>.
   Не использует hash-якоря, не прокручивает страницу и открывается поверх sticky header.
   Системные ach-btn / ach-btn--primary / ach-btn--ghost не переопределяются.
========================= */

.ach-contact-dialog-trigger{
  border:0 !important;
  cursor:pointer !important;
  font-family:inherit !important;
}

.ach-contact-dialog{
  width:min(680px,calc(100% - 32px)) !important;
  max-width:680px !important;
  max-height:calc(100dvh - 40px) !important;
  margin:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:30px !important;
  background:transparent !important;
  color:#071936 !important;
  overflow:visible !important;
  z-index:2147483647 !important;
}

.ach-contact-dialog::backdrop{
  background:rgba(3,8,23,.72) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}

.ach-contact-dialog[open]{
  animation:achContactDialogFade .18s ease both !important;
}

.ach-contact-dialog__panel{
  position:relative !important;
  width:100% !important;
  max-height:calc(100dvh - 40px) !important;
  overflow:auto !important;
  padding:30px !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.12),transparent 26rem),
    #ffffff !important;
  border:1px solid rgba(255,255,255,.86) !important;
  box-shadow:0 34px 110px rgba(0,0,0,.34) !important;
}

.ach-contact-dialog__panel::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.028) 1px,transparent 1px) !important;
  background-size:52px 52px !important;
  opacity:.42 !important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 82%) !important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 82%) !important;
}

.ach-contact-dialog__panel > *{
  position:relative !important;
  z-index:1 !important;
}

.ach-contact-dialog__panel form[method="dialog"]{
  margin:0 !important;
  padding:0 !important;
}

.ach-contact-dialog__close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  z-index:3 !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:15px !important;
  background:#071936 !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1 !important;
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.ach-contact-dialog__head{
  padding-right:48px !important;
  margin-bottom:20px !important;
}

.ach-contact-dialog__head h2{
  margin:14px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3.4vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ach-contact-dialog__head p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.58 !important;
}

@keyframes achContactDialogFade{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

html[data-theme="dark"] .ach-contact-dialog__panel{
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.12),transparent 26rem),
    #ffffff !important;
  color:#071936 !important;
}

@media(max-width:720px){
  .ach-contact-dialog{
    width:calc(100% - 20px) !important;
    max-height:calc(100dvh - 20px) !important;
  }
  .ach-contact-dialog__panel{
    max-height:calc(100dvh - 20px) !important;
    padding:22px !important;
    border-radius:26px !important;
  }
  .ach-contact-dialog__head{
    padding-right:40px !important;
  }
  .ach-contact-dialog__head p{
    font-size:15px !important;
  }
}

@media (prefers-reduced-motion: reduce){
  .ach-contact-dialog[open]{animation:none !important;}
}


/* =========================
   V95.9 HOME — NATIVE DIALOG FIX
   Исправление окна выбора связи:
   1) dialog фиксируется в top-layer и не влияет на прокрутку страницы;
   2) крестик закрытия работает как обычная кнопка, без form submit;
   3) слой окна выше липкого меню.
========================= */

.ach-contact-dialog{
  position:fixed !important;
  inset:0 !important;
  margin:auto !important;
  overscroll-behavior:contain !important;
  z-index:2147483647 !important;
}

.ach-contact-dialog[open]{
  display:block !important;
}

.ach-contact-dialog__close{
  appearance:none !important;
  -webkit-appearance:none !important;
}

.ach-contact-dialog__panel{
  overscroll-behavior:contain !important;
}

body:has(.ach-contact-dialog[open]) .ac-header,
body:has(.ach-contact-dialog[open]) .ac-menu{
  z-index:1 !important;
}


/* ======================================================================
   V95.10 HOME — PHOTO TINT + UNIFIED MEDIA HEIGHT
   Основано на утвержденном мягком холодном тонировании страницы
   «Единый абонемент». Применяется только к фото-блокам главной:
   — «Пространство спортивных возможностей»;
   — «Соревнования и события, которые проходят у нас».
   ====================================================================== */

/* Material base: use clean image backgrounds, then add the same soft cool tint as Single Pass */
.ach-material-feature__photo,
.ach-material-sport-card__photo{
  position:relative !important;
  min-height:230px !important;
  background-color:#dce8f6 !important;
}

.ach-material-feature__photo::after,
.ach-material-sport-card__photo::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(180deg,rgba(7,135,189,.12),rgba(30,58,85,.10)) !important;
  opacity:1 !important;
  pointer-events:none !important;
  transition:opacity .28s ease !important;
}

.ach-material-feature:hover .ach-material-feature__photo::after,
.ach-material-sport-card:hover .ach-material-sport-card__photo::after{
  opacity:0 !important;
}

.ach-material-feature__photo::before,
.ach-material-sport-card__photo::before{
  z-index:2 !important;
}

.ach-material-feature__badges,
.ach-material-sport-card__photo span{
  position:relative !important;
  z-index:3 !important;
}

.ach-material-feature__photo--manege{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

.ach-material-feature__photo--gym{
  background:url("https://alexclub.ru/wp-content/uploads/2025/10/1-min-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-feature__photo--fitness{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/fitness-group-02.webp") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--football{
  background:url("https://alexclub.ru/wp-content/uploads/2026/04/fut-4.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--tennis{
  background:url("https://alexclub.ru/wp-content/uploads/2026/04/ten-3-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--volleyball{
  background:url("https://alexclub.ru/wp-content/uploads/2026/04/vb-5-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--basketball{
  background:url("https://alexclub.ru/wp-content/uploads/2026/04/basket-zal-3-1.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--badminton{
  background:url("https://alexclub.ru/wp-content/uploads/2026/05/bad-8-scaled.jpg") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--tabletennis{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-nastolnogo-tennisa.webp") center center / cover no-repeat !important;
}

.ach-material-sport-card__photo--combat{
  background:url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-edinoborstv-ringi.webp") center center / cover no-repeat !important;
}

/* Events gallery: same soft cool tint + same working photo height */
.ach-events-gallery__card{
  min-height:230px !important;
  position:relative !important;
  background:#dce8f6 !important;
}

.ach-events-gallery__card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(180deg,rgba(7,135,189,.12),rgba(30,58,85,.10)) !important;
  opacity:1 !important;
  pointer-events:none !important;
  transition:opacity .28s ease !important;
}

.ach-events-gallery__card::after{
  z-index:2 !important;
}

.ach-events-gallery__card div{
  z-index:3 !important;
}

.ach-events-gallery__card img{
  filter:brightness(.94) saturate(.92) contrast(1.03) !important;
  transition:filter .28s ease, transform .28s ease !important;
}

.ach-events-gallery__card:hover img{
  filter:brightness(1) saturate(1.04) contrast(1.02) !important;
  transform:scale(1.035) !important;
}

.ach-events-gallery__card:hover::before{
  opacity:0 !important;
}

@media(max-width:1180px){
  .ach-material-feature__photo,
  .ach-material-sport-card__photo,
  .ach-events-gallery__card{
    min-height:230px !important;
  }
}

@media(max-width:720px){
  .ach-material-feature__photo,
  .ach-material-sport-card__photo,
  .ach-events-gallery__card{
    min-height:240px !important;
  }

  .ach-material-feature__photo::after,
  .ach-material-sport-card__photo::after,
  .ach-events-gallery__card::before{
    opacity:.18 !important;
  }

  .ach-events-gallery__card img{
    filter:brightness(.98) saturate(.98) contrast(1.02) !important;
  }

  .ach-events-gallery__card:hover img{
    transform:none !important;
  }
}


/* ======================================================================
   V95.11 HOME — LARGER PHOTO HEIGHT + EVENTS CAPTION TYPOGRAPHY
   Точечная правка главной:
   — увеличена высота фото в блоке «Пространство спортивных возможностей»;
   — увеличена высота фото в блоке «Соревнования и события, которые проходят у нас»;
   — подписи фото в галерее событий приведены к более спокойной типографике
     карточек блока материальной базы: меньше жирность, мягче размер и трекинг.
   ====================================================================== */

/* Блок «Пространство спортивных возможностей»: фото больше и визуально увереннее */
@media(min-width:1181px){
  .ach-material-feature__photo{
    min-height:360px !important;
  }

  .ach-material-sport-card__photo{
    min-height:300px !important;
  }

  .ach-events-gallery__card{
    min-height:350px !important;
  }
}

@media(min-width:1421px){
  .ach-material-feature__photo{
    min-height:380px !important;
  }

  .ach-material-sport-card__photo{
    min-height:320px !important;
  }

  .ach-events-gallery__card{
    min-height:370px !important;
  }
}

@media(min-width:1025px) and (max-width:1180px){
  .ach-material-feature__photo{
    min-height:340px !important;
  }

  .ach-material-sport-card__photo,
  .ach-events-gallery__card{
    min-height:300px !important;
  }
}

@media(max-width:1024px){
  .ach-material-feature__photo{
    min-height:320px !important;
  }

  .ach-material-sport-card__photo,
  .ach-events-gallery__card{
    min-height:280px !important;
  }
}

@media(max-width:720px){
  .ach-material-feature__photo,
  .ach-material-sport-card__photo,
  .ach-events-gallery__card{
    min-height:270px !important;
  }
}

/* Галерея событий: подписи не должны быть тяжелее, чем в блоке материальной базы */
.ach-events-gallery__card div{
  left:20px !important;
  right:20px !important;
  bottom:20px !important;
}

.ach-events-gallery__card span{
  min-height:32px !important;
  padding:0 11px !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
  color:rgba(255,255,255,.88) !important;
}

.ach-events-gallery__card strong{
  margin-top:12px !important;
  color:#ffffff !important;
  font-size:clamp(18px,1.18vw,22px) !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
  font-weight:700 !important;
}

@media(max-width:720px){
  .ach-events-gallery__card div{
    left:16px !important;
    right:16px !important;
    bottom:16px !important;
  }

  .ach-events-gallery__card strong{
    font-size:19px !important;
    line-height:1.1 !important;
  }
}

/* =========================
   V95.12 HOME — FINAL CONTACT CHOICE CARD
   Финальная карточка «Помощь с выбором» в формате выбора канала связи.
   Не переопределяет системные кнопки, задаёт только раскладку внутри карточки.
========================= */

.ach-final-card--choice{
  justify-content:flex-start !important;
  gap:16px !important;
}

.ach-final-card--choice h3{
  margin:0 !important;
}

.ach-final-card--choice p{
  max-width:680px !important;
}

.ach-final-choice,
.ach-final-choice__trust{
  position:relative !important;
  z-index:1 !important;
}

.ach-final-choice{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:2px !important;
}

.ach-final-choice .ach-btn{
  width:100% !important;
  min-height:50px !important;
  padding-left:14px !important;
  padding-right:14px !important;
  text-align:center !important;
}

.ach-final-choice__trust{
  margin-top:2px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.11) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  display:grid !important;
  gap:6px !important;
}

.ach-final-choice__trust strong{
  color:#ffffff !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ach-final-choice__trust span{
  color:rgba(255,255,255,.76) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

@media(max-width:720px){
  .ach-final-choice{
    grid-template-columns:1fr !important;
  }

  .ach-final-choice .ach-btn{
    min-height:52px !important;
  }
}

/* =========================
   SINGLE PASS V20 — SYSTEM CTA FINAL CONTACT
   Финальный блок связи приведён к логике главной V95.13: выбор удобного канала связи.
   Не создаёт локальные версии кнопок и не переопределяет ach-btn / ach-btn--primary.
========================= */

.ac-pass-final__contact .ac-pass-contact__copy{
  min-height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:16px !important;
}

.ac-pass-final__contact .ac-pass-contact__copy h2{
  margin-top:16px !important;
}

.ac-pass-final__contact .ac-pass-contact__copy p{
  max-width:680px !important;
  margin-top:0 !important;
}

.ac-pass-final-choice,
.ac-pass-final-choice__trust{
  position:relative !important;
  z-index:1 !important;
}

.ac-pass-final-choice{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:4px !important;
}

.ac-pass-final-choice .ach-btn{
  width:100% !important;
  min-height:52px !important;
  padding-left:14px !important;
  padding-right:14px !important;
  text-align:center !important;
}

.ac-pass-final-choice__trust{
  margin-top:2px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.11) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  display:grid !important;
  gap:6px !important;
}

.ac-pass-final-choice__trust strong{
  color:#ffffff !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ac-pass-final-choice__trust span{
  color:rgba(255,255,255,.76) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

.ac-pass-final__contact .ac-pass-contact__cards{
  display:none !important;
}

@media(max-width:720px){
  .ac-pass-final-choice{
    grid-template-columns:1fr !important;
  }

  .ac-pass-final-choice .ach-btn{
    min-height:52px !important;
  }
}


/* =========================
   SINGLE PASS V26 — HOME MODAL SYSTEM REUSE
   Возвращаем сценарные CTA страницы «Единый абонемент» на тот же механизм,
   который уже стабильно работает на главной V95.13: native <dialog>,
   класс ach-contact-dialog, системные ach-btn.
   Важно: не переопределяет шрифт, font-weight, letter-spacing и цвет системных кнопок.
========================= */

.ac-pass .ach-contact-dialog-trigger{
  border:0 !important;
  cursor:pointer !important;
}

.ac-pass .ach-contact-dialog-trigger:focus-visible{
  outline:2px solid rgba(45,127,255,.36) !important;
  outline-offset:3px !important;
}

/* Только компоновка кнопки рассрочки внутри карточки, без изменения стиля самой кнопки */
.ac-pass-installment__actions{
  margin-top:18px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

@media(max-width:720px){
  .ac-pass-installment__actions .ach-btn{
    width:100% !important;
  }
}

/* =========================
   ALEXCLUB GYM V3.5 — SYSTEM BACKGROUND + WORKING ZONE TABS
   Системная страница на базе главной V95.13 и «Единого абонемента» V6.
   Уникальные правила изолированы namespace ac-gym и не меняют ach-btn.
========================= */

.ac-page--gym{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--gym .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--gym .wp-block-html,
.ac-page--gym .wp-block-group,
.ac-page--gym .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.ac-gym .ac-pass-hero__bg{
  background:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.28),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(7,135,189,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.86),rgba(5,8,20,.34)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/gym-general-01.webp") center center / cover no-repeat !important;
}

.ac-gym .ac-pass-hero__content h1{
  max-width:980px !important;
}

.ac-gym .ac-pass-hero__deal strong{
  font-size:clamp(48px,4.8vw,72px) !important;
}

.ac-gym-hero__deal-action{
  width:100% !important;
  margin-top:18px !important;
}

/* Третий блок — модульная композиция с показателями справа */
.ac-gym-scale--modular{
  position:relative !important;
  overflow:hidden !important;
}


.ac-gym-scale--modular .ac-pass-wrap{
  position:relative !important;
  z-index:1 !important;
}

.ac-gym-scale__modular-top{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(430px,.78fr) !important;
  gap:clamp(38px,5vw,84px) !important;
  align-items:start !important;
}

.ac-gym-scale__story h2{
  max-width:860px !important;
  margin:18px 0 26px !important;
  color:#071936 !important;
  font-size:clamp(48px,4.65vw,76px) !important;
  line-height:.99 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ac-gym-scale__story-copy{
  max-width:760px !important;
  display:grid !important;
  gap:17px !important;
}

.ac-gym-scale__story-copy p{
  margin:0 !important;
  color:#64748b !important;
  font-size:clamp(15px,1.02vw,18px) !important;
  line-height:1.6 !important;
}

.ac-gym-metrics-panel{
  position:relative !important;
  padding:24px 26px 18px !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.9) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 24px 60px rgba(8,28,62,.09) !important;
  backdrop-filter:blur(10px) !important;
}

.ac-gym-metrics-panel::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:26px !important;
  width:4px !important;
  height:56px !important;
  border-radius:0 6px 6px 0 !important;
  background:#2d7fff !important;
}

.ac-gym-metrics-panel__head{
  margin:0 0 8px !important;
  padding:0 0 14px 14px !important;
  color:#0b4fa3 !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  border-bottom:1px solid rgba(8,28,62,.09) !important;
}

.ac-gym-metric-row{
  min-height:84px !important;
  display:grid !important;
  grid-template-columns:56px minmax(118px,.55fr) minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
  padding:14px 0 !important;
  border-bottom:1px solid rgba(8,28,62,.09) !important;
}

.ac-gym-metric-row:last-child{
  border-bottom:0 !important;
}

.ac-gym-metric-row__icon,
.ac-gym-equipment-card__icon{
  flex:0 0 52px !important;
  width:52px !important;
  height:52px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:17px !important;
  background:#f1f7ff !important;
  color:#2d7fff !important;
}

.ac-gym-metric-row__icon svg,
.ac-gym-equipment-card__icon svg{
  width:31px !important;
  height:31px !important;
}

.ac-gym-metric-row strong{
  color:#071936 !important;
  font-size:clamp(31px,2.7vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.ac-gym-metric-row > span:last-child{
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

.ac-gym-scale__accent{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  margin:34px 0 26px !important;
  padding:20px 24px !important;
  border-radius:22px !important;
  background:linear-gradient(105deg,#0b3157 0%,#0b4fa3 100%) !important;
  color:#ffffff !important;
  box-shadow:0 18px 42px rgba(8,28,62,.15) !important;
}

.ac-gym-scale__accent-icon{
  flex:0 0 52px !important;
  width:52px !important;
  height:52px !important;
  display:grid !important;
  place-items:center !important;
  color:#ffffff !important;
}

.ac-gym-scale__accent-icon svg{
  width:42px !important;
  height:42px !important;
}

.ac-gym-scale__accent-text{
  display:block !important;
  color:#ffffff !important;
  font-family:inherit !important;
  font-size:clamp(17px,1.28vw,20px) !important;
  line-height:1.5 !important;
  font-weight:400 !important;
  letter-spacing:normal !important;
}

.ac-gym-subsection-head{
  margin:0 0 16px !important;
}

.ac-gym-subsection-head--line{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.ac-gym-subsection-head--line::after{
  content:"" !important;
  width:60px !important;
  height:1px !important;
  background:rgba(45,127,255,.36) !important;
}

.ac-gym-subsection-head h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.3vw,38px) !important;
  line-height:1.05 !important;
  letter-spacing:-.04em !important;
  font-weight:700 !important;
}

.ac-gym-equipment--modular{
  margin-top:0 !important;
}

.ac-gym-equipment-grid--modular{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-gym-equipment-grid--modular .ac-gym-equipment-card{
  min-width:0 !important;
  min-height:132px !important;
  padding:20px !important;
  display:grid !important;
  grid-template-columns:56px minmax(0,1fr) !important;
  align-items:start !important;
  gap:16px !important;
  border-radius:22px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.055) !important;
}

.ac-gym-equipment-grid--modular .ac-gym-equipment-card--wide{
  grid-column:1 / -1 !important;
  min-height:104px !important;
  align-items:center !important;
}

.ac-gym-equipment-card__body{
  min-width:0 !important;
  display:grid !important;
  gap:7px !important;
}

.ac-gym-equipment-card__body strong{
  color:#071936 !important;
  font-size:17px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.ac-gym-equipment-card__body p{
  margin:0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.48 !important;
}

/* Остальные блоки страницы */
.ac-gym-price-module{
  padding:24px !important;
  border-radius:30px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
}

.ac-gym-price-module__head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,.55fr) !important;
  gap:18px !important;
  align-items:end !important;
  margin-bottom:18px !important;
}

.ac-gym-price-module__head h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.6vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-gym-price-module__head p{
  margin:0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.ac-gym-tariff-table-wrap{
  width:100% !important;
  overflow-x:auto !important;
  border-radius:22px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  background:#fff !important;
}

.ac-gym-tariff-table{
  width:100% !important;
  min-width:760px !important;
  border-collapse:collapse !important;
  color:#071936 !important;
  font-size:14px !important;
}

.ac-gym-tariff-table th,
.ac-gym-tariff-table td{
  padding:15px 16px !important;
  text-align:left !important;
  border-bottom:1px solid rgba(8,28,62,.08) !important;
}

.ac-gym-tariff-table th{
  background:#1E3A55 !important;
  color:#ffffff !important;
  font-size:12px !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.ac-gym-tariff-table tbody tr:nth-child(even){
  background:#f7fbff !important;
}

.ac-gym-tariff-table tbody tr:last-child td{
  border-bottom:0 !important;
}

.ac-gym-tariff-table td strong{
  color:#1E3A55 !important;
  font-size:16px !important;
}

.ac-gym-unlimited-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-gym-unlimited-grid .ac-pass-price-card--best{
  transform:none !important;
}

.ac-gym-installment{
  margin-top:18px !important;
}

.ac-gym-price-note{
  margin-top:18px !important;
  padding:18px 20px !important;
  border-radius:22px !important;
  background:#1E3A55 !important;
  color:#ffffff !important;
  font-size:15px !important;
  line-height:1.5 !important;
}

.ac-gym-price-note strong{
  color:#ffffff !important;
}

.ac-gym-benefits{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-gym-benefits article{
  min-height:240px !important;
}

.ac-gym-gallery .ac-pass-photo-card img{
  object-position:center center !important;
}

.ac-gym-programs{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-gym-programs .ach-program{
  min-height:250px !important;
}

.ac-gym-coaches__actions{
  justify-content:center !important;
}

html[data-theme="dark"] .ac-gym-price-module{
  background:#ffffff !important;
  color:#071936 !important;
}

@media(max-width:1320px){
  .ac-gym-scale__modular-top{
    grid-template-columns:minmax(0,1fr) minmax(390px,.82fr) !important;
    gap:34px !important;
  }

  .ac-gym-scale__story h2{
    font-size:56px !important;
  }

  .ac-gym-metric-row{
    grid-template-columns:52px minmax(100px,.5fr) minmax(0,1fr) !important;
    gap:13px !important;
  }

  .ac-gym-unlimited-grid,
  .ac-gym-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:1100px){
  .ac-gym-scale__modular-top{
    grid-template-columns:1fr !important;
  }

  .ac-gym-scale__story-copy{
    max-width:none !important;
  }

  .ac-gym-metrics-panel{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:0 24px !important;
  }

  .ac-gym-metrics-panel__head{
    grid-column:1 / -1 !important;
  }

  .ac-gym-metric-row:nth-last-child(2){
    border-bottom:0 !important;
  }

  .ac-gym-equipment-grid--modular{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-gym-equipment-grid--modular .ac-gym-equipment-card--wide{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:1024px){
  .ac-gym-price-module__head{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .ac-gym-programs{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-gym-scale__story h2{
    font-size:42px !important;
  }

  .ac-gym-scale__story-copy{
    gap:15px !important;
  }

  .ac-gym-metrics-panel{
    padding:20px 18px 12px !important;
    border-radius:24px !important;
    grid-template-columns:1fr !important;
  }

  .ac-gym-metrics-panel__head{
    grid-column:auto !important;
  }

  .ac-gym-metric-row,
  .ac-gym-metric-row:nth-last-child(2){
    grid-template-columns:50px minmax(94px,.48fr) minmax(0,1fr) !important;
    border-bottom:1px solid rgba(8,28,62,.09) !important;
  }

  .ac-gym-metric-row:last-child{
    border-bottom:0 !important;
  }

  .ac-gym-metric-row strong{
    font-size:32px !important;
  }

  .ac-gym-scale__accent{
    align-items:flex-start !important;
    padding:18px !important;
    border-radius:20px !important;
  }

  .ac-gym-scale__accent-icon{
    flex-basis:42px !important;
    width:42px !important;
    height:42px !important;
  }

  .ac-gym-scale__accent-icon svg{
    width:34px !important;
    height:34px !important;
  }

  .ac-gym-equipment-grid--modular,
  .ac-gym-unlimited-grid,
  .ac-gym-benefits,
  .ac-gym-programs{
    grid-template-columns:1fr !important;
  }

  .ac-gym-equipment-grid--modular .ac-gym-equipment-card,
  .ac-gym-equipment-grid--modular .ac-gym-equipment-card--wide{
    grid-column:auto !important;
    min-height:0 !important;
    padding:18px !important;
  }

  .ac-gym-price-module{
    padding:20px !important;
    border-radius:26px !important;
  }

  .ac-gym-price-module__head h3,
  .ac-gym-subsection-head h3{
    font-size:30px !important;
  }

  .ac-gym-tariff-table-wrap{
    margin-right:0 !important;
  }

  .ac-gym-price-note{
    padding:17px 18px !important;
    border-radius:20px !important;
  }

  .ac-gym-benefits article{
    min-height:0 !important;
  }
}



/* V3.5 — рабочие зоны внутри единого третьего блока.
   Фон секции остаётся прозрачным: используется общий фон .ac-pass. */
.ac-gym-scale--modular{
  overflow:visible !important;
  background:transparent !important;
}

.ac-gym-zones{
  margin-top:clamp(46px,6vw,88px) !important;
}

.ac-gym-zones__head{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.58fr) !important;
  gap:24px !important;
  align-items:end !important;
  margin-bottom:22px !important;
}

.ac-gym-zones__head h3{
  margin:14px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(32px,3vw,52px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
}

.ac-gym-zones__head > p{
  max-width:620px !important;
  margin:0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

.ac-gym-zones-tabs{
  display:grid !important;
  grid-template-columns:minmax(250px,310px) minmax(0,1fr) !important;
  min-height:590px !important;
  overflow:hidden !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(8,28,62,.09) !important;
  box-shadow:0 22px 58px rgba(8,28,62,.08) !important;
}

.ac-gym-zones-tabs__nav{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  padding:14px !important;
  background:rgba(238,245,255,.76) !important;
  border-right:1px solid rgba(8,28,62,.08) !important;
}

.ac-gym-zone-tab{
  appearance:none !important;
  width:100% !important;
  min-height:58px !important;
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  padding:12px 14px !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
  color:#1e3a55 !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  text-align:left !important;
  cursor:pointer !important;
  transition:background-color .2s ease,color .2s ease,transform .2s ease !important;
}

.ac-gym-zone-tab span{
  display:grid !important;
  place-items:center !important;
  width:30px !important;
  height:30px !important;
  border-radius:10px !important;
  background:rgba(45,127,255,.10) !important;
  color:#2d7fff !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.ac-gym-zone-tab:hover{
  background:rgba(255,255,255,.72) !important;
  transform:translateX(2px) !important;
}

.ac-gym-zone-tab.is-active,
.ac-gym-zone-tab[aria-selected="true"]{
  background:#1e3a55 !important;
  color:#ffffff !important;
  box-shadow:0 12px 26px rgba(30,58,85,.16) !important;
}

.ac-gym-zone-tab.is-active span,
.ac-gym-zone-tab[aria-selected="true"] span{
  background:rgba(255,255,255,.14) !important;
  color:#ffffff !important;
}

.ac-gym-zone-tab:focus-visible{
  outline:2px solid rgba(45,127,255,.45) !important;
  outline-offset:2px !important;
}

.ac-gym-zones-tabs__panels{
  min-width:0 !important;
  padding:18px !important;
}

.ac-gym-zone-panel{
  min-height:554px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.82fr) !important;
  gap:clamp(24px,3.5vw,52px) !important;
  align-items:center !important;
  padding:clamp(10px,1.5vw,22px) !important;
}

.ac-gym-zone-panel[hidden]{
  display:none !important;
}

.ac-gym-zone-panel__media{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}

.ac-gym-zone-panel__media--two{
  grid-template-columns:minmax(0,1.35fr) minmax(170px,.65fr) !important;
}

.ac-gym-zone-panel__media img{
  width:100% !important;
  height:clamp(360px,31vw,500px) !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:24px !important;
  background:#dce8f7 !important;
}

.ac-gym-zone-panel__media--two img:last-child{
  height:clamp(360px,31vw,500px) !important;
}

.ac-gym-zone-panel__copy{
  min-width:0 !important;
}

.ac-gym-zone-panel__num{
  display:inline-flex !important;
  margin-bottom:12px !important;
  color:#2d7fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-gym-zone-panel__copy h4{
  margin:0 0 18px !important;
  color:#071936 !important;
  font-size:clamp(30px,3vw,50px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
}

.ac-gym-zone-panel__copy p,
.ac-gym-zone-panel__copy li{
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

.ac-gym-zone-panel__copy p{
  margin:0 0 15px !important;
}

.ac-gym-zone-panel__copy ul{
  margin:16px 0 18px !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:8px !important;
}

.ac-gym-zone-panel__copy li{
  position:relative !important;
  padding-left:18px !important;
}

.ac-gym-zone-panel__copy li::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:.72em !important;
  width:7px !important;
  height:7px !important;
  border-radius:50% !important;
  background:#2d7fff !important;
}

.ac-gym-zone-panel__note{
  margin-top:18px !important;
  padding:15px 17px !important;
  border-radius:17px !important;
  background:#f1f7ff !important;
  color:#1e3a55 !important;
  border:1px solid rgba(45,127,255,.12) !important;
}

.ac-gym-sauna-note{
  margin-top:14px !important;
  display:grid !important;
  grid-template-columns:minmax(260px,.62fr) minmax(0,1fr) !important;
  gap:24px !important;
  align-items:center !important;
  padding:24px 26px !important;
  border-radius:24px !important;
  background:#1e3a55 !important;
  color:#ffffff !important;
}

.ac-gym-sauna-note h4{
  margin:10px 0 0 !important;
  color:#ffffff !important;
  font-size:24px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
}

.ac-gym-sauna-note p{
  margin:0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

@media(max-width:1100px){
  .ac-gym-zones__head{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .ac-gym-zones-tabs{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  .ac-gym-zones-tabs__nav{
    flex-direction:row !important;
    overflow-x:auto !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(8,28,62,.08) !important;
    scrollbar-width:thin !important;
  }

  .ac-gym-zone-tab{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:190px !important;
  }

  .ac-gym-zone-tab:hover{
    transform:none !important;
  }
}

@media(max-width:900px){
  .ac-gym-zone-panel{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  .ac-gym-zone-panel__media img,
  .ac-gym-zone-panel__media--two img:last-child{
    height:clamp(260px,58vw,430px) !important;
  }

  .ac-gym-sauna-note{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
}

@media(max-width:620px){
  .ac-gym-zones-tabs{
    border-radius:24px !important;
  }

  .ac-gym-zones-tabs__nav,
  .ac-gym-zones-tabs__panels{
    padding:10px !important;
  }

  .ac-gym-zone-tab{
    min-width:168px !important;
    min-height:52px !important;
    padding:10px 12px !important;
    font-size:13px !important;
  }

  .ac-gym-zone-panel{
    padding:4px !important;
    gap:22px !important;
  }

  .ac-gym-zone-panel__media--two{
    grid-template-columns:1fr !important;
  }

  .ac-gym-zone-panel__media--two img:last-child{
    display:none !important;
  }

  .ac-gym-zone-panel__media img{
    height:260px !important;
    border-radius:20px !important;
  }

  .ac-gym-zone-panel__copy h4{
    font-size:32px !important;
  }

  .ac-gym-sauna-note{
    padding:20px !important;
    border-radius:20px !important;
  }
}

/* =========================================================
   ALEXCLUB GYM V3.4.1 — SAFETY / PREVIOUS-MARKUP COMPATIBILITY
   Защита inline-SVG и временная совместимость с HTML V3.3.
   Основная версия страницы использует ac-gym-scale--modular.
========================================================= */

.ac-gym [class*="__icon"] > svg{
  display:block !important;
  max-width:100% !important;
  max-height:100% !important;
}

/* Если WordPress временно отдаёт предыдущий HTML V3.3,
   иконки не должны разворачиваться на всю ширину страницы. */
.ac-gym .ac-gym-stat-card__icon{
  flex:0 0 52px !important;
  width:52px !important;
  height:52px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:17px !important;
  background:#f1f7ff !important;
  color:#2d7fff !important;
}

.ac-gym .ac-gym-stat-card__icon svg{
  width:31px !important;
  height:31px !important;
}

.ac-gym .ac-gym-stats--editorial{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 0 26px !important;
}

.ac-gym .ac-gym-stats--editorial .ac-gym-stat-card{
  min-width:0 !important;
  min-height:118px !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:18px !important;
  border-radius:22px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.055) !important;
}

.ac-gym .ac-gym-stats--editorial .ac-gym-stat-card > div{
  min-width:0 !important;
  display:grid !important;
  gap:6px !important;
}

.ac-gym .ac-gym-stats--editorial .ac-gym-stat-card strong{
  color:#071936 !important;
  font-size:clamp(27px,2.3vw,42px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  white-space:nowrap !important;
}

.ac-gym .ac-gym-stats--editorial .ac-gym-stat-card span:last-child{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

@media(max-width:1100px){
  .ac-gym .ac-gym-stats--editorial{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-gym .ac-gym-stats--editorial{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   ALEXCLUB GYM V3.6 — EXPANDED WORKING-ZONE PHOTO GALLERIES
   Расширенные галереи внутри утверждённой системы вкладок.
   Общий фон страницы и системные компоненты не переопределяются.
========================================================= */

.ac-gym-zone-gallery{
  display:grid !important;
  gap:10px !important;
  align-self:stretch !important;
  min-height:480px !important;
}

.ac-gym-zone-gallery img{
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  min-height:0 !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:20px !important;
  background:#dce8f7 !important;
}

.ac-gym-zone-gallery--five{
  grid-template-columns:repeat(8,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
}

.ac-gym-zone-gallery--five img:first-child{
  grid-column:span 4 !important;
  grid-row:span 2 !important;
}

.ac-gym-zone-gallery--five img:not(:first-child){
  grid-column:span 2 !important;
}

.ac-gym-zone-gallery--four{
  grid-template-columns:minmax(0,2fr) minmax(150px,1fr) !important;
  grid-template-rows:repeat(3,minmax(0,1fr)) !important;
}

.ac-gym-zone-gallery--four img:first-child{
  grid-row:span 3 !important;
}

.ac-gym-zone-gallery--three{
  grid-template-columns:minmax(0,1.45fr) minmax(170px,.75fr) !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
}

.ac-gym-zone-gallery--three img:first-child{
  grid-row:span 2 !important;
}

.ac-gym-zone-gallery--two{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
}

@media(max-width:900px){
  .ac-gym-zone-gallery{
    min-height:430px !important;
  }
}

@media(max-width:620px){
  .ac-gym-zone-gallery,
  .ac-gym-zone-gallery--five,
  .ac-gym-zone-gallery--four,
  .ac-gym-zone-gallery--three,
  .ac-gym-zone-gallery--two{
    display:flex !important;
    gap:10px !important;
    min-height:0 !important;
    overflow-x:auto !important;
    padding:0 0 8px !important;
    scroll-snap-type:x mandatory !important;
    overscroll-behavior-inline:contain !important;
    scrollbar-width:thin !important;
  }

  .ac-gym-zone-gallery img,
  .ac-gym-zone-gallery--five img:first-child,
  .ac-gym-zone-gallery--five img:not(:first-child),
  .ac-gym-zone-gallery--four img:first-child,
  .ac-gym-zone-gallery--three img:first-child{
    flex:0 0 84% !important;
    width:84% !important;
    height:260px !important;
    grid-column:auto !important;
    grid-row:auto !important;
    scroll-snap-align:start !important;
    border-radius:20px !important;
  }
}

/* =========================================================
   ALEXCLUB GYM V3.9 — STICKY WORKING-ZONE TOUR
   Вариант 5: последовательная экскурсия по зонам со sticky-навигацией.
   Правила изолированы namespace ac-gym и не меняют системные компоненты.
========================================================= */

.ac-gym-zones--tour{
  margin-top:0 !important;
}

.ac-gym-zone-tour{
  display:grid !important;
  grid-template-columns:minmax(210px,.24fr) minmax(0,1fr) !important;
  gap:clamp(18px,2.5vw,34px) !important;
  align-items:start !important;
}

.ac-gym-zone-tour__nav{
  position:sticky !important;
  top:96px !important;
  z-index:6 !important;
  min-width:0 !important;
  max-height:calc(100vh - 118px) !important;
  overflow:auto !important;
  padding:10px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.09) !important;
  backdrop-filter:blur(12px) !important;
  scrollbar-width:thin !important;
}

.ac-gym-zone-tour__nav-inner{
  display:grid !important;
  gap:6px !important;
}

.ac-gym-zone-tour__link{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-height:58px !important;
  padding:10px 12px !important;
  border-radius:16px !important;
  color:#071936 !important;
  background:transparent !important;
  text-decoration:none !important;
  transition:background-color .2s ease,color .2s ease,transform .2s ease !important;
}

.ac-gym-zone-tour__link:hover{
  background:#f1f7ff !important;
  transform:translateX(2px) !important;
}

.ac-gym-zone-tour__link span{
  color:#2d7fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
}

.ac-gym-zone-tour__link strong{
  min-width:0 !important;
  color:inherit !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.ac-gym-zone-tour__link.is-active{
  color:#ffffff !important;
  background:linear-gradient(105deg,#0b3157 0%,#0b4fa3 100%) !important;
  box-shadow:0 10px 24px rgba(11,79,163,.2) !important;
}

.ac-gym-zone-tour__link.is-active span{
  color:#8fc0ff !important;
}

.ac-gym-zone-tour__content{
  min-width:0 !important;
  display:grid !important;
  gap:18px !important;
}

.ac-gym-zone-story{
  min-width:0 !important;
  scroll-margin-top:118px !important;
  padding:clamp(20px,2.2vw,32px) !important;
  border-radius:28px !important;
  background:rgba(255,255,255,.9) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.07) !important;
  backdrop-filter:blur(8px) !important;
}

.ac-gym-zone-story__layout{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr) !important;
  gap:clamp(22px,3vw,42px) !important;
  align-items:start !important;
}

.ac-gym-zone-story__copy{
  position:sticky !important;
  top:112px !important;
  align-self:start !important;
  padding:6px 0 !important;
}

.ac-gym-zone-story__copy h4{
  font-size:clamp(30px,2.7vw,46px) !important;
}

.ac-gym-zone-story__gallery{
  min-width:0 !important;
  min-height:clamp(430px,34vw,570px) !important;
}

.ac-gym-zone-story__gallery img{
  transition:transform .25s ease,box-shadow .25s ease !important;
}

.ac-gym-zone-story__gallery img:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 14px 30px rgba(8,28,62,.12) !important;
}

.ac-gym-zones--tour .ac-gym-sauna-note{
  margin-top:18px !important;
}

@media(max-width:1180px){
  .ac-gym-zone-tour{
    grid-template-columns:minmax(190px,.22fr) minmax(0,1fr) !important;
  }

  .ac-gym-zone-story__layout{
    grid-template-columns:minmax(230px,.62fr) minmax(0,1.38fr) !important;
  }
}

@media(max-width:980px){
  .ac-gym-zone-tour{
    grid-template-columns:1fr !important;
  }

  .ac-gym-zone-tour__nav{
    top:76px !important;
    max-height:none !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:8px !important;
    border-radius:20px !important;
  }

  .ac-gym-zone-tour__nav-inner{
    display:flex !important;
    gap:7px !important;
    width:max-content !important;
  }

  .ac-gym-zone-tour__link{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:172px !important;
    min-height:52px !important;
    padding:9px 12px !important;
  }

  .ac-gym-zone-tour__link:hover{
    transform:none !important;
  }

  .ac-gym-zone-story{
    scroll-margin-top:154px !important;
  }

  .ac-gym-zone-story__layout{
    grid-template-columns:1fr !important;
  }

  .ac-gym-zone-story__copy{
    position:static !important;
    order:1 !important;
  }

  .ac-gym-zone-story__gallery{
    order:2 !important;
  }
}

@media(max-width:620px){
  .ac-gym-zone-tour{
    gap:14px !important;
  }

  .ac-gym-zone-tour__nav{
    top:68px !important;
    margin-left:-2px !important;
    margin-right:-2px !important;
  }

  .ac-gym-zone-tour__link{
    min-width:158px !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    font-size:13px !important;
  }

  .ac-gym-zone-story{
    padding:18px !important;
    border-radius:22px !important;
    scroll-margin-top:142px !important;
  }

  .ac-gym-zone-story__layout{
    gap:18px !important;
  }

  .ac-gym-zone-story__gallery{
    min-height:0 !important;
  }

  .ac-gym-zone-story__gallery img:hover{
    transform:none !important;
    box-shadow:none !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.10 — HYBRID ZONE OVERVIEW + STICKY TOUR
   Гибрид вариантов 2 и 5:
   1) общая витрина восьми зон;
   2) последовательная экскурсия со sticky-навигацией.
   Стили изолированы namespace ac-gym.
========================================================= */

.ac-gym-zone-overview{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:0 0 clamp(34px,4vw,54px) !important;
}

.ac-gym-zone-overview__card{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border-radius:24px !important;
  color:#071936 !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 38px rgba(8,28,62,.07) !important;
  text-decoration:none !important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
}

.ac-gym-zone-overview__card:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(45,127,255,.3) !important;
  box-shadow:0 22px 52px rgba(8,28,62,.12) !important;
}

.ac-gym-zone-overview__card.is-active{
  border-color:rgba(45,127,255,.55) !important;
  box-shadow:0 18px 46px rgba(45,127,255,.14) !important;
}

.ac-gym-zone-overview__media{
  position:relative !important;
  display:block !important;
  aspect-ratio:16/10 !important;
  overflow:hidden !important;
  background:#dfeafa !important;
}

.ac-gym-zone-overview__media::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(4,20,43,0) 45%,rgba(4,20,43,.28) 100%) !important;
}

.ac-gym-zone-overview__media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transition:transform .35s ease !important;
}

.ac-gym-zone-overview__card:hover .ac-gym-zone-overview__media img{
  transform:scale(1.035) !important;
}

.ac-gym-zone-overview__count{
  position:absolute !important;
  right:12px !important;
  bottom:12px !important;
  z-index:2 !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  color:#fff !important;
  background:rgba(4,24,52,.78) !important;
  border:1px solid rgba(255,255,255,.2) !important;
  backdrop-filter:blur(8px) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:400 !important;
}

.ac-gym-zone-overview__body{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:7px 10px !important;
  align-content:start !important;
  flex:1 1 auto !important;
  padding:18px !important;
}

.ac-gym-zone-overview__number{
  grid-row:1/4 !important;
  color:#2d7fff !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
}

.ac-gym-zone-overview__body strong{
  color:#071936 !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ac-gym-zone-overview__summary{
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.48 !important;
  font-weight:400 !important;
}

.ac-gym-zone-overview__action{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  margin-top:5px !important;
  color:#0b4fa3 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ac-gym-zone-overview__action svg{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  transition:transform .2s ease !important;
}

.ac-gym-zone-overview__card:hover .ac-gym-zone-overview__action svg{
  transform:translateX(3px) !important;
}

.ac-gym-zone-tour__intro{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr) !important;
  gap:clamp(24px,4vw,60px) !important;
  align-items:end !important;
  margin:0 0 22px !important;
  padding-top:clamp(6px,1vw,12px) !important;
}

.ac-gym-zone-tour__intro h4{
  max-width:760px !important;
  margin:12px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3.2vw,48px) !important;
  line-height:1.04 !important;
  letter-spacing:-.035em !important;
}

.ac-gym-zone-tour__intro p{
  max-width:680px !important;
  margin:0 !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.65 !important;
}

@media(max-width:1180px){
  .ac-gym-zone-overview{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .ac-gym-zone-overview{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-gym-zone-tour__intro{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
}

@media(max-width:620px){
  .ac-gym-zone-overview{
    display:flex !important;
    gap:12px !important;
    overflow-x:auto !important;
    padding:2px 2px 12px !important;
    margin-right:-2px !important;
    scroll-snap-type:x mandatory !important;
    overscroll-behavior-inline:contain !important;
    scrollbar-width:thin !important;
  }

  .ac-gym-zone-overview__card{
    flex:0 0 84% !important;
    scroll-snap-align:start !important;
    border-radius:21px !important;
  }

  .ac-gym-zone-overview__card:hover{
    transform:none !important;
  }

  .ac-gym-zone-overview__card:hover .ac-gym-zone-overview__media img{
    transform:none !important;
  }

  .ac-gym-zone-overview__body{
    padding:16px !important;
  }

  .ac-gym-zone-tour__intro{
    margin-bottom:18px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .ac-gym-zone-overview__card,
  .ac-gym-zone-overview__media img,
  .ac-gym-zone-overview__action svg{
    transition:none !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.11 — HORIZONTAL ZONE RAIL
   Вариант 4: горизонтальная лента зон + раскрытая выбранная зона.
   Стили изолированы namespace ac-gym и не меняют системные компоненты.
========================================================= */

.ac-gym-zones--rail{
  margin-top:clamp(46px,6vw,88px) !important;
}

.ac-gym-zone-rail__shell{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) 48px !important;
  gap:12px !important;
  align-items:stretch !important;
  margin:0 0 18px !important;
}

.ac-gym-zone-rail{
  min-width:0 !important;
  display:grid !important;
  grid-auto-flow:column !important;
  grid-auto-columns:minmax(225px,calc((100% - 42px)/4)) !important;
  gap:14px !important;
  overflow-x:auto !important;
  padding:2px 2px 12px !important;
  scroll-snap-type:x mandatory !important;
  overscroll-behavior-inline:contain !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(11,79,163,.28) transparent !important;
}

.ac-gym-zone-rail::-webkit-scrollbar{
  height:7px !important;
}

.ac-gym-zone-rail::-webkit-scrollbar-thumb{
  border-radius:999px !important;
  background:rgba(11,79,163,.24) !important;
}

.ac-gym-zone-rail-card{
  appearance:none !important;
  min-width:0 !important;
  min-height:244px !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  padding:0 !important;
  border-radius:22px !important;
  color:#071936 !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(8,28,62,.09) !important;
  box-shadow:0 12px 34px rgba(8,28,62,.06) !important;
  font:inherit !important;
  text-align:left !important;
  cursor:pointer !important;
  scroll-snap-align:start !important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease !important;
}

.ac-gym-zone-rail-card:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(45,127,255,.34) !important;
  box-shadow:0 18px 42px rgba(8,28,62,.1) !important;
}

.ac-gym-zone-rail-card.is-active,
.ac-gym-zone-rail-card[aria-selected="true"]{
  border-color:#2d7fff !important;
  box-shadow:0 18px 46px rgba(45,127,255,.16) !important;
}

.ac-gym-zone-rail-card:focus-visible{
  outline:3px solid rgba(45,127,255,.32) !important;
  outline-offset:3px !important;
}

.ac-gym-zone-rail-card__media{
  position:relative !important;
  display:block !important;
  width:100% !important;
  aspect-ratio:16/9 !important;
  overflow:hidden !important;
  background:#dce8f7 !important;
}

.ac-gym-zone-rail-card__media::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(3,20,43,0) 45%,rgba(3,20,43,.38) 100%) !important;
}

.ac-gym-zone-rail-card__media img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  transition:transform .32s ease !important;
}

.ac-gym-zone-rail-card:hover .ac-gym-zone-rail-card__media img{
  transform:scale(1.035) !important;
}

.ac-gym-zone-rail-card__number,
.ac-gym-zone-rail-card__count{
  position:absolute !important;
  z-index:2 !important;
  bottom:10px !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:5px 9px !important;
  border-radius:999px !important;
  color:#fff !important;
  background:rgba(4,24,52,.76) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  backdrop-filter:blur(8px) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.ac-gym-zone-rail-card__number{
  left:10px !important;
  letter-spacing:.08em !important;
}

.ac-gym-zone-rail-card__count{
  right:10px !important;
  font-weight:400 !important;
}

.ac-gym-zone-rail-card__body{
  display:grid !important;
  gap:7px !important;
  flex:1 1 auto !important;
  padding:16px 17px 18px !important;
}

.ac-gym-zone-rail-card__body strong{
  color:#071936 !important;
  font-size:18px !important;
  line-height:1.18 !important;
  font-weight:700 !important;
}

.ac-gym-zone-rail-card__body > span{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.42 !important;
  font-weight:400 !important;
}

.ac-gym-zone-rail-card.is-active .ac-gym-zone-rail-card__body{
  background:linear-gradient(180deg,rgba(45,127,255,.02),rgba(45,127,255,.08)) !important;
}

.ac-gym-zone-rail__scroll{
  appearance:none !important;
  align-self:center !important;
  width:48px !important;
  height:48px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border-radius:16px !important;
  color:#0b4fa3 !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(8,28,62,.09) !important;
  box-shadow:0 10px 28px rgba(8,28,62,.07) !important;
  cursor:pointer !important;
  transition:transform .2s ease,background-color .2s ease !important;
}

.ac-gym-zone-rail__scroll:hover{
  transform:translateY(-2px) !important;
  background:#fff !important;
}

.ac-gym-zone-rail__scroll svg{
  width:22px !important;
  height:22px !important;
}

.ac-gym-zone-rail__detail{
  overflow:hidden !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(8,28,62,.09) !important;
  box-shadow:0 22px 58px rgba(8,28,62,.08) !important;
}

.ac-gym-zone-rail__panels{
  padding:20px 20px 8px !important;
}

.ac-gym-zone-panel--rail{
  min-height:560px !important;
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.32fr) !important;
  grid-template-areas:"copy media" !important;
  gap:clamp(28px,4vw,64px) !important;
  align-items:center !important;
  padding:clamp(12px,1.5vw,22px) !important;
}

.ac-gym-zone-panel--rail .ac-gym-zone-panel__copy{
  grid-area:copy !important;
  align-self:center !important;
}

.ac-gym-zone-panel--rail .ac-gym-zone-panel__media{
  grid-area:media !important;
}

.ac-gym-zone-panel--rail .ac-gym-zone-panel__copy h4{
  font-size:clamp(34px,3.5vw,56px) !important;
}

.ac-gym-zone-rail__footer{
  display:grid !important;
  grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr) !important;
  gap:16px !important;
  align-items:center !important;
  padding:18px 22px 22px !important;
  border-top:1px solid rgba(8,28,62,.07) !important;
}

.ac-gym-zone-rail__step{
  appearance:none !important;
  min-height:48px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  padding:12px 16px !important;
  border-radius:15px !important;
  color:#0b4fa3 !important;
  background:#f1f7ff !important;
  border:1px solid rgba(45,127,255,.14) !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  cursor:pointer !important;
  transition:background-color .2s ease,transform .2s ease,opacity .2s ease !important;
}

.ac-gym-zone-rail__step:first-child{
  justify-self:start !important;
}

.ac-gym-zone-rail__step:last-child{
  justify-self:end !important;
}

.ac-gym-zone-rail__step:hover:not(:disabled){
  transform:translateY(-2px) !important;
  background:#e8f2ff !important;
}

.ac-gym-zone-rail__step:disabled{
  opacity:.38 !important;
  cursor:default !important;
}

.ac-gym-zone-rail__step svg{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
}

.ac-gym-zone-rail__status{
  display:inline-flex !important;
  align-items:baseline !important;
  gap:6px !important;
  color:#64748b !important;
  white-space:nowrap !important;
}

.ac-gym-zone-rail__status strong{
  color:#071936 !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.ac-gym-zone-rail__status span{
  font-size:13px !important;
  line-height:1 !important;
}

@media(max-width:1100px){
  .ac-gym-zone-rail{
    grid-auto-columns:minmax(220px,calc((100% - 28px)/3)) !important;
  }

  .ac-gym-zone-panel--rail{
    grid-template-columns:1fr !important;
    grid-template-areas:"media" "copy" !important;
    min-height:0 !important;
  }
}

@media(max-width:780px){
  .ac-gym-zone-rail__shell{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .ac-gym-zone-rail__scroll{
    display:none !important;
  }

  .ac-gym-zone-rail{
    grid-auto-columns:minmax(210px,76%) !important;
  }

  .ac-gym-zone-rail__footer{
    grid-template-columns:1fr auto 1fr !important;
    padding:15px !important;
  }

  .ac-gym-zone-rail__step{
    min-width:48px !important;
    width:48px !important;
    padding:0 !important;
  }

  .ac-gym-zone-rail__step span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    white-space:nowrap !important;
  }
}

@media(max-width:620px){
  .ac-gym-zone-rail{
    grid-auto-columns:84% !important;
    gap:12px !important;
  }

  .ac-gym-zone-rail-card{
    min-height:232px !important;
    border-radius:20px !important;
  }

  .ac-gym-zone-rail-card:hover{
    transform:none !important;
  }

  .ac-gym-zone-rail-card:hover .ac-gym-zone-rail-card__media img{
    transform:none !important;
  }

  .ac-gym-zone-rail__detail{
    border-radius:24px !important;
  }

  .ac-gym-zone-rail__panels{
    padding:10px 10px 4px !important;
  }

  .ac-gym-zone-panel--rail{
    padding:4px !important;
    gap:22px !important;
  }

  .ac-gym-zone-panel--rail .ac-gym-zone-panel__copy h4{
    font-size:34px !important;
  }

  .ac-gym-zone-rail__status strong{
    font-size:21px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .ac-gym-zone-rail-card,
  .ac-gym-zone-rail-card__media img,
  .ac-gym-zone-rail__scroll,
  .ac-gym-zone-rail__step{
    transition:none !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.12 — RESPONSIVE ZONE HEADING
   Desktop: только системная плашка.
   Mobile: плашка и короткая подсказка о листании.
========================================================= */

.ac-gym-zones--rail .ac-gym-zones__head{
  display:block !important;
  margin-bottom:16px !important;
}

.ac-gym-zones--rail .ac-gym-zones__head h3{
  display:none !important;
}

.ac-gym-zones--rail .ac-gym-zones__head > p{
  display:none !important;
}

@media(max-width:780px){
  .ac-gym-zones--rail .ac-gym-zones__head{
    margin-bottom:14px !important;
  }

  .ac-gym-zones--rail .ac-gym-zones__head > p{
    display:block !important;
    max-width:420px !important;
    margin:11px 0 0 !important;
    color:#64748b !important;
    font-size:14px !important;
    line-height:1.5 !important;
    font-weight:400 !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.13 — FINAL ZONE PHOTO SETS
   Дополнительные схемы галерей для зон с 7 и 1 фотографией.
   Системные компоненты и общий фон не переопределяются.
========================================================= */

.ac-gym-zone-gallery--seven{
  grid-template-columns:repeat(12,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
}

.ac-gym-zone-gallery--seven img:first-child{
  grid-column:span 6 !important;
  grid-row:span 2 !important;
}

.ac-gym-zone-gallery--seven img:not(:first-child){
  grid-column:span 2 !important;
}

.ac-gym-zone-gallery--one{
  grid-template-columns:1fr !important;
  grid-template-rows:1fr !important;
}

@media(max-width:620px){
  .ac-gym-zone-gallery--seven,
  .ac-gym-zone-gallery--one{
    display:flex !important;
    gap:10px !important;
    min-height:0 !important;
    overflow-x:auto !important;
    padding:0 0 8px !important;
    scroll-snap-type:x mandatory !important;
    overscroll-behavior-inline:contain !important;
    scrollbar-width:thin !important;
  }

  .ac-gym-zone-gallery--seven img:first-child,
  .ac-gym-zone-gallery--seven img:not(:first-child),
  .ac-gym-zone-gallery--one img{
    flex:0 0 84% !important;
    width:84% !important;
    height:260px !important;
    grid-column:auto !important;
    grid-row:auto !important;
    scroll-snap-align:start !important;
    border-radius:20px !important;
  }

  .ac-gym-zone-gallery--one{
    overflow:visible !important;
    padding-bottom:0 !important;
  }

  .ac-gym-zone-gallery--one img{
    flex:0 0 100% !important;
    width:100% !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.14 — MAIN METRICS + FREE WEIGHTS COVER
   Обновлённый блок показателей и схема зоны свободных весов.
========================================================= */

.ac-gym-metrics-panel--expanded .ac-gym-metric-row{
  grid-template-columns:56px minmax(150px,.68fr) minmax(0,1fr) !important;
}

.ac-gym-metrics-panel--expanded .ac-gym-metric-row strong{
  font-size:clamp(29px,2.35vw,42px) !important;
}

.ac-gym-metric-row--check strong{
  display:grid !important;
  place-items:center !important;
  width:48px !important;
  height:48px !important;
  border-radius:50% !important;
  color:#ffffff !important;
  background:#2d7fff !important;
  font-size:30px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}

.ac-gym-scale__accent-text strong{
  color:#ffffff !important;
  font:inherit !important;
  font-weight:700 !important;
}

@media(max-width:1320px){
  .ac-gym-metrics-panel--expanded .ac-gym-metric-row{
    grid-template-columns:52px minmax(138px,.62fr) minmax(0,1fr) !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row strong{
    font-size:34px !important;
  }
}

@media(max-width:1100px){
  .ac-gym-metrics-panel--expanded .ac-gym-metric-row{
    grid-template-columns:52px minmax(138px,.58fr) minmax(0,1fr) !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row:last-child{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:720px){
  .ac-gym-metrics-panel--expanded .ac-gym-metric-row{
    grid-template-columns:50px minmax(112px,.52fr) minmax(0,1fr) !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row:last-child{
    grid-column:auto !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row strong{
    font-size:29px !important;
  }

  .ac-gym-metric-row--check strong{
    width:42px !important;
    height:42px !important;
    font-size:26px !important;
  }
}

@media(max-width:430px){
  .ac-gym-metrics-panel--expanded .ac-gym-metric-row{
    grid-template-columns:44px minmax(96px,.5fr) minmax(0,1fr) !important;
    gap:10px !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row__icon{
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row__icon svg{
    width:27px !important;
    height:27px !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row strong{
    font-size:25px !important;
  }

  .ac-gym-metrics-panel--expanded .ac-gym-metric-row > span:last-child{
    font-size:13px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.15 — ZONE CONTENT STRUCTURE
   Изолированная типографика описаний, оборудования и расписания зон.
========================================================= */

.ac-gym-zone-panel__group{
  display:grid !important;
  gap:8px !important;
  margin-top:18px !important;
}

.ac-gym-zone-panel__copy > .ac-gym-zone-panel__group:first-of-type{
  margin-top:16px !important;
}

.ac-gym-zone-panel__label{
  display:block !important;
  color:#071936 !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  letter-spacing:.01em !important;
}

.ac-gym-zone-panel__group p{
  margin:0 !important;
}

.ac-gym-zone-panel__group ul{
  margin:0 !important;
}

.ac-gym-zone-panel__group--schedule{
  padding-top:2px !important;
}

.ac-gym-zone-panel__schedule{
  display:grid !important;
  gap:7px !important;
}

.ac-gym-zone-panel__schedule li strong{
  color:#071936 !important;
  font-weight:700 !important;
}

@media(max-width:620px){
  .ac-gym-zone-panel__group{
    margin-top:15px !important;
  }

  .ac-gym-zone-panel__copy > .ac-gym-zone-panel__group:first-of-type{
    margin-top:13px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.16 — ATMOSPHERE + METAL BADGES
   Возвращена плашка про атмосферу.
   В блоке показателей строка про отдельный зал пауэрлифтинга
   заменена полноформатной плашкой про 100+ тонн металла.
========================================================= */

.ac-gym-metrics-panel__metal{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
  margin:16px 0 4px !important;
  padding:18px 18px !important;
  border-radius:20px !important;
  color:#ffffff !important;
  background:linear-gradient(105deg,#0b3157 0%,#0b4fa3 100%) !important;
  box-shadow:0 16px 34px rgba(8,28,62,.14) !important;
}

.ac-gym-metrics-panel__metal-icon{
  width:52px !important;
  height:52px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:17px !important;
  color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.16) !important;
}

.ac-gym-metrics-panel__metal-icon svg{
  width:34px !important;
  height:34px !important;
}

.ac-gym-metrics-panel__metal-text{
  display:block !important;
  color:#ffffff !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

.ac-gym-metrics-panel__metal-text strong{
  display:block !important;
  margin-bottom:4px !important;
  color:#ffffff !important;
  font:inherit !important;
  font-weight:700 !important;
}

.ac-gym-scale__accent{
  margin-top:28px !important;
}

@media(max-width:620px){
  .ac-gym-metrics-panel__metal{
    grid-template-columns:44px minmax(0,1fr) !important;
    gap:12px !important;
    padding:16px !important;
    border-radius:18px !important;
  }

  .ac-gym-metrics-panel__metal-icon{
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
  }

  .ac-gym-metrics-panel__metal-icon svg{
    width:29px !important;
    height:29px !important;
  }

  .ac-gym-metrics-panel__metal-text{
    font-size:13px !important;
    line-height:1.5 !important;
  }

  .ac-gym-scale__accent{
    margin-top:22px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.19 — MODERN BENEFITS
   Современный блок преимуществ с системной типографикой,
   линейными SVG-иконками и выделенной карточкой манежа.
========================================================= */

.ac-gym-included .ac-gym-benefits-modern,
.ac-gym-included .ac-gym-benefit-card,
.ac-gym-included .ac-gym-benefit-card h3,
.ac-gym-included .ac-gym-benefit-card p,
.ac-gym-included .ac-gym-benefit-card span,
.ac-gym-included .ac-gym-benefit-card strong{
  font-family:var(--ac-font) !important;
}

.ac-gym-benefits-modern{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-gym-benefit-card{
  min-width:0 !important;
  min-height:238px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:22px !important;
  padding:26px !important;
  border-radius:30px !important;
  color:#071936 !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.075) !important;
}

.ac-gym-benefit-card--wide{
  grid-column:1 / -1 !important;
}

.ac-gym-benefit-card--lead{
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  align-items:center !important;
  gap:20px !important;
}

.ac-gym-benefit-card--lead .ac-gym-benefit-card__top{
  display:block !important;
}

.ac-gym-benefit-card--lead .ac-gym-benefit-card__number{
  display:none !important;
}

.ac-gym-benefit-card__top{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}

.ac-gym-benefit-card__icon{
  width:58px !important;
  height:58px !important;
  flex:0 0 58px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:19px !important;
  color:#0b4fa3 !important;
  background:linear-gradient(145deg,rgba(45,127,255,.14),rgba(0,183,255,.08)) !important;
  border:1px solid rgba(45,127,255,.14) !important;
}

.ac-gym-benefit-card__icon svg{
  width:30px !important;
  height:30px !important;
  display:block !important;
}

.ac-gym-benefit-card__number{
  color:#2d7fff !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
}

.ac-gym-benefit-card__body{
  min-width:0 !important;
}

.ac-gym-benefit-card__body h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(21px,1.55vw,27px) !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
  font-weight:700 !important;
  text-wrap:balance !important;
}

.ac-gym-benefit-card__body p{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.66 !important;
  font-weight:400 !important;
}

.ac-gym-benefit-card--lead .ac-gym-benefit-card__body h3{
  font-size:clamp(24px,2vw,32px) !important;
}

.ac-gym-benefit-card--lead .ac-gym-benefit-card__body p{
  max-width:900px !important;
  font-size:16px !important;
}

.ac-gym-benefit-card--manege{
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr) !important;
  gap:28px !important;
  align-items:stretch !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,248,255,.94)) !important;
}

.ac-gym-benefit-card__manege-copy{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:22px !important;
}

.ac-gym-benefit-schedule{
  min-width:0 !important;
  padding:22px !important;
  border-radius:24px !important;
  background:#071c3a !important;
  color:#ffffff !important;
}

.ac-gym-benefit-schedule__label{
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
}

.ac-gym-benefit-schedule > p{
  margin:14px 0 0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.ac-gym-benefit-schedule ul{
  list-style:none !important;
  display:grid !important;
  gap:0 !important;
  margin:14px 0 0 !important;
  padding:0 !important;
}

.ac-gym-benefit-schedule li{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  gap:14px !important;
  padding:11px 0 !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
}

.ac-gym-benefit-schedule li strong{
  color:#ffffff !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}

.ac-gym-benefit-schedule li span{
  color:rgba(255,255,255,.9) !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

html[data-theme="dark"] .ac-gym-benefit-card{
  background:#ffffff !important;
  color:#071936 !important;
}

@media(max-width:980px){
  .ac-gym-benefit-card--manege{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:760px){
  .ac-gym-benefits-modern{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .ac-gym-benefit-card,
  .ac-gym-benefit-card--wide{
    grid-column:auto !important;
  }

  .ac-gym-benefit-card{
    min-height:0 !important;
    gap:18px !important;
    padding:20px !important;
    border-radius:24px !important;
  }

  .ac-gym-benefit-card--lead{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:18px !important;
  }

  .ac-gym-benefit-card--lead .ac-gym-benefit-card__top{
    display:flex !important;
  }

  .ac-gym-benefit-card--lead .ac-gym-benefit-card__number{
    display:block !important;
  }

  .ac-gym-benefit-card__icon{
    width:52px !important;
    height:52px !important;
    flex-basis:52px !important;
    border-radius:17px !important;
  }

  .ac-gym-benefit-card__icon svg{
    width:28px !important;
    height:28px !important;
  }

  .ac-gym-benefit-card__body h3,
  .ac-gym-benefit-card--lead .ac-gym-benefit-card__body h3{
    font-size:23px !important;
  }

  .ac-gym-benefit-card__body p,
  .ac-gym-benefit-card--lead .ac-gym-benefit-card__body p{
    font-size:15px !important;
    line-height:1.62 !important;
  }

  .ac-gym-benefit-card--manege{
    gap:20px !important;
  }

  .ac-gym-benefit-schedule{
    padding:18px !important;
    border-radius:20px !important;
  }

  .ac-gym-benefit-schedule li{
    grid-template-columns:64px minmax(0,1fr) !important;
    gap:10px !important;
  }
}

@media(max-width:420px){
  .ac-gym-benefit-schedule li{
    grid-template-columns:1fr !important;
    gap:3px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.20 — HERO DEAL VERTICAL CENTER
   На широкой версии карточка разового посещения вертикально
   центрируется относительно левой текстовой части hero.
========================================================= */

@media(min-width:1181px){
  .ac-gym-hero .ac-gym-hero__deal{
    align-self:center !important;
    transform:translateY(-4vh) !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.21 — MOBILE LIMITED TARIFF ACCORDION
   Desktop keeps the comparison table. On mobile the limited
   tariffs switch to grouped accordions by term.
========================================================= */

.ac-gym-tariff-mobile{
  display:none !important;
}

@media(max-width:760px){
  .ac-gym-tariff-table-wrap{
    display:none !important;
  }

  .ac-gym-tariff-mobile{
    display:grid !important;
    gap:14px !important;
    margin-top:18px !important;
  }

  .ac-gym-tariff-accordion{
    border:1px solid rgba(8,28,62,.08) !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
    overflow:hidden !important;
  }

  .ac-gym-tariff-accordion[open]{
    background:#ffffff !important;
  }

  .ac-gym-tariff-accordion__summary{
    list-style:none !important;
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) 20px !important;
    align-items:center !important;
    gap:14px !important;
    padding:18px 18px !important;
    cursor:pointer !important;
  }

  .ac-gym-tariff-accordion__summary::-webkit-details-marker{
    display:none !important;
  }

  .ac-gym-tariff-accordion__icon{
    width:44px !important;
    height:44px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:14px !important;
    color:#2d7fff !important;
    background:linear-gradient(145deg,rgba(45,127,255,.11),rgba(7,135,189,.06)) !important;
    border:1px solid rgba(45,127,255,.12) !important;
  }

  .ac-gym-tariff-accordion__icon svg{
    width:24px !important;
    height:24px !important;
    display:block !important;
  }

  .ac-gym-tariff-accordion__title{
    color:#071936 !important;
    font-family:var(--ac-font) !important;
    font-size:18px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:-.02em !important;
  }

  .ac-gym-tariff-accordion__chevron{
    width:20px !important;
    height:20px !important;
    display:grid !important;
    place-items:center !important;
    color:#071936 !important;
    transition:transform .22s ease !important;
  }

  .ac-gym-tariff-accordion__chevron svg{
    width:20px !important;
    height:20px !important;
    display:block !important;
  }

  .ac-gym-tariff-accordion[open] .ac-gym-tariff-accordion__chevron{
    transform:rotate(180deg) !important;
  }

  .ac-gym-tariff-accordion__body{
    display:grid !important;
    gap:10px !important;
    padding:0 14px 14px !important;
  }

  .ac-gym-tariff-mobile-card{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:12px !important;
    align-items:center !important;
    padding:16px 16px !important;
    border-radius:18px !important;
    background:#f8fbff !important;
    border:1px solid rgba(8,28,62,.06) !important;
  }

  .ac-gym-tariff-mobile-card__meta,
  .ac-gym-tariff-mobile-card__price{
    min-width:0 !important;
    display:grid !important;
    gap:4px !important;
  }

  .ac-gym-tariff-mobile-card__meta strong,
  .ac-gym-tariff-mobile-card__price strong,
  .ac-gym-tariff-mobile-card__meta span,
  .ac-gym-tariff-mobile-card__price small{
    font-family:var(--ac-font) !important;
  }

  .ac-gym-tariff-mobile-card__meta strong{
    color:#071936 !important;
    font-size:20px !important;
    line-height:1.06 !important;
    font-weight:700 !important;
    letter-spacing:-.02em !important;
  }

  .ac-gym-tariff-mobile-card__meta span{
    color:#64748b !important;
    font-size:14px !important;
    line-height:1.35 !important;
    font-weight:400 !important;
  }

  .ac-gym-tariff-mobile-card__price{
    justify-items:end !important;
    text-align:right !important;
  }

  .ac-gym-tariff-mobile-card__price strong{
    color:#071936 !important;
    font-size:20px !important;
    line-height:1.06 !important;
    font-weight:700 !important;
    letter-spacing:-.02em !important;
  }

  .ac-gym-tariff-mobile-card__price small{
    color:#2d7fff !important;
    font-size:14px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
  }
}

@media(max-width:420px){
  .ac-gym-tariff-accordion__summary{
    grid-template-columns:40px minmax(0,1fr) 18px !important;
    gap:12px !important;
    padding:16px !important;
  }

  .ac-gym-tariff-accordion__icon{
    width:40px !important;
    height:40px !important;
    border-radius:13px !important;
  }

  .ac-gym-tariff-accordion__icon svg{
    width:22px !important;
    height:22px !important;
  }

  .ac-gym-tariff-accordion__title{
    font-size:17px !important;
  }

  .ac-gym-tariff-mobile-card{
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:14px !important;
  }

  .ac-gym-tariff-mobile-card__price{
    justify-items:start !important;
    text-align:left !important;
  }

  .ac-gym-tariff-mobile-card__meta strong,
  .ac-gym-tariff-mobile-card__price strong{
    font-size:18px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.22 — VIDEO ONLY + TRAINER CATALOG
   Видеоэкскурсия без дублирующих фотокарточек.
   Каталог тренеров с данными, фотографиями и прямыми звонками.
========================================================= */

.ac-gym-video-only{
  max-width:1120px !important;
  margin-inline:auto !important;
}

.ac-gym-programs__intro{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr) !important;
  gap:clamp(24px,4vw,60px) !important;
  align-items:end !important;
  margin:0 0 20px !important;
}

.ac-gym-programs__intro h3{
  margin:0 !important;
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:clamp(28px,3vw,44px) !important;
  line-height:1.06 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

.ac-gym-programs__intro p{
  max-width:660px !important;
  margin:0 !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:16px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
}

.ac-gym-trainers__head{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr) !important;
  gap:clamp(24px,4vw,60px) !important;
  align-items:end !important;
  margin:clamp(54px,7vw,88px) 0 24px !important;
}

.ac-gym-trainers__head h3{
  margin:12px 0 0 !important;
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:clamp(30px,3.2vw,48px) !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.04em !important;
}

.ac-gym-trainers__head > p{
  max-width:680px !important;
  margin:0 !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:16px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
}

.ac-gym-trainers{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-gym-trainer-card{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border-radius:28px !important;
  color:#071936 !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.075) !important;
}

.ac-gym-trainer-card__media{
  position:relative !important;
  aspect-ratio:4/5 !important;
  overflow:hidden !important;
  background:#dfeafa !important;
}

.ac-gym-trainer-card__media::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(4,20,43,0) 52%,rgba(4,20,43,.32) 100%) !important;
}

.ac-gym-trainer-card__media img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center top !important;
}

.ac-gym-trainer-card__experience{
  position:absolute !important;
  left:16px !important;
  bottom:16px !important;
  z-index:2 !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:6px 11px !important;
  border-radius:999px !important;
  color:#ffffff !important;
  background:rgba(4,24,52,.78) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  backdrop-filter:blur(9px) !important;
  font-family:var(--ac-font) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:500 !important;
}

.ac-gym-trainer-card__body{
  min-width:0 !important;
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  padding:22px !important;
}

.ac-gym-trainer-card__number{
  color:#2d7fff !important;
  font-family:var(--ac-font) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
}

.ac-gym-trainer-card__body h3{
  margin:10px 0 0 !important;
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:clamp(22px,1.6vw,27px) !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  letter-spacing:-.025em !important;
}

.ac-gym-trainer-card__achievement{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:14px !important;
  line-height:1.58 !important;
  font-weight:400 !important;
}

.ac-gym-trainer-card__details{
  margin-top:17px !important;
  padding-top:15px !important;
  border-top:1px solid rgba(8,28,62,.08) !important;
}

.ac-gym-trainer-card__details summary{
  list-style:none !important;
  position:relative !important;
  padding-right:25px !important;
  color:#0b4fa3 !important;
  cursor:pointer !important;
  font-family:var(--ac-font) !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

.ac-gym-trainer-card__details summary::-webkit-details-marker{
  display:none !important;
}

.ac-gym-trainer-card__details summary::after{
  content:"+" !important;
  position:absolute !important;
  top:50% !important;
  right:0 !important;
  transform:translateY(-50%) !important;
  color:#2d7fff !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:400 !important;
}

.ac-gym-trainer-card__details[open] summary::after{
  content:"−" !important;
}

.ac-gym-trainer-card__details-body{
  display:grid !important;
  gap:7px !important;
  margin-top:14px !important;
}

.ac-gym-trainer-card__details-body strong{
  margin-top:5px !important;
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

.ac-gym-trainer-card__details-body p{
  margin:0 !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:13px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

.ac-gym-trainer-card__call{
  width:100% !important;
  margin-top:auto !important;
  padding-top:14px !important;
  padding-bottom:14px !important;
  text-align:center !important;
}

.ac-gym-trainer-card__details + .ac-gym-trainer-card__call{
  margin-top:20px !important;
}

.ac-gym-trainers__actions{
  justify-content:center !important;
  margin-top:28px !important;
}

@media(max-width:1100px){
  .ac-gym-trainers{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .ac-gym-programs__intro,
  .ac-gym-trainers__head{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
}

@media(max-width:620px){
  .ac-gym-video-only{
    max-width:none !important;
  }

  .ac-gym-programs__intro{
    margin-bottom:16px !important;
  }

  .ac-gym-trainers__head{
    margin-top:48px !important;
    margin-bottom:18px !important;
  }

  .ac-gym-trainers{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .ac-gym-trainer-card{
    border-radius:24px !important;
  }

  .ac-gym-trainer-card__media{
    aspect-ratio:4/4.6 !important;
  }

  .ac-gym-trainer-card__body{
    padding:20px !important;
  }

  .ac-gym-trainer-card__body h3{
    font-size:24px !important;
  }

  .ac-gym-trainer-card__call{
    min-height:50px !important;
  }

  .ac-gym-trainers__actions .ach-btn{
    width:100% !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.23 — VIDEO TOUR VARIANT 4
   Широкий кинематографичный блок видеоэкскурсии
   без фотокарточек, с акцентом на видео и чипами зон.
========================================================= */

.ac-gym-video-showcase .ac-pass-wrap{
  display:block !important;
}

.ac-gym-video-showcase .ac-pass-section__head{
  margin-bottom:26px !important;
}

.ac-gym-video-showcase .ac-pass-section__head h2,
.ac-gym-video-showcase .ac-pass-section__head p,
.ac-gym-video-showcase .ac-pass-section__head .ach-kicker{
  font-family:var(--ac-font) !important;
}

.ac-gym-video-showcase__card{
  max-width:none !important;
  margin-inline:auto !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.08) !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video{
  border-radius:0 !important;
  overflow:hidden !important;
  background:#06142b !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video iframe{
  display:block !important;
  width:100% !important;
  aspect-ratio:16 / 9 !important;
  min-height:0 !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video-caption{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:24px !important;
  padding:22px 28px 24px !important;
  background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%) !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video-caption span,
.ac-gym-video-showcase__card .ac-pass-gallery__video-caption strong,
.ac-gym-video-showcase__card .ac-pass-gallery__video-caption p{
  font-family:var(--ac-font) !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video-caption span{
  display:inline-flex !important;
  width:max-content !important;
  min-height:30px !important;
  align-items:center !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  color:#0b4fa3 !important;
  background:rgba(45,127,255,.08) !important;
  border:1px solid rgba(45,127,255,.14) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video-caption strong{
  display:block !important;
  margin:10px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(26px,2vw,34px) !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:-.03em !important;
}

.ac-gym-video-showcase__card .ac-pass-gallery__video-caption p{
  max-width:520px !important;
  margin:4px 0 0 auto !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.6 !important;
  font-weight:400 !important;
  text-align:right !important;
}

.ac-gym-video-showcase__footer{
  margin-top:20px !important;
}

.ac-gym-video-showcase__lead{
  margin:0 0 18px !important;
  text-align:center !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:20px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

.ac-gym-video-showcase__chips{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:16px !important;
}

.ac-gym-video-showcase__chip{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:56px minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
  padding:20px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 30px rgba(8,28,62,.05) !important;
}

.ac-gym-video-showcase__chip-icon{
  width:56px !important;
  height:56px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:18px !important;
  color:#2d7fff !important;
  background:linear-gradient(145deg,rgba(45,127,255,.12),rgba(7,135,189,.07)) !important;
  border:1px solid rgba(45,127,255,.12) !important;
}

.ac-gym-video-showcase__chip-icon svg{
  width:28px !important;
  height:28px !important;
  display:block !important;
}

.ac-gym-video-showcase__chip-body h3,
.ac-gym-video-showcase__chip-body p{
  margin:0 !important;
  font-family:var(--ac-font) !important;
}

.ac-gym-video-showcase__chip-body h3{
  color:#071936 !important;
  font-size:20px !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
}

.ac-gym-video-showcase__chip-body p{
  margin-top:8px !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

@media(max-width:1100px){
  .ac-gym-video-showcase__chips{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .ac-gym-video-showcase .ac-pass-section__head{
    margin-bottom:18px !important;
  }

  .ac-gym-video-showcase__card{
    border-radius:24px !important;
  }

  .ac-gym-video-showcase__card .ac-pass-gallery__video-caption{
    display:block !important;
    padding:18px 18px 20px !important;
  }

  .ac-gym-video-showcase__card .ac-pass-gallery__video-caption strong{
    margin-top:10px !important;
    font-size:26px !important;
  }

  .ac-gym-video-showcase__card .ac-pass-gallery__video-caption p{
    max-width:none !important;
    margin:10px 0 0 !important;
    font-size:15px !important;
    text-align:left !important;
  }

  .ac-gym-video-showcase__lead{
    margin-bottom:14px !important;
    font-size:17px !important;
  }

  .ac-gym-video-showcase__chips{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .ac-gym-video-showcase__chip{
    grid-template-columns:48px minmax(0,1fr) !important;
    gap:14px !important;
    padding:16px !important;
    border-radius:20px !important;
  }

  .ac-gym-video-showcase__chip-icon{
    width:48px !important;
    height:48px !important;
    border-radius:16px !important;
  }

  .ac-gym-video-showcase__chip-icon svg{
    width:24px !important;
    height:24px !important;
  }

  .ac-gym-video-showcase__chip-body h3{
    font-size:18px !important;
  }

  .ac-gym-video-showcase__chip-body p{
    font-size:13px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.23.1 — VIDEO LAYOUT COMPATIBILITY FIX
   Сбрасывает старую двухколоночную сетку video-card,
   которая применялась от блока «Единый абонемент».
========================================================= */

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  align-items:initial !important;
  margin-top:26px !important;
  margin-bottom:18px !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video{
  width:100% !important;
  aspect-ratio:16 / 9 !important;
  border-radius:0 !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption{
  min-height:auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr) !important;
  grid-template-areas:
    "badge text"
    "title text" !important;
  gap:10px 32px !important;
  align-items:end !important;
  justify-content:initial !important;
  flex-direction:initial !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption::before{
  display:none !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption span{
  grid-area:badge !important;
  align-self:start !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption strong{
  grid-area:title !important;
  align-self:end !important;
}

#ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption p{
  grid-area:text !important;
  align-self:end !important;
  max-width:560px !important;
  margin:0 0 2px auto !important;
  text-align:left !important;
}

@media(max-width:760px){
  #ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card{
    margin-top:18px !important;
    margin-bottom:14px !important;
  }

  #ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "badge"
      "title"
      "text" !important;
    gap:0 !important;
    align-items:start !important;
  }

  #ac-gym-video.ac-gym-video-showcase .ac-gym-video-showcase__card .ac-pass-gallery__video-caption p{
    max-width:none !important;
    margin:10px 0 0 !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.24 — VIDEO TOUR VARIANT 1
   Сплит-компоновка: текст и факты слева, видео справа.
========================================================= */

#ac-gym-video.ac-gym-video-split{
  overflow:hidden !important;
}

#ac-gym-video .ac-gym-video-split__layout{
  display:grid !important;
  grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr) !important;
  gap:clamp(34px,5vw,78px) !important;
  align-items:center !important;
}

#ac-gym-video .ac-gym-video-split__copy{
  min-width:0 !important;
}

#ac-gym-video .ac-gym-video-split__copy h2{
  max-width:650px !important;
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:clamp(42px,5vw,72px) !important;
  line-height:.98 !important;
  font-weight:700 !important;
  letter-spacing:-.05em !important;
  text-wrap:balance !important;
}

#ac-gym-video .ac-gym-video-split__description{
  max-width:610px !important;
  margin:24px 0 0 !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:17px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
}

#ac-gym-video .ac-gym-video-split__facts{
  display:grid !important;
  gap:10px !important;
  margin-top:26px !important;
}

#ac-gym-video .ac-gym-video-split__fact{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  gap:14px !important;
  align-items:center !important;
  padding:13px 15px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(8,28,62,.07) !important;
  box-shadow:0 10px 26px rgba(8,28,62,.04) !important;
}

#ac-gym-video .ac-gym-video-split__fact-icon{
  width:44px !important;
  height:44px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  color:#2d7fff !important;
  background:linear-gradient(145deg,rgba(45,127,255,.12),rgba(7,135,189,.06)) !important;
  border:1px solid rgba(45,127,255,.12) !important;
}

#ac-gym-video .ac-gym-video-split__fact-icon svg{
  width:24px !important;
  height:24px !important;
  display:block !important;
}

#ac-gym-video .ac-gym-video-split__fact-body{
  min-width:0 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:baseline !important;
  gap:5px 9px !important;
}

#ac-gym-video .ac-gym-video-split__fact-body strong,
#ac-gym-video .ac-gym-video-split__fact-body span{
  font-family:var(--ac-font) !important;
}

#ac-gym-video .ac-gym-video-split__fact-body strong{
  color:#071936 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

#ac-gym-video .ac-gym-video-split__fact-body span{
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

#ac-gym-video .ac-gym-video-split__note{
  position:relative !important;
  margin:20px 0 0 !important;
  padding-left:25px !important;
  color:#64748b !important;
  font-family:var(--ac-font) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

#ac-gym-video .ac-gym-video-split__note::before{
  content:"" !important;
  position:absolute !important;
  top:2px !important;
  left:0 !important;
  width:16px !important;
  height:16px !important;
  border-radius:50% !important;
  border:1.5px solid #2d7fff !important;
  box-shadow:inset 0 0 0 4px #f4f8ff !important;
  background:#2d7fff !important;
}

#ac-gym-video .ac-gym-video-split__media{
  min-width:0 !important;
  overflow:hidden !important;
  border-radius:30px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 20px 48px rgba(8,28,62,.09) !important;
}

#ac-gym-video .ac-gym-video-split__video{
  position:relative !important;
  width:100% !important;
  aspect-ratio:16 / 10 !important;
  overflow:hidden !important;
  background:#06142b !important;
}

#ac-gym-video .ac-gym-video-split__video iframe{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  border:0 !important;
}

#ac-gym-video .ac-gym-video-split__caption{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:18px 20px 20px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
}

#ac-gym-video .ac-gym-video-split__caption-text{
  min-width:0 !important;
  display:grid !important;
  gap:4px !important;
}

#ac-gym-video .ac-gym-video-split__caption-text strong,
#ac-gym-video .ac-gym-video-split__caption-text span,
#ac-gym-video .ac-gym-video-split__caption-badge{
  font-family:var(--ac-font) !important;
}

#ac-gym-video .ac-gym-video-split__caption-text strong{
  color:#071936 !important;
  font-size:19px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

#ac-gym-video .ac-gym-video-split__caption-text span{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

#ac-gym-video .ac-gym-video-split__caption-badge{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  color:#0b4fa3 !important;
  background:rgba(45,127,255,.08) !important;
  border:1px solid rgba(45,127,255,.14) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

@media(max-width:1180px){
  #ac-gym-video .ac-gym-video-split__layout{
    grid-template-columns:minmax(0,.85fr) minmax(460px,1.15fr) !important;
    gap:34px !important;
  }

  #ac-gym-video .ac-gym-video-split__copy h2{
    font-size:clamp(38px,4.4vw,58px) !important;
  }
}

@media(max-width:920px){
  #ac-gym-video .ac-gym-video-split__layout{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  #ac-gym-video .ac-gym-video-split__copy h2{
    max-width:760px !important;
  }

  #ac-gym-video .ac-gym-video-split__description{
    max-width:760px !important;
  }

  #ac-gym-video .ac-gym-video-split__facts{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:620px){
  #ac-gym-video .ac-gym-video-split__copy h2{
    margin-top:12px !important;
    font-size:38px !important;
    line-height:1.02 !important;
  }

  #ac-gym-video .ac-gym-video-split__description{
    margin-top:18px !important;
    font-size:15px !important;
  }

  #ac-gym-video .ac-gym-video-split__facts{
    grid-template-columns:1fr !important;
    margin-top:20px !important;
  }

  #ac-gym-video .ac-gym-video-split__fact{
    grid-template-columns:40px minmax(0,1fr) !important;
    gap:12px !important;
    padding:12px 13px !important;
    border-radius:16px !important;
  }

  #ac-gym-video .ac-gym-video-split__fact-icon{
    width:40px !important;
    height:40px !important;
    border-radius:13px !important;
  }

  #ac-gym-video .ac-gym-video-split__fact-icon svg{
    width:22px !important;
    height:22px !important;
  }

  #ac-gym-video .ac-gym-video-split__fact-body{
    display:grid !important;
    gap:2px !important;
  }

  #ac-gym-video .ac-gym-video-split__media{
    border-radius:24px !important;
  }

  #ac-gym-video .ac-gym-video-split__video{
    aspect-ratio:16 / 10.5 !important;
  }

  #ac-gym-video .ac-gym-video-split__caption{
    align-items:flex-start !important;
    padding:16px !important;
  }

  #ac-gym-video .ac-gym-video-split__caption-badge{
    display:none !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.25 — COACHES HEADER + TYPOGRAPHY FIX
   Единая системная типографика Evolventa и собранная шапка
   блока «Персональные тренировки».
========================================================= */

#ac-gym-coaches,
#ac-gym-coaches h2,
#ac-gym-coaches h3,
#ac-gym-coaches p,
#ac-gym-coaches span,
#ac-gym-coaches strong,
#ac-gym-coaches summary,
#ac-gym-coaches a{
  font-family:var(--ac-font) !important;
}

#ac-gym-coaches .ac-pass-section__head--split{
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.62fr) !important;
  gap:clamp(36px,5vw,76px) !important;
  align-items:end !important;
  margin-bottom:34px !important;
}

#ac-gym-coaches .ac-pass-section__head h2{
  max-width:900px !important;
  margin-top:16px !important;
  font-size:clamp(44px,4.7vw,76px) !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
  text-wrap:balance !important;
}

#ac-gym-coaches .ac-pass-section__head--split > p{
  max-width:520px !important;
  margin:0 0 4px !important;
  font-size:16px !important;
  line-height:1.68 !important;
}

#ac-gym-coaches .ac-gym-programs__intro{
  display:block !important;
  margin:0 0 20px !important;
  padding:22px 26px 24px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(8,28,62,.07) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.045) !important;
}

#ac-gym-coaches .ac-gym-programs__intro h3{
  max-width:760px !important;
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.35vw,38px) !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
  font-weight:700 !important;
  text-wrap:balance !important;
}

#ac-gym-coaches .ac-gym-programs__intro p{
  max-width:820px !important;
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.62 !important;
  font-weight:400 !important;
}

#ac-gym-coaches .ac-gym-programs{
  gap:16px !important;
}

#ac-gym-coaches .ac-gym-programs .ach-program{
  min-height:214px !important;
  padding:22px !important;
  border-radius:26px !important;
}

#ac-gym-coaches .ac-gym-programs .ach-program__num{
  color:#0787bd !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
}

#ac-gym-coaches .ac-gym-programs .ach-program h3{
  margin:22px 0 0 !important;
  color:#071936 !important;
  font-size:23px !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
  font-weight:700 !important;
  text-wrap:balance !important;
}

#ac-gym-coaches .ac-gym-programs .ach-program p{
  margin:11px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
  font-weight:400 !important;
}

@media(max-width:1024px){
  #ac-gym-coaches .ac-pass-section__head--split{
    grid-template-columns:1fr !important;
    gap:16px !important;
    align-items:start !important;
  }

  #ac-gym-coaches .ac-pass-section__head--split > p{
    max-width:760px !important;
    margin:0 !important;
  }
}

@media(max-width:760px){
  #ac-gym-coaches .ac-pass-section__head--split{
    margin-bottom:24px !important;
  }

  #ac-gym-coaches .ac-pass-section__head h2{
    font-size:40px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }

  #ac-gym-coaches .ac-gym-programs__intro{
    padding:18px 18px 20px !important;
    border-radius:20px !important;
  }

  #ac-gym-coaches .ac-gym-programs__intro h3{
    font-size:28px !important;
  }

  #ac-gym-coaches .ac-gym-programs .ach-program{
    min-height:0 !important;
    padding:20px !important;
    border-radius:22px !important;
  }

  #ac-gym-coaches .ac-gym-programs .ach-program h3{
    margin-top:18px !important;
    font-size:22px !important;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.26 — TRAINER ACHIEVEMENTS COLLAPSED
   Вся информация об образовании и достижениях скрыта
   в раскрывающемся блоке с плюсиком.
========================================================= */

#ac-gym-coaches .ac-gym-trainer-card__achievement{
  display:none !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details{
  margin-top:18px !important;
  padding-top:0 !important;
  border-top:0 !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details summary{
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:13px 14px !important;
  border-radius:16px !important;
  color:#071936 !important;
  background:#f4f8ff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  cursor:pointer !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details summary::after{
  display:none !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details-label{
  color:#071936 !important;
  font-family:var(--ac-font) !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details-icon{
  width:28px !important;
  height:28px !important;
  flex:0 0 28px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  color:#ffffff !important;
  background:#2d7fff !important;
  font-family:var(--ac-font) !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:400 !important;
  transition:transform .2s ease !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details[open] .ac-gym-trainer-card__details-icon{
  transform:rotate(45deg) !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details-body{
  margin-top:12px !important;
  padding:15px 14px 2px !important;
  border-left:2px solid rgba(45,127,255,.18) !important;
}

#ac-gym-coaches .ac-gym-trainer-card__details + .ac-gym-trainer-card__call{
  margin-top:18px !important;
}

@media(max-width:620px){
  #ac-gym-coaches .ac-gym-trainer-card__details summary{
    min-height:50px !important;
    padding:13px 14px !important;
  }

  #ac-gym-coaches .ac-gym-trainer-card__details-label{
    font-size:14px !important;
  }
}

/* =========================================================
   ALEXCLUB FITNESS V2 — GROUP CLASSES
   Base: exact full main.css from Gym V3.26 (10.08.2026)
   Only unique page logic below. System components are reused:
   ac-pass-hero, ac-pass-intent, ac-pass-section, ac-gym-price-*,
   ac-pass-price-*, ac-gym-benefit-*, ac-gym-trainer-*,
   ac-pass-final.
========================================================= */

.ac-fit .ac-pass-hero__bg{
  background:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.28),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(7,135,189,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.86),rgba(5,8,20,.34)),
    url("https://alexclub.ru/wp-content/uploads/2023/03/fit-3.jpg") center center / cover no-repeat !important;
}

.ac-fit .ac-pass-hero__content h1{
  max-width:980px !important;
}

.ac-fit-hero__deal-action{
  width:100% !important;
  margin-top:18px !important;
}

.ac-fit-selection__grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

.ac-fit-selection__card{
  appearance:none !important;
  width:100% !important;
  min-height:210px !important;
  padding:26px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  border-radius:30px !important;
  background:#fff !important;
  box-shadow:0 16px 42px rgba(8,28,62,.06) !important;
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
  text-align:left !important;
  cursor:pointer !important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease !important;
}

.ac-fit-selection__card:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(45,127,255,.24) !important;
  box-shadow:0 22px 48px rgba(8,28,62,.10) !important;
}

.ac-fit-selection__card--wide{
  grid-column:1/-1 !important;
}

.ac-fit-selection__num{
  width:46px !important;
  height:46px !important;
  border-radius:16px !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(45,127,255,.10) !important;
  color:#2d7fff !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.ac-fit-selection__body strong{
  display:block !important;
  color:#071936 !important;
  font-size:clamp(24px,2vw,32px) !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
}

.ac-fit-selection__body p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

.ac-fit-filterbar{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 0 22px !important;
}

.ac-fit-filterbar button{
  min-height:42px !important;
  padding:0 15px !important;
  border:1px solid rgba(8,28,62,.10) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#334155 !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

.ac-fit-filterbar button.is-active{
  background:#071936 !important;
  border-color:#071936 !important;
  color:#fff !important;
}

.ac-fit-directions__grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
}

.ac-fit-direction-card{
  min-height:270px !important;
  padding:24px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  border-radius:30px !important;
  background:#fff !important;
  box-shadow:0 16px 42px rgba(8,28,62,.06) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-fit-direction-card__meta{
  display:flex !important;
  gap:6px !important;
  flex-wrap:wrap !important;
}

.ac-fit-direction-card__meta span{
  min-height:30px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(7,135,189,.08) !important;
  color:#0787bd !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.ac-fit-direction-card h3{
  margin:22px 0 0 !important;
  color:#071936 !important;
  font-size:30px !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
}

.ac-fit-direction-card p{
  margin:12px 0 22px !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.58 !important;
}

.ac-fit-direction-card__link{
  margin-top:auto !important;
  color:#0b4fa3 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.ac-fit-schedule{
  background:
    radial-gradient(circle at 92% 4%,rgba(7,135,189,.10),transparent 30rem),
    linear-gradient(180deg,#eef6ff,#f7fbff) !important;
}

.ac-fit-schedule__panel{
  padding:26px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  border-radius:34px !important;
  background:#fff !important;
  box-shadow:0 22px 58px rgba(8,28,62,.08) !important;
}

.ac-fit-schedule__tabs{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:8px !important;
  padding:6px !important;
  border-radius:20px !important;
  background:#f1f5f9 !important;
}

.ac-fit-schedule__tabs button{
  min-height:50px !important;
  border:0 !important;
  border-radius:15px !important;
  background:transparent !important;
  color:#64748b !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

.ac-fit-schedule__tabs button.is-active{
  background:#071936 !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(7,25,54,.16) !important;
}

.ac-fit-schedule__controls{
  display:flex !important;
  justify-content:space-between !important;
  align-items:end !important;
  gap:18px !important;
  margin-top:20px !important;
}

.ac-fit-schedule__controls .ac-fit-filterbar{
  margin:0 !important;
}

.ac-fit-schedule__select{
  display:grid !important;
  gap:6px !important;
  min-width:250px !important;
}

.ac-fit-schedule__select span{
  color:#64748b !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
}

.ac-fit-schedule__select select{
  min-height:44px !important;
  padding:0 38px 0 13px !important;
  border:1px solid rgba(8,28,62,.12) !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#071936 !important;
  font-weight:700 !important;
}

.ac-fit-halls{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin-top:20px !important;
  padding:14px 16px !important;
  border:1px solid rgba(8,28,62,.06) !important;
  border-radius:18px !important;
  background:#f8fbff !important;
}

.ac-fit-halls span{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  color:#334155 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.ac-fit-halls small{
  margin-left:auto !important;
  color:#94a3b8 !important;
  font-size:11px !important;
}

.ac-fit-hall-dot{
  width:12px !important;
  height:12px !important;
  border-radius:4px !important;
  display:inline-block !important;
}

.ac-fit-hall-dot--orange{background:#f59e0b !important;}
.ac-fit-hall-dot--green{background:#22c55e !important;}

.ac-fit-schedule__meta{
  display:flex !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin:22px 0 12px !important;
}

.ac-fit-schedule__meta strong{
  color:#071936 !important;
  font-size:22px !important;
}

.ac-fit-schedule__meta span{
  color:#64748b !important;
  font-size:13px !important;
}

.ac-fit-schedule__list{
  display:grid !important;
  gap:8px !important;
}

.ac-fit-class{
  position:relative !important;
  overflow:hidden !important;
  min-height:94px !important;
  padding:16px 18px 16px 24px !important;
  border:1px solid rgba(8,28,62,.07) !important;
  border-radius:22px !important;
  display:grid !important;
  grid-template-columns:132px minmax(0,1fr) auto auto !important;
  gap:16px !important;
  align-items:center !important;
  background:#fff !important;
}

.ac-fit-class::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:7px !important;
}

.ac-fit-class--orange{
  background:linear-gradient(90deg,rgba(245,158,11,.10),#fff 28%) !important;
}
.ac-fit-class--orange::before{background:#f59e0b !important;}

.ac-fit-class--green{
  background:linear-gradient(90deg,rgba(34,197,94,.10),#fff 28%) !important;
}
.ac-fit-class--green::before{background:#22c55e !important;}

.ac-fit-class time{
  color:#071936 !important;
  font-size:16px !important;
  font-weight:700 !important;
}

.ac-fit-class h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:20px !important;
}

.ac-fit-class p{
  margin:5px 0 0 !important;
  color:#64748b !important;
  font-size:13px !important;
}

.ac-fit-class__level{
  min-height:32px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  background:#f1f5f9 !important;
  color:#475569 !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.ac-fit-class__more{
  border:0 !important;
  background:none !important;
  color:#0b4fa3 !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

.ac-fit-week{
  display:grid !important;
  gap:8px !important;
}

.ac-fit-week section{
  padding:18px 20px !important;
  border:1px solid rgba(8,28,62,.06) !important;
  border-radius:20px !important;
  background:#f8fbff !important;
}

.ac-fit-week h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:17px !important;
}

.ac-fit-week p{
  margin:7px 0 0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-fit-schedule__note{
  margin:16px 0 0 !important;
  color:#94a3b8 !important;
  font-size:12px !important;
}

.ac-fit-price-note-extra{
  margin-top:12px !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-fit .ac-gym-benefit-card--lead{
  background:
    radial-gradient(circle at 90% 10%,rgba(45,127,255,.12),transparent 28rem),
    #fff !important;
}

.ac-fit-trainer-placeholder{
  width:100% !important;
  height:100% !important;
  min-height:310px !important;
  display:flex !important;
  align-items:flex-end !important;
  padding:18px !important;
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.56)),
    url("https://alexclub.ru/wp-content/uploads/2023/03/fit-3.jpg") center/cover no-repeat !important;
}

.ac-fit-trainer-placeholder span{
  padding:8px 10px !important;
  border-radius:999px !important;
  background:rgba(5,8,20,.50) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.ac-fit-trainer-card .ac-gym-trainer-card__call{
  margin-top:auto !important;
}

.ac-fit-first__steps{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-fit-first__steps article{
  min-height:210px !important;
  padding:22px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  border-radius:26px !important;
  background:#fff !important;
}

.ac-fit-first__steps span{
  color:#2d7fff !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.ac-fit-first__steps strong{
  display:block !important;
  margin-top:32px !important;
  color:#071936 !important;
  font-size:18px !important;
  line-height:1.15 !important;
}

.ac-fit-first__steps p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-fit-first__answers{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:12px !important;
}

.ac-fit-first__answers article{
  padding:20px !important;
  border-radius:22px !important;
  background:#eef6ff !important;
}

.ac-fit-first__answers strong{
  color:#071936 !important;
}

.ac-fit-first__answers p{
  margin:7px 0 0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-fit-gallery__grid{
  display:grid !important;
  grid-template-columns:2fr 1fr !important;
  grid-template-rows:repeat(2,270px) !important;
  gap:12px !important;
}

.ac-fit-gallery__grid figure{
  position:relative !important;
  overflow:hidden !important;
  margin:0 !important;
  border-radius:30px !important;
  background:#0d213f !important;
}

.ac-fit-gallery__grid figure:first-child{
  grid-row:1/3 !important;
}

.ac-fit-gallery__grid img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}

.ac-fit-gallery__grid figure::after{
  content:"" !important;
  position:absolute !important;
  inset:42% 0 0 !important;
  background:linear-gradient(180deg,transparent,rgba(4,10,22,.72)) !important;
}

.ac-fit-gallery__grid figcaption{
  position:absolute !important;
  z-index:1 !important;
  left:20px !important;
  bottom:18px !important;
  color:#fff !important;
}

.ac-fit-gallery__grid figcaption strong{
  display:block !important;
  font-size:18px !important;
}

.ac-fit-gallery__grid figcaption span{
  display:block !important;
  margin-top:5px !important;
  color:rgba(255,255,255,.68) !important;
  font-size:12px !important;
}

@media(max-width:980px){
  .ac-fit-directions__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .ac-fit-first__steps{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .ac-fit-first__steps article:last-child{
    grid-column:1/-1 !important;
  }
  .ac-fit-schedule__controls{
    display:grid !important;
  }
}

@media(max-width:760px){
  .ac-fit-selection__grid,
  .ac-fit-directions__grid,
  .ac-fit-first__steps,
  .ac-fit-first__answers{
    grid-template-columns:1fr !important;
  }

  .ac-fit-selection__card--wide,
  .ac-fit-first__steps article:last-child{
    grid-column:auto !important;
  }

  .ac-fit-selection__card{
    min-height:170px !important;
    padding:20px !important;
  }

  .ac-fit-schedule__panel{
    padding:14px !important;
    border-radius:28px !important;
  }

  .ac-fit-schedule__select{
    min-width:0 !important;
  }

  .ac-fit-halls small{
    width:100% !important;
    margin-left:0 !important;
  }

  .ac-fit-schedule__meta{
    display:grid !important;
    gap:5px !important;
  }

  .ac-fit-class{
    grid-template-columns:1fr !important;
    gap:7px !important;
    padding:18px 18px 18px 24px !important;
  }

  .ac-fit-class__level{
    width:max-content !important;
  }

  .ac-fit-class__more{
    justify-self:start !important;
    padding:0 !important;
  }

  .ac-fit-gallery__grid{
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
  }

  .ac-fit-gallery__grid figure,
  .ac-fit-gallery__grid figure:first-child{
    min-height:300px !important;
    grid-row:auto !important;
  }
}

/* =========================================================
   ALEXCLUB FITNESS V2.2 — HERO DEAL DESKTOP ALIGNMENT
   Same visual alignment logic as Gym V3.26:
   center the right deal card and lift it together with the
   left hero composition on large desktop screens.
========================================================= */
@media(min-width:1181px){
  .ac-fit-hero .ac-fit-hero__deal{
    align-self:center !important;
    transform:translateY(-4vh) !important;
  }
}

/* =========================================================
   ALEXCLUB FITNESS V2.4 — HIDDEN STATE FIX
   JS correctly toggles the native [hidden] attribute.
   Fitness cards use display:flex/grid !important, so the
   hidden state must explicitly win inside the page namespace.
========================================================= */
.ac-fit [hidden]{
  display:none !important;
}

/* =========================================================
   ALEXCLUB FITNESS V2.5 — FULL WEEK SCHEDULE
========================================================= */
.ac-fit-week{
  display:grid !important;
  gap:18px !important;
}

.ac-fit-week__day{
  padding:0 !important;
  border:1px solid rgba(8,28,62,.08) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#fff !important;
}

.ac-fit-week__day-head{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:16px 18px !important;
  background:#f4f8ff !important;
  border-bottom:1px solid rgba(8,28,62,.07) !important;
}

.ac-fit-week__day-head>span{
  width:42px !important;
  height:42px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  background:#071936 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.ac-fit-week__day-head strong{
  display:block !important;
  color:#071936 !important;
  font-size:17px !important;
}

.ac-fit-week__day-head small{
  display:block !important;
  margin-top:3px !important;
  color:#64748b !important;
  font-size:12px !important;
}

.ac-fit-week__classes{
  display:grid !important;
  gap:8px !important;
  padding:10px !important;
}

.ac-fit-week__classes .ac-fit-class{
  box-shadow:none !important;
}

.ac-fit-class--cancelled{
  opacity:.55 !important;
}

.ac-fit-class--cancelled h3{
  text-decoration:line-through !important;
}

.ac-fit-schedule__empty{
  padding:30px 20px !important;
  border:1px dashed rgba(8,28,62,.18) !important;
  border-radius:22px !important;
  background:#f8fbff !important;
  text-align:center !important;
}

.ac-fit-schedule__empty strong{
  display:block !important;
  color:#071936 !important;
  font-size:18px !important;
}

.ac-fit-schedule__empty span{
  display:block !important;
  margin-top:7px !important;
  color:#64748b !important;
  font-size:13px !important;
}

@media(max-width:760px){
  .ac-fit-week__day-head{
    padding:14px !important;
  }

  .ac-fit-week__classes{
    padding:8px !important;
  }
}


/* =========================================================
   ALEXCLUB FITNESS V2.7 — BENEFITS + TRAINERS
========================================================= */

/* На фитнес-странице номер 01 в lead-карточке остаётся видимым и на web. */
.ac-fit #ac-fit-included .ac-gym-benefit-card--lead .ac-gym-benefit-card__number{
  display:block !important;
}

/* Если для тренера нет подтверждённой фотографии, не показываем пустой фото-блок. */
.ac-fit #ac-fit-coaches .ac-fit-trainer-card--no-photo .ac-gym-trainer-card__body{
  min-height:360px !important;
}

/* Web: четыре тренера в одну линию. */
@media(min-width:981px){
  .ac-fit #ac-fit-coaches .ac-gym-trainers{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
  }

  .ac-fit #ac-fit-coaches .ac-gym-trainer-card__body{
    padding:20px !important;
  }

  .ac-fit #ac-fit-coaches .ac-gym-trainer-card__body h3{
    font-size:clamp(21px,1.55vw,25px) !important;
  }
}

/* Tablet: две колонки. */
@media(min-width:621px) and (max-width:980px){
  .ac-fit #ac-fit-coaches .ac-gym-trainers{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-fit #ac-fit-coaches .ac-fit-trainer-card--no-photo .ac-gym-trainer-card__body{
    min-height:330px !important;
  }
}

/* Mobile: одна колонка. */
@media(max-width:620px){
  .ac-fit #ac-fit-coaches .ac-fit-trainer-card--no-photo .ac-gym-trainer-card__body{
    min-height:0 !important;
  }
}


/* =========================================================
   ALEXCLUB FITNESS V2.9 — VIDEO TOUR PHOTO GALLERY
   Сам видео-блок использует без изменений системный
   ac-gym-video-split из Gym V3.26.
   Ниже добавляется только уникальная фотогалерея фитнеса.
========================================================= */
#ac-gym-video .ac-fit-video-gallery{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:18px !important;
}

#ac-gym-video .ac-fit-video-gallery figure{
  position:relative !important;
  overflow:hidden !important;
  margin:0 !important;
  aspect-ratio:1 / 1 !important;
  border-radius:22px !important;
  background:#0d213f !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
}

#ac-gym-video .ac-fit-video-gallery img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  transition:transform .35s ease !important;
}

@media(hover:hover){
  #ac-gym-video .ac-fit-video-gallery figure:hover img{
    transform:scale(1.025) !important;
  }
}

@media(max-width:920px){
  #ac-gym-video .ac-fit-video-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:520px){
  #ac-gym-video .ac-fit-video-gallery{
    gap:8px !important;
  }

  #ac-gym-video .ac-fit-video-gallery figure{
    border-radius:18px !important;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2
   Namespace: ac-kids
   Основа: системные ach-* компоненты текущего main.css.
   Важно: системные ach-btn / ach-kicker не переопределяются.
========================================================= */

.ac-page--kids{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--kids .ac-content--wide,
.ac-page--kids .wp-block-html,
.ac-page--kids .wp-block-group,
.ac-page--kids .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

.ac-kids{
  width:100%;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 22%,rgba(45,127,255,.09),transparent 34rem),
    radial-gradient(circle at 92% 48%,rgba(7,135,189,.07),transparent 36rem),
    #f4f8ff;
  color:#071936;
}

.ac-kids__hero{
  padding:72px 0 78px;
  background:
    radial-gradient(circle at 12% 20%,rgba(45,127,255,.28),transparent 35rem),
    radial-gradient(circle at 84% 16%,rgba(7,135,189,.22),transparent 32rem),
    linear-gradient(135deg,#071936 0%,#10283f 54%,#06101f 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
}

.ac-kids__hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:54px 54px;
  opacity:.32;
}

.ac-kids__hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(380px,.94fr);
  gap:44px;
  align-items:center;
}

.ac-kids__hero-copy h1{
  max-width:880px;
  margin:16px 0 0;
  color:#fff;
  font-size:clamp(48px,5.8vw,92px);
  line-height:.94;
  letter-spacing:-.06em;
  text-wrap:balance;
}

.ac-kids__hero-lead{
  max-width:760px;
  margin:24px 0 0;
  color:#fff;
  font-size:clamp(20px,1.8vw,28px);
  line-height:1.28;
}

.ac-kids__hero-lead strong{color:#fff}

.ac-kids__hero-note{
  max-width:700px;
  margin:14px 0 0;
  color:rgba(255,255,255,.72);
  font-size:17px;
  line-height:1.58;
}

.ac-kids__hero-actions{
  margin-top:28px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.ac-kids__hero-visual{
  min-height:540px;
  position:relative;
}

.ac-kids__hero-photo{
  position:absolute;
  inset:0 0 34px 0;
  border-radius:38px;
  background:
    linear-gradient(180deg,rgba(5,8,20,.03),rgba(5,8,20,.40)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/rhythmic-gymnastics-tournament-sk-alekseeva.webp") center center / cover no-repeat;
  box-shadow:0 28px 70px rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.12);
}

.ac-kids__hero-fact{
  position:absolute;
  right:20px;
  bottom:0;
  min-width:210px;
  padding:20px 22px;
  border-radius:26px;
  background:rgba(255,255,255,.95);
  color:#071936;
  box-shadow:0 18px 46px rgba(0,0,0,.22);
}

.ac-kids__hero-fact strong{
  display:block;
  font-size:54px;
  line-height:.85;
  letter-spacing:-.06em;
  color:#0b4fa3;
}

.ac-kids__hero-fact span{
  display:block;
  margin-top:10px;
  color:#64748b;
  font-size:13px;
  line-height:1.3;
  font-weight:700;
}

.ac-kids__picker,
.ac-kids__results,
.ac-kids__cta{
  padding:76px 0;
}

.ac-kids__section-head,
.ac-kids__results-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,480px);
  gap:32px;
  align-items:end;
}

.ac-kids__section-head h2,
.ac-kids__results-head h2,
.ac-kids__legacy h2,
.ac-kids__cta h2{
  margin:8px 0 0;
  color:#071936;
  font-size:clamp(38px,4.7vw,72px);
  line-height:.98;
  letter-spacing:-.055em;
  text-wrap:balance;
}

.ac-kids__section-head > p{
  margin:0;
  color:#64748b;
  font-size:16px;
  line-height:1.62;
}

.ac-kids-picker{
  margin-top:30px;
  padding:18px;
  border-radius:38px;
  background:#fff;
  border:1px solid rgba(8,28,62,.09);
  box-shadow:0 20px 54px rgba(8,28,62,.08);
}

.ac-kids-filter{
  padding:26px;
  border-radius:28px;
  background:#f8fbff;
  border:1px solid rgba(8,28,62,.07);
}

.ac-kids-filter + .ac-kids-filter{margin-top:12px}

.ac-kids-filter__head{
  display:flex;
  gap:14px;
  align-items:flex-start;
}

.ac-kids-filter__step{
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:#071936;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
}

.ac-kids-filter__head h3{
  margin:1px 0 0;
  color:#071936;
  font-size:24px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.ac-kids-filter__head p{
  margin:7px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.45;
}

.ac-kids-filter__subhead{
  margin-top:20px;
  color:#64748b;
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ac-kids-chips{
  margin-top:16px;
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.ac-kids-chip{
  min-height:44px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(8,28,62,.11);
  background:#fff;
  color:#1e3a55;
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.ac-kids-chip:hover{
  transform:translateY(-1px);
  border-color:rgba(45,127,255,.28);
  box-shadow:0 8px 20px rgba(8,28,62,.06);
}

.ac-kids-chip.is-active{
  background:#0b4fa3;
  border-color:#0b4fa3;
  color:#fff;
  box-shadow:0 10px 24px rgba(11,79,163,.20);
}

.ac-kids-chips--age .ac-kids-chip{
  min-width:48px;
  padding-left:12px;
  padding-right:12px;
}

.ac-kids-chip--neutral{
  border-style:dashed;
  color:#64748b;
}

.ac-kids-picker__footer{
  padding:18px 8px 4px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.ac-kids-picker__summary{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.ac-kids-picker__summary strong{
  color:#071936;
  font-size:20px;
  line-height:1.2;
}

.ac-kids-picker__summary span{
  color:#64748b;
  font-size:14px;
  line-height:1.4;
}

.ac-kids-reset{
  border:0;
  background:transparent;
  color:#0b4fa3;
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}

.ac-kids__results{
  padding-top:20px;
}

.ac-kids-search{
  display:block;
}

.ac-kids-search span{
  display:block;
  margin-bottom:8px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ac-kids-search input{
  width:100%;
  min-height:52px;
  padding:0 17px;
  border-radius:17px;
  border:1px solid rgba(8,28,62,.12);
  background:#fff;
  color:#071936;
  outline:none;
  font-size:15px;
  box-shadow:0 10px 28px rgba(8,28,62,.05);
}

.ac-kids-search input:focus{
  border-color:rgba(45,127,255,.48);
  box-shadow:0 0 0 4px rgba(45,127,255,.10);
}

.ac-kids__test-note{
  margin-top:24px;
  padding:13px 16px;
  border-radius:16px;
  background:#fff8e8;
  border:1px solid rgba(172,112,0,.13);
  color:#805b13;
  font-size:13px;
  line-height:1.45;
}

.ac-kids-grid{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ac-kids-card{
  min-width:0;
  overflow:hidden;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.07);
  display:flex;
  flex-direction:column;
}

.ac-kids-card__photo{
  min-height:210px;
  padding:16px;
  background-position:center;
  background-size:cover;
  display:flex;
  align-items:flex-start;
}

.ac-kids-card__photo > span{
  min-height:34px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(5,8,20,.46);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  display:inline-flex;
  align-items:center;
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
}

.ac-kids-card__body{
  padding:22px;
  display:flex;
  flex-direction:column;
  flex:1;
}

.ac-kids-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.ac-kids-card__top h3{
  margin:0;
  color:#071936;
  font-size:25px;
  line-height:1.04;
  letter-spacing:-.04em;
}

.ac-kids-card__top > strong{
  flex:0 0 auto;
  color:#0b4fa3;
  font-size:13px;
  line-height:1.2;
  text-align:right;
}

.ac-kids-card__tags{
  margin-top:14px;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ac-kids-card__tags span{
  padding:6px 8px;
  border-radius:999px;
  background:#eef5ff;
  color:#315273;
  font-size:11px;
  line-height:1;
  font-weight:700;
}

.ac-kids-card__schedule{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(8,28,62,.08);
  display:grid;
  gap:5px;
}

.ac-kids-card__schedule b,
.ac-kids-card__trainer b{
  color:#071936;
  font-size:12px;
}

.ac-kids-card__schedule span,
.ac-kids-card__trainer{
  color:#64748b;
  font-size:13px;
  line-height:1.45;
}

.ac-kids-card__trainer{margin:14px 0 0}

.ac-kids-card__actions{
  margin-top:auto;
  padding-top:20px;
}

.ac-kids-card__actions .ach-btn{width:100%}

.ac-kids-empty{
  margin-top:24px;
  padding:34px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.06);
}

.ac-kids-empty h3{
  margin:8px 0 0;
  color:#071936;
  font-size:30px;
  line-height:1.04;
  letter-spacing:-.04em;
}

.ac-kids-empty p{
  max-width:700px;
  margin:12px 0 0;
  color:#64748b;
  line-height:1.55;
}

.ac-kids-empty__actions{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ac-kids-load-error{
  grid-column:1/-1;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(239,51,64,.18);
  display:flex;
  flex-direction:column;
  gap:7px;
}

.ac-kids-load-error strong{color:#071936}
.ac-kids-load-error span{color:#64748b;font-size:14px}

.ac-kids__legacy{
  padding:76px 0;
  background:linear-gradient(135deg,#071936 0%,#10283f 52%,#06101f 100%);
  color:#fff;
}

.ac-kids-legacy{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);
  gap:48px;
  align-items:center;
}

.ac-kids__legacy h2{color:#fff}

.ac-kids-legacy__copy p{
  max-width:760px;
  margin:20px 0 0;
  color:rgba(255,255,255,.72);
  font-size:16px;
  line-height:1.65;
}


.ac-kids-legacy__copy .ach-btn{
  margin-top:24px;
}

.ac-kids-legacy__stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.ac-kids-legacy__stats article{
  min-height:150px;
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.ac-kids-legacy__stats strong{
  color:#fff;
  font-size:44px;
  line-height:.92;
  letter-spacing:-.055em;
}

.ac-kids-legacy__stats span{
  margin-top:16px;
  color:rgba(255,255,255,.66);
  font-size:13px;
  line-height:1.3;
  font-weight:700;
}

.ac-kids-cta{
  padding:34px;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.07);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
}

.ac-kids-cta h2{font-size:clamp(34px,4vw,58px)}

.ac-kids-cta p{
  max-width:760px;
  margin:14px 0 0;
  color:#64748b;
  font-size:15px;
  line-height:1.6;
}

@media(max-width:1100px){
  .ac-kids__hero-inner,
  .ac-kids-legacy{
    grid-template-columns:1fr;
  }

  .ac-kids__hero-visual{min-height:440px}
  .ac-kids-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:820px){
  .ac-kids__section-head,
  .ac-kids__results-head,
  .ac-kids-cta{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ac-kids-search{margin-top:4px}
}

@media(max-width:720px){
  .ac-kids__hero{padding:48px 0 54px}
  .ac-kids__hero-inner{gap:28px}
  .ac-kids__hero-copy h1{font-size:clamp(42px,13vw,62px)}
  .ac-kids__hero-lead{font-size:20px}
  .ac-kids__hero-visual{min-height:340px}
  .ac-kids__hero-photo{border-radius:28px;inset:0 0 28px 0}
  .ac-kids__hero-fact{right:12px;min-width:178px;padding:17px 18px;border-radius:22px}
  .ac-kids__hero-fact strong{font-size:44px}

  .ac-kids__picker,
  .ac-kids__results,
  .ac-kids__cta,
  .ac-kids__legacy{padding-top:54px;padding-bottom:54px}

  .ac-kids__section-head h2,
  .ac-kids__results-head h2,
  .ac-kids__legacy h2,
  .ac-kids__cta h2{font-size:clamp(36px,10.5vw,52px)}

  .ac-kids-picker{padding:10px;border-radius:28px}
  .ac-kids-filter{padding:20px;border-radius:22px}
  .ac-kids-filter__head h3{font-size:21px}
  .ac-kids-chip{min-height:42px;font-size:13px}
  .ac-kids-picker__footer{align-items:flex-start;flex-direction:column}
  .ac-kids-grid{grid-template-columns:1fr}
  .ac-kids-card{border-radius:26px}
  .ac-kids-card__photo{min-height:220px}
  .ac-kids-card__top{flex-direction:column}
  .ac-kids-card__top > strong{text-align:left}
  .ac-kids-legacy__stats{grid-template-columns:1fr 1fr}
  .ac-kids-cta{padding:24px;border-radius:28px}
  .ac-kids-cta .ach-btn{width:100%}
  .ac-kids__hero-actions .ach-btn{width:100%}
}

@media(max-width:420px){
  .ac-kids-legacy__stats{grid-template-columns:1fr}
  .ac-kids-chips--age .ac-kids-chip{min-width:44px}
}

@media(prefers-reduced-motion:reduce){
  .ac-kids-chip{transition:none}
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.1
   Fix: script moved to page.php; hero/header clearance; loading fallback.
========================================================= */

.ac-kids__hero-inner{
  padding-top:38px;
}

.ac-kids-loading{
  grid-column:1 / -1;
  min-height:180px;
  padding:28px;
  border-radius:28px;
  background:#ffffff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.06);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
}

.ac-kids-loading strong{
  color:#071936;
  font-size:20px;
  line-height:1.2;
}

.ac-kids-loading span{
  color:#64748b;
  font-size:14px;
  line-height:1.45;
}

@media(max-width:720px){
  .ac-kids__hero-inner{
    padding-top:24px;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.2
   UX fixes:
   1) полное расписание в карточке без фильтра времени;
   2) раскрытие длинного расписания;
   3) mobile header clearance + системные боковые поля.
========================================================= */

.ac-kids-card__schedule-more{
  margin-top:5px;
  border-top:1px dashed rgba(8,28,62,.10);
  padding-top:7px;
}

.ac-kids-card__schedule-more summary{
  list-style:none;
  width:max-content;
  max-width:100%;
  color:#0b4fa3;
  font-size:12px;
  line-height:1.35;
  font-weight:700;
  cursor:pointer;
}

.ac-kids-card__schedule-more summary::-webkit-details-marker{
  display:none;
}

.ac-kids-card__schedule-more summary::after{
  content:" +";
}

.ac-kids-card__schedule-more[open] summary::after{
  content:" −";
}

.ac-kids-card__schedule-more > div{
  margin-top:7px;
  display:grid;
  gap:5px;
}

@media(max-width:720px){
  /* Те же рабочие боковые поля, что используются на других страницах AlexClub. */
  .ac-kids .ach-wrap{
    width:calc(100% - 24px) !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* На мобильной hero гарантированно начинается ниже фиксированного меню. */
  .ac-kids__hero{
    padding-top:calc(var(--ac-header-height) + 22px) !important;
  }

  .ac-kids__hero-inner{
    padding-top:0 !important;
  }

  .ac-kids-empty__actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .ac-kids-empty__actions .ach-btn{
    width:100%;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.3
   Расписание выводится по группам, а не как набор отдельных слотов.
========================================================= */

.ac-kids-card__schedule-summary{
  display:block;
  color:#64748b;
  font-size:13px;
  line-height:1.45;
}

.ac-kids-card__group{
  margin-top:9px;
  padding:11px 12px;
  border-radius:14px;
  background:#f7faff;
  border:1px solid rgba(8,28,62,.07);
}

.ac-kids-card__group-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.ac-kids-card__group-head strong{
  color:#071936;
  font-size:12px;
  line-height:1.35;
  font-weight:700;
}

.ac-kids-card__group-head > span{
  flex:0 0 auto;
  padding:4px 7px;
  border-radius:999px;
  background:#e7f1ff;
  color:#315273;
  font-size:10px;
  line-height:1;
  font-weight:700;
}

.ac-kids-card__group-times{
  margin-top:6px;
  display:grid;
  gap:3px;
}

.ac-kids-card__group-times span{
  color:#52677f;
  font-size:12px;
  line-height:1.42;
}

.ac-kids-card__group em{
  display:block;
  margin-top:6px;
  color:#0b4fa3;
  font-size:11px;
  line-height:1.35;
  font-style:normal;
  font-weight:700;
}

.ac-kids-card__schedule-more--groups{
  margin-top:10px;
}

.ac-kids-card__schedule-more--groups > div{
  gap:8px;
}

.ac-kids-card__schedule-more--groups .ac-kids-card__group{
  margin-top:0;
}

@media(max-width:720px){
  .ac-kids-card__group{
    padding:11px;
  }

  .ac-kids-card__group-head{
    gap:8px;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.4
   Компактные карточки групп и расписания
========================================================= */


.ac-kids-card__schedule{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(8,28,62,.08);
  display:block;
}

.ac-kids-card__schedule > b{
  display:block;
  color:#071936;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.03em;
  text-transform:uppercase;
  margin-bottom:10px;
}

.ac-kids-card__schedule-summary{
  display:block;
  color:#64748b;
  font-size:13px;
  line-height:1.5;
}

.ac-kids-card__group-list{
  display:grid;
  gap:10px;
}

.ac-kids-card__group-row{
  padding:0 0 10px;
  border-bottom:1px dashed rgba(8,28,62,.10);
}

.ac-kids-card__group-row:last-child{
  padding-bottom:0;
  border-bottom:none;
}

.ac-kids-card__group-title{
  display:block;
  color:#071936;
  font-size:14px;
  line-height:1.35;
  font-weight:700;
  margin:0;
}

.ac-kids-card__group-slots{
  margin-top:5px;
  display:grid;
  gap:4px;
}

.ac-kids-card__group-slot{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px;
  color:#52677f;
  font-size:13px;
  line-height:1.45;
}

.ac-kids-card__group-slot.is-muted{color:#64748b}

.ac-kids-card__group-days{
  color:#64748b;
  font-weight:500;
}

.ac-kids-card__group-time{
  color:#071936;
  font-weight:700;
  letter-spacing:-.01em;
}

.ac-kids-card__group-row em{
  display:block;
  margin-top:6px;
  color:#0b4fa3;
  font-size:11px;
  line-height:1.35;
  font-style:normal;
  font-weight:700;
}

.ac-kids-card__schedule-more{
  margin-top:12px;
  border-top:1px dashed rgba(8,28,62,.10);
  padding-top:12px;
}

.ac-kids-card__schedule-more summary{
  list-style:none;
  cursor:pointer;
  color:#0b4fa3;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.ac-kids-card__schedule-more summary::-webkit-details-marker{display:none}

.ac-kids-card__schedule-more summary::after{
  content:'+';
  font-size:16px;
  line-height:1;
}

.ac-kids-card__schedule-more[open] summary::after{
  content:'−';
}

.ac-kids-card__schedule-more > div{
  margin-top:12px;
}

.ac-kids-card__trainer{
  margin:14px 0 0;
  padding-top:12px;
  border-top:1px dashed rgba(8,28,62,.08);
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

.ac-kids-card__trainer b{
  color:#071936;
  font-size:12px;
}

@media(max-width:720px){
  .ac-kids-card__group-title{font-size:13px}
  .ac-kids-card__group-slot{font-size:12px}
  .ac-kids-card__schedule-more summary{font-size:12px}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.5
   Hero, parent value, legacy storytelling and dynamic catalog polish.
========================================================= */

.ac-kids__hero-photo{
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.44)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat;
}

.ac-kids__hero-fact{
  min-width:230px;
  padding:20px 22px 18px;
}

.ac-kids__hero-fact strong{
  font-size:46px;
  line-height:.92;
}

.ac-kids__hero-fact span{
  margin-top:8px;
  color:#26384d;
  font-size:14px;
}

.ac-kids__hero-fact em{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:11px;
  line-height:1.3;
  font-style:normal;
  font-weight:700;
}

.ac-kids-legacy__copy p + p{
  margin-top:12px;
}

.ac-kids-legacy__note{
  margin-top:20px !important;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff !important;
  font-weight:700;
}

.ac-kids__parents{
  padding:76px 0;
  background:
    radial-gradient(circle at 12% 20%,rgba(45,127,255,.08),transparent 32rem),
    radial-gradient(circle at 88% 72%,rgba(7,135,189,.07),transparent 34rem),
    transparent;
}

.ac-kids__section-head--parents{
  margin-bottom:24px;
}

.ac-kids-parents-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ac-kids-parent-card{
  min-height:190px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.065);
  display:flex;
  flex-direction:column;
}

.ac-kids-parent-card:nth-child(4),
.ac-kids-parent-card:nth-child(5){
  grid-column:span 1;
}

.ac-kids-parent-card > span{
  color:var(--ac-cyan);
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
}

.ac-kids-parent-card strong{
  display:block;
  margin-top:28px;
  color:#071936;
  font-size:20px;
  line-height:1.12;
  letter-spacing:-.025em;
}

.ac-kids-parent-card p{
  margin:12px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.58;
}

@media(min-width:1181px){
  .ac-kids-parent-card:nth-child(4){grid-column:1 / span 1}
  .ac-kids-parent-card:nth-child(5){grid-column:2 / span 2}
}

@media(max-width:1100px){
  .ac-kids-parents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-kids-parent-card:nth-child(5){grid-column:1 / -1}
}

@media(max-width:720px){
  .ac-kids__hero-fact{
    min-width:196px;
    padding:16px 18px;
  }

  .ac-kids__hero-fact strong{font-size:38px}

  .ac-kids__parents{padding:54px 0}
  .ac-kids-parents-grid{grid-template-columns:1fr;gap:12px}
  .ac-kids-parent-card,
  .ac-kids-parent-card:nth-child(4),
  .ac-kids-parent-card:nth-child(5){
    grid-column:auto;
    min-height:auto;
    padding:20px;
    border-radius:24px;
  }
  .ac-kids-parent-card strong{margin-top:20px;font-size:19px}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.6
   Быстрый просмотр секции в системном native dialog.
   Кнопки и оболочка dialog используют общие ach-компоненты.
========================================================= */

.ac-kids-quick__media{
  min-height:210px;
  padding:18px;
  border-radius:22px;
  background-position:center;
  background-size:cover;
  display:flex;
  align-items:flex-start;
}

.ac-kids-quick__head{
  margin-top:22px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.ac-kids-quick__head h2{
  margin:0;
  color:#071936;
  font-size:clamp(32px,4.2vw,48px);
  line-height:.98;
  letter-spacing:-.05em;
}

.ac-kids-quick__head p{
  margin:8px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.45;
}

.ac-kids-quick__head > strong{
  flex:0 0 auto;
  color:#0b4fa3;
  font-size:14px;
  line-height:1.3;
  text-align:right;
}

.ac-kids-quick__tags{margin-top:14px}

.ac-kids-quick__fact,
.ac-kids-quick__trainer{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(8,28,62,.08);
  display:grid;
  grid-template-columns:110px minmax(0,1fr);
  gap:12px;
  align-items:start;
}

.ac-kids-quick__fact span,
.ac-kids-quick__trainer span{
  color:#64748b;
  font-size:12px;
  line-height:1.4;
}

.ac-kids-quick__fact strong,
.ac-kids-quick__trainer strong{
  color:#071936;
  font-size:13px;
  line-height:1.45;
}

.ac-kids-quick__groups{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(8,28,62,.08);
}

.ac-kids-quick__groups h3{
  margin:0 0 12px;
  color:#071936;
  font-size:16px;
  line-height:1.25;
}

.ac-kids-quick__groups .ac-kids-card__group-row{padding-bottom:12px}

.ac-kids-quick__more,
.ac-kids-quick__muted{
  margin:10px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

.ac-kids-quick__actions{
  margin-top:22px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px;
}

.ac-kids-quick__actions .ach-btn{width:100%}

@media(max-width:720px){
  .ac-kids-quick__media{min-height:170px;border-radius:18px}
  .ac-kids-quick__head{display:block}
  .ac-kids-quick__head > strong{display:block;margin-top:10px;text-align:left}
  .ac-kids-quick__fact,
  .ac-kids-quick__trainer{grid-template-columns:1fr;gap:4px}
  .ac-kids-quick__actions{grid-template-columns:1fr}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.8
   Продажная структура: системный Hero, видео и преимущества.
========================================================= */

/* Hero по высоте и ритму приведён к системе внутренних страниц AlexClub. */
.ac-kids__hero{
  min-height:calc(100vh - var(--ac-header-height)) !important;
  padding:calc(var(--ac-header-height) + 72px) 0 64px !important;
  display:flex !important;
  align-items:center !important;
}

.ac-kids__hero-inner{
  padding-top:0 !important;
  align-items:center !important;
}

.ac-kids__hero-visual{
  min-height:430px;
}

/* Видео — отдельный контентный блок, без изменения системных кнопок. */
.ac-kids__video{
  padding:76px 0;
  background:#fff;
}

.ac-kids-video{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(480px,1.18fr);
  gap:44px;
  align-items:center;
}

.ac-kids-video__copy h2{
  max-width:620px;
  margin:16px 0 0;
  color:#071936;
  font-size:clamp(42px,4.8vw,72px);
  line-height:.96;
  letter-spacing:-.055em;
  text-wrap:balance;
}

.ac-kids-video__copy > p{
  max-width:620px;
  margin:22px 0 0;
  color:#64748b;
  font-size:17px;
  line-height:1.62;
}

.ac-kids-video__facts{
  margin-top:26px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ac-kids-video__facts > span{
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  background:#f4f8ff;
  border:1px solid rgba(8,28,62,.08);
  color:#52677f;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
}

.ac-kids-video__facts strong{
  color:#0b4fa3;
  font-size:14px;
}

.ac-kids-video__media{
  min-width:0;
}

.ac-kids-video__poster{
  position:relative;
  min-height:430px;
  overflow:hidden;
  border-radius:32px;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 22px 56px rgba(8,28,62,.12);
  background:
    linear-gradient(180deg,rgba(5,8,20,.04),rgba(5,8,20,.68)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ac-kids-video__play{
  width:76px;
  height:76px;
  padding-left:5px;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:#0b4fa3;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:25px;
  box-shadow:0 18px 42px rgba(0,0,0,.22);
}

.ac-kids-video__caption{
  position:absolute;
  left:22px;
  right:22px;
  bottom:20px;
  color:#fff;
}

.ac-kids-video__caption strong,
.ac-kids-video__caption span{
  display:block;
}

.ac-kids-video__caption strong{
  font-size:17px;
  line-height:1.25;
}

.ac-kids-video__caption span{
  margin-top:5px;
  color:rgba(255,255,255,.72);
  font-size:12px;
  line-height:1.45;
}

/* В блоке преимуществ V2.8 шесть равных аргументов без локальной логики кнопок. */
.ac-kids-parents-grid--sales{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.ac-kids-parents-grid--sales .ac-kids-parent-card,
.ac-kids-parents-grid--sales .ac-kids-parent-card:nth-child(4),
.ac-kids-parents-grid--sales .ac-kids-parent-card:nth-child(5){
  grid-column:auto;
}

.ac-kids-parents__legal-note{
  margin:16px 0 0;
  color:#7a8797;
  font-size:11px;
  line-height:1.5;
}

@media(max-width:1020px){
  .ac-kids-video{
    grid-template-columns:1fr;
    gap:28px;
  }

  .ac-kids-video__copy h2,
  .ac-kids-video__copy > p{
    max-width:820px;
  }

  .ac-kids-video__poster{min-height:400px}
}

@media(max-width:720px){
  .ac-kids__hero{
    min-height:100svh !important;
    padding:calc(var(--ac-header-height) + 52px) 0 48px !important;
  }

  .ac-kids__hero-visual{min-height:320px}

  .ac-kids__video{padding:54px 0}
  .ac-kids-video{gap:24px}
  .ac-kids-video__copy h2{font-size:clamp(36px,10.5vw,52px)}
  .ac-kids-video__copy > p{font-size:15px}
  .ac-kids-video__poster{min-height:300px;border-radius:26px}
  .ac-kids-video__play{width:64px;height:64px;font-size:21px}
  .ac-kids-video__caption{left:18px;right:18px;bottom:17px}
  .ac-kids-parents-grid--sales{grid-template-columns:1fr}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.9
   Видео в Hero + расширенная продающая часть страницы.
   Только namespace ac-kids; системные ach-компоненты не переопределяются.
========================================================= */

.ac-kids__hero-video-wrap{
  position:absolute;
  inset:0 0 28px 0;
  overflow:hidden;
  border-radius:34px;
  background:#071936;
  box-shadow:0 22px 54px rgba(4,18,43,.22);
}

.ac-kids__hero-video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.ac-kids__hero-video-shade{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,8,20,.02),rgba(5,8,20,.28));
}

.ac-kids-legacy__stats--expanded{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.ac-kids-legacy__stats--expanded article{
  min-height:112px;
}

.ac-kids-video__gallery{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.ac-kids-video__gallery figure{
  position:relative;
  min-width:0;
  min-height:128px;
  margin:0;
  overflow:hidden;
  border-radius:20px;
  background:#eef4fb;
  border:1px solid rgba(8,28,62,.08);
}

.ac-kids-video__gallery img{
  width:100%;
  height:100%;
  min-height:128px;
  display:block;
  object-fit:cover;
  transition:transform .28s ease;
}

.ac-kids-video__gallery figure:hover img{transform:scale(1.035)}

.ac-kids-video__gallery figcaption{
  position:absolute;
  left:10px;
  right:10px;
  bottom:9px;
  padding:7px 9px;
  border-radius:12px;
  background:rgba(5,18,42,.72);
  color:#fff;
  font-size:10px;
  line-height:1.2;
  font-weight:700;
  backdrop-filter:blur(8px);
}

.ac-kids__safety,
.ac-kids__trainers,
.ac-kids__visit{
  padding:76px 0;
}

.ac-kids__safety{
  background:#fff;
}

.ac-kids-trust-grid,
.ac-kids-trainer-values{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ac-kids-trust-card,
.ac-kids-trainer-values article{
  min-height:190px;
  padding:24px;
  border-radius:28px;
  background:#f7faff;
  border:1px solid rgba(8,28,62,.08);
}

.ac-kids-trust-card > span{
  color:var(--ac-cyan);
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
}

.ac-kids-trust-card strong,
.ac-kids-trainer-values strong{
  display:block;
  margin-top:26px;
  color:#071936;
  font-size:20px;
  line-height:1.16;
  letter-spacing:-.025em;
}

.ac-kids-trainer-values strong{margin-top:0}

.ac-kids-trust-card p,
.ac-kids-trainer-values p{
  margin:12px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.58;
}

.ac-kids__yearround{
  padding:0 0 76px;
  background:#fff;
}

.ac-kids-yearround,
.ac-kids-visit{
  padding:34px 36px;
  border-radius:32px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 46px rgba(8,28,62,.08);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:center;
}

.ac-kids-yearround h2,
.ac-kids-visit h2{
  margin:14px 0 0;
  color:#071936;
  font-size:clamp(34px,4vw,56px);
  line-height:.98;
  letter-spacing:-.05em;
}

.ac-kids-yearround p,
.ac-kids-visit p{
  max-width:780px;
  margin:16px 0 0;
  color:#64748b;
  font-size:15px;
  line-height:1.6;
}

.ac-kids-yearround__actions,
.ac-kids-visit__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}

.ac-kids__trainers{
  background:
    radial-gradient(circle at 15% 20%,rgba(45,127,255,.08),transparent 32rem),
    #f4f8ff;
}

.ac-kids__family{
  padding:76px 0;
  background:#071936;
}

.ac-kids-family{
  display:grid;
  grid-template-columns:1fr;
  gap:34px;
  align-items:start;
}

.ac-kids-family__copy{
  max-width:880px;
}

.ac-kids-family__copy h2{
  margin:16px 0 0;
  color:#fff;
  font-size:clamp(42px,4.8vw,70px);
  line-height:.96;
  letter-spacing:-.055em;
}

.ac-kids-family__copy p{
  margin:22px 0 0;
  color:rgba(255,255,255,.68);
  font-size:16px;
  line-height:1.62;
}

.ac-kids-family__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ac-kids-family__grid article{
  min-height:148px;
  padding:22px;
  border-radius:24px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.11);
}

.ac-kids-family__grid strong,
.ac-kids-family__grid span{display:block}

.ac-kids-family__grid strong{
  color:#fff;
  font-size:18px;
  line-height:1.2;
}

.ac-kids-family__grid span{
  margin-top:10px;
  color:rgba(255,255,255,.66);
  font-size:13px;
  line-height:1.5;
}

.ac-kids__visit{
  background:#f4f8ff;
}

@media(max-width:1020px){
  .ac-kids-video__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-kids-trust-grid,
  .ac-kids-trainer-values{grid-template-columns:1fr 1fr}
  .ac-kids-family{gap:28px}
  .ac-kids-family__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-kids-yearround,
  .ac-kids-visit{grid-template-columns:1fr}
  .ac-kids-yearround__actions,
  .ac-kids-visit__actions{justify-content:flex-start}
}

@media(max-width:720px){
  .ac-kids__hero-video-wrap{inset:0 0 24px 0;border-radius:28px}
  .ac-kids-legacy__stats--expanded{grid-template-columns:1fr 1fr}
  .ac-kids-video__gallery{grid-template-columns:1fr 1fr;gap:8px}
  .ac-kids-video__gallery figure,
  .ac-kids-video__gallery img{min-height:112px}
  .ac-kids__safety,
  .ac-kids__trainers,
  .ac-kids__family,
  .ac-kids__visit{padding-top:54px;padding-bottom:54px}
  .ac-kids__yearround{padding-bottom:54px}
  .ac-kids-trust-grid,
  .ac-kids-trainer-values,
  .ac-kids-family__grid{grid-template-columns:1fr}
  .ac-kids-trust-card,
  .ac-kids-trainer-values article{min-height:auto;padding:20px;border-radius:24px}
  .ac-kids-yearround,
  .ac-kids-visit{padding:24px 20px;border-radius:26px;gap:24px}
  .ac-kids-yearround__actions,
  .ac-kids-visit__actions{display:grid;grid-template-columns:1fr}
  .ac-kids-yearround__actions .ach-btn,
  .ac-kids-visit__actions .ach-btn{width:100%}
  .ac-kids-family__copy h2{font-size:clamp(36px,10.5vw,52px)}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.9.1
   Hero Variant B: системная сетка + ghost-image манежа.
   Видео справа остаётся главным медиа; фото на фоне только создаёт глубину.
========================================================= */

.ac-kids__hero{
  isolation:isolate;
  background:
    radial-gradient(circle at 12% 20%,rgba(45,127,255,.30),transparent 35rem),
    radial-gradient(circle at 84% 16%,rgba(7,135,189,.24),transparent 32rem),
    linear-gradient(135deg,#071936 0%,#10283f 54%,#06101f 100%);
}

/* Атмосферный слой: манеж едва читается под тёмно-синим Hero. */
.ac-kids__hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(4,18,43,.34) 0%,rgba(4,18,43,.60) 48%,rgba(4,18,43,.28) 100%),
    linear-gradient(180deg,rgba(4,18,43,.20),rgba(4,18,43,.58)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center 44% / cover no-repeat;
  opacity:.24;
  filter:saturate(.58) contrast(.92);
  transform:scale(1.015);
  transform-origin:center;
}

/* Фирменная сетка остаётся поверх ghost-image, но под контентом. */
.ac-kids__hero::before{
  z-index:1;
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:54px 54px;
  opacity:.42;
}

.ac-kids__hero-inner{
  z-index:2;
}

/* Мягкая глубина вокруг видео без изменения его геометрии. */
.ac-kids__hero-video-wrap{
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    0 22px 54px rgba(4,18,43,.26),
    0 0 0 1px rgba(45,127,255,.05),
    0 0 54px rgba(7,135,189,.08);
}

@media(max-width:720px){
  .ac-kids__hero::after{
    background-position:center 46%;
    opacity:.18;
  }

  .ac-kids__hero::before{
    background-size:42px 42px;
    opacity:.34;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.9.2
   1) Возвращена единая фирменная сетка по всей странице по системному
      принципу главной V95.1/V55.
   2) Финальный FAQ + CTA использует существующие системные ac-pass / ach-*
      компоненты и не получает отдельного локального дизайна.
========================================================= */

.ac-kids{
  position:relative !important;
  isolation:isolate !important;
  background:
    radial-gradient(circle at 12% 18%,rgba(45,127,255,.11),transparent 38rem),
    radial-gradient(circle at 86% 22%,rgba(7,135,189,.10),transparent 34rem),
    radial-gradient(circle at 48% 62%,rgba(155,120,255,.055),transparent 42rem),
    linear-gradient(180deg,#f4f8ff 0%,#eef5ff 48%,#f7fbff 100%) !important;
}

/* Один непрерывный декоративный слой на всю светлую часть страницы. */
.ac-kids::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(8,28,62,.030) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.024) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
  opacity:.58 !important;
  animation:acKidsGridFloat 28s linear infinite !important;
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.86) 5%,rgba(0,0,0,.76) 94%,transparent 100%) !important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.86) 5%,rgba(0,0,0,.76) 94%,transparent 100%) !important;
}

.ac-kids > *{
  position:relative !important;
  z-index:1 !important;
}

@keyframes acKidsGridFloat{
  0%{background-position:0 0,0 0;}
  100%{background-position:58px 58px,58px 58px;}
}

/* Светлые секции больше не перекрывают общий системный фон/сетку. */
.ac-kids__video,
.ac-kids__safety,
.ac-kids__yearround,
.ac-kids__visit{
  background:transparent !important;
}

.ac-kids__trainers{
  background:
    radial-gradient(circle at 15% 20%,rgba(45,127,255,.08),transparent 32rem),
    transparent !important;
}

/* На тёмных секциях та же геометрия сетки продолжается отдельным слоем. */
.ac-kids__legacy{
  background:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(135deg,#071936 0%,#10283f 52%,#06101f 100%) !important;
  background-size:58px 58px,58px 58px,auto !important;
}

.ac-kids__family{
  background:
    linear-gradient(90deg,rgba(255,255,255,.040) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.032) 1px,transparent 1px),
    #071936 !important;
  background-size:58px 58px,58px 58px,auto !important;
}

/* Hero Variant B остаётся, но геометрия его сетки совпадает с общей системой. */
.ac-kids__hero::before{
  background-size:58px 58px !important;
}

@media(prefers-reduced-motion:reduce){
  .ac-kids::before{animation:none !important;}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.10
   Единый медиаблок — вариант A
========================================================= */
.ac-kids__mediahub{
  position:relative;
  padding:84px 0;
}

.ac-kids-mediahub{
  position:relative;
  padding:36px;
  border-radius:34px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 50px rgba(8,28,62,.08);
  overflow:hidden;
}

.ac-kids-mediahub::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(11,79,163,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11,79,163,.045) 1px, transparent 1px);
  background-size:58px 58px;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.75),transparent 65%);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.75),transparent 65%);
}

.ac-kids-mediahub__lead,
.ac-kids-mediahub__layout{position:relative;z-index:1}

.ac-kids-mediahub__lead{
  max-width:760px;
  margin-bottom:28px;
}

.ac-kids-mediahub__lead h2{
  margin:14px 0 12px;
  color:#071936;
  font-size:clamp(40px,4.4vw,66px);
  line-height:.98;
  letter-spacing:-.045em;
}

.ac-kids-mediahub__lead p{
  margin:0;
  max-width:720px;
  color:#64748b;
  font-size:17px;
  line-height:1.55;
}

.ac-kids-mediahub__layout{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);
  gap:18px;
  align-items:stretch;
}

.ac-kids-mediahub__feature{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}

.ac-kids-mediahub__feature-card,
.ac-kids-mediahub__card{
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  text-align:left;
  cursor:pointer;
  border:0;
}

.ac-kids-mediahub__feature-card{
  position:relative;
  display:block;
  width:100%;
  min-height:430px;
  padding:0;
  overflow:hidden;
  border-radius:26px;
  background:#071936;
  box-shadow:0 16px 36px rgba(7,25,54,.14);
}

.ac-kids-mediahub__feature-card img,
.ac-kids-mediahub__card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .3s ease;
}

.ac-kids-mediahub__feature-card:hover img,
.ac-kids-mediahub__card:hover img{transform:scale(1.025)}

.ac-kids-mediahub__feature-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,13,27,.06) 18%,rgba(5,13,27,.78) 100%);
}

.ac-kids-mediahub__play{
  position:absolute;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.94);
  color:#0b4fa3;
  font-size:14px;
  line-height:1;
  box-shadow:0 8px 18px rgba(7,25,54,.16);
  z-index:3;
}

.ac-kids-mediahub__play--large{
  top:50%;
  right:auto;
  left:50%;
  width:76px;
  height:76px;
  transform:translate(-50%,-50%);
  font-size:22px;
}

.ac-kids-mediahub__feature-copy{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:2;
  color:#fff;
  display:grid;
  gap:5px;
}

.ac-kids-mediahub__feature-copy small{
  width:max-content;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(11,79,163,.82);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ac-kids-mediahub__feature-copy strong{
  max-width:620px;
  font-size:25px;
  line-height:1.08;
  letter-spacing:-.025em;
}

.ac-kids-mediahub__feature-copy > span{
  max-width:620px;
  color:rgba(255,255,255,.78);
  font-size:13px;
  line-height:1.4;
}

.ac-kids-mediahub__benefits{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  border:1px solid rgba(8,28,62,.08);
  border-radius:20px;
  background:rgba(8,28,62,.08);
}

.ac-kids-mediahub__benefits > div{
  min-width:0;
  padding:16px;
  background:#fff;
  display:grid;
  gap:5px;
}

.ac-kids-mediahub__benefits strong{
  color:#071936;
  font-size:13px;
  line-height:1.25;
}

.ac-kids-mediahub__benefits span{
  color:#64748b;
  font-size:11px;
  line-height:1.4;
}

.ac-kids-mediahub__grid{
  min-width:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.ac-kids-mediahub__card{
  position:relative;
  min-height:178px;
  padding:0;
  overflow:hidden;
  border-radius:20px;
  background:#071936;
  box-shadow:0 10px 26px rgba(7,25,54,.10);
}

.ac-kids-mediahub__card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,13,27,.03) 30%,rgba(5,13,27,.78) 100%);
  pointer-events:none;
}

.ac-kids-mediahub__card > strong{
  position:absolute;
  left:15px;
  right:52px;
  bottom:14px;
  z-index:2;
  color:#fff;
  font-size:16px;
  line-height:1.18;
  letter-spacing:-.015em;
}

.ac-kids-mediahub__tag{
  position:absolute;
  top:13px;
  left:13px;
  z-index:3;
  min-height:25px;
  padding:0 8px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  background:rgba(7,25,54,.72);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:800;
  backdrop-filter:blur(8px);
}

.ac-kids-mediahub__card--wide{
  grid-column:1 / -1;
  min-height:150px;
}

.ac-kids-mediahub__card--wide img{object-position:center 38%}

.ac-kids-media-dialog{
  width:min(980px,calc(100% - 32px));
  max-width:980px;
  padding:0;
  border:0;
  border-radius:28px;
  background:transparent;
  overflow:visible;
}

.ac-kids-media-dialog::backdrop{
  background:rgba(3,11,24,.72);
  backdrop-filter:blur(7px);
}

.ac-kids-media-dialog__panel{
  position:relative;
  padding:22px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 28px 90px rgba(3,11,24,.34);
}

.ac-kids-media-dialog__close{
  position:absolute;
  z-index:5;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#071936;
  color:#fff;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}

.ac-kids-media-dialog__head{padding:4px 54px 16px 2px}

.ac-kids-media-dialog__head h3{
  margin:10px 0 0;
  color:#071936;
  font-size:clamp(28px,3vw,40px);
  line-height:1.05;
  letter-spacing:-.035em;
}

.ac-kids-media-dialog__frame{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:20px;
  background:#071936;
}

.ac-kids-media-dialog__frame iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}

.ac-kids-media-dialog__actions{
  padding-top:14px;
  display:flex;
  justify-content:flex-end;
}

@media(max-width:1080px){
  .ac-kids-mediahub__layout{grid-template-columns:1fr}
  .ac-kids-mediahub__feature-card{min-height:420px}
  .ac-kids-mediahub__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ac-kids-mediahub__card--wide{grid-column:auto;min-height:178px}
}

@media(max-width:720px){
  .ac-kids__mediahub{padding:54px 0}
  .ac-kids-mediahub{padding:16px;border-radius:26px}
  .ac-kids-mediahub__lead{margin-bottom:20px}
  .ac-kids-mediahub__lead h2{font-size:clamp(36px,10.5vw,52px)}
  .ac-kids-mediahub__lead p{font-size:15px}
  .ac-kids-mediahub__feature-card{min-height:300px;border-radius:22px}
  .ac-kids-mediahub__play--large{
    top:50%;
    right:auto;
    left:50%;
    width:62px;
    height:62px;
    transform:translate(-50%,-50%);
    font-size:18px;
  }
  .ac-kids-mediahub__feature-copy{left:17px;right:17px;bottom:16px}
  .ac-kids-mediahub__feature-copy strong{font-size:20px}
  .ac-kids-mediahub__benefits{grid-template-columns:1fr}
  .ac-kids-mediahub__grid{grid-template-columns:1fr 1fr;gap:8px}
  .ac-kids-mediahub__card,
  .ac-kids-mediahub__card--wide{min-height:138px}
  .ac-kids-mediahub__card--wide{grid-column:1 / -1}
  .ac-kids-mediahub__card > strong{font-size:13px;left:12px;bottom:11px;right:44px}
  .ac-kids-mediahub__play{width:34px;height:34px;top:10px;right:10px;font-size:11px}
  .ac-kids-mediahub__tag{top:10px;left:10px}
  .ac-kids-media-dialog{width:calc(100% - 20px)}
  .ac-kids-media-dialog__panel{padding:12px;border-radius:22px}
  .ac-kids-media-dialog__frame{border-radius:16px}
  .ac-kids-media-dialog__actions .ach-btn{width:100%}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.11
   Упрощённая логика нижней части страницы:
   тренеры → преимущества + безопасность → сервисы → медиа → FAQ.
========================================================= */

.ac-kids__coaches{
  margin:0 !important;
}

.ac-kids__parents--combined{
  padding-top:78px;
  padding-bottom:78px;
}

.ac-kids-parents__subhead{
  margin-top:48px;
  margin-bottom:20px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:16px 34px;
  align-items:end;
}

.ac-kids-parents__subhead .ach-kicker{
  grid-column:1 / -1;
}

.ac-kids-parents__subhead h3{
  margin:0;
  color:#071936;
  font-size:clamp(34px,4vw,56px);
  line-height:.98;
  letter-spacing:-.05em;
}

.ac-kids-parents__subhead p{
  margin:0;
  color:#64748b;
  font-size:15px;
  line-height:1.58;
}

.ac-kids__parents--combined .ac-kids-trust-card{
  background:#fff;
  box-shadow:0 14px 36px rgba(8,28,62,.055);
}

.ac-kids-parents__yearround{
  margin-top:24px;
  background:linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);
}

.ac-kids__family + .ac-kids__mediahub{
  margin-top:0;
}

@media(max-width:1020px){
  .ac-kids-parents__subhead{
    grid-template-columns:1fr;
  }
  .ac-kids-parents__subhead .ach-kicker{grid-column:auto}
}

@media(max-width:720px){
  .ac-kids__parents--combined{
    padding-top:54px;
    padding-bottom:54px;
  }
  .ac-kids-parents__subhead{
    margin-top:36px;
    margin-bottom:16px;
  }
  .ac-kids-parents__subhead h3{font-size:clamp(32px,9.5vw,46px)}
  .ac-kids-parents__yearround{margin-top:18px}
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.12
   Системная унификация секционных шапок + Hero/card media scale.
   Основа: полный main.css V2.11.2; системные ach-компоненты не ломаем.
========================================================= */

/* Hero: на web используем более крупный системный масштаб H1. */
@media(min-width:721px){
  .ac-kids__hero-copy h1{
    font-size:var(--ac-h1-size);
    line-height:.90;
    letter-spacing:-.07em;
    font-weight:700;
  }
}

/* Hero media: +15% к рабочей высоте только на широком web. */
@media(min-width:1101px){
  .ac-kids__hero-visual{
    min-height:495px;
  }
}

/* Карточки секций: высота медиа приведена к ритму карточек главной. */
.ac-kids-card__photo{
  min-height:230px;
}

/* Единая логика секционных шапок:
   desktop — kicker/H2 слева, описание справа;
   mobile — последовательная колонка, всё по левому краю. */
.ac-kids__section-head{
  grid-template-columns:minmax(0,1fr) minmax(300px,480px);
  gap:32px;
  align-items:end;
}

.ac-kids__section-head > p{
  width:100%;
  max-width:480px;
  justify-self:end;
  margin:0;
  text-align:left;
}

.ac-kids__section-head--team{
  margin-bottom:28px;
}

/* Внутренняя шапка «Безопасность» использует ту же геометрию. */
.ac-kids-parents__subhead{
  margin-top:48px;
  margin-bottom:20px;
  grid-template-columns:minmax(0,1fr) minmax(300px,480px);
  gap:32px;
  align-items:end;
}

.ac-kids-parents__subhead .ach-kicker{
  grid-column:auto;
}

.ac-kids__section-head--sub h3{
  margin:8px 0 0;
  color:#071936;
  font-size:clamp(34px,4vw,56px);
  line-height:.98;
  letter-spacing:-.05em;
  text-wrap:balance;
}

.ac-kids-parents__subhead > p{
  width:100%;
  max-width:480px;
  justify-self:end;
  text-align:left;
}

/* Темный сервисный блок сохраняет ту же структуру шапки. */
.ac-kids-family__head{
  width:100%;
}

.ac-kids__section-head--light h2{
  color:#fff;
}

.ac-kids__section-head--light > p{
  color:rgba(255,255,255,.68);
}

/* Медиаблок: описание больше не живет под заголовком — оно в правой колонке. */
.ac-kids-mediahub__lead{
  max-width:none;
  margin-bottom:28px;
}

.ac-kids-mediahub__lead h2{
  margin:8px 0 0;
  color:#071936;
  font-size:clamp(38px,4.7vw,72px);
  line-height:.98;
  letter-spacing:-.055em;
  text-wrap:balance;
}

.ac-kids-mediahub__lead > p{
  width:100%;
  max-width:480px;
  justify-self:end;
  margin:0;
  color:#64748b;
  font-size:16px;
  line-height:1.62;
  text-align:left;
}

@media(min-width:821px){
  .ac-kids-parents__subhead{
    grid-template-columns:minmax(0,1fr) minmax(300px,480px);
  }
}

@media(max-width:820px){
  .ac-kids__section-head,
  .ac-kids-parents__subhead{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ac-kids__section-head > p,
  .ac-kids-parents__subhead > p,
  .ac-kids-mediahub__lead > p{
    max-width:none;
    justify-self:stretch;
    text-align:left;
  }
}

@media(max-width:720px){
  .ac-kids-card__photo{
    min-height:240px;
  }

  .ac-kids__section-head--team{
    margin-bottom:20px;
  }

  .ac-kids-parents__subhead{
    margin-top:36px;
    margin-bottom:16px;
  }

  .ac-kids-mediahub__lead h2{
    font-size:clamp(36px,10.5vw,52px);
  }

  .ac-kids-mediahub__lead > p{
    font-size:15px;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.12.2
   Mobile media Play centering.
   Ошибочное локальное dark-переопределение блока «Команда» удалено в V2.12.3.
========================================================= */

/* Убираем зависимость Play-треугольника от метрик шрифта. */
.ac-kids-mediahub__play{
  font-size:0 !important;
}

.ac-kids-mediahub__play::before{
  content:"";
  display:block;
  width:0;
  height:0;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
  border-left:8px solid #0b4fa3;
  transform:translateX(1px);
}

.ac-kids-mediahub__play--large::before{
  border-top-width:8px;
  border-bottom-width:8px;
  border-left-width:13px;
  transform:translateX(1.5px);
}

@media(max-width:720px){
  /* На мобильном Play всегда находится в геометрическом центре превью. */
  .ac-kids-mediahub__play{
    top:50% !important;
    left:50% !important;
    right:auto !important;
    width:42px !important;
    height:42px !important;
    transform:translate(-50%,-50%) !important;
  }

  .ac-kids-mediahub__play.ac-kids-mediahub__play--large{
    top:50% !important;
    left:50% !important;
    right:auto !important;
    width:62px !important;
    height:62px !important;
    transform:translate(-50%,-50%) !important;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.12.3
   Team theme correction.
   Блок ach-coaches использует собственную системную светлую поверхность
   в обеих темах; локальные light/dark цветовые модификаторы не нужны.
========================================================= */


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.12.4
   SVG Play icon.
   Вместо текстового/CSS-треугольника используется единый SVG,
   чтобы положение значка не зависело от метрик шрифта и border-геометрии.
========================================================= */
.ac-kids-mediahub__play::before{
  content:none !important;
  display:none !important;
}

.ac-kids-mediahub__play-icon{
  display:block;
  width:18px;
  height:18px;
  overflow:visible;
  fill:#0b4fa3;
  flex:0 0 auto;
  transform:none;
}

.ac-kids-mediahub__play--large .ac-kids-mediahub__play-icon{
  width:28px;
  height:28px;
}

@media(max-width:720px){
  .ac-kids-mediahub__play .ac-kids-mediahub__play-icon{
    width:18px;
    height:18px;
  }
  .ac-kids-mediahub__play.ac-kids-mediahub__play--large .ac-kids-mediahub__play-icon{
    width:28px;
    height:28px;
  }
}


/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.13
   Профессиональная спортивная база.
   Новый самостоятельный смысловой блок между «Командой»
   и «Почему родители выбирают нас».
========================================================= */

.ac-kids__base{
  position:relative;
  padding:78px 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 8%,rgba(45,127,255,.18),transparent 34%),
    radial-gradient(circle at 88% 82%,rgba(7,135,189,.12),transparent 30%),
    #071936;
  color:#fff;
}

.ac-kids-base__head{
  margin-bottom:28px;
}

.ac-kids-base__head h2{
  color:#fff;
}

.ac-kids-base__head > p{
  color:rgba(255,255,255,.68);
}

.ac-kids-base__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ac-kids-base__card{
  min-height:228px;
  padding:24px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:rgba(255,255,255,.055);
  box-shadow:0 18px 42px rgba(0,0,0,.12);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.ac-kids-base__card > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  margin-bottom:34px;
  padding:0 9px;
  border-radius:999px;
  background:rgba(45,127,255,.16);
  border:1px solid rgba(45,127,255,.28);
  color:#8fc0ff;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.08em;
}

.ac-kids-base__card h3{
  margin:0;
  color:#fff;
  font-size:23px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.ac-kids-base__card p{
  margin:12px 0 0;
  color:rgba(255,255,255,.64);
  font-size:14px;
  line-height:1.55;
}

.ac-kids-base__card--metric{
  background:linear-gradient(145deg,rgba(45,127,255,.30),rgba(7,135,189,.12));
  border-color:rgba(91,160,255,.28);
}

.ac-kids-base__card--metric > strong{
  display:block;
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(46px,4.8vw,76px);
  line-height:.86;
  letter-spacing:-.065em;
  font-weight:700;
}

.ac-kids-base__card--metric h3{
  max-width:230px;
}

.ac-kids-base__accent{
  display:grid;
  grid-template-columns:minmax(180px,.32fr) minmax(0,1fr);
  gap:24px 40px;
  align-items:center;
  margin-top:12px;
  padding:24px 26px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:rgba(255,255,255,.075);
}

.ac-kids-base__accent .ach-kicker{
  margin:0;
}

.ac-kids-base__accent p{
  margin:0;
  max-width:880px;
  color:#fff;
  font-size:clamp(18px,1.65vw,24px);
  line-height:1.32;
  letter-spacing:-.018em;
  font-weight:600;
}

@media(max-width:1120px){
  .ac-kids-base__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:720px){
  .ac-kids__base{
    padding:54px 0;
  }

  .ac-kids-base__head{
    margin-bottom:20px;
  }

  .ac-kids-base__grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .ac-kids-base__card{
    min-height:0;
    padding:20px;
    border-radius:20px;
  }

  .ac-kids-base__card > span{
    margin-bottom:24px;
  }

  .ac-kids-base__card h3{
    font-size:21px;
  }

  .ac-kids-base__card--metric > strong{
    font-size:clamp(52px,16vw,72px);
  }

  .ac-kids-base__accent{
    grid-template-columns:1fr;
    gap:12px;
    padding:20px;
    border-radius:20px;
  }

  .ac-kids-base__accent p{
    font-size:18px;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB V2.14
   Desktop Hero: видео становится главным визуальным доказательством масштаба.
   Мобильная композиция не меняется.
========================================================= */
@media(min-width:1101px){
  /* Спокойнее фон: манеж остаётся атмосферой, но не конкурирует с видео. */
  .ac-kids__hero::after{
    opacity:.10;
    filter:saturate(.42) contrast(.86);
  }

  .ac-kids__hero::before{
    opacity:.24;
  }

  /* Чуть больше пространства отдаём реальному видео. */
  .ac-kids__hero-inner{
    grid-template-columns:minmax(0,.88fr) minmax(560px,1.12fr);
    gap:52px;
  }

  /* Заголовок сохраняет системную силу, но становится собраннее. */
  .ac-kids__hero-copy h1{
    max-width:720px;
    font-size:clamp(72px,6.25vw,106px);
    line-height:.92;
    letter-spacing:-.065em;
  }

  .ac-kids__hero-lead{
    max-width:690px;
  }

  .ac-kids__hero-note{
    max-width:650px;
  }

  /* Видео — главный визуал Hero: крупнее, без отдельного нижнего «кармана». */
  .ac-kids__hero-visual{
    min-height:520px;
  }

  .ac-kids__hero-video-wrap{
    inset:0;
    border-radius:34px;
  }

  /* 90 лет становится компактным информационным бейджем внутри видео. */
  .ac-kids__hero-fact{
    right:18px;
    bottom:18px;
    min-width:154px;
    padding:14px 16px 13px;
    border-radius:20px;
    background:rgba(255,255,255,.94);
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  .ac-kids__hero-fact strong{
    font-size:36px;
    line-height:.92;
    letter-spacing:-.055em;
  }

  .ac-kids__hero-fact span{
    margin-top:6px;
    font-size:11px;
    line-height:1.25;
  }

  .ac-kids__hero-fact em{
    margin-top:4px;
    font-size:9px;
    line-height:1.2;
  }
}

/* =========================
   ALEXCLUB HEADER MENU — TRAINING SUBMENU V1
   Системное продолжение текущего меню без изменения общей дизайн-логики.
========================= */

.ac-menu__view[hidden]{
  display:none !important;
}

button.ac-menu-card{
  width:100%;
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
}

.ac-menu__view--training .ac-menu__head{
  margin-bottom:14px;
}

.ac-menu__view--training .ac-menu__head h2{
  max-width:390px;
}

.ac-menu__sub-actions{
  display:flex;
  align-items:center;
  margin:0 0 12px;
}

.ac-menu__back{
  min-height:42px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}

.ac-menu__back:hover{
  background:rgba(255,255,255,.12);
  transform:translateX(-2px);
}

.ac-menu__grid--training{
  gap:12px;
}

.ac-menu__grid--training .ac-menu-card{
  min-height:92px;
}

@media(max-width:640px){
  .ac-menu__view--training .ac-menu__head h2{
    font-size:28px;
  }

  .ac-menu__grid--training .ac-menu-card{
    min-height:82px;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.2
   Синхронизация с актуальным полным main.css.
   Единый системный Hero H1: uppercase.
========================================================= */
.ac-kids__hero-copy h1{
  text-transform:uppercase;
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.3
   Hero: безопасный вертикальный зазор между kicker и H1.
   Только tablet/desktop; мобильную композицию не меняем.
========================================================= */
@media(min-width:721px){
  .ac-kids__hero-copy > .ach-kicker{
    margin-bottom:24px;
  }

  .ac-kids__hero-copy > h1{
    margin-top:0;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.4
   Hero: дополнительная безопасная зона для диакритики Evolventa.
   Й / Ё в крупном uppercase не должны пересекаться с kicker.
   Мобильная версия не меняется.
========================================================= */
@media(min-width:721px) and (max-width:1100px){
  .ac-kids__hero-copy > .ach-kicker{
    margin-bottom:34px;
  }
}

@media(min-width:1101px){
  .ac-kids__hero-copy > .ach-kicker{
    margin-bottom:42px;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.5
   Hero H1: безопасный межстрочный интервал для uppercase Evolventa.
   Исправляет пересечение диакритики Ё/Й с предыдущей строкой
   на desktop, tablet и mobile.
========================================================= */
.ac-kids__hero-copy h1{
  line-height:1.02 !important;
}

/* =========================================================
   ALEXCLUB SYSTEM — HERO TITLE LINE-HEIGHT V1
   Единый безопасный межстрочный интервал для крупных Hero H1
   в uppercase Evolventa. Исправляет пересечение диакритики
   Ё / Й на главной и внутренних страницах.
========================================================= */
.ach-hero h1,
.ac-pass-hero h1,
.ac-kids__hero-copy h1{
  line-height:1.02 !important;
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.6
   Hero H1 desktop/tablet: уменьшение примерно на 20%.
   Mobile сохраняем без изменений — его лаконичная композиция утверждена.
   Системный безопасный line-height 1.02 сохраняется.
========================================================= */
@media(min-width:721px) and (max-width:1100px){
  .ac-kids__hero-copy h1{
    font-size:clamp(43px,5.76vw,94px) !important;
  }
}

@media(min-width:1101px){
  .ac-kids__hero-copy h1{
    font-size:clamp(58px,5vw,85px) !important;
  }
}

/* =========================================================
   ALEXCLUB SYSTEM — DESKTOP HERO TITLE SCALE V1
   Единый размер H1 в Hero на desktop для всего сайта.
   Зафиксировано по странице «Детские секции» V2.14.6.
   Mobile/tablet не меняем.
========================================================= */
@media(min-width:1101px){
  .ach-hero h1,
  .ac-pass-hero h1,
  .ac-kids__hero-copy h1,
  .ac-hero h1,
  .ac-page__header h1{
    font-size:clamp(58px,5vw,85px) !important;
    line-height:1.02 !important;
  }
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ V2.14.7
   Hero: возвращена фирменная техническая сетка AlexClub.
   Сетка остаётся под контентом и видео, не меняя геометрию Hero.
========================================================= */
.ac-kids__hero::before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
  opacity:.42 !important;
}

@media(max-width:720px){
  .ac-kids__hero::before{
    background-size:46px 46px !important;
    opacity:.36 !important;
  }
}

/* =========================================================
   ALEXCLUB — CHILD SECTION DETAIL V1.9 ALL FIXES
   Страница «Художественная гимнастика».
   Основа: актуальный полный main.css проекта.
   Используются системные ac-pass / ac-kids / ach-* компоненты.
   Локальные правила только для композиции уникальных блоков страницы.
========================================================= */

/* Hero: системная конструкция + профильное изображение направления. */
.ac-rg-v110 .ac-pass-hero__bg{
  background:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.24),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(7,135,189,.16),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.88),rgba(5,8,20,.34)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/rhythmic-gymnastics-tournament-sk-alekseeva.webp") center 38% / cover no-repeat !important;
}

/* Единый верхний смысловой блок детских секций. */
.ac-rg-v110 .ac-rg-proof__head{margin-bottom:22px !important;}
.ac-rg-v110 .ac-rg-proof__grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.ac-rg-v110 .ac-rg-proof__grid a{min-height:164px !important;}

/* О направлении. */
.ac-rg-v110 .ac-rg-about__grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.ac-rg-v110 .ac-rg-about__grid article{min-height:238px !important;}

/* Профессиональная база: спортивная среда + польза базы для ребёнка. */
.ac-rg-v110 .ac-rg-base-strip{
  margin-top:18px !important;
  padding:30px !important;
  border-radius:30px !important;
  background:#071936 !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 18px 46px rgba(8,28,62,.12) !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:24px !important;
  align-items:start !important;
}
.ac-rg-v110 .ac-rg-base-strip h3{
  max-width:920px !important;
  margin:13px 0 0 !important;
  color:#fff !important;
  font-size:clamp(28px,3vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}
.ac-rg-v110 .ac-rg-base-strip p{
  max-width:980px !important;
  margin:14px 0 0 !important;
  color:rgba(255,255,255,.74) !important;
  font-size:15px !important;
  line-height:1.66 !important;
}
.ac-rg-v110 .ac-rg-base-strip__accent{
  padding-left:18px !important;
  border-left:2px solid rgba(255,255,255,.42) !important;
}
.ac-rg-v110 .ac-rg-base-strip__accent strong{
  color:#fff !important;
  font-weight:700 !important;
}
.ac-rg-v110 .ac-rg-base-strip__facts{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
.ac-rg-v110 .ac-rg-base-strip__facts > span{
  min-height:142px !important;
  padding:20px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.09) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.ac-rg-v110 .ac-rg-base-strip__facts strong{
  color:#fff !important;
  font-size:clamp(19px,1.6vw,25px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
.ac-rg-v110 .ac-rg-base-strip__facts small{
  margin-top:10px !important;
  color:rgba(255,255,255,.66) !important;
  font-size:12px !important;
  line-height:1.42 !important;
}

/* История школы внутри тренерского блока. */
.ac-rg-v110 .ac-rg-history-intro{
  margin:28px 0 16px !important;
  padding:24px 26px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr) !important;
  gap:26px !important;
  align-items:end !important;
}
.ac-rg-v110 .ac-rg-history-intro h3{
  margin:13px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,3.3vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.05em !important;
}
.ac-rg-v110 .ac-rg-history-intro > p{
  margin:0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

/* Достижения: без тяжёлой общей тёмной рамки. */
.ac-rg-v110 .ac-rg-achievements{
  margin:0 0 24px !important;
  padding:0 !important;
  background:transparent !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}
.ac-rg-v110 .ac-rg-achievements article{
  min-height:126px !important;
  padding:20px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.09) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.055) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.ac-rg-v110 .ac-rg-achievements strong{
  color:#071936 !important;
  font-size:clamp(30px,3vw,44px) !important;
  line-height:.95 !important;
  letter-spacing:-.055em !important;
}
.ac-rg-v110 .ac-rg-achievements span{
  margin-top:10px !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}

/* Все 6 тренеров в одну линию на широком desktop. */
.ac-rg-v110 .ac-rg-coach-grid{
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:10px !important;
}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card,
.ac-rg-v110 .ach-coaches:not(.is-expanded) .ac-rg-coach-grid .ach-coach-card:nth-child(n+5){display:flex !important;}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card{
  min-width:0 !important;
  min-height:0 !important;
  border-radius:24px !important;
}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__photo,
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__photo img{
  min-height:250px !important;
  height:250px !important;
}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__body{padding:14px !important;}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__body span{
  min-height:27px !important;
  font-size:8px !important;
  line-height:1.18 !important;
}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__body h3{
  margin-top:9px !important;
  font-size:17px !important;
  line-height:1.08 !important;
}
.ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__body p{
  margin-top:10px !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
.ac-rg-v110 .ac-rg-coach-placeholder{
  padding:18px !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(135deg,#1E3A55,#0787BD) !important;
  background-size:38px 38px,38px 38px,auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
}
.ac-rg-v110 .ac-rg-coach-placeholder strong{
  color:#fff !important;
  font-size:56px !important;
  line-height:.9 !important;
  letter-spacing:-.06em !important;
}
.ac-rg-v110 .ac-rg-coach-placeholder span{
  margin-top:8px !important;
  color:rgba(255,255,255,.70) !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

/* Группы и коммерческий блок — компактная композиция. */
.ac-rg-v110 .ac-rg-groups{
  padding-top:58px !important;
  padding-bottom:58px !important;
}
.ac-rg-v110 .ac-rg-groups__head{margin-bottom:20px !important;}
.ac-rg-v110 .ac-rg-group-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
.ac-rg-v110 .ac-rg-group-grid .ac-pass-price-card{
  padding:18px 20px !important;
  border-radius:24px !important;
  transform:none !important;
}
.ac-rg-v110 .ac-rg-group-grid .ac-pass-price-card h3{
  margin-top:12px !important;
  min-height:0 !important;
  font-size:22px !important;
}
.ac-rg-v110 .ac-rg-group-grid .ac-pass-price-card ul{
  margin:12px 0 16px !important;
  gap:6px !important;
}
.ac-rg-v110 .ac-rg-group-grid .ac-pass-price-card li{
  font-size:13px !important;
  line-height:1.42 !important;
}
.ac-rg-v110 .ac-rg-commercial-grid{
  margin-top:14px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr) !important;
  gap:12px !important;
  align-items:stretch !important;
}
.ac-rg-v110 .ac-rg-price-list,
.ac-rg-v110 .ac-rg-docs{
  padding:22px !important;
  border-radius:26px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
}
.ac-rg-v110 .ac-rg-price-list{margin-top:0 !important;}
.ac-rg-v110 .ac-rg-price-list__title{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:13px !important;
}
.ac-rg-v110 .ac-rg-price-list__title h3,
.ac-rg-v110 .ac-rg-docs h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:clamp(24px,2.3vw,34px) !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}
.ac-rg-v110 .ac-rg-docs h3{margin-top:12px !important;}
.ac-rg-v110 .ac-rg-price-table{
  width:100% !important;
  border-collapse:collapse !important;
  table-layout:fixed !important;
}
.ac-rg-v110 .ac-rg-price-table th,
.ac-rg-v110 .ac-rg-price-table td{
  padding:12px 0 !important;
  border-top:1px solid rgba(8,28,62,.08) !important;
  vertical-align:middle !important;
}
.ac-rg-v110 .ac-rg-price-table th{
  width:72% !important;
  padding-right:18px !important;
  color:#071936 !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
  text-align:left !important;
}
.ac-rg-v110 .ac-rg-price-table td{
  color:#1E3A55 !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-align:right !important;
  white-space:nowrap !important;
}
.ac-rg-v110 .ac-rg-docs ol{
  margin:16px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  counter-reset:rgdocs !important;
  display:grid !important;
  gap:8px !important;
}
.ac-rg-v110 .ac-rg-docs li{
  position:relative !important;
  min-height:42px !important;
  padding:10px 10px 10px 43px !important;
  border-radius:15px !important;
  background:#F4F8FF !important;
  color:#071936 !important;
  font-size:12px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  counter-increment:rgdocs !important;
}
.ac-rg-v110 .ac-rg-docs li::before{
  content:counter(rgdocs,decimal-leading-zero) !important;
  position:absolute !important;
  left:10px !important;
  top:10px !important;
  color:#0787BD !important;
  font-size:11px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}
.ac-rg-v110 .ac-rg-commercial-notes{
  margin-top:12px !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
.ac-rg-v110 .ac-rg-commercial-notes article{
  min-height:176px !important;
  padding:20px !important;
  border-radius:24px !important;
  background:#F4F8FF !important;
  border:1px solid rgba(8,28,62,.07) !important;
}
.ac-rg-v110 .ac-rg-commercial-notes h3{
  margin:12px 0 0 !important;
  color:#071936 !important;
  font-size:22px !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
.ac-rg-v110 .ac-rg-commercial-notes p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

/* Все фото старой страницы в единой горизонтальной галерее. */
.ac-rg-v110 .ac-rg-media-slider{margin-top:18px !important;}
.ac-rg-v110 .ac-rg-media-slider__nav{
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:0 0 10px !important;
}
.ac-rg-v110 .ac-rg-media-track{
  min-width:0 !important;
  display:grid !important;
  grid-auto-flow:column !important;
  grid-auto-columns:minmax(170px,calc((100% - 48px)/5)) !important;
  gap:12px !important;
  overflow-x:auto !important;
  padding:2px 2px 12px !important;
  scroll-snap-type:x mandatory !important;
  overscroll-behavior-inline:contain !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(11,79,163,.28) transparent !important;
}
.ac-rg-v110 .ac-rg-media-track::-webkit-scrollbar{height:7px !important;}
.ac-rg-v110 .ac-rg-media-track::-webkit-scrollbar-thumb{
  border-radius:999px !important;
  background:rgba(11,79,163,.24) !important;
}
.ac-rg-v110 .ac-rg-media-slide{
  position:relative !important;
  min-width:0 !important;
  aspect-ratio:4/3 !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:22px !important;
  background:#dce8f7 !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.055) !important;
  scroll-snap-align:start !important;
}
.ac-rg-v110 .ac-rg-media-slide img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
}
.ac-rg-v110 .ac-rg-media-slide figcaption{
  position:absolute !important;
  left:10px !important;
  bottom:10px !important;
  min-width:30px !important;
  min-height:28px !important;
  display:grid !important;
  place-items:center !important;
  padding:5px 8px !important;
  border-radius:999px !important;
  color:#fff !important;
  background:rgba(4,24,52,.72) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.ac-rg-v110 .ac-rg-safety .ac-kids-parents__subhead{
  margin-top:0 !important;
  margin-bottom:24px !important;
}

@media(max-width:1380px){
  .ac-rg-v110 .ac-rg-coach-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .ac-rg-v110 .ac-rg-media-track{grid-auto-columns:minmax(190px,calc((100% - 36px)/4)) !important;}
}
@media(max-width:1180px){
  .ac-rg-v110 .ac-rg-proof__grid,
  .ac-rg-v110 .ac-rg-achievements{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ac-rg-v110 .ac-rg-base-strip,
  .ac-rg-v110 .ac-rg-history-intro,
  .ac-rg-v110 .ac-rg-commercial-grid{grid-template-columns:1fr !important;}
}
@media(max-width:860px){
  .ac-rg-v110 .ac-rg-about__grid,
  .ac-rg-v110 .ac-rg-proof__grid,
  .ac-rg-v110 .ac-rg-group-grid{grid-template-columns:1fr !important;}
  .ac-rg-v110 .ac-rg-commercial-notes{grid-template-columns:1fr !important;}
  .ac-rg-v110 .ac-rg-coach-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ac-rg-v110 .ac-rg-base-strip__facts{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .ac-rg-v110 .ac-rg-media-track{grid-auto-columns:minmax(235px,44%) !important;}
}
@media(max-width:720px){
  .ac-rg-v110 .ac-pass-hero__bg{background-position:58% center !important;}
  .ac-rg-v110 .ac-rg-about__grid,
  .ac-rg-v110 .ac-rg-proof__grid,
  .ac-rg-v110 .ac-rg-achievements,
  .ac-rg-v110 .ac-rg-coach-grid,
  .ac-rg-v110 .ac-rg-base-strip__facts{grid-template-columns:1fr !important;}
  .ac-rg-v110 .ac-rg-about__grid article,
  .ac-rg-v110 .ac-rg-proof__grid a{min-height:auto !important;}
  .ac-rg-v110 .ac-rg-base-strip,
  .ac-rg-v110 .ac-rg-history-intro,
  .ac-rg-v110 .ac-rg-price-list,
  .ac-rg-v110 .ac-rg-docs{padding:20px !important;border-radius:24px !important;}
  .ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__photo,
  .ac-rg-v110 .ac-rg-coach-grid .ach-coach-card__photo img{min-height:320px !important;height:320px !important;}
  .ac-rg-v110 .ac-rg-price-list__title{display:block !important;}
  .ac-rg-v110 .ac-rg-price-list__title h3{margin-top:12px !important;}
  .ac-rg-v110 .ac-rg-price-table th{width:68% !important;}
  .ac-rg-v110 .ac-rg-media-slider__nav{justify-content:flex-start !important;}
  .ac-rg-v110 .ac-rg-media-track{grid-auto-columns:84% !important;}
}

/* =========================================================
   ALEXCLUB — ДЕТСКИЕ СЕКЦИИ HUB PRELAUNCH DATA V1
   Быстрый просмотр становится самодостаточным перед запуском:
   все группы + полная стоимость из единого XLSX, без перехода
   на ещё не пересобранные детальные страницы секций.
========================================================= */

.ac-kids-quick-dialog{
  width:min(900px,calc(100% - 32px)) !important;
  max-width:900px !important;
}

.ac-kids-quick__prices{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(8,28,62,.08);
}

.ac-kids-quick__prices-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}

.ac-kids-quick__prices-head h3{
  margin:0;
  color:#071936;
  font-size:16px;
  line-height:1.25;
}

.ac-kids-quick__prices-head span{
  color:#64748b;
  font-size:11px;
  line-height:1.3;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.ac-kids-quick__price-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.ac-kids-quick__price-group{
  min-width:0;
  padding:14px;
  border-radius:18px;
  background:rgba(7,135,189,.045);
  border:1px solid rgba(8,28,62,.08);
}

.ac-kids-quick__price-group h4{
  margin:0 0 8px;
  color:#071936;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}

.ac-kids-quick__price-row{
  min-height:30px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:6px 0;
  border-top:1px solid rgba(8,28,62,.07);
}

.ac-kids-quick__price-row:first-of-type{
  border-top:0;
}

.ac-kids-quick__price-row span{
  min-width:0;
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}

.ac-kids-quick__price-row strong{
  color:#071936;
  font-size:13px;
  line-height:1.2;
  white-space:nowrap;
}

.ac-kids-quick__price-extras{
  margin-top:10px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(45,127,255,.07);
  border:1px solid rgba(45,127,255,.10);
  display:grid;
  gap:7px;
}

.ac-kids-quick__price-extras > div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}

.ac-kids-quick__price-extras span{
  color:#485160;
  font-size:12px;
  line-height:1.35;
}

.ac-kids-quick__price-extras strong{
  color:#0b4fa3;
  font-size:13px;
  line-height:1.2;
  white-space:nowrap;
}

.ac-kids-quick__actions--single{
  grid-template-columns:1fr;
}

@media(max-width:720px){
  .ac-kids-quick-dialog{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }

  .ac-kids-quick__prices-head{
    display:block;
  }

  .ac-kids-quick__prices-head span{
    display:block;
    margin-top:5px;
  }

  .ac-kids-quick__price-grid{
    grid-template-columns:1fr;
  }
}
/* =========================================================
   ALEXCLUB GYM V3.27 — PRICES + SUBSCRIPTION
   База: актуальный main.css пользователя от 19.08.2026.
   Подписка встроена в систему AlexClub и использует самый
   тёмный системный navy вместо чёрного.
========================================================= */

#ac-gym-page .ac-gym-student-rate{
  margin:18px 0 0;
  padding:14px 15px;
  border-radius:18px;
  background:rgba(7,135,189,.07);
  border:1px solid rgba(7,135,189,.12);
  display:grid;
  gap:4px;
}

#ac-gym-page .ac-gym-student-rate span{
  color:var(--ac-cyan);
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

#ac-gym-page .ac-gym-student-rate strong{
  color:var(--ac-text);
  font-size:22px;
  line-height:1.05;
  font-weight:700;
}

#ac-gym-page .ac-gym-student-rate small{
  color:var(--ac-muted);
  font-size:12px;
  line-height:1.4;
}

.ac-gym-subscription{
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:34px;
  background:
    radial-gradient(circle at 84% 5%,rgba(45,127,255,.12),transparent 26rem),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,247,255,.96));
  border:1px solid rgba(45,127,255,.16);
  box-shadow:0 22px 56px rgba(8,28,62,.08);
}

.ac-gym-subscription::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(45,127,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(45,127,255,.03) 1px,transparent 1px);
  background-size:48px 48px;
  opacity:.55;
}

.ac-gym-subscription > *{
  position:relative;
  z-index:1;
}

.ac-gym-subscription__layout{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.72fr);
  gap:26px;
  align-items:stretch;
}

.ac-gym-subscription__intro{
  padding:8px 4px 8px 2px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.ac-gym-subscription__intro h3{
  max-width:380px;
  margin:18px 0 0;
  color:var(--ac-text);
  font-family:var(--ac-font,"Evolventa",sans-serif);
  font-size:clamp(38px,3.5vw,56px);
  line-height:.96;
  letter-spacing:-.05em;
  font-weight:700;
  text-transform:uppercase;
}

.ac-gym-subscription__intro > p{
  max-width:410px;
  margin:18px 0 0;
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.65;
}

.ac-gym-subscription__intro-note{
  margin-top:auto;
  padding:18px;
  border-radius:22px;
  background:rgba(45,127,255,.07);
  border:1px solid rgba(45,127,255,.10);
  display:grid;
  gap:7px;
}

.ac-gym-subscription__intro-note strong{
  color:var(--ac-text);
  font-size:15px;
  line-height:1.2;
  font-weight:700;
}

.ac-gym-subscription__intro-note span{
  color:var(--ac-muted);
  font-size:13px;
  line-height:1.5;
}

.ac-gym-subscription__cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.ac-gym-subscription-card{
  overflow:hidden;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 42px rgba(8,28,62,.10);
  display:flex;
  flex-direction:column;
  min-width:0;
}

.ac-gym-subscription-card__head{
  min-height:148px;
  padding:22px;
  display:flex;
  align-items:center;
  gap:16px;
  color:#fff;
  background:
    radial-gradient(circle at 86% 18%,rgba(45,127,255,.32),transparent 17rem),
    linear-gradient(135deg,var(--ac-text),var(--ac-blue));
}

.ac-gym-subscription-card--fitness .ac-gym-subscription-card__head{
  background:
    radial-gradient(circle at 84% 18%,rgba(155,120,255,.28),transparent 17rem),
    linear-gradient(135deg,var(--ac-text),#173b77);
}

.ac-gym-subscription-card__icon{
  width:64px;
  height:64px;
  flex:0 0 64px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.18);
}

.ac-gym-subscription-card__icon svg{
  width:38px;
  height:38px;
  display:block;
}

.ac-gym-subscription-card__head > div{
  min-width:0;
}

.ac-gym-subscription-card__head > div > span{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ac-gym-subscription-card__head h4{
  margin:7px 0 0;
  color:#fff;
  font-size:28px;
  line-height:1;
  letter-spacing:-.03em;
  font-weight:700;
}

.ac-gym-subscription-card__head p{
  margin:8px 0 0;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.35;
}

.ac-gym-subscription-card__body{
  flex:1;
  padding:24px;
  display:flex;
  flex-direction:column;
}

.ac-gym-subscription-card__price{
  display:flex;
  align-items:flex-end;
  gap:9px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(8,28,62,.10);
}

.ac-gym-subscription-card__price strong{
  color:var(--ac-blue);
  font-size:clamp(42px,4vw,58px);
  line-height:.88;
  letter-spacing:-.05em;
  font-weight:700;
}

.ac-gym-subscription-card--fitness .ac-gym-subscription-card__price strong{
  color:#6e4ee8;
}

.ac-gym-subscription-card__price span{
  padding-bottom:5px;
  color:var(--ac-muted);
  font-size:14px;
  line-height:1;
}

.ac-gym-subscription-card__body ul{
  list-style:none;
  margin:18px 0 24px;
  padding:0;
  display:grid;
  gap:10px;
}

.ac-gym-subscription-card__body li{
  position:relative;
  padding-left:26px;
  color:var(--ac-text);
  font-size:14px;
  line-height:1.48;
}

.ac-gym-subscription-card__body li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:18px;
  height:18px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(45,127,255,.10);
  color:var(--ac-blue2);
  font-size:11px;
  font-weight:700;
}

.ac-gym-subscription-card--fitness .ac-gym-subscription-card__body li::before{
  background:rgba(155,120,255,.12);
  color:#6e4ee8;
}

.ac-gym-subscription-card__actions{
  margin-top:auto;
}

.ac-gym-subscription-card__actions .ach-btn{
  width:100%;
}

.ac-gym-subscription__info{
  margin-top:18px;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(45,127,255,.13);
  display:grid;
  grid-template-columns:1.12fr 1fr 1.12fr;
  gap:0;
}

.ac-gym-subscription__info article{
  min-width:0;
  padding:4px 20px;
  display:flex;
  align-items:center;
  gap:14px;
}

.ac-gym-subscription__info article + article{
  border-left:1px solid rgba(8,28,62,.10);
}

.ac-gym-subscription__info-icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:var(--ac-blue2);
  background:rgba(45,127,255,.08);
}

.ac-gym-subscription__info-icon svg{
  width:27px;
  height:27px;
  display:block;
}

.ac-gym-subscription__info article > div{
  min-width:0;
  display:grid;
  gap:4px;
}

.ac-gym-subscription__info article > div > span{
  color:var(--ac-muted);
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.ac-gym-subscription__info strong{
  color:var(--ac-text);
  font-size:16px;
  line-height:1.15;
  font-weight:700;
}

.ac-gym-subscription__fee strong{
  color:var(--ac-blue);
  font-size:30px;
  letter-spacing:-.03em;
}

.ac-gym-subscription__info p{
  margin:0;
  color:var(--ac-muted);
  font-size:12px;
  line-height:1.45;
}

@media(max-width:1080px){
  .ac-gym-subscription__layout{
    grid-template-columns:1fr;
  }

  .ac-gym-subscription__intro-note{
    margin-top:20px;
    max-width:560px;
  }
}

@media(max-width:820px){
  .ac-gym-subscription{
    padding:22px;
    border-radius:28px;
  }

  .ac-gym-subscription__cards{
    grid-template-columns:1fr;
  }

  .ac-gym-subscription__info{
    grid-template-columns:1fr;
    padding:10px 16px;
  }

  .ac-gym-subscription__info article{
    padding:14px 4px;
  }

  .ac-gym-subscription__info article + article{
    border-left:0;
    border-top:1px solid rgba(8,28,62,.10);
  }
}

@media(max-width:560px){
  .ac-gym-subscription{
    padding:18px;
    border-radius:24px;
  }

  .ac-gym-subscription__intro h3{
    font-size:38px;
  }

  .ac-gym-subscription-card{
    border-radius:24px;
  }

  .ac-gym-subscription-card__head{
    min-height:126px;
    padding:19px;
  }

  .ac-gym-subscription-card__icon{
    width:54px;
    height:54px;
    flex-basis:54px;
    border-radius:17px;
  }

  .ac-gym-subscription-card__icon svg{
    width:31px;
    height:31px;
  }

  .ac-gym-subscription-card__head h4{
    font-size:24px;
  }

  .ac-gym-subscription-card__body{
    padding:20px;
  }

  .ac-gym-subscription-card__price{
    align-items:baseline;
    flex-wrap:wrap;
  }

  .ac-gym-subscription-card__price strong{
    font-size:46px;
  }
}

/* =========================================================
   ALEXCLUB GYM V3.28 — SUBSCRIPTION CONTRAST
   Только блок подписки. Возвращаем системную резкость текста
   и усиливаем фирменные шапки карточек без чёрного цвета.
========================================================= */

/* Светлая секция без общей «молочной» дымки */
.ac-gym-subscription{
  background:
    radial-gradient(circle at 84% 5%,rgba(45,127,255,.075),transparent 25rem),
    linear-gradient(180deg,#ffffff 0%,#f6f9ff 100%) !important;
  border-color:rgba(45,127,255,.18) !important;
}

.ac-gym-subscription::before{
  opacity:.34 !important;
}

/* Заголовок и текст слева — как в общей типографике AlexClub */
.ac-gym-subscription__intro h3{
  color:#071936 !important;
  -webkit-text-fill-color:#071936 !important;
  opacity:1 !important;
  filter:none !important;
  text-shadow:none !important;
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:700 !important;
}

.ac-gym-subscription__intro > p{
  color:#53657f !important;
  opacity:1 !important;
}

.ac-gym-subscription__intro-note{
  background:rgba(45,127,255,.065) !important;
  border-color:rgba(45,127,255,.14) !important;
}

.ac-gym-subscription__intro-note strong{
  color:#071936 !important;
  opacity:1 !important;
}

.ac-gym-subscription__intro-note span{
  color:#53657f !important;
  opacity:1 !important;
}

/* GYM — насыщенный фирменный синий с самым тёмным navy AlexClub */
.ac-gym-subscription-card--gym .ac-gym-subscription-card__head{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.10),transparent 13rem),
    radial-gradient(circle at 78% 18%,rgba(45,127,255,.38),transparent 16rem),
    linear-gradient(128deg,#071936 0%,#0b4fa3 52%,#2d7fff 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* GYM + FITNESS — тот же navy, но более яркий расширенный пакет */
.ac-gym-subscription-card--fitness .ac-gym-subscription-card__head{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.10),transparent 13rem),
    radial-gradient(circle at 80% 18%,rgba(155,120,255,.40),transparent 16rem),
    linear-gradient(128deg,#071936 0%,#0b4fa3 40%,#664ed8 72%,#9b78ff 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* В шапках больше нет матового серого текста */
.ac-gym-subscription-card__head > div > span{
  color:rgba(255,255,255,.88) !important;
  opacity:1 !important;
}

.ac-gym-subscription-card__head h4{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  filter:none !important;
  text-shadow:0 2px 12px rgba(0,0,0,.12) !important;
  font-family:"Evolventa","Segoe UI Emoji","Apple Color Emoji",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:700 !important;
}

.ac-gym-subscription-card__head p{
  color:rgba(255,255,255,.88) !important;
  opacity:1 !important;
}

.ac-gym-subscription-card__icon{
  color:#fff !important;
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.28) !important;
  box-shadow:0 10px 28px rgba(2,18,46,.18),inset 0 1px 0 rgba(255,255,255,.15) !important;
}

/* Немного усиливаем контраст цен и обычного текста карточек */
.ac-gym-subscription-card--gym .ac-gym-subscription-card__price strong{
  color:#0b5de8 !important;
  opacity:1 !important;
}

.ac-gym-subscription-card--fitness .ac-gym-subscription-card__price strong{
  color:#7047e8 !important;
  opacity:1 !important;
}

.ac-gym-subscription-card__body li{
  color:#263a59 !important;
  opacity:1 !important;
}

/* Расширенный пакет чуть заметнее, но без изменения размеров */
.ac-gym-subscription-card--fitness{
  border-color:rgba(112,71,232,.18) !important;
  box-shadow:0 20px 46px rgba(59,43,135,.12) !important;
}

/* =========================================================
   ALEXCLUB GYM V3.29 — STUDENT RATE / BUTTON GAP FIX
   Точечный отступ между плашкой студенческого тарифа
   и системной кнопкой в карточках безлимитных абонементов.
========================================================= */

#ac-gym-page .ac-gym-unlimited-grid .ac-gym-student-rate{
  margin:18px 0 14px !important;
}

#ac-gym-page .ac-gym-unlimited-grid .ac-gym-student-rate + .ach-btn{
  margin-top:0 !important;
}

@media(max-width:760px){
  #ac-gym-page .ac-gym-unlimited-grid .ac-gym-student-rate{
    margin-bottom:12px !important;
  }
}

/* =========================================================
   ALEXCLUB SYSTEM — SUBSCRIPTION / FITNESS PRIMARY VARIANT
   Общий модификатор системного блока подписки.
   Используется там, где пакет GYM + FITNESS является главным.
   Не привязан к конкретной странице и не переопределяет ach-btn.
========================================================= */
.ac-gym-subscription--fitness-primary .ac-gym-subscription__cards{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
}

.ac-gym-subscription--fitness-primary .ac-gym-subscription-card--fitness{
  border-color:rgba(112,71,232,.30) !important;
  box-shadow:0 26px 60px rgba(59,43,135,.16) !important;
}

.ac-gym-subscription--fitness-primary .ac-gym-subscription-card--fitness .ac-gym-subscription-card__head{
  min-height:158px;
}

@media(max-width:820px){
  .ac-gym-subscription--fitness-primary .ac-gym-subscription__cards{
    grid-template-columns:1fr;
  }

  .ac-gym-subscription--fitness-primary .ac-gym-subscription-card--fitness .ac-gym-subscription-card__head{
    min-height:126px;
  }
}
/* =========================
   ALEXCLUB WEBSITE 2026 — ADULT SECTIONS HUB V1.1
   Изолированный namespace: ac-adult.
   Системные кнопки ach-btn / ach-btn--primary / ach-btn--ghost не переопределяются.
========================= */

.ac-page--adult .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-adult .ac-pass-hero__bg{
  background:
    radial-gradient(circle at 14% 22%,rgba(45,127,255,.34),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.16),transparent 32rem),
    linear-gradient(90deg,rgba(5,8,20,.86) 0%,rgba(5,8,20,.58) 46%,rgba(5,8,20,.34) 100%),
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center center / cover no-repeat !important;
}

.ac-adult-hero__note{
  max-width:720px !important;
  margin:14px 0 0 !important;
  color:rgba(255,255,255,.68) !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.ac-adult-hero__deal strong{
  font-size:clamp(42px,4.4vw,72px) !important;
}

.ac-adult-choice-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:24px !important;
}

.ac-adult-choice-card{
  min-height:142px !important;
  padding:20px !important;
  border-radius:24px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  background:#fff !important;
  color:#071936 !important;
  text-align:left !important;
  cursor:pointer !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease !important;
}

.ac-adult-choice-card:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(45,127,255,.20) !important;
  box-shadow:0 16px 34px rgba(8,28,62,.08) !important;
}

.ac-adult-choice-card.is-active{
  background:#1E3A55 !important;
  color:#fff !important;
  border-color:#1E3A55 !important;
  box-shadow:0 18px 42px rgba(30,58,85,.18) !important;
}

.ac-adult-choice-card--accent:not(.is-active){
  background:linear-gradient(180deg,#fff,#f5f9ff) !important;
  border-color:rgba(239,51,64,.20) !important;
}

.ac-adult-choice-card > span{
  min-height:30px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(45,127,255,.10) !important;
  color:#2d7fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ac-adult-choice-card.is-active > span{
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
}

.ac-adult-choice-card strong{
  margin-top:16px !important;
  font-size:19px !important;
  line-height:1.08 !important;
  font-weight:700 !important;
}

.ac-adult-choice-card em{
  margin-top:8px !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-style:normal !important;
}

.ac-adult-choice-card.is-active em{
  color:rgba(255,255,255,.68) !important;
}

.ac-adult-openplay__grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ac-adult-openplay-card{
  min-height:390px !important;
  padding:28px !important;
  border-radius:32px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(45,127,255,.16),transparent 24rem),
    linear-gradient(180deg,#fff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-adult-openplay-card--volleyball{
  background:
    radial-gradient(circle at 100% 0%,rgba(239,51,64,.12),transparent 24rem),
    linear-gradient(180deg,#fff,#fff8f8) !important;
}

.ac-adult-tag{
  width:max-content !important;
  max-width:100% !important;
  min-height:30px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:rgba(45,127,255,.10) !important;
  color:#2d7fff !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
}

.ac-adult-tag--accent{
  background:rgba(239,51,64,.10) !important;
  color:#d9212e !important;
}

.ac-adult-openplay-card h3{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.6vw,44px) !important;
  line-height:.98 !important;
  letter-spacing:-.045em !important;
}

.ac-adult-openplay-card p{
  margin:14px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

.ac-adult-openplay-card__schedule{
  margin-top:24px !important;
  display:grid !important;
  gap:8px !important;
}

.ac-adult-openplay-card__schedule > div{
  min-height:56px !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  background:rgba(244,248,255,.92) !important;
  border:1px solid rgba(8,28,62,.07) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}

.ac-adult-openplay-card__schedule strong{
  color:#10233f !important;
  font-size:14px !important;
}

.ac-adult-openplay-card__schedule span{
  color:#1E3A55 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.ac-adult-openplay-card__bottom{
  margin-top:auto !important;
  padding-top:24px !important;
  display:flex !important;
  align-items:end !important;
  justify-content:space-between !important;
  gap:18px !important;
}

.ac-adult-openplay-card__price span{
  display:block !important;
  color:#64748b !important;
  font-size:12px !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}

.ac-adult-openplay-card__price strong{
  display:block !important;
  margin-top:6px !important;
  color:#1E3A55 !important;
  font-size:34px !important;
  line-height:1 !important;
}

.ac-adult-filterbar{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-bottom:10px !important;
}

.ac-adult-filterbar button{
  min-height:42px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  border:1px solid rgba(8,28,62,.09) !important;
  background:#fff !important;
  color:#1E3A55 !important;
  font-family:inherit !important;
  font-size:13px !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

.ac-adult-filterbar button.is-active{
  background:#1E3A55 !important;
  color:#fff !important;
  border-color:#1E3A55 !important;
}

.ac-adult-filter-status{
  margin:0 0 16px !important;
  color:#64748b !important;
  font-size:13px !important;
}

.ac-adult-directions__grid{
  display:grid !important;
  gap:14px !important;
}

.ac-adult-card{
  border-radius:28px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 38px rgba(8,28,62,.065) !important;
  overflow:hidden !important;
}

.ac-adult-card[hidden]{
  display:none !important;
}

.ac-adult-card--openplay{
  border-color:rgba(239,51,64,.18) !important;
}

.ac-adult-card > summary{
  list-style:none !important;
  cursor:pointer !important;
  padding:22px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr) !important;
  gap:20px !important;
  align-items:center !important;
  position:relative !important;
}

.ac-adult-card > summary::-webkit-details-marker{
  display:none !important;
}

.ac-adult-card__summary-main{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
}

.ac-adult-card__num{
  width:44px !important;
  height:44px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  background:#1E3A55 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
}

.ac-adult-card h3{
  margin:12px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(26px,2.25vw,40px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.ac-adult-card__summary-main p{
  margin:10px 0 0 !important;
  max-width:720px !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.ac-adult-card__summary-meta{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}

.ac-adult-card__summary-meta > div{
  min-height:86px !important;
  padding:12px !important;
  border-radius:16px !important;
  background:#f6f9ff !important;
  border:1px solid rgba(8,28,62,.06) !important;
}

.ac-adult-card__summary-meta span,
.ac-adult-card__summary-meta small{
  display:block !important;
  color:#64748b !important;
  font-size:10px !important;
  line-height:1.25 !important;
}

.ac-adult-card__summary-meta span{
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}

.ac-adult-card__summary-meta strong{
  display:block !important;
  margin:7px 0 5px !important;
  color:#1E3A55 !important;
  font-size:14px !important;
  line-height:1.15 !important;
}

.ac-adult-card__toggle{
  grid-column:1 / -1 !important;
  justify-self:start !important;
  color:#2d7fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}

.ac-adult-card__toggle::after{
  content:" ↓" !important;
}

.ac-adult-card[open] .ac-adult-card__toggle::after{
  content:" ↑" !important;
}

.ac-adult-card__body{
  padding:0 22px 22px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr minmax(250px,.72fr) !important;
  gap:12px !important;
}

.ac-adult-card__column{
  min-width:0 !important;
  padding:18px !important;
  border-radius:20px !important;
  background:#f7faff !important;
  border:1px solid rgba(8,28,62,.06) !important;
}

.ac-adult-card__column h4{
  margin:0 0 14px !important;
  color:#071936 !important;
  font-size:17px !important;
  line-height:1.1 !important;
}

.ac-adult-card__action{
  background:linear-gradient(180deg,#1E3A55,#10283f) !important;
  color:#fff !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-adult-card__action h4,
.ac-adult-card__action > strong{
  color:#fff !important;
}

.ac-adult-card__action > strong{
  font-size:17px !important;
  line-height:1.25 !important;
}

.ac-adult-card__action p{
  margin:10px 0 18px !important;
  color:rgba(255,255,255,.70) !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

.ac-adult-card__action .ach-btn{
  margin-top:auto !important;
}

.ac-adult-schedule-list,
.ac-adult-price-list{
  display:grid !important;
  gap:7px !important;
}

.ac-adult-schedule-list > div,
.ac-adult-price-list > div{
  min-height:42px !important;
  padding:9px 11px !important;
  border-radius:12px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.06) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.ac-adult-schedule-list strong,
.ac-adult-price-list span{
  color:#26384d !important;
  font-size:12px !important;
  line-height:1.3 !important;
}

.ac-adult-schedule-list span,
.ac-adult-price-list strong{
  color:#1E3A55 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  text-align:right !important;
}

.ac-adult-schedule-list--groups > div{
  align-items:flex-start !important;
  flex-direction:column !important;
  gap:5px !important;
}

.ac-adult-schedule-list--groups span{
  text-align:left !important;
}

.ac-adult-price-group + .ac-adult-price-group{
  margin-top:14px !important;
}

.ac-adult-price-group > strong{
  display:block !important;
  margin-bottom:8px !important;
  color:#1E3A55 !important;
  font-size:13px !important;
}

.ac-adult-card__note{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.ac-adult-base__panel{
  padding:34px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(45,127,255,.24),transparent 32rem),
    linear-gradient(180deg,#101827,#060914) !important;
  color:#fff !important;
  box-shadow:0 24px 70px rgba(8,28,62,.16) !important;
}

.ac-adult-base__panel .ac-pass-section__head h2{
  color:#fff !important;
}

.ac-adult-base__panel .ac-pass-section__head p{
  color:rgba(255,255,255,.70) !important;
}

.ac-adult-base__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-adult-base__grid article{
  min-height:180px !important;
  padding:20px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.ac-adult-base__grid article > span{
  color:#7dd3fc !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
}

.ac-adult-base__grid strong{
  display:block !important;
  margin-top:28px !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.15 !important;
}

.ac-adult-base__grid p{
  margin:10px 0 0 !important;
  color:rgba(255,255,255,.64) !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

.ac-adult-faq__list{
  max-width:none !important;
}

.ac-adult-final .ac-pass-final__panel{
  display:grid !important;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr) !important;
  gap:16px !important;
}

.ac-adult-final__copy{
  padding:28px !important;
  border-radius:28px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
}

.ac-adult-final__copy h2{
  margin:14px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(34px,4.1vw,60px) !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
}

.ac-adult-final__copy > p{
  margin:16px 0 0 !important;
  max-width:720px !important;
  color:#64748b !important;
  line-height:1.65 !important;
}

.ac-adult-final__copy .ac-pass-final-choice{
  margin-top:24px !important;
}

.ac-adult-final__info{
  padding:26px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#1E3A55,#10283f) !important;
  color:#fff !important;
  display:grid !important;
  gap:10px !important;
}

.ac-adult-final__info > div{
  padding:16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.ac-adult-final__info span{
  display:block !important;
  color:rgba(255,255,255,.54) !important;
  font-size:10px !important;
  text-transform:uppercase !important;
  letter-spacing:.10em !important;
}

.ac-adult-final__info strong{
  display:block !important;
  margin-top:7px !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.32 !important;
}

@media(max-width:1180px){
  .ac-adult-choice-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-adult-card > summary{
    grid-template-columns:1fr !important;
  }

  .ac-adult-card__body{
    grid-template-columns:1fr 1fr !important;
  }

  .ac-adult-card__action{
    grid-column:1 / -1 !important;
  }

  .ac-adult-base__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .ac-adult-openplay__grid,
  .ac-adult-final .ac-pass-final__panel{
    grid-template-columns:1fr !important;
  }

  .ac-adult-openplay-card__bottom{
    align-items:stretch !important;
    flex-direction:column !important;
  }

  .ac-adult-card__summary-meta{
    grid-template-columns:1fr !important;
  }

  .ac-adult-card__body{
    grid-template-columns:1fr !important;
  }

  .ac-adult-card__action{
    grid-column:auto !important;
  }
}

@media(max-width:720px){
  .ac-adult-choice-grid,
  .ac-adult-base__grid{
    grid-template-columns:1fr !important;
  }

  .ac-adult-choice-card{
    min-height:124px !important;
  }

  .ac-adult-openplay-card{
    min-height:auto !important;
    padding:22px !important;
    border-radius:26px !important;
  }

  .ac-adult-openplay-card__schedule > div{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:5px !important;
  }

  .ac-adult-card{
    border-radius:24px !important;
  }

  .ac-adult-card > summary{
    padding:18px !important;
  }

  .ac-adult-card__summary-main{
    grid-template-columns:1fr !important;
  }

  .ac-adult-card__num{
    width:40px !important;
    height:40px !important;
  }

  .ac-adult-card__body{
    padding:0 18px 18px !important;
  }

  .ac-adult-base__panel{
    padding:22px !important;
    border-radius:28px !important;
  }

  .ac-adult-base__grid article{
    min-height:150px !important;
  }

  .ac-adult-final__copy,
  .ac-adult-final__info{
    padding:22px !important;
    border-radius:24px !important;
  }
}

/* =========================
   ADULT SECTIONS V1.1 — HERO COUNT + MEDIA
   Уточнение hero, открытых игровых групп и фото/видео.
========================= */

/* Число и подпись разделены, чтобы длинное слово не выходило за карточку hero. */
.ac-adult-hero__deal .ac-adult-hero__count{
  display:grid !important;
  gap:2px !important;
  margin-top:18px !important;
  max-width:100% !important;
  font-size:inherit !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}

.ac-adult-hero__count > span{
  display:block !important;
  color:#fff !important;
  font-size:clamp(56px,4.4vw,76px) !important;
  line-height:.82 !important;
  font-weight:700 !important;
  letter-spacing:-.055em !important;
}

.ac-adult-hero__count > small{
  display:block !important;
  max-width:100% !important;
  color:#fff !important;
  font-size:clamp(28px,2.35vw,42px) !important;
  line-height:.94 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  overflow-wrap:anywhere !important;
}

/* Фото и видео */
.ac-adult-media__layout{
  display:grid !important;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.ac-adult-media__video{
  overflow:hidden !important;
  border-radius:32px !important;
  background:#071936 !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.10) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-adult-media__frame{
  position:relative !important;
  aspect-ratio:16 / 9 !important;
  min-height:0 !important;
  background:#050814 !important;
}

.ac-adult-media__frame iframe{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border:0 !important;
  display:block !important;
}

.ac-adult-media__caption{
  padding:20px 22px !important;
  display:grid !important;
  gap:6px !important;
}

.ac-adult-media__caption strong{
  color:#fff !important;
  font-size:20px !important;
  line-height:1.08 !important;
}

.ac-adult-media__caption span{
  color:rgba(255,255,255,.68) !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.ac-adult-media__photos{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-adult-media__photos figure{
  position:relative !important;
  min-height:190px !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:26px !important;
  background:#dce8f7 !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-adult-media__photos figure::after{
  content:"" !important;
  position:absolute !important;
  inset:35% 0 0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,transparent,rgba(5,8,20,.72)) !important;
}

.ac-adult-media__photos img{
  width:100% !important;
  height:100% !important;
  min-height:190px !important;
  object-fit:cover !important;
  display:block !important;
}

.ac-adult-media__photos figcaption{
  position:absolute !important;
  z-index:1 !important;
  left:14px !important;
  right:14px !important;
  bottom:13px !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:700 !important;
}

@media(max-width:1080px){
  .ac-adult-media__layout{
    grid-template-columns:1fr !important;
  }

  .ac-adult-media__photos{
    grid-template-rows:none !important;
  }
}

@media(max-width:640px){
  .ac-adult-hero__count > span{
    font-size:58px !important;
  }

  .ac-adult-hero__count > small{
    font-size:30px !important;
  }

  .ac-adult-media__video{
    border-radius:26px !important;
  }

  .ac-adult-media__caption{
    padding:18px !important;
  }

  .ac-adult-media__photos{
    grid-template-columns:1fr !important;
  }

  .ac-adult-media__photos figure,
  .ac-adult-media__photos img{
    min-height:230px !important;
  }
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — RENTAL MASTER / BASKETBALL V1
   Общая rental-система + уникальные правила баскетбольной страницы.
   Системные ach-btn не переопределяются.
========================================================= */

.ac-rent-page{
  position:relative !important;
}

.ac-rent-page .ac-pass-section{
  scroll-margin-top:calc(var(--ac-header-height) + 18px) !important;
}

.ac-rent-hero__deal > strong{
  font-size:clamp(38px,3.25vw,58px) !important;
  line-height:.94 !important;
  white-space:nowrap !important;
}

.ac-rent--basketball .ac-rent-hero__bg--basketball{
  background:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.28),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.14),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.34)),
    url("https://alexclub.ru/wp-content/uploads/2026/03/basket-zal-1.jpg") center center / cover no-repeat !important;
}

.ac-rent-hall-tabs{
  margin:24px 0 16px !important;
  padding:7px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.90) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 38px rgba(8,28,62,.07) !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:7px !important;
}

.ac-rent-hall-tab{
  min-height:52px !important;
  padding:0 18px !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
  color:#64748b !important;
  font:inherit !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease !important;
}

.ac-rent-hall-tab.is-active,
.ac-rent-hall-tab[aria-selected="true"]{
  color:#fff !important;
  background:linear-gradient(135deg,#0b4fa3,#2d7fff) !important;
  box-shadow:0 12px 28px rgba(45,127,255,.22) !important;
}

.ac-rent-hall-panel[hidden]{display:none !important;}

.ac-rent-hall-panel{
  min-width:0 !important;
  padding:0 !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 20px 54px rgba(8,28,62,.09) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr) !important;
  align-items:stretch !important;
}

.ac-rent-hall-media{
  position:relative !important;
  min-width:0 !important;
  min-height:520px !important;
  margin:0 !important;
  overflow:hidden !important;
  background:#071936 !important;
}

.ac-rent-hall-media img{
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  display:block !important;
  object-fit:cover !important;
  filter:saturate(1.02) contrast(1.02) !important;
}

.ac-rent-hall-media::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg,rgba(5,8,20,0) 48%,rgba(5,8,20,.62) 100%) !important;
  pointer-events:none !important;
}

.ac-rent-hall-media figcaption{
  position:absolute !important;
  z-index:1 !important;
  left:22px !important;
  right:22px !important;
  bottom:20px !important;
  display:flex !important;
  align-items:end !important;
  justify-content:space-between !important;
  gap:14px !important;
  color:#fff !important;
}

.ac-rent-hall-media figcaption strong{
  color:#fff !important;
  font-size:clamp(28px,2.5vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
}

.ac-rent-hall-media figcaption span{
  color:rgba(255,255,255,.72) !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}

.ac-rent-hall-copy{
  min-width:0 !important;
  padding:clamp(28px,3vw,46px) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:stretch !important;
}

.ac-rent-hall-label{
  align-self:flex-start !important;
  min-height:30px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  color:#2d7fff !important;
  background:#edf5ff !important;
  border:1px solid rgba(45,127,255,.10) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
}

.ac-rent-hall-copy h3{
  margin:18px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(34px,3.25vw,58px) !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}

.ac-rent-hall-copy > p{
  margin:18px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.68 !important;
}

.ac-rent-hall-specs{
  margin-top:22px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:9px !important;
}

.ac-rent-hall-specs div{
  min-height:94px !important;
  padding:14px 15px !important;
  border-radius:18px !important;
  background:#f3f7fd !important;
  border:1px solid rgba(45,127,255,.10) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

.ac-rent-hall-specs span{
  color:#7f90aa !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ac-rent-hall-specs strong{
  margin-top:8px !important;
  color:#071936 !important;
  font-size:16px !important;
  line-height:1.15 !important;
  font-weight:700 !important;
}

.ac-rent-card-actions{
  margin-top:22px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
}

.ac-rent-booking__shell{
  min-height:260px !important;
  margin-top:22px !important;
  padding:clamp(18px,2.2vw,30px) !important;
  border-radius:30px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 48px rgba(8,28,62,.08) !important;
  overflow:hidden !important;
}

.ac-rent-event__shell{
  padding:clamp(28px,4vw,56px) !important;
  border-radius:36px !important;
  background:
    radial-gradient(circle at 0 0,rgba(45,127,255,.28),transparent 34rem),
    linear-gradient(135deg,#071936,#0a203d 62%,#090f1b) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 26px 72px rgba(7,25,54,.18) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:34px !important;
  align-items:end !important;
}

.ac-rent-event__shell h2{
  max-width:980px !important;
  margin:16px 0 0 !important;
  color:#fff !important;
  font-size:clamp(40px,4.7vw,76px) !important;
  line-height:.94 !important;
  letter-spacing:-.06em !important;
  font-weight:700 !important;
}

.ac-rent-event__shell p{
  max-width:820px !important;
  margin:20px 0 0 !important;
  color:rgba(255,255,255,.68) !important;
  font-size:15px !important;
  line-height:1.68 !important;
}

.ac-rent-event__actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  justify-content:flex-end !important;
}

.ac-rent-event__shell .ach-btn--ghost{
  color:#fff !important;
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:none !important;
}

.ac-rent-services__shell{
  position:relative !important;
  overflow:hidden !important;
  padding:clamp(30px,4vw,58px) !important;
  border-radius:38px !important;
  color:#fff !important;
  background:
    radial-gradient(circle at 0 0,rgba(45,127,255,.30),transparent 36rem),
    radial-gradient(circle at 100% 20%,rgba(0,180,255,.14),transparent 30rem),
    linear-gradient(135deg,#071936 0%,#0b2446 55%,#081426 100%) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 28px 80px rgba(7,25,54,.18) !important;
}

.ac-rent-services__shell::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
  background-size:44px 44px !important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.80),transparent 92%) !important;
}

.ac-rent-services__head,.ac-rent-services__grid,.ac-rent-services__quick{position:relative !important;z-index:1 !important;}

.ac-rent-services__head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(320px,500px) !important;
  gap:28px !important;
  align-items:end !important;
  margin-bottom:26px !important;
}

.ac-rent-services__head h2{
  max-width:820px !important;
  margin:15px 0 0 !important;
  color:#fff !important;
  font-size:clamp(38px,4.8vw,76px) !important;
  line-height:.94 !important;
  letter-spacing:-.06em !important;
  font-weight:700 !important;
}

.ac-rent-services__head > p{margin:0 !important;color:rgba(255,255,255,.66) !important;font-size:15px !important;line-height:1.68 !important;}

.ac-rent-services__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}

.ac-rent-services__card{
  min-width:0 !important;
  min-height:210px !important;
  padding:22px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  transform:none !important;
}

.ac-rent-services__card--featured{
  grid-column:span 2 !important;
  background:linear-gradient(135deg,rgba(45,127,255,.20),rgba(255,255,255,.075)) !important;
  border-color:rgba(108,181,255,.22) !important;
}

.ac-rent-services__card > span{color:#6db5ff !important;font-size:11px !important;line-height:1 !important;font-weight:700 !important;letter-spacing:.10em !important;}
.ac-rent-services__card h3{margin:24px 0 0 !important;color:#fff !important;font-size:clamp(20px,1.65vw,28px) !important;line-height:1.04 !important;letter-spacing:-.035em !important;font-weight:700 !important;}
.ac-rent-services__card p{margin:12px 0 0 !important;color:rgba(255,255,255,.62) !important;font-size:14px !important;line-height:1.58 !important;}

.ac-rent-services__quick{display:flex !important;flex-wrap:wrap !important;gap:8px !important;margin-top:14px !important;}
.ac-rent-services__quick span{min-height:36px !important;padding:0 14px !important;border-radius:999px !important;display:inline-flex !important;align-items:center !important;color:rgba(255,255,255,.78) !important;background:rgba(255,255,255,.06) !important;border:1px solid rgba(255,255,255,.09) !important;font-size:12px !important;line-height:1 !important;font-weight:700 !important;}

@media(max-width:1180px){
  .ac-rent-hall-panel{grid-template-columns:1fr !important;}
  .ac-rent-hall-media,.ac-rent-hall-media img{min-height:460px !important;}
  .ac-rent-event__shell{grid-template-columns:1fr !important;align-items:start !important;}
  .ac-rent-event__actions{justify-content:flex-start !important;}
  .ac-rent-services__head{grid-template-columns:1fr !important;align-items:start !important;}
  .ac-rent-services__head > p{max-width:760px !important;}
  .ac-rent-services__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ac-rent-services__card--featured{grid-column:span 2 !important;}
}

@media(max-width:720px){
  .ac-rent-hero__deal > strong{font-size:clamp(34px,10vw,48px) !important;white-space:normal !important;}
  .ac-rent-hall-tabs{grid-template-columns:1fr !important;border-radius:18px !important;}
  .ac-rent-hall-tab{min-height:46px !important;}
  .ac-rent-hall-panel{border-radius:25px !important;}
  .ac-rent-hall-media,.ac-rent-hall-media img{min-height:330px !important;}
  .ac-rent-hall-copy{padding:22px !important;}
  .ac-rent-hall-specs{grid-template-columns:1fr 1fr !important;}
  .ac-rent-card-actions{align-items:stretch !important;}
  .ac-rent-card-actions .ach-btn{width:100% !important;}
  .ac-rent-event__shell{padding:26px 20px !important;border-radius:28px !important;}
  .ac-rent-event__actions{display:grid !important;grid-template-columns:1fr !important;}
  .ac-rent-services__shell{padding:24px 18px !important;border-radius:28px !important;}
  .ac-rent-services__grid{grid-template-columns:1fr !important;}
  .ac-rent-services__card--featured{grid-column:auto !important;}
  .ac-rent-services__card{min-height:0 !important;padding:20px !important;border-radius:22px !important;}
  .ac-rent-services__card h3{margin-top:18px !important;}
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — RENTAL HALL SELECTOR V2
   Единый завершённый переключатель залов для rental-страниц.
   Не переопределяет системные ach-btn.
========================================================= */

.ac-rent-hall-selector{
  margin-top:28px !important;
  padding:12px !important;
  border-radius:34px !important;
  background:linear-gradient(180deg,rgba(237,246,255,.92),rgba(247,250,255,.98)) !important;
  border:1px solid rgba(45,127,255,.10) !important;
  box-shadow:0 20px 60px rgba(8,28,62,.07) !important;
}

.ac-rent-hall-selector .ac-rent-hall-tabs{
  margin:0 0 12px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-rent-hall-selector .ac-rent-hall-tab{
  position:relative !important;
  min-width:0 !important;
  min-height:82px !important;
  padding:14px 16px !important;
  border:1px solid rgba(8,28,62,.09) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.90) !important;
  color:#071936 !important;
  box-shadow:0 10px 24px rgba(8,28,62,.045) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:13px !important;
  text-align:left !important;
  cursor:pointer !important;
  overflow:hidden !important;
  transform:none !important;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease !important;
}

.ac-rent-hall-selector .ac-rent-hall-tab::after{
  content:"" !important;
  position:absolute !important;
  left:16px !important;
  right:16px !important;
  bottom:0 !important;
  height:3px !important;
  border-radius:999px !important;
  background:#2d7fff !important;
  opacity:0 !important;
  transform:scaleX(.3) !important;
  transform-origin:left center !important;
  transition:opacity .18s ease,transform .18s ease !important;
}

.ac-rent-hall-selector .ac-rent-hall-tab:hover{
  border-color:rgba(45,127,255,.20) !important;
  box-shadow:0 14px 28px rgba(8,28,62,.07) !important;
}

.ac-rent-hall-selector .ac-rent-hall-tab.is-active,
.ac-rent-hall-selector .ac-rent-hall-tab[aria-selected="true"]{
  color:#071936 !important;
  background:linear-gradient(145deg,#ffffff,#eef7ff) !important;
  border-color:rgba(45,127,255,.32) !important;
  box-shadow:0 16px 34px rgba(45,127,255,.12) !important;
}

.ac-rent-hall-selector .ac-rent-hall-tab.is-active::after,
.ac-rent-hall-selector .ac-rent-hall-tab[aria-selected="true"]::after{
  opacity:1 !important;
  transform:scaleX(1) !important;
}

.ac-rent-hall-tab__no{
  width:46px !important;
  height:46px !important;
  flex:0 0 46px !important;
  border-radius:15px !important;
  display:grid !important;
  place-items:center !important;
  color:#2d7fff !important;
  background:#edf5ff !important;
  border:1px solid rgba(45,127,255,.12) !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.06em !important;
}

.ac-rent-hall-tab.is-active .ac-rent-hall-tab__no,
.ac-rent-hall-tab[aria-selected="true"] .ac-rent-hall-tab__no{
  color:#fff !important;
  background:linear-gradient(135deg,#0b4fa3,#2d7fff) !important;
  border-color:transparent !important;
  box-shadow:0 10px 22px rgba(45,127,255,.20) !important;
}

.ac-rent-hall-tab__copy{
  min-width:0 !important;
  display:grid !important;
  gap:5px !important;
}

.ac-rent-hall-tab__copy strong{
  color:#071936 !important;
  font-size:16px !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
}

.ac-rent-hall-tab__copy small{
  color:#75869f !important;
  font-size:11px !important;
  line-height:1.25 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

.ac-rent-hall-selector .ac-rent-hall-panels{
  min-width:0 !important;
}

.ac-rent-hall-selector .ac-rent-hall-panel{
  border-radius:28px !important;
  border-color:rgba(8,28,62,.07) !important;
  box-shadow:0 16px 44px rgba(8,28,62,.08) !important;
  animation:acRentHallReveal .20s ease both !important;
}

@keyframes acRentHallReveal{
  from{opacity:.35;transform:translateY(5px)}
  to{opacity:1;transform:none}
}

.ac-rent-hall-selector .ac-rent-hall-copy{
  background:
    radial-gradient(circle at 100% 0,rgba(45,127,255,.08),transparent 18rem),
    #fff !important;
}

.ac-rent-hall-selector .ac-rent-hall-specs div{
  background:linear-gradient(180deg,#f7faff,#f1f6fd) !important;
}

@media(max-width:900px){
  .ac-rent-hall-selector .ac-rent-hall-tabs{
    grid-template-columns:1fr !important;
  }
  .ac-rent-hall-selector .ac-rent-hall-tab{
    min-height:72px !important;
  }
}

@media(max-width:640px){
  .ac-rent-hall-selector{
    margin-top:20px !important;
    padding:8px !important;
    border-radius:25px !important;
  }
  .ac-rent-hall-selector .ac-rent-hall-tabs{
    gap:7px !important;
    margin-bottom:8px !important;
  }
  .ac-rent-hall-selector .ac-rent-hall-tab{
    min-height:66px !important;
    padding:10px 12px !important;
    border-radius:18px !important;
  }
  .ac-rent-hall-tab__no{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
    border-radius:13px !important;
  }
  .ac-rent-hall-tab__copy strong{font-size:15px !important;}
  .ac-rent-hall-tab__copy small{font-size:10px !important;}
  .ac-rent-hall-selector .ac-rent-hall-panel{border-radius:22px !important;}
}

@media(prefers-reduced-motion:reduce){
  .ac-rent-hall-selector .ac-rent-hall-panel{animation:none !important;}
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — RENTAL HERO IMAGE SYSTEM V2
   Надёжная явная привязка фото к каждому виду аренды.
   Не используется наследуемая CSS-переменная для фонового фото.
========================================================= */

/* Базовый rental hero: только фирменные затемнения и нейтральный fallback. */
.ac-rent-page .ac-pass-hero__bg,
.ac-rent-page .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.78),rgba(5,8,20,.38)),
    linear-gradient(135deg,#071936,#0b4fa3) !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* ФУТБОЛ */
.ac-rent--football .ac-pass-hero__bg,
.ac-rent--football .ac-rent-hero__bg,
.ac-rent-hero__bg--football,
#ac-football-rental .ac-pass-hero__bg,
#ac-football-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.78),rgba(5,8,20,.38)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/fut-1-scaled.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* БАДМИНТОН */
.ac-rent--badminton .ac-pass-hero__bg,
.ac-rent--badminton .ac-rent-hero__bg,
.ac-rent-hero__bg--badminton,
#ac-badminton-rental .ac-pass-hero__bg,
#ac-badminton-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.78),rgba(5,8,20,.38)),
    url("https://alexclub.ru/wp-content/uploads/2026/05/bad-8-scaled.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* ВОЛЕЙБОЛ */
.ac-rent--volleyball .ac-pass-hero__bg,
.ac-rent--volleyball .ac-rent-hero__bg,
.ac-rent-hero__bg--volleyball,
#ac-volleyball-rental .ac-pass-hero__bg,
#ac-volleyball-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.18),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.78),rgba(5,8,20,.38)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/vb-4-scaled.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* БАСКЕТБОЛ — сохраняем уже рабочую логику. */
.ac-rent--basketball .ac-pass-hero__bg,
.ac-rent--basketball .ac-rent-hero__bg,
.ac-rent--basketball .ac-rent-hero__bg--basketball,
.ac-rent-hero__bg--basketball,
#ac-basketball-rental .ac-pass-hero__bg,
#ac-basketball-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.28),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.14),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.34)),
    url("https://alexclub.ru/wp-content/uploads/2026/03/basket-zal-1.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}


/* =========================================================
   ALEXCLUB WEBSITE 2026 — TENNIS RENTAL V1
   Только уникальные правила страницы большого тенниса.
   Системные кнопки, типографика и rental-компоненты не переопределяются.
========================================================= */

/* Явная привязка Hero-фото: отдельный sport modifier обязателен. */
.ac-rent--tennis .ac-pass-hero__bg,
.ac-rent--tennis .ac-rent-hero__bg,
.ac-rent-hero__bg--tennis,
#ac-tennis-rental .ac-pass-hero__bg,
#ac-tennis-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.16),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.36)),
    url("https://alexclub.ru/wp-content/uploads/2026/04/ten-1-scaled.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* 10 площадок: две ровные строки по пять карточек на широком экране. */
.ac-rent--tennis .ac-rent-hall-selector .ac-rent-hall-tabs{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}

.ac-rent--tennis .ac-rent-hall-selector .ac-rent-hall-tab{
  padding-left:12px !important;
  padding-right:12px !important;
  gap:10px !important;
}

.ac-rent--tennis .ac-rent-hall-tab__no{
  width:42px !important;
  height:42px !important;
  flex-basis:42px !important;
}

.ac-rent--tennis .ac-rent-hall-tab__copy strong{
  font-size:15px !important;
}

.ac-rent--tennis .ac-rent-hall-tab__copy small{
  font-size:10px !important;
}

/* Два пути в школу тенниса. */
.ac-tennis-school__grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

.ac-tennis-school__card{
  min-width:0 !important;
  padding:clamp(26px,3vw,42px) !important;
  border-radius:32px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 50px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}

.ac-tennis-school__card--featured{
  background:
    radial-gradient(circle at 100% 0,rgba(45,127,255,.12),transparent 24rem),
    linear-gradient(180deg,#fff,#f7fbff) !important;
  border-color:rgba(45,127,255,.18) !important;
}

.ac-tennis-school__card h3{
  margin:20px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-tennis-school__card p{
  margin:18px 0 26px !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.68 !important;
}

.ac-tennis-school__card .ach-btn{
  margin-top:auto !important;
}

@media(max-width:1280px) and (min-width:901px){
  .ac-rent--tennis .ac-rent-hall-selector .ac-rent-hall-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px) and (min-width:641px){
  .ac-rent--tennis .ac-rent-hall-selector .ac-rent-hall-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .ac-tennis-school__grid{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:640px){
  .ac-rent--tennis .ac-rent-hall-selector .ac-rent-hall-tabs{
    grid-template-columns:1fr !important;
  }

  .ac-rent--tennis .ac-rent-hall-tab__no{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
  }

  .ac-tennis-school__card{
    padding:22px !important;
    border-radius:26px !important;
  }
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — RENTAL SYSTEM MASTER V1 / TENNIS BASE
   Единая система выбора площадок. Теннис — визуальный эталон.
   Новые rental-страницы не создают собственные tab/panel-компоненты.
   Системные ach-btn не переопределяются.
========================================================= */

/* Универсальное число колонок — один и тот же компонент для всех видов аренды. */
.ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--1{grid-template-columns:1fr !important;}
.ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--2{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--4{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--5{grid-template-columns:repeat(5,minmax(0,1fr)) !important;}

/* Один тип площадки: карточка выбора не растягивается на всю ширину. */
.ac-rent-hall-selector--single .ac-rent-hall-tabs.ac-rent-hall-tabs--1{
  grid-template-columns:minmax(280px,420px) !important;
}

/* Единая плотность табов как у утвержденной страницы тенниса. */
.ac-rent-hall-selector .ac-rent-hall-tab{
  padding-left:12px !important;
  padding-right:12px !important;
  gap:10px !important;
}
.ac-rent-hall-selector .ac-rent-hall-tab__no{
  width:42px !important;
  height:42px !important;
  flex-basis:42px !important;
}
.ac-rent-hall-selector .ac-rent-hall-tab__copy strong{font-size:15px !important;}
.ac-rent-hall-selector .ac-rent-hall-tab__copy small{font-size:10px !important;}

/* Будущие rental-модификаторы: фото уже привязаны к существующим материалам комплекса. */
.ac-rent--tabletennis .ac-pass-hero__bg,
.ac-rent--tabletennis .ac-rent-hero__bg,
#ac-tabletennis-rental .ac-pass-hero__bg,
#ac-tabletennis-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.16),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.36)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-nastolnogo-tennisa.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

.ac-rent--combat .ac-pass-hero__bg,
.ac-rent--combat .ac-rent-hero__bg,
#ac-combat-rental .ac-pass-hero__bg,
#ac-combat-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.16),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.36)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/alexclub-zal-edinoborstv-ringi.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

.ac-rent--fitness .ac-pass-hero__bg,
.ac-rent--fitness .ac-rent-hero__bg,
#ac-fitness-rental .ac-pass-hero__bg,
#ac-fitness-rental .ac-rent-hero__bg{
  background-image:
    radial-gradient(circle at 14% 24%,rgba(45,127,255,.30),transparent 38rem),
    radial-gradient(circle at 88% 18%,rgba(239,51,64,.16),transparent 30rem),
    linear-gradient(90deg,rgba(5,8,20,.80),rgba(5,8,20,.36)),
    url("https://alexclub.ru/wp-content/uploads/2025/10/0b1a3775-410a-439d-bf37-0af962b7ffd8.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

@media(max-width:1280px) and (min-width:901px){
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--5,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--4{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:900px) and (min-width:641px){
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--5,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--4,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--3{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:640px){
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--1,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--2,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--3,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--4,
  .ac-rent-hall-selector .ac-rent-hall-tabs.ac-rent-hall-tabs--5,
  .ac-rent-hall-selector--single .ac-rent-hall-tabs.ac-rent-hall-tabs--1{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   ALEXCLUB WEBSITE 2026 — RENTAL SYSTEM MASTER V2 / TENNIS BASE
   Универсальные контентные карточки и прайс для всех rental-страниц.
   Теннис остаётся визуальным эталоном. Системные ach-btn не меняются.
========================================================= */

.ac-rent-choice-grid{
  display:grid !important;
  gap:16px !important;
  align-items:stretch !important;
}
.ac-rent-choice-grid--2{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.ac-rent-choice-grid--3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}

.ac-rent-choice-card{
  min-width:0 !important;
  min-height:100% !important;
  padding:clamp(26px,3vw,42px) !important;
  border-radius:32px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 50px rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  transform:none !important;
}
.ac-rent-choice-card--featured{
  background:radial-gradient(circle at 100% 0,rgba(45,127,255,.12),transparent 24rem),linear-gradient(180deg,#fff,#f7fbff) !important;
  border-color:rgba(45,127,255,.18) !important;
}
.ac-rent-choice-card h3{
  margin:20px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,2.7vw,44px) !important;
  line-height:.99 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}
.ac-rent-choice-card p{
  margin:18px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.68 !important;
}
.ac-rent-choice-card__meta{
  width:100% !important;
  margin-top:22px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px 14px !important;
  align-items:center !important;
}
.ac-rent-choice-card__meta strong{color:#071936 !important;font-size:14px !important;font-weight:700 !important;}
.ac-rent-choice-card__meta span{color:#64748b !important;font-size:13px !important;}
.ac-rent-choice-card .ac-rent-card-actions{margin-top:auto !important;padding-top:26px !important;}

.ac-rent-price-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}
.ac-rent-price-card{
  min-width:0 !important;
  min-height:100% !important;
  padding:clamp(26px,3vw,40px) !important;
  border-radius:32px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 18px 50px rgba(8,28,62,.08) !important;
}
.ac-rent-price-card--featured{
  background:radial-gradient(circle at 100% 0,rgba(45,127,255,.13),transparent 24rem),linear-gradient(180deg,#fff,#f7fbff) !important;
  border-color:rgba(45,127,255,.20) !important;
}
.ac-rent-price-card__tag{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:#edf6ff !important;
  border:1px solid rgba(45,127,255,.14) !important;
  color:#2d7fff !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
.ac-rent-price-card__tag--accent{
  background:rgba(239,51,64,.09) !important;
  border-color:rgba(239,51,64,.14) !important;
  color:#df2633 !important;
}
.ac-rent-price-card h3{
  margin:18px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(26px,2.5vw,40px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
}
.ac-rent-price-table{
  display:grid !important;
  gap:0 !important;
  margin-top:24px !important;
  border-top:1px solid rgba(8,28,62,.08) !important;
}
.ac-rent-price-table > div{
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  border-bottom:1px solid rgba(8,28,62,.08) !important;
}
.ac-rent-price-table span{color:#64748b !important;font-size:14px !important;}
.ac-rent-price-table strong{color:#071936 !important;font-size:17px !important;font-weight:700 !important;white-space:nowrap !important;}
.ac-rent-check-list{
  list-style:none !important;
  margin:24px 0 0 !important;
  padding:0 !important;
  display:grid !important;
  gap:12px !important;
}
.ac-rent-check-list li{
  position:relative !important;
  margin:0 !important;
  padding:0 0 0 22px !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.58 !important;
}
.ac-rent-check-list li::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:.56em !important;
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  background:#2d7fff !important;
  box-shadow:0 0 0 5px rgba(45,127,255,.10) !important;
}
.ac-rent-check-list strong{color:#071936 !important;font-weight:700 !important;}

/* Старые названия инфраструктурных карточек больше не требуются в HTML.
   Этот alias оставлен только как страховка для уже опубликованных кэшей. */
.ac-rent-services__num{color:#6db5ff !important;font-size:11px !important;line-height:1 !important;font-weight:700 !important;letter-spacing:.10em !important;}

@media(max-width:980px){
  .ac-rent-choice-grid--3{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:760px){
  .ac-rent-choice-grid--2,.ac-rent-choice-grid--3,.ac-rent-price-grid{grid-template-columns:1fr !important;}
  .ac-rent-choice-card,.ac-rent-price-card{padding:22px !important;border-radius:26px !important;}
  .ac-rent-price-table > div{align-items:flex-start !important;flex-direction:column !important;gap:5px !important;padding:12px 0 !important;}
}

/* MASTER V2 — tags inside universal choice/price cards. */
.ac-rent-choice-card__tag{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:#edf6ff !important;
  border:1px solid rgba(45,127,255,.14) !important;
  color:#2d7fff !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
.ac-rent-choice-card__tag--red,
.ac-rent-price-card__tag--red{
  background:rgba(239,51,64,.09) !important;
  border-color:rgba(239,51,64,.14) !important;
  color:#df2633 !important;
}


/* =========================
   ALEXCLUB HEADER MENU — RENTAL SUBMENU V1
   Второй уровень «Арендовать зал». Использует существующие системные карточки меню.
========================= */

.ac-menu__view--rental .ac-menu__head{
  margin-bottom:14px;
}

.ac-menu__view--rental .ac-menu__head h2{
  max-width:410px;
}

.ac-menu__grid--rental{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.ac-menu__grid--rental .ac-menu-card{
  min-width:0;
  min-height:88px;
  padding:12px 14px 12px 12px;
}

.ac-menu__grid--rental .ac-card-icon{
  width:42px;
  height:42px;
  flex-basis:42px;
  border-radius:14px;
  font-size:21px;
}

.ac-menu__grid--rental .ac-menu-card strong{
  font-size:13px;
  line-height:1.12;
}

.ac-menu__grid--rental .ac-menu-card em{
  margin-top:4px;
  font-size:11px;
  line-height:1.25;
}

@media(max-width:640px){
  .ac-menu__view--rental .ac-menu__head h2{
    font-size:28px;
  }

  .ac-menu__grid--rental{
    grid-template-columns:1fr;
  }

  .ac-menu__grid--rental .ac-menu-card{
    min-height:76px;
  }

  .ac-menu__grid--rental .ac-menu-card strong{
    font-size:14px;
  }

  .ac-menu__grid--rental .ac-menu-card em{
    font-size:12px;
  }
}

/* =========================
   ALEXCLUB — I_SCHOOL / CYBERUN V0.1
   Уникальные блоки страницы детской интерактивной школы.
   Системные ach-btn / ach-kicker / ac-pass-* не переопределяются.
========================= */

.ac-school-page{
  width:100% !important;
}

.ac-school-hero__bg{
  overflow:hidden !important;
  background:#071936 !important;
}

.ac-school-hero__video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.02) contrast(1.02);
}

.ac-school-hero__bg::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 22%,rgba(45,127,255,.24),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.56) 44%,rgba(5,8,20,.30) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10),rgba(5,8,20,.58));
}

.ac-school-hero__bg::after{
  z-index:2 !important;
}

.ac-school-hero__logo{
  display:block;
  width:min(210px,70%);
  height:auto;
  margin:0 0 18px;
}

.ac-school-choice .ac-pass-intent__head p{
  margin:0;
  color:var(--ac-muted);
  line-height:1.55;
}

.ac-school-choice__grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.ac-school-choice__card{
  min-height:132px;
  padding:17px;
  border-radius:24px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 10px 26px rgba(8,28,62,.055);
  display:flex;
  flex-direction:column;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.ac-school-choice__card:hover,
.ac-school-choice__card.is-active{
  transform:translateY(-3px);
  border-color:rgba(7,135,189,.30);
  box-shadow:0 16px 34px rgba(8,28,62,.10);
}

.ac-school-choice__card > span,
.ac-school-format-grid article > span,
.ac-school-benefit-grid article > span{
  color:var(--ac-cyan);
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ac-school-choice__card strong{
  margin-top:auto;
  color:#071936;
  font-size:17px;
  line-height:1.08;
}

.ac-school-choice__card em{
  margin-top:7px;
  color:var(--ac-muted);
  font-size:13px;
  line-height:1.25;
  font-style:normal;
}

.ac-school-directions__summary{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}

.ac-school-directions__summary p{
  margin:0 !important;
}

.ac-school-directions__summary a{
  color:var(--ac-cyan);
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.ac-school-directions__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ac-school-direction{
  min-height:100%;
  padding:28px;
  border-radius:32px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.08);
}

.ac-school-direction__top{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px;
  align-items:start;
}

.ac-school-direction__num{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:#071936;
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}

.ac-school-direction h3,
.ac-school-format-grid h3,
.ac-school-benefit-grid h3,
.ac-school-map h3{
  margin:0;
  color:#071936;
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.02;
  letter-spacing:-.045em;
}

.ac-school-direction__top p{
  margin:10px 0 0;
  color:var(--ac-muted);
  line-height:1.55;
}

.ac-school-direction__ages{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:22px;
}

.ac-school-direction__ages span{
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  background:rgba(7,135,189,.10);
  color:var(--ac-cyan);
  font-size:12px;
  font-weight:700;
}

.ac-school-direction ul{
  margin:22px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:9px;
}

.ac-school-direction li{
  position:relative;
  padding-left:24px;
  color:#485160;
  line-height:1.45;
}

.ac-school-direction li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--ac-cyan);
  font-weight:700;
}

.ac-school-direction__partner{
  margin:20px 0 0;
  padding-top:18px;
  border-top:1px solid rgba(8,28,62,.08);
  color:var(--ac-muted);
  font-size:13px;
  line-height:1.5;
}

.ac-school-format-grid,
.ac-school-benefit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.ac-school-format-grid article,
.ac-school-benefit-grid article{
  min-height:220px;
  padding:26px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.07);
}

.ac-school-format-grid h3,
.ac-school-benefit-grid h3{
  margin-top:28px;
}

.ac-school-format-grid p,
.ac-school-benefit-grid p{
  margin:14px 0 0;
  color:var(--ac-muted);
  line-height:1.68;
}

.ac-school-schedule{
  background:rgba(255,255,255,.30);
}

.ac-school-schedule__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.ac-school-day{
  padding:22px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.07);
}

.ac-school-day > span{
  display:block;
  padding-bottom:16px;
  color:#1E3A55;
  font-size:16px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
  border-bottom:1px solid rgba(8,28,62,.08);
}

.ac-school-day > div{
  padding:15px 0;
  border-bottom:1px solid rgba(8,28,62,.07);
}

.ac-school-day > div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.ac-school-day strong{
  color:var(--ac-cyan);
  font-size:13px;
  line-height:1;
}

.ac-school-day p{
  margin:7px 0 0;
  color:#071936;
  font-size:15px;
  line-height:1.35;
  font-weight:700;
}

.ac-school-pricing__cta{
  margin-top:24px;
  padding:22px 24px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.07);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.ac-school-pricing__cta > div{
  display:grid;
  gap:6px;
}

.ac-school-pricing__cta strong{
  color:#071936;
  font-size:20px;
  line-height:1.15;
}

.ac-school-pricing__cta span{
  color:var(--ac-muted);
  line-height:1.45;
}

.ac-school-teachers__grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}

.ac-school-teachers__grid .ach-coach-card{
  min-width:0;
}

.ac-school-teachers__grid .ach-coach-card__body h3{
  font-size:20px;
}

.ac-school-space__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ac-school-space__grid figure{
  position:relative;
  min-height:420px;
  margin:0;
  border-radius:32px;
  overflow:hidden;
  background:#071936;
  box-shadow:0 16px 42px rgba(8,28,62,.10);
}

.ac-school-space__grid img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.ac-school-space__grid figure::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 46%,rgba(5,8,20,.68));
  pointer-events:none;
}

.ac-school-space__grid figcaption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:1;
  min-height:48px;
  padding:0 15px;
  border-radius:16px;
  display:flex;
  align-items:center;
  background:rgba(5,8,20,.46);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:14px;
  font-weight:700;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.ac-school-map{
  margin-top:18px;
  display:grid;
  grid-template-columns:minmax(320px,.62fr) minmax(0,1.38fr);
  gap:18px;
  align-items:stretch;
}

.ac-school-map__copy{
  padding:30px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.07);
}

.ac-school-map h3{
  margin-top:16px;
}

.ac-school-map__copy p{
  margin:14px 0 22px;
  color:var(--ac-muted);
  line-height:1.65;
}

.ac-school-map__frame{
  min-height:390px;
  border-radius:30px;
  overflow:hidden;
  background:#eaf1fb;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 42px rgba(8,28,62,.07);
}

.ac-school-map__frame iframe{
  width:100%;
  height:100%;
  min-height:390px;
  border:0;
  display:block;
}

html[data-theme=dark] .ac-school-choice__card,
html[data-theme=dark] .ac-school-direction,
html[data-theme=dark] .ac-school-format-grid article,
html[data-theme=dark] .ac-school-benefit-grid article,
html[data-theme=dark] .ac-school-day,
html[data-theme=dark] .ac-school-pricing__cta,
html[data-theme=dark] .ac-school-map__copy{
  background:#101827;
  border-color:rgba(255,255,255,.10);
}

html[data-theme=dark] .ac-school-choice__card strong,
html[data-theme=dark] .ac-school-direction h3,
html[data-theme=dark] .ac-school-format-grid h3,
html[data-theme=dark] .ac-school-benefit-grid h3,
html[data-theme=dark] .ac-school-day p,
html[data-theme=dark] .ac-school-pricing__cta strong,
html[data-theme=dark] .ac-school-map h3{
  color:#fff;
}

html[data-theme=dark] .ac-school-direction li{
  color:rgba(255,255,255,.72);
}

@media(max-width:1480px){
  .ac-school-choice__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .ac-school-teachers__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media(max-width:1100px){
  .ac-school-schedule__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ac-school-teachers__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:900px){
  .ac-school-directions__grid,
  .ac-school-format-grid,
  .ac-school-benefit-grid,
  .ac-school-space__grid,
  .ac-school-map{grid-template-columns:1fr;}
  .ac-school-space__grid figure{min-height:340px;}
  .ac-school-map__frame{min-height:330px;}
  .ac-school-map__frame iframe{min-height:330px;}
  .ac-school-pricing__cta{align-items:flex-start;flex-direction:column;}
}

@media(max-width:720px){
  .ac-school-hero__bg::before{
    background:linear-gradient(180deg,rgba(5,8,20,.38) 0%,rgba(5,8,20,.74) 100%);
  }
  .ac-school-hero__logo{width:170px;}
  .ac-school-choice__grid,
  .ac-school-schedule__grid,
  .ac-school-teachers__grid{grid-template-columns:1fr;}
  .ac-school-choice__card{min-height:112px;}
  .ac-school-direction,
  .ac-school-format-grid article,
  .ac-school-benefit-grid article,
  .ac-school-day,
  .ac-school-map__copy{padding:22px;border-radius:26px;}
  .ac-school-direction__top{grid-template-columns:1fr;}
  .ac-school-direction__num{width:42px;height:42px;}
  .ac-school-pricing__cta{padding:20px;border-radius:24px;}
  .ac-school-space__grid figure{min-height:280px;border-radius:26px;}
  .ac-school-map__frame{border-radius:26px;}
}


/* =========================
   ALEXCLUB WEBSITE 2026 — CHILDREN PARTY ROOM V2.0
   Страница комнаты для детских праздников.
   Основа: актуальный полный main.css с FTP от 24.08.2026.
   Уникальный namespace: ac-party.
   Системные ach-btn / ach-btn--primary / ach-btn--ghost / ach-kicker / ac-pass-* не переопределяются.
========================= */

.ac-party-page{
  width:100% !important;
}

.ac-party-hero__bg{
  overflow:hidden !important;
  background:
    url("https://alexclub.ru/wp-content/uploads/2025/01/4ef60c10-3594-487a-bd79-0e8cf46f6b29-scaled.jpg") center center / cover no-repeat !important;
}

/* На Hero сохраняем ту же читаемость, что и на остальных внутренних страницах AlexClub. */
.ac-party .ac-pass-hero__bg::after{
  z-index:1 !important;
  opacity:1 !important;
  background:
    linear-gradient(90deg,rgba(5,8,20,.82) 0%,rgba(5,8,20,.62) 46%,rgba(5,8,20,.38) 100%),
    linear-gradient(180deg,rgba(5,8,20,.14) 0%,rgba(5,8,20,.66) 100%) !important;
}

.ac-party .ac-pass-intent__grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-party-zone__photo{
  overflow:hidden !important;
}

.ac-party-zone__photo img{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.ac-party-zone__photo::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(180deg,rgba(5,8,20,.03) 34%,rgba(5,8,20,.58) 100%) !important;
  pointer-events:none !important;
}

.ac-party-zone__photo > span{
  position:relative !important;
  z-index:2 !important;
}

.ac-party-included-grid{
  margin-top:18px !important;
}

.ac-party-price-grid{
  grid-template-columns:minmax(0,1fr) !important;
  max-width:none !important;
  width:100% !important;
}

.ac-party-price-grid .ac-pass-price-card--best{
  transform:none !important;
}

.ac-party-price-card-wide{
  display:grid !important;
  grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr) !important;
  gap:0 34px !important;
  align-items:stretch !important;
  padding:30px !important;
}

.ac-party-price-card__main{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}

.ac-party-price-card__main .ach-btn{
  margin-top:auto !important;
  min-width:280px !important;
  max-width:100% !important;
}

.ac-party-price-card__included{
  min-width:0 !important;
  padding:4px 0 4px 32px !important;
  border-left:1px solid rgba(8,28,62,.10) !important;
}

.ac-party-price-card__included-title{
  display:block !important;
  margin:0 !important;
  color:#1E3A55 !important;
  font-size:22px !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
}

.ac-party-price-card__included ul{
  margin:20px 0 0 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px 22px !important;
}

.ac-party-price-card__included li{
  min-height:30px !important;
}

.ac-party-price-card__foot{
  grid-column:1 / -1 !important;
  margin-top:26px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:10px 18px !important;
  align-items:start !important;
}

.ac-party-price-card__foot strong{
  color:#1E3A55 !important;
  font-size:14px !important;
  line-height:1.45 !important;
  white-space:nowrap !important;
}

.ac-party-price-card__foot span{
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

.ac-party-safety-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-party-section-cta{
  margin-top:18px !important;
  padding:24px 26px !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.14),transparent 28rem),
    linear-gradient(180deg,#ffffff,#f8fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:24px !important;
  align-items:center !important;
}

.ac-party-section-cta strong{
  display:block !important;
  color:#071936 !important;
  font-size:22px !important;
  line-height:1.1 !important;
  letter-spacing:-.03em !important;
}

.ac-party-section-cta p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.62 !important;
  max-width:820px !important;
}

.ac-party-food-panel,
.ac-party-view-panel{
  margin-top:0 !important;
}

.ac-party-view-panel{
  margin-bottom:18px !important;
}

.ac-party .ac-pass-gallery__item img{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.ac-party .ac-pass-gallery__item::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02) 34%,rgba(5,8,20,.62) 100%) !important;
  pointer-events:none !important;
}

.ac-party .ac-pass-gallery__item::before{
  z-index:2 !important;
}

.ac-party .ac-pass-gallery__item figcaption{
  z-index:3 !important;
}

html[data-theme="dark"] .ac-party-price-note,
html[data-theme="dark"] .ac-party-section-cta{
  background:#ffffff !important;
  color:#071936 !important;
}

@media(max-width:1320px){
  .ac-party .ac-pass-intent__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:1180px){
  .ac-party-safety-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ac-party-section-cta{
    grid-template-columns:1fr !important;
  }

  .ac-party-section-cta .ach-btn{
    width:max-content !important;
    max-width:100% !important;
  }
}

@media(max-width:980px){
  .ac-party-price-card-wide{
    grid-template-columns:1fr 1fr !important;
    gap:0 24px !important;
  }

  .ac-party-price-card__included{
    padding-left:24px !important;
  }

  .ac-party-price-card__included ul{
    grid-template-columns:1fr !important;
  }

  .ac-party-price-card__foot{
    grid-template-columns:1fr !important;
    gap:5px !important;
  }

  .ac-party-price-card__foot strong{
    white-space:normal !important;
  }
}

@media(max-width:720px){
  .ac-party .ac-pass-intent__grid,
  .ac-party-safety-grid{
    grid-template-columns:1fr !important;
  }

  .ac-party-hero__bg{
    background-position:center center !important;
  }

  .ac-party-price-card-wide{
    grid-template-columns:1fr !important;
    gap:24px !important;
    padding:22px !important;
  }

  .ac-party-price-card__included{
    padding:22px 0 0 !important;
    border-left:0 !important;
    border-top:1px solid rgba(8,28,62,.10) !important;
  }

  .ac-party-price-card__included ul{
    grid-template-columns:1fr !important;
    gap:9px !important;
  }

  .ac-party-price-card__main .ach-btn{
    min-width:0 !important;
    width:100% !important;
  }

  .ac-party-price-card__foot{
    margin-top:0 !important;
    grid-template-columns:1fr !important;
    gap:5px !important;
    padding:15px 16px !important;
  }

  .ac-party-price-card__foot strong{
    white-space:normal !important;
  }

  .ac-party-section-cta{
    padding:20px !important;
    border-radius:24px !important;
  }

  .ac-party-section-cta .ach-btn{
    width:100% !important;
  }
}

/* =========================
   ALEXCLUB — CITY CAMP V1
   Городской детский лагерь.
   Только уникальные блоки ac-camp; системные ach-btn / ach-kicker / ac-pass-* не переопределяются.
========================= */

.ac-camp-page{
  width:100% !important;
}

.ac-camp-hero__bg{
  overflow:hidden !important;
  background:
    url("https://alexclub.ru/wp-content/uploads/2025/03/NsOt6f43YJM.jpg") center 44% / cover no-repeat !important;
}

.ac-camp-hero__bg::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 18% 20%,rgba(45,127,255,.24),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.56) 44%,rgba(5,8,20,.30) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10),rgba(5,8,20,.58)) !important;
}

.ac-camp-hero__bg::after{
  z-index:2 !important;
}

.ac-camp-choice__grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-camp-trust-grid,
.ac-camp-benefit-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}

.ac-camp-trust-grid article,
.ac-camp-benefit-grid article{
  min-height:220px !important;
  padding:24px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#fff,#f8fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-camp-trust-grid article > span,
.ac-camp-benefit-grid article > span{
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-camp-trust-grid strong,
.ac-camp-benefit-grid strong{
  display:block !important;
  margin-top:auto !important;
  padding-top:34px !important;
  color:#071936 !important;
  font-size:22px !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
}

.ac-camp-trust-grid p,
.ac-camp-benefit-grid p{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.6 !important;
}

.ac-camp-family__panel,
.ac-camp-food__panel{
  margin-top:0 !important;
}

.ac-camp-timeline{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.ac-camp-timeline article{
  min-height:112px !important;
  padding:20px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
  display:grid !important;
  grid-template-columns:120px minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
}

.ac-camp-timeline time{
  min-height:38px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(7,135,189,.10) !important;
  color:var(--ac-cyan) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.ac-camp-timeline strong{
  color:#071936 !important;
  font-size:18px !important;
  line-height:1.1 !important;
}

.ac-camp-timeline p{
  margin:8px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.ac-camp-program-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-camp-zone__photo{
  position:relative !important;
  overflow:hidden !important;
}

.ac-camp-zone__photo img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.ac-camp-zone__photo::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(5,8,20,.03) 34%,rgba(5,8,20,.62) 100%) !important;
}

.ac-camp-zone__photo > span{
  position:relative !important;
  z-index:2 !important;
}

.ac-camp-activity-grid{
  margin-top:18px !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-camp-leader-card{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
  gap:16px !important;
  align-items:stretch !important;
}

.ac-camp-leader-card__name,
.ac-camp-leader-card__facts{
  border-radius:30px !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-camp-leader-card__name{
  padding:30px !important;
  background:
    radial-gradient(circle at 14% 0%,rgba(45,127,255,.12),transparent 24rem),
    linear-gradient(180deg,#fff,#f8fbff) !important;
}

.ac-camp-leader-card__name > span{
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-camp-leader-card__name h3{
  margin:18px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3vw,48px) !important;
  line-height:.98 !important;
  letter-spacing:-.05em !important;
}

.ac-camp-leader-card__name p{
  margin:18px 0 0 !important;
  color:#64748b !important;
  font-size:15px !important;
  line-height:1.7 !important;
}

.ac-camp-leader-card__name .ach-btn{
  margin-top:24px !important;
}

.ac-camp-leader-card__facts{
  padding:16px !important;
  background:#0b1222 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-camp-leader-card__facts article{
  min-height:150px !important;
  padding:20px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}

.ac-camp-leader-card__facts span{
  color:rgba(255,255,255,.52) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-camp-leader-card__facts strong{
  margin-top:20px !important;
  color:#fff !important;
  font-size:17px !important;
  line-height:1.3 !important;
}

.ac-camp-benefit-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-camp-price-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-camp-price-grid .ac-pass-price-card--best{
  transform:none !important;
}

.ac-camp-discounts{
  margin-top:16px !important;
  padding:18px 20px !important;
  border-radius:22px !important;
  background:#1E3A55 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px 18px !important;
}

.ac-camp-discounts strong{
  font-size:16px !important;
}

.ac-camp-discounts span{
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  display:inline-flex !important;
  align-items:center !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.ac-camp-discounts small{
  margin-left:auto !important;
  color:rgba(255,255,255,.66) !important;
  font-size:12px !important;
}

.ac-camp-shifts{
  margin-top:18px !important;
  padding:28px !important;
  border-radius:30px !important;
  background:linear-gradient(180deg,#fff,#f8fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-camp-shifts__head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
}

.ac-camp-shifts__head h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:32px !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.ac-camp-shifts__grid{
  margin-top:20px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-camp-shifts__grid article{
  min-height:122px !important;
  padding:18px !important;
  border-radius:22px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-camp-shifts__grid span{
  color:var(--ac-cyan) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-camp-shifts__grid strong{
  margin-top:auto !important;
  padding-top:22px !important;
  color:#071936 !important;
  font-size:20px !important;
  line-height:1 !important;
}

.ac-camp-shifts__grid small{
  margin-top:7px !important;
  color:#64748b !important;
  font-size:12px !important;
}

.ac-camp-shifts__actions{
  margin-top:20px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.ac-camp .ac-pass-gallery__item img{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.ac-camp .ac-pass-gallery__item::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02) 34%,rgba(5,8,20,.62) 100%) !important;
}

.ac-camp .ac-pass-gallery__item::before{
  z-index:2 !important;
}

.ac-camp .ac-pass-gallery__item figcaption{
  z-index:3 !important;
}

.ac-camp-video-card{
  margin-bottom:18px !important;
}

.ac-camp-map{
  display:grid !important;
  grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr) !important;
  gap:14px !important;
  align-items:stretch !important;
}

.ac-camp-map__copy,
.ac-camp-map__frame{
  min-height:430px !important;
  border-radius:30px !important;
  overflow:hidden !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
}

.ac-camp-map__copy{
  padding:28px !important;
  background:linear-gradient(180deg,#fff,#f8fbff) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-camp-map__copy h3{
  margin:20px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,3vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.ac-camp-map__copy ul{
  margin:24px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:10px !important;
}

.ac-camp-map__copy li{
  padding:13px 14px !important;
  border-radius:16px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.ac-camp-map__copy li strong{
  color:#071936 !important;
}

.ac-camp-map__actions{
  margin-top:auto !important;
  padding-top:24px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.ac-camp-map__frame iframe{
  width:100% !important;
  height:100% !important;
  min-height:430px !important;
  border:0 !important;
  display:block !important;
}

html[data-theme="dark"] .ac-camp-trust-grid article,
html[data-theme="dark"] .ac-camp-benefit-grid article,
html[data-theme="dark"] .ac-camp-timeline article,
html[data-theme="dark"] .ac-camp-leader-card__name,
html[data-theme="dark"] .ac-camp-shifts,
html[data-theme="dark"] .ac-camp-shifts__grid article,
html[data-theme="dark"] .ac-camp-map__copy,
html[data-theme="dark"] .ac-camp-map__copy li{
  background:#fff !important;
  color:#071936 !important;
}

@media(max-width:1180px){
  .ac-camp-choice__grid,
  .ac-camp-trust-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-camp-program-grid,
  .ac-camp-benefit-grid,
  .ac-camp-price-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-camp-program-grid .ac-pass-zone-card:last-child,
  .ac-camp-price-grid .ac-pass-price-card:last-child{
    grid-column:1 / -1 !important;
  }

  .ac-camp-shifts__grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .ac-camp-timeline,
  .ac-camp-leader-card,
  .ac-camp-map{
    grid-template-columns:1fr !important;
  }

  .ac-camp-activity-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-camp-map__copy,
  .ac-camp-map__frame,
  .ac-camp-map__frame iframe{
    min-height:360px !important;
  }
}

@media(max-width:720px){
  .ac-camp-hero__bg{
    background-position:center center !important;
  }

  /* Hero darkness synced with i-school / child pages. */
  .ac-camp-hero__bg::before{
    background:linear-gradient(180deg,rgba(5,8,20,.38) 0%,rgba(5,8,20,.74) 100%) !important;
  }

  .ac-camp-choice__grid,
  .ac-camp-trust-grid,
  .ac-camp-program-grid,
  .ac-camp-benefit-grid,
  .ac-camp-price-grid,
  .ac-camp-activity-grid,
  .ac-camp-shifts__grid{
    grid-template-columns:1fr !important;
  }

  .ac-camp-program-grid .ac-pass-zone-card:last-child,
  .ac-camp-price-grid .ac-pass-price-card:last-child{
    grid-column:auto !important;
  }

  .ac-camp-trust-grid article,
  .ac-camp-benefit-grid article{
    min-height:176px !important;
    padding:20px !important;
  }

  .ac-camp-timeline article{
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:18px !important;
  }

  .ac-camp-timeline time{
    width:max-content !important;
    max-width:100% !important;
  }

  .ac-camp-leader-card__name{
    padding:22px !important;
    border-radius:26px !important;
  }

  .ac-camp-leader-card__facts{
    grid-template-columns:1fr !important;
    padding:12px !important;
    border-radius:26px !important;
  }

  .ac-camp-leader-card__facts article{
    min-height:120px !important;
  }

  .ac-camp-discounts{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .ac-camp-discounts small{
    margin-left:0 !important;
  }

  .ac-camp-shifts{
    padding:20px !important;
    border-radius:26px !important;
  }

  .ac-camp-shifts__head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .ac-camp-shifts__actions,
  .ac-camp-map__actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .ac-camp-shifts__actions .ach-btn,
  .ac-camp-map__actions .ach-btn{
    width:100% !important;
  }

  .ac-camp-map__copy{
    min-height:auto !important;
    padding:22px !important;
    border-radius:26px !important;
  }

  .ac-camp-map__frame,
  .ac-camp-map__frame iframe{
    min-height:320px !important;
    border-radius:26px !important;
  }
}

/* =========================
   ALEXCLUB — LOGOPEDIC CENTER / LOGO V1
   Логопедический центр «Олимпия».
   Только уникальные блоки ac-logo; системные ach-btn / ach-kicker / ac-pass-* не переопределяются.
========================= */

.ac-logo-page{
  width:100% !important;
}

.ac-logo-hero__bg{
  overflow:hidden !important;
  background:
    url("https://alexclub.ru/wp-content/uploads/2023/08/fcff30df-eb4b-4203-a0bb-fb68c4d08ba4.jpg") center 44% / cover no-repeat !important;
}

.ac-logo-hero__bg::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 18% 20%,rgba(45,127,255,.24),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.56) 44%,rgba(5,8,20,.30) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10),rgba(5,8,20,.58)) !important;
}

.ac-logo-hero__bg::after{
  z-index:2 !important;
}

.ac-logo-choice__grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-logo-choice__button{
  min-height:118px !important;
  padding:16px !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 10px 26px rgba(8,28,62,.055) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  text-align:left !important;
  cursor:pointer !important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}

.ac-logo-choice__button:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(7,135,189,.22) !important;
  box-shadow:0 16px 34px rgba(8,28,62,.10) !important;
}

.ac-logo-choice__button span{
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

.ac-logo-choice__button strong{
  margin-top:10px !important;
  color:#071936 !important;
  font-size:17px !important;
  line-height:1.08 !important;
  font-weight:700 !important;
}

.ac-logo-choice__button em{
  margin-top:5px !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-style:normal !important;
}

.ac-logo-process-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-logo-directions-grid,
.ac-logo-trust-grid,
.ac-logo-safety-grid{
  display:grid !important;
  gap:14px !important;
}

.ac-logo-directions-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.ac-logo-directions-grid article,
.ac-logo-trust-grid article,
.ac-logo-safety-grid article{
  min-height:150px !important;
  padding:22px !important;
  border-radius:28px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 36px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-logo-directions-grid article > span,
.ac-logo-trust-grid article > span,
.ac-logo-safety-grid article > span{
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-logo-directions-grid strong,
.ac-logo-trust-grid strong,
.ac-logo-safety-grid strong{
  margin-top:18px !important;
  color:#071936 !important;
  font-size:20px !important;
  line-height:1.12 !important;
  font-weight:700 !important;
}

.ac-logo-directions-grid small{
  margin-top:8px !important;
  color:#64748b !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

.ac-logo-trust-grid,
.ac-logo-safety-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-logo-trust-grid p,
.ac-logo-safety-grid p{
  margin:12px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.ac-logo-license{
  margin-top:16px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px) !important;
  gap:16px !important;
  align-items:stretch !important;
}

.ac-logo-license__copy,
.ac-logo-license__media{
  margin:0 !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
}

.ac-logo-license__copy{
  padding:30px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
}

.ac-logo-license__copy h3{
  margin:16px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(28px,3vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.ac-logo-license__copy p{
  margin:16px 0 0 !important;
  max-width:760px !important;
  color:#64748b !important;
  line-height:1.65 !important;
}

.ac-logo-license__copy .ach-btn{
  margin-top:20px !important;
}

.ac-logo-license__media{
  min-height:380px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  background:#eef5ff !important;
}

.ac-logo-license__media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:520px !important;
  object-fit:cover !important;
  object-position:top center !important;
}

.ac-logo-leader-card{
  display:grid !important;
  grid-template-columns:minmax(260px,390px) minmax(0,1fr) !important;
  gap:16px !important;
  align-items:stretch !important;
}

.ac-logo-leader-card__photo,
.ac-logo-leader-card__body{
  border-radius:32px !important;
  overflow:hidden !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
}

.ac-logo-leader-card__photo{
  min-height:430px !important;
  background:linear-gradient(180deg,#eaf3ff,#dfeeff) !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
}

.ac-logo-leader-card__photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
}

.ac-logo-leader-card__body{
  padding:34px !important;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
}

.ac-logo-leader-card__body h3{
  margin:18px 0 0 !important;
  color:#071936 !important;
  font-size:clamp(30px,3.2vw,50px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.ac-logo-leader-card__body p{
  margin:18px 0 0 !important;
  max-width:780px !important;
  color:#64748b !important;
  font-size:16px !important;
  line-height:1.7 !important;
}

.ac-logo-leader-card__body .ach-btn{
  margin-top:24px !important;
}

.ac-logo-price-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}

.ac-logo-price-grid .ac-pass-price-card{
  height:100% !important;
}

.ac-logo-price-lines{
  margin-top:18px !important;
  display:grid !important;
  gap:8px !important;
}

.ac-logo-price-lines > div{
  min-height:52px !important;
  padding:11px 13px !important;
  border-radius:16px !important;
  background:rgba(7,135,189,.06) !important;
  border:1px solid rgba(7,135,189,.10) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.ac-logo-price-lines span{
  color:#485160 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.ac-logo-price-lines strong{
  color:#071936 !important;
  font-size:18px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.ac-logo-trial{
  margin-top:16px !important;
  padding:28px !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.24),transparent 28rem),
    linear-gradient(180deg,#101827,#060914) !important;
  color:#ffffff !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:24px !important;
  align-items:center !important;
  box-shadow:0 18px 48px rgba(8,28,62,.14) !important;
}

.ac-logo-trial strong{
  display:block !important;
  margin-top:14px !important;
  color:#ffffff !important;
  font-size:clamp(24px,2.4vw,38px) !important;
  line-height:1.05 !important;
}

.ac-logo-trial p{
  margin:12px 0 0 !important;
  max-width:760px !important;
  color:rgba(255,255,255,.72) !important;
  line-height:1.6 !important;
}

.ac-logo-gallery{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-logo-gallery__item{
  min-height:300px !important;
}

.ac-logo-gallery__item--wide{
  grid-column:span 2 !important;
}

.ac-logo-gallery__item img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

.ac-logo-map{
  display:grid !important;
  grid-template-columns:minmax(320px,.7fr) minmax(0,1.3fr) !important;
  gap:16px !important;
  align-items:stretch !important;
}

.ac-logo-map__copy,
.ac-logo-map__frame{
  min-height:410px !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.08) !important;
}

.ac-logo-map__copy{
  padding:28px !important;
  display:flex !important;
  flex-direction:column !important;
}

.ac-logo-map__copy h3{
  margin:0 !important;
  color:#071936 !important;
  font-size:30px !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.ac-logo-map__copy ul{
  margin:24px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:10px !important;
}

.ac-logo-map__copy li{
  padding:14px 16px !important;
  border-radius:18px !important;
  background:#f7fbff !important;
  border:1px solid rgba(8,28,62,.07) !important;
  display:grid !important;
  gap:5px !important;
}

.ac-logo-map__copy li strong{
  color:#071936 !important;
  font-size:14px !important;
}

.ac-logo-map__copy li span{
  color:#64748b !important;
  font-size:13px !important;
}

.ac-logo-map__actions{
  margin-top:auto !important;
  padding-top:20px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.ac-logo-map__frame iframe{
  width:100% !important;
  height:100% !important;
  min-height:410px !important;
  border:0 !important;
  display:block !important;
}

html[data-theme="dark"] .ac-logo-choice__button,
html[data-theme="dark"] .ac-logo-directions-grid article,
html[data-theme="dark"] .ac-logo-trust-grid article,
html[data-theme="dark"] .ac-logo-safety-grid article,
html[data-theme="dark"] .ac-logo-license__copy,
html[data-theme="dark"] .ac-logo-leader-card__body,
html[data-theme="dark"] .ac-logo-map__copy,
html[data-theme="dark"] .ac-logo-map__frame{
  background:#ffffff !important;
  color:#071936 !important;
}

@media(max-width:1100px){
  .ac-logo-choice__grid,
  .ac-logo-process-grid,
  .ac-logo-trust-grid,
  .ac-logo-safety-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-logo-directions-grid,
  .ac-logo-price-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-logo-price-grid .ac-pass-price-card:last-child{
    grid-column:1 / -1 !important;
  }

  .ac-logo-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .ac-logo-license,
  .ac-logo-leader-card,
  .ac-logo-map{
    grid-template-columns:1fr !important;
  }

  .ac-logo-license__media,
  .ac-logo-map__copy,
  .ac-logo-map__frame,
  .ac-logo-map__frame iframe{
    min-height:340px !important;
  }

  .ac-logo-leader-card__photo{
    min-height:360px !important;
  }

  .ac-logo-trial{
    grid-template-columns:1fr !important;
  }

  .ac-logo-trial .ach-btn{
    width:100% !important;
  }
}

@media(max-width:720px){
  .ac-logo-hero__bg{
    background-position:58% center !important;
  }

  .ac-logo-hero__bg::before{
    background:
      radial-gradient(circle at 18% 20%,rgba(45,127,255,.20),transparent 22rem),
      linear-gradient(180deg,rgba(5,8,20,.38) 0%,rgba(5,8,20,.74) 100%) !important;
  }

  .ac-logo-choice__grid,
  .ac-logo-process-grid,
  .ac-logo-directions-grid,
  .ac-logo-trust-grid,
  .ac-logo-safety-grid,
  .ac-logo-price-grid,
  .ac-logo-gallery{
    grid-template-columns:1fr !important;
  }

  .ac-logo-price-grid .ac-pass-price-card:last-child,
  .ac-logo-gallery__item--wide{
    grid-column:auto !important;
  }

  .ac-logo-license__copy,
  .ac-logo-leader-card__body,
  .ac-logo-trial,
  .ac-logo-map__copy{
    padding:22px !important;
    border-radius:26px !important;
  }

  .ac-logo-license__media,
  .ac-logo-map__copy,
  .ac-logo-map__frame,
  .ac-logo-map__frame iframe{
    min-height:300px !important;
  }

  .ac-logo-gallery__item{
    min-height:280px !important;
  }

  .ac-logo-map__actions .ach-btn{
    width:100% !important;
  }
}

/* =========================
   ALEXCLUB SERVICE PAGES V1.2 — RULES / LEGAL / PAYMENT
   Общая база служебных страниц AlexClub Website 2026.
   Hero использует системную геометрию ac-pass-hero без локальной копии размеров.
   Namespace ac-service. Системные ach-btn / ach-kicker / ac-pass-hero не переопределяются.
========================= */

.ac-page--service{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--service .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--service .wp-block-html,
.ac-page--service .wp-block-group,
.ac-page--service .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.ac-service{
  position:relative !important;
  overflow:hidden !important;
  background:var(--ac-bg) !important;
  color:var(--ac-text) !important;
}

.ac-service__wrap{
  width:min(1280px,calc(100% - 32px)) !important;
  margin:0 auto !important;
}

/* HERO: размеры, верхний отступ, мобильная высота и типографика
   приходят напрямую из общего .ac-pass-hero / .ac-pass-hero__inner. */
.ac-service-hero__bg{
  background:
    radial-gradient(circle at 12% 8%,rgba(45,127,255,.25),transparent 31rem),
    radial-gradient(circle at 88% 24%,rgba(7,135,189,.16),transparent 28rem),
    linear-gradient(135deg,#101827,#06162f 58%,#07101d) !important;
}

.ac-service-hero__bg::after{
  background:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(5,8,20,.02),rgba(5,8,20,.18)) !important;
  background-size:54px 54px,54px 54px,auto !important;
  opacity:.72 !important;
}

.ac-service-hero__copy{
  min-width:0 !important;
}

.ac-service-hero__card{
  min-width:0 !important;
  padding:24px !important;
  border-radius:28px !important;
  background:rgba(255,255,255,.09) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  box-shadow:0 22px 62px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}

.ac-service-hero__card > span{
  display:block !important;
  color:rgba(255,255,255,.52) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

.ac-service-hero__card > strong{
  display:block !important;
  margin-top:12px !important;
  color:#fff !important;
  font-size:34px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:-.04em !important;
}

.ac-service-hero__card ul{
  margin:18px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:10px !important;
}

.ac-service-hero__card li{
  color:rgba(255,255,255,.74) !important;
  font-size:14px !important;
  line-height:1.4 !important;
  display:flex !important;
  gap:10px !important;
}

.ac-service-hero__card li::before{
  content:"✓" !important;
  color:#fff !important;
  font-weight:700 !important;
}

.ac-service-nav-wrap{
  padding:18px 0 0 !important;
}

.ac-service-nav{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:10px !important;
}

.ac-service-nav a{
  min-height:98px !important;
  padding:16px !important;
  border-radius:22px !important;
  background:var(--ac-surface) !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  gap:14px !important;
}

.ac-service-nav a span{
  color:var(--ac-cyan) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
}

.ac-service-nav a strong{
  color:var(--ac-text) !important;
  font-size:14px !important;
  line-height:1.24 !important;
  font-weight:700 !important;
}

.ac-service-section{
  padding:78px 0 0 !important;
}

.ac-service-section--soft{
  margin-top:74px !important;
  padding:74px 0 !important;
  background:linear-gradient(180deg,rgba(45,127,255,.05),rgba(7,135,189,.025)) !important;
  border-top:1px solid var(--ac-line) !important;
  border-bottom:1px solid var(--ac-line) !important;
}

.ac-service-section__head{
  max-width:980px !important;
  margin-bottom:28px !important;
}

.ac-service-section__head h2{
  margin:14px 0 0 !important;
  color:var(--ac-text) !important;
  font-size:clamp(34px,4.3vw,64px) !important;
  line-height:1.02 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-service-section__head p{
  margin:18px 0 0 !important;
  max-width:760px !important;
  color:var(--ac-muted) !important;
  font-size:16px !important;
  line-height:1.65 !important;
}

.ac-service-meta{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-bottom:16px !important;
}

.ac-service-meta > div{
  min-height:120px !important;
  padding:20px !important;
  border-radius:24px !important;
  background:var(--ac-surface) !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 12px 30px rgba(8,28,62,.06) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:10px !important;
}

.ac-service-meta span{
  color:var(--ac-muted) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.ac-service-meta strong{
  color:var(--ac-text) !important;
  font-size:15px !important;
  line-height:1.42 !important;
  font-weight:700 !important;
}

.ac-service-callout{
  margin-bottom:16px !important;
  padding:24px 26px !important;
  border-radius:26px !important;
  background:linear-gradient(180deg,#1E3A55,#10283f) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.12) !important;
  color:#fff !important;
}

.ac-service-callout strong{
  display:block !important;
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.ac-service-callout p{
  margin:10px 0 0 !important;
  color:rgba(255,255,255,.76) !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

.ac-service-doc{
  display:grid !important;
  gap:10px !important;
}

.ac-service-rule{
  overflow:hidden !important;
  border-radius:24px !important;
  background:var(--ac-surface) !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 10px 28px rgba(8,28,62,.05) !important;
}

.ac-service-rule summary{
  list-style:none !important;
  cursor:pointer !important;
  min-height:78px !important;
  padding:18px 22px !important;
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) auto !important;
  gap:14px !important;
  align-items:center !important;
}

.ac-service-rule summary::-webkit-details-marker{
  display:none !important;
}

.ac-service-rule summary::after{
  content:"+" !important;
  width:34px !important;
  height:34px !important;
  border-radius:12px !important;
  background:rgba(45,127,255,.08) !important;
  color:var(--ac-blue) !important;
  display:grid !important;
  place-items:center !important;
  font-size:23px !important;
  line-height:1 !important;
  font-weight:400 !important;
}

.ac-service-rule[open] summary::after{
  content:"–" !important;
}

.ac-service-rule summary > span{
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  background:rgba(7,135,189,.09) !important;
  color:var(--ac-cyan) !important;
  display:grid !important;
  place-items:center !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
}

.ac-service-rule summary > strong{
  color:var(--ac-text) !important;
  font-size:18px !important;
  line-height:1.24 !important;
  font-weight:700 !important;
}

.ac-service-rule--danger summary > span{
  background:rgba(239,51,64,.10) !important;
  color:var(--ac-red) !important;
}

.ac-service-rule__body{
  padding:0 24px 26px 84px !important;
  border-top:1px solid var(--ac-line) !important;
}

.ac-service-rule__body h3{
  margin:24px 0 12px !important;
  color:var(--ac-text) !important;
  font-size:19px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.ac-service-rule__body p,
.ac-service-rule__body li{
  color:var(--ac-muted) !important;
  font-size:15px !important;
  line-height:1.72 !important;
}

.ac-service-rule__body p{
  margin:16px 0 0 !important;
}

.ac-service-rule__body p:first-child{
  margin-top:22px !important;
}

.ac-service-rule__body b{
  color:var(--ac-text) !important;
  font-weight:700 !important;
}

.ac-service-rule__body ul{
  margin:18px 0 0 !important;
  padding-left:22px !important;
  display:grid !important;
  gap:8px !important;
}

.ac-service-related{
  padding:74px 0 0 !important;
}

.ac-service-related__box{
  padding:36px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.22),transparent 30rem),
    linear-gradient(180deg,#101827,#060914) !important;
  color:#fff !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:28px !important;
  align-items:center !important;
  box-shadow:0 22px 62px rgba(8,28,62,.16) !important;
}

.ac-service-related__box h2{
  margin:14px 0 0 !important;
  color:#fff !important;
  font-size:clamp(30px,3.5vw,50px) !important;
  line-height:1 !important;
  letter-spacing:-.05em !important;
  font-weight:700 !important;
}

.ac-service-related__box p{
  margin:14px 0 0 !important;
  max-width:760px !important;
  color:rgba(255,255,255,.68) !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.ac-service-related__actions{
  display:flex !important;
  justify-content:flex-end !important;
}

@media(min-width:1025px){
  .ac-service__wrap{
    width:calc(100% - 10vw) !important;
    max-width:none !important;
  }
}

@media(max-width:1180px){
  .ac-service-hero__card{
    max-width:620px !important;
  }
}

@media(max-width:1100px){
  .ac-service-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .ac-service-meta{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:720px){
  .ac-service__wrap{
    width:calc(100% - 24px) !important;
  }

  .ac-service-nav{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ac-service-nav a{
    min-height:92px !important;
  }

  .ac-service-section{
    padding-top:56px !important;
  }

  .ac-service-section--soft{
    margin-top:56px !important;
    padding:56px 0 !important;
  }

  .ac-service-rule summary{
    min-height:72px !important;
    padding:14px !important;
    grid-template-columns:42px minmax(0,1fr) auto !important;
    gap:10px !important;
  }

  .ac-service-rule summary > span{
    width:42px !important;
    height:42px !important;
    border-radius:14px !important;
  }

  .ac-service-rule summary > strong{
    font-size:15px !important;
  }

  .ac-service-rule summary::after{
    width:30px !important;
    height:30px !important;
    border-radius:10px !important;
  }

  .ac-service-rule__body{
    padding:0 18px 22px !important;
  }

  .ac-service-rule__body p,
  .ac-service-rule__body li{
    font-size:14px !important;
    line-height:1.68 !important;
  }

  .ac-service-related{
    padding-top:56px !important;
  }

  .ac-service-related__box{
    padding:24px !important;
    border-radius:28px !important;
    grid-template-columns:1fr !important;
  }

  .ac-service-related__actions{
    justify-content:flex-start !important;
  }

  .ac-service-related__actions .ach-btn{
    width:100% !important;
  }
}

@media(max-width:420px){
  .ac-service-nav{
    grid-template-columns:1fr !important;
  }
}

/* =========================
   ALEXCLUB SERVICE PAGES V1.3 — USER AGREEMENT
   /soglasie/ использует системный Hero ac-pass-hero и общую service-систему.
   Текст соглашения остается источником WordPress; стилизуется только контейнер.
========================= */

.ac-service-nav--four{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.ac-service-legal{
  max-width:1080px !important;
  padding:36px 40px !important;
  border-radius:30px !important;
  background:var(--ac-surface) !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 16px 42px rgba(8,28,62,.07) !important;
  color:var(--ac-text) !important;
}

.ac-service-legal h1,
.ac-service-legal h2,
.ac-service-legal h3,
.ac-service-legal h4{
  color:var(--ac-text) !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

.ac-service-legal h1{
  margin:0 0 22px !important;
  font-size:clamp(30px,3vw,46px) !important;
  line-height:1.05 !important;
}

.ac-service-legal h2,
.ac-service-legal h3,
.ac-service-legal h4{
  margin:34px 0 14px !important;
  padding-top:28px !important;
  border-top:1px solid var(--ac-line) !important;
  font-size:clamp(23px,2.2vw,32px) !important;
  line-height:1.12 !important;
  scroll-margin-top:calc(var(--ac-header-height) + 28px) !important;
}

.ac-service-legal h2:first-child,
.ac-service-legal h3:first-child,
.ac-service-legal h4:first-child{
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
}

.ac-service-legal p,
.ac-service-legal li{
  color:var(--ac-muted) !important;
  font-size:16px !important;
  line-height:1.75 !important;
  font-weight:400 !important;
}

.ac-service-legal p{
  margin:12px 0 0 !important;
}

.ac-service-legal ul,
.ac-service-legal ol{
  margin:16px 0 0 !important;
  padding-left:24px !important;
  display:grid !important;
  gap:8px !important;
}

.ac-service-legal strong,
.ac-service-legal b{
  color:var(--ac-text) !important;
  font-weight:700 !important;
}

.ac-service-legal a{
  color:var(--ac-cyan) !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:3px !important;
}

@media(max-width:900px){
  .ac-service-nav--four{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .ac-service-legal{
    padding:24px 20px !important;
    border-radius:26px !important;
  }

  .ac-service-legal p,
  .ac-service-legal li{
    font-size:14px !important;
    line-height:1.7 !important;
  }
}

@media(max-width:420px){
  .ac-service-nav--four{
    grid-template-columns:1fr !important;
  }
}


/* =========================
   ALEXCLUB — CONTACT PAGE V1.4
   Hero страницы контактов по общей схеме внутренних страниц:
   отдельное фото + системное затемнение поверх него.
========================= */

.ac-service--contacts .ac-contact-hero__bg{
  overflow:hidden !important;
  background:
    url("https://alexclub.ru/wp-content/uploads/2026/07/manege-01.webp") center 44% / cover no-repeat !important;
}

.ac-service--contacts .ac-contact-hero__bg::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 18% 20%,rgba(45,127,255,.24),transparent 34rem),
    linear-gradient(90deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.56) 44%,rgba(5,8,20,.30) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10),rgba(5,8,20,.58)) !important;
}

.ac-service--contacts .ac-contact-hero__bg::after{
  z-index:2 !important;
}


/* =========================
   ALEXCLUB — STANDALONE PERSONAL ACCOUNT
   /lichnij-kabinet.html выводится без header.php и footer.php.
========================= */

body.ac-account-standalone{
  --ac-header-height:0px !important;
  padding-top:0 !important;
  margin:0 !important;
}


/* =========================
   ALEXCLUB — HISTORY PAGE V1
   /history/
========================= */

.ac-page--history{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--history .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-history{
  --achist-ink:var(--ac-text);
  --achist-muted:var(--ac-muted);
  width:100%;
  color:var(--ac-text);
}

.ac-history-hero__bg{
  background:
    linear-gradient(90deg,rgba(5,8,20,.78) 0%,rgba(5,8,20,.57) 48%,rgba(5,8,20,.28) 100%),
    linear-gradient(180deg,rgba(5,8,20,.12),rgba(5,8,20,.58)),
    url("https://alexclub.ru/wp-content/uploads/2023/03/15-4.jpg") center 52% / cover no-repeat !important;
}

.ac-history-hero__card{
  align-self:center;
  width:min(100%,380px);
  padding:24px;
  border-radius:28px;
  background:rgba(20,31,49,.74);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  color:#fff;
}

.ac-history-hero__card > span{
  display:block;
  color:rgba(255,255,255,.58);
  font-size:11px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}

.ac-history-hero__card > strong{
  display:block;
  margin-top:10px;
  font-size:30px;
  line-height:1.02;
  letter-spacing:-.04em;
}

.ac-history-hero__card ul{
  list-style:none;
  padding:0;
  margin:18px 0 0;
  display:grid;
  gap:10px;
}

.ac-history-hero__card li{
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.4;
}

.ac-history-hero__card li::before{
  content:"✓";
  margin-right:9px;
  color:#fff;
}

.ac-history-hero__card li b{
  color:#fff;
}

.ac-history-nav{
  padding:18px 0 0;
}

.ac-history-nav__grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.ac-history-nav__grid a{
  min-height:92px;
  padding:16px;
  border-radius:22px;
  background:var(--ac-surface);
  border:1px solid var(--ac-line);
  box-shadow:0 12px 30px rgba(8,28,62,.06);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:16px;
}

.ac-history-nav__grid span{
  color:var(--ac-cyan);
  font-size:11px;
  letter-spacing:.12em;
  font-weight:700;
}

.ac-history-nav__grid strong{
  color:var(--ac-text);
  font-size:13px;
  line-height:1.25;
}

.ac-history-section{
  padding:76px 0 0;
}

.ac-history-section--soft{
  margin-top:76px;
  padding:76px 0;
  background:linear-gradient(180deg,rgba(45,127,255,.035),rgba(7,135,189,.055));
  border-top:1px solid rgba(8,28,62,.06);
  border-bottom:1px solid rgba(8,28,62,.06);
}

.ac-history-section--dark{
  margin-top:76px;
  padding:76px 0;
  background:
    radial-gradient(circle at 12% 0%,rgba(45,127,255,.22),transparent 32rem),
    linear-gradient(180deg,#101827,#060914);
  color:#fff;
}

.ac-history-head{
  max-width:920px;
  margin-bottom:28px;
}

.ac-history-head--split{
  max-width:none;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,500px);
  gap:28px;
  align-items:end;
}

.ac-history-head h2,
.ac-history-founder__content h2,
.ac-history-film h2,
.ac-history-final h2{
  margin:14px 0 0;
  color:var(--ac-text);
  font-size:clamp(36px,4.3vw,66px);
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:700;
}

.ac-history-head p,
.ac-history-founder__content p{
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.75;
}

.ac-history-head--split > p{
  margin:0;
}

.ac-history-head--light h2,
.ac-history-head--light p{
  color:#fff;
}

.ac-history-head--light p{
  color:rgba(255,255,255,.68);
}

.ac-history-founder{
  display:grid;
  grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);
  gap:18px;
  align-items:stretch;
}

.ac-history-founder__photo{
  position:relative;
  min-height:590px;
  border-radius:34px;
  overflow:hidden;
  background:#101827;
  box-shadow:0 18px 50px rgba(8,28,62,.10);
}

.ac-history-founder__photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 54%,rgba(5,8,20,.72));
  pointer-events:none;
}

.ac-history-founder__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ac-history-founder__photo span{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:1;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.ac-history-founder__content{
  padding:36px;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 46px rgba(8,28,62,.08);
}

.ac-history-founder__content .ac-history-lead{
  margin-top:22px;
  color:#26384d;
  font-size:19px;
  line-height:1.65;
}

.ac-history-awards{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.ac-history-awards div{
  min-height:96px;
  padding:16px;
  border-radius:20px;
  background:#f6f9fe;
  border:1px solid rgba(8,28,62,.07);
}

.ac-history-awards strong{
  display:block;
  color:var(--ac-cyan);
  font-size:21px;
}

.ac-history-awards span{
  display:block;
  margin-top:8px;
  color:#485160;
  font-size:13px;
  line-height:1.35;
}

.ac-history-timeline{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.ac-history-timeline article{
  min-height:150px;
  padding:18px;
  border-radius:24px;
  background:#1E3A55;
  color:#fff;
}

.ac-history-timeline strong{
  display:block;
  font-size:30px;
  line-height:1;
}

.ac-history-timeline span{
  display:block;
  margin-top:14px;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.45;
}

.ac-history-story-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.ac-history-story{
  min-height:100%;
  border-radius:30px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 40px rgba(8,28,62,.07);
}

.ac-history-story--wide{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);
}

.ac-history-story img{
  width:100%;
  height:280px;
  object-fit:cover;
  display:block;
}

.ac-history-story--wide img{
  height:100%;
  min-height:360px;
}

.ac-history-story > div{
  padding:24px;
}

.ac-history-story span,
.ac-history-champions article span{
  color:var(--ac-cyan);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}

.ac-history-story h3,
.ac-history-champions h3{
  margin:10px 0 0;
  color:#071936;
  font-size:26px;
  line-height:1.06;
  letter-spacing:-.035em;
}

.ac-history-story p,
.ac-history-champions p{
  margin:12px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.65;
}

.ac-history-method-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ac-history-method-grid figure,
.ac-history-complex-grid figure{
  margin:0;
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 14px 36px rgba(8,28,62,.07);
}

.ac-history-method-grid img{
  width:100%;
  height:300px;
  object-fit:cover;
  display:block;
}

.ac-history-method-grid figcaption,
.ac-history-complex-grid figcaption{
  padding:16px 18px;
  color:#485160;
  font-size:13px;
  line-height:1.4;
  font-weight:700;
}

.ac-history-stats{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.ac-history-stats article{
  min-height:150px;
  padding:20px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
}

.ac-history-stats strong{
  display:block;
  color:#1E3A55;
  font-size:44px;
  line-height:.9;
  letter-spacing:-.05em;
}

.ac-history-stats span{
  display:block;
  margin-top:14px;
  color:#485160;
  font-size:13px;
  line-height:1.42;
}

.ac-history-champions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ac-history-champions article{
  border-radius:30px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}

.ac-history-champions img{
  width:100%;
  height:330px;
  object-fit:cover;
  display:block;
  background:#1b2433;
}

.ac-history-champions article > div{
  padding:22px;
}

.ac-history-complex-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.ac-history-complex-grid__large{
  grid-column:span 2;
  grid-row:span 2;
}

.ac-history-complex-grid img{
  width:100%;
  height:280px;
  object-fit:cover;
  display:block;
}

.ac-history-complex-grid__large img{
  height:100%;
  min-height:620px;
}

.ac-history-legacy-numbers{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.ac-history-legacy-numbers div{
  padding:22px;
  border-radius:26px;
  background:#1E3A55;
  color:#fff;
}

.ac-history-legacy-numbers strong{
  display:block;
  font-size:38px;
  line-height:.9;
}

.ac-history-legacy-numbers span{
  display:block;
  margin-top:14px;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.42;
}

.ac-history-memorial{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ac-history-memorial article{
  border-radius:30px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 16px 40px rgba(8,28,62,.07);
}

.ac-history-memorial img{
  width:100%;
  height:390px;
  object-fit:cover;
  display:block;
}

.ac-history-memorial article > div{
  padding:20px;
}

.ac-history-memorial strong{
  color:var(--ac-cyan);
  font-size:22px;
}

.ac-history-memorial p{
  margin:9px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.55;
}

.ac-history-film{
  padding:76px 0 0;
}

.ac-history-film__box,
.ac-history-final__box{
  padding:40px;
  border-radius:36px;
  background:
    radial-gradient(circle at 18% 0%,rgba(45,127,255,.24),transparent 30rem),
    linear-gradient(180deg,#101827,#060914);
  color:#fff;
  box-shadow:0 24px 70px rgba(8,28,62,.16);
}

.ac-history-film__box{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  gap:30px;
  align-items:center;
}

.ac-history-film h2,
.ac-history-final h2{
  color:#fff;
}

.ac-history-film blockquote{
  margin:24px 0 0;
  padding-left:20px;
  border-left:3px solid var(--ac-red);
  color:#fff;
  font-size:20px;
  line-height:1.55;
  font-weight:700;
}

.ac-history-film p,
.ac-history-final p{
  margin:18px 0 0;
  color:rgba(255,255,255,.70);
  line-height:1.7;
}

.ac-history-film__mark{
  min-height:230px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:26px;
}

.ac-history-film__mark strong{
  color:#fff;
  font-size:36px;
  line-height:1;
}

.ac-history-film__mark span{
  margin-top:12px;
  color:rgba(255,255,255,.62);
  line-height:1.4;
}

.ac-history-final{
  padding:18px 0 0;
}

.ac-history-final__box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
}

.ac-history-final__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

@media(max-width:1180px){
  .ac-history-nav__grid,
  .ac-history-timeline{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .ac-history-method-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ac-history-stats{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .ac-history-champions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:900px){
  .ac-history-founder,
  .ac-history-story--wide,
  .ac-history-head--split,
  .ac-history-film__box,
  .ac-history-final__box{
    grid-template-columns:1fr;
  }

  .ac-history-founder__photo{
    min-height:520px;
  }

  .ac-history-complex-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ac-history-complex-grid__large{
    grid-column:1 / -1;
    grid-row:auto;
  }

  .ac-history-complex-grid__large img{
    min-height:460px;
  }

  .ac-history-legacy-numbers{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ac-history-memorial{
    grid-template-columns:1fr;
  }

  .ac-history-memorial article{
    display:grid;
    grid-template-columns:220px 1fr;
  }

  .ac-history-memorial img{
    height:100%;
    min-height:260px;
  }

  .ac-history-final__actions{
    justify-content:flex-start;
  }
}

@media(max-width:720px){
  .ac-history-nav{
    padding-top:12px;
  }

  .ac-history-nav__grid,
  .ac-history-timeline,
  .ac-history-method-grid,
  .ac-history-stats,
  .ac-history-champions,
  .ac-history-complex-grid,
  .ac-history-legacy-numbers{
    grid-template-columns:1fr;
  }

  .ac-history-nav__grid a{
    min-height:78px;
  }

  .ac-history-section{
    padding-top:54px;
  }

  .ac-history-section--soft,
  .ac-history-section--dark{
    margin-top:54px;
    padding:54px 0;
  }

  .ac-history-founder__photo{
    min-height:420px;
    border-radius:28px;
  }

  .ac-history-founder__content,
  .ac-history-film__box,
  .ac-history-final__box{
    padding:24px;
    border-radius:28px;
  }

  .ac-history-awards{
    grid-template-columns:1fr;
  }

  .ac-history-story--wide{
    display:block;
  }

  .ac-history-story--wide img,
  .ac-history-story img{
    min-height:0;
    height:260px;
  }

  .ac-history-method-grid img,
  .ac-history-champions img{
    height:280px;
  }

  .ac-history-complex-grid__large{
    grid-column:auto;
  }

  .ac-history-complex-grid__large img,
  .ac-history-complex-grid img{
    min-height:0;
    height:300px;
  }

  .ac-history-memorial article{
    display:block;
  }

  .ac-history-memorial img{
    height:320px;
    min-height:0;
  }

  .ac-history-film{
    padding-top:54px;
  }

  .ac-history-film blockquote{
    font-size:17px;
  }

  .ac-history-film__mark{
    min-height:160px;
  }

  .ac-history-final__actions,
  .ac-history-final__actions .ach-btn{
    width:100%;
  }
}


/* =========================
   ALEXCLUB — HISTORY PAGE V1.1
   Архивные фото без обрезки + фильм «Академик спорта».
========================= */

/*
 * Архивные фотографии и документы несут содержательную информацию.
 * Поэтому на /history/ не используем object-fit:cover для карточек:
 * весь исходный кадр должен быть виден.
 */
.ac-history-founder__photo img,
.ac-history-story img,
.ac-history-method-grid img,
.ac-history-champions img,
.ac-history-complex-grid img,
.ac-history-memorial img{
  object-fit:contain !important;
  object-position:center center !important;
  background:var(--ac-surface) !important;
}

/* Крупные исторические кадры получают достаточно места, но не режутся. */
.ac-history-founder__photo{
  background:var(--ac-surface) !important;
}

.ac-history-story,
.ac-history-method-grid figure,
.ac-history-champions article,
.ac-history-complex-grid figure,
.ac-history-memorial article{
  background:var(--ac-surface) !important;
}

/* Фильм */
.ac-history-film__video{
  position:relative !important;
  width:100% !important;
  aspect-ratio:16 / 9 !important;
  overflow:hidden !important;
  border-radius:32px !important;
  background:#060914 !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 22px 60px rgba(8,28,62,.14) !important;
}

.ac-history-film__video iframe{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  border:0 !important;
}

.ac-history-film__quote{
  margin-top:14px !important;
  padding:24px 28px !important;
  border-radius:26px !important;
  background:var(--ac-surface) !important;
  border:1px solid var(--ac-line) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.06) !important;
}

.ac-history-film__quote blockquote{
  margin:0 !important;
  padding-left:18px !important;
  border-left:3px solid var(--ac-red) !important;
  color:var(--ac-text) !important;
  font-size:clamp(17px,1.55vw,22px) !important;
  line-height:1.55 !important;
  font-weight:700 !important;
}

.ac-history-film__quote > span{
  display:block !important;
  margin-top:14px !important;
  color:var(--ac-muted) !important;
  font-size:13px !important;
  font-weight:700 !important;
}

/* Убираем старую темную компоновку film__box, если она где-то осталась в кеше/разметке. */
.ac-history-film .ac-history-film__mark{
  display:none !important;
}

@media(max-width:720px){
  .ac-history-film__video{
    border-radius:22px !important;
  }

  .ac-history-film__quote{
    padding:20px !important;
    border-radius:22px !important;
  }

  /* На мобильном тоже показываем архивные изображения целиком. */
  .ac-history-story--wide img,
  .ac-history-story img,
  .ac-history-method-grid img,
  .ac-history-champions img,
  .ac-history-complex-grid__large img,
  .ac-history-complex-grid img,
  .ac-history-memorial img{
    object-fit:contain !important;
  }
}


/* =========================
   ALEXCLUB — HISTORY PAGE V1.2
   Исправление читаемости заголовка блока фильма на светлом фоне.
========================= */

.ac-history-film .ac-history-head h2{
  color:var(--ac-text) !important;
}

.ac-history-film .ac-history-head p{
  color:var(--ac-muted) !important;
}


/* =========================
   ALEXCLUB — BEAUTY PAGE V1
   /beauty/
========================= */

.ac-page--beauty{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--beauty .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-beauty{
  width:100%;
  color:var(--ac-text);
}

.ac-beauty-hero__bg{
  background:
    linear-gradient(90deg,rgba(5,8,20,.80) 0%,rgba(5,8,20,.60) 47%,rgba(5,8,20,.28) 100%),
    linear-gradient(180deg,rgba(5,8,20,.10),rgba(5,8,20,.48)),
    url("https://alexclub.ru/wp-content/uploads/2024/04/styd.jpg") center 44% / cover no-repeat !important;
}

.ac-beauty-hero__card{
  align-self:center;
  width:min(100%,380px);
  padding:24px;
  border-radius:28px;
  background:rgba(20,31,49,.74);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  color:#fff;
}

.ac-beauty-hero__card > span{
  display:block;
  color:rgba(255,255,255,.58);
  font-size:11px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}

.ac-beauty-hero__card > strong{
  display:block;
  margin-top:10px;
  font-size:30px;
  line-height:1.05;
  letter-spacing:-.04em;
}

.ac-beauty-hero__card ul{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:10px;
}

.ac-beauty-hero__card li{
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.4;
}

.ac-beauty-hero__card li::before{
  content:"✓";
  color:#fff;
  margin-right:9px;
}

.ac-beauty-nav{
  padding:18px 0 0;
}

.ac-beauty-nav__grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.ac-beauty-nav__grid a{
  min-height:92px;
  padding:16px;
  border-radius:22px;
  background:var(--ac-surface);
  border:1px solid var(--ac-line);
  box-shadow:0 12px 30px rgba(8,28,62,.06);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:16px;
}

.ac-beauty-nav__grid span{
  color:var(--ac-cyan);
  font-size:11px;
  letter-spacing:.12em;
  font-weight:700;
}

.ac-beauty-nav__grid strong{
  color:var(--ac-text);
  font-size:13px;
  line-height:1.25;
}

.ac-beauty-section{
  padding:76px 0 0;
}

.ac-beauty-section--feature{
  margin-top:76px;
  padding:76px 0;
  background:linear-gradient(180deg,rgba(45,127,255,.035),rgba(7,135,189,.055));
  border-top:1px solid rgba(8,28,62,.06);
  border-bottom:1px solid rgba(8,28,62,.06);
}

.ac-beauty-head{
  max-width:900px;
  margin-bottom:28px;
}

.ac-beauty-head--split{
  max-width:none;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,500px);
  gap:28px;
  align-items:end;
}

.ac-beauty-head h2,
.ac-beauty-feature__content h2{
  margin:14px 0 0;
  color:var(--ac-text);
  font-size:clamp(36px,4.3vw,66px);
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:700;
}

.ac-beauty-head p,
.ac-beauty-feature__content p{
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.7;
}

.ac-beauty-head--split > p{
  margin:0;
}

.ac-beauty-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.ac-beauty-card{
  padding:28px;
  min-height:260px;
  border-radius:30px;
  background:var(--ac-surface);
  border:1px solid var(--ac-line);
  box-shadow:0 16px 42px rgba(8,28,62,.07);
}

.ac-beauty-card--wide{
  grid-column:1 / -1;
  min-height:0;
  display:grid;
  grid-template-columns:70px 1fr;
  gap:22px;
  align-items:start;
}

.ac-beauty-card__icon{
  width:56px;
  height:56px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:rgba(45,127,255,.08);
  color:var(--ac-blue);
  font-size:26px;
  line-height:1;
}

.ac-beauty-card > span,
.ac-beauty-card > div > span{
  display:block;
  color:var(--ac-cyan);
  font-size:11px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}

.ac-beauty-card h3{
  margin:12px 0 0;
  color:var(--ac-text);
  font-size:clamp(24px,2.25vw,34px);
  line-height:1.05;
  letter-spacing:-.04em;
}

.ac-beauty-card p{
  margin:14px 0 0;
  color:var(--ac-muted);
  font-size:14px;
  line-height:1.65;
}

.ac-beauty-feature{
  display:grid;
  grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);
  gap:18px;
  align-items:stretch;
}

.ac-beauty-feature__media,
.ac-beauty-feature__content{
  border-radius:34px;
  overflow:hidden;
  border:1px solid var(--ac-line);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
}

.ac-beauty-feature__media{
  min-height:520px;
  background:var(--ac-surface);
}

.ac-beauty-feature__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
  background:var(--ac-surface);
}

.ac-beauty-feature__content{
  padding:38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--ac-surface);
}

.ac-beauty-feature__actions{
  margin-top:24px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ac-beauty-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.ac-beauty-facts article{
  padding:24px;
  min-height:180px;
  border-radius:28px;
  background:#1E3A55;
  color:#fff;
}

.ac-beauty-facts span{
  display:block;
  color:rgba(255,255,255,.55);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:700;
}

.ac-beauty-facts strong{
  display:block;
  margin-top:12px;
  color:#fff;
  font-size:24px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.ac-beauty-facts p{
  margin:12px 0 0;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.5;
}

.ac-beauty-contact{
  padding:18px 0 0;
}

@media(max-width:1180px){
  .ac-beauty-nav__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:900px){
  .ac-beauty-head--split,
  .ac-beauty-feature{
    grid-template-columns:1fr;
  }

  .ac-beauty-feature__media{
    min-height:420px;
  }

  .ac-beauty-facts{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .ac-beauty-nav__grid,
  .ac-beauty-grid{
    grid-template-columns:1fr;
  }

  .ac-beauty-nav{
    padding-top:12px;
  }

  .ac-beauty-nav__grid a{
    min-height:78px;
  }

  .ac-beauty-section{
    padding-top:54px;
  }

  .ac-beauty-section--feature{
    margin-top:54px;
    padding:54px 0;
  }

  .ac-beauty-card--wide{
    grid-column:auto;
    grid-template-columns:1fr;
  }

  .ac-beauty-card,
  .ac-beauty-feature__content{
    padding:22px;
    border-radius:26px;
  }

  .ac-beauty-feature__media{
    min-height:360px;
    border-radius:26px;
  }
}

/* =========================
   ALEXCLUB — SALE PAGE V2
   /sale/
   Hero compact + enriched visual module.
   Contact CTA reuses the approved native ach-contact-dialog system.
   Namespace: ac-sale. System ach-btn classes are not visually overridden.
========================= */

.ac-page--sale{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--sale .ac-content--wide{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ac-page--sale .wp-block-html,
.ac-page--sale .wp-block-group,
.ac-page--sale .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.ac-sale{
  width:100%;
  overflow:hidden;
  color:var(--ac-text);
  background:
    radial-gradient(circle at 7% 6%,rgba(45,127,255,.13),transparent 30rem),
    radial-gradient(circle at 92% 4%,rgba(7,135,189,.10),transparent 28rem),
    linear-gradient(180deg,#f7fbff 0%,#f4f8ff 44%,#f8fbff 100%);
}

/* HERO */
.ac-sale-hero{
  position:relative;
  padding:48px 0 32px;
  overflow:hidden;
}

.ac-sale-hero::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-170px;
  top:-270px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(45,127,255,.18),rgba(45,127,255,0) 68%);
  pointer-events:none;
}

.ac-sale-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(8,28,62,.024) 1px,transparent 1px),
    linear-gradient(180deg,rgba(8,28,62,.020) 1px,transparent 1px);
  background-size:58px 58px;
  opacity:.52;
  mask-image:linear-gradient(180deg,#000,transparent 94%);
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 94%);
}

.ac-sale-hero__grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(310px,420px);
  gap:44px;
  align-items:center;
}

.ac-sale-hero__copy{
  max-width:900px;
}

.ac-sale-hero h1{
  margin:16px 0 0;
  max-width:920px;
  color:#1E3A55;
  font-size:clamp(46px,5.15vw,80px);
  line-height:.96;
  letter-spacing:-.058em;
  font-weight:700;
}

.ac-sale-hero__copy > p{
  max-width:700px;
  margin:18px 0 0;
  color:#64748b;
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.55;
}

.ac-sale-hero__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}

.ac-sale-hero__chips span{
  min-height:34px;
  padding:8px 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(11,79,163,.11);
  box-shadow:0 8px 24px rgba(8,28,62,.05);
  color:#31506f;
  font-size:12px;
  line-height:1;
  font-weight:700;
}

.ac-sale-hero__visual{
  position:relative;
  min-height:245px;
  padding:24px;
  border-radius:32px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.92),transparent 25%),
    radial-gradient(circle at 85% 14%,rgba(45,127,255,.34),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(224,241,255,.92) 50%,rgba(177,221,255,.72));
  border:1px solid rgba(45,127,255,.18);
  box-shadow:0 26px 72px rgba(11,79,163,.14),inset 0 1px 0 rgba(255,255,255,.92);
}

.ac-sale-hero__visual::before,
.ac-sale-hero__visual::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border:1px solid rgba(45,127,255,.16);
  border-radius:999px;
  transform:rotate(-12deg);
}

.ac-sale-hero__visual::before{inset:38px -98px 34px 86px}
.ac-sale-hero__visual::after{inset:72px -128px 2px 38px}

.ac-sale-hero__percent{
  position:relative;
  z-index:2;
  width:112px;
  height:112px;
  border-radius:30px;
  display:grid;
  place-items:center;
  transform:rotate(7deg);
  background:linear-gradient(145deg,#ffffff 0%,#cfeaff 44%,#78bcff 100%);
  border:1px solid rgba(45,127,255,.22);
  box-shadow:0 18px 42px rgba(11,79,163,.18),inset 0 1px 0 #fff;
  color:#1265c2;
  font-size:62px;
  line-height:1;
  font-weight:700;
}

.ac-sale-hero__visual-copy{
  position:relative;
  z-index:2;
  padding-top:14px;
}

.ac-sale-hero__visual-copy > span{
  display:block;
  color:#0787bd;
  font-size:10px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ac-sale-hero__visual-copy strong{
  display:block;
  margin-top:9px;
  color:#1E3A55;
  font-size:20px;
  line-height:1.15;
  letter-spacing:-.025em;
  font-weight:700;
}

.ac-sale-hero__visual-copy p{
  margin:8px 0 0;
  max-width:300px;
  color:#64748b;
  font-size:13px;
  line-height:1.45;
}

/* MAIN STACK */
.ac-sale-main{
  padding:0 0 76px;
}

.ac-sale-stack{
  display:grid;
  gap:16px;
}

.ac-sale-offer,
.ac-sale-installment,
.ac-sale-subscription-card,
.ac-sale-help{
  border:1px solid rgba(8,28,62,.08);
  box-shadow:0 18px 48px rgba(8,28,62,.08);
}

.ac-sale-offer{
  min-height:430px;
  border-radius:34px;
  overflow:hidden;
  background:#fff;
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
}

.ac-sale-offer__copy{
  padding:42px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}

.ac-sale-offer__eyebrow,
.ac-sale-subscription-card__eyebrow{
  display:block;
  color:var(--ac-cyan);
  font-size:11px;
  line-height:1;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:700;
}

.ac-sale-offer h2,
.ac-sale-installment h2,
.ac-sale-subscription-card h2,
.ac-sale-help h2{
  margin:14px 0 0;
  font-weight:700;
  letter-spacing:-.045em;
}

.ac-sale-offer h2{
  color:var(--ac-text);
  font-size:clamp(34px,4vw,58px);
  line-height:.98;
}

.ac-sale-offer__copy > p{
  max-width:690px;
  margin:18px 0 0;
  color:var(--ac-muted);
  font-size:16px;
  line-height:1.7;
}

.ac-sale-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}

.ac-sale-tags span{
  min-height:36px;
  padding:9px 12px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  background:#f6faff;
  border:1px solid rgba(11,79,163,.10);
  color:#31506f;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
}

.ac-sale-offer__actions{
  margin-top:26px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ac-sale-offer__media{
  position:relative;
  min-height:430px;
  overflow:hidden;
  display:block;
  background:#eaf3ff;
}

.ac-sale-offer__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .4s ease;
}

.ac-sale-offer__media:hover img{
  transform:scale(1.025);
}

.ac-sale-offer__media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.18),transparent 26%),linear-gradient(180deg,transparent 52%,rgba(5,18,42,.26));
}

.ac-sale-media-badge{
  position:absolute;
  z-index:2;
  right:20px;
  bottom:20px;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  background:rgba(6,15,32,.72);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:12px;
  font-weight:700;
}

/* INSTALLMENT */
.ac-sale-installment{
  min-height:390px;
  border-radius:34px;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(480px,1.18fr);
  background:
    radial-gradient(circle at 16% 0%,rgba(45,127,255,.32),transparent 28rem),
    linear-gradient(135deg,#0b4fa3 0%,#08356e 44%,#06162f 100%);
  color:#fff;
  border-color:rgba(255,255,255,.08);
  box-shadow:0 24px 70px rgba(6,22,47,.19);
}

.ac-sale-installment__copy{
  padding:40px 38px 40px 42px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ac-sale-installment h2{
  max-width:620px;
  color:#fff;
  font-size:clamp(34px,3.6vw,56px);
  line-height:.98;
}

.ac-sale-installment__price{
  margin-top:24px;
  display:grid;
  gap:7px;
}

.ac-sale-installment__price span{
  color:rgba(255,255,255,.72);
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.ac-sale-installment__price strong{
  color:#fff;
  font-size:clamp(54px,5.8vw,88px);
  line-height:.92;
  letter-spacing:-.06em;
}

.ac-sale-installment__meta{
  margin:16px 0 0;
  color:#fff;
  font-size:14px;
  line-height:1.5;
  font-weight:700;
}

.ac-sale-installment__text{
  max-width:560px;
  margin:12px 0 0;
  color:rgba(255,255,255,.74);
  font-size:15px;
  line-height:1.6;
}

.ac-sale-installment__visual{
  position:relative;
  min-height:390px;
  overflow:hidden;
}

.ac-sale-installment__photo{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,#08356e 0%,rgba(8,53,110,.20) 36%,rgba(6,22,47,.08) 100%),
    linear-gradient(180deg,rgba(6,22,47,.02),rgba(6,22,47,.46)),
    url("https://alexclub.ru/wp-content/uploads/2026/07/gym-general-01.webp") center / cover no-repeat;
}

.ac-sale-installment__schedule{
  position:absolute;
  z-index:2;
  top:50%;
  right:28px;
  width:min(220px,calc(100% - 56px));
  transform:translateY(-50%);
  padding:18px;
  border-radius:24px;
  background:rgba(6,22,47,.70);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 44px rgba(0,0,0,.20);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

.ac-sale-installment__schedule > span{
  display:block;
  color:rgba(255,255,255,.60);
  font-size:11px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:700;
}

.ac-sale-installment__schedule ol{
  list-style:none;
  margin:12px 0 0;
  padding:0;
  display:grid;
  gap:8px;
}

.ac-sale-installment__schedule li{
  min-height:46px;
  padding:7px 10px;
  border-radius:13px;
  display:grid;
  grid-template-columns:32px 1fr;
  gap:9px;
  align-items:center;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
}

.ac-sale-installment__schedule li:first-child{
  background:linear-gradient(180deg,rgba(45,127,255,.46),rgba(45,127,255,.26));
  border-color:rgba(129,190,255,.48);
}

.ac-sale-installment__schedule b{
  width:30px;
  height:30px;
  border-radius:9px;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(255,255,255,.10);
  font-size:12px;
}

.ac-sale-installment__schedule strong{
  color:#fff;
  font-size:17px;
  line-height:1;
}

/* SUBSCRIPTIONS */
.ac-sale-subscriptions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.ac-sale-subscription-card{
  min-height:390px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 94% 10%,rgba(45,127,255,.08),transparent 20rem),
    #fff;
  display:flex;
  flex-direction:column;
}

.ac-sale-subscription-card__icon{
  width:54px;
  height:54px;
  margin-bottom:20px;
  border-radius:17px;
  display:grid;
  place-items:center;
  background:rgba(45,127,255,.08);
  border:1px solid rgba(45,127,255,.10);
  color:var(--ac-blue);
}

.ac-sale-subscription-card__icon svg{
  width:28px;
  height:28px;
  fill:currentColor;
}

.ac-sale-subscription-card h2{
  max-width:560px;
  color:var(--ac-text);
  font-size:clamp(26px,2.7vw,42px);
  line-height:1.02;
}

.ac-sale-subscription-card__price{
  margin-top:22px;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px;
}

.ac-sale-subscription-card__price strong{
  color:#1265c2;
  font-size:clamp(42px,4.5vw,66px);
  line-height:.9;
  letter-spacing:-.05em;
}

.ac-sale-subscription-card__price span{
  color:#31506f;
  font-size:14px;
  font-weight:700;
}

.ac-sale-subscription-card > p{
  max-width:600px;
  margin:18px 0 0;
  color:var(--ac-muted);
  font-size:15px;
  line-height:1.65;
}

.ac-sale-subscription-card__note{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(8,28,62,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.ac-sale-subscription-card__note span{
  color:var(--ac-muted);
  font-size:13px;
  line-height:1.2;
}

.ac-sale-subscription-card__note strong{
  color:var(--ac-text);
  font-size:16px;
  line-height:1;
}

.ac-sale-subscription-card .ac-sale-offer__actions{
  margin-top:auto;
  padding-top:26px;
}

/* HELP / SYSTEM CONTACT DIALOG TRIGGER */
.ac-sale-help{
  min-height:150px;
  padding:24px 28px;
  border-radius:30px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  background:
    radial-gradient(circle at 90% 0%,rgba(45,127,255,.10),transparent 28rem),
    linear-gradient(180deg,#fff,rgba(255,255,255,.90));
}

.ac-sale-help__icon{
  width:74px;
  height:74px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#fff;
  border:2px solid rgba(11,79,163,.22);
  box-shadow:0 12px 28px rgba(8,28,62,.07);
  color:#1265c2;
  font-size:38px;
  line-height:1;
  font-weight:700;
}

.ac-sale-help h2{
  color:var(--ac-text);
  font-size:clamp(26px,2.6vw,40px);
  line-height:1;
}

.ac-sale-help__copy p{
  margin:9px 0 0;
  color:var(--ac-muted);
  font-size:15px;
  line-height:1.55;
}

.ac-sale-help__actions{
  display:flex;
  justify-content:flex-end;
}

/* Only behavior/focus for the system trigger; button visuals stay system-level. */
.ac-sale .ach-contact-dialog-trigger{
  cursor:pointer;
}

.ac-sale .ach-contact-dialog-trigger:focus-visible{
  outline:2px solid rgba(45,127,255,.36);
  outline-offset:3px;
}

html[data-theme="dark"] .ac-sale{
  color:#071936;
  background:
    radial-gradient(circle at 7% 6%,rgba(45,127,255,.13),transparent 30rem),
    radial-gradient(circle at 92% 4%,rgba(7,135,189,.10),transparent 28rem),
    linear-gradient(180deg,#f7fbff 0%,#f4f8ff 44%,#f8fbff 100%);
}

@media(max-width:1100px){
  .ac-sale-hero__grid{
    grid-template-columns:minmax(0,1fr) minmax(280px,350px);
  }

  .ac-sale-offer{
    grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);
  }

  .ac-sale-installment{
    grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);
  }
}

@media(max-width:900px){
  .ac-sale-hero{
    padding:40px 0 28px;
  }

  .ac-sale-hero__grid{
    grid-template-columns:1fr;
    gap:20px;
  }

  .ac-sale-hero__visual{
    min-height:190px;
    padding:20px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:22px;
  }

  .ac-sale-hero__visual-copy{
    padding-top:0;
  }

  .ac-sale-offer,
  .ac-sale-installment{
    grid-template-columns:1fr;
  }

  .ac-sale-offer__media{
    min-height:380px;
    order:-1;
  }

  .ac-sale-installment__visual{
    min-height:360px;
    order:-1;
  }

  .ac-sale-subscriptions{
    grid-template-columns:1fr;
  }

  .ac-sale-help{
    grid-template-columns:auto minmax(0,1fr);
  }

  .ac-sale-help__actions{
    grid-column:1 / -1;
    justify-content:flex-start;
  }
}

@media(max-width:720px){
  .ac-sale-hero{
    padding:34px 0 24px;
  }

  .ac-sale-hero h1{
    font-size:clamp(38px,10.5vw,54px);
  }

  .ac-sale-hero__copy > p{
    margin-top:14px;
    font-size:16px;
  }

  .ac-sale-hero__chips{
    margin-top:16px;
  }

  .ac-sale-hero__visual{
    min-height:0;
    padding:18px;
    border-radius:26px;
    grid-template-columns:82px minmax(0,1fr);
    gap:16px;
  }

  .ac-sale-hero__percent{
    width:82px;
    height:82px;
    border-radius:23px;
    font-size:46px;
  }

  .ac-sale-hero__visual-copy strong{
    font-size:17px;
  }

  .ac-sale-hero__visual-copy p{
    display:none;
  }

  .ac-sale-main{
    padding-bottom:54px;
  }

  .ac-sale-stack{
    gap:12px;
  }

  .ac-sale-offer,
  .ac-sale-installment,
  .ac-sale-subscription-card,
  .ac-sale-help{
    border-radius:26px;
  }

  .ac-sale-offer__copy,
  .ac-sale-installment__copy,
  .ac-sale-subscription-card{
    padding:22px;
  }

  .ac-sale-offer{
    min-height:0;
  }

  .ac-sale-offer__media{
    min-height:300px;
  }

  .ac-sale-media-badge{
    right:14px;
    bottom:14px;
  }

  .ac-sale-installment__visual{
    min-height:300px;
  }

  .ac-sale-installment__schedule{
    top:auto;
    right:14px;
    bottom:14px;
    width:190px;
    transform:none;
    padding:14px;
    border-radius:20px;
  }

  .ac-sale-installment__schedule li{
    min-height:40px;
  }

  .ac-sale-installment__price strong{
    font-size:clamp(52px,14vw,72px);
  }

  .ac-sale-subscription-card{
    min-height:0;
  }

  .ac-sale-subscription-card__note{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .ac-sale-help{
    min-height:0;
    padding:22px;
    grid-template-columns:1fr;
    gap:16px;
  }

  .ac-sale-help__icon{
    width:58px;
    height:58px;
    font-size:30px;
  }

  .ac-sale-help__actions{
    grid-column:auto;
  }

  .ac-sale-help .ach-btn,
  .ac-sale-offer__actions .ach-btn{
    width:100%;
  }
}

@media(max-width:420px){
  .ac-sale-hero__chips span{
    min-height:32px;
    font-size:11px;
  }

  .ac-sale-offer__media{
    min-height:260px;
  }

  .ac-sale-installment__visual{
    min-height:280px;
  }

  .ac-sale-installment__schedule{
    width:174px;
  }

  .ac-sale-installment__schedule strong{
    font-size:15px;
  }
}

/* =========================
   ALEXCLUB — SALE PAGE V3
   Hero follows the same fixed-header clearance logic as other full-width
   internal pages. No global header/body overrides and no viewport hacks.
========================= */

/* main.css has a later global html/body padding reset, therefore the
   full-width sale hero must reserve the fixed header height itself. */
.ac-page--sale .ac-sale-hero{
  padding:calc(var(--ac-header-height) + 34px) 0 18px !important;
}

/* WordPress admin bar moves the fixed site header down. Keep the hero
   content below both bars while editing the page logged in. */
.admin-bar .ac-page--sale .ac-sale-hero{
  padding-top:calc(var(--ac-header-height) + 32px + 34px) !important;
}

/* The right promo module is deliberately lower and more compact so it
   works as one composition with the heading instead of floating above it. */
.ac-page--sale .ac-sale-hero__visual{
  min-height:210px !important;
  margin-top:24px !important;
  padding:20px 22px !important;
}

.ac-page--sale .ac-sale-hero__percent{
  width:94px !important;
  height:94px !important;
  border-radius:26px !important;
  font-size:54px !important;
}

.ac-page--sale .ac-sale-hero__visual-copy{
  padding-top:8px !important;
}

@media(max-width:900px){
  .ac-page--sale .ac-sale-hero{
    padding:calc(var(--ac-header-height) + 28px) 0 16px !important;
  }

  .admin-bar .ac-page--sale .ac-sale-hero{
    padding-top:calc(var(--ac-header-height) + 32px + 28px) !important;
  }

  .ac-page--sale .ac-sale-hero__visual{
    margin-top:0 !important;
    min-height:174px !important;
  }
}

@media(max-width:782px){
  .admin-bar .ac-page--sale .ac-sale-hero{
    padding-top:calc(var(--ac-header-height) + 46px + 24px) !important;
  }
}

@media(max-width:720px){
  .ac-page--sale .ac-sale-hero{
    padding:calc(var(--ac-header-height) + 24px) 0 14px !important;
  }

  .ac-page--sale .ac-sale-hero__visual{
    min-height:0 !important;
    padding:18px !important;
  }

  .ac-page--sale .ac-sale-hero__percent{
    width:82px !important;
    height:82px !important;
    border-radius:23px !important;
    font-size:46px !important;
  }
}

/* =========================
   ALEXCLUB HEADER MENU — ACCOUNT + APP ACCENTS V1
   Личный кабинет — усиленный вторичный сервисный акцент.
   Скачать приложение — системная красная Primary CTA.
========================= */

.ac-menu__links .ac-menu__account-link{
  min-height:68px;
  padding:12px 14px;
  background:
    radial-gradient(circle at 12% 0%,rgba(40,213,255,.18),transparent 54%),
    linear-gradient(135deg,rgba(45,127,255,.26),rgba(7,135,189,.12));
  border-color:rgba(40,213,255,.26);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.ac-menu__links .ac-menu__account-link:hover{
  transform:translateY(-1px);
  background:
    radial-gradient(circle at 12% 0%,rgba(40,213,255,.22),transparent 54%),
    linear-gradient(135deg,rgba(45,127,255,.34),rgba(7,135,189,.16));
  border-color:rgba(40,213,255,.38);
  box-shadow:0 16px 34px rgba(0,0,0,.16);
}

.ac-menu__account-link .ac-link-icon{
  width:40px;
  height:40px;
  flex-basis:40px;
  border-radius:13px;
  background:rgba(40,213,255,.16);
  border:1px solid rgba(255,255,255,.14);
}

.ac-menu__account-link .ac-link-icon svg{
  width:20px;
  height:20px;
}

.ac-menu__account-copy{
  min-width:0;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  gap:4px;
}

.ac-menu__account-copy strong{
  color:#fff;
  font-size:14px;
  line-height:1.1;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.035em;
}

.ac-menu__account-copy em{
  color:rgba(255,255,255,.64);
  font-size:12px;
  line-height:1.25;
  font-style:normal;
  font-weight:400;
}

.ac-menu__account-arrow{
  margin-left:auto;
  color:rgba(255,255,255,.78);
  font-size:20px;
  line-height:1;
  flex:0 0 auto;
}

.ac-app-card__cta{
  width:100%;
  margin-top:2px;
}

@media(max-width:640px){
  .ac-menu__links .ac-menu__account-link{
    min-height:64px;
  }

  .ac-menu__account-link .ac-link-icon{
    width:38px;
    height:38px;
    flex-basis:38px;
  }

  .ac-menu__account-copy strong{
    font-size:13px;
  }

  .ac-menu__account-copy em{
    font-size:11px;
  }
}


/* =========================
   HOME MATERIAL TOUR — 2026-08-26
   Материальная база главной: одно реальное помещение = одна карточка.
   Базовые системные компоненты и кнопки не переопределяются.
========================= */

.ach-material--tour .ach-material__facts{
  margin-bottom:0 !important;
}

.ach-space-tour{
  margin-top:34px !important;
}

.ach-space-group{
  margin-top:42px !important;
}

.ach-space-group:first-child{
  margin-top:0 !important;
}

.ach-space-group__head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,460px) !important;
  gap:8px 28px !important;
  align-items:end !important;
  margin-bottom:20px !important;
}

.ach-space-group__head > span{
  grid-column:1 / -1 !important;
  color:var(--ac-cyan) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

.ach-space-group__head h3{
  margin:0 !important;
  color:var(--ac-text) !important;
  font-size:clamp(28px,3.1vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  font-weight:700 !important;
}

.ach-space-group__head p{
  margin:0 !important;
  color:var(--ac-muted) !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.ach-space-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}

.ach-space-card{
  min-width:0 !important;
  overflow:hidden !important;
  border-radius:28px !important;
  background:#fff !important;
  border:1px solid rgba(8,28,62,.08) !important;
  box-shadow:0 14px 34px rgba(8,28,62,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}

.ach-space-card--wide{
  grid-column:span 2 !important;
}

.ach-space-card__media{
  position:relative !important;
  aspect-ratio:4 / 3 !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 18% 10%,rgba(45,127,255,.20),transparent 42%),
    linear-gradient(135deg,#10233f,#07111f) !important;
}

.ach-space-card--wide .ach-space-card__media{
  aspect-ratio:16 / 8.1 !important;
}

.ach-space-card__media::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,rgba(5,8,20,.02) 35%,rgba(5,8,20,.56) 100%) !important;
}

.ach-space-card__media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transition:transform .35s ease !important;
}

.ach-space-card:hover .ach-space-card__media img{
  transform:scale(1.025) !important;
}

.ach-space-card__tag,
.ach-space-card__index{
  position:absolute !important;
  z-index:3 !important;
  top:14px !important;
  min-height:30px !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  background:rgba(5,8,20,.70) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  color:#fff !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ach-space-card__tag{
  left:14px !important;
}

.ach-space-card__index{
  right:14px !important;
  min-width:32px !important;
  text-align:center !important;
}

.ach-space-card__body{
  padding:18px 18px 20px !important;
  flex:1 1 auto !important;
}

.ach-space-card__body h4{
  margin:0 !important;
  color:#071936 !important;
  font-size:19px !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
  font-weight:700 !important;
}

.ach-space-card__body p{
  margin:10px 0 0 !important;
  color:#64748b !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.ach-space-card__media--placeholder{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px),
    radial-gradient(circle at 22% 12%,rgba(45,127,255,.28),transparent 40%),
    linear-gradient(135deg,#10233f,#07111f) !important;
  background-size:36px 36px,36px 36px,auto,auto !important;
}

.ach-space-card__placeholder-mark{
  width:72px !important;
  height:72px !important;
  border-radius:24px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  background:
    linear-gradient(135deg,transparent 47%,rgba(255,255,255,.22) 48% 52%,transparent 53%),
    linear-gradient(45deg,transparent 47%,rgba(255,255,255,.22) 48% 52%,transparent 53%),
    rgba(255,255,255,.06) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.ach-space-card__placeholder-text{
  position:absolute !important;
  z-index:3 !important;
  left:50% !important;
  bottom:16px !important;
  transform:translateX(-50%) !important;
  color:rgba(255,255,255,.72) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

html[data-theme="dark"] .ach-space-card{
  background:#fff !important;
}

html[data-theme="dark"] .ach-space-group__head h3{
  color:#fff !important;
}

html[data-theme="dark"] .ach-space-group__head p{
  color:rgba(255,255,255,.66) !important;
}

@media(max-width:1180px){
  .ach-space-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ach-space-card--wide{
    grid-column:span 2 !important;
  }
}

@media(max-width:900px){
  .ach-space-group__head{
    grid-template-columns:1fr !important;
  }

  .ach-space-group__head > span{
    grid-column:auto !important;
  }

  .ach-space-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }
}

@media(max-width:640px){
  .ach-space-tour{
    margin-top:26px !important;
  }

  .ach-space-group{
    margin-top:34px !important;
  }

  .ach-space-group__head{
    margin-bottom:14px !important;
  }

  .ach-space-group__head h3{
    font-size:clamp(28px,8.8vw,38px) !important;
  }

  .ach-space-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .ach-space-card,
  .ach-space-card--wide{
    grid-column:auto !important;
    border-radius:24px !important;
  }

  .ach-space-card__media,
  .ach-space-card--wide .ach-space-card__media{
    aspect-ratio:16 / 10.5 !important;
  }

  .ach-space-card__body{
    padding:16px 16px 18px !important;
  }

  .ach-space-card__body h4{
    font-size:18px !important;
  }
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — GIFT CERTIFICATES V3.0
   Namespace: ac-gift
   Full-width output is handled correctly by page.php.
   Layout uses the shared ach-wrap / ach-btn / ach-kicker system.
========================================================= */

.ac-page--gift{
  padding:0 !important;
  margin:0 !important;
}

.ac-page--gift .ac-content--wide,
.ac-page--gift .wp-block-html,
.ac-page--gift .wp-block-group,
.ac-page--gift .wp-block{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

.ac-gift{
  padding-top:32px !important;
  padding-bottom:20px !important;
  color:var(--ac-text);
}

.ac-gift__intro{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:28px;
  align-items:stretch;
  margin:0 0 44px;
  padding:clamp(28px,4vw,52px);
  border:1px solid var(--ac-line);
  border-radius:32px;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 20%,rgba(45,127,255,.22),transparent 22rem),
    radial-gradient(circle at 8% 100%,rgba(7,135,189,.14),transparent 24rem),
    linear-gradient(135deg,#fff 0%,#f3f8ff 100%);
  box-shadow:0 24px 64px rgba(8,28,62,.08);
}

.ac-gift__intro-copy{
  position:relative;
  z-index:2;
  align-self:center;
}

.ac-gift__intro h1,
.ac-gift__section-head h2,
.ac-gift__info-main h2{
  margin:0;
  color:var(--ac-text);
  font-size:clamp(30px,4vw,56px);
  line-height:1.02;
  letter-spacing:-.055em;
}

.ac-gift__intro-copy > p{
  max-width:700px;
  margin:18px 0 0;
  color:var(--ac-muted);
  font-size:clamp(17px,1.5vw,20px);
  line-height:1.55;
}

.ac-gift__intro-note{
  display:inline-flex;
  flex-direction:column;
  gap:4px;
  margin-top:24px;
  padding:15px 18px;
  border:1px solid rgba(11,79,163,.12);
  border-radius:18px;
  background:rgba(255,255,255,.72);
}

.ac-gift__intro-note strong{
  font-size:18px;
  line-height:1.2;
}

.ac-gift__intro-note span{
  color:var(--ac-muted);
  font-size:14px;
  line-height:1.35;
}

.ac-gift__visual{
  min-height:300px;
  display:grid;
  place-items:center;
  position:relative;
}

.ac-gift__visual::before,
.ac-gift__visual::after{
  content:"";
  position:absolute;
  border-radius:999px;
  filter:blur(2px);
}

.ac-gift__visual::before{
  width:220px;
  height:220px;
  top:4%;
  right:3%;
  background:rgba(45,127,255,.14);
}

.ac-gift__visual::after{
  width:150px;
  height:150px;
  left:4%;
  bottom:4%;
  background:rgba(239,51,64,.09);
}

.ac-gift__visual-card{
  position:relative;
  z-index:2;
  width:min(100%,390px);
  aspect-ratio:1.58/1;
  padding:30px;
  border-radius:28px;
  transform:rotate(-4deg);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  background:
    linear-gradient(120deg,rgba(255,255,255,.12),transparent 38%),
    radial-gradient(circle at 84% 12%,rgba(45,127,255,.55),transparent 17rem),
    linear-gradient(135deg,#071936 0%,#0b4fa3 62%,#0787bd 100%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 28px 54px rgba(8,28,62,.28);
}

.ac-gift__visual-card::before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
}

.ac-gift__visual-card span,
.ac-gift__visual-card strong,
.ac-gift__visual-card em{
  position:relative;
  z-index:1;
}

.ac-gift__visual-card span{
  margin-bottom:7px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
}

.ac-gift__visual-card strong{
  font-size:clamp(30px,3vw,46px);
  line-height:.95;
  letter-spacing:-.05em;
}

.ac-gift__visual-card em{
  margin-top:18px;
  font-size:11px;
  font-style:normal;
  font-weight:700;
  letter-spacing:.08em;
  opacity:.72;
}

.ac-gift__buy{
  margin:0 0 44px;
}

.ac-gift__section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:24px;
  align-items:end;
  margin-bottom:20px;
}

.ac-gift__section-head p{
  margin:0 0 4px;
  color:var(--ac-muted);
  line-height:1.55;
}

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

.ac-gift__card{
  min-width:0;
  padding:22px;
  border-radius:24px;
  display:flex;
  flex-direction:column;
  border:1px solid var(--ac-line);
  background:var(--ac-surface);
  box-shadow:0 14px 36px rgba(8,28,62,.06);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.ac-gift__card:hover{
  transform:translateY(-3px);
  border-color:rgba(45,127,255,.28);
  box-shadow:0 20px 46px rgba(8,28,62,.10);
}

.ac-gift__card-top{
  min-height:98px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
}

.ac-gift__label{
  color:var(--ac-muted);
  font-size:12px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ac-gift__card-top strong{
  color:var(--ac-text);
  font-size:clamp(30px,2.8vw,46px);
  line-height:1;
  letter-spacing:-.055em;
}

.ac-gift__card p{
  flex:1;
  margin:16px 0 20px;
  color:var(--ac-muted);
  font-size:14px;
  line-height:1.5;
}

/* Only positioning. Visual button rules stay in the shared system. */
.ac-gift__card .ach-btn{
  width:100%;
}

.ac-gift__info{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:18px;
  align-items:stretch;
  padding:26px;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(11,79,163,.08),rgba(7,135,189,.05));
  border:1px solid rgba(11,79,163,.12);
}

.ac-gift__info-main{
  padding:6px;
}

.ac-gift__info-main p{
  margin:16px 0 0;
  color:var(--ac-muted);
  line-height:1.55;
}

.ac-gift__steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.ac-gift__steps > div{
  padding:18px;
  border-radius:20px;
  background:var(--ac-surface);
  border:1px solid var(--ac-line);
}

.ac-gift__steps span{
  display:block;
  margin-bottom:22px;
  color:var(--ac-blue);
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

.ac-gift__steps strong{
  display:block;
  font-size:15px;
  line-height:1.25;
}

.ac-gift__steps p{
  margin:8px 0 0;
  color:var(--ac-muted);
  font-size:13px;
  line-height:1.45;
}

html[data-theme=dark] .ac-gift__intro{
  background:
    radial-gradient(circle at 86% 20%,rgba(45,127,255,.20),transparent 22rem),
    linear-gradient(135deg,#101827,#0b1322);
}

html[data-theme=dark] .ac-gift__intro-note{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.10);
}

html[data-theme=dark] .ac-gift__info{
  background:rgba(45,127,255,.07);
  border-color:rgba(255,255,255,.10);
}

@media(max-width:1050px){
  .ac-gift__intro{
    grid-template-columns:1fr 320px;
  }

  .ac-gift__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .ac-gift__info{
    grid-template-columns:1fr;
  }
}

@media(max-width:820px){
  .ac-gift{
    padding-top:20px !important;
  }

  .ac-gift__intro{
    grid-template-columns:1fr;
  }

  .ac-gift__visual{
    min-height:250px;
  }

  .ac-gift__section-head{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ac-gift__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ac-gift{
    padding-top:12px !important;
  }

  .ac-gift__intro{
    gap:20px;
    margin-bottom:30px;
    padding:22px;
    border-radius:26px;
  }

  .ac-gift__visual{
    min-height:210px;
  }

  .ac-gift__visual-card{
    padding:24px;
    border-radius:24px;
  }

  .ac-gift__buy{
    margin-bottom:30px;
  }

  .ac-gift__grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .ac-gift__card{
    padding:18px;
    border-radius:20px;
  }

  .ac-gift__card-top{
    min-height:auto;
  }

  .ac-gift__card p{
    margin:12px 0 16px;
  }

  .ac-gift__info{
    padding:18px;
    border-radius:24px;
  }

  .ac-gift__steps{
    grid-template-columns:1fr;
  }

  .ac-gift__steps span{
    margin-bottom:10px;
  }
}

/* =========================================================
   ALEXCLUB WEBSITE 2026 — GIFT V4 FIXED HEADER CLEARANCE
   The current main.css intentionally resets html/body padding later
   in the cascade. Therefore this full-width internal page reserves
   the fixed site-header height inside its own first wrapper.
   Mirrors the established logic already used by the Sale page.
========================================================= */

.ac-page--gift .ac-gift{
  padding-top:calc(var(--ac-header-height) + 32px) !important;
}

/* WordPress admin bar: 32px on desktop. */
.admin-bar .ac-page--gift .ac-gift{
  padding-top:calc(var(--ac-header-height) + 32px + 32px) !important;
}

@media(max-width:820px){
  .ac-page--gift .ac-gift{
    padding-top:calc(var(--ac-header-height) + 20px) !important;
  }

  .admin-bar .ac-page--gift .ac-gift{
    padding-top:calc(var(--ac-header-height) + 32px + 20px) !important;
  }
}

/* WordPress admin bar becomes 46px below 783px. */
@media(max-width:782px){
  .admin-bar .ac-page--gift .ac-gift{
    padding-top:calc(var(--ac-header-height) + 46px + 20px) !important;
  }
}

@media(max-width:560px){
  .ac-page--gift .ac-gift{
    padding-top:calc(var(--ac-header-height) + 12px) !important;
  }

  .admin-bar .ac-page--gift .ac-gift{
    padding-top:calc(var(--ac-header-height) + 46px + 12px) !important;
  }
}
/* =========================================================
   ALEXCLUB SYSTEM — DIRECT PURCHASE ACTIONS + MANEGE NOTICE
   Общая поддержка нескольких действий в карточках абонементов
   и системного уведомления об ограничении доступа в манеж.
========================================================= */

.ac-gym-unlimited-grid .ac-pass-price-card__actions{
  width:100% !important;
  display:grid !important;
  gap:10px !important;
  margin-top:auto !important;
}

.ac-gym-unlimited-grid .ac-pass-price-card__actions .ach-btn{
  width:100% !important;
  margin-top:0 !important;
}

.ac-gym-subscription-card__actions{
  display:grid !important;
  gap:10px !important;
}

.ac-gym-subscription-card__actions .ach-btn{
  width:100% !important;
  margin-top:0 !important;
}

.ac-gym-zone-panel .ac-gym-manege-note{
  margin:14px 0 0 !important;
  padding-top:12px !important;
  border-top:1px solid rgba(8,28,62,.10) !important;
  color:var(--ac-muted) !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-gym-benefit-schedule .ac-gym-manege-note{
  margin:14px 0 0 !important;
  padding-top:12px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  color:rgba(255,255,255,.78) !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.ac-gym-zone-panel .ac-gym-manege-note a,
.ac-gym-benefit-schedule .ac-gym-manege-note a,
.ac-pass-faq__list a{
  color:var(--ac-cyan) !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:3px !important;
}

.ac-gym-benefit-schedule .ac-gym-manege-note a{
  color:#7dd3fc !important;
}
