@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/css/fonts/fira-400-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/css/fonts/fira-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/css/fonts/fira-700-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/css/fonts/fira-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('/css/fonts/fira-xc-400-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('/css/fonts/fira-xc-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('/css/fonts/fira-xc-500-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('/css/fonts/fira-xc-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('/css/fonts/fira-xc-600-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('/css/fonts/fira-xc-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('/css/fonts/fira-xc-700-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('/css/fonts/fira-xc-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* «Сила ритма» — фирменный стиль сайта (с 2026-10). Заменяет grunge.css на публичных страницах.
   Цвета, шрифты и приёмы — из шаблонов дизайнера в Figma: синий #0C52BC, оранжевый #FF4314,
   Fira Sans Extra Condensed капсом с наклоном 10°, плашки, жёсткие тени. Тексты страниц не трогаются. */

:root{
  --b-blue:#0C52BC;--b-orange:#FF4314;--b-ink:#1E1E1E;--b-paper:#FFFFFF;--b-soft:#F2F2F2;--b-dim:#4A4A4A;
  --b-xc:"Fira Sans Extra Condensed","Arial Narrow",sans-serif;--b-ui:"Fira Sans",system-ui,sans-serif;
  --b-gut:max(16px,calc(50% - 600px));
  --b-sec:96px;--b-head:48px;--b-panel:32px;--b-card:24px;--b-box:20px;--b-t2t:12px;--b-cols:32px;
  /* переменные базового site.css — модалки, поля, cookies, посты ВК берут цвета отсюда */
  --bg:#FFFFFF;--page-bg:none;--surface:#FFFFFF;--surface-2:#F2F2F2;--ink:#1E1E1E;--ink-dim:#4A4A4A;
  --line:#1E1E1E;--line-soft:rgba(30,30,30,.15);--line-strong:#1E1E1E;--accent:#FF4314;--accent-2:#0C52BC;--accent-ink:#FFFFFF;
  --accent-hover:#E63A0E;--btn-bg:#0C52BC;--btn-ink:#FFFFFF;--btn-hover:#0A46A0;--hover-bg:#F2F2F2;--overlay:rgba(20,20,20,.72);
  --radius:0;--radius-sm:0;--drop-shadow:6px 6px 0 #FF4314;--focus-ring:4px 4px 0 #0C52BC;--scheme:light;
  --font-display:var(--b-xc);--font-ui:var(--b-ui);--caps:uppercase;--caps-label:uppercase;--skew:0deg;--skew-back:0deg;
}
@media (max-width:720px){:root{--b-sec:64px;--b-head:32px;--b-panel:24px;--b-card:20px;--b-box:16px;--b-cols:24px}}

html{scroll-padding-top:64px;scrollbar-color:#9a9a9a transparent}
body{background:#FFFFFF!important;color:var(--b-ink);font-family:var(--b-ui);padding:0!important;font-size:16px}
.wrap{max-width:none!important;margin:0;overflow-x:clip}
a{color:var(--b-blue)}a:hover{color:var(--b-orange)}
:focus-visible{outline:3px solid var(--b-orange);outline-offset:2px}

/* старые украшения «граффити» не используются */
.g-tape,.g-scrib,.g-ring,.g-arrow,.g-parrow,.hero2-bar,.hero2-slogan:not(h1),.g-halls-map,.pkg-art{display:none!important}

/* ---------- заголовки ---------- */
.g-title,.section-title.g-title,.schedule-toggle-title.g-title{
  font-family:var(--b-xc)!important;font-weight:700!important;font-size:80px!important;line-height:.83!important;letter-spacing:-.03em!important;
  text-transform:uppercase!important;color:var(--b-ink)!important;margin:.9em 0 0!important;padding:0!important;
  transform:rotate(-10deg);transform-origin:left top;width:fit-content;max-width:88%;text-align:left!important;display:block!important;
  background:none!important;border:0!important;
}
.g-title::before,.g-title::after{content:none!important;display:none!important}
.g-title .g-sub{display:block;color:inherit!important;font:inherit!important;letter-spacing:inherit!important;margin:0!important}
@media (max-width:720px){.g-title,.section-title.g-title,.schedule-toggle-title.g-title{font-size:52px!important}}

/* ---------- кнопки ---------- */
.b-btn,.btn-hero-primary,.g-faq-cta,.g-hall-sign,.g-sticky-cta,.trial-submit{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px!important;border:0!important;border-radius:0!important;
  font-family:var(--b-xc)!important;font-weight:700!important;font-size:22px!important;letter-spacing:.01em!important;text-transform:uppercase!important;
  background:var(--b-orange)!important;color:#fff!important;cursor:pointer;text-decoration:none;position:relative;overflow:hidden;isolation:isolate;
  box-shadow:4px 4px 0 var(--b-ink)!important;transition:transform .15s ease,box-shadow .15s ease;
  animation:bCtaBounce 3.2s ease-in-out infinite;width:auto;height:auto!important;
}
.btn-hero-primary span,.g-faq-cta span,.g-sticky-cta span{display:inline;transform:none!important}
.btn-hero-primary::before,.g-faq-cta::before,.g-hall-sign::before,.g-sticky-cta::before,.trial-submit::before{
  content:"";position:absolute;z-index:-1;top:0;bottom:0;left:-70%;width:45%;
  background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));transform:skewX(-20deg);animation:bCtaShine 3.2s ease-in-out infinite;
}
.btn-hero-primary::after,.g-faq-cta::after,.g-hall-sign::after,.g-sticky-cta::after,.trial-submit::after{content:"→";display:inline-block;animation:bCtaNudge 1.6s ease-in-out infinite}
.btn-hero-primary:hover,.g-faq-cta:hover,.g-hall-sign:hover,.g-sticky-cta.is-shown:hover,.trial-submit:hover{transform:translate(-2px,-2px)!important;box-shadow:6px 6px 0 var(--b-ink)!important;animation-play-state:paused;background:#E63A0E!important}
.btn-hero-primary:active,.g-faq-cta:active,.g-hall-sign:active,.trial-submit:active{transform:translate(2px,2px)!important;box-shadow:1px 1px 0 var(--b-ink)!important}
@keyframes bCtaShine{0%,55%{left:-70%}85%,100%{left:130%}}
@keyframes bCtaNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
@keyframes bCtaBounce{0%,88%,100%{translate:0 0}92%{translate:0 -4px}96%{translate:0 0}}
@media (prefers-reduced-motion:reduce){.btn-hero-primary,.g-faq-cta,.g-hall-sign,.g-sticky-cta,.trial-submit,.btn-hero-primary::before,.btn-hero-primary::after,.g-faq-cta::before,.g-faq-cta::after,.g-hall-sign::before,.g-hall-sign::after,.g-sticky-cta::before,.g-sticky-cta::after,.trial-submit::before,.trial-submit::after{animation:none!important}}

/* ---------- шапка и меню ---------- */
.brand-head{background:var(--b-blue);color:#fff;margin:0!important;padding:12px var(--b-gut);min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand-badge img{height:44px!important;width:auto!important}
.brand-tagline{flex:1;text-align:left!important}
.brand-label,.brand-tagline .brand-label{font-family:var(--b-xc)!important;font-weight:600!important;font-size:18px!important;line-height:1!important;color:#fff!important;text-transform:uppercase;max-width:9.5em}
.brand-login-btn{background:transparent!important;color:#fff!important;border:0!important;box-shadow:inset 0 0 0 2px #fff;border-radius:0!important;font-family:var(--b-xc)!important;font-size:18px!important;font-weight:700!important;padding:10px 18px!important;transform:none!important;min-height:44px}
.brand-login-btn span{transform:none!important}
.brand-login-btn:hover{background:#fff!important;color:var(--b-blue)!important}
.guest-nav{position:sticky!important;top:0!important;z-index:40!important;margin:0!important;padding:10px var(--b-gut)!important;background:var(--b-blue);display:flex!important;flex-wrap:nowrap!important;justify-content:center!important;gap:6px 26px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.25),0 6px 14px rgba(0,0,0,.12);overflow-x:auto;scrollbar-width:none}
.guest-nav::-webkit-scrollbar{display:none}
.guest-nav::before{content:none!important}
.guest-nav a{flex:0 0 auto!important;background:transparent!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;padding:4px 0 2px!important;
  font-family:var(--b-xc)!important;font-weight:500!important;font-size:19px!important;letter-spacing:0!important;color:#fff!important;transform:none!important;white-space:nowrap}
.guest-nav a span{transform:none!important;text-shadow:none!important}
.guest-nav a{box-shadow:none!important;text-shadow:none!important;filter:none!important;min-height:0!important;height:auto!important}
.guest-nav a:hover{border-bottom-color:rgba(255,255,255,.5)!important}
.guest-nav a.is-active{background:transparent!important;color:#fff!important;border-bottom-color:var(--b-orange)!important}
@media (max-width:900px){.guest-nav{justify-content:space-between!important;gap:8px!important}.guest-nav a{font-size:16px!important}}
@media (max-width:380px){.guest-nav a{font-size:14.5px!important}}
@media (max-width:340px){.guest-nav a{font-size:13px!important}.guest-nav{gap:6px!important}}
.g-crumbs{padding:14px var(--b-gut) 0;margin:0!important;font-size:14px;color:var(--b-dim);background:var(--b-blue)}
.g-crumbs a{color:#fff}.g-crumbs,.g-crumbs span{color:rgba(255,255,255,.85)}

/* ---------- первый экран ---------- */
.guest-hero-block{background:var(--b-blue);color:#fff;margin:0!important;padding:40px var(--b-gut) var(--b-sec);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,640px);grid-template-rows:auto auto 1fr;column-gap:40px;align-items:start;position:relative}
.guest-hero.hero2{display:contents!important}
.guest-hero.hero2::after,.guest-hero.hero2::before{content:none!important}
.hero2-content{grid-column:1;grid-row:1;width:auto!important;padding:0!important;display:flex!important;flex-direction:column;align-items:flex-start;gap:18px;position:static!important}
.hero2-title,h1.hero2-title,.hero2-slogan,h1.hero2-slogan{font-family:var(--b-xc)!important;font-weight:700!important;font-size:104px!important;line-height:.83!important;letter-spacing:-.03em!important;color:#fff!important;text-shadow:none!important;text-transform:uppercase!important;
  margin:.96em 0 0!important;transform:rotate(-10deg);transform-origin:left top;width:fit-content}
.hero2-slogan span,.hero2-title span{color:inherit!important}
/* у SEO-страниц H1 — крупный, второй заголовок поменьше */
.g-hero-sub .hero2-title{font-size:40px!important;margin:.2em 0 0!important;transform:none;letter-spacing:-.01em!important}
.hero2-sub{font-size:20px!important;font-weight:700;color:#fff!important;line-height:1.4!important;margin:0 0 30px!important}
.hero2-free{font-family:var(--b-xc)!important;text-transform:uppercase;font-size:26px!important;line-height:1.03!important;font-weight:500!important;color:#fff!important;background:var(--b-orange)!important;padding:10px 18px!important;margin:8px 0 0 4px!important;transform:rotate(-10deg);transform-origin:left center;box-shadow:none!important;border:0!important;white-space:normal!important;width:fit-content}
.b-vh{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.btn-hero-primary{grid-column:1;grid-row:2;justify-self:start;margin:22px 0 0!important}
.hero2-img{grid-column:2;grid-row:1/4;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:640/438;max-width:640px;object-fit:cover;filter:saturate(1.12) contrast(1.04)!important;align-self:center;background:#141414}
@media (max-width:900px){
  .guest-hero-block{grid-template-columns:minmax(0,1fr);padding-top:32px}
  .hero2-img{grid-column:1;grid-row:3;margin-top:40px}
  .hero2-title,h1.hero2-title,.hero2-slogan,h1.hero2-slogan{font-size:58px!important}
  .btn-hero-primary{width:100%;justify-self:stretch}
}

/* ---------- бегущая строка ---------- */
.g-ticker{margin:0!important;transform:none!important;box-shadow:none!important;background:var(--b-orange)!important;color:#fff!important;padding:14px 0!important;overflow:hidden;white-space:nowrap}
.g-ticker-track{display:inline-flex!important;will-change:transform}
.g-ticker span{font-family:var(--b-xc)!important;font-weight:700!important;font-size:26px!important;letter-spacing:0!important;padding-right:24px}
.g-ticker-short{display:none!important}

/* ---------- общая раскладка блоков ---------- */
.g-band,#guestTrainersSection,.g-interview,.g-perks,.g-reviews,.schedule-section,.g-faq,.g-dirs,.events-section,.g-sp{
  margin:0!important;padding:var(--b-sec) var(--b-gut)!important;border:0!important;background:#fff;position:relative;
  display:flex;flex-direction:column;gap:var(--b-head)}
.g-band,.g-faq{background:var(--b-soft)!important}
.g-interview{background:var(--b-ink)!important;color:#fff}
.g-interview .g-title{color:#fff!important}
.g-reviews{background:var(--b-blue)!important;color:#fff}
.g-reviews .g-title{color:#fff!important}
.g-dirs{background:var(--b-ink)!important;color:#fff}
.g-dirs .g-title{color:#fff!important}
.g-band .g-title,.schedule-section .g-title,.g-sp:nth-of-type(odd) .g-title{color:var(--b-blue)!important}
#guestTrainersSection .g-title,.g-faq .g-title,.events-section .g-title{color:var(--b-orange)!important}
.g-sp:nth-of-type(even){background:var(--b-soft)}

/* ---------- цены ---------- */
.pkg-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:16px!important;margin:0!important}
.pkg-grid .pkg-card{grid-column:span 2!important;text-align:left!important;align-items:flex-start!important;justify-content:flex-start!important;min-height:0!important;padding:var(--b-panel)!important}
.pkg-grid .pkg-card.oneoff:not(.wide){grid-column:span 3!important}
.pkg-grid .pkg-card.wide,.pkg-grid .pkg-subtitle{grid-column:1/-1!important}
.pkg-card{border:0!important;border-radius:0!important;background:#fff;color:var(--b-ink);padding:var(--b-panel)!important;box-shadow:none!important;transform:none!important;display:flex;flex-direction:column;gap:10px;min-height:0}
.pkg-card.g-single{background:var(--b-orange)!important;color:#fff;flex-direction:row!important;align-items:center!important;flex-wrap:wrap;gap:12px 28px}
.pkg-subtitle{grid-column:1/-1;font-family:var(--b-xc)!important;font-weight:700!important;font-size:30px!important;text-transform:uppercase;color:var(--b-ink)!important;margin:12px 0 0!important;letter-spacing:0!important}
.pkg-card.pkg-plan{background:var(--b-blue)!important;color:#fff}
.pkg-price{font-family:var(--b-xc)!important;font-weight:700!important;font-size:56px!important;line-height:.9!important;letter-spacing:-.02em;color:inherit!important;white-space:nowrap;text-shadow:none!important}
.pkg-card .pkg-label{margin-top:0!important;letter-spacing:0!important}
.pkg-card.g-single .pkg-price{font-size:96px!important}
.pkg-label{font-family:var(--b-xc)!important;font-weight:700!important;font-size:26px!important;line-height:.95;text-transform:uppercase;color:inherit!important}
.pkg-note{font-size:16px!important;color:inherit!important;opacity:.9}
.pkg-card.oneoff:not(.g-single){background:var(--b-ink)!important;color:#fff}
.pkg-grid .pkg-card.pkg-info{background:transparent!important;padding:0!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--b-cols)}
.pkg-info-row{display:block!important;border-top:4px solid var(--b-orange);padding-top:16px}
.pkg-info-ico{display:none!important}
.pkg-info-title{font-family:var(--b-xc)!important;font-weight:700!important;font-size:24px!important;line-height:.95!important;text-transform:uppercase;color:var(--b-ink)!important;margin-bottom:var(--b-t2t)}
.pkg-info-text{font-size:16px!important;line-height:1.6!important;color:var(--b-ink)!important}
.pkg-tag{background:var(--b-orange)!important;color:#fff!important;border-radius:0!important;font-family:var(--b-xc);text-transform:uppercase;transform:rotate(-10deg)}
@media (max-width:1100px){.pkg-price{font-size:44px!important}}
@media (max-width:720px){.pkg-grid .pkg-card,.pkg-grid .pkg-card.oneoff:not(.wide){grid-column:1/-1!important}.pkg-card.g-single .pkg-price{font-size:72px!important}}

/* ---------- тренеры ---------- */
#guestTrainersSection{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--b-head) var(--b-cols)!important}
#guestTrainersSection>.g-title{grid-column:1/-1}
.trainer-card{background:none!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important;display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--b-t2t) 20px;align-items:start}
.trainer-head{display:contents!important}
.trainer-avatar{grid-row:1/3;width:200px!important;height:200px!important;border-radius:0!important;overflow:hidden;border:0!important;box-shadow:none!important;position:relative}
.trainer-avatar img{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important;filter:saturate(1.12) contrast(1.04)}
.trainer-head>div:last-child{grid-column:2;grid-row:1}
.trainer-name{font-family:var(--b-xc)!important;font-weight:700!important;font-size:32px!important;line-height:.95!important;text-transform:uppercase;color:var(--b-ink)!important}
.trainer-nick{display:block;width:fit-content;margin:10px 0 0 4px;background:var(--b-orange);color:#fff!important;font-weight:500;font-size:18px;padding:4px 10px;transform:rotate(-10deg);opacity:1!important}
.trainer-bio{grid-column:2;font-size:16px!important;line-height:1.6!important;color:var(--b-ink)!important;margin:0!important;padding:0!important;border:0!important}
@media (max-width:1100px){#guestTrainersSection{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.trainer-card{grid-template-columns:minmax(0,1fr)}.trainer-avatar{grid-row:auto;width:100%!important;max-width:300px;height:auto!important;aspect-ratio:1/1}.trainer-head>div:last-child,.trainer-bio{grid-column:1;grid-row:auto}}

/* ---------- интервью ---------- */
.g-interview{display:grid!important;grid-template-columns:minmax(0,640px) minmax(0,1fr);column-gap:48px;row-gap:24px;align-items:center}
.g-interview .g-title{grid-column:2;grid-row:1;font-size:64px!important}
.g-iv-frame{grid-column:1;grid-row:1/3;position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;background:#111;cursor:pointer;overflow:hidden;align-self:center;margin:0!important;border:0!important;transform:none!important;box-shadow:none!important;max-width:640px}
.g-iv-frame img,.g-iv-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.g-iv-frame .g-iv-teaser{opacity:0;transition:opacity .5s}.g-iv-frame .g-iv-teaser.is-on{opacity:1}
.g-iv-play{position:absolute;color:#fff}.g-iv-play svg{width:22px;height:22px;fill:#fff}
.g-iv-lbl{position:absolute;right:16px;top:20px}.g-iv-dur{position:absolute;right:12px;bottom:12px;padding:3px 8px;background:rgba(0,0,0,.72);color:#fff}
.g-iv-frame img,.g-iv-frame .g-iv-teaser{filter:saturate(1.12) contrast(1.04)!important}
.g-iv-play{left:20px!important;bottom:20px!important;width:auto!important;height:auto!important;border-radius:0!important;background:var(--b-orange)!important;box-shadow:4px 4px 0 var(--b-ink)!important;padding:12px 18px;display:flex!important;align-items:center;gap:10px}
.g-iv-play::before{content:none!important}
.g-iv-lbl{background:var(--b-orange)!important;color:#fff!important;transform:rotate(-10deg)!important;font-family:var(--b-xc)!important;font-size:18px!important;padding:6px 12px!important}
.g-iv-dur{font-family:var(--b-xc)!important;font-size:16px!important}
.g-iv-cap{grid-column:2;grid-row:2;align-self:start;margin:0!important;font-size:17px!important;line-height:1.6!important;color:#fff!important}
.g-iv-cap b{color:#fff!important}
@media (max-width:900px){.g-interview{grid-template-columns:minmax(0,1fr)}.g-interview .g-title,.g-iv-frame,.g-iv-cap{grid-column:1;grid-row:auto}.g-interview .g-title{font-size:52px!important}}

/* ---------- больше, чем тренировки ---------- */
.g-perk-app{display:flex!important;flex-wrap:wrap;gap:var(--b-cols);background:var(--b-blue)!important;color:#fff;padding:var(--b-panel)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.g-perk-app-text{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:var(--b-t2t)}
.g-perk-tag{font-family:var(--b-xc);font-weight:500;font-size:18px;text-transform:uppercase;color:#fff!important;background:none!important;padding:0!important;opacity:.85}
.g-perk-app h3{font-family:var(--b-xc)!important;font-weight:700!important;font-size:44px!important;line-height:.9!important;text-transform:uppercase;color:#fff!important;margin:0!important}
.g-perk-app p{font-size:17px!important;line-height:1.6!important;color:#fff!important;margin:0!important}
.g-phone{flex:1 1 300px;max-width:420px;background:#fff!important;color:var(--b-ink);border:0!important;border-radius:0!important;padding:var(--b-box)!important;box-shadow:6px 6px 0 var(--b-ink)!important;transform:none!important}
.g-phone-notch{display:none!important}
.g-phone-screen{background:none!important;padding:0!important;border:0!important}
.g-ph-label{font-family:var(--b-xc);font-weight:500;font-size:16px;text-transform:uppercase;color:var(--b-blue)!important}
.g-ph-big b{font-family:var(--b-xc);font-weight:700;font-size:64px;line-height:.85;color:var(--b-orange)!important}
.g-ph-big span,.g-ph-sub{color:var(--b-ink)!important;font-size:15px}
.g-ph-dots i{width:12px;height:12px;border-radius:50%;background:var(--b-orange)!important}
.g-ph-dots i:nth-child(n+9){background:transparent!important;box-shadow:inset 0 0 0 2px var(--b-orange)}
.g-ph-visits div{display:flex;justify-content:space-between;font-size:15px;padding:6px 0;border-top:1px solid var(--line-soft)}
.g-ph-visits span{font-weight:700}.g-ph-visits em{font-style:normal}
.g-perk-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:var(--b-cols)!important;margin:0!important}
.g-perk{background:none!important;border:0!important;border-top:4px solid var(--b-orange)!important;border-radius:0!important;box-shadow:none!important;padding:16px 0 0!important;opacity:1!important;transform:none!important}
.g-perk:nth-child(n+4){border-top-color:var(--b-blue)!important}
.g-perk-ic{display:none!important}
.g-perk h3{font-family:var(--b-xc)!important;font-weight:700!important;font-size:26px!important;line-height:.95!important;text-transform:uppercase;color:var(--b-ink)!important;margin:0 0 var(--b-t2t)!important}
.g-perk p{font-size:16px!important;line-height:1.6!important;color:var(--b-ink)!important;margin:0!important}
.g-perk-badge{font-style:normal;background:var(--b-orange);color:#fff;font-size:14px;padding:2px 8px;margin-left:6px;display:inline-block;transform:rotate(-10deg)}
@media (max-width:1100px){.g-perk-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:720px){.g-perk-grid{grid-template-columns:minmax(0,1fr)!important}}

/* ---------- отзывы ---------- */
.g-rev-track{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important;overflow:visible!important;margin:0!important;padding:0!important}
.g-rev{background:#fff!important;color:var(--b-ink)!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:var(--b-card)!important;margin:0!important;display:flex;flex-direction:column;gap:14px;opacity:1!important;transform:none!important;width:auto!important;flex:none!important}
.g-rev-q{font-family:var(--b-xc);font-size:64px!important;line-height:.6!important;color:var(--b-orange)!important;height:auto!important}
.g-rev-text{margin:0!important;font-size:16px!important;line-height:1.6!important;color:var(--b-ink)!important;font-style:normal!important}
.g-rev-by{margin-top:auto!important;display:flex;flex-direction:column}
.g-rev-by b{font-family:var(--b-xc);font-weight:700;font-size:22px;text-transform:uppercase;color:var(--b-ink)!important}
.g-rev-by span{font-size:14px;color:var(--b-blue)!important}
.g-rev-nav{display:flex;justify-content:flex-start;margin:0!important}
.g-rev-dots{display:none!important}
.g-rev-all{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;box-shadow:inset 0 0 0 2px #fff;color:#fff!important;text-decoration:none;font-family:var(--b-xc);font-weight:700;font-size:22px;text-transform:uppercase;border-radius:0!important;background:none!important}
.g-rev-all:hover{background:#fff!important;color:var(--b-blue)!important}
.g-sp .g-rev-track{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-sp .g-rev{box-shadow:inset 0 0 0 2px var(--b-ink)!important}
@media (max-width:1100px){.g-rev-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.g-rev-track,.g-sp .g-rev-track{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px!important;padding:0 16px 4px!important;scroll-padding-left:16px}.g-rev-track::-webkit-scrollbar{display:none}.g-rev{flex:0 0 86%!important;scroll-snap-align:start}.g-rev-dots{display:flex!important;gap:8px;justify-content:center}.g-rev-dots button,.g-rev-dots i,.g-rev-dots span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.45)!important;border:0;padding:0}.g-rev-dots .is-on{background:#fff!important}.g-rev-nav{flex-direction:column;align-items:flex-start;gap:20px}}

/* ---------- расписание ---------- */
.schedule-section .schedule-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0!important;cursor:default}
.schedule-body{display:flex!important;flex-direction:column;gap:16px!important}
.b-halls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.b-hall{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:var(--b-card);border:0;cursor:pointer;font-family:var(--b-ui);background:var(--b-soft);color:var(--b-ink);box-shadow:inset 0 0 0 2px var(--b-ink);transition:background .15s,color .15s}
.b-hall:hover{background:#fff}
.b-hall.is-on{background:var(--b-orange);color:#fff;box-shadow:4px 4px 0 var(--b-ink)}
.b-hall-num{font-family:var(--b-xc);font-weight:500;font-size:16px;opacity:.8}
.b-hall-name{font-family:var(--b-xc);font-weight:700;font-size:34px;line-height:.9;text-transform:uppercase}
.b-hall-addr{font-size:15px}
.b-board{background:var(--b-blue);color:#fff;padding:var(--b-panel);display:flex;flex-direction:column;gap:16px}
.b-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.b-day{min-height:56px;border:0;cursor:pointer;font-family:var(--b-xc);font-weight:700;font-size:20px;background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;padding:6px 0}
.b-day:hover{box-shadow:inset 0 0 0 2px #fff}
.b-day.is-off{opacity:.4}
.b-day.is-on{background:#fff;color:var(--b-blue);box-shadow:none;opacity:1}
.b-dot{display:block;width:6px;height:6px;border-radius:50%;background:var(--b-orange);margin-top:5px}
.b-legend{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:-6px}
.b-legend .b-dot{margin:0}
.b-slots{display:flex;flex-direction:column;gap:8px}
.b-slot{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 20px;background:#fff;color:var(--b-ink);padding:16px var(--b-box)}
.b-slot-time{font-family:var(--b-xc);font-weight:700;font-size:28px;line-height:1;color:var(--b-orange);min-width:7.2em}
.b-slot-name{font-family:var(--b-xc);font-weight:500;font-size:24px;line-height:1;text-transform:uppercase}
.b-empty{font-size:16px;padding:14px 0}
.b-actions{display:flex;gap:10px;flex-wrap:wrap}
.b-route,.g-hall-route{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 22px;box-shadow:inset 0 0 0 2px #fff;color:#fff!important;text-decoration:none;font-family:var(--b-xc);font-weight:700;font-size:19px;text-transform:uppercase;background:none!important;border:0!important;border-radius:0!important}
.b-route:hover,.g-hall-route:hover{background:#fff!important;color:var(--b-blue)!important}
.b-board .g-hall-sign{min-height:46px;font-size:19px!important}
.b-week{border-top:2px solid var(--b-ink);border-bottom:2px solid var(--b-ink);padding:16px 0}
.b-week>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;font-family:var(--b-xc);font-weight:700;font-size:22px;text-transform:uppercase;padding-right:10px}
.b-week>summary::-webkit-details-marker{display:none}
.b-week>summary::after{content:"+";color:var(--b-orange);font-size:28px;line-height:.8;transition:transform .2s}
.b-week[open]>summary::after{transform:rotate(45deg)}
.b-week-list{display:flex;flex-direction:column;gap:24px;margin-top:16px}
.b-week-hall{background:var(--b-blue);color:#fff;padding:var(--b-card)}
.b-week-title{font-family:var(--b-xc);font-weight:700;font-size:24px;text-transform:uppercase;margin-bottom:12px}
.b-week-title span{font-family:var(--b-ui);font-weight:400;font-size:16px;text-transform:none}
.schedule-scroll{overflow-x:auto}
.schedule-table{border-collapse:collapse;width:100%;min-width:560px;font-size:14px;color:#fff;background:none!important}
.schedule-table th,.schedule-table td{border:1px solid rgba(255,255,255,.35)!important;padding:8px 6px!important;text-align:center;background:none!important;color:#fff!important}
.schedule-table th{font-family:var(--b-xc);font-weight:500;font-size:16px}
.schedule-table td:first-child{text-align:left;white-space:nowrap;font-weight:700}
.schedule-chip{background:#fff!important;color:var(--b-blue)!important;font-weight:700;border-radius:0!important;padding:2px 6px;display:inline-block;border:0!important}
.schedule-chip span{transform:none!important}
.schedule-chip.is-split{background:var(--b-orange)!important;color:#fff!important}
.schedule-dash{opacity:.6}
.schedule-legend{display:flex;gap:16px;margin-top:10px;font-size:13px;color:#fff}
.schedule-legend-dot{border-radius:0!important}.schedule-legend-dot.group{background:#fff!important}.schedule-legend-dot.split{background:var(--b-orange)!important}
@media (max-width:720px){.b-halls{gap:8px}.b-hall{padding:12px 10px}.b-hall-name{font-size:19px}.b-hall-addr{font-size:12px;line-height:1.3}.b-day{font-size:16px}.b-slot-time{font-size:22px;min-width:0}.b-slot-name{font-size:22px}}
/* SEO-страницы районов: старая карточка зала */
.g-hall{background:var(--b-blue)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:var(--b-panel)!important;box-shadow:none!important;opacity:1!important;transform:none!important}
.g-hall .schedule-branch-name{font-family:var(--b-xc);font-weight:700;font-size:40px;line-height:.9;text-transform:uppercase;color:#fff!important}
.g-hall .schedule-branch-address{color:#fff!important;font-size:16px}
.g-hall-num{font-family:var(--b-xc);font-size:18px;color:#fff!important;background:none!important;opacity:.85}
.g-hall-week span{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55);border-radius:0!important;opacity:.45;font-family:var(--b-xc);font-weight:700}
.g-hall-week span.is-on{background:#fff!important;color:var(--b-blue)!important;opacity:1;box-shadow:none}
.g-hall-groups span{background:var(--b-orange)!important;color:#fff!important;border-radius:0!important;font-family:var(--b-xc);font-weight:500;text-transform:uppercase}
.g-hall-toggle{color:#fff!important;border-top:2px solid rgba(255,255,255,.4)!important;font-family:var(--b-xc)!important;font-size:18px!important;text-transform:uppercase}

/* ---------- вопросы ---------- */
.g-faq{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:var(--b-head);row-gap:24px;align-items:start}
.g-faq .g-title{grid-column:1;grid-row:1/3}
.g-faq-list{grid-column:2;display:flex!important;flex-direction:column;gap:0!important;border-bottom:2px solid var(--b-ink)}
.g-faq-cta{grid-column:2;justify-self:start}
.g-faq-item{background:none!important;border:0!important;border-top:2px solid var(--b-ink)!important;border-radius:0!important;opacity:1!important;transform:none!important}
.g-faq-item::before{content:none!important}
.g-faq-q{display:flex!important;align-items:baseline;gap:16px;width:100%;background:none!important;border:0!important;padding:18px 10px 18px 0!important;text-align:left;cursor:pointer;color:var(--b-ink)!important}
.g-faq-num{font-family:var(--b-xc);font-weight:700;font-size:20px;color:var(--b-orange)!important;background:none!important;min-width:0!important}
.g-faq-text{flex:1;font-family:var(--b-xc)!important;font-weight:700!important;font-size:24px!important;line-height:1!important;text-transform:uppercase;color:var(--b-ink)!important}
.g-faq-plus{flex:0 0 26px!important;height:26px!important;background:none!important;border-radius:0!important}
.g-faq-plus::before,.g-faq-plus::after{background:var(--b-orange)!important;width:16px!important;margin-left:-8px!important;height:3px!important}
.g-faq-item.is-open .g-faq-plus{background:none!important}
.g-faq-item.is-open .g-faq-plus::before,.g-faq-item.is-open .g-faq-plus::after{background:var(--b-orange)!important}
.g-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.8,.2,1)}
.g-faq-item.is-open .g-faq-a{grid-template-rows:1fr}
.g-faq-a>div{overflow:hidden}
.g-faq-plus{position:relative;display:block;transition:transform .25s}.g-faq-plus::before,.g-faq-plus::after{content:"";position:absolute;left:50%;top:50%;margin-top:-1.5px}.g-faq-plus::after{transform:rotate(90deg)}
.g-faq-item.is-open .g-faq-plus{transform:rotate(135deg)}
.g-faq-a p{margin:0!important;padding:0 0 18px 40px!important;color:var(--b-ink)!important;font-size:16px!important;line-height:1.6!important}
@media (max-width:900px){.g-faq{grid-template-columns:minmax(0,1fr)}.g-faq .g-title,.g-faq-list,.g-faq-cta{grid-column:1;grid-row:auto}.g-faq-cta{width:100%}}

/* ---------- направления и SEO-текст ---------- */
.g-dirs{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--b-head);row-gap:24px;align-items:start}
.g-dirs .g-title{grid-column:1;font-size:44px!important;transform:none;margin-top:0!important}
.g-dirs-list{grid-column:2;grid-row:1/3;display:flex!important;flex-wrap:wrap;gap:10px!important;margin:0!important}
.g-dirs-list a{color:#fff!important;text-decoration:none;box-shadow:inset 0 0 0 2px #fff;padding:10px 14px!important;font-family:var(--b-xc)!important;font-weight:500!important;font-size:18px!important;text-transform:uppercase;background:none!important;border:0!important;border-radius:0!important;transform:none!important}
.g-dirs-list a:hover{background:#fff!important;color:var(--b-ink)!important}
.g-dirs>p{grid-column:1;margin:0;font-size:16px;line-height:1.6;color:#fff}
.g-dirs .g-inlink{color:#fff!important}
@media (max-width:900px){.g-dirs{grid-template-columns:minmax(0,1fr)}.g-dirs .g-title,.g-dirs-list,.g-dirs>p{grid-column:1;grid-row:auto}}
.g-inlink{color:var(--b-blue);text-decoration:underline;text-underline-offset:3px;background:none!important}

/* ---------- блог ---------- */
.events-section .schedule-toggle{margin:0!important;cursor:default}
#eventsBody{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important}
#vkNewsAnchor,#vkNewsList{display:contents}
#vkNewsMoreBtn{grid-column:1/-1;justify-self:start;width:auto!important}
.vk-post-card{background:#fff!important;border:0!important;box-shadow:inset 0 0 0 2px var(--b-ink)!important;border-radius:0!important;padding:var(--b-box)!important;margin:0!important;display:flex;flex-direction:column;gap:12px;overflow:hidden}
.event-date{font-family:var(--b-xc);font-weight:500;font-size:16px;text-transform:uppercase;color:var(--b-blue)!important}
.vk-post-text{font-size:16px!important;line-height:1.6!important;color:var(--b-ink)!important}
.vk-post-photo img,.vk-post-gallery img{border-radius:0!important}
.vk-post-gallery-arrow{border-radius:0!important;background:var(--b-ink)!important;color:#fff!important}
.vk-post-gallery-counter{border-radius:0!important;background:var(--b-ink)!important;font-family:var(--b-xc)}
.news-more-btn,.btn-ghost.news-more-btn{background:var(--b-blue)!important;color:#fff!important;border-radius:0!important;font-family:var(--b-xc)!important;font-size:22px!important;font-weight:700!important;min-height:52px;padding:0 28px!important}
@media (max-width:1100px){#eventsBody{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){#eventsBody{grid-template-columns:minmax(0,1fr)}#vkNewsMoreBtn{width:100%!important}}

/* ---------- подвал ---------- */
.g-footer-head{margin:0!important;padding:var(--b-sec) var(--b-gut) 0!important;background:var(--b-orange);color:#fff;transform:none!important}
.g-footer-title{font-family:var(--b-xc)!important;font-weight:700!important;font-size:56px!important;line-height:.9!important;text-transform:uppercase;color:#fff!important;letter-spacing:-.02em}
.g-footer-title span{color:#fff!important}
.guest-footer{margin:0!important;padding:40px var(--b-gut) 56px!important;border:0!important;background:var(--b-orange);color:#fff!important;font-size:15px!important}
.guest-footer-name{font-family:var(--b-xc)!important;font-size:24px;color:#fff!important}
.guest-footer-sub{color:#fff!important}
.guest-footer-links a,.guest-footer-links button{color:#fff!important;font-size:14px!important}
.guest-footer::after{content:"";display:block;width:180px;height:120px;flex:0 0 auto;background:url(/img/logo-white.svg) no-repeat right center/contain}
body:has(.g-sticky-cta) .guest-footer{padding-bottom:110px!important}
@media (max-width:720px){.guest-footer{display:flex!important;flex-direction:column-reverse;align-items:flex-start;gap:24px}.guest-footer::after{width:150px;height:90px;background-position:left center}}

/* ---------- прилипающая кнопка, «наверх», cookies ---------- */
.g-sticky-cta{position:fixed!important;left:auto!important;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;width:auto!important;
  min-height:56px!important;transform:translateY(calc(100% + 40px))!important;opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .3s!important;
  box-shadow:4px 4px 0 var(--b-ink),0 6px 18px rgba(0,0,0,.25)!important}
.g-sticky-cta.is-shown{transform:none!important;opacity:1;pointer-events:auto}
@media (max-width:720px){.g-sticky-cta{left:16px!important;right:16px!important}}
.back-to-top-btn{border-radius:0!important;background:var(--b-ink)!important;color:#fff!important;box-shadow:3px 3px 0 var(--b-orange)!important}
body:has(.g-sticky-cta.is-shown) .back-to-top-btn{bottom:calc(16px + 56px + 16px + env(safe-area-inset-bottom,0px))!important}
.cookie-notice{background:#fff!important;color:var(--b-ink)!important;border:0!important;border-radius:0!important;box-shadow:6px 6px 0 var(--b-blue),0 0 0 2px var(--b-ink)!important}
.cookie-notice-text{color:var(--b-ink)!important}
.cookie-notice-ok,.cookie-notice-save{background:var(--b-blue)!important;color:#fff!important;border-radius:0!important;font-family:var(--b-xc)!important;text-transform:uppercase;font-weight:700!important;font-size:18px!important;border:0!important}
.cookie-notice-more{background:#fff!important;color:var(--b-ink)!important;border-radius:0!important;box-shadow:inset 0 0 0 2px var(--b-ink);border:0!important;font-family:var(--b-xc)!important;text-transform:uppercase;font-weight:700!important;font-size:18px!important}

/* ---------- окна: заявка, вход ---------- */
.modal-overlay{background:rgba(20,20,20,.72)!important;backdrop-filter:none!important}
.modal{background:#fff!important;color:var(--b-ink)!important;border:0!important;border-radius:0!important;box-shadow:6px 6px 0 var(--b-orange)!important;padding:0 20px 20px!important;max-width:460px!important}
.modal h3{font-family:var(--b-xc)!important;font-weight:700!important;font-size:36px!important;line-height:.9!important;text-transform:uppercase;color:var(--b-blue)!important}
.trial-modal>div:first-child{background:var(--b-blue);margin:0 -20px 16px;padding:18px 12px 18px 20px;align-items:flex-start!important}
.trial-modal>div:first-child h3{color:#fff!important;font-size:40px!important;line-height:.85!important;transform:rotate(-10deg);transform-origin:left top;margin:2.1em 0 0!important;width:fit-content}
.trial-modal #trialContactCloseTop{color:#fff!important;font-size:24px!important;min-width:44px;min-height:44px}
.trial-modal .admin-item-hint{color:var(--b-ink)!important;font-size:15px!important;line-height:1.5}
.b-free{display:block;width:fit-content;margin:0 0 14px 4px;transform-origin:left top;background:var(--b-orange);color:#fff;font-family:var(--b-xc);font-weight:600;font-size:21px;line-height:1;text-transform:uppercase;padding:8px 12px;transform:rotate(-10deg);box-shadow:3px 3px 0 var(--b-ink)}
.trial-row{gap:12px!important}
.field label{font-size:14px!important;font-weight:700!important;color:var(--b-ink)!important;letter-spacing:0!important}
.field input,.field textarea,.field select{background:#fff!important;border:2px solid var(--b-ink)!important;border-radius:0!important;color:var(--b-ink)!important;min-height:50px}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--b-blue)!important;box-shadow:4px 4px 0 var(--b-blue)!important}
.trial-consent{color:var(--b-ink)!important;font-size:13px!important}
.trial-consent a{color:var(--b-blue)!important}
.trial-submit{width:100%!important;border-radius:0!important}
.trial-done-mark{width:84px!important;height:84px!important;line-height:84px!important;font-size:48px!important;background:var(--b-orange)!important}
.trial-done-title{font-family:var(--b-xc)!important;font-size:40px!important;line-height:.9;color:var(--b-blue)!important}
.trial-modal #tfDone,.btn-primary{background:var(--b-blue)!important;color:#fff!important;border-radius:0!important;font-family:var(--b-xc)!important;font-size:22px!important;font-weight:700!important;text-transform:uppercase;min-height:52px}
.btn-ghost{border-radius:0!important;box-shadow:inset 0 0 0 2px var(--b-ink);color:var(--b-ink)!important;font-family:var(--b-xc)!important;font-size:20px!important;text-transform:uppercase;min-height:52px}
.brand-modal{padding-top:0!important}
.brand-modal-head{background:var(--b-blue);margin:0 -20px 18px!important;padding:22px}
.brand-modal-head img{height:64px!important}
.msg.error{color:#C2001A!important}

/* ---------- SEO-страницы ---------- */
.g-subpage .guest-hero-block{padding-top:24px}
.g-lead{margin:0!important;font-size:18px!important;line-height:1.6!important;color:var(--b-ink)!important;max-width:70ch}
.g-note{margin:0!important;font-size:16px!important;line-height:1.6!important;color:var(--b-dim)!important;max-width:70ch}
.g-ages{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important}
.g-age{background:#fff!important;border:0!important;border-radius:0!important;box-shadow:inset 0 0 0 2px var(--b-ink)!important;padding:var(--b-card)!important;display:flex;flex-direction:column;gap:var(--b-t2t);opacity:1!important;transform:none!important}
.g-age-n{font-family:var(--b-xc);font-weight:700;font-size:48px;line-height:.9;color:var(--b-orange)!important;background:none!important}
.g-age-n small{display:block;font-size:20px;color:var(--b-ink)}
.g-age h3{font-family:var(--b-xc);font-weight:700;font-size:24px;line-height:.95;text-transform:uppercase;margin:0 0 8px}
.g-age p{margin:0;font-size:16px;line-height:1.6}
.g-age-chips{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important}
.g-chip{background:var(--b-blue)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:var(--b-box)!important;display:flex;flex-direction:column;gap:6px;opacity:1!important;transform:none!important}
.g-chip b{font-family:var(--b-xc);font-weight:700;font-size:30px;line-height:.9;text-transform:uppercase}
.g-chip span{font-size:15px;line-height:1.45}
.g-steps{list-style:none;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important;counter-reset:bstep}
.g-steps li{counter-increment:bstep;background:var(--b-blue)!important;color:#fff!important;padding:var(--b-card)!important;border:0!important;border-radius:0!important;display:flex;flex-direction:column;gap:var(--b-t2t);opacity:1!important;transform:none!important}
.g-steps li::before{content:counter(bstep,decimal-leading-zero)!important;font-family:var(--b-xc);font-weight:700;font-size:20px;color:var(--b-orange);background:#fff;align-self:flex-start;padding:2px 8px;position:static!important;width:auto!important;height:auto!important;border-radius:0!important}
.g-steps b{font-family:var(--b-xc);font-weight:700;font-size:24px;line-height:.95;text-transform:uppercase}
.g-steps span{font-size:16px;line-height:1.6}
.g-steps .g-inlink{color:#fff}
.g-checks{list-style:none;margin:0!important;padding:0!important;display:flex!important;flex-direction:column;gap:10px!important}
.g-checks li{position:relative;padding:0 0 0 34px!important;font-size:17px;line-height:1.6;background:none!important;opacity:1!important;transform:none!important}
.g-checks li::before{content:""!important;position:absolute;left:0;top:.35em;width:18px;height:18px;background:var(--b-orange)!important;border:0!important;border-radius:0!important;transform:rotate(-10deg)}
.g-price-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}
.g-price-big{background:var(--b-blue)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:var(--b-panel)!important;display:flex;flex-direction:column;gap:10px;transform:none!important}
.g-price-big:first-child{background:var(--b-orange)!important}
.g-price-big b{font-family:var(--b-xc);font-weight:700;font-size:64px;line-height:.9;letter-spacing:-.02em;white-space:nowrap}
.g-price-big b small{font-size:28px;margin-right:6px}
.g-price-big span{font-family:var(--b-xc);font-weight:500;font-size:22px;text-transform:uppercase}
.g-more{align-self:flex-start;display:inline-flex;align-items:center;min-height:46px;padding:0 20px;box-shadow:inset 0 0 0 2px var(--b-ink);color:var(--b-ink)!important;text-decoration:none;font-family:var(--b-xc);font-weight:700;font-size:20px;text-transform:uppercase;background:none!important;border:0!important;border-radius:0!important}
.g-more:hover{background:var(--b-ink)!important;color:#fff!important}
.g-hall-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}
.g-hall-mini{display:flex!important;flex-direction:column;gap:4px;padding:var(--b-card)!important;background:var(--b-blue)!important;color:#fff!important;text-decoration:none;border:0!important;border-radius:0!important;transform:none!important}
.g-hall-mini:nth-child(1){background:var(--b-orange)!important}.g-hall-mini:nth-child(3){background:var(--b-ink)!important}
.g-hall-mini b{font-family:var(--b-xc);font-weight:700;font-size:34px;line-height:.9;text-transform:uppercase}
.g-hall-mini span{font-size:15px}
.g-coaches{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px!important}
.g-coach{display:flex!important;gap:16px;align-items:center;background:none!important;border:0!important;padding:0!important}
.g-coach img{width:96px!important;height:96px!important;border-radius:0!important;object-fit:cover;filter:saturate(1.12)}
.g-coach b{display:block;font-family:var(--b-xc);font-weight:700;font-size:24px;text-transform:uppercase}
.g-coach span{font-size:15px;line-height:1.5}
.g-vs{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px!important;align-items:center}
.g-vs-card{background:var(--b-blue)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:var(--b-card)!important;transform:none!important}
.g-vs-card h3{font-family:var(--b-xc);font-weight:700;font-size:30px;text-transform:uppercase;margin:0 0 var(--b-t2t)}
.g-vs-card p{margin:0;font-size:16px;line-height:1.6}
.g-vs-mark{font-family:var(--b-xc);font-size:56px;color:var(--b-orange)}
.g-vs-stage{display:none!important}
.g-h1-long{font-size:72px!important}
@media (max-width:1100px){.g-ages,.g-age-chips,.g-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.g-ages,.g-age-chips,.g-steps,.g-price-row,.g-hall-list,.g-coaches{grid-template-columns:minmax(0,1fr)}.g-vs{grid-template-columns:minmax(0,1fr)}.g-hall-mini b{font-size:28px}.g-h1-long{font-size:48px!important}}

/* ---------- документ (политика) ---------- */
body.page-doc .wrap{max-width:none!important;padding:0}
.doc{max-width:760px;margin:0 auto;padding:var(--b-sec) 16px!important;background:none!important;border:0!important;box-shadow:none!important;color:var(--b-ink)}
.doc h1{font-family:var(--b-xc);font-weight:700;font-size:56px;line-height:.9;text-transform:uppercase;color:var(--b-blue)}
.doc h2{font-family:var(--b-xc);font-weight:700;font-size:30px;line-height:.95;text-transform:uppercase;margin-top:1.4em}
.doc p,.doc li,.doc td,.doc th{font-size:16px;line-height:1.65;color:var(--b-ink)!important}
.doc a{color:var(--b-blue)!important}
.doc-back::after{content:none!important}
.doc-meta,.doc-foot{color:var(--b-dim)}
body.page-doc{border-top:12px solid var(--b-blue)}
body.page-doc .doc-back{display:block;max-width:760px;margin:32px auto 0;padding:0 16px;font-family:var(--b-xc);text-transform:uppercase;font-weight:700;font-size:20px;color:var(--b-blue);text-decoration:none}
body.page-doc .doc{padding-top:32px!important}

/* служебное: ловушка для ботов в форме, кнопка под окнами */
.trial-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
body:has(.modal-overlay) .g-sticky-cta{opacity:0!important;pointer-events:none!important}
.g-sticky-cta{z-index:55}
.trial-done-mark{color:#fff!important;border-radius:0!important;display:grid!important;place-items:center;transform:rotate(-10deg);margin:8px 0 0 6px}
.trial-done-mark svg{stroke:#fff!important;color:#fff}
.trial-done-title{font-weight:700!important;text-transform:uppercase;letter-spacing:-.01em;margin:22px 0 10px!important}

/* карточка зала на страницах районов */
.g-hall{display:flex!important;flex-direction:column;gap:16px;max-width:760px}
.g-hall-top{display:flex;align-items:flex-start;gap:16px}
.g-hall-week{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.g-hall-week span{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:20px;padding:0!important;border:0!important}
.g-hall-groups{display:flex!important;flex-wrap:wrap;gap:8px;margin:0!important}
.g-hall-groups span{padding:6px 12px!important;font-size:18px!important}
.g-hall-actions{display:flex!important;flex-wrap:wrap;gap:10px}
.g-hall .g-hall-sign{min-height:46px;font-size:19px!important}
.g-hall-toggle{display:flex!important;align-items:center;justify-content:space-between;width:100%;background:none!important;border:0;padding:14px 0 0!important;cursor:pointer}
.g-hall-toggle .schedule-branch-chevron{color:var(--b-orange)!important;transition:transform .2s}
.g-hall.is-open .g-hall-toggle .schedule-branch-chevron{transform:rotate(180deg)}
.g-hall .schedule-scroll{margin:0!important}
@media (max-width:720px){.g-hall-week span{font-size:16px;min-height:42px}.g-hall .schedule-branch-name{font-size:32px}}
.g-crumbs{display:flex;flex-wrap:wrap;gap:8px}
h1.hero2-slogan.g-h1-long{font-size:84px!important}
@media (max-width:900px){h1.hero2-slogan.g-h1-long{font-size:46px!important}}
.g-sp:nth-of-type(even)+.g-faq{background:#fff!important}
@media (max-width:900px){
  .g-hero-sub .hero2-title,.g-hero-sub h1.hero2-title{font-size:32px!important;transform:none!important;margin:20px 0 0!important}
  .hero2-free{font-size:21px!important;padding:8px 14px!important}
  .hero2-sub{font-size:18px!important;margin-bottom:22px!important}
}

/* цены «от» у персональных тренировок */
.pkg-price small{font-size:.45em;font-weight:500;margin-right:.1em;letter-spacing:0}
/* ник би-боя — плашкой на фото */
.trainer-card{position:relative}
.trainer-nick{position:absolute!important;left:8px;top:150px;margin:0!important;z-index:2;font-family:var(--b-xc)!important;font-weight:600!important;font-size:20px!important;line-height:1!important;text-transform:uppercase;padding:6px 10px!important;transform:rotate(-10deg);transform-origin:left bottom;box-shadow:3px 3px 0 var(--b-ink);max-width:184px;white-space:nowrap}
@media (max-width:720px){.trainer-avatar{width:300px!important;max-width:100%;height:300px!important}.trainer-nick{top:246px;font-size:22px!important;max-width:none}}

/* ---------- танцоры (спрайты со старого сайта: /img/toprock.png, footwork.png, headspin.png) ---------- */
@keyframes g-toprock{
  0.000%{-webkit-mask-position:0.0% 0;mask-position:0.0% 0}
  8.333%{-webkit-mask-position:9.0909% 0;mask-position:9.0909% 0}
  16.667%{-webkit-mask-position:18.1818% 0;mask-position:18.1818% 0}
  25.000%{-webkit-mask-position:27.2727% 0;mask-position:27.2727% 0}
  33.333%{-webkit-mask-position:36.3636% 0;mask-position:36.3636% 0}
  41.667%{-webkit-mask-position:45.4545% 0;mask-position:45.4545% 0}
  50.000%{-webkit-mask-position:54.5455% 0;mask-position:54.5455% 0}
  58.333%{-webkit-mask-position:63.6364% 0;mask-position:63.6364% 0}
  66.667%{-webkit-mask-position:72.7273% 0;mask-position:72.7273% 0}
  75.000%{-webkit-mask-position:81.8182% 0;mask-position:81.8182% 0}
  83.333%{-webkit-mask-position:90.9091% 0;mask-position:90.9091% 0}
  91.667%{-webkit-mask-position:100.0% 0;mask-position:100.0% 0}
}
@keyframes g-footwork{
  0.000%{-webkit-mask-position:0.0% 0;mask-position:0.0% 0}
  8.333%{-webkit-mask-position:9.0909% 0;mask-position:9.0909% 0}
  16.667%{-webkit-mask-position:18.1818% 0;mask-position:18.1818% 0}
  25.000%{-webkit-mask-position:27.2727% 0;mask-position:27.2727% 0}
  33.333%{-webkit-mask-position:36.3636% 0;mask-position:36.3636% 0}
  41.667%{-webkit-mask-position:45.4545% 0;mask-position:45.4545% 0}
  50.000%{-webkit-mask-position:54.5455% 0;mask-position:54.5455% 0}
  58.333%{-webkit-mask-position:63.6364% 0;mask-position:63.6364% 0}
  66.667%{-webkit-mask-position:72.7273% 0;mask-position:72.7273% 0}
  75.000%{-webkit-mask-position:81.8182% 0;mask-position:81.8182% 0}
  83.333%{-webkit-mask-position:90.9091% 0;mask-position:90.9091% 0}
  91.667%{-webkit-mask-position:100.0% 0;mask-position:100.0% 0}
}
@keyframes g-headspin{
  0.000%{-webkit-mask-position:0.0% 0;mask-position:0.0% 0}
  16.667%{-webkit-mask-position:10.0% 0;mask-position:10.0% 0}
  23.889%{-webkit-mask-position:20.0% 0;mask-position:20.0% 0}
  31.111%{-webkit-mask-position:30.0% 0;mask-position:30.0% 0}
  38.333%{-webkit-mask-position:40.0% 0;mask-position:40.0% 0}
  41.759%{-webkit-mask-position:50.0% 0;mask-position:50.0% 0}
  45.185%{-webkit-mask-position:60.0% 0;mask-position:60.0% 0}
  48.611%{-webkit-mask-position:70.0% 0;mask-position:70.0% 0}
  52.037%{-webkit-mask-position:80.0% 0;mask-position:80.0% 0}
  55.463%{-webkit-mask-position:90.0% 0;mask-position:90.0% 0}
  58.889%{-webkit-mask-position:40.0% 0;mask-position:40.0% 0}
  62.315%{-webkit-mask-position:50.0% 0;mask-position:50.0% 0}
  65.741%{-webkit-mask-position:60.0% 0;mask-position:60.0% 0}
  69.167%{-webkit-mask-position:70.0% 0;mask-position:70.0% 0}
  72.593%{-webkit-mask-position:80.0% 0;mask-position:80.0% 0}
  76.019%{-webkit-mask-position:90.0% 0;mask-position:90.0% 0}
  79.444%{-webkit-mask-position:40.0% 0;mask-position:40.0% 0}
  82.870%{-webkit-mask-position:50.0% 0;mask-position:50.0% 0}
  86.296%{-webkit-mask-position:60.0% 0;mask-position:60.0% 0}
  89.722%{-webkit-mask-position:70.0% 0;mask-position:70.0% 0}
  93.148%{-webkit-mask-position:80.0% 0;mask-position:80.0% 0}
  96.574%{-webkit-mask-position:90.0% 0;mask-position:90.0% 0}
}
/* абонементы: танцор справа на карточке — 8 занятий топрок, 12 футворк, 16 хедспин */
.pkg-grid .pkg-card.pkg-plan{position:relative;padding-right:120px!important;min-height:150px!important}
.pkg-grid .pkg-plan .pkg-art{display:block!important;position:absolute!important;right:20px!important;left:auto!important;bottom:auto!important;top:50%!important;margin:0!important;background:#fff!important;transform:translateY(-50%)!important;filter:none!important;pointer-events:none;--loop:1.8s}
.pkg-grid .pkg-plan .pkg-art-1{aspect-ratio:158/160;height:84px!important;width:auto!important;-webkit-mask:url('/img/toprock.png') 0 0/1200% 100% no-repeat;mask:url('/img/toprock.png') 0 0/1200% 100% no-repeat;animation:g-toprock var(--loop) step-end infinite}
.pkg-grid .pkg-plan .pkg-art-2{aspect-ratio:268/130;width:96px!important;height:auto!important;right:14px!important;-webkit-mask:url('/img/footwork.png') 0 0/1200% 100% no-repeat;mask:url('/img/footwork.png') 0 0/1200% 100% no-repeat;animation:g-footwork var(--loop) step-end infinite}
.pkg-grid .pkg-plan .pkg-art-3{aspect-ratio:167/150;height:80px!important;width:auto!important;-webkit-mask:url('/img/headspin.png') 0 0/1100% 100% no-repeat;mask:url('/img/headspin.png') 0 0/1100% 100% no-repeat;animation:g-headspin var(--loop) step-end infinite}
.pkg-for{font-size:15px;line-height:1.45;color:#fff;margin-top:6px}
.pkg-week{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:10px}
.pkg-week i{width:12px;height:12px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.pkg-week i.on{background:var(--b-orange);box-shadow:none}
.pkg-week span{white-space:nowrap;margin-left:8px;font-family:var(--b-xc);font-weight:500;font-size:17px;text-transform:uppercase;color:#fff}
@media (prefers-reduced-motion:reduce){.pkg-grid .pkg-plan .pkg-art{animation:none!important}}
@media (max-width:720px){.pkg-grid .pkg-card.pkg-plan{padding-right:112px!important}}

/* кнопка «наверх»: пока крутишь — в ней танцует би-бой, остановился — стрелка */
.back-to-top-btn{width:72px!important;height:72px!important;font-size:28px!important;line-height:1!important;align-items:center;justify-content:center;overflow:hidden;right:16px!important}
.back-to-top-btn .b-dancer{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;opacity:0;pointer-events:none;--loop:1.2s}
.back-to-top-btn.is-dancing{color:transparent!important}
.back-to-top-btn.is-dancing .b-dancer{opacity:1}
.b-dancer.d-0{aspect-ratio:158/160;height:40px;-webkit-mask:url('/img/toprock.png') 0 0/1200% 100% no-repeat;mask:url('/img/toprock.png') 0 0/1200% 100% no-repeat;animation:g-toprock var(--loop) step-end infinite}
.b-dancer.d-1{aspect-ratio:268/130;width:67px;-webkit-mask:url('/img/footwork.png') 0 0/1200% 100% no-repeat;mask:url('/img/footwork.png') 0 0/1200% 100% no-repeat;animation:g-footwork var(--loop) step-end infinite}
.b-dancer.d-2{aspect-ratio:167/150;height:37.5px;-webkit-mask:url('/img/headspin.png') 0 0/1100% 100% no-repeat;mask:url('/img/headspin.png') 0 0/1100% 100% no-repeat;animation:g-headspin var(--loop) step-end infinite}
body:has(.g-sticky-cta.is-shown) .back-to-top-btn{bottom:calc(16px + 56px + 16px + env(safe-area-inset-bottom,0px))!important}
/* все три танцора в одном масштабе (0,25 от исходных кадров): топрок 40 px, хедспин 37 px в высоту, футворк 67 px в ширину */

/* одна кнопка записи: на первом экране и залипающая; кнопку под вопросами убрали */
.g-faq-cta{display:none!important}
/* «Расписание по дням» на страницах районов убрано — день и группы видно в карточке зала */
.g-hall-toggle,.g-hall .schedule-scroll{display:none!important}

/* телефон: страница не масштабируется пальцами и не «оттягивается» за край */
html{overscroll-behavior:none;touch-action:pan-x pan-y;background:linear-gradient(#0C52BC 50%,#FF4314 50%)}
body{overscroll-behavior:none}
/* наклонные заголовки: больше места между строк, чтобы «Й» не задевала строку выше */
.g-title,.section-title.g-title,.schedule-toggle-title.g-title{line-height:.98!important}
.hero2-title,h1.hero2-title,.hero2-slogan,h1.hero2-slogan{line-height:.96!important}
/* танцоров на карточках абонементов убрали (решение 20.10) — остаются подписи и «дни недели» */
.pkg-grid .pkg-plan .pkg-art{display:none!important}
.pkg-grid .pkg-card.pkg-plan{padding-right:var(--b-panel)!important;min-height:0!important}
/* кнопка «наверх»: тёмный квадрат с белой рамкой (заливку прогрессом убрали 21.10) */
.back-to-top-btn{overflow:visible!important;box-shadow:0 0 0 2px #fff!important;background:var(--b-ink)!important}
/* кадры танцора ставит brand.js по движению страницы — своя анимация не нужна */
.back-to-top-btn .b-dancer{animation:none!important}
/* квадрат «наверх» всегда в раскладке (сайт прятал его через display:none — после этого танцор «зависал»); у верха страницы — невидим */
.back-to-top-btn{display:flex!important}
.back-to-top-btn.b-off{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
/* одна кнопка записи — залипающая: «Записаться» в карточках залов убрана, залипающая кнопка больше не прячется у расписания (решение 21.10) */
.g-hall-sign{display:none!important}

/* единая нижняя панель: слева квадрат «наверх» с танцором, справа «Записаться» — одна деталь (решение 21.10) */
.g-sticky-cta{right:max(16px,env(safe-area-inset-right,0px))!important;width:360px!important;min-height:64px!important;box-shadow:0 6px 18px rgba(0,0,0,.25)!important}
@media (max-width:720px){.g-sticky-cta{left:80px!important;right:16px!important;width:auto!important}}
.back-to-top-btn,body:has(.g-sticky-cta.is-shown) .back-to-top-btn{right:calc(max(16px,env(safe-area-inset-right,0px)) + 360px)!important;left:auto!important;bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;width:64px!important;height:64px!important;box-shadow:0 6px 18px rgba(0,0,0,.25)!important;transition:opacity .3s,transform .3s cubic-bezier(.2,.8,.2,1)!important}
@media (max-width:720px){.back-to-top-btn,body:has(.g-sticky-cta.is-shown) .back-to-top-btn{left:16px!important;right:auto!important}}
/* стрелки одного размера: у кнопки записи — как у квадрата «наверх» */
.back-to-top-btn{font-family:Arial,sans-serif!important;font-weight:400!important;font-size:28px!important}
.g-sticky-cta::after{font-family:Arial,sans-serif!important;font-weight:400!important;font-size:28px!important;line-height:1}
/* квадрат живёт вместе с кнопкой: показана кнопка — показан и он */
body:not(:has(.g-sticky-cta.is-shown)) .back-to-top-btn{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(calc(100% + 40px))}
body:has(.g-sticky-cta.is-shown) .back-to-top-btn,body:has(.g-sticky-cta.is-shown) .back-to-top-btn.b-off{transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
@media (max-width:720px){.g-sticky-cta{padding:0 14px!important;font-size:clamp(17px,5.2vw,22px)!important;white-space:nowrap}}
body:has(.modal-overlay) .back-to-top-btn{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
/* кнопка записи не прыгает — только блик и подёргивание стрелки; надпись и стрелки ровно по центру */
.g-sticky-cta{animation:none!important}
.g-sticky-cta::after{position:relative;top:-4px;margin-right:-6px}
.back-to-top-btn{padding:0 0 3px!important}
