:root{--bg: #F2EADD;--bg-deep: #E5DAC8;--surface: #FAF5EB;--surface-2: #FFFFFF;--ink: #1E1812;--ink-2: #4A3F35;--ink-3: #7A6D5F;--line: #D9CBB3;--accent: #B85F3E;--accent-2: #D89274;--sage: #8A9485;--f-display: "Cormorant Garamond", "EB Garamond", Georgia, serif;--f-body: "Manrope", ui-sans-serif, system-ui, sans-serif;--density: 1;--s-1: calc(4px * var(--density));--s-2: calc(8px * var(--density));--s-3: calc(16px * var(--density));--s-4: calc(24px * var(--density));--s-5: calc(40px * var(--density));--s-6: calc(64px * var(--density));--s-7: calc(96px * var(--density));--s-8: calc(140px* var(--density));--container: 1280px;--container-narrow: 880px;--radius-s: 4px;--radius-m: 10px;--radius-l: 20px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink)}html{scroll-behavior:smooth}body{font-family:var(--f-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}.display{font-family:var(--f-display);font-weight:400;font-style:normal;letter-spacing:-.018em;line-height:.98;text-wrap:balance}.display em{font-style:italic;font-weight:400;color:var(--accent)}.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.lead{font-size:19px;line-height:1.55;color:var(--ink-2);text-wrap:pretty;max-width:60ch}.serif{font-family:var(--f-display)}.muted{color:var(--ink-3)}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--s-4)}.container-narrow{width:100%;max-width:var(--container-narrow);margin:0 auto;padding:0 var(--s-4)}section{padding:var(--s-7) 0}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;border-radius:999px;transition:all .4s cubic-bezier(.2,.7,.2,1);white-space:nowrap}.btn-primary{background:var(--ink);color:var(--surface)}.btn-primary:hover{background:var(--accent);transform:translateY(-1px)}.btn-ghost{color:var(--ink);border:1px solid var(--line);background:transparent}.btn-ghost:hover{border-color:var(--ink)}.btn-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--ink);padding-bottom:4px;border-bottom:1px solid var(--line);transition:all .3s}.btn-link:hover{border-color:var(--ink);gap:14px}.arr{display:inline-block;transition:transform .4s}.btn:hover .arr{transform:translate(3px)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:22px var(--s-4);display:flex;align-items:center;justify-content:space-between;transition:background .4s,backdrop-filter .4s,border-color .4s,padding .4s;border-bottom:1px solid transparent}.nav.scrolled{background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom-color:var(--line);padding:14px var(--s-4)}.nav-inner{width:100%;max-width:var(--container);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:var(--f-display);font-size:20px;letter-spacing:.32em;font-weight:500;color:var(--ink)}.brand .dot{color:var(--accent);margin:0 4px}.nav-links{display:flex;gap:36px}.nav-links a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);transition:color .2s;position:relative;padding:4px 0}.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav-links a.active:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background:var(--accent)}.nav-right{display:flex;align-items:center;gap:18px}.nav-hamburger{display:none;flex-direction:column;gap:5px;width:28px;cursor:pointer;padding:4px}.nav-hamburger span{display:block;height:1px;background:var(--ink);transition:all .3s}.nav-mobile{display:none;position:fixed;inset:64px 0 0;z-index:99;background:color-mix(in oklab,var(--bg) 97%,transparent);backdrop-filter:blur(20px);flex-direction:column;padding:var(--s-4) var(--s-4) var(--s-6);border-top:1px solid var(--line)}.nav-mobile.open{display:flex}.nav-mobile a{display:block;padding:18px 0;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--line);transition:color .2s}.nav-mobile a:hover,.nav-mobile a.active{color:var(--ink)}.nav-mobile .btn{margin-top:var(--s-3);align-self:flex-start}@media(max-width:820px){.nav-links{display:none}.nav-hamburger{display:flex}.nav-right .btn{display:none}}.footer{padding:var(--s-7) var(--s-4) var(--s-4);border-top:1px solid var(--line);background:var(--bg-deep);color:var(--ink-2)}.footer-inner{max-width:var(--container);margin:0 auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--s-5)}.footer h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px;font-weight:500}.footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14px}.footer ul a:hover{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:var(--s-6);padding-top:var(--s-3);border-top:1px solid var(--line);font-size:12px;color:var(--ink-3)}@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.page{animation:pageIn .55s cubic-bezier(.2,.7,.2,1)}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hero{padding-top:110px;padding-bottom:var(--s-7)}.hero-split-inner{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--s-4);display:grid;grid-template-columns:1.05fr 1fr;gap:var(--s-6);align-items:center;min-height:calc(100vh - 200px)}.hero-text{display:flex;flex-direction:column;gap:var(--s-3)}.hero-badge{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;padding:8px 16px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);font-weight:500;white-space:nowrap}.dot-pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);position:relative;flex-shrink:0}.dot-pulse:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--accent);animation:pulse 2.2s infinite}@keyframes pulse{0%{transform:scale(.6);opacity:1}to{transform:scale(2.2);opacity:0}}.hero-h{font-size:clamp(56px,7.4vw,116px);letter-spacing:-.025em;line-height:1.04;margin-top:8px}.hero-sub{font-size:clamp(19px,1.6vw,22px);line-height:1.5;color:var(--ink-2);font-style:italic;margin-top:var(--s-4);max-width:32ch}.hero-actions{display:flex;gap:var(--s-3);align-items:center;flex-wrap:wrap;margin-top:var(--s-3)}.hero-meta{display:flex;gap:var(--s-4);margin-top:var(--s-5);padding-top:var(--s-3);border-top:1px solid var(--line)}.hero-meta>div{font-size:13px;color:var(--ink-2)}.meta-k{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px}.hero-img{position:relative;aspect-ratio:4/5;border-radius:var(--radius-l);overflow:hidden;box-shadow:0 30px 80px -20px #1e181240}.hero-img img{width:100%;height:100%;object-fit:cover;animation:zoomIn 18s cubic-bezier(.2,.7,.2,1) forwards}@keyframes zoomIn{0%{transform:scale(1.08)}to{transform:scale(1)}}.hero-img-cap{position:absolute;left:24px;bottom:24px;display:flex;flex-direction:column;gap:4px;color:#faf5eb;text-shadow:0 1px 12px rgba(0,0,0,.4);font-size:16px}@media(max-width:920px){.hero-split-inner{grid-template-columns:1fr;gap:var(--s-5);min-height:0}.hero-img{aspect-ratio:4/3}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;background:var(--bg-deep);overflow:hidden;white-space:nowrap}.marquee-track{display:inline-flex;animation:marquee 38s linear infinite;gap:36px}.marquee-item{display:inline-flex;align-items:center;gap:36px;font-size:22px;color:var(--ink-2)}.marquee-sep{color:var(--accent);font-size:12px}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.intro-grid{display:grid;grid-template-columns:280px 1fr;gap:var(--s-5);align-items:start}.intro-h{font-size:clamp(36px,5vw,64px);letter-spacing:-.02em;line-height:1.05;max-width:18ch}.intro-side-img{margin-top:var(--s-3);border-radius:var(--radius-m);overflow:hidden;aspect-ratio:3/4}.intro-side-img img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.intro-grid{grid-template-columns:1fr}.intro-side-img{aspect-ratio:16/9}}.benefits{background:var(--bg-deep)}.benefits-inner{display:grid;grid-template-columns:280px 1fr;gap:var(--s-5);align-items:start}.benefits-img{aspect-ratio:3/4;border-radius:var(--radius-m);overflow:hidden}.benefits-img img{width:100%;height:100%;object-fit:cover}.benefits-content{display:flex;flex-direction:column;gap:var(--s-5)}.benefits-head{display:flex;flex-direction:column;gap:16px;max-width:56ch}.benefits-h{font-size:clamp(32px,4vw,56px);letter-spacing:-.02em;line-height:1.05}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-5)}.benefit{display:flex;flex-direction:column;gap:14px;padding-top:var(--s-3);border-top:1px solid var(--line)}@media(max-width:820px){.benefits-inner{grid-template-columns:1fr}.benefits-img{aspect-ratio:16/9}}.benefit-n{font-size:14px;color:var(--accent);letter-spacing:.06em;font-style:italic}.benefit-t{font-size:26px;line-height:1.15;letter-spacing:-.01em}.benefit-d{font-size:15px;line-height:1.65;color:var(--ink-2)}@media(max-width:820px){.benefits-grid{grid-template-columns:1fr;gap:var(--s-4)}}.ritual-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6);align-items:center}.ritual-img{aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius-l)}.ritual-img img{width:100%;height:100%;object-fit:cover}.ritual-h{font-size:clamp(40px,5.5vw,80px);letter-spacing:-.02em;line-height:1;margin-top:14px}@media(max-width:820px){.ritual-grid{grid-template-columns:1fr;gap:var(--s-4)}}.quote-section{text-align:center;padding:var(--s-7) 0}.quote{font-size:clamp(36px,5.5vw,80px);font-style:italic;line-height:1.15;letter-spacing:-.015em;color:var(--ink);text-wrap:balance}.quote-mark{color:var(--accent);display:inline-block;transform:translateY(.06em);margin:0 .05em}.gallery-head{display:flex;flex-direction:column;gap:14px;margin-bottom:var(--s-5)}.gallery-h{font-size:clamp(32px,4vw,56px);letter-spacing:-.02em;line-height:1.05;max-width:22ch}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:80px;gap:var(--s-3)}.g{overflow:hidden;border-radius:var(--radius-m);position:relative;background:var(--bg-deep)}.g img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.g:hover img{transform:scale(1.04)}.g-1{grid-column:span 7;grid-row:span 6}.g-2,.g-3{grid-column:span 5;grid-row:span 4}.g-4{grid-column:span 7;grid-row:span 4}@media(max-width:760px){.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:160px}.g-1,.g-2,.g-3,.g-4{grid-column:span 1;grid-row:span 2}}.bookcta{background:var(--ink);color:var(--bg);padding:var(--s-7) 0}.bookcta .eyebrow{color:#faf5eb8c}.bookcta-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--s-3)}.bookcta-h{font-size:clamp(48px,7vw,110px);letter-spacing:-.025em;line-height:1}.bookcta-h em{color:var(--accent-2)}.bookcta .btn-primary{background:var(--bg);color:var(--ink)}.bookcta .btn-primary:hover{background:var(--accent-2);color:var(--ink)}.bookcta .lead{color:#faf5ebbf}.page-head{padding-top:160px;padding-bottom:var(--s-5)}.page-h{font-size:clamp(56px,8vw,130px);letter-spacing:-.025em;line-height:.98;margin-top:14px}.page-h em{color:var(--accent)}.ritual-list{padding-top:0;padding-bottom:var(--s-6);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-4);align-items:stretch}.ritual-card{display:flex;flex-direction:column;padding:var(--s-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .3s}.ritual-card:hover{transform:translateY(-3px);box-shadow:0 24px 60px -28px #1e18122e;border-color:var(--ink-3)}.ritual-card.is-star{background:var(--ink);color:var(--bg);border-color:var(--ink)}.ritual-card.is-star .eyebrow{color:#faf5eb8c}.ritual-card.is-star .rc-sub{color:var(--accent-2)}.ritual-card.is-star .rc-rec{background:#faf5eb0f;border-color:#faf5eb2e;color:#faf5ebd9}.ritual-card.is-star .rc-body,.ritual-card.is-star .rc-top{border-color:#faf5eb2e}.ritual-card.is-star .rc-bullet{color:var(--accent-2)}.ritual-card.is-star .btn-primary{background:var(--accent);color:var(--bg)}.ritual-card.is-star .btn-primary:hover{background:var(--accent-2)}.ritual-card.is-star .rc-len{border-color:#faf5eb4d;color:#faf5ebd9}.ritual-card.is-star .rc-items li{color:#faf5ebd9}.rc-top{padding-bottom:var(--s-3);border-bottom:1px solid var(--line)}.rc-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;min-height:22px}.rc-star{display:inline-flex;align-items:center;padding:5px 12px;background:var(--accent);color:var(--bg);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;border-radius:999px}.rc-name{font-size:clamp(26px,2.4vw,34px);letter-spacing:-.018em;line-height:1.1}.rc-sub{font-style:italic;color:var(--accent);margin-top:8px;font-size:17px;line-height:1.4}.rc-priceline{display:flex;align-items:baseline;gap:14px;margin-top:var(--s-3)}.rc-price{font-size:clamp(34px,3.4vw,46px);letter-spacing:-.02em;line-height:1}.rc-len{display:inline-flex;align-items:center;padding:6px 14px;border:1px solid var(--line);border-radius:999px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);font-weight:500}.rc-rec{display:inline-block;margin-top:var(--s-3);padding:6px 14px;border-radius:999px;background:var(--bg-deep);border:1px solid var(--line);font-size:12px;color:var(--ink-2)}.rc-body{padding-top:var(--s-3);flex:1}.rc-h{display:block;margin-bottom:14px}.rc-items{list-style:none;display:flex;flex-direction:column;gap:10px}.rc-items li{display:flex;gap:10px;align-items:baseline;font-size:14px;line-height:1.5;color:var(--ink-2)}.rc-bullet{color:var(--accent);flex-shrink:0;font-size:18px;line-height:1}.rc-cta{align-self:flex-start;margin-top:var(--s-4)}@media(max-width:1100px){.ritual-list{grid-template-columns:1fr;gap:var(--s-3)}.ritual-card{padding:var(--s-3)}.rc-cta{align-self:stretch;justify-content:center}}.pillars-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-5) var(--s-6)}.pillar{display:flex;flex-direction:column;gap:12px;padding:var(--s-3) 0;border-top:1px solid var(--line)}.pillar-n{font-size:14px;color:var(--accent);font-style:italic;letter-spacing:.06em}.pillar-t{font-size:28px;line-height:1.15;letter-spacing:-.015em}.pillar-d{font-size:15px;line-height:1.65;color:var(--ink-2);max-width:42ch}@media(max-width:820px){.pillars-grid{grid-template-columns:1fr}}.story{padding-top:var(--s-7)}.story-grid{display:grid;grid-template-columns:.85fr 1fr;gap:var(--s-6);align-items:center}.story-img{display:flex;flex-direction:column;gap:10px}.story-img img{aspect-ratio:4/5;width:100%;object-fit:cover;border-radius:var(--radius-l)}.story-img figcaption{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}.story-h{font-size:clamp(34px,4.5vw,60px);letter-spacing:-.02em;line-height:1.05;max-width:18ch;margin-top:10px}.story-body{display:flex;flex-direction:column;gap:18px;margin-top:var(--s-3);font-size:17px;line-height:1.65;color:var(--ink-2);max-width:56ch}@media(max-width:820px){.story-grid{grid-template-columns:1fr}}.method{padding-top:var(--s-5)}.method-head{margin-bottom:var(--s-5);display:flex;flex-direction:column;gap:14px}.method-h{font-size:clamp(32px,4vw,56px);letter-spacing:-.02em;line-height:1.05}.method-list{display:flex;flex-direction:column}.method-row{display:grid;grid-template-columns:220px 80px 1fr;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-top:1px solid var(--line)}.method-row:last-child{border-bottom:1px solid var(--line)}.method-time{font-size:22px;color:var(--ink)}.method-line{height:1px;background:var(--line);position:relative}.method-line:after{content:"";position:absolute;right:0;top:50%;width:6px;height:6px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}.method-d{font-size:15px;color:var(--ink-2);line-height:1.6;max-width:56ch}@media(max-width:760px){.method-row{grid-template-columns:1fr;gap:8px}.method-line{display:none}}.place{padding-top:var(--s-7)}.place-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6);align-items:center}.place-h{font-size:clamp(34px,4.5vw,60px);letter-spacing:-.02em;line-height:1.05;margin-top:10px}.place-img{aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius-l)}.place-img img{width:100%;height:100%;object-fit:cover}@media(max-width:820px){.place-grid{grid-template-columns:1fr}}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden}.contact-card{padding:var(--s-4) var(--s-3);background:var(--surface);display:flex;flex-direction:column;gap:8px}.contact-v{font-size:22px;line-height:1.2}@media(max-width:760px){.contact-grid{grid-template-columns:1fr}}.map-grid{display:grid;grid-template-columns:.8fr 1fr;gap:var(--s-6);align-items:center;padding-top:var(--s-5)}.map-h{font-size:clamp(34px,4.5vw,60px);letter-spacing:-.02em;line-height:1.05;margin-top:10px}.map-vis{border-radius:var(--radius-l);overflow:hidden;aspect-ratio:5/4;background:var(--bg-deep)}@media(max-width:820px){.map-grid{grid-template-columns:1fr}}.faq-section{padding-top:var(--s-7);padding-bottom:var(--s-7)}.faq-item{padding:var(--s-3) 0;border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-q{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.01em;width:100%;cursor:pointer;text-align:left;color:inherit;font-family:var(--f-display);padding:4px 0}.faq-toggle{font-size:22px;color:var(--accent);flex-shrink:0;transition:transform .3s}.faq-item.open .faq-toggle{transform:rotate(45deg)}.faq-a-wrap{overflow:hidden;animation:faqOpen .4s cubic-bezier(.2,.7,.2,1)}@keyframes faqOpen{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.faq-a{padding-top:16px;max-width:64ch;font-size:16px;color:var(--ink-2);line-height:1.65}
