@layer reset,base,components,layout,utilities;@layer reset{*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,blockquote,dl,dd{margin:0}body{min-width:320px}img{display:block;max-width:100%}button,a{font:inherit}button{border:0}a{color:inherit;text-decoration:none}svg{display:block}}@layer base{:root{--paper: #f6f2ec;--paper-soft: #eee7dd;--paper-deep: #ddd1c2;--ink: #181512;--ink-soft: #514a43;--line: rgba(24, 21, 18, .16);--copper: #b97645;--copper-bright: #d89a67;--dark: #151310;--dark-soft: #211d19;--white: #fffdf9;--shadow: 0 24px 70px rgba(45, 31, 20, .16);--serif: Georgia, "Times New Roman", serif;--sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color-scheme:light}:root[data-theme=dark]{--paper: #100f0d;--paper-soft: #181613;--paper-deep: #29231e;--ink: #f7f1e9;--ink-soft: #bcb2a6;--line: rgba(247, 241, 233, .15);--copper: #cf8c58;--copper-bright: #e3a876;--dark: #090806;--dark-soft: #12100e;--white: #fffaf3;--shadow: 0 26px 80px rgba(0, 0, 0, .36);color-scheme:dark}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden;transition:background-color .4s ease,color .4s ease}::selection{color:var(--white);background:var(--copper)}:focus-visible{outline:2px solid var(--copper);outline-offset:4px}section[id]{scroll-margin-top:90px}}@layer components{.skip-link{position:fixed;z-index:1000;left:1rem;top:1rem;padding:.65rem 1rem;color:var(--white);background:var(--dark);transform:translateY(-180%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}.eyebrow{display:flex;align-items:center;gap:.75rem;font-size:.69rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.eyebrow:before{width:2.1rem;height:1px;background:var(--copper);content:""}.eyebrow--light{color:var(--copper-bright)}h1,h2,blockquote{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.045em}h1 em,h2 em,blockquote em{color:var(--copper);font-weight:400}h2{font-size:clamp(3rem,6.1vw,6.9rem)}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.4rem;min-height:3.5rem;padding:.9rem 1.4rem;border:1px solid transparent;font-size:.72rem;font-weight:750;letter-spacing:.13em;line-height:1;text-transform:uppercase;transition:transform .25s ease,color .25s ease,background-color .25s ease,border-color .25s ease}.button:hover{transform:translateY(-3px)}.button span{font-size:1.15rem;font-weight:400}.button--small{min-height:2.75rem;padding:.7rem 1.05rem;font-size:.62rem}.button--large{min-height:4.35rem;padding-inline:2.15rem}.button--ink{color:var(--paper);background:var(--ink)}.button--copper{color:#fff;background:var(--copper)}.button--copper:hover{background:var(--copper-bright)}.button--instagram{color:var(--white);border-color:#ffffff4d;background:transparent}.button--instagram:hover{color:var(--dark);background:var(--white);border-color:var(--white)}.button--instagram svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.button--instagram .icon-dot{fill:currentColor;stroke:none}.button--outline-light{color:var(--white);border-color:#ffffff59}.button--outline-light:hover{color:var(--dark);background:var(--white);border-color:var(--white)}.text-link{display:inline-flex;gap:1.25rem;align-items:center;border-bottom:1px solid var(--ink);font-size:.7rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.text-link span{color:var(--copper);font-size:1rem}.reveal{opacity:0;transform:translateY(32px);transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform .85s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}}@layer layout{.site-header{position:fixed;z-index:100;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:88px;padding:0 clamp(1.1rem,4vw,4rem);border-bottom:1px solid transparent;transition:transform .35s ease,height .3s ease,background-color .3s ease,border-color .3s ease}.site-header.is-scrolled{height:70px;border-color:var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(18px)}.site-header.is-hidden{transform:translateY(-100%)}.brand{position:relative;justify-self:start;width:184px;height:54px;padding:4px 10px;overflow:hidden;border:1px solid rgba(185,118,69,.35);border-radius:3px;background:#020202;box-shadow:0 8px 24px #0000001f}.brand:after{position:absolute;inset:4px;border:1px solid rgba(216,154,103,.1);content:"";pointer-events:none}.brand img{width:100%;height:100%;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:clamp(1.2rem,3vw,2.7rem)}.desktop-nav a{position:relative;font-size:.66rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.desktop-nav a:after{position:absolute;inset:auto 100% -.4rem 0;height:1px;background:var(--copper);content:"";transition:right .3s ease}.desktop-nav a:hover:after{right:0}.header-actions{justify-self:end;display:flex;align-items:center;gap:.75rem}.desktop-booking{padding-inline:1.35rem;border-radius:999px}.social-icon{display:grid;place-items:center;width:42px;height:42px;color:var(--ink);border:1px solid var(--line);border-radius:50%;transition:color .25s ease,border-color .25s ease,transform .25s ease}.social-icon:hover{color:var(--copper);border-color:var(--copper);transform:translateY(-2px)}.social-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5}.social-icon .icon-dot{fill:currentColor;stroke:none}.theme-toggle{display:grid;place-items:center;width:42px;height:42px;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:50%;cursor:pointer}.theme-icon{position:relative;width:15px;height:15px;border:1.5px solid currentColor;border-radius:50%;transition:background .25s ease,transform .35s ease}.theme-icon:after{position:absolute;inset:-5px;border:1px dashed currentColor;border-radius:50%;content:""}[data-theme=dark] .theme-icon{background:var(--ink);transform:scale(.75)}.menu-toggle{display:none;width:44px;height:44px;background:transparent;cursor:pointer}.menu-toggle span{display:block;width:23px;height:1px;margin:6px auto;background:var(--ink);transition:transform .3s ease}.mobile-menu{position:fixed;z-index:90;inset:0;display:none;padding:8rem 1.5rem 2rem;background:var(--paper);visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}.mobile-menu nav{display:grid}.mobile-menu nav a{display:flex;align-items:baseline;gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(2.2rem,10vw,4rem);line-height:1}.mobile-menu nav span{color:var(--copper);font-family:var(--sans);font-size:.65rem;letter-spacing:.16em}.mobile-menu .button{margin-top:2.5rem;width:100%}.menu-open{overflow:hidden}.menu-open .mobile-menu{visibility:visible;opacity:1}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr);min-height:100svh;padding:8.5rem clamp(1.1rem,4vw,4rem) 3rem;overflow:hidden}.hero-glow{position:absolute;top:-18rem;left:-15rem;width:38rem;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--copper) 18%,transparent),transparent 68%);pointer-events:none}.hero-copy{position:relative;z-index:2;align-self:center;max-width:710px;padding:3rem 0 4rem}.hero-eyebrow{margin-bottom:2.1rem}.hero h1{font-size:clamp(4.5rem,7.8vw,9rem)}.hero h1 span,.hero h1 em{display:block}.hero h1 em{margin-left:clamp(1rem,5vw,5.2rem);white-space:nowrap}.hero-lead{max-width:470px;margin:2.2rem 0 2rem;color:var(--ink-soft);font-size:clamp(1rem,1.4vw,1.18rem)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.7rem}.hero-signature{display:flex;align-items:center;gap:1rem;margin-top:3.6rem;color:var(--ink-soft);font-family:var(--serif);font-size:.85rem;font-style:italic;line-height:1.35}.hero-signature strong{color:var(--ink);font-family:var(--sans);font-size:.58rem;font-style:normal;letter-spacing:.13em;text-transform:uppercase}.signature-line{width:3rem;height:1px;background:var(--line)}.hero-visual{position:relative;min-height:650px;margin:0 -4rem 0 1.5rem}.hero-image-wrap{position:absolute;inset:0;overflow:hidden;background:var(--paper-deep);clip-path:polygon(10% 0,100% 0,100% 93%,0 100%,0 10%)}.hero-image-wrap:after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,16,12,.14),transparent 35%),linear-gradient(0deg,rgba(13,10,8,.22),transparent 34%);content:""}.hero-image-wrap img{width:100%;height:112%;object-fit:cover;object-position:56% center;transform:scale(1.04);will-change:transform}.hero-stamp{position:absolute;z-index:3;top:12%;left:-36px;display:grid;place-items:center;width:112px;height:112px;color:var(--white);border-radius:50%;background:#16120fcc;backdrop-filter:blur(8px)}.hero-stamp svg{position:absolute;inset:5px;width:102px;height:102px;animation:spin 18s linear infinite}.hero-stamp text{fill:currentColor;font-family:var(--sans);font-size:8.5px;letter-spacing:1.8px}.hero-stamp>span{color:var(--copper-bright);font-family:var(--serif);font-size:1.4rem}.hero-note{position:absolute;z-index:2;right:clamp(1.5rem,5vw,5rem);bottom:4rem;display:flex;gap:.9rem;align-items:flex-start;color:var(--white)}.hero-note span{color:var(--copper-bright);font-size:.6rem;letter-spacing:.15em}.hero-note p{font-family:var(--serif);font-size:1.25rem;line-height:1.25}.hero-scroll{position:absolute;z-index:3;bottom:1.5rem;left:clamp(1.1rem,4vw,4rem);display:flex;align-items:center;gap:.75rem;font-size:.56rem;font-weight:700;letter-spacing:.16em}.hero-scroll span{width:1px;height:2.5rem;background:linear-gradient(var(--copper) 50%,var(--line) 50%)}@keyframes spin{to{transform:rotate(360deg)}}.ticker{overflow:hidden;padding:.95rem 0;color:#fff;background:var(--copper);transform:rotate(-1.15deg) scale(1.02)}.ticker-track{display:flex;width:max-content;align-items:center;gap:2.4rem;animation:marquee 28s linear infinite}.ticker span{font-family:var(--serif);font-size:clamp(1.1rem,2vw,1.6rem);font-style:italic}.ticker i{font-style:normal;font-size:.75rem}@keyframes marquee{to{transform:translate(-50%)}}.section{padding:clamp(6rem,10vw,10rem) clamp(1.1rem,6vw,7rem)}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end;padding-bottom:4rem}.section-heading .eyebrow{margin-bottom:1.7rem}.section-intro{max-width:520px;color:var(--ink-soft)}.service-list{border-top:1px solid var(--line)}.service-card{display:grid;grid-template-columns:52px 88px minmax(0,1fr) 48px;gap:2rem;align-items:center;min-height:170px;padding:1.5rem 1rem;border-bottom:1px solid var(--line);transition:color .35s ease,background-color .35s ease,padding .35s ease}.service-card:hover{padding-inline:2rem;color:var(--white);background:var(--dark-soft)}.service-number{align-self:start;padding-top:.7rem;color:var(--copper);font-size:.62rem;letter-spacing:.14em}.service-icon{display:grid;place-items:center;width:68px;height:68px;color:var(--copper);border:1px solid currentColor;border-radius:50%}.service-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.service-card>div:nth-child(3){display:grid;grid-template-columns:minmax(210px,.7fr) minmax(280px,1fr);gap:2.5rem;align-items:center}.service-card h3{font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.9rem);font-weight:400;line-height:1}.service-card p{max-width:590px;color:var(--ink-soft);transition:color .35s ease}.service-card:hover p{color:#ffffffad}.service-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:1.1rem;transition:transform .3s ease,background .3s ease}.service-card:hover .service-arrow{color:var(--dark);background:var(--copper-bright);transform:rotate(45deg)}.prices{background:var(--paper-soft)}.prices-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end;margin-bottom:clamp(3rem,7vw,6rem)}.prices-heading .eyebrow{margin-bottom:1.7rem}.prices-intro{max-width:500px}.prices-intro p{margin-bottom:1.5rem;color:var(--ink-soft)}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.price-card{position:relative;padding:clamp(1.5rem,3.4vw,3.2rem);border:1px solid var(--line);background:var(--paper);transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease}.price-card:hover{border-color:color-mix(in srgb,var(--copper) 65%,var(--line));box-shadow:var(--shadow);transform:translateY(-5px)}.price-card-heading{display:flex;align-items:baseline;gap:1.2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.price-card-heading>span{color:var(--copper);font-size:.6rem;letter-spacing:.15em}.price-card h3{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.4rem);font-weight:400;line-height:1}.price-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.price-list li{display:grid;grid-template-columns:auto minmax(20px,1fr) auto;gap:.8rem;align-items:baseline;padding:1.15rem 0;border-bottom:1px solid var(--line)}.price-list li>span{color:var(--ink-soft)}.price-list i{border-bottom:1px dotted color-mix(in srgb,var(--ink-soft) 45%,transparent)}.price-list strong{color:var(--ink);font-family:var(--serif);font-size:1.1rem;font-weight:400;white-space:nowrap}.price-note{margin:1.5rem 0 0 auto;max-width:630px;color:var(--ink-soft);font-size:.72rem;text-align:right}.experience{display:grid;grid-template-columns:1.03fr .97fr;min-height:900px;color:var(--white);background:var(--dark)}.experience-image{position:relative;min-height:720px;overflow:hidden}.experience-image:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,var(--dark));content:""}.experience-image img{width:100%;height:100%;object-fit:cover;object-position:61% center;filter:saturate(.8) contrast(1.03)}.image-index{position:absolute;z-index:2;bottom:2rem;left:2rem;font-size:.57rem;font-weight:700;letter-spacing:.16em}.experience-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(4rem,8vw,8rem)}.experience-copy .eyebrow{margin-bottom:2rem}.experience-copy h2{font-size:clamp(3.3rem,5.5vw,6.5rem)}.experience-copy>p{max-width:560px;margin:2rem 0 2.5rem;color:#ffffff9e}.experience-points{margin-bottom:2.7rem}.experience-points>div{display:grid;grid-template-columns:42px 135px 1fr;gap:1rem;padding:1.1rem 0;border-top:1px solid rgba(255,255,255,.14)}.experience-points span{color:var(--copper-bright);font-size:.58rem;letter-spacing:.15em}.experience-points strong{font-family:var(--serif);font-size:1.05rem;font-weight:400}.experience-points p{color:#ffffff80;font-size:.85rem}.experience-copy .button{align-self:flex-start}.philosophy-quote{max-width:1020px;margin:0 auto clamp(5rem,10vw,9rem);text-align:center}.philosophy-quote .eyebrow{justify-content:center;margin-bottom:2.2rem}.philosophy-quote blockquote{font-size:clamp(3.2rem,6.7vw,7.4rem)}.philosophy-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,9rem);align-items:center}.monogram{display:grid;place-items:center;width:66px;height:66px;margin-bottom:2rem;color:var(--copper);border:1px solid var(--copper);border-radius:50%;font-family:var(--serif);font-size:1.15rem}.philosophy-copy h3{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4.6rem);font-weight:400;line-height:1.08}.philosophy-copy>p{max-width:530px;margin:1.7rem 0 3rem;color:var(--ink-soft)}.philosophy-copy dl{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.philosophy-copy dl div{padding:1.5rem 0;border-right:1px solid var(--line)}.philosophy-copy dl div:last-child{border-right:0;padding-left:1.5rem}.philosophy-copy dl div:nth-child(2){padding-left:1.5rem}.philosophy-copy dt{color:var(--copper);font-family:var(--serif);font-size:2.8rem;line-height:1}.philosophy-copy dd{margin-top:.5rem;color:var(--ink-soft);font-size:.68rem;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}.philosophy-image{position:relative;min-height:690px}.philosophy-image:before{position:absolute;z-index:-1;inset:-2rem -2rem 2rem 2rem;border:1px solid var(--line);content:""}.philosophy-image img{width:100%;height:690px;object-fit:cover}.floating-caption{position:absolute;left:-3.5rem;bottom:2.2rem;display:grid;gap:.5rem;min-width:265px;padding:1.4rem 1.6rem;color:var(--white);background:#161310e6;backdrop-filter:blur(10px)}.floating-caption span{color:var(--copper-bright);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase}.floating-caption strong{font-family:var(--serif);font-size:1.2rem;font-weight:400}.ritual{display:grid;grid-template-columns:.68fr 1.32fr;gap:clamp(3rem,8vw,9rem);background:var(--paper-soft)}.ritual-heading{position:sticky;top:130px;align-self:start}.ritual-heading .eyebrow{margin-bottom:1.7rem}.ritual-steps{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.ritual-steps li{display:grid;grid-template-columns:70px 1fr;gap:1.5rem;padding:2.5rem 0;border-bottom:1px solid var(--line)}.ritual-steps>li>span{color:var(--copper);font-size:.62rem;letter-spacing:.16em}.ritual-steps h3{margin-bottom:.65rem;font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.5rem);font-weight:400;line-height:1}.ritual-steps p{max-width:530px;color:var(--ink-soft)}.faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,9vw,10rem)}.faq-heading .eyebrow{margin-bottom:1.7rem}.faq-heading h2{font-size:clamp(3.4rem,6vw,6.5rem)}.faq-heading>p:last-child{max-width:380px;margin-top:2rem;color:var(--ink-soft)}.accordion{border-top:1px solid var(--line)}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{position:relative;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem 3rem 2rem 0;cursor:pointer;font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.75rem);list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary span:before,.accordion summary span:after{position:absolute;top:50%;right:0;width:18px;height:1px;background:var(--copper);content:"";transition:transform .25s ease}.accordion summary span:after{transform:rotate(90deg)}.accordion details[open] summary span:after{transform:rotate(0)}.accordion details p{max-width:680px;padding:0 3rem 2rem 0;color:var(--ink-soft)}.visit{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,9vw,10rem);align-items:center;background:var(--paper-soft)}.visit-copy .eyebrow{margin-bottom:1.7rem}.visit-copy h2{font-size:clamp(3.4rem,6vw,6.6rem)}.visit-address-card{display:grid;grid-template-columns:58px 1fr;gap:1.25rem;margin-top:3rem}.visit-pin{display:grid;place-items:center;width:52px;height:52px;color:var(--copper);border:1px solid var(--copper);border-radius:50%}.visit-pin svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4}.visit-address-card span{display:block;margin-bottom:.45rem;font-family:var(--serif);font-size:1.25rem}.visit-address-card address{max-width:460px;margin-bottom:1.35rem;color:var(--ink-soft);font-style:normal}.visit-address-card .text-link{width:fit-content}.visit-hours{padding:clamp(2rem,5vw,4.5rem);color:var(--white);background:var(--dark-soft);box-shadow:var(--shadow)}.hours-heading{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding-bottom:1.3rem;border-bottom:1px solid rgba(255,255,255,.16)}.hours-heading>span{font-family:var(--serif);font-size:clamp(1.65rem,3vw,2.5rem)}.hours-heading small{color:var(--copper-bright);font-size:.55rem;letter-spacing:.13em;text-transform:uppercase}.hours-list{margin-top:.5rem}.hours-list>div{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.hours-list dt{color:#ffffffad}.hours-list dd{color:var(--white);font-variant-numeric:tabular-nums}.hours-list .is-closed{color:var(--copper-bright)}.contact{position:relative;display:grid;place-items:center;min-height:730px;padding:6rem 1.2rem;overflow:hidden;color:var(--white);text-align:center;background:var(--dark)}.contact:before{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(185,118,69,.16),transparent 42%),repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),rgba(255,255,255,.035) 20%);content:""}.contact-orbit{position:absolute;width:min(80vw,840px);aspect-ratio:1;border:1px solid rgba(255,255,255,.09);border-radius:50%}.contact-orbit:before,.contact-orbit:after{position:absolute;inset:14%;border:inherit;border-radius:inherit;content:""}.contact-orbit:after{inset:30%;border-color:#d89a673d}.contact-inner{position:relative;z-index:2;max-width:900px}.contact .eyebrow{justify-content:center;margin-bottom:2rem}.contact h2{font-size:clamp(4rem,8vw,9rem)}.contact-inner>p{max-width:540px;margin:2rem auto;color:#ffffff9e}.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}.contact small{display:block;margin-top:1.2rem;color:#ffffff6b;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase}.site-footer{padding:5rem clamp(1.1rem,6vw,7rem) 1.5rem;color:#ffffffad;background:#090806}.footer-top{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:3rem;padding-bottom:4rem}.footer-brand img{width:210px;height:72px;padding:5px 10px;object-fit:contain;border:1px solid rgba(216,154,103,.3);border-radius:3px;background:#020202}.footer-brand p{margin-top:1.3rem;font-family:var(--serif);font-size:1.1rem;line-height:1.45}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem}.footer-column h3{margin-bottom:.7rem;color:var(--copper-bright);font-size:.61rem;letter-spacing:.16em;text-transform:uppercase}.footer-column a,.footer-column span{font-size:.78rem}.footer-column a:hover{color:var(--white)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.1);font-size:.58rem;letter-spacing:.09em;text-transform:uppercase}.floating-whatsapp{position:fixed;z-index:80;right:clamp(1rem,2.5vw,2.4rem);bottom:clamp(1rem,2.5vw,2.4rem);display:grid;place-items:center;width:82px;height:82px;border-radius:24%;box-shadow:0 16px 44px #105b2f66;opacity:0;transform:translate(calc(100% + 4rem));pointer-events:none;transition:opacity .35s ease,transform .6s cubic-bezier(.2,.85,.25,1),filter .25s ease}.floating-whatsapp.is-visible{opacity:1;transform:translate(0);pointer-events:auto}.floating-whatsapp:hover{filter:brightness(.92);transform:translate(0) translateY(-3px)}.floating-whatsapp:before{position:absolute;inset:5px;border:1px solid rgba(255,255,255,.5);border-radius:22%;content:"";animation:whatsappPulse 2.4s ease-out infinite}.floating-whatsapp img{position:relative;width:100%;height:100%;object-fit:contain}@keyframes whatsappPulse{0%{opacity:.65;transform:scale(.86)}75%,to{opacity:0;transform:scale(1.35)}}.cursor-glow{position:fixed;z-index:-1;top:0;left:0;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--copper) 8%,transparent),transparent 68%);pointer-events:none}}@layer utilities{@media(max-width:1120px){.hero{grid-template-columns:.95fr 1.05fr}.hero h1{font-size:clamp(4.4rem,8.6vw,7rem)}.hero-visual{margin-right:-2.5rem}.service-card>div:nth-child(3){grid-template-columns:1fr;gap:.8rem}.experience-copy{padding:4rem}.philosophy-grid{gap:4rem}}@media(max-width:900px){.site-header{grid-template-columns:1fr auto;height:72px}.desktop-nav,.desktop-booking{display:none}.menu-toggle,.mobile-menu{display:block}.hero{display:block;min-height:auto;padding:7.5rem 1.2rem 4rem}.hero-copy{max-width:760px;padding:1.5rem 0 3rem}.hero h1 em{margin-left:0;white-space:normal}.hero-visual{min-height:72svh;margin:0 -1.2rem}.hero-image-wrap{clip-path:polygon(0 5%,100% 0,100% 94%,0 100%)}.hero-stamp{top:1rem;left:1rem}.hero-scroll{display:none}.section-heading,.prices-heading,.experience,.philosophy-grid,.ritual,.faq,.visit{grid-template-columns:1fr}.section-heading,.prices-heading{gap:2rem}.service-card{grid-template-columns:35px 64px minmax(0,1fr) 35px;gap:1rem}.service-icon{width:58px;height:58px}.experience{min-height:0}.experience-image{min-height:68svh}.experience-image:after{background:linear-gradient(0deg,var(--dark),transparent 30%)}.experience-copy{padding:5rem 1.5rem 6rem}.philosophy-grid{gap:6rem}.philosophy-image,.philosophy-image img{min-height:600px;height:600px}.floating-caption{left:1.2rem}.ritual-heading{position:static}.faq{gap:4rem}.footer-top{grid-template-columns:1fr 1fr}}@media(max-width:620px){.brand{width:156px;height:46px;padding:3px 8px}.header-actions{gap:.2rem}.theme-toggle{width:38px;height:38px}.hero{padding-top:6.5rem}.hero h1{font-size:clamp(3.65rem,17.5vw,5.4rem)}.hero-lead{margin-top:1.7rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%}.hero-actions .text-link{align-self:flex-start}.hero-signature{margin-top:2.7rem}.hero-visual{min-height:600px}.hero-image-wrap img{object-position:63% center}.hero-note{right:1.2rem;bottom:3rem}.section{padding:6rem 1.2rem}h2{font-size:clamp(3rem,14.8vw,4.7rem)}.section-heading{padding-bottom:2.7rem}.service-card{grid-template-columns:32px 1fr 34px;padding:1.8rem 0}.service-card:hover{padding-inline:.6rem}.service-icon{display:none}.service-card>div:nth-child(3){display:block}.service-card h3{font-size:2rem}.service-card p{margin-top:.85rem;font-size:.9rem}.service-arrow{width:34px;height:34px}.experience-image{min-height:570px}.experience-image img{object-position:63% center}.experience-copy{padding:4.8rem 1.2rem}.experience-points>div{grid-template-columns:35px 1fr}.experience-points p{grid-column:2}.philosophy-copy dl{grid-template-columns:1fr}.philosophy-copy dl div,.philosophy-copy dl div:nth-child(2),.philosophy-copy dl div:last-child{display:grid;grid-template-columns:60px 1fr;align-items:center;padding:1rem 0;border-right:0;border-bottom:1px solid var(--line)}.philosophy-image,.philosophy-image img{min-height:490px;height:490px}.philosophy-image img{object-position:60% center}.philosophy-image:before{inset:-1rem -.5rem 1rem 1rem}.floating-caption{right:.8rem;left:.8rem;min-width:0}.ritual-steps li{grid-template-columns:43px 1fr;gap:.5rem}.faq{gap:3rem}.contact{min-height:650px}.contact h2{font-size:clamp(3.65rem,16vw,5.5rem)}.contact .button,.contact-actions{width:100%}.visit-hours{padding:1.5rem}.hours-heading{align-items:flex-start;flex-direction:column}.price-grid{grid-template-columns:1fr}.price-card{padding:1.5rem}.price-list li{gap:.5rem}.price-note{text-align:left}.floating-whatsapp{right:1rem;bottom:1rem;width:72px;height:72px}.footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.cursor-glow{display:none}}}
