:root{--ink:#26332b;--cream:#eee9df;--paper:#f7f4ed;--clay:#bc7252;--sage:#aab2a2;--line:rgba(38,51,43,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.site-header{height:88px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:5;width:100%;color:#fff;border-bottom:1px solid rgba(255,255,255,.25)}.brand{display:flex;align-items:center;gap:11px;letter-spacing:.28em;font-weight:600;font-size:15px}.brand svg{width:28px;fill:none;stroke:currentColor;stroke-width:1.5}.site-header nav{display:flex;gap:38px;font-size:13px}.site-header nav a{opacity:.8;transition:.2s}.site-header nav a:hover{opacity:1}.header-book{font-size:13px;border-bottom:1px solid;padding:8px 0}.header-book span{margin-left:16px}.menu-btn{display:none;background:0;border:0}.hero{min-height:760px;height:100svh;position:relative;color:#fff;overflow:hidden;background:#332c24}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,25,20,.8) 0%,rgba(25,25,20,.25) 48%,rgba(20,20,16,.05)),linear-gradient(0deg,rgba(20,20,15,.35),transparent 35%)}.hero-copy{position:absolute;left:8.5vw;top:50%;transform:translateY(-42%);max-width:690px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:500;margin:0 0 28px}.hero h1,.ritual-heading h2,.booking h2{font-family:Italiana,serif;font-weight:400;font-size:clamp(64px,8vw,126px);line-height:.83;letter-spacing:-.035em;margin:0}.hero h1 em,.ritual-heading h2 em{font-weight:400;color:#d3c5ad}.intro{max-width:390px;font-size:16px;line-height:1.7;margin:36px 0 0;color:rgba(255,255,255,.8)}.round-link{position:absolute;left:43vw;bottom:-78px;width:145px;height:145px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:22px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;transition:.3s}.round-link:hover{background:#fff;color:var(--ink);transform:scale(1.04)}.round-link b{font-size:20px}.hero-meta{position:absolute;right:4.5vw;bottom:35px;font-size:9px;letter-spacing:.16em;display:flex;gap:18px}.welcome{min-height:720px;padding:135px 8.5vw;display:grid;grid-template-columns:1fr 2.3fr 1fr;gap:6vw;align-items:start}.section-index{text-transform:uppercase;font-size:10px;letter-spacing:.18em;display:flex;align-items:center;gap:12px}.section-index span{width:34px;height:1px;background:currentColor}.welcome-copy{max-width:700px}.kicker{font-family:Italiana,serif;font-size:22px;color:var(--clay);margin:0 0 22px}.welcome h2{font-family:Italiana,serif;font-size:clamp(44px,5vw,72px);font-weight:400;line-height:1.03;letter-spacing:-.03em;margin:0 0 34px}.welcome-copy>p:last-of-type{font-size:16px;line-height:1.8;max-width:570px;color:#667069}.text-link{display:inline-flex;gap:30px;margin-top:28px;font-size:12px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid;padding-bottom:8px}.hours{border-top:1px solid var(--line);padding-top:18px;margin-top:155px}.hours p{font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin:0 0 8px}.hours strong{font-family:Italiana,serif;font-size:29px;font-weight:400;display:block}.hours span{font-size:11px;color:#777;display:block;margin-top:9px}.rituals{background:var(--ink);color:var(--cream);padding:120px 8.5vw 130px}.ritual-heading{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:5vw;align-items:end;margin-bottom:90px}.light{align-self:start}.ritual-heading h2{font-size:clamp(58px,7vw,100px)}.ritual-heading p{max-width:300px;line-height:1.7;color:#aab2ac;font-size:14px}.ritual-list{margin-left:24%}.ritual{min-height:125px;border-top:1px solid rgba(255,255,255,.18);display:grid;grid-template-columns:70px 1fr 120px 55px;align-items:center;transition:.3s}.ritual:last-child{border-bottom:1px solid rgba(255,255,255,.18)}.ritual:hover{padding-left:16px;background:rgba(255,255,255,.035)}.ritual .num{font-size:10px;color:#929b95}.ritual h3{font-family:Italiana,serif;font-size:32px;font-weight:400;margin:0 0 8px}.ritual p{margin:0;color:#929b95;font-size:12px}.ritual strong{font-size:12px;font-weight:400}.ritual a{border:1px solid rgba(255,255,255,.3);width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.quote{padding:135px 8.5vw;min-height:760px;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;background:var(--cream)}.arch{width:100%;max-width:520px;aspect-ratio:4/5;background:#c8b79c;border-radius:260px 260px 0 0;position:relative;overflow:hidden}.sun{width:44%;aspect-ratio:1;border-radius:50%;background:#d37653;position:absolute;top:24%;left:28%;box-shadow:0 0 80px rgba(255,220,175,.35)}.line-art{position:absolute;bottom:11%;width:100%;text-align:center;font-family:Italiana;font-size:clamp(55px,8vw,115px);letter-spacing:.08em;color:rgba(239,233,222,.8);transform:scaleX(.8)}.line-art:before,.line-art:after{content:"";position:absolute;top:-340px;height:390px;width:1px;background:rgba(38,51,43,.18)}.line-art:before{left:31%;transform:rotate(12deg)}.line-art:after{right:31%;transform:rotate(-12deg)}.dark{color:var(--clay)}blockquote{font-family:Italiana,serif;font-size:clamp(40px,4.5vw,68px);line-height:1.1;letter-spacing:-.02em;margin:0 0 35px}.quote-copy>p:last-child{max-width:480px;line-height:1.8;color:#687169}.booking{background:var(--clay);color:#fff;padding:130px 8.5vw;text-align:center}.booking h2{font-size:clamp(58px,7vw,100px);line-height:.95}.button{display:inline-flex;gap:40px;background:var(--paper);color:var(--ink);padding:19px 28px;margin-top:45px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;transition:.2s}.button:hover{transform:translateY(-3px)}footer{padding:85px 8.5vw 35px;background:#1d2721;color:#e6e2d9;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:5vw;font-size:12px;line-height:1.8}footer h3{text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:500;color:#89938c;margin:0 0 18px}.footer-brand div{font-family:Italiana;font-size:46px;letter-spacing:.12em}.footer-brand p{color:#89938c}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:25px;margin:45px 0 0;color:#79837c;font-size:10px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:72px;padding:0 22px}.site-header nav,.header-book{display:none}.menu-btn{display:block;width:34px}.menu-btn span{display:block;height:1px;background:#fff;margin:7px 0}.site-header.open{position:fixed;background:var(--ink);height:100vh;align-items:flex-start;padding-top:24px}.site-header.open nav{display:flex;position:absolute;top:135px;left:25px;flex-direction:column;font-family:Italiana;font-size:40px}.site-header.open .menu-btn span:first-child{transform:rotate(45deg) translate(3px,3px)}.site-header.open .menu-btn span:last-child{transform:rotate(-45deg) translate(3px,-3px)}.hero{min-height:700px}.hero>img{object-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(23,24,19,.78),rgba(23,24,19,.12)),linear-gradient(0deg,rgba(20,20,15,.4),transparent)}.hero-copy{left:24px;right:24px;top:48%}.hero h1{font-size:58px;line-height:.9}.intro{font-size:14px;max-width:310px}.round-link{left:auto;right:22px;bottom:-130px;width:120px;height:120px}.hero-meta{right:22px}.welcome{padding:90px 24px;display:block}.section-index{margin-bottom:55px}.welcome h2{font-size:47px}.hours{margin-top:70px}.rituals{padding:90px 24px}.ritual-heading{display:block;margin-bottom:60px}.ritual-heading h2{font-size:60px}.ritual-heading p{margin-top:30px}.ritual-list{margin:0}.ritual{grid-template-columns:35px 1fr 46px;min-height:115px}.ritual strong{display:none}.ritual h3{font-size:24px}.quote{padding:90px 24px;display:flex;flex-direction:column;gap:65px}.arch{max-width:400px}.booking{padding:95px 24px}.booking h2{font-size:57px}footer{padding:70px 24px 30px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;margin-bottom:20px}.copyright{margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
