/* ComuniTeam: one navigation, masthead and visual language. Room palettes stay local. */
:root{--community-ink:#111310;--community-paper:#f6f5ef;--community-accent:#d5ff42;--community-rule:#d5d7cc}
body{background:var(--community-paper)}
.header{background:#111310;color:#fffefa;backdrop-filter:none}
.header .nav-row{max-width:1700px;gap:20px;min-height:88px}
.header .brand img{width:48px;height:48px;object-fit:contain;mix-blend-mode:normal}
.header .brand b{font-size:14px;letter-spacing:-.025em}
.header .brand small{font-size:9px;letter-spacing:.12em}
.header .nav-links{gap:22px}
.header .nav-links a,.header .nav-links button{font-size:12px;font-weight:500;min-height:48px}
.header .nav-links .active{color:var(--community-accent)}
.header .nav-links a:after{height:2px;background:var(--community-accent)}
.header .nav-links button.active{box-shadow:inset 0 -2px var(--community-accent)}
.community-crumb{background:#111310;color:#b6bcae;border-bottom:1px solid #ffffff1a}
.community-crumb .breadcrumb{padding-block:12px;min-height:44px;font-size:11px;margin:0 auto;color:inherit}
.community-crumb .breadcrumb a{color:#fffefa}
.community-masthead{background:#111310;color:#fffefa;border-bottom:5px solid var(--community-accent);margin-bottom:48px}
.community-masthead .page-head{padding:30px 5% 24px;max-width:1600px}
.masthead-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff2b;padding-bottom:22px}
.community-masthead .eyebrow{margin:0;color:var(--community-accent);font-size:11px;letter-spacing:.09em;max-width:none}
.masthead-meta .eyebrow span{color:#c3c7bb;margin-left:12px}
.masthead-signature{font-size:10px;letter-spacing:.08em;color:#c3c7bb;white-space:nowrap}
.masthead-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:center;min-height:265px;padding-block:38px}
.community-masthead h1{font-family:var(--sans);font-weight:600;font-size:clamp(42px,5vw,76px);line-height:1.04;letter-spacing:-.06em;margin:0;max-width:950px;overflow-wrap:break-word}
.community-masthead h1 em,.community-masthead h1 span{color:var(--community-accent);font-weight:inherit}
.community-masthead .masthead-context>p{font-size:16px;line-height:1.75;max-width:430px;color:#d4d7cd;margin:0}
.masthead-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:24px}
.masthead-actions .rv-link{font-size:12px;color:#fffefa}
.masthead-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #ffffff2b;padding-top:16px;font-size:10px;letter-spacing:.1em;color:#b6bcae}
.masthead-foot>span:last-child{color:var(--community-accent);font-size:28px;line-height:1}
.btn,.rv-button{border-radius:3px;min-height:50px;font-family:var(--sans);font-size:13px;font-weight:600}
.rv-primary{background:var(--community-accent);border-color:var(--community-accent);color:#111310}
.rv-page,.coupon-page{background:var(--community-paper);color:#191b16}
.rv-page{--rv-lime:var(--community-accent);--rv-ink:#191b16;--rv-muted:#575b50}
.rv-trustline{margin-top:0;border-top:0;padding:0 0 24px;gap:18px 32px;font-size:12px}
.rv-tabs button[aria-pressed=true]{background:#111310;color:var(--community-accent)}
.rv-tabs button[aria-pressed=true] span{color:#d7ddcc}
.rv-summary{border-radius:4px}
.coupon-nav{padding:0 0 18px;font-size:13px}
.coupon-nav a[aria-current]{text-decoration:none;background:#111310;color:var(--community-accent);padding-inline:18px;border-radius:3px}
.coupon-page .coupon-explore{padding-block:44px 70px}
.coupon-explore h2{font-size:clamp(30px,3.5vw,48px);margin-bottom:12px}
.coupon-demo-notice{background:#e8ebde;border-left-color:#111310;color:#454b3d;border-radius:0;font-size:12px}
.coupon-categories button{border-radius:3px}
.coupon-categories button[aria-pressed=true]{color:var(--community-accent)}
.coupon-grid{gap:24px;margin-top:28px;align-items:stretch}
.coupon-grid .coupon-card{padding:0;border:1px solid #d2d5c9;border-radius:10px;overflow:hidden;background:#fffefa;box-shadow:0 8px 24px #11131008;transition:transform .22s,box-shadow .22s;display:flex;flex-direction:column;color:#191b16}
.coupon-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px #11131014}
.coupon-visual{height:240px;position:relative;background:#111310;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px 32px 36px}
.coupon-brand{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.coupon-brand>img{width:100%;height:100%;object-fit:contain}
.coupon-card .coupon-pass-label{position:absolute;bottom:14px;left:24px;right:24px;color:#e6e9dc;letter-spacing:.15em;font-size:9px;border-top:1px solid #ffffff40;padding-top:9px}
.coupon-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 65%;filter:brightness(.55)}
.coupon-spa-placeholder{text-align:center;color:#fffefa}
.coupon-spa-placeholder>span{font-size:10px;letter-spacing:.2em}
.coupon-spa-placeholder strong{display:block;font-size:65px;font-weight:500;line-height:1.2;letter-spacing:-.05em;margin:5px 0}
.coupon-spa-placeholder small{font-size:11px}
.coupon-pass-body{padding:24px;position:relative;flex:1;display:flex;flex-direction:column;--pass-accent:#d5ff42;background:linear-gradient(135deg,#d5ff4230,transparent 45%)}
.coupon-fitness .coupon-pass-body{--pass-accent:#ff654d;background:linear-gradient(135deg,#ff654d22,transparent 45%)}
.coupon-spas .coupon-pass-body{--pass-accent:#ffc584;background:linear-gradient(135deg,#ffc58440,transparent 45%)}
.coupon-pass-body:before{content:'';height:5px;background:var(--pass-accent);position:absolute;top:0;left:0;right:0}
.coupon-discount-row{display:flex;gap:15px;align-items:center;margin:6px 0 20px}
.coupon-card .coupon-discount{font-size:clamp(74px,7vw,112px);line-height:.95;letter-spacing:-.08em;margin:0;font-weight:700}
.coupon-discount-row>span{font-size:11px;line-height:1.5;letter-spacing:.07em;font-weight:600}
.coupon-card h3{margin:0 0 10px;font-size:23px;letter-spacing:-.04em;line-height:1.2}
.coupon-pass-body>p{font-size:14px;color:#54594e;min-height:44px}
.coupon-pass-terms{margin-top:auto;padding-top:22px}
.coupon-card .coupon-demo{border:0;border-radius:0;background:#e9eade;color:#464c3e;padding:7px 8px;font-size:9px;letter-spacing:.025em}
.coupon-pass-terms small{margin-top:8px;font-size:11px;color:#5a6052}
.coupon-pass-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px dashed #a8b09c;margin-top:22px;padding-top:22px}
.coupon-pass-actions .btn{flex:1;justify-content:space-between;background:#111310;color:#fffefa;min-height:48px;gap:14px;padding:12px 16px}
.coupon-save{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px;min-height:48px;font-size:21px;line-height:1.1}
.coupon-save span{font-size:10px;margin-top:5px}
.coupon-save[aria-pressed=true]{color:#42620e}
.coupon-dialog-brand{height:160px;background:#111310;border-radius:6px;margin:16px 0 24px;padding:20px;display:flex;align-items:center;justify-content:center}
.coupon-dialog-brand>img{width:100%;height:100%;object-fit:contain}
.coupon-dialog-brand .coupon-spa-placeholder strong{font-size:40px}
.coupon-how li>span{color:#191b16;font-weight:600}
.coupon-bottom article{background:#e9ebdf;border-radius:4px}
.coupon-bottom article+article{background:var(--community-accent)}
.coupon-page button:focus-visible,.coupon-page a:focus-visible,.coupon-page input:focus-visible,.coupon-page select:focus-visible{outline-color:#527016}
/* The room entrance is the expressive exception; its five identities remain intact. */
.cinema-intro{position:relative;padding:44px 5% 50px;background:#111310;grid-template-columns:1.5fr 1fr;gap:8%;align-items:center;pointer-events:auto}
.cinema-intro h1{font-size:clamp(48px,5.4vw,82px);line-height:1.02}
.cinema-intro-side>p{max-width:430px;font-size:16px;line-height:1.75;color:#d4d7cd}
.film-rail{min-height:500px;height:67svh;max-height:750px}
.film-number{top:30px}
@media(min-width:1251px) and (max-width:1450px){.header .nav-row{padding-inline:3%;gap:12px}.header .nav-links{gap:14px}.header .account-link{display:none}}
@media(max-width:1250px){.header .nav-row{display:flex;flex-wrap:wrap;gap:0;min-height:0;padding-top:10px}.header .brand{margin-bottom:9px}.header .nav-tools{margin-left:auto;margin-bottom:9px}.header .nav-links{display:flex;order:3;width:100%;overflow-x:auto;gap:26px;border-top:1px solid #ffffff25;scrollbar-width:thin;scrollbar-color:#727966 #111310}.header .nav-links a,.header .nav-links button{min-height:48px;flex-shrink:0}.header .nav-links>button:last-child{padding-right:14px}.header .mobile-menu{display:inline-flex}.header .account-link{display:none}.coupon-visual{height:200px}.coupon-pass-body{padding:20px}.coupon-discount-row{gap:12px}.coupon-card .coupon-discount{font-size:80px}}
@media(max-width:850px){.masthead-grid{grid-template-columns:1fr;gap:24px;min-height:0;padding-block:32px}.community-masthead h1{font-size:clamp(40px,6.5vw,64px)}.community-masthead .masthead-context>p{max-width:650px}.masthead-signature{display:none}.coupon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-intro{grid-template-columns:1fr;gap:28px}.cinema-intro h1{white-space:normal}.cinema-intro-side>p{max-width:650px}}
@media(max-width:600px){html{scroll-padding-top:136px}.header .nav-row{padding-inline:5%}.header .brand b{font-size:13px}.header .brand img{width:38px;height:38px}.header .nav-tools{gap:2px}.header .nav-links{gap:24px}.header .nav-links a,.header .nav-links button{font-size:12px}.community-masthead{margin-bottom:28px}.community-masthead .page-head{padding-top:20px;padding-bottom:18px}.community-masthead .eyebrow{font-size:9px}.masthead-meta{padding-bottom:17px}.masthead-meta .eyebrow span{margin-left:4px}.community-masthead h1{font-size:clamp(36px,9.5vw,55px)}.community-masthead .masthead-context>p{font-size:14px;line-height:1.7}.masthead-foot{font-size:8px;letter-spacing:.06em}.coupon-grid{grid-template-columns:1fr;gap:25px}.coupon-visual{height:220px}.coupon-card .coupon-discount{font-size:100px}.coupon-pass-body{padding:24px}.coupon-pass-body>p{min-height:0}.coupon-nav{gap:12px}.coupon-nav>div{gap:10px;justify-content:flex-start;flex-wrap:wrap}.coupon-nav a[aria-current]{padding-inline:14px}.coupon-filters{grid-template-columns:1fr}.coupon-categories{gap:8px}.coupon-categories button{padding:10px 12px;font-size:12px}.coupon-page .coupon-explore{padding-top:30px}.cinema-intro{padding-block:30px}.cinema-intro h1{font-size:clamp(43px,10vw,62px)}.cinema-intro-side>p{font-size:14px}.film-rail{height:540px;min-height:540px}.film-number{top:24px}.rv-trustline{font-size:11px;gap:12px}.chat-launcher{bottom:15px;right:15px}.chat-launcher small{display:none}}
@media(prefers-reduced-motion:reduce){.coupon-card{transition:none}.coupon-card:hover{transform:none}}

#app:not([data-route="room"]) .filter-tabs button{border-radius:3px;min-height:44px}
#app:not([data-route="room"]) .filter-tabs button[aria-pressed="true"]{background:#111310;border-color:#111310;color:#d5ff42}

.film-door>.room-preview-toggle{top:16px}.film-door>.room-film-credit{top:65px}

/* Readable, balanced shared header at desktop and mobile widths. */
.header .nav-row{max-width:1600px;min-height:104px;padding-inline:clamp(20px,3vw,48px);gap:28px}
.header .brand{gap:14px}
.header .brand img{width:68px;height:68px;object-fit:contain;flex-shrink:0}
.header .brand b{font-size:21px;line-height:1.15;letter-spacing:-.025em}
.header .brand small{font-size:11px;line-height:1.3;letter-spacing:.1em;margin-top:7px}
.header .nav-links{gap:24px}
.header .nav-links a,.header .nav-links button{font-size:15px;line-height:1.3;min-height:52px}
.header .nav-tools{gap:8px;flex-shrink:0}
.header .nav-tools .lang{font-size:13px;gap:4px}
.header .lang button{min-height:44px;padding-inline:5px}
.header .nav-tools .icon-btn{min-width:44px;min-height:44px}
.header .icon{width:23px;height:23px}
.header .account-link{font-size:13px;min-height:44px;padding-left:14px}
@media(min-width:1251px) and (max-width:1500px){
 .header .nav-row{gap:20px;padding-inline:24px}
 .header .nav-links{gap:18px}
 .header .account-link{display:none}
 .header .brand b{font-size:19px}
}
@media(max-width:1250px){
 .header .nav-row{min-height:0;gap:0;padding-top:12px}
 .header .brand,.header .nav-tools{margin-bottom:12px}
 .header .nav-links{gap:28px;min-width:0}
 .header .nav-links a,.header .nav-links button{min-height:52px}
}
@media(max-width:600px){
 .header .nav-row{padding-inline:16px;padding-top:12px}
 .header .brand{gap:10px}
 .header .brand img{width:48px;height:48px}
 .header .brand b{font-size:17px}
 .header .brand small{font-size:10px;letter-spacing:.06em;margin-top:5px}
 .header .nav-tools{gap:0}
 .header .nav-tools .lang{font-size:12px;gap:0}
 .header .lang button{padding-inline:4px}
 .header .nav-tools .icon-btn{min-width:44px}
 .header .nav-tools>.mobile-menu{display:none}
 .header .nav-tools>[data-action=search],.header .nav-tools>.bag-button{display:inline-flex}
 .header .nav-links{gap:26px}
 .header .nav-links a,.header .nav-links button{font-size:15px}
}
@media(max-width:360px){
 .header .nav-row{padding-inline:12px}
 .header .brand{gap:8px}
 .header .brand img{width:42px;height:42px}
 .header .brand b{font-size:15px}
}

/* Three distinct destinations: quick links, benefits, affiliate learning. */
.cinema-wayfinder{background:#f4f2eb;color:#20251e;border-block:1px solid #20251e20;margin-bottom:32px}
.cinema-wayfinder a{font-size:15px;min-height:94px;border-color:#20251e20}
.cinema-wayfinder a:hover{background:#e9e7de}
.cinema-wayfinder a small{color:#5c6555}
.coupon-home-link{max-width:1440px;margin:0 auto 32px;width:calc(100% - 64px);padding:36px 40px;background:#e9dff6;color:#352449;border:1px solid #c7b5dd;border-radius:16px;min-height:146px;font-size:16px;line-height:1.6}
.coupon-home-link strong{font-size:28px;line-height:1.2;margin-bottom:10px;letter-spacing:-.025em}
.coupon-home-link>span:last-child{display:grid;place-items:center;flex-shrink:0;width:54px;height:54px;border:1px solid #9278b2;border-radius:50%;font-size:28px}
.coupon-home-link:hover{background:#e0d2f1}
.affiliate-band{background:#1e302e;color:#f7faf6;padding-block:52px;border:0;margin-top:0}
.affiliate-band .eyebrow{color:#bad7ce;font-size:11px;letter-spacing:.12em}
.affiliate-band h2{font-size:clamp(26px,2.6vw,38px);max-width:750px}
.affiliate-band p:not(.eyebrow){font-size:16px;line-height:1.7;color:#d3e1db}
.affiliate-band .btn{background:#d5ff42;color:#171c10;border-color:#d5ff42;font-size:14px;min-height:52px}
.affiliate-band .btn:hover{background:#e2ff81}
@media(max-width:700px){
 .cinema-wayfinder{margin-bottom:24px}
 .cinema-wayfinder a{font-size:14px;min-height:80px}
 .coupon-home-link{width:calc(100% - 32px);margin-bottom:24px;padding:26px 22px;gap:18px;font-size:15px}
 .coupon-home-link strong{font-size:24px}
 .coupon-home-link>span:last-child{width:42px;height:42px;font-size:24px}
 .affiliate-band{padding-block:36px}
 .affiliate-band p:not(.eyebrow){font-size:15px}
 .affiliate-band .btn{font-size:14px}
}
