/* Release candidate: the brand red is inherited from RAIBIZCLUB v3.1. */
:focus-visible{outline-color:var(--red)}
.site-header,body:has(.photo-hero) .site-header{position:fixed;top:0;left:0;right:0;width:100%;height:72px;background:var(--cream);color:var(--black);box-shadow:0 1px 0 #11151418;z-index:50;gap:15px}
body:has(.photo-hero) .site-header .logo img:first-child{display:block;filter:none}
body:has(.photo-hero) .site-header .logo .logo-on-dark{display:none}
.site-header .logo{flex:none}.site-header .head-right{margin-left:auto}.site-header .desktop-nav{margin:auto}.menu-toggle{order:-2;font-weight:400;white-space:nowrap;padding:8px 0}.menu-toggle i{order:-1}.header-back{order:-1;font-size:25px;line-height:1;width:32px;text-align:center}
.menu-scrim{position:fixed;z-index:54;inset:0;background:#11151455}.full-menu{z-index:55;inset:0 auto 0 0;width:min(420px,86vw);background:var(--cream);padding:72px 24px 30px;box-shadow:18px 0 40px #11151430}.full-menu nav{max-width:none}.full-menu nav a{font-size:clamp(22px,3vw,34px);font-weight:400;letter-spacing:-.035em;padding:12px 0}.full-menu nav a:hover{transform:none}.menu-close{position:absolute;top:15px;right:18px;border:0;background:transparent;font-size:32px;line-height:1;color:var(--black)}.menu-foot{margin-top:20px}body.menu-open{overflow:visible}
.home-hero{height:175svh}.sticky-scene{isolation:isolate}.bridge{top:0!important;left:0!important;width:100%!important;height:100%!important;border-radius:0!important;transform:scale(calc(1 + var(--hero-progress,0)*.10));transform-origin:center center;will-change:transform}.bridge:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b1016c9 0%,#0b101698 42%,#0b101623 100%),linear-gradient(0deg,#0b10166b,transparent 55%)}.bridge>img:first-child{object-position:center 55%}.home-text{padding:clamp(120px,18vh,190px) clamp(18px,5vw,70px) 0;color:#fff}.home-text h1{max-width:850px;text-wrap:balance}.home-text p{color:#f3f0e8;max-width:650px;margin-top:28px;text-shadow:0 1px 12px #0009}.hero-buttons{margin-top:28px;flex-wrap:wrap}.home-text .text-link{color:white}.home-text .text-link:hover{color:#ff746c}.home-text .button{background:var(--red);color:white}.home-text .button:hover{background:var(--red-dark);color:white}.bridge-type{z-index:2;top:36%;height:30%;font-size:clamp(38px,10vw,160px);letter-spacing:-.075em;overflow:visible;text-align:center}.bridge-type span{display:block;max-width:100%;white-space:nowrap}
.home-hero+.panel{margin-top:0;border-radius:0}.section-head p{max-width:710px}.black-card>span,.eyebrow{color:var(--red)}.journey small{color:var(--red)}.panel{scroll-margin-top:72px}.inner-hero{padding-top:145px}.booking{padding-top:130px}
.filters button{color:var(--black)}.filters button:hover,.filters button:focus-visible{color:var(--red)}.filters button[aria-pressed=true]{color:#fff}.tab-buttons button{font-weight:400!important;color:var(--black)}.tab-buttons button[aria-pressed=true],.tab-buttons button:hover,.tab-buttons button:focus-visible{color:var(--red)}.arrow-icon{color:var(--black)}.button .arrow-icon,.inner-hero .button .arrow-icon{color:#fff}.button:hover .arrow-icon,.button:focus-visible .arrow-icon{color:var(--red)}.month-head button{color:var(--black)!important}.month-head button:hover,.month-head button:focus-visible{border-color:var(--red)}
.case-visual strong{overflow-wrap:anywhere}.case-card>p{color:#60645f}.case-card:hover .case-visual i .arrow-icon{color:var(--red)}
.stage{min-height:420px}.stage article{min-height:350px}.stage article>small,.carousel-controls [data-counter]{color:var(--red)}.receipt>strong{font:400 16px/1.4 Manrope,sans-serif;color:var(--red);letter-spacing:0}.payment-panels{min-height:430px}.payment-panels article{min-height:430px}.payment-models .tab-buttons button{white-space:normal}.scroll-cue{color:var(--red);font-size:13px;margin:0 0 12px}.table-scroll{max-width:100%;scrollbar-color:var(--red) #ddd;scrollbar-width:thin}.table-scroll table{width:900px}
.timezone-note{font-size:12px;color:#555;margin:12px 0}.selection-summary{color:var(--red);font-size:14px;min-height:1.5em}.booking .month-head button:disabled{color:#888!important}.footer-brand{min-width:0}.footer-brand p{max-width:100%;font-size:clamp(19px,2.1vw,31px)}.footer-brand p span{display:block;white-space:normal;overflow-wrap:normal;text-wrap:balance}.footer nav a{font-weight:400}.footer .form-status{min-height:2em}
@media(max-width:760px){.site-header{height:64px;padding-inline:16px}.site-header .desktop-nav{display:none}.site-header .head-right{gap:12px}.site-header .logo{width:112px}.menu-toggle{gap:7px}.header-back{width:22px;font-size:21px}.home-hero{height:160svh}.home-text{padding:110px 18px 0}.home-text h1{font-size:clamp(30px,7.6vw,48px);line-height:1.07;max-width:100%}.home-text p{font-size:14px;line-height:1.5;margin-top:19px}.bridge>img:first-child{object-position:52% center}.bridge:after{background:linear-gradient(180deg,#0b1016d9 0%,#0b10169c 55%,#0b10164c 100%)}.bridge-type{font-size:clamp(30px,8.3vw,60px);letter-spacing:-.065em;top:42%;height:22%}.hero-buttons{gap:15px;margin-top:18px}.home-text .button{font-size:12px}.panel{padding:38px 16px}.inner-hero{padding:110px 16px 45px;min-height:480px}.inner-hero h1{font-size:clamp(31px,8vw,52px);line-height:1.11;overflow-wrap:break-word}.inner-hero>p:not(.eyebrow){font-size:14px}.section-head h2{overflow-wrap:break-word}.stage{min-height:420px;padding:22px}.stage article{min-height:345px}.stage h3{margin:34px 0 16px}.payment-panels{min-height:530px}.payment-panels article{min-height:530px}.receipt>div{grid-template-columns:minmax(0,1fr) 70px 45px}.receipt del,.receipt b{font-size:11px;overflow-wrap:anywhere;white-space:normal}.receipt>strong{text-align:left;font-size:16px}.footer-brand p{font-size:clamp(22px,6.3vw,32px);max-width:100%}.footer-brand p span{white-space:normal}.booking{padding-top:100px}.booking-layout{margin-top:22px}.case-visual strong{font-size:clamp(23px,6.7vw,38px)}.tab-buttons{scrollbar-color:var(--red) transparent}}
@media(max-width:360px){.home-text h1{font-size:29px}.site-header .logo{width:96px}.site-header .head-right{gap:8px}.home-text .button{padding-inline:16px}.bridge-type{font-size:8vw}}
@media(prefers-reduced-motion:reduce){.bridge{transform:none}.bridge-type{opacity:1!important;transform:none!important}}

/* Approved first-screen offer and scroll-driven brand expansion. */
.home-hero{height:190svh}.home-text h1{max-width:100%;font-size:clamp(44px,6.8vw,96px);line-height:1.02;letter-spacing:-.04em}.home-text p{max-width:720px;font-size:clamp(15px,1.3vw,18px);line-height:1.55}.hero-static-name{display:none}.hero-identity{position:absolute;inset:64px 20px 24px;z-index:2;pointer-events:none;color:#fff;text-align:center}.hero-words{position:absolute;inset:0;display:grid;place-items:center}.hero-word{grid-area:1/1;opacity:0;font:clamp(30px,8vw,115px)/1.05 RAI,sans-serif;letter-spacing:-.035em;will-change:transform,opacity}.hero-word small{display:block;min-height:2em;margin-top:24px;font:400 clamp(11px,1.2vw,16px)/1.45 sans-serif;letter-spacing:.17em}.hero-lockup{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;opacity:0;font:clamp(26px,6vw,78px)/1.06 RAI,sans-serif;letter-spacing:-.035em;will-change:transform,opacity}.hero-lockup span{display:block;white-space:nowrap}.home-text{z-index:3}
@media(max-width:760px){.home-hero{height:185svh}.home-text{padding-top:clamp(90px,16svh,125px)}.home-text h1{font-size:clamp(29px,7.6vw,48px);line-height:1.08}.home-text p{font-size:14px;line-height:1.5;max-width:560px}.hero-word{font-size:7.7vw}.hero-word small{font-size:11px;letter-spacing:.12em;margin-top:20px}.hero-lockup{font-size:7.4vw;gap:8px}.hero-identity{inset:64px 16px 16px}}
@media(max-height:650px) and (max-width:760px){.home-text{padding-top:84px}.home-text p{margin-top:14px;font-size:13px}.hero-buttons{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.home-hero{height:auto;min-height:100svh}.sticky-scene{height:auto;min-height:100svh;position:relative}.hero-identity{display:none}.home-text{padding-bottom:50px;opacity:1!important}.hero-static-name{display:block!important;margin-top:32px!important;font-size:12px!important;letter-spacing:.08em}.bridge{transform:none!important}}

.home-text h1{font-size:clamp(30px,5.7vw,80px);text-wrap:initial}.home-text h1>span{display:block;white-space:nowrap}@media(max-width:760px){.home-text h1{font-size:6.1vw;letter-spacing:-.045em}}
