@import url('/assets/fonts.css');
:root{--paper:var(--ivory);--cream:var(--brand-cream);--wine:var(--bordeaux);--wine-deep:var(--bordeaux);--gold:var(--patinated-gold);--ink:var(--bordeaux);--muted:var(--bordeaux);--line:var(--brand-line);--serif:'Marcellus',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.75 var(--sans);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}button{color:inherit}::selection{background:var(--wine);color:var(--paper)}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,.serif{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(44px,5.4vw,83px);letter-spacing:-.035em}h2{font-size:clamp(35px,4.1vw,61px);letter-spacing:-.028em}h3{font-size:30px}em{font-style:normal;color:var(--wine)}.shell{width:min(1260px,calc(100% - 104px));margin-inline:auto}.narrow{width:min(1080px,calc(100% - 104px));margin-inline:auto}.eyebrow{font-size:14px;line-height:1.6;font-weight:600;letter-spacing:.19em;text-transform:uppercase}.muted{color:var(--muted)}.gold{color:var(--gold)}.section{padding-block:112px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:50px;padding:14px 24px;border:1px solid var(--wine);background:var(--wine);color:var(--ivory);font-size:14px;font-weight:600;letter-spacing:.045em;transition:background .2s,transform .2s}.button:hover{background:var(--wine-deep);transform:translateY(-2px)}.button svg,.text-link svg{width:22px;height:16px;flex-shrink:0}.button.light{background:var(--paper);border-color:var(--paper);color:var(--wine)}.button.light:hover{background:var(--ivory)}.button.outline{color:var(--wine);background:transparent}.button.outline:hover{background:var(--cream)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px;line-height:1.5}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:31px}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:white;padding:14px}.skip:focus{top:10px}.header{height:98px;position:sticky;top:0;z-index:20;background:rgba(247,243,236,.97);border-bottom:1px solid rgba(161,123,69,.16)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;width:145px;flex-shrink:0}.brand img{width:140px;height:88px;object-fit:contain}.nav{display:flex;gap:31px;align-items:center;margin-left:auto}.nav>a{font-size:14px;letter-spacing:.045em;position:relative}.nav>a:after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:1px;background:var(--wine);transition:width .2s}.nav>a:hover:after{width:100%}.header-end{display:flex;align-items:center;gap:25px}.language{font-size:14px;letter-spacing:.12em;white-space:nowrap}.language span{opacity:.35;margin-inline:5px}.language a{opacity:.6}.header .button{min-height:43px;padding:10px 19px;font-size:14px}.menu-button{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px}.menu-button span{height:1px;background:var(--wine);display:block;margin:7px 0}.hero{padding-block:56px 76px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;gap:56px;align-items:center}.hero-copy{padding-block:15px 36px;position:relative;z-index:2}.hero h1{max-width:600px;margin-top:25px}.hero h1 span{display:block}.hero-copy>p:not(.eyebrow){max-width:390px;font-size:14px;color:var(--muted);margin-top:25px}.hero-bottom{display:flex;align-items:center;gap:12px;margin-top:42px;font-size:14px;letter-spacing:.035em;color:var(--muted)}.hero-bottom:before{content:'';width:32px;height:1px;background:var(--gold)}.hero-pictures{position:relative;padding:0 0 56px 54px}.hero-main{width:100%;height:min(40vw,560px);min-height:430px;border-radius:47% 47% 0 0;object-fit:cover;object-position:58% 50%}.hero-inset{position:absolute;left:-36px;bottom:0;width:49%;height:208px;object-fit:cover;border:8px solid var(--paper)}.photo-label{position:absolute;right:0;bottom:17px;text-transform:uppercase;font-size:14px;letter-spacing:.18em;max-width:200px;text-align:right}.hero-decoration{position:absolute;right:-29px;top:52px;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:25px}.promise-strip{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding-block:20px;font-size:14px;letter-spacing:.1em;text-transform:uppercase;text-align:center;gap:20px}.promise-strip span+span{border-left:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-top h2{margin-top:16px}.section-top>p{max-width:330px;color:var(--muted);font-size:14px}.experience-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:34px}.experience{display:block}.experience:nth-child(2){margin-top:67px}.experience img{width:100%;aspect-ratio:4/4.6;object-fit:cover;transition:transform .6s}.experience .photo{overflow:hidden}.experience:hover img{transform:scale(1.025)}.experience .label{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:21px 0 15px}.experience h3{font-size:27px}.experience .number{font-size:14px;color:var(--gold)}.experience p{color:var(--muted);font-size:14px;max-width:290px;margin-top:13px}.experience svg{width:23px;height:18px}.ritual-section{background:var(--cream);position:relative;padding-block:100px}.ritual-section .section-top{margin-bottom:32px}.ritual-tabs{display:flex;justify-content:flex-start;border-top:1px solid var(--line);margin-bottom:35px}.ritual-tab{border:0;border-bottom:2px solid transparent;background:transparent;font-size:14px;padding:17px 27px 15px 0;margin-right:27px;color:var(--muted)}.ritual-tab[aria-selected=true]{border-bottom-color:var(--wine);color:var(--wine);font-weight:600}.ritual-feature{display:grid;grid-template-columns:1.05fr 1fr;background:var(--paper)}.ritual-feature .ritual-photo{width:100%;height:100%;min-height:470px;object-fit:cover}.ritual-feature-content{padding:57px 61px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.ritual-feature-content h3{font-size:43px;margin:17px 0 20px}.ritual-feature-content>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:340px}.ritual-metrics{width:100%;display:flex;gap:40px;border-block:1px solid var(--line);padding-block:19px;margin:28px 0}.metric strong{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.3}.metric small{display:block;color:var(--muted);font-size:14px;letter-spacing:.06em}.ritual-feature-content .actions{margin:0;gap:21px}.ritual-feature-content .text-link{font-size:14px}.quiet-caption{font-size:14px;line-height:1.7;color:var(--muted);margin-top:17px}.team-grid{display:grid;grid-template-columns:1.14fr .86fr;gap:90px;align-items:center}.team-picture{position:relative;padding-bottom:70px}.team-picture img:first-child{width:100%;aspect-ratio:1.12;object-fit:cover}.team-picture .detail{position:absolute;width:38%;height:235px;object-fit:cover;bottom:0;right:-35px;border:7px solid var(--paper)}.editorial-copy h2{margin:20px 0 26px}.editorial-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:360px;margin-bottom:18px}.editorial-copy .text-link{margin-top:15px}.pool-section{display:grid;grid-template-columns:1.2fr 1fr;min-height:560px;background:var(--wine-deep);color:var(--paper)}.pool-section>img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:center}.pool-copy{padding:75px min(6.5vw,100px);display:flex;flex-direction:column;justify-content:center}.pool-copy .eyebrow{color:var(--ivory)}.pool-copy h2{margin:22px 0}.pool-copy p:not(.eyebrow){color:var(--cream);font-size:14px;max-width:370px}.pool-copy .quiet-caption{border-top:1px solid var(--bordeaux);padding-top:24px;margin-top:28px;color:var(--cream);font-size:14px}.gift-band{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:110px}.gift-band h2{margin:18px 0 22px}.gift-band p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:370px}.mini-card{background:var(--wine);color:var(--paper);padding:38px;min-height:290px;position:relative;overflow:hidden;box-shadow:0 22px 50px -30px #43232f88;transform:rotate(-4deg)}.mini-card:after{content:'';position:absolute;right:-65px;bottom:-145px;width:300px;height:360px;border:1px solid #b89b7055;border-radius:50% 50% 0 0;transform:rotate(20deg)}.mini-card:before{content:'';position:absolute;inset:13px;border:1px solid #b89b7077}.mini-card .eyebrow{color:var(--ivory)}.mini-card .serif{font-size:45px;margin-top:35px;max-width:260px}.mini-card .small-brand{font:20px var(--serif);letter-spacing:.16em;position:absolute;bottom:28px;right:31px;color:var(--ivory)}.gallery-section{padding-top:20px}.gallery-grid{display:grid;grid-template-columns:1.1fr .8fr 1.1fr;grid-template-rows:210px 210px;gap:20px}.gallery-grid button{border:0;background:var(--cream);padding:0;overflow:hidden;position:relative}.gallery-grid button:after{content:'↗';position:absolute;bottom:14px;right:17px;color:white;font-size:22px;text-shadow:0 1px 5px #000}.gallery-grid button:nth-child(1){grid-row:span 2}.gallery-grid button:nth-child(4){grid-column:2;grid-row:2}.gallery-grid button:nth-child(3){grid-column:3;grid-row:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-grid button:hover img{transform:scale(1.04)}.faq-section{padding-top:15px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-grid h2{font-size:43px;margin-top:17px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{padding:22px 32px 22px 0;cursor:pointer;font-size:14px;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:5px;top:18px;font-size:21px;font-weight:400;color:var(--gold)}details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;color:var(--muted);padding:0 30px 24px 0}.closing{background:var(--cream);text-align:center;padding:65px 24px 70px}.closing h2{margin:15px auto 25px;max-width:750px}.closing .actions{justify-content:center}.footer{padding:65px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px}.footer .brand{margin-bottom:15px}.footer .brand img{object-position:left center}.footer p,.footer a{font-size:14px}.footer h3{font:14px var(--sans);font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin:19px 0 22px}.footer address{font-style:normal;color:var(--muted);font-size:14px;max-width:230px}.footer-links{display:grid;gap:9px}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:43px;padding-top:20px;font-size:14px;color:var(--muted)}.mobile-booking{display:none}.breadcrumb{font-size:14px;color:var(--muted);padding-block:25px}.breadcrumb a{border-bottom:1px solid var(--line)}.breadcrumb span{margin:0 9px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:25px 0 85px}.detail-hero>img{width:100%;height:570px;object-fit:cover;border-radius:47% 47% 0 0}.detail-hero h1{margin:21px 0;font-size:67px}.detail-hero .description{font-size:14px;color:var(--muted);max-width:420px}.detail-hero .ritual-metrics{max-width:380px}.detail-hero .quiet-caption{max-width:350px}.ritual-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:start}.ritual-story h2{margin-top:18px}.steps{counter-reset:step}.step{border-top:1px solid var(--line);padding:28px 0 30px 56px;position:relative}.step:before{counter-increment:step;content:'0' counter(step);position:absolute;left:0;top:30px;font-size:14px;color:var(--gold)}.step h3{font-size:27px;margin-bottom:13px}.step p{font-size:14px;color:var(--muted);max-width:430px}.detail-note{margin-top:28px;padding-top:25px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.gift-heading{text-align:center;padding:37px 24px 42px;max-width:850px;margin:auto}.gift-heading h1{font-size:clamp(42px,5vw,67px);margin:16px 0 24px}.gift-heading>p:not(.eyebrow){font-size:14px;max-width:540px;margin:auto;color:var(--muted)}.preview-notice{max-width:780px;margin:0 auto 43px;padding:13px 23px;text-align:center;font-size:14px;border:1px solid var(--line);background:var(--cream)}.gift-builder{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;padding-bottom:100px}.gift-form{border-top:1px solid var(--line);padding-top:27px}.gift-form h2{font-size:32px;margin-bottom:28px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:19px}.field label{font-size:14px;font-weight:600;letter-spacing:.025em}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:14px;min-height:47px}.field textarea{height:100px;resize:vertical;line-height:1.7}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field small{font-size:14px;color:var(--muted)}.gift-preview-wrap{position:sticky;top:132px;padding-top:4px}.gift-preview-wrap>.eyebrow{text-align:center;margin-bottom:20px}.voucher{background:var(--wine);color:var(--paper);min-height:545px;padding:36px 35px;position:relative;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center;box-shadow:0 25px 55px -35px #43232f99}.voucher:before{content:'';position:absolute;inset:12px;border:1px solid #bb9b665c;pointer-events:none}.voucher:after{content:'';position:absolute;left:19%;top:45%;width:64%;height:66%;border:1px solid #bb9b662d;border-radius:50% 50% 0 0;pointer-events:none}.voucher>*{position:relative;z-index:1}.voucher .voucher-logo{width:145px;height:90px;object-fit:contain;margin:0 auto}.voucher .eyebrow{font-size:14px;color:var(--ivory)}.voucher h3{font-size:40px;margin:22px 0 7px;overflow-wrap:anywhere;width:100%}.voucher-recipient{font-family:var(--serif);font-size:27px;margin:4px 0 17px;overflow-wrap:anywhere;width:100%}.voucher-message{font-size:14px;font-style:italic;color:var(--ivory);line-height:1.8;min-height:60px;max-width:320px;white-space:pre-line;overflow-wrap:anywhere}.voucher-from{font-size:14px;margin-top:18px;overflow-wrap:anywhere;width:100%}.voucher-value{font-size:14px;color:var(--ivory);margin-top:20px}.voucher-stamp{border:1px solid #bba1aa;color:var(--ivory);font-size:14px;letter-spacing:.12em;padding:4px 12px;margin-top:25px}.gift-next{background:var(--cream);padding:55px 0}.gift-next h2{font-size:37px;margin-bottom:35px}.gift-next-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.gift-next-grid .eyebrow{color:var(--gold);margin-bottom:14px}.gift-next-grid h3{font-size:22px;margin-bottom:10px}.gift-next-grid p{font-size:14px;color:var(--muted)}dialog{border:0;padding:0;color:var(--ink);background:var(--paper);max-width:calc(100% - 32px)}dialog::backdrop{background:#21181bba;backdrop-filter:blur(4px)}.booking-dialog{width:570px}.dialog-inner{padding:44px}.dialog-close{position:absolute;right:15px;top:10px;width:36px;height:36px;font-size:24px;background:transparent;border:0;color:var(--wine);z-index:3}.dialog-inner h2{font-size:37px;margin:14px 0 25px}.booking-options{display:grid}.booking-option{display:flex;justify-content:space-between;gap:18px;padding:19px 0;border-top:1px solid var(--line);align-items:center}.booking-option strong{font-family:var(--serif);font-weight:400;font-size:23px}.booking-option small{display:block;font-size:14px;color:var(--muted)}.booking-option svg{width:25px;height:18px;color:var(--wine)}.booking-dialog .dialog-foot{margin-top:20px;font-size:14px;color:var(--muted)}.booking-dialog .dialog-foot a{border-bottom:1px solid var(--gold)}.lightbox{background:var(--wine-deep);color:var(--paper);width:min(1100px,calc(100vw - 32px));padding:45px 45px 15px}.lightbox .dialog-close{color:var(--paper)}.lightbox img{width:100%;height:70vh;object-fit:contain}.lightbox-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px}.lightbox-foot p{font-size:14px;max-width:70%}.lightbox-controls{display:flex;gap:12px}.lightbox-controls button{width:40px;height:40px;border:1px solid #bba1aa;background:transparent;color:var(--paper)}.form-status{font-size:14px;color:var(--wine);margin-top:16px}.soft-in{animation:softIn .55s ease}@keyframes softIn{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero{padding-top:70px}.hero-main{height:590px}.hero-grid{gap:80px}.hero-inset{height:230px}}
@media(max-width:1100px){.shell,.narrow{width:calc(100% - 64px)}.nav{gap:20px}.header-end{gap:16px}.header-inner{gap:22px}.brand{width:115px}.brand img{width:112px}.hero-grid{gap:25px}.hero-pictures{padding-left:20px}.hero-inset{left:-20px;height:170px}.hero-main{min-height:430px}.hero-decoration{right:-17px}.photo-label{max-width:160px}.ritual-feature-content{padding:40px}.team-grid{gap:65px}.team-picture .detail{right:-20px}.pool-copy{padding:55px 45px}.gift-band{gap:65px}.faq-grid{gap:60px}.detail-hero{gap:45px}.detail-hero h1{font-size:57px}.gift-builder{gap:45px}.voucher{padding:30px}.voucher h3{font-size:35px}}
@media(max-width:850px){.nav{display:none;position:absolute;left:0;right:0;top:79px;background:var(--paper);padding:24px 32px 34px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px}.nav.is-open{display:flex}.nav>a{font-size:16px}.header{height:80px}.header-inner{gap:14px}.header-end{margin-left:auto}.menu-button{display:block}.header .button{min-height:40px;font-size:14px;padding:9px 15px}.hero{padding-block:30px 50px}.hero h1{font-size:53px}.hero-pictures{padding:0 0 35px 10px}.hero-main{min-height:370px;height:48vw}.hero-inset{width:53%;height:125px;left:-12px;border-width:5px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-bottom{font-size:14px;margin-top:26px}.hero-copy{padding-bottom:20px}.photo-label{font-size:14px;bottom:6px;max-width:120px}.hero-decoration{width:34px;height:34px;font-size:21px;right:-15px;top:40px}.actions{gap:20px}.button{gap:17px;padding:12px 17px}.hero .actions .text-link{font-size:14px}.experience-grid{gap:23px}.experience:nth-child(2){margin-top:40px}.experience h3{font-size:23px}.section{padding-block:80px}.section-top>p{max-width:250px}.ritual-section{padding-block:75px}.ritual-feature-content{padding:30px}.ritual-feature-content h3{font-size:36px}.ritual-feature .ritual-photo{min-height:440px}.ritual-metrics{gap:28px}.team-grid{gap:44px}.team-picture .detail{height:170px}.editorial-copy h2{font-size:38px}.pool-section{min-height:470px;grid-template-columns:1fr 1fr}.pool-section>img{min-height:470px}.pool-copy{padding:40px 30px}.pool-copy h2{font-size:38px}.gift-band{gap:45px;padding-block:85px}.mini-card{padding:30px;min-height:265px}.mini-card .serif{font-size:38px}.gallery-grid{grid-template-rows:160px 160px;gap:13px}.faq-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.faq-grid h2{font-size:35px}.footer-grid{gap:35px}.detail-hero{gap:38px;padding-bottom:60px}.detail-hero>img{height:500px}.detail-hero h1{font-size:48px}.ritual-story{gap:50px}.gift-builder{gap:32px}.gift-form h2{font-size:29px}.voucher{min-height:500px;padding:29px 24px}.voucher h3{font-size:30px}.voucher-recipient{font-size:24px}.gift-next-grid{gap:22px}}
@media(max-width:620px){html{scroll-padding-top:95px}.shell,.narrow{width:calc(100% - 40px)}body{padding-bottom:69px}.header{height:75px}.brand,.brand img{width:103px}.brand img{height:70px}.header-inner{gap:4px}.header-end{gap:16px}.header .button{display:none}.language{font-size:14px}.nav{top:74px;padding:25px 22px 32px}.menu-button{margin-left:3px}.hero{padding:32px 0 37px;overflow:hidden}.hero-grid{display:flex;flex-direction:column;gap:31px;align-items:stretch}.hero-copy{padding:0}.eyebrow{font-size:14px;letter-spacing:.15em}.hero h1{font-size:clamp(43px,10.5vw,62px);max-width:500px;margin-top:17px;line-height:1.09}.hero-copy>p:not(.eyebrow){font-size:14px;max-width:330px;margin-top:20px}.hero .actions{margin-top:23px;gap:21px}.hero .button{min-height:46px;font-size:14px}.hero-bottom{margin-top:23px;font-size:14px}.hero-pictures{width:100%;padding:0 0 32px 49px;max-width:480px;margin:auto}.hero-main{min-height:0;height:340px;border-radius:46% 46% 0 0;object-position:58% 52%}.hero-inset{left:0;bottom:0;height:135px;width:48%;border-width:5px}.hero-decoration{right:-7px;top:25px}.photo-label{bottom:4px;right:0;max-width:150px}.promise-strip{grid-template-columns:1fr 1fr;gap:13px 10px;font-size:14px;letter-spacing:.09em;padding-block:21px}.promise-strip span+span{border:0}.promise-strip span:nth-child(even){border-left:1px solid var(--line)}.section{padding-block:65px}.section-top{display:block;margin-bottom:30px}.section-top h2{margin-top:13px;font-size:36px}.section-top>p{max-width:310px;margin-top:20px;font-size:14px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 16px}.experience:nth-child(2){margin-top:43px}.experience:nth-child(3){grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.experience:nth-child(3) .photo{grid-row:1 / 3}.experience:nth-child(3) .label{align-self:end;padding:0 0 12px}.experience:nth-child(3) p{align-self:start;margin:0}.experience img{aspect-ratio:3/4}.experience h3{font-size:23px}.experience .label{padding:16px 0 12px}.experience p{font-size:14px;line-height:1.8}.experience .number{font-size:14px}.experience svg{width:18px}.ritual-section{padding-block:60px}.ritual-tabs{margin-bottom:25px;gap:24px;justify-content:space-between}.ritual-tab{font-size:14px;margin:0;padding:15px 0;flex:1;text-align:left}.ritual-feature{display:flex;flex-direction:column}.ritual-feature .ritual-photo{height:270px;min-height:0;object-position:center 53%}.ritual-feature-content{padding:28px 26px 32px}.ritual-feature-content h3{font-size:36px;margin:13px 0 17px}.ritual-feature-content>p:not(.eyebrow){font-size:14px}.ritual-metrics{margin:23px 0;padding-block:17px;gap:36px}.metric strong{font-size:26px}.ritual-feature-content .actions{gap:20px}.ritual-feature-content .button{font-size:14px;min-height:45px}.quiet-caption{font-size:14px}.team-grid{display:flex;flex-direction:column;gap:34px;align-items:stretch}.team-picture{padding:0 38px 48px 0}.team-picture img:first-child{aspect-ratio:1.1}.team-picture .detail{width:38%;height:174px;right:0;border-width:5px}.editorial-copy h2{font-size:36px;margin:15px 0 22px}.editorial-copy>p:not(.eyebrow){font-size:14px;max-width:none}.pool-section{display:flex;flex-direction:column;min-height:0}.pool-section>img{height:315px;min-height:0;object-position:center 52%}.pool-copy{padding:43px 29px 46px}.pool-copy h2{font-size:39px;max-width:330px;margin:17px 0 22px}.pool-copy p:not(.eyebrow){font-size:14px}.pool-copy .quiet-caption{font-size:14px;margin-top:25px;padding-top:22px}.gift-band{display:flex;flex-direction:column;gap:44px;padding-block:67px}.gift-band h2{font-size:38px;margin:15px 0 22px}.gift-band p:not(.eyebrow){font-size:14px}.mini-card{width:calc(100% - 18px);min-height:245px;padding:31px;align-self:center}.mini-card .serif{font-size:39px}.mini-card .small-brand{font-size:16px}.gallery-section{padding-top:20px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 175px;gap:12px}.gallery-grid button:nth-child(1){grid-column:1;grid-row:1}.gallery-grid button:nth-child(2){grid-column:2;grid-row:1}.gallery-grid button:nth-child(3){grid-column:1;grid-row:2}.gallery-grid button:nth-child(4){grid-column:2;grid-row:2}.faq-section{padding-top:15px}.faq-grid{display:block}.faq-grid h2{font-size:37px;margin:13px 0 29px}.faq-list summary{font-size:14px;padding-block:20px;line-height:1.65}.faq-list details p{font-size:14px;padding-bottom:20px}.closing{padding:47px 23px 51px}.closing h2{font-size:38px;margin-top:16px}.closing .actions{gap:23px}.closing .text-link{font-size:14px}.footer{padding-top:42px;padding-bottom:18px}.footer-grid{grid-template-columns:1fr 1fr;gap:23px}.footer-grid>div:first-child{grid-column:1 / -1;display:flex;align-items:center;gap:25px}.footer .brand{margin:0;flex-shrink:0;width:110px}.footer address{font-size:14px;max-width:190px}.footer h3{font-size:14px;margin:16px 0 18px}.footer p,.footer a{font-size:14px}.footer-bottom{font-size:14px;margin-top:27px;gap:10px}.mobile-booking{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--paper);border-top:1px solid var(--line);min-height:69px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:15px}.mobile-booking>span{font-family:var(--serif);font-size:15px;line-height:1.25;max-width:160px}.mobile-booking .button{min-height:43px;font-size:14px;padding:10px 18px;white-space:nowrap}.breadcrumb{padding-block:21px;font-size:14px}.detail-hero{display:flex;flex-direction:column-reverse;gap:31px;padding-top:10px;padding-bottom:52px}.detail-hero>img{height:330px;object-position:center;max-width:400px}.detail-hero h1{font-size:49px;margin:15px 0 20px}.detail-hero .description{font-size:14px}.detail-hero .ritual-metrics{max-width:none}.ritual-story{display:block}.ritual-story h2{font-size:36px;margin:14px 0 32px}.step{padding:23px 0 25px 40px}.step:before{top:25px}.step h3{font-size:26px}.step p{font-size:14px}.detail-note{font-size:14px}.gift-heading{padding:25px 20px 30px}.gift-heading h1{font-size:43px;margin:15px 0 22px}.gift-heading>p:not(.eyebrow){font-size:14px}.preview-notice{margin:0 20px 30px;padding:13px 16px;font-size:14px}.gift-builder{display:flex;flex-direction:column;gap:34px;padding-bottom:60px}.gift-form{width:100%;padding-top:25px}.gift-form h2{font-size:29px;margin-bottom:25px}.field-row{gap:12px}.field label{font-size:14px}.field input,.field select,.field textarea{font-size:14px;padding:12px}.gift-preview-wrap{position:static;width:100%;scroll-margin-top:95px}.voucher{padding:29px;min-height:510px;max-width:450px;margin:auto}.voucher h3{font-size:36px}.voucher-recipient{font-size:27px}.voucher-message{font-size:14px}.gift-next{padding-block:43px}.gift-next h2{font-size:34px;margin-bottom:29px}.gift-next-grid{grid-template-columns:1fr 1fr;gap:30px 24px}.gift-next-grid h3{font-size:23px}.gift-next-grid p{font-size:14px}.dialog-inner{padding:36px 24px 28px}.dialog-inner h2{font-size:32px}.booking-option strong{font-size:23px}.booking-option small{font-size:14px}.lightbox{padding:44px 14px 14px}.lightbox img{height:62vh}.lightbox-foot p{font-size:14px;max-width:65%}.lightbox-controls{gap:7px}.lightbox-controls button{width:33px;height:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.header,.footer,.mobile-booking,.gift-form,.gift-heading,.gift-next,.preview-notice,.breadcrumb,.closing{display:none!important}body{padding:0}.gift-builder{display:block;width:100%;padding:0}.voucher{print-color-adjust:exact;-webkit-print-color-adjust:exact;width:460px;margin:0 auto}.voucher-stamp{font-size:15px;font-weight:700}.gift-preview-wrap>.eyebrow,.gift-preview-wrap>.quiet-caption{display:block}}

/* Complete treatment menu — the existing ivory, marble and burgundy direction. */
[hidden]{display:none!important}

/* The approved panoramic frieze introduces the spa once, in full. */
.spa-frieze{width:min(1376px,calc(100% - 64px));margin:0 auto;padding-top:clamp(28px,4vw,64px);line-height:0}
.spa-frieze img{display:block;width:100%;height:auto;mix-blend-mode:darken}
.spa-frieze+.home-spa{padding-top:clamp(28px,4vw,64px)}
@media(max-width:620px){.spa-frieze{width:calc(100% - 24px)}}
.spa-frieze--spaces{width:min(1180px,calc(100% - 64px));padding-top:0;padding-bottom:clamp(32px,4vw,64px)}
.spa-frieze--rituals{width:min(760px,calc(100% - 40px));padding-block:12px clamp(32px,4vw,56px)}
@media(max-width:620px){.spa-frieze--spaces{width:calc(100% - 24px)}}

/* Navigation, spa story and independent review platforms. */
.nav>a{white-space:nowrap}.nav>a[aria-current="page"]{color:var(--wine)}.nav>a[aria-current="page"]:after{width:100%}.nav-dropdown{position:relative}.nav-dropdown>summary{display:flex;align-items:center;gap:7px;padding:12px 0;font:14px/1.5 var(--sans);letter-spacing:.045em;white-space:nowrap}.nav-dropdown>summary:after,.nav-dropdown[open]>summary:after{content:none}.nav-dropdown>summary svg{width:10px;height:7px;transition:transform .2s}.nav-dropdown[open]>summary svg{transform:rotate(180deg)}.nav-dropdown.is-current>summary{color:var(--wine)}.nav-submenu{position:absolute;top:calc(100% + 7px);left:-22px;min-width:244px;background:var(--paper);border:1px solid var(--line);box-shadow:0 15px 35px -22px #36202b77;padding:11px;z-index:30}.nav-submenu>a{display:block;padding:11px 13px;font-size:14px;line-height:1.6;white-space:nowrap}.nav-submenu>a:first-child{border-bottom:1px solid var(--line);margin-bottom:5px;padding-bottom:14px}.nav-submenu>a:hover,.nav-submenu>a[aria-current]{background:var(--cream);color:var(--wine)}

.home-spa-photos{position:relative;padding:0 23px 75px 0;min-width:0}.home-spa-main{width:100%;aspect-ratio:1.1;object-fit:cover}.home-spa-pool{position:absolute;right:-18px;bottom:0;width:53%;height:210px;object-fit:cover;border:8px solid var(--paper)}.home-spa-caption{font-size:14px;color:var(--muted);position:absolute;bottom:21px;left:0;max-width:42%;line-height:1.6;letter-spacing:.035em}
.reviews-section{padding-top:25px;padding-bottom:85px}.review-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.review-platform{padding:32px 35px 35px;border:1px solid var(--line);background:linear-gradient(145deg,var(--ivory),var(--paper))}.review-platform-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.review-platform-head h3{font:600 21px/1.4 var(--sans);letter-spacing:-.04em}.review-tripadvisor .review-platform-head h3{color:#24533d}.review-marks{display:inline-grid;position:relative;font-size:15px;letter-spacing:3px;line-height:1.5}.review-marks>span{grid-area:1/1;color:var(--line);white-space:nowrap}.review-marks>span+span{color:var(--gold);clip-path:inset(0 calc(100% - var(--rating-fill)) 0 0)}.review-tripadvisor .review-marks>span+span{color:#24533d}.review-rating-link{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:25px 0 26px;border-bottom:1px solid var(--line)}.review-score{display:flex;align-items:baseline;gap:10px}.review-score strong{font:68px/1.1 var(--serif);color:var(--wine);letter-spacing:-.04em}.review-score>span{font-size:15px;color:var(--muted)}.review-count{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--muted);padding-bottom:10px;white-space:nowrap}.review-count svg{width:22px;height:16px;color:var(--wine)}.review-rating-link:hover .review-count{color:var(--wine);text-decoration:underline;text-underline-offset:4px}.review-quote{padding-top:28px}.review-quote blockquote{margin:0;min-height:100px;font:26px/1.4 var(--serif);color:var(--ink)}.review-quote figcaption{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 18px;margin-top:25px;font-size:14px}.review-quote figcaption strong{font-weight:600}.review-quote figcaption>span{grid-column:1;color:var(--muted);font-size:14px}.review-quote figcaption>a{grid-column:2;grid-row:1/3;text-decoration:underline;text-underline-offset:4px;color:var(--wine)}
.visit-section{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center;padding-block:45px 50px;margin-bottom:80px;border-block:1px solid var(--line)}.visit-section h2{font-size:43px;margin:17px 0 23px}.visit-section address{font-style:normal;font-size:14px;color:var(--muted);line-height:1.9}.visit-hours{font-size:14px;letter-spacing:.06em;color:var(--muted)}.visit-hours strong{display:block;font:36px/1.3 var(--serif);color:var(--wine);letter-spacing:0;margin-top:8px}.visit-actions .actions{gap:25px;margin-top:24px}.visit-actions .button{font-size:14px;padding:13px 18px;gap:15px}.visit-actions .text-link{font-size:14px}.visit-whatsapp{display:inline-block;margin-top:20px;font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.spa-spaces{padding-top:30px;padding-bottom:80px}.spa-spaces-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px}.spa-space{min-width:0}.spa-space>img{width:100%;height:310px;object-fit:cover}.spa-space>div{padding-top:25px}.spa-space h3{font-size:28px;margin-bottom:18px}.spa-space p{font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:22px}.spa-space .text-link{font-size:14px}.spa-team-section{background:var(--cream);padding-block:85px}.spa-team-section .team-picture .detail{border-color:var(--cream)}.spa-visit{padding-bottom:75px}.spa-visit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.spa-visit-step{border-top:1px solid var(--line);padding-top:22px}.spa-visit-step h3{font-size:28px;margin:17px 0 19px}.spa-visit-step p{font-size:14px;line-height:1.9;color:var(--muted)}
.contact-heading{padding-block:32px 50px}.contact-heading h1{margin:20px 0 27px;font-size:clamp(48px,5.5vw,75px)}.contact-heading>p:not(.eyebrow){font-size:14px;max-width:550px;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;padding-bottom:85px}.contact-detail{border-top:1px solid var(--line);padding-top:24px;margin-bottom:27px}.contact-detail h2{font-size:32px;margin:15px 0 21px}.contact-detail address{font-style:normal;font-size:14px;color:var(--muted);line-height:1.9}.contact-detail .text-link{margin-top:22px;font-size:14px}.contact-detail .actions .text-link{margin-top:0}.contact-hours{font-size:14px;color:var(--muted);margin-top:16px}.contact-hours strong{display:block;font:37px/1.4 var(--serif);color:var(--wine);margin-top:5px}.contact-phone{display:block;font:31px/1.5 var(--serif);color:var(--wine);margin-top:17px}.contact-email{display:block;font-size:14px;color:var(--muted);overflow-wrap:anywhere;margin-top:8px}.contact-visual>img{width:100%;height:595px;object-fit:cover;border-radius:45% 45% 0 0}.contact-visual>p{font-size:14px;color:var(--muted);margin-top:18px}.contact-map-section{padding-bottom:80px}.contact-map-section h2{font-size:43px}.contact-map{display:block;width:100%;height:420px;border:0;background:var(--cream)}
@media(max-width:1100px){.nav{gap:19px}.nav>a,.nav-dropdown>summary{font-size:14px;letter-spacing:.01em}.home-spa-pool{height:180px;right:-10px}.review-platform{padding:28px}.review-score strong{font-size:61px}.review-platform-head h3{font-size:19px}.review-quote blockquote{font-size:25px;min-height:110px}.visit-section{gap:45px}.spa-spaces-grid{gap:24px}.spa-space>img{height:265px}.spa-space h3{font-size:25px}.contact-layout{gap:65px}}
@media(max-width:1000px){.header{height:80px}.nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--paper);padding:21px 32px 30px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:20px;max-height:calc(100dvh - 150px);overflow-y:auto}.nav.is-open{display:flex}.nav>a{font-size:16px;align-self:flex-start}.nav-dropdown>summary{font-size:16px;justify-content:space-between;padding:0}.nav-dropdown{width:100%}.nav-dropdown>summary svg{width:13px;height:9px}.nav-submenu{position:static;min-width:0;border:0;border-left:1px solid var(--line);margin-top:18px;padding:0 0 0 12px;box-shadow:none}.nav-submenu>a{font-size:14px;padding:10px 12px}.nav-submenu>a:first-child{border:0;padding-bottom:10px;margin:0}.menu-button{display:block}.header-end{margin-left:auto}.header .button{min-height:40px;font-size:14px;padding:9px 15px}.care-nav{top:80px}}
@media(max-width:850px){.home-spa-photos{padding:0 15px 70px 0}.home-spa-pool{height:155px;width:54%;right:-5px}.home-spa-caption{font-size:14px}.review-platforms{gap:20px}.review-platform{padding:25px}.review-platform-head{gap:10px}.review-platform-head h3{font-size:18px}.review-marks{font-size:14px;letter-spacing:2px}.review-score strong{font-size:57px}.review-rating-link{gap:15px;align-items:center}.review-count{display:block;font-size:14px;padding:0}.review-count svg{margin-top:8px;width:20px}.review-quote blockquote{font-size:23px;min-height:125px}.review-quote figcaption{display:block}.review-quote figcaption>span{display:block;margin:5px 0 13px}.review-quote figcaption>a{font-size:14px}.visit-section{grid-template-columns:1fr 1fr;gap:35px}.visit-section h2{font-size:37px}.visit-actions .actions{gap:22px}.spa-spaces-grid{gap:19px}.spa-space>img{height:220px}.spa-space h3{font-size:23px}.spa-space p{font-size:14px}.spa-visit-grid{gap:27px}.spa-visit-step h3{font-size:25px}.contact-layout{gap:38px}.contact-visual>img{height:560px}.contact-phone{font-size:27px}.contact-detail .text-link{font-size:14px}}
@media(max-width:620px){.header{height:75px}.nav{top:74px;padding:25px 22px 30px}.header .button{display:none}.home-spa-photos{padding:0 25px 61px 0}.home-spa-main{aspect-ratio:1.1}.home-spa-pool{width:52%;height:145px;border-width:5px;right:0}.home-spa-caption{bottom:15px;font-size:14px;max-width:43%}.reviews-section{padding-top:10px;padding-bottom:58px}.review-platforms{grid-template-columns:1fr;gap:20px}.review-platform{padding:27px 25px 28px}.review-platform-head h3{font-size:20px}.review-marks{font-size:14px;letter-spacing:3px}.review-rating-link{align-items:flex-end;padding:23px 0}.review-score strong{font-size:64px}.review-count{display:flex;align-items:center;gap:10px;font-size:14px;padding-bottom:10px}.review-count svg{margin:0}.review-quote{padding-top:23px}.review-quote blockquote{min-height:0;font-size:27px}.review-quote figcaption{display:grid;grid-template-columns:1fr auto;gap:4px 16px;margin-top:24px}.review-quote figcaption>span{margin:0;line-height:1.6}.review-quote figcaption>a{font-size:14px}.visit-section{grid-template-columns:1fr;gap:30px;padding-block:34px 39px;margin-bottom:50px}.visit-section h2{font-size:37px;margin:15px 0 21px}.visit-section address{font-size:14px}.visit-hours strong{font-size:33px}.visit-actions .actions{gap:23px}.visit-whatsapp{font-size:14px;margin-top:18px}.spa-spaces{padding-top:25px;padding-bottom:54px}.spa-spaces-grid{grid-template-columns:1fr;gap:39px}.spa-space>img{height:275px}.spa-space>div{padding-top:22px}.spa-space h3{font-size:30px;margin-bottom:16px}.spa-space p{font-size:14px;max-width:400px;margin-bottom:18px}.spa-team-section{padding-block:54px}.spa-visit{padding-bottom:50px}.spa-visit-grid{grid-template-columns:1fr;gap:28px}.spa-visit-step{padding-top:20px}.spa-visit-step h3{font-size:29px;margin:13px 0 16px}.spa-visit-step p{font-size:14px}.contact-heading{padding-block:23px 36px}.contact-heading h1{font-size:49px;margin:16px 0 23px}.contact-heading>p:not(.eyebrow){font-size:14px}.contact-layout{grid-template-columns:1fr;gap:12px;padding-bottom:50px}.contact-detail{padding-top:22px;margin-bottom:26px}.contact-detail h2{font-size:31px;margin:14px 0 19px}.contact-detail address{font-size:14px}.contact-hours strong{font-size:35px}.contact-phone{font-size:31px}.contact-email{font-size:14px}.contact-visual>img{height:320px;max-width:420px;margin:auto}.contact-visual>p{font-size:14px;text-align:center}.contact-map-section{padding-bottom:52px}.contact-map-section h2{font-size:35px}.contact-map-section .section-top>.text-link{margin-top:20px;font-size:14px}.contact-map{height:320px}}
.care-home-links{display:flex;align-items:center;gap:38px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:28px;margin-top:43px}.care-home-links>.button{margin-left:auto}.all-packages-link{margin-top:23px}
.metric strong.duration-pending{font-size:20px;line-height:1.3;max-width:130px}.metric strong{overflow-wrap:normal}.ritual-feature .metric{min-width:0}
.care-hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:90px;padding-block:25px 65px}.care-hero h1{font-size:clamp(45px,5.1vw,72px);margin:23px 0 25px;line-height:1.1}.care-hero>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:500px}.care-hero>img{width:100%;height:385px;object-fit:cover;border-radius:46% 46% 0 0}.care-hero-notes{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px;font-size:14px;letter-spacing:.025em;color:var(--gold)}.care-hero-notes span+span{border-left:1px solid var(--line);padding-left:14px}.care-hero .text-link{margin-top:24px}
.care-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:98px;z-index:12}.care-nav a{display:flex;align-items:center;gap:12px;padding:10px 15px;font-size:14px;border:1px solid transparent;min-height:43px;white-space:nowrap}.care-nav a span{font-size:14px;opacity:.7}.care-nav a[aria-current],.care-nav a:hover{border-color:var(--wine);color:var(--wine)}.care-nav a[aria-current]{background:var(--wine);color:var(--paper)}
.care-search{display:grid;grid-template-columns:1fr 1.3fr;align-items:center;gap:10px 35px;padding:30px 0 8px}.care-search label{font:24px var(--serif);color:var(--wine)}.care-search>div{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:10px}.care-search input{background:transparent;border:0;padding:12px 2px;min-height:49px;font:14px var(--sans);color:var(--ink);width:100%;min-width:0}.care-search button{font-size:14px;background:none;border:0;text-decoration:underline;color:var(--wine);padding:12px 2px}.care-search-status{grid-column:2;font-size:14px;color:var(--muted);min-height:18px}
.care-section{padding-top:58px;scroll-margin-top:110px}.care-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:29px}.care-section-heading h2{font-size:42px;margin-top:12px}.care-section-heading>.text-link{flex-shrink:0;margin-bottom:6px}.care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px}.care-card{border:1px solid var(--line);padding:29px 29px 0;display:flex;flex-direction:column;min-width:0;background:linear-gradient(140deg,var(--ivory),var(--paper))}.care-card-top{padding-bottom:23px}.care-card-top>.eyebrow{font-size:14px;letter-spacing:.15em;margin-bottom:12px}.care-card h3{font-size:29px;line-height:1.2;max-width:420px}.care-card-top>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:13px;max-width:430px;line-height:1.9}.care-rates{margin-top:auto}.care-rate{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;min-height:66px;align-items:center;border-top:1px solid var(--line);font-size:14px}.care-duration{color:var(--muted);font-size:14px;line-height:1.4}.care-rate>strong{font-family:var(--serif);font-weight:400;font-size:24px;white-space:nowrap}.care-reserve{display:flex;align-items:center;gap:10px;color:var(--wine);font-size:14px}.care-reserve svg{width:21px;height:17px}.care-rate:hover .care-reserve{text-decoration:underline}.care-card-links{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:60px;border-top:1px solid var(--line)}.care-card-links .text-link{font-size:14px;gap:11px}.care-card-links>a:last-child{font-size:14px;color:var(--wine);text-decoration:underline;text-underline-offset:4px}.care-category-note{font-size:14px;color:var(--muted);padding-top:22px;max-width:700px}.care-price-note{font-size:14px;color:var(--muted);padding-block:45px;border-bottom:1px solid var(--line)}.care-catalogue{padding-bottom:30px}.care-empty{text-align:center;padding:60px 20px}.care-empty h2{font-size:37px}.care-empty p{color:var(--muted);font-size:14px;max-width:480px;margin:20px auto}.care-empty .button{margin-top:12px}.care-help{display:flex;justify-content:space-between;gap:70px;align-items:center;padding-block:70px 90px}.care-help h2{font-size:39px;margin:17px 0 20px}.care-help p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:610px}.care-help>.button{flex-shrink:0}.package-return{padding-top:35px}
.footer-care{display:flex;flex-wrap:wrap;gap:12px 29px;border-top:1px solid var(--line);padding-top:27px;margin-top:38px}.footer-care a{font-size:14px;color:var(--muted)}.footer-care a:hover{color:var(--wine);text-decoration:underline}.footer-care+.footer-bottom{margin-top:27px}
.booking-dialog{width:660px;max-height:85vh;overscroll-behavior:contain}.booking-intro{font-size:14px;color:var(--muted);max-width:460px;margin:-8px 0 24px}.booking-category{border-top:1px solid var(--line)}.booking-category>summary{font:23px var(--serif);color:var(--wine);padding:23px 40px 23px 0}.booking-category>summary>span{font:14px var(--sans);color:var(--muted);margin-left:12px}.booking-category>div{padding-left:17px;border-left:1px solid var(--line);margin-bottom:22px}.booking-category .booking-option{padding:15px 0}.booking-category .booking-option:first-child{border-top:0;padding-top:0}.booking-category .booking-option strong{font-size:19px;line-height:1.35;display:block}.booking-category .booking-option small{margin-top:6px;font-size:14px}.booking-option>svg{flex-shrink:0}.booking-category>summary:after{top:22px}.booking-dialog .dialog-foot{border-top:1px solid var(--line);padding-top:20px}
@media(max-width:1100px){.care-hero{gap:50px}.care-nav{gap:2px}.care-nav a{padding:10px 12px;gap:8px}.care-card{padding:24px 23px 0}.care-rate{gap:13px}.care-help{gap:30px}.care-help>.button{white-space:nowrap}}
@media(max-width:850px){.care-nav{top:80px}.care-hero{gap:35px}.care-hero>img{height:345px}.care-hero>div>p:not(.eyebrow){font-size:14px}.care-hero h1{font-size:45px}.care-hero-notes{font-size:14px;display:block}.care-hero-notes span{display:block}.care-hero-notes span+span{border:0;padding:0;margin-top:8px}.care-nav a{padding:8px 10px;font-size:14px}.care-search{grid-template-columns:1fr 1fr;gap:10px 25px}.care-search label{font-size:22px}.care-grid{gap:18px}.care-card h3{font-size:26px}.care-card-top>p:not(.eyebrow){font-size:14px}.care-card{padding:22px 20px 0}.care-rate{gap:10px}.care-rate>strong{font-size:22px}.care-reserve{gap:7px;font-size:14px}.care-reserve svg{width:17px}.care-card-links{align-items:flex-start;flex-direction:column;gap:16px;padding-block:18px}.care-home-links{gap:23px}.care-home-links>.button{margin:0}.care-help{align-items:flex-start;flex-direction:column;gap:27px}}
@media(max-width:620px){.care-home-links{display:grid;grid-template-columns:1fr 1fr;gap:24px 15px;margin-top:32px;padding-top:24px}.care-home-links .text-link{font-size:14px;gap:8px}.care-home-links>.button{grid-column:1/-1;justify-self:start;margin-top:4px}.detail-hero .ritual-metrics{gap:27px}.metric strong.duration-pending{font-size:18px;max-width:118px}.care-hero{display:flex;flex-direction:column;gap:28px;padding-block:16px 33px;align-items:stretch}.care-hero h1{font-size:44px;margin:18px 0 21px}.care-hero>img{height:230px;object-position:50% 50%;border-radius:120px 120px 0 0}.care-hero>div>p:not(.eyebrow){font-size:14px;max-width:none}.care-hero-notes{margin-top:21px;font-size:14px}.care-nav{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-block:14px}.care-nav a{font-size:14px;padding:9px 7px;min-height:42px;justify-content:space-between;border-color:var(--line);white-space:normal;gap:5px}.care-nav a:first-child{justify-content:center}.care-nav a span{font-size:14px}.care-search{display:block;padding-top:25px}.care-search label{font-size:23px;display:block;margin-bottom:9px}.care-search input{font-size:14px}.care-search-status{margin-top:10px;min-height:0}.care-section{padding-top:39px;scroll-margin-top:10px}.care-section-heading{display:block;margin-bottom:23px}.care-section-heading h2{font-size:35px;margin-top:10px}.care-section-heading>.text-link{margin-top:17px;font-size:14px}.care-grid{grid-template-columns:1fr;gap:17px}.care-card{padding:25px 22px 0}.care-card h3{font-size:29px}.care-card-top{padding-bottom:20px}.care-card-top>p:not(.eyebrow){font-size:14px}.care-rate{gap:16px;min-height:64px}.care-rate>strong{font-size:25px}.care-reserve{font-size:14px;gap:9px}.care-reserve svg{width:19px}.care-card-links{flex-direction:row;align-items:center;padding:0;min-height:60px;gap:13px}.care-card-links .text-link{font-size:14px;gap:7px}.care-card-links .text-link svg{width:17px}.care-card-links>a:last-child{font-size:14px}.care-category-note{font-size:14px;padding-top:19px}.care-price-note{padding-block:30px;font-size:14px}.care-help{padding-block:43px 53px;gap:24px}.care-help h2{font-size:35px}.care-help p:not(.eyebrow){font-size:14px}.care-empty{padding:40px 10px}.care-empty h2{font-size:32px}.footer-care{gap:16px 22px;margin-top:28px;padding-top:23px}.footer-care a{font-size:14px}.booking-dialog{max-height:82vh}.booking-category>summary{font-size:22px}.booking-category .booking-option strong{font-size:19px}.booking-category .booking-option small{font-size:14px}.booking-intro{font-size:14px}.booking-category>div{padding-left:12px}.package-return{padding-top:25px}.care-catalogue{padding-bottom:0}}

