/* Content layer (ТЗ 28.10): icons and sizes for the new, longer text. Design untouched. */
.ic{width:1em;height:1em;display:inline-block;vertical-align:-.14em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic-play{fill:currentColor;stroke-width:1.2}
.lumi-icon{stroke-width:2.6}

/* hero: one long headline instead of three short words */
.hero h1.hero-title-long{font-size:clamp(40px,5.1vw,84px);line-height:1.04;letter-spacing:-.045em;max-width:15ch;color:#e8c75f}
.hero-bottom .hero-more{margin-top:12px;opacity:.85}
.birthday-entry{display:none!important}
.hero-foot a{font-size:20px}

/* promo strip: longer conditions */
.campaign-conditions{max-width:46ch;line-height:1.5}

/* about */
.philosophy-copy+.philosophy-copy{margin-top:14px}
.club-tour figcaption{display:grid;gap:8px;justify-items:start}
.club-tour figcaption .tour-play{margin-top:6px}

/* spaces: real names are longer than MOVE / BREATHE / RECOVER */
.scene h2{font-size:clamp(40px,4.4vw,74px);letter-spacing:-.045em;line-height:1.05}
.scene h3{line-height:1.35}
.scene-copy p+p{margin-top:12px}

/* club */
.club-copy p.reveal+p.reveal{margin-top:12px}

/* membership help block (former note) */
.membership-note>p{font-weight:600;letter-spacing:.02em}
.birthday-weight{display:none}

/* spa list on the home page */
.spa-home-programs li>span em{display:block;font-style:normal;font-size:14px;line-height:1.5;opacity:.75;margin-top:4px;text-transform:none;letter-spacing:0}
.spa-home-programs .spa-more{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:13px;font-weight:600;border-bottom:1px solid currentColor}

/* team text sits in the chapter block */
.team .chapter-cta p{max-width:62ch;line-height:1.55}
.team .chapter-cta small{display:block;margin-top:8px}
.coach-vertical:empty{display:none}

/* inside: card captions with a link */
.day-card figcaption span{font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.day-card .day-more{display:flex;width:max-content;align-items:center;gap:6px;margin-top:10px;font-size:14px;font-weight:600;color:#efd47b;border-bottom:1px solid currentColor;padding:2px 0}

/* contacts */
.location address a{display:block;margin-top:6px;font-weight:600}
.location address span+span{margin-top:4px}
.call-note{margin-top:22px;font-size:14px;opacity:.75}
.call-note+.phone-action,.call-note+.call-link{margin-top:6px}

/* final question */
.final h2.final-long{font-size:clamp(34px,4.5vw,72px);line-height:1.08;letter-spacing:-.045em;max-width:22ch}
.final .final-text{max-width:52ch;margin:-12px 0 30px;font-size:17px;line-height:1.6}

/* dialog */
.booking-text{margin-top:14px;line-height:1.55}

/* mobile menu extras: Команда is everywhere, socials + CTA only in the phone menu */
.header nav .nav-extra{display:none}
@media(max-width:760px){
 .header nav .nav-extra{display:block}
 .header nav .nav-extra-cta{color:#efd47b;font-weight:600}
 .hero h1.hero-title-long{font-size:clamp(31px,9.2vw,46px);line-height:1.06}
 .scene h2{font-size:clamp(31px,9vw,46px);line-height:1.08}
 .final h2.final-long{font-size:clamp(27px,7.8vw,40px)}
 .hero-foot a{font-size:18px}
}

/* the SPA intro is now a full sentence */
.spa-home-intro{font-size:clamp(20px,1.9vw,28px)!important;line-height:1.4!important}

/* SPA page: program text per ТЗ */
.spa-program .program-desc{margin:12px 0 0;line-height:1.55;opacity:.85}
.spa-program .program-inc{margin:16px 0 6px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.procedure-duration{line-height:1.5}
.spa-page .final h2.final-long{max-width:18ch}
.spa-page .final .final-text{margin:0 0 30px}

/* offer cards: visible regular-price label and «По акции:» */
.birthday-old span{font-size:13px;opacity:.75;margin-right:4px}
.birthday-label{margin-top:10px;font-size:13px;opacity:.75}
.birthday-label+.birthday-price{margin-top:2px}

/* language switcher: RU / UZ / EN next to the menu button */
.lang{position:relative;display:flex;align-items:center;flex:none;margin-left:12px;z-index:30}
.lang-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:0 6px;background:none;border:0;color:#efd47b;font-size:13px;font-weight:600;letter-spacing:.14em;cursor:pointer}
.lang-btn .ic{width:14px;height:14px;transition:transform .25s ease}
.lang.open .lang-btn .ic{transform:rotate(180deg)}
.lang-list{position:absolute;top:calc(100% + 4px);right:0;min-width:96px;margin:0;padding:6px;list-style:none;background:#0b0b09;border:1px solid #b6984866;border-radius:10px;box-shadow:0 18px 40px #000a;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s}
.lang.open .lang-list{opacity:1;visibility:visible;transform:none;transition:opacity .25s ease,transform .25s ease}
.lang-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;border-radius:6px;color:#ece8de;font-size:13px;font-weight:600;letter-spacing:.14em}
.lang-list a:hover{background:#ffffff0f}
.lang-list a.on{color:#efd47b}
.lang-list a.on:after{content:'';width:6px;height:6px;border-radius:50%;background:#efd47b}
@media(max-width:760px){.lang{margin-left:auto;margin-right:4px}}
@media(max-width:1100px){.header .lang{margin-left:auto}}
@media(max-width:1100px){.header .lang+.menu-toggle{margin-left:2px}}
