/**
 * Section layout system — stack (text above) vs split (text beside content).
 * Desktop text is left-aligned unless section-intro--center is used.
 */

:root {
  --split-layout-breakpoint: 1024px;
  --split-layout-gap: clamp(28px, 4vw, 56px);
  --split-layout-text-max: min(52ch, 100%);
  --split-layout-column-ratio: minmax(0, 1.05fr) minmax(0, 1fr);
  --section-intro-gap: clamp(12px, 2vw, 20px);
  --section-intro-bottom: clamp(24px, 4vw, 40px);
  --section-content-gap: clamp(20px, 3vw, 32px);
  --language-switch-gap: 4px;
  --language-switch-separator-opacity: 0.35;
  --language-switch-active-opacity: 1;
  --language-switch-inactive-opacity: 0.52;
  --language-switch-active-color: var(--color-light, #faf9fe);
  --language-switch-inactive-color: rgba(250, 249, 254, 0.72);
  --membership-selector-max-width-compact: min(380px, 92%);
  --legal-page-container-max-width: min(960px, 92vw);
  --bmi-calc-input-height: 48px;
  --bmi-calc-input-radius: 12px;
  --bmi-calc-input-border: 1px solid rgba(255, 255, 255, 0.16);
  --bmi-calc-input-bg: rgba(8, 8, 12, 0.55);
  --bmi-calc-result-gap: clamp(24px, 4vw, 36px);
  --membership-card-min-height-desktop: clamp(190px, 24vw, 250px);
  --section-stack-eyebrow-gap: clamp(14px, 2vw, 20px);
  --section-stack-heading-gap: clamp(14px, 2vw, 20px);
  --section-stack-text-gap: clamp(14px, 2vw, 20px);
  --section-stack-button-gap: clamp(14px, 2vw, 20px);
  --bmi-calc-input-height: 52px;
  --bmi-calc-workspace-max-width: min(1040px, 100%);
  --bmi-calc-panel-border: 1px solid rgba(255, 255, 255, 0.14);
  --facilities-showcase-layout-gap: clamp(32px, 4.5vw, 56px);
  --section-stack-content-gap: clamp(32px, 4.5vw, 48px);
  --membership-selector-font-size: clamp(9px, 1.55vw, 11px);
}

/* ----- Section intro (text above content) ----- */
body:not(.dashboard-app-body) .section-intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--section-intro-gap);
  width: 100%;
  max-width: min(720px, 100%);
  margin: 0 0 var(--section-intro-bottom);
  text-align: left;
}

body:not(.dashboard-app-body) .section-intro--center {
  align-items: center;
  margin-inline: auto;
  text-align: center;
}

body:not(.dashboard-app-body) .section-intro :is(
  [class*="-eyebrow"],
  [class*="-title"],
  [class*="-intro"],
  [class*="-text"],
  [class*="-description"]
) {
  margin-inline: 0;
  text-align: inherit;
}

body:not(.dashboard-app-body) .section-flow--stack .section-intro {
  max-width: min(720px, 100%);
}

body:not(.dashboard-app-body) .section-flow--stack .section-intro--center {
  margin-inline: auto;
  text-align: center;
  align-items: center;
}

body:not(.dashboard-app-body) .section-flow--stack .section-intro--center :is(
  [class*="-eyebrow"],
  [class*="-title"],
  [class*="-intro"],
  [class*="-text"],
  [class*="-description"]
) {
  text-align: center;
}

@media (max-width: 767px) {
  body:not(.dashboard-app-body) .section-intro:not(.section-intro--center) {
    max-width: 100%;
  }
}

/* ----- Split shell (side-by-side on desktop only) ----- */
body:not(.dashboard-app-body) .split-section {
  display: grid;
  gap: var(--split-layout-gap);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

body:not(.dashboard-app-body) .split-section__text,
body:not(.dashboard-app-body) .split-section__media {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

body:not(.dashboard-app-body) .split-section__text {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}

body:not(.dashboard-app-body) .split-section__media {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  width: 100%;
}

@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .section-flow--split .split-section,
  body:not(.dashboard-app-body) .split-section.split-section--always {
    grid-template-columns: var(--split-layout-column-ratio);
    align-items: center;
  }

  body:not(.dashboard-app-body) .split-section--reverse .split-section__text {
    order: 2;
  }

  body:not(.dashboard-app-body) .split-section--reverse .split-section__media {
    order: 1;
  }
}

@media (max-width: 1023px) {
  body:not(.dashboard-app-body) .section-flow--split .split-section,
  body:not(.dashboard-app-body) .split-section {
    grid-template-columns: 1fr;
  }

  body:not(.dashboard-app-body) .split-section--reverse .split-section__text,
  body:not(.dashboard-app-body) .split-section--reverse .split-section__media {
    order: unset;
  }
}

/* ----- About home: text + team circles ----- */
@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .about-home-spotlight__grid.split-section {
    grid-template-columns: var(--split-layout-column-ratio);
    gap: var(--split-layout-gap);
    align-items: center;
  }

  body:not(.dashboard-app-body) .about-home-spotlight__grid .about-home-spotlight__content {
    margin-inline: 0;
    max-width: var(--split-layout-text-max);
    text-align: left;
  }

  body:not(.dashboard-app-body) .about-home-spotlight__grid .about-home-spotlight__visual .about-actions {
    justify-content: center;
  }
}