/* Architectural signature: rounded crown, straight sides, flat base.
   Portrait and wider frames echo the spa's doorways and gold-lined alcoves. */
:root{
  --arch-portrait:50% 50% 0 0 / 43% 43% 0 0;
  --arch-landscape:50% 50% 0 0 / 55% 55% 0 0;
  --arch-line:rgba(128,94,50,.38);
}
.experience .photo{
  border-radius:var(--arch-portrait);
  isolation:isolate;
}
.home-spa-main,
.team-picture>img:first-child,
.spa-space>img,
.care-hero>img{
  border-radius:var(--arch-landscape);
}
.detail-hero>img,
.contact-visual>img,
.gallery-grid>button:nth-child(1),
.gallery-grid>button:nth-child(3){
  border-radius:var(--arch-portrait);
}
.home-spa-photos:before{
  content:'';
  position:absolute;
  inset:-12px 11px 63px -12px;
  border:1px solid var(--arch-line);
  border-radius:var(--arch-landscape);
  pointer-events:none;
}
.mini-card:after{
  right:24px;
  bottom:-92px;
  width:190px;
  height:250px;
  border-color:rgba(216,195,160,.38);
  border-radius:var(--arch-portrait);
  transform:none;
  pointer-events:none;
}
.voucher:after{border-radius:var(--arch-portrait)}
.closing:before{
  content:'';
  display:block;
  width:29px;
  height:39px;
  margin:0 auto 24px;
  border:1px solid var(--gold);
  border-radius:var(--arch-portrait);
}
@media(max-width:620px){
  .experience .photo{border-radius:50% 50% 0 0 / 38% 38% 0 0}
  .home-spa-photos:before{inset:-8px 17px 53px -8px}
  .closing:before{width:25px;height:34px;margin-bottom:20px}
}

