@import "https://fonts.googleapis.com/css2?family=Allura&family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap";:root{--ink:#30251d;--dark:#2e251f;--gold:#bf8d3e;--gold-light:#d1a052;--paper:#fbf9f5;--line:#4734232e;--serif:"Playfair Display", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--paper);min-width:320px;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer;border:0}img{max-width:100%;display:block}.site-shell{width:100%}.site-header{height:82px;color:var(--ink);z-index:100;isolation:isolate;background:#f4eee5;border-bottom:1px solid #48332114;justify-content:space-between;align-items:center;padding:12px clamp(24px,6.8vw,108px);display:flex;position:sticky;top:0;box-shadow:0 8px 24px #281c140f}.brand img{object-fit:contain;filter:drop-shadow(0 2px 5px #23181038);width:128px;height:70px}.main-nav{align-items:center;gap:42px;margin-left:auto;margin-right:52px;display:flex}.main-nav button,.site-footer nav button{color:inherit;letter-spacing:.02em;background:0 0;transition:color .3s}.main-nav button{font-size:16px;font-weight:500}.main-nav button:hover,.site-footer nav button:hover{color:var(--gold)}.button{text-transform:uppercase;letter-spacing:.06em;border-radius:28px;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:0 25px;font-size:10px;font-weight:600;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s,color .3s,box-shadow .3s;display:inline-flex}.menu-booking{display:none}.header-cta{min-height:48px;padding-inline:28px;font-size:14px}.header-cta svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.button:hover{transform:translateY(-3px);box-shadow:0 12px 25px #2d221926}.button-dark{background:var(--dark);color:#fff}.button-gold{background:var(--gold);color:#fff}.button-gold:hover{background:#aa7931}.button-outline-light{color:#fff;background:0 0;border:1px solid #ffffffa6}.menu-button{color:inherit;background:0 0;place-items:center;width:48px;height:48px;padding:0;display:none}.menu-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.menu-icon-open,.menu-button[aria-expanded=true] .menu-icon-closed{display:none}.menu-button[aria-expanded=true] .menu-icon-open{display:block}.section-dark{color:#fff;background:var(--dark)}.hero{isolation:isolate;align-items:center;height:calc(100svh - 82px);min-height:560px;display:flex;position:relative}.hero-image,.spa-feature>picture>img,.cta-banner>picture>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-image{object-position:center center;z-index:0}.hero-brand-mark{z-index:2;object-fit:contain;opacity:.92;filter:drop-shadow(0 4px 10px #23181029);pointer-events:none;width:190px;height:190px;position:absolute;top:41%;left:40%;transform:translate(-50%,-50%)}.hero-shade{z-index:1;background:linear-gradient(90deg,#2c1e157a 0%,#2c1e152e 45%,#2c1e1508 100%);position:absolute;inset:0}.hero-content{z-index:2;width:min(650px,80%);margin-top:-22px;margin-left:clamp(28px,9vw,140px);position:relative}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;margin:0 0 16px;font-size:10px;font-weight:600}.eyebrow.light{color:#e0ba70}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h1{letter-spacing:-.055em;margin-bottom:18px;font-size:clamp(42px,4.4vw,68px);line-height:1.04}h1 em{font-style:italic}.title-highlight{z-index:0;isolation:isolate;color:#fff;white-space:nowrap;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.14em .09em .12em .08em;margin-inline:.04em;padding:.03em .14em .08em;line-height:1;display:inline-block;position:relative;box-shadow:0 .04em #bf8d3e,0 -.03em #bf8d3e;background-color:#bf8d3e!important}.title-highlight:before{content:"";z-index:-1;background:var(--gold);transform-origin:0;will-change:transform;border-radius:.14em .09em .12em .08em;transition:transform .8s cubic-bezier(.22,1,.36,1);position:absolute;inset:.08em -.08em .02em;transform:scaleX(0)}.hero-content.is-visible .title-highlight:before{transform:scaleX(1)}.hero-copy{color:#ffffffd1;font-size:14px;line-height:1.6}.hero-actions{gap:15px;margin-top:28px;display:flex}.hero-note{z-index:2;letter-spacing:.22em;text-transform:uppercase;color:#fff;font-size:10px;line-height:1.9;position:absolute;bottom:72px;right:clamp(28px,10vw,160px)}.hero-note span{color:#e0ba70}.hero-note:after{content:"";background:#fff;width:25px;height:1px;margin-top:12px;display:block}.scroll-cue{z-index:2;color:#ffffffb8;text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:8px;font-size:9px;display:flex;position:absolute;bottom:23px;left:50%;transform:translate(-50%)}.scroll-cue span{background:var(--gold-light);border-radius:100%;width:5px;height:5px;animation:2s ease-in-out infinite pulse}.values-strip{background:#f7f3ed;grid-template-columns:repeat(3,1fr);align-items:center;min-height:128px;padding:16px clamp(28px,8vw,120px);display:grid}.values-strip>div{border-right:1px solid var(--line);min-height:67px;color:var(--value-accent,var(--gold));justify-content:center;align-items:center;gap:clamp(16px,2vw,28px);padding:14px clamp(18px,2.5vw,38px);transition:background-color .35s,box-shadow .35s;display:flex}.values-strip>div:last-child{border-right:0}.values-strip>div:hover{box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--value-accent,var(--gold)) 45%, transparent);background:#ffffff61}.values-strip .value-care{--value-accent:#7f9a70}.values-strip .value-design{--value-accent:#bf8d3e}.values-strip .value-unwind{--value-accent:#b97878}.values-strip .value-icon{flex:none;transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .35s}.values-strip>div:hover .value-icon{filter:drop-shadow(0 5px 5px #49342521);transform:translateY(-3px)rotate(-5deg)scale(1.08)}.values-strip span{flex-direction:column;gap:8px;display:flex}.values-strip strong{color:var(--ink);font-family:var(--serif);font-size:clamp(17px,1.5vw,22px);font-weight:400;line-height:1.15}.values-strip small,.cta-copy>p,.service-meta p{color:#786a5d;text-transform:uppercase;letter-spacing:.16em;font-size:clamp(10px,.75vw,12px);line-height:1.45}.section-light{background:var(--paper)}.section-padding{padding:86px clamp(24px,5vw,78px)}.section-heading{text-align:center;margin:0 auto 45px}.section-heading h2,.gallery-intro h2{letter-spacing:-.045em;margin-bottom:12px;font-size:clamp(34px,3.4vw,50px);line-height:1.1}.section-heading h2:after,.gallery-intro h2:after{content:"";background:var(--gold);width:27px;height:1px;margin:18px auto 0;display:block}.section-heading>p:last-child,.gallery-intro>p:last-child{color:#77695b;font-size:14px}.ritual{background:#faf6f0}.ritual-grid{grid-template-columns:repeat(5,1fr);gap:28px;max-width:1200px;margin:0 auto;display:grid}.ritual-card{min-width:0;transition:transform .4s;transition-delay:var(--delay)}.ritual-card:hover{transform:translateY(-8px)}.ritual-image-wrap{aspect-ratio:1;border-radius:50%;margin-bottom:0;line-height:0;position:relative;overflow:hidden}.ritual-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.75,.2,1);display:block}.service-image-wrap img,.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.75,.2,1)}.ritual-card:hover img,.service-card:hover img,.gallery-item:hover img{transform:scale(1.07)}.ritual-number{z-index:1;width:max-content;color:var(--gold);font-family:var(--serif);margin:-16px 0 0 6px;font-size:27px;line-height:1;display:block;position:relative}.ritual-card h3{color:#75695f;font-family:var(--serif);margin:10px 0 8px;font-size:clamp(22px,1.8vw,27px);font-weight:400;line-height:1.05}.ritual-card p{color:#8a7d71;max-width:180px;margin:0;font-size:14px;line-height:1.55}.services{border-top:1px solid #4734231f;padding-top:73px;overflow:hidden}.services-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:12px;min-width:0;max-width:1260px;margin:0 auto;display:grid}.service-card{text-align:left;width:100%;min-width:0;color:var(--ink);transition:transform .4s;transition-delay:var(--delay);background:0 0;align-self:start;padding:0}.service-image-wrap{aspect-ratio:480/370;background:#e5d9cb;width:100%;height:185px;position:relative;overflow:hidden}.service-image-wrap span{opacity:0;color:#fff;text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:5px;font-size:9px;transition:opacity .3s;display:flex;position:absolute;inset:auto 13px 12px auto}.service-card:hover .service-image-wrap span{opacity:1}.service-meta{min-height:58px;padding:12px 9px 0}.service-meta h3{min-width:0;font-family:var(--serif);overflow-wrap:anywhere;margin-bottom:6px;font-size:15px;font-weight:400}.service-meta p{color:var(--gold);margin:0}.spa-feature{isolation:isolate;align-items:center;min-height:372px;display:flex;position:relative}.spa-feature>picture>img{z-index:-2;object-position:center}.spa-overlay{z-index:-1;background:linear-gradient(90deg,#fff7edc7 0%,#fff7ed61 42%,#fff7ed0a 72%);position:absolute;inset:0}.spa-copy{width:min(515px,70%);color:var(--ink);margin-left:clamp(28px,5vw,78px)}.spa-copy h2,.cta-copy h2{letter-spacing:-.05em;margin-bottom:15px;font-size:clamp(34px,3.4vw,52px);line-height:1.12}.spa-copy>p{color:#65594f;max-width:500px;font-size:16px;line-height:1.7}.spa-copy small{text-transform:uppercase;letter-spacing:.18em;color:#65594f;margin-top:25px;font-size:8px;display:block}.gallery-section{grid-template-columns:1fr 3fr;align-items:center;gap:42px;padding-block:68px;display:grid}.gallery-intro{padding-left:clamp(0px,3vw,42px)}.gallery-intro h2:after{margin:17px 0 0}.gallery-intro>p:last-child{max-width:140px;margin-top:20px;line-height:1.5}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.gallery-item{border:0;height:175px;padding:0;overflow:hidden}.visit-section{grid-template-columns:1.1fr 2.15fr .72fr;align-items:center;gap:16px;min-height:285px;padding:42px 24px 42px calc(19% + clamp(14px,2vw,28px));display:grid;position:relative;overflow:hidden}.visit-blur{z-index:0;width:19.2%;position:absolute;inset:0 auto 0 0;overflow:hidden}.visit-blur img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.visit-info,.map-card,.visit-mantra{z-index:1;position:relative}.visit-info h2{margin-bottom:20px;font-size:clamp(36px,3.4vw,42px)}.visit-info h2:after{content:"";background:var(--gold);width:27px;height:1px;margin-top:17px;display:block}.contact-list{gap:10px;display:grid}.contact-list p{color:#65594f;align-items:flex-start;gap:12px;margin:0;font-size:13px;line-height:1.55;display:flex}.contact-list svg{color:var(--gold);flex:none;margin-top:1px}.contact-list a{color:inherit;text-decoration:none}.map-card{background:#ebe9e4;border:0;min-height:195px;position:relative;overflow:hidden}.visit-map-image{object-fit:cover;object-position:center;width:100%;height:100%;min-height:195px;display:block}.map-pin{color:var(--gold);filter:drop-shadow(0 4px 3px #3729192e);position:absolute;top:41%;left:57.5%;transform:translate(-50%,-50%)}.map-label{color:#564e45;white-space:nowrap;font-size:10px;position:absolute;top:37%;left:63%}.visit-mantra{color:#8a6d48;text-align:center;justify-self:end;width:100%;max-width:122px}.visit-mantra span{font-family:Allura,Segoe Script,cursive;font-size:clamp(25px,2.25vw,34px);line-height:.88;display:block}.visit-mantra i,.cta-note i{background:var(--gold);width:28px;height:1px;margin:18px 0 0 auto;display:block}.visit-mantra i{margin:16px auto 0}.cta-banner{isolation:isolate;align-items:center;min-height:270px;display:flex;position:relative}.cta-banner>picture>img{z-index:-2;object-position:center}.cta-overlay{z-index:-1;background:linear-gradient(90deg,#fff7ed0f,#fff7ed00 75%);position:absolute;inset:0}.cta-copy{margin-left:clamp(28px,19vw,280px)}.cta-copy h2{margin-bottom:8px}.cta-copy>p:not(.eyebrow){text-transform:uppercase;letter-spacing:.2em;color:#786a5d;margin-bottom:23px;font-size:9px}.cta-note{color:#fff;text-transform:uppercase;letter-spacing:.22em;font-size:9px;line-height:2;position:absolute;bottom:48px;right:clamp(28px,8vw,120px)}.cta-note span{color:#e0ba70}.site-footer{background:var(--dark);color:#d9cbb8;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:20px;min-height:166px;padding:24px clamp(24px,7vw,110px) 17px;display:grid}.footer-brand{justify-content:center;align-items:center;width:132px;height:102px;display:flex;overflow:hidden}.footer-brand img{object-fit:contain;width:124px;height:96px}.site-footer nav{justify-content:center;gap:37px;display:flex}.site-footer nav button{color:#d9cbb8;font-size:10px}.footer-bottom{color:#ffffff8c;border-top:1px solid #ffffff24;grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:13px;font-size:9px;display:flex}.footer-bottom span:last-child{color:#dfb770;gap:14px;display:flex}.reveal{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0s);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:none}.modal-backdrop{z-index:50;backdrop-filter:blur(8px);background:#241b14a8;place-items:center;padding:20px;animation:.3s fadeIn;display:grid;position:fixed;inset:0}.booking-modal{background:#fbf7f1;width:min(100%,475px);padding:40px;animation:.45s cubic-bezier(.2,.8,.2,1) modalIn;position:relative;box-shadow:0 22px 70px #00000038}.modal-close{width:30px;height:30px;color:var(--ink);background:#efe6d9;border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.booking-modal h2{letter-spacing:-.05em;margin:0 0 12px;font-size:39px}.booking-modal>p:not(.eyebrow){color:#77695b;margin-bottom:25px;font-size:13px;line-height:1.5}.booking-modal form{gap:14px;display:grid}.booking-modal label{color:#75695e;text-transform:uppercase;letter-spacing:.12em;gap:7px;font-size:9px;display:grid}.booking-modal input,.booking-modal select{border:1px solid var(--line);width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:#fffdf9;border-radius:0;outline:none;padding:12px 13px;font-size:13px}.booking-modal input:focus,.booking-modal select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #bf8d3e21}.booking-modal .button{margin-top:8px}@keyframes pulse{0%,to{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.35)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}@media (width<=900px){.site-header{padding-inline:24px}.main-nav{gap:22px;margin-right:24px}.ritual-grid,.services-grid{gap:14px}.service-image-wrap{height:155px}.gallery-section{grid-template-columns:1fr}.gallery-intro{text-align:center;padding:0}.gallery-intro h2:after{margin-inline:auto}.gallery-intro>p:last-child{max-width:none}.visit-section{grid-template-columns:1fr 1.4fr;padding-left:24%}.visit-mantra{display:none}}@media (width<=680px){#ritual,#services,#gallery,#visit{scroll-margin-top:82px}.site-header{height:74px;padding-inline:16px}.brand img{width:98px;height:58px}.header-cta{display:none}.menu-button{display:grid}.main-nav{color:var(--ink);opacity:0;visibility:hidden;pointer-events:none;will-change:transform,opacity;background:#f4eee5;gap:0;margin:0;padding:10px 24px 20px;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .3s,visibility 0s linear .45s;display:grid;position:absolute;top:73px;left:0;right:0;transform:translateY(-12px);box-shadow:0 15px 22px #281c1414}.main-nav.open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.main-nav button{text-align:left;border-bottom:1px solid var(--line);padding:16px 0;font-size:18px}.main-nav .menu-booking{text-align:center;border:0;justify-content:center;width:100%;min-height:46px;margin-top:13px;font-size:12px;display:inline-flex}.hero{align-items:center;height:calc(100svh - 74px);min-height:494px;max-height:none;padding:30px 0 70px}.hero-image{object-position:center center}.hero-brand-mark{display:none}.hero-content{text-align:center;width:min(100% - 32px,460px);margin:0 auto}h1{font-size:clamp(40px,11vw,47px);line-height:1.02}.hero-shade{background:linear-gradient(90deg,#2c1e154d 0%,#2c1e151a 58%,#2c1e1500 100%)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}.hero-actions .button{backdrop-filter:blur(3px);background:#2e251f29;padding-inline:17px}.hero-actions .button-gold{background:#bf8d3eeb}.hero-note,.scroll-cue{display:none}.values-strip{grid-template-columns:1fr;padding:10px 20px}.values-strip>div{border-right:0;border-bottom:1px solid var(--line);justify-content:center;gap:14px;min-height:82px;padding:18px 8px}.values-strip>div:last-child{border-bottom:0}.values-strip span{text-align:center;align-items:center;gap:7px}.values-strip strong{font-size:18px}.values-strip small{letter-spacing:.12em;font-size:11px}.values-strip>div:hover{box-shadow:none;background:0 0}.values-strip>div:hover .value-icon{filter:none;transform:none}.section-padding{padding:66px 21px}.ritual-grid{scroll-snap-type:x mandatory;scrollbar-width:none;align-items:flex-start;gap:20px;margin-inline:-13px;padding:0 21px 16px;display:flex;overflow-x:auto}.ritual-card{scroll-snap-align:start;flex-direction:column;flex:0 0 72vw;align-self:flex-start;display:flex}.ritual-image-wrap{aspect-ratio:1;flex:none;width:100%;max-width:none}.services-grid{grid-template-columns:repeat(2,1fr);gap:23px 10px}.service-image-wrap{height:150px}.service-card:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 5px)}.spa-feature{align-items:flex-end;min-height:590px;padding:55px 28px}.spa-feature>img{object-position:30% center}.spa-overlay{background:linear-gradient(#fff7ed14 28%,#fff7ed85 62%,#fff7edc7 100%)}.spa-copy{width:auto;max-width:320px;margin:0}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item{height:145px}.visit-section{grid-template-columns:1fr;padding:56px 28px}.visit-blur{opacity:.08;width:100%}.map-card{min-height:180px}.cta-banner{align-items:flex-end;min-height:520px;padding:50px 28px 70px}.cta-banner>img{object-position:24% center}.cta-overlay{background:linear-gradient(90deg,#fff7edd6 0%,#fff7ed8c 47%,#fff7ed1f 82%)}.cta-copy{max-width:330px;margin:0}.cta-note{display:none}.site-footer{text-align:center;grid-template-columns:1fr;justify-items:center;padding-top:34px}.site-footer nav{flex-wrap:wrap;gap:19px}.footer-bottom{flex-direction:column-reverse;gap:12px;width:100%}.booking-modal{padding:33px 24px 26px}.spa-feature{background:var(--paper);flex-direction:column;align-items:stretch;min-height:0;padding:0;display:flex}.spa-feature>picture>img{object-fit:cover;object-position:center;z-index:0;width:100%;height:260px;position:relative;inset:auto}.spa-overlay{display:none}.spa-copy{order:2;width:auto;max-width:none;margin:0;padding:40px 28px 46px}.spa-copy>p{max-width:none;font-size:16px;line-height:1.7}.cta-banner{background:var(--paper);flex-direction:column;align-items:stretch;min-height:0;padding:0;display:flex}.cta-banner>picture>img{object-fit:cover;object-position:center;z-index:0;width:100%;height:220px;position:relative;inset:auto}.cta-overlay{display:none}.cta-copy{background:var(--paper);order:2;max-width:none;margin:0;padding:34px 28px 46px}.main-nav .menu-booking{background:var(--gold);color:#fff;letter-spacing:.06em;font-weight:600}.main-nav .menu-booking:hover{color:#fff;background:#aa7931}.main-nav .menu-booking svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.hero{align-items:flex-end;padding:0 0 34px}.hero-content{margin:0 auto}.hero-actions{flex-direction:column;align-items:center;gap:10px}.hero-actions .button{justify-content:center;width:min(100%,260px)}.ritual-grid{scroll-snap-type:none;grid-template-columns:1fr;align-items:start;gap:38px;width:min(100%,420px);margin-inline:auto;padding:0;display:grid;overflow:visible}.ritual-grid::-webkit-scrollbar{display:none}.ritual-card{text-align:center;scroll-snap-align:none;flex-direction:column;flex:none;align-self:start;align-items:center;width:100%;display:flex}.ritual-grid .ritual-card.reveal{transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transform:translateY(24px)}.ritual-grid .ritual-card.reveal.is-visible{transform:none}.ritual-image-wrap{width:min(74vw,280px);max-width:none}.ritual-number{margin:-16px auto 0}.ritual-card h3{color:#75695f;margin-top:10px;font-size:25px;font-weight:400}.ritual-card p{color:#8a7d71;max-width:260px;font-size:14px;line-height:1.6}}.services-grid{gap:18px}.service-card{transition:transform .5s cubic-bezier(.2,.75,.2,1),opacity .8s}.service-card:hover{transform:translateY(-9px)}.service-image-wrap{isolation:isolate}.service-image-wrap:after{content:"";z-index:1;pointer-events:none;opacity:0;background:linear-gradient(135deg,#ffffff2e,#0000 45%,#2e251f33);transition:opacity .45s;position:absolute;inset:0}.service-image-wrap img{z-index:0;transition:transform .9s cubic-bezier(.2,.75,.2,1),filter .45s;position:relative}.service-card:hover .service-image-wrap:after{opacity:1}.service-card:hover .service-image-wrap img{filter:saturate(1.06)contrast(1.03);transform:scale(1.06)}.service-image-wrap span{z-index:2;transition:opacity .35s,transform .35s;transform:translateY(5px)}.service-meta{border-bottom:1px solid var(--line);transition:border-color .35s,padding-inline .35s}.service-meta h3{font-size:clamp(18px,1.45vw,21px);line-height:1.15}.service-card:hover .service-meta{border-color:var(--gold)}@media (width<=680px){.services-grid{grid-template-columns:1fr;gap:24px;width:min(100%,420px);margin-inline:auto}.service-card,.service-card:last-child{text-align:center;grid-column:auto;justify-self:stretch;width:100%}.service-image-wrap{aspect-ratio:1;height:auto}.service-meta{flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:14px 0 16px}.service-meta h3{font-size:23px;line-height:1.15}.service-meta p{font-size:11px}.service-card:hover{transform:translateY(-4px)}}.main-nav button{font-size:17px}.button{font-size:11px}.header-cta{font-size:15px}.eyebrow{font-size:11px}.hero-copy{font-size:16px;line-height:1.65}.hero-note{font-size:11px}.scroll-cue{font-size:10px}.values-strip strong{font-size:clamp(19px,1.6vw,24px)}.values-strip small,.cta-copy>p,.service-meta p{font-size:clamp(11px,.85vw,13px)}.section-heading h2,.gallery-intro h2{font-size:clamp(37px,3.5vw,52px)}.section-heading>p:last-child,.gallery-intro>p:last-child{font-size:16px;line-height:1.6}.ritual-card h3{font-size:clamp(24px,1.9vw,30px);line-height:1.1}.ritual-card p{font-size:16px;line-height:1.6}.service-image-wrap span{font-size:10px}.service-meta h3{font-size:clamp(19px,1.55vw,22px)}.service-meta p{font-size:13px}.spa-copy h2,.cta-copy h2{font-size:clamp(37px,3.5vw,54px)}.spa-copy small{font-size:10px}.contact-list p{font-size:15px}.map-label,.cta-copy>p:not(.eyebrow),.cta-note{font-size:11px}.booking-modal>p:not(.eyebrow){font-size:15px}.booking-modal label{font-size:10px}.booking-modal input,.booking-modal select{font-size:14px}@media (width<=680px){.main-nav button{font-size:20px}.main-nav .menu-booking{font-size:13px}.hero-copy{font-size:16px}.values-strip strong{font-size:20px}.values-strip small{font-size:12px}.section-heading h2,.gallery-intro h2{font-size:clamp(38px,10vw,46px)}.section-heading>p:last-child,.gallery-intro>p:last-child{font-size:16px}.ritual-card h3{font-size:27px}.ritual-card p{font-size:16px}.service-meta h3{font-size:24px}.service-meta p{font-size:13px}.spa-copy h2,.cta-copy h2{font-size:clamp(38px,10vw,48px)}.spa-copy>p{font-size:17px}.contact-list p{font-size:15px}.map-label{font-size:12px}.cta-copy>p:not(.eyebrow){font-size:11px}.site-footer nav button{font-size:12px}.footer-bottom{font-size:11px}.booking-modal>p:not(.eyebrow),.booking-modal input,.booking-modal select{font-size:15px}}.site-footer nav button{font-size:14px}.footer-bottom{font-size:12px}.visit-map-image{image-rendering:auto}@media (width<=680px){.gallery-grid{grid-template-columns:1fr;gap:16px}.gallery-item{aspect-ratio:16/9;height:auto}.site-footer nav button{font-size:14px}.footer-bottom{font-size:12px}}.service-meta{flex-direction:column;align-items:flex-start;min-height:86px;display:flex}.service-meta h3{align-items:flex-start;min-height:2.3em;margin-bottom:6px;display:flex}@media (width<=680px){.service-meta{align-items:center;min-height:96px}.service-meta h3{text-align:center;justify-content:center;width:100%}.section-heading>p:last-child,.gallery-intro>p:last-child,.ritual-card p{font-size:18px;line-height:1.65}.service-meta p{font-size:14px}.spa-copy>p{font-size:18px;line-height:1.7}.button{font-size:13px}.site-footer nav button{font-size:16px}.footer-bottom{font-size:14px;line-height:1.5}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}.title-highlight:before{transform:scaleX(1)}}.hero-image{transform-origin:50%;animation:14s ease-out both heroDrift}.hero-content .eyebrow,.hero-content h1,.hero-content .hero-actions{opacity:0;transition:opacity .65s,transform .75s cubic-bezier(.2,.75,.2,1);transform:translateY(16px)}.hero-content .eyebrow{transition-delay:80ms}.hero-content h1{transition-delay:.18s}.hero-content .hero-actions{transition-delay:.3s}.hero-content.is-visible .eyebrow,.hero-content.is-visible h1,.hero-content.is-visible .hero-actions{opacity:1;transform:none}.hero-content.is-visible .title-highlight:before,.spa-copy.is-visible .title-highlight:before{transform:scaleX(1)}.section-heading>*,.gallery-intro>*{opacity:0;transition:opacity .6s,transform .7s cubic-bezier(.2,.75,.2,1);transform:translateY(14px)}.section-heading>:first-child,.gallery-intro>:first-child{transition-delay:40ms}.section-heading>:nth-child(2),.gallery-intro>:nth-child(2){transition-delay:.12s}.section-heading>:nth-child(3),.gallery-intro>:nth-child(3){transition-delay:.2s}.section-heading.is-visible>*,.gallery-intro.is-visible>*{opacity:1;transform:none}.value-item.is-visible .value-icon{animation:valueIconIn .7s cubic-bezier(.2,.75,.2,1) var(--delay,0s) both}.ritual-card.is-visible .ritual-image-wrap,.gallery-item.is-visible,.map-card.is-visible{animation:softScaleIn .8s cubic-bezier(.2,.75,.2,1) var(--delay,0s) both}.ritual-card.is-visible .ritual-number{animation:riseIn .55s ease var(--delay,0s) both;animation-delay:calc(var(--delay,0s) + .12s)}.ritual-card.is-visible h3{animation:riseIn .55s ease var(--delay,0s) both;animation-delay:calc(var(--delay,0s) + .18s)}.ritual-card.is-visible p{animation:riseIn .55s ease var(--delay,0s) both;animation-delay:calc(var(--delay,0s) + .24s)}.service-card.is-visible .service-image-wrap{animation:softScaleIn .75s cubic-bezier(.2,.75,.2,1) var(--delay,0s) both}.service-card.is-visible .service-meta{animation:riseIn .55s ease var(--delay,0s) both;animation-delay:calc(var(--delay,0s) + .12s)}.service-image-wrap span{transform:translateY(6px)}.service-card:hover .service-image-wrap span{transform:none}.button svg{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.button:hover svg{transform:translate(2px,-2px)}.spa-feature>picture>img{animation:16s ease-out both spaImageDrift}.spa-copy.reveal{transform:translate(-24px)translateY(12px)}.spa-copy.reveal.is-visible{transform:none}.spa-copy.is-visible .button{animation:.55s .18s both riseIn}.spa-copy.is-visible small{animation:.55s .26s both riseIn}.map-card.is-visible .map-pin{animation:.8s cubic-bezier(.2,.8,.2,1) .18s both pinBounce}.cta-banner>picture>img{animation:16s ease-out both ctaImageDrift}.cta-copy.is-visible .button{animation:.55s .18s both riseIn}.cta-note{opacity:0}.cta-copy.is-visible~.cta-note{animation:.8s .3s both riseIn}@keyframes heroDrift{0%{transform:scale(1.02)}to{transform:scale(1.08)}}@keyframes spaImageDrift{0%{transform:scale(1.02)}to{transform:scale(1.06)}}@keyframes ctaImageDrift{0%{transform:scale(1.02)}to{transform:scale(1.06)}}@keyframes softScaleIn{0%{opacity:0;transform:scale(.975)}to{opacity:1;transform:none}}@keyframes riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes valueIconIn{0%{opacity:0;transform:translateY(8px)scale(.86)}to{opacity:1;transform:none}}@keyframes pinBounce{0%{opacity:0;transform:translate(-50%,-65%)scale(.7)}60%{opacity:1;transform:translate(-50%,-42%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (width<=680px){.hero-image{animation-duration:18s}.spa-feature>picture>img,.cta-banner>picture>img{animation-duration:20s}.spa-copy.reveal{transform:translateY(18px)}.spa-copy.reveal.is-visible{transform:none}.cta-note{animation:none}}@media (prefers-reduced-motion:reduce){.hero-image,.spa-feature>picture>img,.cta-banner>picture>img,.value-item.is-visible .value-icon,.ritual-card.is-visible .ritual-image-wrap,.ritual-card.is-visible .ritual-number,.ritual-card.is-visible h3,.ritual-card.is-visible p,.service-card.is-visible .service-image-wrap,.service-card.is-visible .service-meta,.map-card.is-visible .map-pin,.cta-note{animation:none!important}.hero-content>*,.section-heading>*,.gallery-intro>*,.ritual-card,.ritual-card .ritual-number,.ritual-card h3,.ritual-card p,.service-card,.service-card .service-meta,.spa-copy,.spa-copy .button,.spa-copy small,.gallery-item,.map-card,.cta-copy .button,.cta-note{opacity:1!important;transition:none!important;transform:none!important}}