/* ----- BMI / Strength: centered intro, tools below ----- */
body:not(.dashboard-app-body) .bmi-section .bmi-container,
body:not(.dashboard-app-body) .strength-section .strength-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

body:not(.dashboard-app-body) .bmi-workspace,
body:not(.dashboard-app-body) .strength-workspace {
  width: 100%;
  max-width: var(--bmi-calc-workspace-max-width, min(1040px, 100%));
  margin-inline: auto;
}

body:not(.dashboard-app-body) .bmi-workspace-row {
  display: grid;
  gap: var(--split-layout-gap);
  width: 100%;
  align-items: stretch;
}

@media (min-width: 768px) {
  body:not(.dashboard-app-body) .bmi-workspace-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
  }

  body:not(.dashboard-app-body) .bmi-left {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  body:not(.dashboard-app-body) .bmi-section .bmi-form {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 100%;
  }

  body:not(.dashboard-app-body) .bmi-table-wrap {
    height: 100%;
    display: flex;
    flex-direction: column;
  }
}

body:not(.dashboard-app-body) .bmi-left,
body:not(.dashboard-app-body) .bmi-right,
body:not(.dashboard-app-body) .bmi-table-wrap {
  min-width: 0;
}

body:not(.dashboard-app-body) .bmi-form {
  display: grid;
  gap: var(--bmi-form-gap, 18px);
  width: 100%;
  max-width: 100%;
}

body:not(.dashboard-app-body) .bmi-section .calc-number-input {
  width: 100%;
  height: var(--bmi-calc-input-height);
  padding: 0 16px;
  border: var(--bmi-calc-input-border);
  border-radius: var(--bmi-calc-input-radius);
  background: var(--bmi-calc-input-bg);
  color: var(--color-light, #faf9fe);
  font-size: 16px;
  box-sizing: border-box;
}

body:not(.dashboard-app-body) .bmi-section .calc-number-input:focus {
  outline: none;
  border-color: var(--color-red, #de242f);
  box-shadow: 0 0 0 3px rgba(222, 36, 47, 0.15);
}

body:not(.dashboard-app-body) .bmi-section .bmi-button {
  margin-top: 4px;
  margin-bottom: 0;
  width: 100%;
  min-height: var(--bmi-calc-input-height);
}

body:not(.dashboard-app-body) .bmi-result-row {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: var(--bmi-calc-result-gap);
  clear: both;
}

body:not(.dashboard-app-body) .bmi-result-row .bmi-result {
  width: 100%;
  max-width: 100%;
  margin: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.14);
}

html body.home:not(.dashboard-app-body) .bmi-section .bmi-result-row .bmi-result,
html body.home:not(.dashboard-app-body) .bmi-section .bmi-result-row #bmiResult.bmi-result {
  position: static !important;
  align-self: stretch !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:not(.dashboard-app-body) .strength-workspace--stacked {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 3vw, 28px);
  align-items: stretch;
}

body:not(.dashboard-app-body) .strength-workspace--stacked .strength-layout,
body:not(.dashboard-app-body) .strength-workspace--stacked .strength-result-panel {
  width: 100%;
  max-width: var(--strength-calc-panel-max-width, min(720px, 100%));
}

body:not(.dashboard-app-body) .strength-workspace--stacked .strength-result {
  min-height: clamp(120px, 22vw, 180px);
}

@media (max-width: 767px) {
  body:not(.dashboard-app-body) .bmi-result-row .bmi-result,
  body:not(.dashboard-app-body) .strength-workspace--stacked .strength-result {
    min-height: clamp(120px, 24vw, 180px);
  }
}

/* ----- Stack sections: content below intro ----- */
body:not(.dashboard-app-body) .section-flow--stack .programs-grid,
body:not(.dashboard-app-body) .section-flow--stack .faq-list,
body:not(.dashboard-app-body) .section-flow--stack .get-in-touch-form,
body:not(.dashboard-app-body) .section-flow--stack .booking-app {
  width: 100%;
  max-width: min(1040px, 100%);
  margin-inline: auto;
}

