/* ============================================================
   Bronx Boxing — франшиза /franchise/
   Дизайн: инвесторская страница. Тёмная база #0D0D0D, жёлтый акцент
   #FFED00, Inter 400/600/800, цифры вперёд, без градиентов и теней.
   ============================================================ */

/* ---------- Шрифты (self-hosted Inter, latin + cyrillic) ---------- */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/inter-latin-400.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/inter-cyrillic-400.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/inter-latin-600.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/inter-cyrillic-600.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;
  src:url(../fonts/inter-latin-800.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;
  src:url(../fonts/inter-cyrillic-800.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

/* ---------- Токены ---------- */
:root{
  --bg:#0D0D0D;
  --bg-accent:#1A1A1A;
  --bg-light:#F5F5F5;
  --fg:#FFFFFF;
  --fg-muted:#9A9A9A;
  --fg-on-light:#141414;
  --fg-on-light-muted:#5A5A5A;
  --accent:#FFED00;
  --pos:#4ADE80;
  --line:#262626;
  --line-light:#E2E2E2;
  --maxw:1120px;
  --pad:24px;
  --radius:8px;
  --sp-section:112px;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}

/* ---------- Сброс / база ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{
  margin:0;background:var(--bg);color:var(--fg);
  font-size:17px;line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure{margin:0}
ul{padding:0;list-style:none}
strong{font-weight:600}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.tnum{font-variant-numeric:tabular-nums}

/* ---------- Каркас ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.section{padding:var(--sp-section) 0}
.section--light{background:var(--bg-light);color:var(--fg-on-light)}
.section--accent{background:var(--bg-accent)}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}
.section--light .eyebrow{color:var(--fg-on-light)}

/* ---------- Типографика ---------- */
h1,.h1{font-size:clamp(32px,5vw,54px);font-weight:800;line-height:1.05;letter-spacing:-.02em}
h2,.h2{font-size:clamp(26px,3.4vw,36px);font-weight:800;line-height:1.12;letter-spacing:-.01em}
h3,.h3{font-size:19px;font-weight:600;line-height:1.3}
.lead{font-size:clamp(17px,2vw,20px);color:var(--fg-muted);max-width:46ch}
.section--light .lead{color:var(--fg-on-light-muted)}
.muted{color:var(--fg-muted)}
.section--light .muted{color:var(--fg-on-light-muted)}
.fine{font-size:13px;line-height:1.5;color:var(--fg-muted)}
.section--light .fine{color:var(--fg-on-light-muted)}
.pos{color:var(--pos)}

/* ---------- Кнопки ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:16px;
  padding:16px 26px;border-radius:var(--radius);border:1px solid transparent;
  text-decoration:none;cursor:pointer;transition:transform .12s ease,background .12s ease;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:var(--accent);color:#141414}
.btn--ghost{background:transparent;color:var(--fg);border-color:var(--line)}
.section--light .btn--ghost{color:var(--fg-on-light);border-color:var(--line-light)}
.btn-note{font-size:13px;color:var(--fg-muted);margin-top:12px}
.section--light .btn-note{color:var(--fg-on-light-muted)}

/* ---------- Шапка ---------- */
.site-head{position:sticky;top:0;z-index:40;background:rgba(13,13,13,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.site-head .logo img{height:26px;width:auto}
.head-actions{display:flex;align-items:center;gap:20px}
.head-tel{font-weight:600;font-size:14px;text-decoration:none;color:var(--fg)}
.head-actions .btn{padding:10px 18px;font-size:14px}
@media (max-width:560px){.head-tel{display:none}}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--bg)}
.hero .wrap{position:relative;z-index:2;padding-top:88px;padding-bottom:88px}
.hero__media{position:absolute;inset:0;z-index:1;background:var(--bg-accent)}
.hero__media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#0D0D0D 0%,rgba(13,13,13,.92) 46%,rgba(13,13,13,.55) 100%)}
.hero h1{max-width:16ch}
.hero .lead{margin-top:22px;max-width:52ch;color:#D6D6D6}
.hero .btn{margin-top:34px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);margin-top:56px}
.kpi{background:var(--bg);padding:26px 22px}
.kpi__val{font-size:clamp(26px,3.4vw,40px);font-weight:800;line-height:1;letter-spacing:-.02em}
.kpi__lbl{margin-top:10px;font-size:13px;color:var(--fg-muted);letter-spacing:.02em}
@media (max-width:768px){.kpis{grid-template-columns:repeat(2,1fr)}}

/* ---------- Модель: пункты ---------- */
.model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px}
.section--light .model-grid{background:var(--line-light);border-color:var(--line-light)}
.model-item{background:var(--bg);padding:34px 28px}
.section--light .model-item{background:var(--bg-light)}
.model-item .num{font-size:14px;font-weight:800;color:var(--accent)}
.section--light .model-item .num{color:#141414}
.model-item h3{margin:14px 0 10px;font-size:20px;font-weight:800;letter-spacing:-.01em}
@media (max-width:768px){.model-grid{grid-template-columns:1fr}}

/* ---------- Финтаблица ---------- */
.fintable{width:100%;border-collapse:collapse;margin-top:32px;font-variant-numeric:tabular-nums}
.fintable td{padding:15px 18px;border-bottom:1px solid var(--line)}
.section--light .fintable td{border-bottom-color:var(--line-light)}
.fintable tr:nth-child(even) td{background:rgba(255,255,255,.02)}
.section--light .fintable tr:nth-child(even) td{background:rgba(0,0,0,.025)}
.fintable td:last-child{text-align:right;font-weight:600}
.fintable tr.total td{border-top:2px solid var(--accent);border-bottom:none;font-size:19px;font-weight:800;background:transparent}
.fintable tr.total td:last-child{color:var(--accent)}
.section--light .fintable tr.total td:last-child{color:#141414}

/* ---------- Табы сценариев ---------- */
.scenarios{margin-top:40px}
.tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line-light);border-radius:var(--radius);background:#fff}
.tab{border:0;background:transparent;font:inherit;font-weight:600;font-size:15px;color:var(--fg-on-light-muted);
  padding:10px 20px;border-radius:6px;cursor:pointer}
.tab[aria-selected="true"]{background:#141414;color:#fff}
.scoreboard{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:24px}
.score{background:var(--bg-light);padding:22px}
.score__lbl{font-size:13px;color:var(--fg-on-light-muted)}
.score__val{margin-top:8px;font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.02em}
@media (max-width:768px){.scoreboard{grid-template-columns:repeat(2,1fr)}}

/* ---------- График окупаемости ---------- */
.chart{margin-top:44px;border:1px solid var(--line);padding:28px;background:var(--bg-accent)}
.chart svg{width:100%;height:auto}
.chart .cap{margin-top:16px}

/* ---------- Инвестиции ---------- */
.callout{margin-top:32px;border-left:3px solid var(--accent);background:var(--bg-accent);padding:22px 24px;font-size:17px}
.section--light .callout{background:#fff}

/* ---------- Пакет 3×3 ---------- */
.pack{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px}
.pack__i{background:var(--bg);padding:30px 26px}
.pack__i svg{width:30px;height:30px;stroke:var(--accent);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pack__i h3{margin:18px 0 8px;font-size:18px;font-weight:800}
@media (max-width:900px){.pack{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.pack{grid-template-columns:1fr}}

/* ---------- Кому подходит ---------- */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}
.fit__col{background:var(--bg);padding:34px 30px}
.fit__col h3{font-size:20px;font-weight:800;margin-bottom:20px}
.fit__col li{position:relative;padding-left:32px;margin-bottom:16px;line-height:1.5}
.fit__col li::before{position:absolute;left:0;top:-1px;font-weight:800;font-size:18px}
.fit--yes li::before{content:"+";color:var(--pos)}
.fit--no li::before{content:"–";color:#F87171}
@media (max-width:768px){.fit{grid-template-columns:1fr}}

/* ---------- Карта ---------- */
.map-wrap{margin-top:40px;border:1px solid var(--line);background:var(--bg-accent);padding:32px}
.map-wrap svg{width:100%;height:auto}
.map-city{font-size:12px;font-weight:600;fill:#fff}
.map-city--taken{fill:var(--fg-muted)}
.map-legend{display:flex;gap:28px;flex-wrap:wrap;margin-top:22px;font-size:14px}
.map-legend span{display:inline-flex;align-items:center;gap:8px}
.dot{width:11px;height:11px;border-radius:50%;display:inline-block}
.dot--free{background:var(--accent)}
.dot--taken{background:var(--fg-muted)}
.map-note{margin-top:22px;font-size:18px;font-weight:800}

/* ---------- Таймлайн ---------- */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px}
.tl__i{background:var(--bg);padding:26px 20px}
.tl__n{font-size:13px;font-weight:800;color:var(--accent)}
.tl__t{margin:12px 0 8px;font-weight:600;font-size:16px;line-height:1.25}
.tl__d{font-size:13px;color:var(--fg-muted)}
.timeline-total{margin-top:26px;font-size:19px;font-weight:800}
@media (max-width:900px){.timeline{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.timeline{grid-template-columns:1fr}}

/* ---------- О сети ---------- */
.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;margin-top:40px;align-items:start}
.about-facts{margin-top:32px}
.about-facts li{padding:18px 0;border-bottom:1px solid var(--line);font-size:19px}
.about-facts li:first-child{padding-top:0}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:768px){.about-grid{grid-template-columns:1fr}}

/* ---------- Плейсхолдеры фото ---------- */
.ph{position:relative;background:var(--bg-accent);border:1px dashed #333;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.ph span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}
.ph--hero{aspect-ratio:auto;height:100%;border:none;background:transparent}

/* ---------- FAQ ---------- */
.faq{margin-top:36px;border-top:1px solid var(--line-light)}
.section--light .faq details{border-bottom:1px solid var(--line-light)}
.faq details{border-bottom:1px solid var(--line-light)}
.faq summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;position:relative;font-weight:600;font-size:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:20px;font-size:24px;font-weight:400;color:var(--fg-on-light-muted)}
.faq details[open] summary::after{content:"–"}
.faq p{padding:0 40px 24px 0;color:var(--fg-on-light-muted);max-width:70ch}

/* ---------- Финальный CTA ---------- */
.final{text-align:center}
.final h2{max-width:18ch;margin:0 auto}
.final .lead{margin:18px auto 0}
.final .btn{margin-top:34px}

/* ---------- Подвал ---------- */
.site-foot{border-top:1px solid var(--line);padding:44px 0;color:var(--fg-muted);font-size:14px}
.site-foot .wrap{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;align-items:center}
.site-foot a{color:var(--fg-muted);text-decoration:none}
.site-foot a:hover{color:var(--fg)}

/* ---------- Sticky WhatsApp (мобайл) ---------- */
.wa-fab{position:fixed;right:16px;bottom:16px;z-index:50;display:none;align-items:center;gap:8px;
  background:var(--accent);color:#141414;font-weight:600;font-size:14px;text-decoration:none;
  padding:14px 18px;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.4)}
@media (max-width:768px){.wa-fab{display:inline-flex}}

/* ---------- Утилиты отступов ---------- */
.mt-s{margin-top:14px}
.mt-m{margin-top:26px}

.chart .cap{color:var(--fg-muted)}

/* ---------- Калькулятор прибыли ---------- */
.calc{display:grid;grid-template-columns:1.15fr 1fr;gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:32px}
.calc__inputs{background:#fff;padding:30px}
.calc__row{margin-bottom:22px}
.calc__lbl{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:15px}
.calc__lbl output{font-weight:800;font-variant-numeric:tabular-nums}
.calc input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:4px;background:#E2E2E2;outline:none;margin:0}
.calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);border:2px solid #141414;cursor:pointer}
.calc input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent);border:2px solid #141414;cursor:pointer}
.calc__note{font-size:12px;color:var(--fg-on-light-muted);margin-top:16px}
.calc__out{background:#0D0D0D;color:#fff;padding:30px;display:flex;flex-direction:column;justify-content:center}
.calc__profit-lbl{font-size:14px;color:#9A9A9A}
.calc__profit{font-size:clamp(30px,4.6vw,44px);font-weight:800;line-height:1.05;margin-top:8px;font-variant-numeric:tabular-nums;color:var(--pos)}
.calc__meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:22px;font-size:14px;color:#9A9A9A}
.calc__meta b{color:#fff;font-weight:800}
@media (max-width:768px){.calc{grid-template-columns:1fr}}

/* ---------- Сравнение: свой зал vs франшиза ---------- */
.cmp{width:100%;border-collapse:collapse;margin-top:32px}
.cmp th,.cmp td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp thead th{font-size:14px;font-weight:600;color:var(--fg-muted)}
.cmp thead th:last-child{color:var(--accent)}
.cmp tbody td:first-child{color:#fff;font-weight:600;width:20%}
.cmp tbody td:nth-child(2){color:var(--fg-muted)}
.cmp tbody td:last-child{font-weight:600}
@media (max-width:640px){
  .cmp thead{display:none}
  .cmp,.cmp tbody,.cmp tr,.cmp td{display:block}
  .cmp tr{padding:16px 0;border-bottom:1px solid var(--line)}
  .cmp td{border:none;padding:2px 0}
  .cmp td:first-child{font-size:17px;margin-bottom:8px;width:auto}
  .cmp td:nth-child(2)::before{content:"Свой зал — ";color:var(--fg-muted)}
  .cmp td:last-child::before{content:"Франшиза — ";color:var(--accent)}
}

/* ---------- Калькулятор: разбивка ---------- */
.calc__breakdown{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #2a2a2a}
.calc__breakdown div{display:flex;justify-content:space-between;font-size:14px;padding:5px 0;color:#c7c7c7}
.calc__breakdown div b{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}

/* ---------- Список свободных городов ---------- */
.map-sub{margin-top:24px;font-size:14px;color:var(--fg-muted)}
.map-cities{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:14px}
.map-cities li{font-size:14px;padding:6px 13px;border:1px solid var(--line);border-radius:999px;color:#fff}

/* ---------- Реальные фото ---------- */
.hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:36px}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;display:block}
@media (max-width:768px){.gallery{grid-template-columns:repeat(2,1fr)}}
