:root { --ivory:#f7f1e7; --paper:#fffaf2; --sand:#eadcc6; --cacao:#322216; --bark:#624126; --gold:#aa7729; --rose:#b4624d; --muted:#75695d; --line:rgba(74,48,26,.2); --serif:'Italiana', Georgia, serif; --sans:'DM Sans', Arial, sans-serif; --mono:'DM Mono', monospace; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ivory); }
body { margin:0; background:var(--ivory); color:var(--cacao); font-family:var(--sans); font-size:16px; line-height:1.6; }
body.locked { overflow:hidden; }
button, input, textarea { font:inherit; }
button, a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.skip-link { position:fixed; z-index:50; left:15px; top:-60px; padding:8px 14px; background:var(--cacao); color:#fff; transition:top .2s; }
.skip-link:focus { top:15px; }
.eyebrow { margin:0 0 14px; color:var(--gold); font:11px/1.2 var(--mono); letter-spacing:.18em; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-weight:400; line-height:.98; }
h1,h2 { font-family:var(--serif); }
h1 em,h2 em { color:var(--gold); font-style:normal; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:28px; border:1px solid currentColor; padding:14px 20px; font-size:11px; letter-spacing:.14em; text-transform:uppercase; transition:background .2s cubic-bezier(.23,1,.32,1),color .2s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1); cursor:pointer; }
.button:hover { transform:translateY(-2px); }.button:active { transform:scale(.97); }
.button span { font-size:17px; }
.button-dark { border-color:var(--cacao); background:var(--cacao); color:#fffaf2; }
.button-dark:hover { background:var(--gold); border-color:var(--gold); }

.site-header { position:sticky; top:0; z-index:20; height:80px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 clamp(20px, 4vw, 56px); border-bottom:1px solid var(--line); background:rgba(247,241,231,.97); backdrop-filter:blur(8px); }
.header-start { display:flex; align-items:center; justify-self:start; }.brand { display:block; width:112px; height:64px; overflow:hidden; position:relative; }
.brand img { position:absolute; width:96px; max-width:none; left:50%; top:50%; transform:translate(-50%,-50%); }
.site-nav { display:flex; justify-content:center; align-items:center; gap:clamp(14px,1.7vw,28px); }
.site-nav a { font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; position:relative; white-space:nowrap; }
.site-nav a::after { content:''; position:absolute; left:0; right:0; bottom:-7px; height:1px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
.site-nav a:hover::after { transform:scaleX(1); }
.cart-trigger { justify-self:end; display:flex; align-items:center; gap:7px; background:none; border:0; color:var(--gold); font:10px var(--mono); text-transform:uppercase; letter-spacing:.11em; cursor:pointer; }.cart-trigger:active { transform:scale(.97); }
.cart-trigger svg { width:20px; height:20px; }
.cart-trigger b { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--gold); color:var(--ivory); font-size:10px; }
.menu-toggle { display:none; }

.hero { position:relative; min-height:calc(100svh - 80px); display:grid; align-items:end; overflow:hidden; background:var(--sand); }
.hero-media,.hero-slide,.hero-wash { position:absolute; inset:0; }
.hero-slide { margin:0; opacity:0; transition:opacity 1s ease; }
.hero-slide.active { opacity:1; }
.hero-slide img,.hero-slide video { width:100%; height:100%; object-fit:cover; object-position:center 43%; }
.hero-wash { background:linear-gradient(90deg, rgba(50,34,22,.72) 0%, rgba(50,34,22,.36) 38%, rgba(50,34,22,.05) 71%); }
.hero-content { position:relative; z-index:1; width:min(610px,90%); margin:0 0 clamp(76px,10vh,118px) clamp(24px,8vw,124px); color:var(--paper); }
.hero-content .eyebrow { color:#efd6a1; }
.hero h1 { font-size:clamp(48px,5.6vw,84px); letter-spacing:-.035em; margin:0 0 16px; }
.hero h1 em { color:#f0c56f; }
.hero-signature { font:clamp(17px,1.6vw,24px) var(--serif); color:#f3d993; margin-bottom:28px; }
.hero-pagination { position:absolute; z-index:2; right:clamp(24px,4vw,62px); bottom:48px; display:flex; gap:9px; }
.hero-pagination button { width:34px; height:2px; padding:0; border:0; background:rgba(255,255,255,.55); cursor:pointer; transition:width .25s,background .25s; }
.hero-pagination button.active { width:62px; background:#fff; }

.section-narrow { padding:clamp(58px,7vw,96px) 8%; }
.intro { max-width:1000px; margin:auto; text-align:center; }
.intro p { margin:0; font:clamp(22px,2.05vw,31px)/1.35 var(--serif); letter-spacing:.005em; }.intro strong { font-weight:700; }
.manifesto { position:relative; overflow:hidden; padding:clamp(62px,7vw,96px) 6%; text-align:center; background:var(--paper); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.manifesto::before,.manifesto::after { content:''; position:absolute; width:38vw; max-width:480px; height:38vw; max-height:480px; border:1px solid rgba(170,119,41,.18); border-radius:50%; }
.manifesto::before { left:-15vw; bottom:-25vw; }.manifesto::after { right:-19vw; top:-26vw; }
.manifesto h2,.section-heading h2 { margin:0 0 24px; font-size:clamp(40px,4.4vw,68px); }
.manifesto-copy { position:relative; z-index:1; font:clamp(22px,2.65vw,39px)/1.3 var(--serif); }
.manifesto-copy i,.manifesto-copy strong { color:var(--gold); }.manifesto-copy strong { font-weight:700; }.ornament { display:block; margin-top:30px; color:var(--gold); }

.collection-overview { padding:clamp(64px,8vw,108px) max(5%,24px); }.section-heading { max-width:680px; margin:0 auto 40px; text-align:center; }.section-heading h2 { margin-bottom:14px; }.section-heading > p:last-child { color:var(--muted); }
.collection-cards { width:min(1240px,100%); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.collection-card { min-height:340px; display:flex; flex-direction:column; align-items:center; padding:34px 28px 28px; text-align:center; color:var(--cacao); background:var(--paper); border:0; border-right:1px solid var(--line); cursor:pointer; transition:background .3s,color .3s; }
.collection-card:last-child { border-right:0; }.collection-card:hover { color:var(--paper); background:var(--cacao); }.collection-card > img { width:88px; height:72px; object-fit:contain; }.collection-card h3 { margin:24px 0 12px; font:clamp(31px,3.2vw,46px) var(--serif); }.collection-card p { max-width:240px; color:inherit; opacity:.76; }.collection-card b { margin-top:auto; font:10px var(--mono); letter-spacing:.13em; text-transform:uppercase; }.collection-card i { margin-left:8px; font-style:normal; color:var(--gold); font-size:16px; }
.origin-story { display:grid; grid-template-columns:.78fr 1.22fr; align-items:stretch; background:var(--sand); }.origin-story__gallery { display:block; min-height:610px; overflow:hidden; background:var(--paper); }.origin-story__image { width:100%; height:100%; min-height:610px; border:0; object-fit:cover; object-position:center; }.origin-story__copy { max-width:700px; align-self:center; padding:clamp(44px,6vw,96px) clamp(28px,6vw,104px); }.origin-story__copy h2 { margin:0 0 28px; color:var(--gold); font-size:clamp(42px,4.8vw,68px); text-align:center; }.origin-story__copy p { color:var(--bark); text-align:justify; }
.map-section { padding:clamp(62px,7vw,96px) 6% 0; }.map-section .section-heading { margin-bottom:34px; }.map-art { position:relative; width:min(1280px,100%); margin:auto; border:1px solid var(--line); overflow:hidden; }.map-art img { width:100%; }.map-art span { position:absolute; left:9%; bottom:1.5%; display:block; width:27%; padding:.15em .2em; background:#fcf7ef; color:#322216; font:clamp(6px,.76vw,12px)/1.2 var(--mono); letter-spacing:.14em; text-align:center; text-transform:uppercase; }

.ritual { margin-top:clamp(62px,7vw,96px); padding:clamp(64px,7vw,96px) 7%; background:var(--cacao); color:var(--paper); }.ritual-heading { max-width:700px; margin:0 auto 44px; text-align:center; }.ritual-heading .eyebrow { color:#dcad5b; }.ritual-heading h2 { font-size:clamp(42px,4.8vw,70px); margin:0 0 18px; }.ritual-heading h2 em { color:#d9a74c; }.ritual-heading p { color:#ded0bf; }.ritual-steps { width:min(1100px,100%); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); }.ritual-steps article { min-height:270px; display:grid; grid-template-rows:68px auto minmax(44px,auto); align-content:center; justify-items:center; gap:10px; padding:30px 28px; border-right:1px solid rgba(255,255,255,.22); text-align:center; }.ritual-steps article:last-child { border:0; }.ritual-icon { display:grid; width:110px; height:68px; place-items:center; justify-self:center; margin:0; overflow:visible; }.ritual-icon img { width:auto; max-width:none; object-fit:contain; }.ritual-steps article:nth-child(1) .ritual-icon img { height:56px; transform:translateY(6px); }.ritual-steps article:nth-child(2) .ritual-icon img { height:60px; transform:translateY(4px); }.ritual-steps article:nth-child(3) .ritual-icon img { height:44px; transform:translateY(12px); }.ritual-steps h3 { margin:0; color:#ecc276; font:31px var(--serif); }.ritual-steps p { max-width:290px; margin:0; color:#d5c6b2; font-size:14px; }.ritual-quote { padding:clamp(68px,8vw,108px) 8%; background:#24170f; color:#e7c87f; text-align:center; }.ritual-quote p { margin:0; font:clamp(31px,4vw,58px)/1.16 var(--serif); }

.shop { padding:clamp(64px,8vw,108px) 5%; }.shop-filters { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin:0 auto 30px; }.shop-filters button { padding:10px 15px; background:transparent; border:1px solid var(--line); color:var(--bark); font:10px var(--mono); letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:background .2s,color .2s; }.shop-filters button.active,.shop-filters button:hover { background:var(--cacao); color:var(--paper); }.products { width:min(1240px,100%); display:grid; grid-template-columns:repeat(4,1fr); margin:auto; }.product { min-width:0; background:var(--paper); border:1px solid var(--line); border-right:0; }.product:last-child { border-right:1px solid var(--line); }.product[hidden] { display:none; }.product img { width:100%; aspect-ratio:1/1.08; object-fit:cover; }.product > div { padding:20px; }.product span { color:var(--gold); font:10px var(--mono); text-transform:uppercase; letter-spacing:.1em; }.product h3 { margin:8px 0; font:24px var(--serif); }.product p { min-height:40px; margin-bottom:15px; color:var(--muted); font-size:13px; }.add-cart { width:100%; display:flex; justify-content:space-between; padding:10px 0 0; border:0; border-top:1px solid var(--line); background:transparent; color:var(--bark); font:10px var(--mono); letter-spacing:.1em; text-align:left; text-transform:uppercase; cursor:pointer; }.add-cart b { color:var(--gold); font-size:17px; }

.voices { padding:clamp(64px,8vw,108px) 5%; background:var(--paper); }.voices-carousel { width:min(1380px,100%); display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; margin:auto; }.voices-viewport { overflow:hidden; }.voice-grid { --voice-gap:12px; --voice-card-width:calc((100% - (var(--voice-gap) * 3)) / 4); display:grid; grid-auto-flow:column; grid-auto-columns:var(--voice-card-width); gap:var(--voice-gap); transition:transform .32s cubic-bezier(.23,1,.32,1); will-change:transform; }.voice { position:relative; display:flex; flex-direction:column; min-height:256px; padding:26px; border:1px solid var(--line); background:#fffdf8; color:var(--cacao); text-align:left; }.quote-mark { color:var(--gold); font:48px/.7 var(--serif); }.stars { margin:8px 0 18px; color:var(--gold); font-size:11px; letter-spacing:3px; }.voice p { color:var(--bark); font:17px/1.45 var(--serif); }.voice footer { display:flex; flex-direction:column; gap:3px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); }.voice footer b { font-size:13px; }.voice footer span { color:var(--muted); font:10px var(--mono); letter-spacing:.04em; text-transform:uppercase; }.voice footer em { color:var(--rose); font-style:normal; }.voice-share { align-items:flex-start; justify-content:center; border-color:var(--gold); background:var(--gold); color:var(--paper); cursor:pointer; transition:background .2s cubic-bezier(.23,1,.32,1),color .2s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1); }.voice-share:hover { background:var(--cacao); }.voice-share:active { transform:scale(.97); }.voice-share__plus { margin-bottom:18px; font:52px/.8 var(--serif); }.voice-share__title { font:clamp(27px,2.3vw,37px)/1 var(--serif); }.voice-share__copy { margin-top:7px; color:#f5dfb4; font-size:13px; letter-spacing:.04em; }.voices-arrow { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--gold); border-radius:50%; background:transparent; color:var(--gold); font:22px/1 var(--sans); cursor:pointer; transition:background .16s cubic-bezier(.23,1,.32,1),color .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1); }.voices-arrow:not(:disabled):hover { background:var(--gold); color:var(--paper); }.voices-arrow:not(:disabled):active { transform:scale(.97); }.voices-arrow:disabled { cursor:not-allowed; opacity:.35; }

.contact-dialog { width:min(700px,calc(100% - 32px)); padding:clamp(34px,5vw,58px); border:1px solid var(--line); background:var(--paper); color:var(--cacao); }.contact-dialog::backdrop { background:rgba(41,25,12,.53); }.contact-dialog h2 { margin:0 0 16px; font:clamp(44px,5vw,65px) var(--serif); }.contact-dialog h2 em { color:var(--gold); font-style:normal; }.contact-dialog > p:not(.eyebrow) { margin-bottom:28px; color:var(--muted); }.contact-form { display:grid; gap:16px; }.contact-form label { display:grid; gap:7px; color:var(--bark); font:10px var(--mono); letter-spacing:.1em; text-transform:uppercase; }.contact-form input,.contact-form textarea { width:100%; padding:13px; border:1px solid var(--line); border-radius:0; background:#fffdf8; color:var(--cacao); opacity:1; }.contact-form textarea { min-height:118px; resize:vertical; }.contact-form input:disabled,.contact-form textarea:disabled { cursor:not-allowed; color:#877a6a; }.contact-form button:disabled { cursor:not-allowed; opacity:.58; transform:none; }.contact-form > p { margin:0; color:var(--muted); font-size:12px; text-align:center; }
body > footer { display:grid; grid-template-columns:1.5fr .8fr .9fr .8fr; gap:34px; padding:56px 7%; background:var(--cacao); color:#e6d9c9; }body > footer h3 { margin:0 0 16px; color:#e1b760; font:12px var(--mono); letter-spacing:.14em; text-transform:uppercase; }body > footer a,.footer-contact-trigger { display:block; margin:0 0 8px; color:#d9cabb; font:13px var(--sans); }body > footer a:hover,.footer-contact-trigger:hover { color:#e3b258; }body > footer a[aria-disabled="true"] { cursor:default; pointer-events:none; }.footer-contact-trigger { padding:0; border:0; background:transparent; text-align:left; cursor:pointer; }.footer-brand { text-align:center; }.footer-brand img { width:102px; height:78px; margin:auto; object-fit:contain; object-position:center; }.footer-brand p { max-width:220px; margin:8px auto 18px; font:18px/1.3 var(--serif); }.social-links { display:flex; justify-content:center; gap:8px; }.social-links a { display:grid; place-items:center; width:34px; height:34px; margin:0; border:1px solid rgba(226,182,96,.55); border-radius:50%; color:#e1b760; }.social-links svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }.footer-note { align-self:end; color:#bda98f; font:10px/1.7 var(--mono); letter-spacing:.08em; text-transform:uppercase; }

.drawer { position:fixed; z-index:30; top:0; right:0; width:min(420px,100%); height:100%; padding:70px 42px 40px; background:var(--paper); transform:translateX(100%); transition:transform .35s ease; }.drawer.is-open { transform:translateX(0); }.drawer h2,.review-dialog h2 { margin:0 0 26px; font:50px var(--serif); }.drawer h2 em,.review-dialog h2 em { color:var(--gold); font-style:normal; }.drawer-close,.dialog-close,.collection-close { position:absolute; right:22px; top:18px; border:0; background:none; color:var(--cacao); font:37px/1 var(--serif); cursor:pointer; }.drawer ul { min-height:260px; padding:0; list-style:none; }.drawer li { display:flex; justify-content:space-between; gap:10px; padding:15px 0; border-bottom:1px solid var(--line); font:16px var(--serif); }.drawer li button { border:0; background:none; color:var(--gold); cursor:pointer; }.empty-cart { color:var(--muted); }.overlay { position:fixed; z-index:25; inset:0; background:rgba(41,25,12,.42); opacity:0; visibility:hidden; transition:opacity .25s,visibility .25s; }.overlay.is-open { opacity:1; visibility:visible; }
.review-dialog { width:min(560px,calc(100% - 32px)); padding:52px; border:1px solid var(--line); background:var(--paper); color:var(--cacao); }.review-dialog::backdrop { background:rgba(41,25,12,.53); }.review-dialog > p:not(.eyebrow) { color:var(--muted); }.review-dialog form { display:grid; gap:15px; margin-top:30px; }.review-dialog label { display:grid; gap:6px; font:10px var(--mono); letter-spacing:.08em; text-transform:uppercase; }.review-dialog input,.review-dialog textarea { padding:12px; border:1px solid var(--line); border-radius:0; background:#fffdf8; color:var(--cacao); }.review-dialog textarea { min-height:110px; resize:vertical; }
.collection-view { position:fixed; z-index:35; inset:0; overflow:auto; padding:112px max(6%,30px) 56px; background:var(--ivory); opacity:0; visibility:hidden; transform:translateY(16px); transition:opacity .25s,visibility .25s,transform .25s; }.collection-view.is-open { opacity:1; visibility:visible; transform:none; }.collection-brand { position:absolute; top:16px; left:50%; transform:translateX(-50%); }.collection-layout { width:min(1180px,100%); min-height:calc(100svh - 168px); display:grid; grid-template-columns:.84fr 1.16fr; align-items:center; gap:clamp(32px,5vw,76px); margin:auto; }.collection-layout h2,.notes-view h2,.ritual-view h2 { margin:0 0 20px; font-size:clamp(40px,4.6vw,66px); }.collection-layout p,.notes-view__heading p,.ritual-view__heading p { max-width:620px; color:var(--bark); }.collection-layout p { text-align:justify; }.collection-layout img { width:100%; max-height:64vh; object-fit:cover; border:1px solid var(--line); }.collection-layout--map img { object-fit:contain; }.collection-layout dl { margin:24px 0 0; }.collection-layout dl div { padding:12px 0; border-top:1px solid var(--line); }.collection-layout dt { font:23px var(--serif); }.collection-layout dd { margin:3px 0 0; color:var(--muted); font-size:14px; }.notes-view,.ritual-view { width:min(1240px,100%); margin:auto; }.notes-view__heading,.ritual-view__heading { max-width:680px; margin:0 auto 42px; text-align:center; }.notes-view__heading p,.ritual-view__heading p { margin-inline:auto; }.notes-grid { display:grid; grid-template-columns:1fr; gap:clamp(18px,2.5vw,30px); }.note-card { display:grid; grid-template-columns:minmax(300px,.92fr) 1.08fr; min-height:300px; overflow:hidden; background:var(--paper); border:1px solid var(--line); }.note-card:nth-child(even) img { order:2; }.note-card img { width:100%; height:100%; min-height:300px; object-fit:cover; }.note-card > div { display:flex; flex-direction:column; justify-content:center; padding:clamp(28px,4vw,58px); }.note-card .eyebrow { margin-bottom:12px; }.note-card h3,.ritual-preview h3 { margin:0 0 14px; color:var(--cacao); font:clamp(32px,3.2vw,46px) var(--serif); }.note-card p { margin:0; color:var(--bark); font-size:15px; }.ritual-view { text-align:center; }.ritual-preview { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,3vw,42px); margin:0 auto 38px; }.ritual-preview article { display:grid; justify-items:center; }.ritual-preview__icon { display:grid; width:112px; height:112px; place-items:center; border:1px solid var(--gold); border-radius:50%; background:var(--paper); }.ritual-preview__icon img { width:72px; height:72px; object-fit:contain; }.ritual-preview h3 { margin-top:16px; }.ritual-preview p { margin:0; color:var(--muted); font-size:14px; }

@media (max-width: 900px) { .site-header { grid-template-columns:1fr auto 1fr; height:68px; padding:0 20px; }.brand { width:90px; height:60px; }.brand img { width:70px; }.menu-toggle { display:grid; gap:5px; margin-right:18px; padding:8px 0; border:0; background:none; cursor:pointer; }.menu-toggle span { width:21px; height:1px; background:var(--cacao); }.site-nav { position:absolute; top:68px; left:0; right:0; display:none; padding:22px; background:var(--ivory); border-bottom:1px solid var(--line); }.site-nav.is-open { display:grid; grid-template-columns:repeat(2,1fr); justify-items:start; gap:20px; }.cart-label { display:none; }.cart-trigger b { font-size:10px; }.hero { min-height:590px; }.hero-content { margin:0 24px 78px; }.hero h1 { font-size:clamp(44px,9.5vw,68px); }.hero-pagination { bottom:28px; }.collection-cards,.products { grid-template-columns:repeat(2,1fr); }.collection-card:nth-child(2) { border-right:0; }.collection-card:last-child { border-top:1px solid var(--line); border-right:1px solid var(--line); }.origin-story { grid-template-columns:1fr; }.origin-story__gallery,.origin-story__image { min-height:560px; }.ritual-steps { grid-template-columns:1fr; }.ritual-steps article { min-height:auto; padding:30px; border-right:0; border-bottom:1px solid rgba(255,255,255,.22); }.ritual-steps article:last-child { border-bottom:0; }.voice-grid { --voice-card-width:calc((100% - var(--voice-gap)) / 2); }body > footer { grid-template-columns:1.5fr 1fr; }.collection-layout { grid-template-columns:1fr; }.collection-layout img { max-height:50vh; }.collection-layout--map img { order:-1; }.note-card { grid-template-columns:minmax(230px,.85fr) 1.15fr; }.ritual-preview { grid-template-columns:repeat(3,1fr); } }
@media (max-width: 560px) { .site-header { padding:0 16px; }.hero { min-height:560px; }.hero-wash { background:linear-gradient(0deg, rgba(50,34,22,.72), rgba(50,34,22,.08)); }.hero-content { margin-bottom:70px; }.hero-content .button { padding:12px 15px; gap:18px; }.hero-pagination button { width:24px; }.hero-pagination button.active { width:46px; }.intro { text-align:center; }.collection-cards,.products { grid-template-columns:1fr; }.collection-card { min-height:260px; border-right:0; border-bottom:1px solid var(--line); }.collection-card:last-child { border-bottom:0; }.product { border-right:1px solid var(--line); border-bottom:0; }.product img { aspect-ratio:1.4/1; }.origin-story__gallery,.origin-story__image { min-height:500px; }.origin-story__copy { padding:48px 25px; }.map-section { padding-inline:16px; }.map-art span { left:8%; width:33%; bottom:1%; font-size:6px; }.ritual { padding-inline:18px; }.shop,.voices { padding-inline:16px; }.contact-dialog { padding:34px 25px 28px; }.voices-carousel { grid-template-columns:36px minmax(0,1fr) 36px; gap:8px; }.voices-arrow { width:36px; height:36px; }.voice-grid { --voice-card-width:100%; }.voice { min-height:240px; }body > footer { grid-template-columns:1fr; padding:46px 25px; }.footer-note { align-self:auto; }.drawer { padding:65px 25px 28px; }.review-dialog { padding:42px 25px 28px; }.collection-view { padding:100px 20px 40px; }.collection-layout h2,.notes-view h2,.ritual-view h2 { font-size:46px; }.note-card,.note-card:nth-child(even) { grid-template-columns:1fr; }.note-card:nth-child(even) img { order:0; }.note-card img { min-height:0; aspect-ratio:1.38/1; }.note-card > div { padding:28px 24px 30px; }.ritual-preview { grid-template-columns:1fr; }.ritual-preview__icon { width:118px; height:118px; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }

.policy-page { min-height:100vh; background:var(--sand); }.policy-header { display:flex; align-items:center; justify-content:space-between; min-height:88px; padding:12px max(6%,24px); border-bottom:1px solid var(--line); background:var(--ivory); }.policy-header .brand { width:100px; height:62px; }.policy-back { color:var(--bark); font:11px var(--mono); letter-spacing:.1em; text-transform:uppercase; }.policy-content { width:min(840px,calc(100% - 40px)); margin:clamp(46px,8vw,100px) auto; padding:clamp(30px,6vw,70px); background:var(--paper); border:1px solid var(--line); }.policy-content h1 { margin:0 0 28px; font-size:clamp(44px,6vw,78px); }.policy-content h1 em { color:var(--gold); font-style:normal; }.policy-lead { color:var(--gold); font:clamp(27px,3vw,38px) var(--serif); }.policy-content p,.policy-content li { color:var(--bark); }.policy-content section { margin-top:44px; padding-top:30px; border-top:1px solid var(--line); }.policy-content h2 { margin:0 0 16px; color:var(--cacao); font-size:clamp(29px,3.4vw,43px); }.policy-content ul,.policy-content ol { padding-left:22px; }.policy-content li + li { margin-top:7px; }.policy-content a { color:var(--gold); text-decoration:underline; text-underline-offset:3px; }.policy-promise { color:var(--paper); background:var(--cacao); margin-inline:calc(clamp(30px,6vw,70px) * -1); margin-bottom:calc(clamp(30px,6vw,70px) * -1); padding:clamp(34px,6vw,70px); }.policy-promise h2,.policy-promise p { color:var(--paper); }.policy-page > .policy-footer { display:block; gap:0; padding:24px; background:var(--cacao); color:#bda98f; font:10px var(--mono); letter-spacing:.08em; text-align:center; text-transform:uppercase; }@media (max-width:560px) { .policy-header { min-height:72px; }.policy-header .brand { width:80px; height:52px; }.policy-back { font-size:9px; }.policy-content { width:min(100% - 28px,840px); margin:32px auto; padding:30px 24px; }.policy-promise { margin-inline:-24px; margin-bottom:-30px; padding:38px 24px; } }