body:not(.dashboard-app-body) .section-flow--stack .booking-app {
  max-width: min(1040px, 100%);
}

body:not(.dashboard-app-body) .section-flow--stack .get-in-touch-form {
  max-width: min(1040px, 100%);
}

body:not(.dashboard-app-body) .section-flow--stack .programs-intro-actions,
body:not(.dashboard-app-body) .section-flow--stack .get-in-touch-actions {
  margin-top: clamp(4px, 1vw, 8px);
}

body:not(.dashboard-app-body) .partnerships-section .partner-logo-scroll {
  margin-bottom: var(--site-section-block-gap, clamp(32px, 4.5vw, 48px));
}

body:not(.dashboard-app-body) .partnerships-section .partnerships-cta-wrap {
  margin-top: var(--site-section-block-gap, clamp(32px, 4.5vw, 48px)) !important;
}

/* ----- Location / contact maps: full width below intro ----- */
body:not(.dashboard-app-body) .location-section .location-map-container,
body:not(.dashboard-app-body) .contact-page-flow .contact-location-map-container {
  width: 100%;
  max-width: min(1040px, 100%);
  margin: 0 auto var(--section-content-gap);
  border-radius: var(--rs-radius-ui, 16px);
  overflow: hidden;
}

body:not(.dashboard-app-body) .location-section .location-map-container .lazy-map-wrap,
body:not(.dashboard-app-body) .contact-page-flow .contact-location-map-wrap {
  min-height: clamp(240px, 42vw, 420px);
}

body:not(.dashboard-app-body) .location-section .location-map-container iframe,
body:not(.dashboard-app-body) .contact-page-flow .contact-location-map {
  width: 100%;
  min-height: clamp(240px, 42vw, 420px);
}

/* ----- Facilities: top-aligned split + zone list filler ----- */
@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .gym-gallery-section.section-flow--split .gym-gallery-split.split-section {
    align-items: start;
  }

  body:not(.dashboard-app-body) .gym-gallery-section.section-flow--split .split-section__media {
    justify-content: flex-start;
  }

  body:not(.dashboard-app-body) .gym-gallery-section.section-flow--split .gym-gallery-heading {
    margin-bottom: 0;
    max-width: var(--split-layout-text-max);
  }

  body:not(.dashboard-app-body) .gym-gallery-section.section-flow--split .gym-gallery-text {
    margin-inline: 0;
  }
}

body:not(.dashboard-app-body) .gym-gallery-zones {
  display: none !important;
}

/* ----- Legal pages: centered shell, left-aligned body ----- */
body:not(.dashboard-app-body) .legal-page-flow .legal-page-container,
body:not(.dashboard-app-body) .legal-page-flow .legal-page-container.narrow-container {
  max-width: var(--legal-page-container-max-width, min(960px, 92vw));
  width: 100%;
  margin-inline: auto;
  padding-inline: clamp(20px, 3vw, 40px);
  text-align: center;
}

body:not(.dashboard-app-body) .legal-page-flow .legal-content-card--continuous {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  text-align: left;
}

body:not(.dashboard-app-body) .legal-page-flow .legal-content-card--continuous :is(p, ul, ol, h2, h3, h4) {
  text-align: left;
}

@media (max-width: 1023px) {
  body:not(.dashboard-app-body) .gym-gallery-section.section-flow--split .section-intro {
    margin-bottom: var(--section-intro-bottom);
  }
}

/* ----- Membership selector + card polish ----- */
body:not(.dashboard-app-body) .membership-section .membership-selector {
  width: min(380px, 92%) !important;
  max-width: var(--membership-selector-max-width-compact, min(380px, 92%)) !important;
  margin-inline: auto !important;
}

body:not(.dashboard-app-body) .membership-section .membership-grid {
  width: 100%;
}

@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .membership-section .membership-card {
    min-height: var(--membership-card-min-height-desktop, clamp(190px, 24vw, 250px)) !important;
  }

  body:not(.dashboard-app-body) .membership-section .membership-card-title {
    min-height: auto !important;
  }

  body:not(.dashboard-app-body) .membership-section .membership-card-text {
    min-height: auto !important;
  }
}

body:not(.dashboard-app-body) .membership-card-ribbon span {
  white-space: nowrap;
  font-size: clamp(9px, 1.5vw, 11px);
  letter-spacing: 0.08em;
  padding: 5px 10px;
}

body:not(.dashboard-app-body) .membership-price-wrap {
  flex-wrap: nowrap;
  align-items: baseline;
  white-space: nowrap;
}

