:root{--cream:#faf7f1;--ivory:#f3ede3;--sand:#e8dfd1;--sand-deep:#ddcfbb;--blush:#ead7d2;--blush-deep:#d9b6af;--gold:#a68b5b;--gold-deep:#7e653f;--gold-light:#cbb48c;--ink:#2c2823;--ink-soft:#60594e;--ink-mute:#8a8175;--espresso:#211e1a;--white:#fffdf9;--line:#2c28231f;--line-gold:#a68b5b52;--font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--font-sans:"Jost", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--container:1240px;--shadow-soft:0 34px 90px #372b1a1a;--ease:cubic-bezier(.22, .61, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{background:var(--cream);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;font-weight:400;line-height:1.7;overflow-x:hidden}body.menu-open{overflow:hidden}body:before{content:"";z-index:9998;pointer-events:none;opacity:.022;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='280' height='280'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.7'/%3E%3C/svg%3E");position:fixed;inset:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}::selection{background:var(--gold);color:var(--cream)}:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:400;line-height:.98}h1{font-size:clamp(4.1rem,7.3vw,7rem)}h2{font-size:clamp(2.9rem,4.9vw,4.7rem);line-height:1.02}h3{font-size:clamp(1.6rem,2vw,2rem)}p{margin:0}h1 em,h2 em{color:var(--gold-deep);font-style:italic;font-weight:400}h1 span,h2 span{display:block}.container{width:min(var(--container), calc(100% - 96px));margin-inline:auto}.section{padding:clamp(90px,10vw,150px) 0;position:relative}.skip-link{z-index:9999;background:var(--ink);color:var(--cream);letter-spacing:.12em;text-transform:uppercase;transition:top .25s var(--ease);border-radius:3px;padding:12px 18px;font-size:11px;position:fixed;top:-120px;left:20px}.skip-link:focus{top:14px}.eyebrow{color:var(--gold-deep);font-family:var(--font-sans);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:14px;margin:0;font-size:10.5px;font-weight:500;line-height:1.4;display:flex}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow-rule{background:linear-gradient(90deg, transparent, var(--gold));width:36px;height:1px;display:inline-block}.eyebrow-center{justify-content:center}.eyebrow-light{color:var(--gold-light)}.eyebrow-light .eyebrow-rule{background:linear-gradient(90deg, transparent, var(--gold-light))}.section-head-center{text-align:center;max-width:790px;margin:0 auto clamp(52px,6vw,80px)}.section-head-center h2{margin-top:26px}.section-intro{max-width:620px;color:var(--ink-soft);margin:26px auto 0;font-size:1.02rem;font-weight:300;line-height:1.8}.btn{cursor:pointer;letter-spacing:.17em;text-transform:uppercase;white-space:nowrap;transition:background-color .4s var(--ease), border-color .4s var(--ease), color .4s var(--ease), transform .4s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:13px;padding:18px 31px;font-size:10.5px;font-weight:500;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn svg{transition:transform .4s var(--ease);flex-shrink:0}.btn:hover svg{transform:translate(3px)}.btn-primary{border-color:var(--gold-deep);background:var(--gold-deep);color:var(--cream)}.btn-primary:hover,.btn-outline{border-color:var(--ink);background:var(--ink);color:var(--cream)}.btn-outline:hover{color:var(--ink);background:0 0;border-color:#2c282342}.btn-light{border-color:var(--gold-light);background:var(--gold-light);color:var(--ink)}.btn-light:hover{border-color:var(--cream);background:var(--cream);color:var(--ink)}.btn-sm{letter-spacing:.15em;padding:13px 22px;font-size:9.5px}.btn-lg{padding:20px 37px;font-size:11px}.text-link{border-bottom:1px solid var(--line);color:var(--ink);letter-spacing:.18em;text-transform:uppercase;transition:color .3s var(--ease), border-color .3s var(--ease);align-items:center;gap:10px;padding-bottom:6px;font-size:10px;font-weight:500;display:inline-flex}.text-link svg{transition:transform .35s var(--ease)}.text-link:hover{border-color:var(--gold-deep);color:var(--gold-deep)}.text-link:hover svg{transform:translate(2px,-2px)}[data-reveal]{opacity:0;transition:opacity .9s var(--ease) var(--reveal-delay,0s), transform .9s var(--ease) var(--reveal-delay,0s);transform:translateY(26px)}[data-reveal].is-visible{opacity:1;transform:none}.reveal-delay-1{--reveal-delay:.12s}.site-header{z-index:80;-webkit-backdrop-filter:blur(18px);transition:background-color .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);background:#faf7f1d1;border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-scrolled{border-color:var(--line);background:#faf7f1f5;box-shadow:0 14px 40px #372b1a0f}.nav-inner{min-height:88px;transition:min-height .35s var(--ease);grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;display:grid}.site-header.is-scrolled .nav-inner{min-height:74px}.brand{justify-self:start;width:164px;display:block}.brand img{width:100%;height:auto}.desktop-nav{align-items:center;gap:clamp(20px,2.4vw,34px);display:flex}.desktop-nav a{color:var(--ink-soft);letter-spacing:.16em;text-transform:uppercase;transition:color .25s var(--ease);padding:8px 0;font-size:13px;font-weight:600;position:relative}.desktop-nav a:after{content:"";background:var(--gold);height:1px;transition:right .35s var(--ease), left .35s var(--ease);position:absolute;bottom:0;left:50%;right:50%}.desktop-nav a:hover,.desktop-nav a.is-active{color:var(--ink)}.desktop-nav a.is-active:after{left:0;right:0}.nav-actions{justify-self:end;align-items:center;gap:14px;display:flex}.nav-call{border:1px solid var(--line-gold);width:36px;height:36px;color:var(--gold-deep);transition:background-color .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease), transform .3s var(--ease);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.nav-call:hover{border-color:var(--gold-deep);background:var(--gold-deep);color:var(--cream);transform:translateY(-1px)}.menu-toggle{cursor:pointer;background:0 0;border:0;padding:6px;display:none}.mobile-menu{z-index:95;background:var(--cream);opacity:0;visibility:hidden;transition:opacity .4s var(--ease), visibility .4s var(--ease), transform .4s var(--ease);flex-direction:column;padding:22px 24px 30px;display:flex;position:fixed;inset:0;overflow-y:auto;transform:translateY(-10px)}.mobile-menu.is-open{opacity:1;visibility:visible;transform:none}.mobile-menu-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:22px;display:flex}.mobile-menu-head img{width:148px;height:auto}.menu-close{border:1px solid var(--line);cursor:pointer;width:44px;height:44px;transition:background-color .3s var(--ease), color .3s var(--ease);background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.menu-close:hover{background:var(--ink);color:var(--cream)}.mobile-nav{flex-direction:column;padding:16px 0;display:flex}.mobile-nav a{border-bottom:1px solid var(--line);font-family:var(--font-display);transition:color .3s var(--ease);align-items:center;gap:16px;padding:17px 4px;font-size:clamp(1.8rem,7vw,2.3rem);line-height:1;display:flex}.mobile-nav a:hover{color:var(--gold-deep)}.mobile-nav a svg{color:var(--gold);margin-left:auto}.mobile-nav-index{width:24px;color:var(--gold-deep);font-family:var(--font-sans);letter-spacing:.18em;font-size:8.5px}.mobile-menu-foot{flex-direction:column;gap:20px;margin-top:auto;padding-top:26px;display:flex}.mobile-menu-foot .btn{width:100%}.mobile-menu-contact{color:var(--ink-soft);flex-direction:column;gap:6px;font-size:12px;display:flex}.mobile-menu-socials{gap:10px;display:flex}.mobile-menu-socials a{border:1px solid var(--line);width:42px;height:42px;color:var(--ink-soft);transition:background-color .3s var(--ease), color .3s var(--ease);border-radius:50%;place-items:center;display:grid}.mobile-menu-socials a:hover{background:var(--ink);color:var(--cream)}.hero{padding:clamp(46px,6vw,82px) 0 clamp(72px,8vw,118px);position:relative;overflow:hidden}.hero-wash{pointer-events:none;background:radial-gradient(60% 55% at 78% 18%,#ead7d2ad,#0000 70%),radial-gradient(45% 45% at 6% 88%,#e8dfd199,#0000 70%),linear-gradient(#faf7f1 0%,#f8f3eb 100%);position:absolute;inset:0}.hero-grid{grid-template-columns:1.04fr .96fr;align-items:center;gap:clamp(48px,6vw,96px);display:grid;position:relative}.hero-copy{max-width:620px;padding-top:20px}.hero h1{margin:28px 0 26px}.hero-lede{max-width:490px;color:var(--ink-soft);font-size:clamp(1rem,1.2vw,1.08rem);font-weight:300;line-height:1.85}.hero-actions{align-items:center;gap:30px;margin-top:38px;display:flex}.hero-details{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:20px;margin-top:46px;font-size:9.5px;display:flex}.hero-detail{align-items:center;gap:8px;display:flex}.hero-detail svg{color:var(--gold-deep)}.hero-detail-divider{background:var(--line);width:1px;height:14px}.hero-visual{justify-self:end;width:100%;max-width:560px;padding:16px;position:relative}.hero-arch{aspect-ratio:4/5;background:var(--sand);box-shadow:var(--shadow-soft);border-radius:280px 280px 6px 6px;position:relative;overflow:hidden}.hero-arch img{object-fit:cover;object-position:center 28%;filter:saturate(.82)sepia(.08)contrast(.96);width:100%;height:100%;transition:transform 1.6s var(--ease);transform:scale(1.02)}.hero-visual:hover .hero-arch img{transform:scale(1.06)}.hero-arch-shade{background:linear-gradient(#2c282300 45%,#2c28234d 100%),linear-gradient(90deg,#a68b5b24,#0000 42%);position:absolute;inset:0}.hero-arch:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;border:1px solid #faf7f17a;position:absolute;inset:16px}.hero-orbit{pointer-events:none;border:1px solid #a68b5b4d;border-radius:50%;position:absolute}.hero-orbit-one{width:88%;height:88%;top:-6%;right:-14%}.hero-orbit-two{border-color:#a68b5b29;width:40%;height:40%;bottom:10%;left:-16%}.hero-stamp{z-index:3;filter:drop-shadow(0 16px 30px #372b1a2e);width:116px;animation:7s ease-in-out infinite alternate float-y;position:absolute;bottom:50px;left:-38px}.hero-stamp img{border:6px solid var(--cream);border-radius:50%;width:100%;height:auto}.hero-note{z-index:2;border:1px solid var(--line-gold);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf9ed;flex-direction:column;gap:8px;width:200px;padding:18px 22px;display:flex;position:absolute;bottom:84px;right:-24px;box-shadow:0 20px 50px #372b1a1f}.hero-note-script{color:var(--gold-deep);font-family:var(--font-display);font-size:1.3rem;font-style:italic;line-height:1}.hero-note-line{background:var(--gold);width:26px;height:1px}.hero-note-copy{color:var(--ink-soft);letter-spacing:.2em;text-transform:uppercase;font-size:8.5px}.hero-vertical{color:var(--ink-mute);letter-spacing:.32em;text-transform:uppercase;white-space:nowrap;transform-origin:50%;font-size:8.5px;position:absolute;top:50%;right:-62px;transform:rotate(90deg)translateY(-50%)}@keyframes float-y{0%{transform:translateY(0)}to{transform:translateY(-12px)}}.marquee{background:var(--espresso);color:var(--cream);border-top:1px solid #faf7f114;border-bottom:1px solid #faf7f114;overflow:hidden}.marquee-track{width:max-content;animation:46s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-group{align-items:center;padding:17px 0;display:flex}.marquee-item{font-family:var(--font-display);letter-spacing:.07em;color:#faf7f1eb;align-items:center;gap:30px;padding:0 34px;font-size:1.28rem;display:flex}.marquee-item svg{color:var(--gold-light);opacity:.8}.marquee-script{color:var(--gold-light);font-family:var(--font-display);padding:0 34px;font-size:1.32rem;font-style:italic}@keyframes marquee{to{transform:translate(-25%)}}.philosophy{background:var(--cream);overflow:hidden}.philosophy-grid{grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(50px,7vw,108px);display:grid}.ritual-media{width:100%;max-width:500px;padding-bottom:40px;position:relative}.ritual-media:before{content:"";border:1px solid var(--line-gold);pointer-events:none;position:absolute;inset:26px -26px -16px 26px}.ritual-frame{z-index:1;aspect-ratio:4/5;box-shadow:var(--shadow-soft);border-radius:3px;position:relative;overflow:hidden}.ritual-frame:after{content:"";pointer-events:none;border:1px solid #faf7f17a;position:absolute;inset:14px}.ritual-frame img{object-fit:cover;filter:saturate(.82)sepia(.06)contrast(.97);width:100%;height:100%}.ritual-stamp{z-index:2;filter:drop-shadow(0 14px 28px #372b1a29);width:116px;position:absolute;top:-34px;right:-32px}.ritual-stamp img{border-radius:50%;width:100%;height:auto}.ritual-caption{z-index:2;border:1px solid var(--line-gold);background:var(--cream);flex-direction:column;gap:7px;min-width:236px;padding:18px 24px;display:flex;position:absolute;bottom:0;left:-24px;box-shadow:0 20px 45px #372b1a17}.ritual-caption-script{color:var(--gold-deep);font-family:var(--font-display);font-size:1.28rem;font-style:italic;line-height:1}.ritual-caption-rule{background:var(--gold);width:24px;height:1px}.ritual-caption span:last-child{color:var(--ink-soft);letter-spacing:.18em;text-transform:uppercase;font-size:8.5px}.philosophy-copy h2{margin:26px 0 30px}.philosophy-text{max-width:535px;color:var(--ink-soft);flex-direction:column;gap:18px;font-weight:300;line-height:1.82;display:flex}.philosophy-text p:first-child{color:var(--ink);font-size:1.08rem;font-weight:400}.promise-list{border-top:1px solid var(--line);max-width:545px;margin-top:38px}.promise{border-bottom:1px solid var(--line);grid-template-columns:52px 1fr;gap:10px;padding:20px 0;display:grid}.promise-number{color:var(--gold-deep);letter-spacing:.2em;padding-top:6px;font-size:9px}.promise h3{margin-bottom:4px;font-size:1.35rem;line-height:1.1}.promise p{max-width:420px;color:var(--ink-soft);font-size:.88rem;font-weight:300;line-height:1.65}.philosophy-link{margin-top:30px}.services{background:var(--ivory);border-top:1px solid #2c28230d}.service-grid{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.service-card{transition:background-color .45s var(--ease), box-shadow .45s var(--ease);background:#fffdf9ad;flex-direction:column;padding:36px 30px 30px;display:flex;position:relative}.service-card:hover{z-index:1;background:var(--white);box-shadow:0 30px 60px #372b1a14}.service-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:26px;display:flex}.service-icon{border:1px solid var(--line-gold);width:54px;height:54px;color:var(--gold-deep);transition:background-color .4s var(--ease), border-color .4s var(--ease), color .4s var(--ease);background:#faf7f199;border-radius:50%;place-items:center;display:grid}.service-card:hover .service-icon{border-color:var(--gold-deep);background:var(--gold-deep);color:var(--cream)}.service-number{color:var(--ink-mute);letter-spacing:.2em;font-size:8.5px}.service-card h3{margin-bottom:12px;font-size:clamp(2rem,2.3vw,2.5rem);line-height:1}.service-card h3 .service-location{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:6px;font-family:Jost,sans-serif;font-size:.3em;font-weight:400;line-height:1.3;display:block}.service-description{min-height:100px;color:var(--ink-soft);font-size:.86rem;font-weight:300;line-height:1.7}.price-list{border-top:1px solid var(--line);flex-direction:column;flex:1;gap:11px;margin:24px 0 26px;padding:20px 0 0;list-style:none;display:flex}.price-list li{color:var(--ink-soft);align-items:baseline;font-size:11.5px;display:flex}.price-dots{border-bottom:1px dotted #2c282338;flex:1;margin:0 8px 4px}.price{color:var(--ink);font-family:var(--font-display);letter-spacing:0;font-size:1.05rem}.service-link{border-top:1px solid var(--line);color:var(--gold-deep);letter-spacing:.18em;text-transform:uppercase;transition:color .3s var(--ease);justify-content:space-between;align-items:center;gap:10px;padding-top:18px;font-size:9px;font-weight:500;display:inline-flex}.service-link svg{transition:transform .35s var(--ease)}.service-link:hover{color:var(--ink)}.service-link:hover svg{transform:translate(4px)}.services-foot{justify-content:space-between;align-items:center;gap:40px;margin-top:38px;display:flex}.services-foot p{max-width:610px;color:var(--ink-mute);letter-spacing:.02em;font-size:10.5px;line-height:1.7}.services-foot .btn{flex-shrink:0}.quote-section{background:linear-gradient(120deg,#f2e6e0 0%,#f7f0e6 45%,#eee3d5 100%);padding:clamp(90px,10vw,140px) 0;position:relative;overflow:hidden}.quote-glow{background:radial-gradient(circle,#fffdf9b3,#0000 65%);border-radius:50%;width:600px;height:600px;position:absolute;top:-300px;right:-100px}.quote-inner{text-align:center;max-width:900px;padding:0 24px;position:relative}.quote-stamp{opacity:.94;border:4px solid #faf7f199;border-radius:50%;width:76px;height:auto;margin:0 auto 22px;box-shadow:0 14px 34px #372b1a1f}.quote-mark{height:40px;color:var(--gold);font-family:var(--font-display);font-size:6rem;line-height:.45;display:block}.quote-text{max-width:850px;color:var(--ink);font-family:var(--font-display);letter-spacing:-.015em;margin:18px auto 28px;font-size:clamp(1.9rem,3.3vw,3.1rem);line-height:1.25}.quote-text em{color:var(--gold-deep);font-style:italic}.quote-attribution{color:var(--gold-deep);letter-spacing:.28em;text-transform:uppercase;font-size:9px}.booking{background:var(--cream);overflow:hidden}.booking-wash{pointer-events:none;background:radial-gradient(50% 60% at 8% 12%,#e8dfd199,#0000 70%);position:absolute;inset:0}.booking-head{margin-bottom:clamp(46px,5vw,64px)}.booking-shell{border:1px solid var(--line-gold);background:var(--white);grid-template-columns:340px 1fr;display:grid;position:relative;box-shadow:0 42px 100px #372b1a17}.booking-aside{border-right:1px solid var(--line-gold);background:linear-gradient(158deg,#f0e4de 0%,#f6efe5 100%);flex-direction:column;padding:46px 38px;display:flex}.booking-script{color:var(--gold-deep);font-family:var(--font-display);font-size:1.4rem;font-style:italic;line-height:1.2}.booking-aside h3{margin:14px 0;font-size:2.3rem}.booking-aside-copy{color:var(--ink-soft);font-size:.92rem;font-weight:300;line-height:1.75}.booking-points{border-top:1px solid var(--line-gold);border-bottom:1px solid var(--line-gold);flex-direction:column;gap:13px;margin:26px 0;padding:26px 0;list-style:none;display:flex}.booking-points li{color:var(--ink-soft);letter-spacing:.05em;align-items:center;gap:12px;font-size:10.5px;display:flex}.booking-points svg{color:var(--gold-deep);flex-shrink:0}.booking-contact{flex-direction:column;gap:10px;margin-bottom:28px;display:flex}.booking-contact a{color:var(--ink);transition:color .3s var(--ease);align-items:center;gap:10px;font-size:12px;display:flex}.booking-contact svg,.booking-contact a:hover{color:var(--gold-deep)}.booking-external{align-self:flex-start;margin-top:auto}.booking-widget{background:var(--white)}.widget-topbar{border-bottom:1px solid var(--line);background:#faf7f1a6;justify-content:space-between;align-items:center;gap:20px;padding:18px 26px;display:flex}.widget-title{color:var(--ink);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:10px;font-size:9.5px;font-weight:500;display:flex}.widget-title svg{color:var(--gold-deep)}.widget-powered{color:var(--ink-mute);letter-spacing:.16em;text-transform:uppercase;font-size:8.5px}.widget-mount{background:var(--white);min-height:720px;position:relative}.widget-mount iframe{z-index:1;background:#fff;border:0;display:block;position:relative;width:100%!important;min-height:720px!important}.widget-placeholder{z-index:2;pointer-events:none;background:var(--white);color:var(--ink-mute);letter-spacing:.2em;text-transform:uppercase;transition:opacity .5s var(--ease), visibility .5s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:18px;font-size:9.5px;display:flex;position:absolute;inset:0}.widget-placeholder img{opacity:.8;border-radius:50%;width:70px;height:70px}.widget-mount.is-ready .widget-placeholder{visibility:hidden;opacity:0}.booking-disclaimer{max-width:700px;color:var(--ink-mute);letter-spacing:.02em;padding:16px 4px 0;font-size:9.5px;line-height:1.7}.booking-disclaimer a{color:var(--gold-deep);text-underline-offset:2px;text-decoration:underline}.gallery{background:var(--cream)}.gallery-head{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:44px;display:flex}.gallery-head h2{margin-top:24px}.gallery-head-aside{text-align:right;flex-direction:column;align-items:flex-end;gap:16px;max-width:320px;display:flex}.gallery-head-aside p{color:var(--ink-soft);font-size:.94rem;font-weight:300;line-height:1.7}.instagram-frame{border:1px solid var(--line-gold);background:var(--white);padding:clamp(12px,1.5vw,20px);box-shadow:0 30px 80px #372b1a0f}.instagram-frame-head{color:var(--ink-soft);letter-spacing:.2em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:6px 6px 18px;font-size:8.5px;display:flex}.instagram-frame-tag{color:var(--gold-deep)}.instagram-frame iframe{background:var(--cream);width:100%;height:1500px;transition:height .4s var(--ease);border:0;display:block}.gallery-foot{justify-content:space-between;align-items:center;gap:30px;margin-top:32px;display:flex}.gallery-foot p{color:var(--ink-mute);letter-spacing:.03em;font-size:10.5px}.gallery-foot p span{color:var(--gold-deep)}.faq{border-top:1px solid var(--line);background:var(--ivory)}.faq-grid{grid-template-columns:.82fr 1.18fr;align-items:start;gap:clamp(50px,7vw,110px);display:grid}.faq-intro{padding-bottom:40px;position:sticky;top:120px}.faq-intro h2{margin:26px 0 28px}.faq-intro-copy{max-width:430px;color:var(--ink-soft);margin-bottom:16px;font-weight:300;line-height:1.8}.faq-contact{border-top:1px solid var(--line-gold);border-bottom:1px solid var(--line-gold);width:100%;max-width:365px;color:var(--ink);transition:color .3s var(--ease);align-items:center;gap:14px;margin-top:20px;padding:16px 0;font-size:12px;display:flex}.faq-contact-icon{border:1px solid var(--line-gold);width:42px;height:42px;color:var(--gold-deep);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.faq-contact small{color:var(--ink-mute);letter-spacing:.2em;text-transform:uppercase;margin-bottom:3px;font-size:8px;display:block}.faq-contact:hover{color:var(--gold-deep)}.faq-stamp{opacity:.92;border-radius:50%;width:90px;height:auto;margin-top:34px}.faq-list{border-top:1px solid var(--line-gold)}.faq-item{border-bottom:1px solid var(--line-gold)}.faq-heading{font-family:var(--font-sans);margin:0}.faq-question{width:100%;color:var(--ink);cursor:pointer;letter-spacing:0;text-align:left;transition:color .3s var(--ease);background:0 0;border:0;grid-template-columns:40px 1fr 40px;align-items:center;gap:16px;padding:25px 0;font-size:clamp(.98rem,1.2vw,1.08rem);font-weight:400;line-height:1.5;display:grid}.faq-question:hover{color:var(--gold-deep)}.faq-index{color:var(--gold-deep);letter-spacing:.2em;font-size:8.5px}.faq-icon{border:1px solid var(--line-gold);width:34px;height:34px;color:var(--gold-deep);transition:background-color .35s var(--ease), border-color .35s var(--ease), color .35s var(--ease), transform .35s var(--ease);border-radius:50%;justify-self:end;place-items:center;display:grid}.faq-item.is-open .faq-icon{border-color:var(--gold-deep);background:var(--gold-deep);color:var(--cream);transform:rotate(45deg)}.faq-answer{transition:grid-template-rows .45s var(--ease);grid-template-rows:0fr;display:grid}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-answer-inner{overflow:hidden}.faq-answer p{max-width:660px;color:var(--ink-soft);padding:0 56px 26px;font-size:.9rem;font-weight:300;line-height:1.8}.contact{background:var(--espresso);color:var(--cream);padding:clamp(90px,10vw,140px) 0;position:relative;overflow:hidden}.contact-watermark{opacity:.04;pointer-events:none;width:min(700px,55vw);height:auto;position:absolute;bottom:-40px;right:-80px}.contact-grid{grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(50px,7vw,100px);display:grid;position:relative}.contact h2{color:var(--cream);margin:26px 0 24px}.contact h2 em{color:var(--gold-light)}.contact-lede{color:#faf7f1a3;max-width:480px;margin-bottom:38px;font-weight:300;line-height:1.8}.contact-details{border-top:1px solid #faf7f124;flex-direction:column;max-width:570px;display:flex}.contact-row{border-bottom:1px solid #faf7f124;grid-template-columns:44px 1fr;gap:16px;padding:18px 0;display:grid}.contact-row-icon{width:36px;height:36px;color:var(--gold-light);border:1px solid #cbb48c66;border-radius:50%;place-items:center;margin-top:2px;display:grid}.contact-label{color:var(--gold-light);letter-spacing:.22em;text-transform:uppercase;margin-bottom:3px;font-size:8px;display:block}.contact-value{color:#faf7f1e0;transition:color .3s var(--ease);font-size:12.5px}a.contact-value:hover{color:var(--gold-light)}.hours-list{color:#faf7f1cc;flex-direction:column;gap:4px;margin:0;padding:0;font-size:11.5px;list-style:none;display:flex}.hours-list li{justify-content:space-between;gap:40px;max-width:340px;display:flex}.hours-list .is-closed{color:#faf7f161}.contact-actions{align-items:center;gap:24px;margin-top:34px;display:flex}.contact-socials{gap:10px;display:flex}.contact-socials a{color:#faf7f1cc;width:42px;height:42px;transition:background-color .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease);border:1px solid #faf7f133;border-radius:50%;place-items:center;display:grid}.contact-socials a:hover{border-color:var(--gold-light);background:var(--gold-light);color:var(--espresso)}.contact-map-wrap{padding:14px 14px 0 0;position:relative}.contact-map-wrap:before{content:"";pointer-events:none;border:1px solid #cbb48c40;position:absolute;inset:0 0 40px 40px}.contact-map{aspect-ratio:4/4.35;background:#faf7f108;border:1px solid #cbb48c59;padding:10px;position:relative;overflow:hidden}.contact-map iframe{filter:grayscale()sepia(.14)contrast(.92)brightness(.86);border:0;width:100%;height:100%;display:block}.map-card{border:1px solid var(--line-gold);background:var(--cream);min-width:250px;color:var(--ink);flex-direction:column;gap:5px;padding:24px 26px;display:flex;position:absolute;bottom:34px;left:-24px;box-shadow:0 30px 60px #00000040}.map-card-script{color:var(--gold-deep);font-family:var(--font-display);font-size:1.2rem;font-style:italic;line-height:1}.map-card strong{font-family:var(--font-display);margin-top:4px;font-size:1.4rem;font-weight:500;line-height:1.1}.map-card>span:not(.map-card-script){color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.map-card a{border-top:1px solid var(--line);color:var(--gold-deep);letter-spacing:.2em;text-transform:uppercase;transition:color .3s var(--ease);align-items:center;gap:8px;margin-top:10px;padding-top:12px;font-size:8.5px;display:inline-flex}.map-card a:hover{color:var(--ink)}.footer{color:#faf7f1a6;background:#1b1815;border-top:1px solid #faf7f114;padding:clamp(70px,8vw,100px) 0 0;position:relative}.footer-top{grid-template-columns:1.5fr .7fr 1fr;gap:clamp(40px,6vw,100px);padding-bottom:60px;display:grid}.footer-brand img{width:190px;height:auto;margin-bottom:22px}.footer-tagline{color:var(--gold-light);font-family:var(--font-display);margin-bottom:16px;font-size:1.45rem;font-style:italic}.footer-address{color:#faf7f16b;letter-spacing:.14em;text-transform:uppercase;font-size:9px;line-height:1.9}.footer-heading{color:var(--gold-light);letter-spacing:.24em;text-transform:uppercase;margin-bottom:20px;font-size:8.5px;display:block}.footer-nav{flex-direction:column;gap:9px;display:flex}.footer-nav a,.footer-visit>a{color:#faf7f1a6;transition:color .3s var(--ease);font-size:12px;line-height:1.7}.footer-nav a:hover,.footer-visit>a:hover{color:var(--cream)}.footer-visit{flex-direction:column;align-items:flex-start;display:flex}.footer-visit>a{margin-bottom:8px}.footer-socials{align-items:center;gap:10px;margin-top:18px;display:flex}.footer-socials a{color:#faf7f1b3;width:36px;height:36px;transition:background-color .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease);border:1px solid #faf7f129;border-radius:50%;place-items:center;display:grid}.footer-socials a:hover{border-color:var(--gold-light);background:var(--gold-light);color:var(--espresso)}.footer-socials .footer-book-link{width:auto;height:36px;color:var(--gold-light);letter-spacing:.18em;text-transform:uppercase;border-color:#cbb48c66;border-radius:999px;gap:5px;padding:0 14px;font-size:8.5px;display:inline-flex}.footer-bottom{color:#faf7f161;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid #faf7f11a;justify-content:space-between;align-items:center;gap:30px;padding:22px 0 26px;font-size:8.5px;display:flex}.footer-bottom p{margin:0}.back-to-top{color:#faf7f199;transition:color .3s var(--ease);align-items:center;gap:8px;display:inline-flex}.back-to-top:hover{color:var(--gold-light)}.mobile-bar{display:none}@media (width<=1180px){.service-grid{grid-template-columns:repeat(2,1fr)}.service-description{min-height:76px}.hero-stamp{width:98px;left:-20px}.hero-note{right:-10px}.booking-shell{grid-template-columns:310px 1fr}.booking-aside{padding:40px 30px}}@media (width<=1024px){.container{width:calc(100% - 64px)}.desktop-nav{display:none}.nav-inner{grid-template-columns:1fr auto}.menu-toggle{display:block}.nav-actions{gap:16px}.nav-call{width:38px;height:38px}.hero h1{font-size:clamp(3.7rem,6.6vw,5.4rem)}.hero-grid{gap:50px}.hero-note{bottom:64px;right:-4px}.hero-vertical{display:none}.philosophy-grid{gap:60px}.services-foot{flex-direction:column;align-items:flex-start;gap:24px}.faq-grid{grid-template-columns:1fr;gap:46px}.faq-intro{max-width:640px;padding-bottom:0;position:static}.faq-stamp{display:none}.contact-grid{grid-template-columns:1fr;gap:70px}.contact-map-wrap{width:100%;max-width:680px;padding-right:14px}.contact-map{aspect-ratio:16/11}.map-card{left:24px}.footer-top{grid-template-columns:1.3fr .7fr 1fr;gap:48px}}@media (width<=900px){.hero-grid{grid-template-columns:1fr;gap:46px}.hero-copy{max-width:640px;padding-top:0}.hero h1{font-size:clamp(4rem,9.8vw,5.8rem)}.hero-lede{max-width:520px}.hero-visual{justify-self:center;max-width:500px}.hero-stamp{bottom:34px;left:-14px}.hero-note{right:-14px}.philosophy-grid{grid-template-columns:1fr;gap:74px}.ritual-media{max-width:470px;margin:0 auto}.philosophy-copy{max-width:640px}.gallery-head{flex-direction:column;align-items:flex-start;gap:24px}.gallery-head-aside{text-align:left;align-items:flex-start;max-width:430px}.gallery-foot{flex-direction:column;align-items:flex-start;gap:20px}.booking-shell{grid-template-columns:1fr}.booking-aside{border-right:0;border-bottom:1px solid var(--line-gold)}.booking-external{margin-top:10px}.widget-mount{min-height:680px}.widget-mount iframe{min-height:680px!important}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (width<=760px){html{scroll-padding-top:86px}body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.container{width:calc(100% - 40px)}.section{padding:76px 0}.nav-inner{min-height:72px}.brand{width:142px}.nav-book{display:none}.menu-toggle{margin-right:-6px}.hero{padding-top:34px;padding-bottom:68px}.hero h1{margin:24px 0 22px;font-size:clamp(3.4rem,14vw,4.8rem)}.hero-actions{flex-direction:column;align-items:stretch;gap:20px;margin-top:32px}.hero-actions .btn{width:100%}.hero-actions .text-link{align-self:center}.hero-details{flex-wrap:wrap;gap:12px 18px;margin-top:34px;font-size:8.5px}.hero-detail-divider{display:none}.hero-visual{padding:8px}.hero-arch{border-radius:220px 220px 4px 4px}.hero-stamp{width:82px;bottom:22px;left:2px}.hero-stamp img{border-width:4px}.hero-note{display:none}.hero-orbit-one{top:-4%;right:-8%}.hero-orbit-two{left:-8%}.marquee-item{gap:24px;padding:0 24px;font-size:1.12rem}.marquee-script{padding:0 24px;font-size:1.15rem}.marquee-group{padding:14px 0}.eyebrow{letter-spacing:.24em;font-size:9.5px}.section-head-center{margin-bottom:42px}.section-intro{font-size:.95rem}.philosophy-grid{gap:60px}.ritual-media{max-width:100%}.ritual-media:before{inset:18px -12px -10px 18px}.ritual-stamp{width:86px;top:-22px;right:-6px}.ritual-caption{min-width:220px;padding:15px 18px;bottom:-18px;left:10px}.service-grid{grid-template-columns:1fr}.service-card{padding:30px 24px 26px}.service-description{min-height:0}.service-card h3{font-size:2.2rem}.price-list{margin:20px 0 24px}.services-foot{margin-top:30px}.services-foot .btn{width:100%}.quote-inner{padding:0}.quote-text{font-size:clamp(1.75rem,6.4vw,2.4rem)}.booking-aside{padding:34px 26px}.booking-aside h3{font-size:2rem}.booking-external{width:100%}.widget-mount,.widget-mount iframe{min-height:620px!important}.widget-topbar{padding:14px 18px}.widget-powered{display:none}.booking-disclaimer{padding:14px 2px 0}.instagram-frame-head{padding:4px 2px 14px}.faq-question{grid-template-columns:30px 1fr 34px;gap:11px;padding:22px 0}.faq-answer p{padding:0 0 24px 41px;font-size:.88rem}.contact-map{aspect-ratio:4/3.6}.map-card{min-width:0;padding:18px 20px;bottom:24px;left:20px;right:20px}.contact-actions{flex-wrap:wrap;gap:20px}.contact-actions .btn{width:100%}.footer-top{grid-template-columns:1fr;gap:42px;padding-bottom:44px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.mobile-bar{z-index:70;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);background:#faf7f1f5;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #372b1a14}.mobile-bar-call{border:1px solid var(--line);letter-spacing:.16em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:8.5px;display:flex}.mobile-bar-book{background:var(--ink);color:var(--cream);letter-spacing:.16em;text-transform:uppercase;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 18px;font-size:9px;display:flex}}@media (width<=480px){.hero h1{font-size:clamp(3.05rem,14.5vw,4rem)}.btn-lg{padding:18px 24px;font-size:10px}.quote-stamp{width:64px}.contact-row{grid-template-columns:38px 1fr;gap:12px}.hours-list li{gap:16px}.footer-brand img{width:170px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}.marquee-track{flex-wrap:wrap;width:100%;animation:none}}
