@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=Inter:ital,wght@0,200;0,300;0,400;0,500;0,600;1,300;1,400&display=swap&subset=latin,latin-ext";:root{--obs:#050505;--obs1:#080808;--obs2:#0d0d0d;--obs3:#111;--gold:#bfa671;--g30:#bfa6714d;--g12:#bfa6711f;--g06:#bfa6710f;--line:#ffffff14;--line2:#ffffff0d;--wa:#25d366;--px:clamp(18px,5vw,72px);--mw:1360px;--ease:cubic-bezier(.16,1,.3,1);--r:12px;--r-lg:20px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--obs);color:#fff;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}img{width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font:inherit}body:after{content:"";z-index:9000;pointer-events:none;user-select:none;opacity:.022;mix-blend-mode:overlay;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)'/%3E%3C/svg%3E") 0 0/192px 192px;position:fixed;inset:0}.eyebrow{letter-spacing:.28em;text-transform:uppercase;color:#ffffff52;align-items:center;gap:10px;margin-bottom:clamp(14px,2.5vw,22px);font-size:9px;font-weight:500;display:flex}.eyebrow:before{content:"";background:var(--gold);flex-shrink:0;width:24px;height:1px}.t-hero{letter-spacing:-.026em;text-wrap:balance;font-family:Inter,sans-serif;font-size:clamp(1.875rem,6vw,5.25rem);font-weight:200;line-height:1.1}.t-hero em{color:var(--gold);text-transform:none;letter-spacing:-.018em;font-family:Cormorant Garamond,serif;font-size:1.1em;font-style:italic;font-weight:300;line-height:1.1;display:block}.t-section{letter-spacing:-.022em;text-wrap:balance;font-family:Inter,sans-serif;font-size:clamp(1.75rem,4.2vw,3.75rem);font-weight:200;line-height:1.1}.t-section em{color:var(--gold);text-transform:none;letter-spacing:-.016em;font-family:Cormorant Garamond,serif;font-size:1.07em;font-style:italic;font-weight:300}.btn{letter-spacing:.2em;text-transform:uppercase;transition:all .55s var(--ease);white-space:nowrap;background:0 0;border:1px solid;border-radius:50px;justify-content:center;align-items:center;gap:8px;padding:15px 28px;font-size:10px;font-weight:500;line-height:1;display:inline-flex}.btn-primary{color:#ffffffe6;backdrop-filter:blur(8px);background:#ffffff1a;border-color:#ffffff59}.btn-primary:hover{background:var(--gold);border-color:var(--gold);color:#040404}.btn-outline{color:var(--gold);background:#bfa6710f;border-color:#bfa67159}.btn-outline:hover{border-color:var(--gold);background:#bfa67124}.btn-wa{color:#6ee7b7cc;backdrop-filter:blur(8px);background:#25d3661a;border-color:#25d36638}.btn-wa:hover{background:#25d3662e;border-color:#6ee7b780}.btn-row{flex-wrap:wrap;gap:10px;display:flex}@media (width<=480px){.btn-row.mob-col{flex-direction:column}.btn-row.mob-col .btn{text-align:center;justify-content:center;width:100%}}@keyframes reveal-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}@keyframes hero-zoom{0%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes mq-run{to{transform:translate(-50%)}}@keyframes scroll-glow{0%,to{opacity:0;transform:translateY(-100%)}40%,60%{opacity:1;transform:translateY(0)}}.sr{opacity:0;transition:opacity .7s cubic-bezier(.23,1,.32,1),transform .7s cubic-bezier(.23,1,.32,1);transform:translateY(14px)}.sr.visible{opacity:1;transform:translateY(0)}.sr.d1{transition-delay:80ms}.sr.d2{transition-delay:.16s}.sr.d3{transition-delay:.24s}.sr.d4{transition-delay:.32s}@media (prefers-reduced-motion:reduce){.sr{opacity:1;transition:none;transform:none}}.mask-outer{overflow:hidden}.mask-inner{animation:reveal-up 1.1s var(--ease) both}.mask-inner.d1{animation-delay:.12s}.mask-inner.d2{animation-delay:.24s}.mask-inner.d3{animation-delay:.36s}.hero-wrap{background:var(--obs);flex-direction:column;width:100%;display:flex;position:relative}.hero-img-wrap{flex-shrink:0;width:100%;height:85svh;min-height:520px;max-height:680px;position:relative;overflow:hidden}@media (width>=768px){.hero-img-wrap{height:100svh;max-height:960px}}.hero-img-wrap img{object-fit:cover;object-position:50% 30%;width:100%;height:100%;animation:hero-zoom 2.2s var(--ease) forwards;filter:brightness(1.08)contrast(1.05)saturate(1.15);position:absolute;inset:0}.hero-scrim{background:linear-gradient(#0000 42%,#0303032e 62%,#030303ad 82%,#030303f7 100%);position:absolute;inset:0}.hero-glow{filter:blur(48px);pointer-events:none;z-index:1;background:radial-gradient(circle,#bfa6711c 0%,#0000 68%);border-radius:50%;width:38vw;height:38vw;position:absolute;top:8%;right:8%}.hero-content{z-index:3;flex-direction:column;justify-content:flex-end;align-items:flex-start;max-width:min(600px,86vw);padding:0 clamp(16px,4.5vw,56px) clamp(20px,4vh,40px);display:flex;position:absolute;bottom:0;left:0}.hero-bar{z-index:2;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);background:#0505058c;width:100%;position:relative}.hero-bar-inner{max-width:var(--mw);padding:clamp(12px,2vh,20px) var(--px);justify-content:center;align-items:center;gap:0;margin:0 auto;display:flex}@media (width<=600px){.hero-bar-inner{scrollbar-width:none;justify-content:flex-start;padding-left:clamp(16px,4vw,32px);overflow-x:auto}.hero-bar-inner::-webkit-scrollbar{display:none}}.hero-stats{flex-direction:row;align-items:center;gap:0;display:flex}.hero-stats>div{flex-shrink:0}.stat-n{text-align:center;letter-spacing:-.01em;color:#fff;font-variant-numeric:tabular-nums;font-family:Cormorant Garamond,serif;font-size:clamp(1.625rem,3.2vw,2.375rem);font-weight:300;line-height:1;display:block}.stat-l{text-align:center;letter-spacing:.22em;text-transform:uppercase;color:#ffffff47;white-space:nowrap;margin-top:4px;font-size:7px;font-weight:500;display:block}.scroll-cue{flex-direction:column;align-items:center;gap:7px;display:flex}.scroll-line{background:#ffffff1f;width:1px;height:44px;position:relative;overflow:hidden}.scroll-line:after{content:"";background:var(--gold);height:50%;animation:2.4s ease-in-out infinite scroll-glow;position:absolute;inset-inline:0}.scroll-txt{letter-spacing:.22em;text-transform:uppercase;color:#ffffff38;writing-mode:vertical-rl;font-size:7px}@media (width<=520px){.scroll-cue{display:none}}@media (width<=600px){.hero-bar-inner{flex-wrap:wrap}.hero-stats{gap:20px}.hero-bar .btn-row{width:100%}.hero-bar .btn-row .btn{flex:1}}.mq-wrap{background:var(--obs1);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);align-items:center;height:42px;display:flex;overflow:hidden;-webkit-mask:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.mq-track{align-items:center;width:max-content;animation:40s linear infinite mq-run;display:flex}.mq-item{letter-spacing:.28em;text-transform:uppercase;color:#ffffff38;white-space:nowrap;padding:0 26px;font-size:9px;font-weight:500}.mq-sep{color:var(--gold);opacity:.4;margin:0 2px}.section{padding:clamp(64px, 11vw, 128px) var(--px)}.section-inner{max-width:var(--mw);margin:0 auto}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:clamp(40px,7vw,72px);display:flex}.section-link{letter-spacing:.2em;text-transform:uppercase;color:#ffffff4d;border-bottom:1px solid #ffffff1f;flex-shrink:0;align-items:center;gap:6px;padding-bottom:2px;font-size:9px;font-weight:500;transition:color .4s,border-color .4s;display:inline-flex}@media (hover:hover) and (pointer:fine){.section-link:hover{color:var(--gold);border-color:var(--gold)}}.svc-list{border-top:1px solid var(--line)}.svc-row{border-bottom:1px solid var(--line);transition:padding-left .5s var(--ease);color:inherit;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(12px,2.5vw,32px);padding:clamp(16px,2.5vw,24px) 0;text-decoration:none;display:grid;position:relative;overflow:hidden}.svc-row:before{content:"";background:var(--gold);width:0;transition:width .5s var(--ease);position:absolute;top:0;bottom:0;left:0}@media (hover:hover) and (pointer:fine){.svc-row:hover{padding-left:14px}.svc-row:hover:before{width:2px}.svc-row:hover .svc-name{color:#fff}.svc-row:hover .svc-arr{color:var(--gold);transform:translate(6px)}}.svc-no{color:#ffffff2e;flex-shrink:0;width:2.5ch;font-family:Cormorant Garamond,serif;font-size:clamp(.8rem,1.5vw,1.125rem);font-style:italic;font-weight:300}.svc-name{letter-spacing:-.01em;text-transform:uppercase;color:#ffffff85;transition:color .45s var(--ease);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(1.1rem,2.5vw,2.25rem);font-weight:200;overflow:hidden}.svc-sub{letter-spacing:.16em;text-transform:uppercase;color:#ffffff38;margin-top:3px;font-size:9px;font-weight:500;display:block}.svc-meta{flex-shrink:0;align-items:center;gap:clamp(12px,2vw,24px);display:flex}.svc-dur{letter-spacing:.12em;text-transform:uppercase;color:#fff3;font-size:9px}.svc-arr{color:#ffffff40;transition:transform .4s var(--ease), color .4s;font-size:1rem}@media (width<=440px){.svc-dur{display:none}.svc-row{grid-template-columns:auto 1fr auto}}.svc-layout{grid-template-columns:1fr;gap:clamp(40px,6vw,72px);display:grid}@media (width>=1024px){.svc-layout{grid-template-columns:1fr 400px;align-items:start}.svc-visual{display:block!important}}.svc-visual{border-radius:var(--r-lg);aspect-ratio:4/5;display:none;position:sticky;top:96px;overflow:hidden}.svc-visual img{object-fit:cover;width:100%;height:100%;transition:transform 2s var(--ease), opacity .8s;opacity:.85;filter:brightness(1.08)contrast(1.05)saturate(1.15)}.svc-visual:hover img{opacity:1;transform:scale(1.03)}.gallery-grid{column-count:2;column-gap:clamp(4px,1vw,8px)}@media (width>=768px){.gallery-grid{column-count:3}}.g-item{break-inside:avoid;will-change:transform;cursor:zoom-in;will-change:transform;background:#111;border-radius:0;margin-bottom:clamp(4px,1vw,8px);position:relative;overflow:hidden;transform:translateZ(0)}@media (width>=640px){.g-item{border-radius:3px}}.g-item img{object-fit:cover;aspect-ratio:auto;width:100%;height:auto;transition:transform 2.2s var(--ease), filter .5s;filter:brightness(1.08)contrast(1.05)saturate(1.15);opacity:1;display:block}@media (hover:hover) and (pointer:fine){.g-item:hover img{filter:brightness(1.12)contrast(1.06)saturate(1.18);opacity:1;transform:scale(1.03)}}.g-label{letter-spacing:.22em;text-transform:uppercase;color:#ffffff8c;opacity:0;background:linear-gradient(#0000,#000000b8);padding:18px 12px 10px;font-size:8px;font-weight:500;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.g-item:hover .g-label{opacity:1}.fs{background:var(--obs);border-top:1px solid var(--line);width:100%;position:relative;overflow:hidden}.fs img{object-fit:cover;width:100%;height:100%;transition:transform 2s var(--ease);filter:brightness(1.1)contrast(1.06)saturate(1.18);display:block}.fs:hover img{transform:scale(1.025)}.fs:after{content:"";pointer-events:none;background:linear-gradient(#0000 62%,#00000085 100%);position:absolute;inset:0}.fs-tag{z-index:2;letter-spacing:.26em;text-transform:uppercase;color:#ffffff59;font-size:9px;font-weight:500;position:absolute;bottom:clamp(20px,4vh,36px)}.fs-tag-l{left:var(--px)}.fs-tag-r{right:var(--px)}.about-grid{grid-template-columns:1fr;align-items:center;gap:clamp(40px,6vw,80px);display:grid}@media (width>=768px){.about-grid{grid-template-columns:1fr 1fr}}.about-img{border-radius:var(--r-lg);aspect-ratio:4/5;position:relative;overflow:hidden}.about-img img{object-fit:cover;object-position:center 12%;width:100%;height:100%;transition:transform 2s var(--ease), opacity .8s;opacity:.92;filter:brightness(1.1)contrast(1.06)saturate(1.18)}.about-grid:hover .about-img img{transform:scale(1.03)}.about-img:after{content:"";pointer-events:none;background:radial-gradient(circle,#bfa67114 0%,#0000 70%);border-radius:50%;width:60%;height:60%;position:absolute;top:-20%;left:-20%}.about-quote{color:#ffffff70;border-left:1px solid var(--g30);margin-bottom:36px;padding-left:18px;font-family:Cormorant Garamond,serif;font-size:clamp(1.05rem,1.8vw,1.375rem);font-style:italic;font-weight:300;line-height:1.6}.spa-grid{border-top:1px solid var(--line);grid-template-columns:1fr;display:grid}@media (width>=768px){.spa-grid{grid-template-columns:1fr 1fr;min-height:82svh}}.spa-vis{min-height:280px;position:relative;overflow:hidden}.spa-vis img{object-fit:cover;object-position:center 35%;width:100%;height:100%;transition:transform 2s var(--ease);filter:brightness(1.1)contrast(1.06)saturate(1.18)}.spa-grid:hover .spa-vis img{transform:scale(1.03)}.spa-vis:after{content:"";background:linear-gradient(to bottom, transparent 50%, var(--obs2) 100%);pointer-events:none;position:absolute;inset:0}@media (width>=768px){.spa-vis:after{background:linear-gradient(to right, transparent 55%, var(--obs2) 100%)}}.spa-copy{padding:clamp(40px, 7vw, 96px) var(--px);background:var(--obs2);border-left:1px solid var(--line);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.spa-copy:before{content:"";pointer-events:none;background:radial-gradient(circle,#bfa67112 0%,#0000 70%);border-radius:50%;width:50%;height:50%;position:absolute;top:-20%;left:-20%}.spa-h2{letter-spacing:-.024em;text-wrap:balance;margin-bottom:20px;font-size:clamp(1.625rem,3vw,3rem);font-weight:200;line-height:1.1}.spa-h2 em{color:var(--gold);text-transform:none;letter-spacing:-.016em;font-family:Cormorant Garamond,serif;font-size:1.12em;font-style:italic;font-weight:300;line-height:1.1}.spa-list{flex-direction:column;gap:11px;margin-bottom:36px;list-style:none;display:flex}.spa-list li{color:#ffffff61;align-items:flex-start;gap:12px;font-size:13px;display:flex}.chk{width:16px;height:16px;color:var(--gold);border:1px solid #bfa6714d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:8px;display:inline-flex}@media (width<=767px){.spa-copy{border-left:none;border-top:1px solid var(--line)}}.avail-grid{grid-template-columns:1fr;align-items:start;gap:clamp(40px,7vw,96px);display:grid}@media (width>=768px){.avail-grid{grid-template-columns:1fr 1.1fr}}.avail-h2{letter-spacing:-.022em;text-wrap:balance;text-wrap:balance;margin-bottom:18px;font-size:clamp(2rem,5vw,5rem);font-weight:200;line-height:1.1}.avail-h2 em{color:#ffffff52;text-transform:none;font-family:Cormorant Garamond,serif;font-size:.88em;font-style:italic;font-weight:300;display:block}.avail-panel{border-radius:var(--r-lg);border:1px solid var(--line);overflow:hidden}.avail-row{border-bottom:1px solid var(--line2);transition:background .3s, padding-left .4s var(--ease);justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:relative;overflow:hidden}.avail-row:before{content:"";background:var(--g12);width:0;transition:width .4s var(--ease);position:absolute;top:0;bottom:0;left:0}@media (hover:hover) and (pointer:fine){.avail-row:hover:before{width:2px}}.avail-row:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.avail-row:hover{padding-left:16px}}.avail-nm{color:#ffffff80;font-size:clamp(.875rem,1.5vw,1rem);font-weight:300}.avail-tag{letter-spacing:.15em;text-transform:uppercase;border:1px solid;border-radius:50px;padding:5px 13px;font-size:8px;font-weight:500}.tg{color:#6ee7b7a6;background:#6ee7b70f;border-color:#6ee7b733}.ta{color:#fbbf24a6;background:#fbbf240f;border-color:#fbbf2433}.tr{color:#fca5a5a6;background:#fca5a50f;border-color:#fca5a533}.avail-note{border-top:1px solid var(--line2);letter-spacing:.1em;text-transform:uppercase;color:#ffffff2e;padding:12px 18px;font-size:8px;display:block}.review-cols{column-count:1;column-gap:clamp(10px,1.5vw,16px)}@media (width>=560px){.review-cols{column-count:2}}@media (width>=1024px){.review-cols{column-count:3}}.review-card{break-inside:avoid;border-radius:var(--r-lg);border:1px solid var(--line);background:#ffffff06;margin-bottom:clamp(10px,1.5vw,16px);padding:clamp(18px,2.5vw,28px);transition:border-color .4s,background .4s}@media (hover:hover) and (pointer:fine){.review-card:hover{border-color:var(--g30);background:var(--g06)}}.rev-stars{color:var(--gold);letter-spacing:2px;margin:12px 0 10px;font-size:11px}.rev-text{color:#ffffff75;margin-bottom:14px;font-size:13px;line-height:1.72}.rev-pkg{letter-spacing:.15em;text-transform:uppercase;color:var(--gold);opacity:.5;border:1px solid var(--g30);border-radius:50px;padding:4px 12px;font-size:8px;display:inline-block}.cta-section{text-align:center;padding:clamp(80px, 12vw, 140px) var(--px);border-top:1px solid var(--line);position:relative;overflow:hidden}.cta-glow{filter:blur(72px);pointer-events:none;background:radial-gradient(circle,#bfa67114 0%,#0000 68%);border-radius:50%;width:72vw;height:36vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-h2{letter-spacing:-.026em;text-transform:uppercase;margin-bottom:16px;font-size:clamp(2.125rem,5.5vw,5.5rem);font-weight:200;line-height:1.1}.cta-h2 em{color:var(--gold);text-transform:none;font-family:Cormorant Garamond,serif;font-size:1.05em;font-style:italic;font-weight:300}.footer-grid{grid-template-columns:1fr;gap:clamp(28px,4vw,48px);display:grid}@media (width>=640px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width>=1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.foot-col-ttl{letter-spacing:.25em;text-transform:uppercase;color:#ffffff38;margin-bottom:16px;font-size:8px;font-weight:500;display:block}.foot-col a,.foot-col span{color:#ffffff4d;margin-bottom:9px;font-size:13px;transition:color .3s;display:block}.foot-col a:hover{color:var(--gold)}.lb{z-index:8000;backdrop-filter:blur(12px);background:#000000f7;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lb.open{display:flex}.lb-img{object-fit:contain;border-radius:var(--r);max-width:92vw;max-height:92vh}.lb-x{color:#ffffff61;background:0 0;border:none;padding:10px;font-size:1.25rem;line-height:1;transition:color .2s;position:absolute;top:20px;right:24px}.lb-x:hover{color:var(--gold)}.lb-arr{color:#ffffff38;user-select:none;background:0 0;border:none;padding:20px;font-size:2.25rem;line-height:1;transition:color .2s;position:absolute;top:50%;transform:translateY(-50%)}.lb-arr:hover{color:#fff}.lb-p{left:4px}.lb-n{right:4px}.wa-fab{z-index:7000;background:var(--wa);width:52px;height:52px;transition:transform .4s var(--ease), box-shadow .4s;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 4px 20px #25d36652}@media (hover:hover) and (pointer:fine){.wa-fab:hover{transform:scale(1.1);box-shadow:0 8px 32px #25d36666}}