body:not(.dashboard-app-body) .membership-period {
  white-space: nowrap;
}

body:not(.dashboard-app-body) .membership-card--gold .membership-card-cta {
  margin-top: clamp(18px, 3vw, 26px) !important;
}

/* ----- BMI legacy grid reset ----- */
body:not(.dashboard-app-body) .bmi-section .bmi-container {
  display: flex !important;
  grid-template-columns: unset !important;
  align-items: center !important;
}

body:not(.dashboard-app-body) .location-section .section-intro.location-heading {
  margin-inline: auto;
  text-align: center;
  align-items: center;
}

/* ----- Home stack sections: keep centered intros ----- */
html body.home:not(.dashboard-app-body) .section-flow--stack .section-intro--center {
  margin-left: auto !important;
  margin-right: auto !important;
  align-items: center !important;
  text-align: center !important;
}

html body.home:not(.dashboard-app-body) .section-flow--stack .section-intro--center :is(
  [class*="-title"],
  [class*="-eyebrow"],
  [class*="-text"],
  [class*="-intro"],
  [class*="-description"]
) {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html body.home:not(.dashboard-app-body) .section-flow--stack .programs-intro-actions,
html body.home:not(.dashboard-app-body) .section-flow--stack .partnerships-cta-wrap,
html body.home:not(.dashboard-app-body) .section-flow--stack .get-in-touch-actions {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* ----- Partnerships page centered copy ----- */
body:not(.dashboard-app-body) .partnerships-page-flow .section-intro--center,
body:not(.dashboard-app-body) .partnerships-page-lead--clean,
body:not(.dashboard-app-body) .partnerships-page-footnote {
  margin-inline: auto;
  text-align: center;
}

body:not(.dashboard-app-body) .partnerships-page-card-discount {
  text-align: center;
}

/* ----- Inner pages ----- */
@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .about-page-team-split .split-section {
    align-items: center;
  }

  body:not(.dashboard-app-body) .about-page-block {
    text-align: left;
  }

  body:not(.dashboard-app-body) .programs-page-v2-card:nth-child(even) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  }

  body:not(.dashboard-app-body) .programs-page-v2-card:nth-child(even) .programs-page-v2-card-media {
    order: 2;
  }

  body:not(.dashboard-app-body) .programs-page-v2-card:nth-child(even) .programs-page-v2-card-body {
    order: 1;
  }
}

@media (max-width: 900px) {
  body:not(.dashboard-app-body) .programs-page-v2-card {
    grid-template-columns: 1fr !important;
  }

  body:not(.dashboard-app-body) .programs-page-v2-card .programs-page-v2-card-media,
  body:not(.dashboard-app-body) .programs-page-v2-card .programs-page-v2-card-body {
    order: unset !important;
  }
}

/* ----- Language switcher: EN | EL ----- */
body:not(.dashboard-app-body) .language-switch--dual {
  display: inline-flex;
  align-items: center;
  gap: var(--language-switch-gap);
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(12px) saturate(130%);
  -webkit-backdrop-filter: blur(12px) saturate(130%);
}

body:not(.dashboard-app-body) .language-switch__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 22px;
  padding: 0 4px;
  border: 0;
  background: transparent;
  color: var(--language-switch-inactive-color);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  text-decoration: none;
  opacity: var(--language-switch-inactive-opacity);
  transition: color 0.24s ease, opacity 0.24s ease;
}

body:not(.dashboard-app-body) .language-switch__link:hover {
  color: var(--language-switch-active-color);
  opacity: var(--language-switch-active-opacity);
}

body:not(.dashboard-app-body) .language-switch__link.is-active {
  color: var(--language-switch-active-color);
  opacity: var(--language-switch-active-opacity);
  pointer-events: none;
  cursor: default;
}

body:not(.dashboard-app-body) .language-switch__separator {
  color: rgba(250, 249, 254, var(--language-switch-separator-opacity));
  font-size: 11px;
  font-weight: 400;
  line-height: 1;
  user-select: none;
}

body:not(.dashboard-app-body) .mobile-language-switch--dual {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 12px 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.04);
}

body:not(.dashboard-app-body) .mobile-language-switch--dual .language-switch__link {
  min-height: var(--rs-touch-min, 44px);
  min-width: 44px;
  flex: 1;
  font-size: 12px;
}

body:not(.dashboard-app-body) .mobile-language-switch__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* ----- Unified section intro stack spacing (eyebrow → title → text → button → content) ----- */
body:not(.dashboard-app-body) .section-intro-stack,
body:not(.dashboard-app-body) .membership-heading.section-intro-stack {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  align-items: inherit;
  gap: 0 !important;
  margin-bottom: var(--section-stack-content-gap) !important;
}

