@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:swap;src:url('assets/bodoni-regular.ttf') format('truetype')}@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400;font-display:swap;src:url('assets/bodoni-italic.ttf') format('truetype')}
:root{--ink:#172c38;--ivory:#faf9f6;--muted:#60696c;--line:#172c3824;--serif:'Bodoni Moda',Didot,Georgia,serif;--sans:'Helvetica Neue',Arial,sans-serif;--gutter:8%;--section:120px}
body{background:var(--ivory);color:var(--ink)}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}em{font-family:var(--serif);font-weight:400;font-style:italic}.eyebrow{font-size:12px;letter-spacing:.17em;line-height:1.7;font-weight:400}::selection{background:#a96d50;color:white}.journey-progress span{background:#ac795d}.site-header{display:grid;grid-template-columns:1fr auto 1fr;padding:25px 5%;color:#fff;gap:20px}.site-header.scrolled{background:#faf9f6f5;color:var(--ink);padding-top:15px;padding-bottom:15px;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.04em;text-align:center;line-height:1.2}.brand svg{display:none}.brand small{font:9px var(--sans);letter-spacing:.32em;margin-top:9px;text-align:center}.header-actions{justify-self:end}.enquire-link{font-size:12px;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid currentColor;padding:10px 0}.menu-toggle{width:100px;position:relative;align-items:start;padding:8px 0;gap:6px}.menu-toggle span{width:21px}.menu-toggle b{font-size:12px;letter-spacing:.08em;font-weight:400;position:absolute;left:34px;top:15px}.skip:focus{color:white}.arrival{color:white}.hero-shade{background:linear-gradient(180deg,#15212950,transparent 40%,#06131f99)}.hero-copy{inset:auto 5% 14%;text-align:center;max-width:none}.hero-copy h1{font-size:clamp(60px,7vw,112px);line-height:1.1;letter-spacing:-.055em;margin:15px 0 0}.hero-copy .eyebrow{font-size:11px;letter-spacing:.22em}.hero-bottom{left:5%;right:5%;bottom:4%;align-items:center;border:0;padding:0}.hero-bottom>span{font-size:11px;letter-spacing:.1em}.scroll-enter{font-size:12px;letter-spacing:.06em;gap:12px}.scroll-line{height:30px}.hero-skip{font-size:12px;letter-spacing:.03em;padding:10px 0}.overview{padding:110px var(--gutter) 55px}.intro-heading{text-align:center;max-width:920px;margin:0 auto 65px}.intro-heading h2{font-size:clamp(48px,5.8vw,88px);line-height:1.12;margin-top:22px}.overview-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:10%;align-items:start;margin:0}.overview-photo{margin-left:calc(-1 * (100vw * .08));width:calc(100% + 100vw * .08)}.overview-photo img{height:560px;max-height:none;min-height:0;object-position:50% center}.overview-photo figcaption{margin-left:14%;font-size:12px;color:var(--muted);letter-spacing:.04em;margin-top:18px}.overview-copy{padding-top:30px}.overview-copy>p{font-size:16px;line-height:1.9;margin:0;color:var(--muted);max-width:340px}.text-link{font-size:12px;letter-spacing:.09em;text-transform:uppercase;margin-top:22px;padding:10px 0}.detail-photo{width:85%;margin:60px 0 0 auto}.detail-photo img{height:250px;object-position:center}.detail-photo figcaption{font:italic 22px var(--serif);margin-top:15px}.property-facts{grid-template-columns:1fr 1fr 1fr 1.8fr;gap:30px;margin:65px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0}.property-facts>div{flex-direction:row;align-items:baseline;gap:13px}.property-facts dt{font-size:12px;color:var(--muted)}.property-facts dd{font:34px/1.15 var(--serif);order:-1}.property-facts>div:last-child{display:block;text-align:right}.property-facts>div:last-child dd{font-size:26px;margin-bottom:7px}.levels{padding:65px var(--gutter) 110px}.section-heading{display:block;margin-bottom:38px}.section-heading h2{font-size:clamp(46px,5vw,76px);line-height:1.12;margin-top:20px}.rooms-layout{display:grid;grid-template-columns:24% 1fr;gap:7%;align-items:center}.level-tabs{display:flex;flex-direction:column;gap:0;border:0;margin:0}.level-tabs button{display:block;min-height:98px;padding:22px 0;border:0;border-top:1px solid var(--line);font:22px/1.25 var(--serif);color:var(--muted)}.level-tabs button:last-child{border-bottom:1px solid var(--line)}.level-tabs button>span{display:block;font:11px var(--sans);margin-bottom:12px;letter-spacing:.12em}.level-tabs button[aria-selected=true]{color:var(--ink);padding-left:17px;border-color:var(--line);box-shadow:inset 2px 0 #a47355}.levels-stage{height:540px}.level-panel{color:white}.level-caption{left:6%;bottom:6%;right:6%}.level-caption h3{font-size:43px;margin:10px 0 14px;line-height:1.12}.level-caption>p:last-child{font-size:14px}.shade{background:linear-gradient(0deg,#101f2baa,transparent 75%)}.experience{background:#f0efeb;padding:90px var(--gutter) 105px}.experience-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 8%;align-items:end;margin-bottom:50px}.experience-heading>.eyebrow{grid-column:1/-1}.experience-heading h2{font-size:clamp(48px,5vw,76px);line-height:1.12}.experience-heading>p:last-child{font-size:15px;line-height:1.9;max-width:270px;justify-self:end;color:var(--muted);padding-bottom:8px}.experience-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:9%;align-items:start}.padel-photo{height:540px;min-height:0;max-height:none}.gym-card{padding-top:105px}.gym-image{height:345px;min-height:0;max-height:none}.experience-caption{padding-top:25px}.experience-caption>span{font-size:11px;letter-spacing:.14em;color:var(--muted)}.experience-caption h3{font-size:38px;line-height:1.18;margin:13px 0}.experience-caption p{font-size:14px;line-height:1.8;color:var(--muted)}.equipment{padding-top:20px;gap:0 15px}.equipment button{font-size:12px;color:var(--muted);letter-spacing:0}.equipment button.active,.equipment button:hover{color:var(--ink);border-color:var(--ink)}.hotspot{background:#172c3899;width:36px;height:36px;font-size:20px}.hotspot-caption{font:14px/1.5 var(--sans);color:white}.day{background:#172c38;color:#fff;padding:85px var(--gutter) 50px}.day-heading{padding:0 0 40px;display:flex;align-items:end;justify-content:space-between;gap:40px}.day-heading h2{font-size:clamp(44px,4.8vw,72px);line-height:1.12;margin:0;text-align:right}.day-heading>.eyebrow{max-width:170px;padding-bottom:7px}.day-frames{height:570px}.day-copy{left:5%;right:5%;bottom:7%}.day-copy h3{font-size:54px;line-height:1.12;margin-bottom:14px}.day-copy>p{font-size:14px}.day-timeline{margin:22px 0 0}.day-timeline button{font:21px var(--serif);color:#d5dce0;border-color:#ffffff35}.day-timeline button[aria-selected=true]{color:#fff;border-color:#c8a180}.day-note{margin:22px 0 0;color:#b9c5cc;font-size:11px}.hospitality{padding:110px var(--gutter);grid-template-columns:1fr 1fr;gap:12%;align-items:center}.service-image{height:640px;max-height:none}.service-copy h2{font-size:clamp(43px,4.4vw,66px);line-height:1.14;margin:20px 0 30px}.service-copy>.eyebrow{margin:0}.service-moments summary{font:17px/1.5 var(--sans)}.service-moments summary span{font-style:normal;font-size:14px;color:var(--muted);margin-left:6px}.service-moments details{padding:17px 0}.service-moments details p{font-size:14px;line-height:1.8}.service-small{font-size:13px}.gallery{background:var(--ivory);color:var(--ink);padding:0 0 80px}.gallery>.section-meta{border-color:var(--line)}.gallery-heading{align-items:center;margin-top:38px;margin-bottom:22px}.gallery-heading h2{font-size:clamp(48px,5vw,76px);line-height:1.1}.gallery-categories{gap:18px}.gallery-categories button{color:var(--muted);font-size:13px}.gallery-categories button.active{color:var(--ink);border-color:var(--ink)}.gallery-track{gap:32px;align-items:start;padding-top:25px}.gallery-item{width:520px}.gallery-item.item-1{width:310px;padding-top:70px}.gallery-item.item-2{width:440px;padding-top:25px}.gallery-photo{height:350px}.gallery-item.item-1 .gallery-photo{height:390px}.gallery-caption{font-size:12px}.gallery-caption>span{color:var(--muted)}.gallery-bottom button{border-color:var(--line)}.location{background:#eeece7;padding:0;grid-template-columns:1.1fr 1fr;gap:0;align-items:stretch}.location-photo{height:570px}.location-copy{padding:75px 15%;align-self:center}.location h2{font-size:clamp(44px,4.5vw,68px);line-height:1.15;margin:25px 0}.location-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted)}.location-copy .location-note{font-size:13px!important}.stay{background:var(--ivory);color:var(--ink);padding:105px var(--gutter) 0}.stay-image,.stay-shade{display:none}.stay-content{max-width:none;display:grid;grid-template-columns:.85fr 1.3fr;gap:25px 10%;align-items:start}.stay-lead h2{font-size:clamp(56px,6vw,90px);line-height:1.1;margin:22px 0}.stay-intro{font-size:15px;line-height:1.8;color:var(--muted);margin:22px 0 0}.form-row{gap:22px}.form-row input,.form-row select{color:var(--ink);color-scheme:light;border-color:#172c3860;font-size:15px}.form-row select option{background:var(--ivory)}.form-row input::placeholder{color:#68757b}.form-row label{font-size:11px}.form-row.names{gap:22px}.submit-row{display:block;margin-top:28px}.request-button{background:var(--ink);color:white;font-size:12px;letter-spacing:.1em;min-height:52px;width:100%}.request-button:hover{background:#365361}.submit-row>p{color:var(--muted);font-size:12px;line-height:1.7;margin-top:16px}.team-link{grid-column:1;grid-row:2;width:fit-content;border-color:var(--line);font-size:13px;margin:0}.stay-content form{grid-column:2;grid-row:1/3;padding-top:9px}footer{border-color:var(--line);margin-top:85px;padding:32px 0;color:var(--ink)}footer>p{font:italic 22px var(--serif)}footer>div{color:var(--muted)}footer .brand{font-size:24px}dialog{background:#172c38}dialog::backdrop{background:#101e29df}.menu-visual:after{background:linear-gradient(90deg,#172c38,transparent)}.menu-inner nav a{font:clamp(36px,5vw,72px)/1.2 var(--serif)}.menu-inner nav a>span{color:#c8a180}.privacy-dialog h2{font-size:40px}.no-js-note{color:var(--ink)}
@media(min-width:1600px){:root{--gutter:8%}.hero-copy{top:auto}}
@media(max-width:1100px){:root{--gutter:6%}.overview-photo{margin-left:-6vw;width:calc(100% + 6vw)}.overview-layout{gap:7%;grid-template-columns:1.5fr 1fr}.overview-photo img{height:500px}.detail-photo{width:100%;margin-top:40px}.detail-photo img{height:210px}.property-facts{gap:15px}.property-facts>div{display:block}.property-facts dd{margin-bottom:6px}.rooms-layout{grid-template-columns:26% 1fr;gap:5%}.levels-stage{height:480px}.level-tabs button{font-size:20px}.experience-grid{gap:7%;grid-template-columns:1.25fr 1fr}.padel-photo{height:440px}.gym-image{height:310px}.experience-caption h3{font-size:32px}.service-image{height:560px}.hospitality{gap:8%}.service-moments summary span{display:block;margin:3px 0 0}.location-copy{padding:55px 12%}.location-photo{height:540px}.stay-content{gap:20px 7%}.hero-copy{top:auto}footer>div{width:auto}}
@media(max-width:760px){:root{--gutter:7%;--section:70px}.site-header,.site-header.scrolled{grid-template-columns:1fr auto 1fr;padding:18px 5%;gap:12px}.brand{font-size:22px;white-space:nowrap}.brand small{font-size:8px;margin-top:6px}.header-actions{gap:0}.enquire-link{font-size:10px;letter-spacing:.05em;text-transform:none;max-width:72px;text-align:right;line-height:1.5;padding:7px 0}.menu-toggle{width:32px;padding:5px 0}.menu-toggle b{display:none}.menu-toggle span{width:22px}.hero-copy{inset:auto 6% 16%;text-align:center}.hero-copy h1{font-size:clamp(42px,10.5vw,72px);line-height:1.18;margin:15px 0 0}.hero-copy h1 em{display:block}.hero-copy .eyebrow{font-size:10px;letter-spacing:.12em}.hero-bottom{left:6%;right:6%;bottom:4%;justify-content:space-between;gap:15px}.hero-bottom>span{display:none}.scroll-enter,.hero-skip{font-size:11px;letter-spacing:0}.scroll-line{height:26px}.overview{padding:65px 7% 30px}.intro-heading{margin-bottom:35px;text-align:left}.intro-heading h2{font-size:42px;line-height:1.15;margin-top:20px}.overview-layout{display:flex;flex-direction:column;gap:25px}.overview-photo{margin-left:-7vw;width:100vw}.overview-photo img{height:auto;aspect-ratio:1.15}.overview-photo figcaption{margin-left:7%;font-size:11px}.overview-copy{display:grid;grid-template-columns:1fr .7fr;gap:15px 7%;padding:0;align-items:start}.overview-copy>p{font-size:15px;line-height:1.8;grid-column:1;max-width:none}.overview-copy>.text-link{grid-column:1;font-size:11px;line-height:1.6;width:fit-content;margin-top:0}.detail-photo{grid-column:2;grid-row:1/3;margin:10px 0 0;width:100%}.detail-photo img{height:205px;object-position:46% center}.detail-photo figcaption{font-size:19px;line-height:1.3}.property-facts{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px;padding:24px 0}.property-facts>div{display:block}.property-facts dd{font-size:29px}.property-facts dt{font-size:12px}.property-facts>div:last-child{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;text-align:left;border-top:1px solid var(--line);padding-top:18px}.property-facts>div:last-child dd{font-size:23px;margin:0}.levels{padding:35px 7% 60px}.section-heading{margin-bottom:26px}.section-heading h2{font-size:40px;line-height:1.16}.rooms-layout{display:flex;flex-direction:column;gap:22px;align-items:stretch}.level-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;order:2}.level-tabs button{font-size:17px;line-height:1.25;min-height:100px;padding:13px 0;border-bottom:0}.level-tabs button:last-child{border-bottom:0}.level-tabs button>span{font-size:10px;margin-bottom:8px}.level-tabs button[aria-selected=true]{box-shadow:none;padding-left:0;border-top:2px solid #a47355}.levels-stage{height:440px;max-height:none;min-height:0}.level-caption{left:7%;bottom:7%}.level-caption h3{font-size:31px;line-height:1.2;margin:10px 0}.level-tags{font-size:10px;letter-spacing:.03em}.level-caption>p:last-child{font-size:13px}.experience{padding:55px 7% 60px}.experience-heading{display:block;margin-bottom:32px}.experience-heading h2{font-size:42px;line-height:1.15;margin:20px 0}.experience-heading>p:last-child{font-size:15px;max-width:none;padding:0}.experience-grid{display:block}.padel-photo{height:auto;aspect-ratio:1.1;min-height:0;max-height:none}.experience-caption{padding-top:20px}.experience-caption h3{font-size:32px}.experience-caption p{font-size:14px}.gym-card{width:86%;margin-left:auto;padding-top:42px}.gym-image{height:315px;min-height:0;max-height:none}.hotspot-caption{font-size:12px;bottom:15px;left:15px;right:15px}.equipment{margin:0;padding-top:13px;gap:0 13px}.equipment button{font-size:12px}.day{padding:55px 7% 30px}.day-heading{display:block;padding-bottom:28px}.day-heading>.eyebrow{max-width:none}.day-heading h2{text-align:left;font-size:40px;margin-top:20px;line-height:1.15}.day-heading h2 em{display:inline}.day-frames{height:460px;max-height:none;min-height:0;margin:0 -7vw}.day-copy{left:7%;right:7%;bottom:8%}.day-copy h3{font-size:37px;line-height:1.12}.day-copy>p{font-size:14px;max-width:260px}.day-timeline{grid-template-columns:repeat(4,1fr);gap:8px 20px;margin:15px 0 0}.day-timeline button{font-size:19px;min-height:45px}.day-note{font-size:10px;margin-top:18px}.hospitality{padding:65px 7%;display:flex;flex-direction:column-reverse;gap:35px}.service-copy{width:100%}.service-copy h2{font-size:42px;margin:20px 0 24px}.service-moments summary{font-size:16px}.service-moments summary span{display:inline;font-size:13px;margin-left:5px}.service-image{width:83%;align-self:flex-start;height:360px;max-height:none}.service-small{font-size:13px}.gallery{padding:0 0 55px}.gallery>.section-meta>span{display:none}.gallery-heading{margin-top:25px}.gallery-heading h2{font-size:42px}.gallery-categories{gap:3px 16px;margin-top:18px;max-width:none;justify-content:start}.gallery-categories button{font-size:12px}.gallery-track{padding:10px 7vw 25px;gap:22px}.gallery-item,.gallery-item.item-2{width:77vw;padding-top:0}.gallery-item.item-1{width:62vw;padding-top:35px}.gallery-photo{height:290px}.gallery-item.item-1 .gallery-photo{height:320px}.gallery-caption{font-size:11px}.location{display:flex;flex-direction:column;gap:0;padding:0}.location-photo{height:350px;width:100%}.location-copy{padding:45px 7%;width:100%}.location h2{font-size:42px;margin:20px 0;line-height:1.14}.location-copy>p:not(.eyebrow){font-size:15px}.stay{padding:60px 7% 0}.stay-content{display:block}.stay-lead h2{font-size:58px;line-height:1.12;margin:20px 0}.stay-intro{margin:18px 0 35px;font-size:15px}.stay-content form{padding:0}.form-row{grid-template-columns:1fr 1fr;gap:22px}.form-row input,.form-row select{font-size:16px}.form-row.names{grid-template-columns:1fr;gap:22px}.form-row label{font-size:11px}.team-link{font-size:13px;margin-top:18px}.submit-row>p{font-size:12px}.request-button{font-size:12px}footer{margin-top:50px;padding:30px 0;gap:25px}footer>.brand{font-size:24px}footer>p{font-size:20px}footer>div{width:100%;font-size:11px}.menu-inner{padding-top:90px}.menu-inner nav a{font-size:38px;line-height:1.2}.privacy-dialog h2{font-size:34px}}
@media(max-width:370px){.brand{font-size:20px}.enquire-link{font-size:10px}.intro-heading h2,.experience-heading h2,.service-copy h2{font-size:37px}.overview-copy{grid-template-columns:1fr}.detail-photo{grid-row:auto;grid-column:1;width:65%;margin:15px 0 0 auto}.detail-photo img{height:220px}.hero-copy h1{font-size:40px}.level-tabs button{font-size:15px}.gym-card{width:92%}.service-moments summary span{display:block;margin-left:0}.form-row{grid-template-columns:1fr}.gallery-categories button{font-size:12px}}
@media(max-height:560px) and (orientation:landscape){.site-header,.site-header.scrolled{padding-top:10px;padding-bottom:10px}.hero-copy{top:auto;bottom:19%}.hero-copy h1{font-size:52px;margin-top:8px}.hero-copy h1 em{display:inline}.hero-copy .eyebrow{font-size:10px}.hero-bottom{bottom:3%}.hero-bottom>span{font-size:10px}.scroll-line{height:22px}}
/* Keep the small navigation labels legible on handheld screens. */
@media(max-width:760px){.enquire-link{font-size:12px;max-width:82px;letter-spacing:0}.scroll-enter,.hero-skip{font-size:12px}.level-tags{font-size:12px;line-height:1.6}.gallery-categories button{font-size:13px}.form-row label{font-size:12px}.day-note{font-size:12px}}

/* The arrival resolves into a quiet welcome. */
.welcome-note{font:15px/1.8 var(--sans);color:var(--muted);margin:24px auto 0;max-width:32em}.detail-photo img{object-position:50% 50%}
@media(max-width:760px){.overview .detail-photo{grid-column:1/-1;grid-row:auto;width:100%;margin:24px 0 0}.overview .detail-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 55%}.welcome-note{max-width:23em;font-size:14px}.intro-heading{margin-bottom:44px}}

/* Final frame holds while the welcome appears, before leaving the hero. */
.arrival{height:390svh;--welcome-opacity:0}.hero-welcome{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 7%;color:white;opacity:var(--welcome-opacity);visibility:hidden;pointer-events:none;background:rgba(9,24,22,.50)}.hero-welcome .eyebrow{font-size:12px;letter-spacing:.22em}.hero-welcome h2{font-size:clamp(64px,8vw,126px);line-height:1.06;margin:18px 0 25px;letter-spacing:-.04em}.hero-welcome>p:last-child{font:15px/1.85 var(--sans);margin:0;color:#ffffffdc}.film-unavailable{height:100svh}.film-unavailable .hero-copy{visibility:hidden}.film-unavailable .hero-welcome{opacity:1;visibility:visible}
@media(max-width:760px){.arrival{height:340svh}.hero-welcome{padding:100px 6%}.hero-welcome h2{font-size:clamp(54px,15vw,78px)}.hero-welcome>p:last-child{font-size:14px}.film-unavailable{height:100svh}}
@media(prefers-reduced-motion:reduce){.arrival{height:100svh}}

/* Mobile editorial finish: one clear reading axis and comfortable touch targets. */
@media(max-width:760px){
 .site-header,.site-header.scrolled{padding:16px 6%;min-height:80px;gap:8px}
 .site-header.scrolled:not(.past-arrival){background:linear-gradient(180deg,rgba(9,24,30,.62),rgba(9,24,30,0));color:#fff;border-bottom-color:transparent;backdrop-filter:none}
 .menu-toggle{width:44px;min-height:44px;justify-content:center}
 .brand{font-size:23px}.brand small{letter-spacing:.24em}
 .enquire-link{font-size:12px;line-height:1.5;min-height:44px;display:flex;align-items:center;justify-content:flex-end;white-space:nowrap;padding:0;max-width:none;border-bottom:0;text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}
 .hero-copy{inset:auto 7% 17%;text-align:left}
 .hero-copy h1{font-size:clamp(46px,12.6vw,68px);line-height:1.04;letter-spacing:-.035em;margin-top:18px}
 .hero-copy .eyebrow{font-size:11px;line-height:1.65;letter-spacing:.14em;max-width:24em}
 .hero-bottom{left:7%;right:7%;bottom:max(26px,env(safe-area-inset-bottom));gap:12px}
 .hero-skip,.scroll-enter{min-height:44px;font-size:12px}
 .hero-welcome{padding:100px 7% 84px;background:linear-gradient(180deg,#0a1d254d,#0a1d2580 45%,#0a1d2566)}
 .hero-welcome h2{font-size:clamp(48px,14vw,72px);line-height:1.12;letter-spacing:-.035em;margin:19px 0 24px}
 .hero-welcome>p:last-child{font-size:15px;line-height:1.8;max-width:24em}
 .overview{padding-top:76px}.intro-heading{margin-bottom:38px}
 .intro-heading h2,.section-heading h2,.experience-heading h2,.day-heading h2,.service-copy h2,.location h2{font-size:clamp(36px,10.5vw,46px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance}
 .overview-copy{display:block}.overview-copy>p{font-size:16px;line-height:1.85;max-width:34em}
 .overview-copy>.text-link{display:inline-flex;align-items:center;margin-top:16px;min-height:44px;font-size:12px}
 .overview .detail-photo{margin-top:30px}.detail-photo figcaption{margin-top:13px;font-size:22px}
 .overview-photo figcaption{font-size:12px;line-height:1.6;max-width:85%}
 .property-facts{margin-top:38px;padding:27px 0;gap:22px}.property-facts dd{font-size:32px}.property-facts dt{line-height:1.5}
 .levels{padding-top:48px;padding-bottom:68px}.level-caption{left:7%;right:7%;bottom:7%}.level-caption h3{font-size:32px;line-height:1.15;max-width:10em}.level-caption>p:last-child{font-size:14px;line-height:1.65}.level-tags{font-size:11px;letter-spacing:.06em;line-height:1.7;max-width:26em}
 .level-panel .shade,.day-frame .shade{background:linear-gradient(0deg,rgba(7,20,27,.83),rgba(7,20,27,.28) 45%,transparent 75%)}
 .level-tabs button{font-size:17px;line-height:1.4;min-height:98px}.level-tabs button>span{font-size:11px}
 .experience{padding-top:64px;padding-bottom:68px}.experience-heading>p:last-child{text-align:left;font-size:16px;line-height:1.85;margin-top:22px}
 .experience-caption h3{font-size:34px;line-height:1.18;text-wrap:balance}.experience-caption p{font-size:15px;line-height:1.8}
 .gym-card{width:100%;margin:0;padding-top:42px}.gym-image{height:auto;aspect-ratio:1.1}.hotspot-caption{font-size:13px;line-height:1.5;max-width:24em}.equipment{gap:3px 17px}.equipment button{min-height:42px;font-size:13px}
 .day{padding-top:65px}.day-copy{bottom:32px}.day-copy h3{font-size:clamp(31px,9vw,40px);line-height:1.16;max-width:10em;text-wrap:balance}.day-copy>p{font-size:15px;line-height:1.7;max-width:23em}.day-timeline{column-gap:12px}.day-timeline button{min-height:48px;font-size:20px}
 .hospitality{padding-top:68px;padding-bottom:68px}.service-image{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.service-moments summary{font-size:16px;line-height:1.6}.service-moments summary span{display:block;margin:4px 0 0;font-size:14px}.service-moments details p{font-size:15px;line-height:1.8}.service-small{font-size:14px;line-height:1.8}
 .gallery-heading{display:block}.gallery-categories{gap:4px 18px}.gallery-categories button{min-height:44px;font-size:13px}.gallery-caption{font-size:12px;line-height:1.6}.gallery-caption b{font-weight:400}.gallery-caption>span{display:none}.gallery-bottom button{min-height:44px}
 .location-copy{padding-top:52px;padding-bottom:56px}.location-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}.location-copy .location-note{font-size:14px!important;line-height:1.8}
 .stay{padding-top:68px}.stay-intro{font-size:16px;line-height:1.8}.form-row label{font-size:12px;line-height:1.6}.form-row input,.form-row select{min-height:52px}.submit-row>p{font-size:13px;line-height:1.75}.team-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center}
 footer{align-items:flex-start;gap:22px;padding-bottom:max(32px,env(safe-area-inset-bottom))}footer .brand{text-align:left}footer .brand small{text-align:left}footer>div{font-size:12px;line-height:1.7;gap:18px}footer button{min-height:44px;font-size:12px}
}