/* Keep the tap handle and facial gesture inside the architectural crops. */
img[src*="/hammam-cuivre-orelia-"]{object-position:50% 12%}
img[src*="/visage-douceur-orelia-"]{object-position:50% 60%}

/* Full-screen homepage film: original video and audio, with explicit controls. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-video .header{position:fixed;inset:0 0 auto;width:100%;color:var(--paper);background:linear-gradient(180deg,rgba(20,12,17,.55),rgba(20,12,17,.12));border-bottom-color:rgba(255,255,255,.2);transition:background .25s,color .25s,border-color .25s}
.home-video .header.header-scrolled{background:rgba(247,243,236,.98);color:var(--ink);border-bottom-color:var(--line)}
.home-video .header:not(.header-scrolled) .brand img{filter:brightness(0) invert(1)}
.home-video .header:not(.header-scrolled) .nav>a:after{background:var(--paper)}
.home-video .header .nav-submenu{color:var(--ink)}
.home-video .header:not(.header-scrolled) .header-end>.button{background:rgba(247,243,236,.08);border-color:rgba(247,243,236,.7);color:var(--paper)}
.home-video .header:not(.header-scrolled) .header-end>.button:hover{background:var(--paper);color:var(--wine)}
.home-video .header:not(.header-scrolled) .menu-button span{background:var(--paper)}
.home-video .header .language a{opacity:.85}
.home-video.hero-in-view .mobile-booking{visibility:hidden;pointer-events:none;transform:translateY(110%)}
.home-video .mobile-booking{transition:transform .2s,visibility .2s}
.hero.hero-video{isolation:isolate;display:flex;flex-direction:column;min-height:100vh;min-height:100svh;padding:0;background:#251a20;color:var(--paper)}
.hero-video-media{position:absolute;inset:0;z-index:-2;background:url('/assets/orelia-hero-cuivre-poster.webp') center/cover no-repeat}
.hero-video-media video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.hero-video:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(17,11,15,.68) 0%,rgba(17,11,15,.4) 45%,rgba(17,11,15,.08) 100%),linear-gradient(0deg,rgba(17,11,15,.66),transparent 30%,transparent 70%,rgba(17,11,15,.2));pointer-events:none}
.hero-video-main{display:flex;align-items:center;flex:1;padding-block:156px 66px}
.hero-video-copy{max-width:710px}
.hero-video-copy>.eyebrow{color:var(--ivory);font-size:14px;letter-spacing:.22em}
.hero-video .hero-video-copy h1{font-size:clamp(60px,7.1vw,104px);line-height:1.03;letter-spacing:-.035em;max-width:710px;margin:26px 0 27px;text-shadow:0 2px 28px #140c1240}
.hero-video h1 em{color:var(--ivory)}
.hero-video-description{font-size:14px;line-height:1.9;color:var(--ivory);max-width:490px;text-shadow:0 1px 8px #140c1280}
.hero-video-copy .actions{margin-top:32px;gap:29px}
.hero-video-copy .button{min-height:54px;padding:15px 25px}
.hero-video-copy .text-link{color:var(--paper);border-bottom-color:rgba(247,243,236,.55)}
.hero-video :focus-visible,.home-video .header:not(.header-scrolled) :focus-visible{outline-color:var(--ivory)}
.hero-video-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:25px;padding-bottom:32px;position:relative}
.hero-video-location{font-size:14px;line-height:1.8;letter-spacing:.045em;color:var(--ivory)}
.hero-video-location span{display:block}
.hero-video-scroll{display:flex;align-items:center;gap:14px;font-size:14px;letter-spacing:.09em;padding:10px 0;white-space:nowrap}
.hero-video-scroll svg{width:17px;height:24px;transition:transform .2s}
.hero-video-scroll:hover svg{transform:translateY(4px)}
.hero-video-controls{justify-self:end;display:flex;gap:9px;align-items:center}
.hero-video-control{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 15px;color:var(--paper);background:rgba(20,12,17,.35);border:1px solid rgba(247,243,236,.42);border-radius:2px;font-size:14px;line-height:1.5;white-space:nowrap;transition:background .2s,border-color .2s;backdrop-filter:blur(5px)}
.hero-video-control:hover{background:rgba(20,12,17,.65);border-color:var(--paper)}
.hero-video-control svg{width:20px;height:20px;flex-shrink:0}
.hero-video-play{width:44px;padding:10px}
.hero-video-play>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.hero-video-play:disabled{opacity:.5;cursor:default}
@media(min-width:1500px){.hero-video-main,.hero-video-footer{width:calc(100% - 160px);max-width:1760px}.home-video .header-inner{width:calc(100% - 160px);max-width:1760px}}
@media(max-width:1000px){.home-video .header .nav{color:var(--ink)}.home-video .header:not(.header-scrolled) .nav>a:after{background:var(--wine)}.hero-video-main{padding-top:128px;padding-bottom:50px}.hero-video .hero-video-copy h1{font-size:clamp(63px,8.5vw,88px)}.hero-video-footer{grid-template-columns:1fr auto;gap:18px}.hero-video-scroll{display:none}.hero-video-controls{grid-column:2}.hero-video-description{font-size:14px}}
@media(max-width:620px){.hero-video:after{background:linear-gradient(90deg,rgba(17,11,15,.57),rgba(17,11,15,.3)),linear-gradient(0deg,rgba(17,11,15,.65),transparent 42%,rgba(17,11,15,.12))}.hero-video-main{padding-top:116px;padding-bottom:44px;align-items:center}.hero-video-copy>.eyebrow{font-size:14px;letter-spacing:.14em}.hero-video .hero-video-copy h1{font-size:clamp(51px,12.6vw,74px);margin:22px 0;line-height:1.07}.hero-video-description{font-size:14px;line-height:1.9;max-width:360px}.hero-video-description br{display:none}.hero-video-copy .actions{gap:23px;margin-top:27px}.hero-video-copy .button{font-size:14px;min-height:49px;padding:12px 18px;gap:20px}.hero-video-copy .text-link{font-size:14px;gap:9px}.hero-video-copy .text-link svg{width:18px}.hero-video-footer{align-items:center;gap:12px;padding-bottom:max(23px,env(safe-area-inset-bottom))}.hero-video-location{font-size:14px;max-width:155px;line-height:1.9;letter-spacing:0}.hero-video-controls{gap:7px}.hero-video-control{font-size:14px;padding:10px;gap:7px}.hero-video-control svg{width:18px;height:18px}.hero-video-play{width:44px}.hero-video-scroll{display:none}}
@media(max-width:370px){.hero-video-footer{grid-template-columns:1fr;gap:16px}.hero-video-controls{grid-column:1;justify-self:start}.hero-video-location{max-width:none}.hero-video-copy .actions{gap:20px}}
@media(max-height:600px) and (min-width:621px){.hero-video-main{padding-top:112px;padding-bottom:34px}.hero-video .hero-video-copy h1{font-size:57px;margin-block:17px}.hero-video-description{font-size:14px}.hero-video-copy .actions{margin-top:22px}.hero-video-footer{padding-bottom:22px}}
@media(prefers-reduced-motion:reduce){.home-video .header,.home-video .mobile-booking,.hero-video-control,.hero-video-scroll svg{transition:none}}
@media print{.hero.hero-video{min-height:0;padding-block:40px;color:var(--ink)}.hero-video-media,.hero-video:after,.hero-video-footer{display:none}.hero-video-main{padding:0}.hero-video h1 em,.hero-video-description,.hero-video-copy>.eyebrow{color:var(--ink)}}

/* Étape 2 — tailles, zones d’action et contraste, sans changement de palette. */
.eyebrow,.care-card-top>.eyebrow,.hero-video-copy>.eyebrow {font-size:12px;line-height:1.7}
.metric small,.photo-label,.promise-strip {font-size:12px;line-height:1.7}
.nav>a,.nav-dropdown>summary,.nav-submenu>a,.language {font-size:14px}
.footer p,.footer a,.footer address,.footer h3,.footer-bottom {font-size:13px;line-height:1.8}
.description,.hero-video-description,.care-card-top>p:not(.eyebrow),.editorial-copy>p:not(.eyebrow),.faq-list p {font-size:15px;line-height:1.85}
.button,.text-link,.care-duration,.care-reserve,.review-count,.review-quote figcaption>a,.hero-video-control {font-size:14px}
.language a {opacity:1}
.nav>a,.language a,.footer a,.review-quote figcaption>a,.text-link,.breadcrumb a,.gift-terms-link a {min-height:24px;display:inline-flex;align-items:center;padding-block:3px}
.nav-dropdown>summary {min-height:24px}
.language a {min-width:28px;justify-content:center}
.header-inner{gap:20px}.nav{gap:24px}.header-end{gap:18px}
.nav .mobile-menu-booking{display:none}
.review-date{font-size:14px;color:var(--muted);line-height:1.7;padding-top:16px}
.context-links{padding-block:24px;font-size:15px;line-height:1.9}
.spa-context-links{display:flex;flex-wrap:wrap;gap:12px 32px}
.hero-video:after{background:linear-gradient(90deg,rgba(17,11,15,.69),rgba(17,11,15,.62))}
.home-video .header:not(.header-scrolled){background:rgba(20,12,17,.74)}
.hero-video-control{background:rgba(20,12,17,.6)}
.home-video .header:not(.header-scrolled) .nav-dropdown.is-current>summary{color:var(--paper)}
.hero-video-location{font-size:14px;line-height:1.8}
.hero-video-footer{grid-template-columns:1fr auto 1fr}
.hero-video-copy>.eyebrow{letter-spacing:.14em}
.header .button {font-size:14px}
.analytics-consent{position:fixed;z-index:100;inset:auto 20px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 6px 40px #36202b33;padding:24px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:15px}
.analytics-consent p{flex:1 1 300px}.analytics-consent button,.analytics-preferences{font:14px var(--sans);color:var(--wine);border:1px solid var(--wine);background:transparent;padding:12px 18px;min-height:44px}
.analytics-consent[hidden]{display:none}
@media(max-width:1200px){.header-inner{gap:14px}.nav{gap:16px}.nav>a,.nav-dropdown>summary{font-size:13px}.header-end{gap:12px}.header .button{gap:12px;padding-inline:14px}}
@media(max-width:1000px){
 .nav>a,.nav-dropdown>summary,.nav-submenu>a{font-size:14px;min-height:44px;padding-block:10px}
 .nav.is-open .mobile-menu-booking{display:inline-flex;justify-content:center;color:var(--ivory);background:var(--wine);border-color:var(--wine);margin:5px 0 0;padding-inline:18px}
 .nav{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
 .home-video .header:not(.header-scrolled) .nav-dropdown.is-current>summary{color:var(--wine)}
 .hero-video-footer{grid-template-columns:1fr auto}
 a,button,summary{min-height:44px}
 .language a,.footer a,.review-quote figcaption>a,.text-link,.breadcrumb a,.gift-terms-link a{min-height:44px;padding-block:9px}
 .language a{min-width:44px}
 .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;row-gap:0}
}
@media(max-width:620px){
 .eyebrow,.care-card-top>.eyebrow,.hero-video-copy>.eyebrow{font-size:12px}
 .description,.hero-video-description,.care-card-top>p:not(.eyebrow),.editorial-copy>p:not(.eyebrow),.faq-list p{font-size:15px}
 .footer p,.footer a,.footer address,.footer h3,.footer-bottom{font-size:13px}
 .care-duration,.care-reserve,.care-card-links .text-link,.care-card-links>a:last-child,.care-nav a,.review-quote figcaption>a,.hero-video-copy .button,.hero-video-copy .text-link,.hero-video-control{font-size:14px}
 .hero-video-main{padding-top:126px;padding-bottom:30px}
 .hero-video-copy>.eyebrow{letter-spacing:.1em;max-width:330px}
 .hero-video-copy .actions{gap:12px;margin-top:24px}
 .hero-video-footer{grid-template-columns:1fr;gap:14px}
 .hero-video-location{max-width:none;font-size:14px}
 .hero-video-controls{grid-column:1;justify-self:start}
 .care-card-links{flex-wrap:wrap;gap:0 16px;padding-block:6px}
 .care-nav a{padding:10px;min-height:48px}.care-nav a span{font-size:14px}
 .care-rate{gap:12px;grid-template-columns:minmax(0,1fr) auto auto}
 .care-duration{max-width:115px}
 .care-card-links .text-link{max-width:100%}
 .ritual-tabs{gap:12px}.ritual-tab{padding-right:0;margin-right:14px;font-size:14px}
 .contact-email{overflow-wrap:anywhere}
 .review-quote figcaption{grid-template-columns:1fr}
 .review-quote figcaption>a{justify-self:start}
 .home-spa-caption{max-width:43%;font-size:14px;bottom:0}
 .home-spa-photos{padding-bottom:100px}
 .home-spa-photos:before{bottom:93px}
 .footer-grid{gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid>div:first-child{gap:16px;align-items:flex-start}
 .footer address{max-width:none}
 .spa-context-links{display:block}.spa-context-links .text-link{margin-bottom:14px}
 .hero-video:after{background:rgba(17,11,15,.65)}
}

@media(max-width:1000px){a{display:inline-flex;align-items:center}}

/* Les liens éditoriaux conservent leur composition, avec une hauteur minimale. */
a{display:inline-flex;align-items:center;min-height:24px}
@media(max-width:1000px){a{min-height:44px}}