body:not(.dashboard-app-body) .section-intro-stack.section-intro--center,
body:not(.dashboard-app-body) .membership-heading.section-intro-stack.text-center {
  align-items: center !important;
  text-align: center !important;
}

body:not(.dashboard-app-body) .section-intro-stack :is([class*="-eyebrow"]),
body:not(.dashboard-app-body) .membership-heading.section-intro-stack .membership-eyebrow {
  margin: 0 0 var(--section-stack-eyebrow-gap) !important;
}

body:not(.dashboard-app-body) .section-intro-stack :is([class*="-title"]),
body:not(.dashboard-app-body) .membership-heading.section-intro-stack .membership-title {
  margin: 0 0 var(--section-stack-heading-gap) !important;
}

body:not(.dashboard-app-body) .section-intro-stack :is([class*="-text"], [class*="-intro"], [class*="-description"]),
body:not(.dashboard-app-body) .membership-heading.section-intro-stack .membership-text {
  margin: 0 0 var(--section-stack-text-gap) !important;
}

body:not(.dashboard-app-body) .section-intro-stack :is([class*="-intro-actions"], [class*="-cta-wrap"]) {
  margin: var(--section-stack-button-gap) 0 0 !important;
}

body:not(.dashboard-app-body) .programs-intro.programs-intro--stack {
  max-width: min(720px, 100%);
  margin-inline: auto;
}

body:not(.dashboard-app-body) .programs-intro-actions .programs-button {
  margin-left: 0 !important;
  margin-inline: auto;
}

body:not(.dashboard-app-body) .section-intro-stack + :is(
  .programs-grid,
  .booking-app,
  .faq-list,
  .get-in-touch-form,
  .bmi-workspace,
  .strength-workspace,
  .location-map-container,
  .partner-logo-scroll
),
body:not(.dashboard-app-body) .membership-heading.section-intro-stack + .membership-selector {
  margin-top: 0 !important;
}

body:not(.dashboard-app-body) .membership-selector + .membership-grid {
  margin-top: var(--section-stack-content-gap);
}

body:not(.dashboard-app-body) .membership-section .membership-selector-button {
  font-size: var(--membership-selector-font-size, clamp(9px, 1.55vw, 11px)) !important;
  letter-spacing: 0.06em !important;
  padding: clamp(7px, 1vw, 10px) clamp(8px, 1.4vw, 14px) !important;
}

body:not(.dashboard-app-body) .membership-dots .membership-dot {
  border: 0;
  padding: 0;
  cursor: pointer;
  font: inherit;
}

/* Facilities showcase — desktop: text left, 4 photos right (top-aligned) */
@media (min-width: 1024px) {
  body:not(.dashboard-app-body) .gym-gallery-showcase-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    grid-template-rows: auto;
    gap: var(--facilities-showcase-layout-gap);
    align-items: stretch;
  }

  body:not(.dashboard-app-body) .gym-gallery-showcase-layout__text {
    grid-column: 1;
    grid-row: 1;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  body:not(.dashboard-app-body) .gym-gallery-showcase-layout__grid-top {
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  body:not(.dashboard-app-body) .gym-gallery-showcase-layout__grid-top .gym-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;
  }

  html body.home:not(.dashboard-app-body) .section-flow--split .gym-gallery-showcase-layout__text .section-intro,
  html body.home:not(.dashboard-app-body) .section-flow--split .about-home-spotlight__content {
    margin-inline: 0 !important;
    max-width: var(--split-layout-text-max) !important;
    text-align: left !important;
    align-items: flex-start !important;
  }

  html body.home:not(.dashboard-app-body) .section-flow--split .gym-gallery-text,
  html body.home:not(.dashboard-app-body) .section-flow--split .about-text {
    margin-inline: 0 !important;
  }
}

@media (max-width: 1023px) {
  body:not(.dashboard-app-body) .gym-gallery-showcase-layout {
    display: flex;
    flex-direction: column;
    gap: var(--facilities-showcase-layout-gap);
  }

  body:not(.dashboard-app-body) .gym-gallery-showcase-layout__grid-top .gym-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Legacy facilities grid — 3 columns on showcase layout */
@media (min-width: 761px) {
  body:not(.dashboard-app-body) .gym-gallery-section--facilities.gym-gallery-section--showcase:not(:has(.gym-gallery-showcase-layout)) .gym-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;
  }
}

@media (max-width: 760px) {
  :root {
    --section-stack-content-gap: clamp(18px, 5vw, 28px);
  }
}
