@font-face{font-family:Editorial;src:url('assets/fonts/editorial.otf') format('opentype');font-weight:400;font-display:swap}@font-face{font-family:Editorial;src:url('assets/fonts/editorial-italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:OtiText;src:url('assets/fonts/text.otf') format('opentype');font-weight:400;font-display:swap}@font-face{font-family:OtiText;src:url('assets/fonts/text-bold.otf') format('opentype');font-weight:600 800;font-display:swap}
:root{--ivory:#f7f3eb;--coal:#2e2e2e;--earth:#a88c7b;--sand:#d5c8bb;--ink:#4a3e35;--muted:#71675e;--line:rgba(74,62,53,.2);--gutter:clamp(24px,6.1vw,100px);--serif:Editorial,Georgia,serif;--sans:OtiText,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button{border:0;background:none}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{text-wrap:balance}h2{font-size:clamp(40px,4.5vw,68px);line-height:1.09;letter-spacing:-.045em}em{font-weight:400}p{max-width:65ch}button:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ivory);padding:14px}.skip:focus{top:10px}.header{height:96px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:rgba(247,243,235,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.brand{width:102px;display:block;flex-shrink:0}.brand img{width:100%;height:auto}.desktop-nav{display:flex;gap:34px}.desktop-nav a{position:relative;font-size:14px;padding:10px 0}.desktop-nav a:after{content:'';position:absolute;bottom:4px;left:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:20px}.bag-open{font-size:14px;padding:12px 0}.bag-count{display:inline-flex;border:1px solid var(--line);width:25px;height:25px;border-radius:50%;align-items:center;justify-content:center;font-size:12px;margin-left:8px}.menu-toggle{display:none;width:44px;height:44px;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{display:block;width:23px;height:1px;background:var(--ink)}.mobile-nav{position:absolute;top:95px;left:0;right:0;background:var(--ivory);padding:20px var(--gutter) 30px;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:13px 0;font-family:var(--serif);font-size:28px}.hero{position:relative;height:min(780px,calc(100svh - 96px));min-height:620px;overflow:hidden;background:#d7c7b2}.hero-image{position:absolute;inset:-32px 0;will-change:transform}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:center 51%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,243,235,.43),rgba(247,243,235,.08) 47%,transparent 70%)}.hero-copy{position:relative;padding:76px var(--gutter) 96px;z-index:1}.eyebrow{font-size:12px;letter-spacing:.19em;text-transform:uppercase;line-height:1.6}.hero h1{font-size:clamp(64px,6.6vw,100px);letter-spacing:-.05em;line-height:1.015;margin:27px 0 22px;max-width:740px}.hero .intro{font-size:19px;line-height:1.6;margin-bottom:30px}.button{min-height:52px;background:var(--ink);color:var(--ivory);display:inline-flex;gap:35px;align-items:center;justify-content:space-between;padding:16px 24px;font-size:12px;line-height:1.5;letter-spacing:.11em;text-transform:uppercase;border:1px solid var(--ink);transition:background .25s,transform .25s}.button:hover{background:#635042;transform:translateY(-2px)}.button span{font-size:20px;line-height:1;letter-spacing:0}.hero-bottom{position:absolute;z-index:2;bottom:25px;left:var(--gutter);display:flex;align-items:center;gap:35px;font-size:13px}.scroll-arrow{font-size:23px;display:inline-block;animation:drift 3s ease-in-out infinite}.hero-caption{position:absolute;bottom:30px;right:var(--gutter);font-size:11px;letter-spacing:.17em;line-height:1.8;text-transform:uppercase;color:var(--ivory);text-align:right;text-shadow:0 1px 8px #3c302e}.essence{display:grid;grid-template-columns:1fr 1fr;padding-top:4px;gap:4px}.essence-photo{position:relative;height:690px;overflow:hidden}.essence-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 44%}.photo-caption{position:absolute;bottom:36px;left:var(--gutter);color:var(--ivory);font-size:12px;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 8px #392e24}.essence-copy{align-self:center;padding:64px clamp(30px,6vw,100px)}.essence-copy h2{margin:27px 0 23px;font-size:clamp(40px,3.9vw,62px)}.essence-copy p:not(.eyebrow){margin:0 0 17px;font-size:17px;line-height:1.65}.short-line{display:block;width:45px;height:1px;background:var(--earth);margin-bottom:28px}.text-link{display:inline-flex;align-items:center;gap:25px;padding:9px 0;border-bottom:1px solid currentColor;letter-spacing:.1em;font-size:12px;text-transform:uppercase;transition:gap .25s}.text-link:hover{gap:35px}.text-link span{font-size:20px;line-height:1}.essence-copy .text-link{margin-top:13px}.values-strip{display:flex;justify-content:space-between;gap:18px;padding:30px var(--gutter);border-bottom:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.2em}.section-pad{padding:100px var(--gutter)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:44px}.section-heading h2{margin:16px 0}.section-heading p:not(.eyebrow){font-size:17px;color:var(--muted)}.collection-note{font-size:12px;text-align:right;line-height:1.7;color:var(--muted);padding-bottom:6px;flex-shrink:0}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.product-photo{display:block;position:relative;padding:0;width:100%;aspect-ratio:2/3;overflow:hidden;background:var(--sand)}.product-photo img{height:100%;width:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.6,.3,1)}.product-photo:hover img{transform:scale(1.035)}.product-number{position:absolute;left:18px;top:16px;font-size:12px;letter-spacing:.12em}.photo-cta{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:18px 20px;background:rgba(247,243,235,.94);font-size:12px;letter-spacing:.12em;text-transform:uppercase;transform:translateY(102%);transition:transform .3s}.product-photo:hover .photo-cta,.product-photo:focus-visible .photo-cta{transform:translateY(0)}.product-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 5px}.product h3{font-size:27px;line-height:1.2;letter-spacing:-.02em}.product h3 button{font:inherit;padding:0;text-align:left}.swatch{height:14px;width:14px;min-width:14px;border-radius:50%;border:1px solid rgba(74,62,53,.2)}.chocolate{background:#48372c}.ivory{background:#e0d5c5}.product>p{font-size:14px;color:var(--muted)}.product-link{font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:17px 0 7px;display:flex;align-items:center;gap:16px}.product-link:hover{text-decoration:underline;text-underline-offset:6px}.preview-note{font-size:12px;color:var(--muted);margin:33px 0 0;max-width:100%}.ritual{background:#d8ccbe;display:grid;grid-template-columns:1fr 1fr;padding:85px var(--gutter);gap:12%;position:relative}.ritual-intro h2{font-size:clamp(70px,8vw,120px);line-height:.94;margin:28px 0;letter-spacing:-.05em}.ritual-intro>p:last-child{font-size:18px}.ritual-story{align-self:center}.ritual-detail{padding:25px 0 31px;border-top:1px solid rgba(74,62,53,.25)}.ritual-detail:last-child{border-bottom:1px solid rgba(74,62,53,.25)}.ritual-detail>span{font-size:12px;text-transform:uppercase;letter-spacing:.16em}.ritual-detail h3{font-size:34px;line-height:1.2;letter-spacing:-.025em;margin:12px 0 10px}.ritual-detail p{font-size:16px}.manifesto{background:var(--coal);color:var(--ivory);padding-top:105px;padding-bottom:105px}.manifesto h2{font-size:clamp(47px,6vw,92px);line-height:1.08;margin:37px 0 62px;max-width:1120px;letter-spacing:-.04em}.manifesto h2 em{color:#c8b29f}.manifesto-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10%}.manifesto-index{font-size:12px;letter-spacing:.18em;text-transform:uppercase;line-height:1.8;color:#c8b29f}.manifesto-bottom p{font-size:17px;line-height:1.7;color:#e0d9d0;margin-bottom:22px}.manifesto button{color:var(--ivory)}.contact{text-align:center;padding-top:100px;padding-bottom:100px}.contact p{margin-left:auto;margin-right:auto}.contact h2{margin:22px auto}.contact>p:not(.eyebrow){font-size:17px;color:var(--muted)}.contact-actions{display:flex;justify-content:center;align-items:center;gap:35px;margin:31px 0 17px}.contact .contact-note{font-size:12px!important}.footer{padding:0 var(--gutter)}.footer-top{border-top:1px solid var(--line);padding:48px 0;display:grid;grid-template-columns:1.5fr 1fr 1.2fr auto;gap:40px;align-items:start}.footer-brand img{width:132px;height:auto;object-fit:contain;margin-left:-3px;margin-top:-14px}.footer-brand p{font-size:14px;line-height:1.6;margin-top:13px}.footer-top nav,.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:14px}.footer-top .eyebrow{font-size:11px;margin-bottom:10px}.footer-top a:hover{text-decoration:underline;text-underline-offset:4px}.back-top{width:43px;height:43px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:22px}.footer-bottom{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.mobile-break{display:none}
/* Dialogs use the native focus trap and return focus to their trigger. */
dialog{border:0;background:var(--ivory);color:var(--ink);padding:0;max-height:90svh;box-shadow:0 20px 100px #211e1940}dialog::backdrop{background:#211e1980;backdrop-filter:blur(5px)}.close-dialog{position:absolute;right:13px;top:12px;z-index:2;border-radius:50%;background:var(--ivory);width:44px;height:44px;font-size:28px;line-height:1}.product-dialog{width:min(920px,92vw)}.product-dialog-grid{display:grid;grid-template-columns:1fr 1fr}.product-dialog-grid>img{height:100%;max-height:80svh;width:100%;object-fit:cover}.detail-copy{padding:60px 36px 40px;align-self:center}.detail-copy h2{font-size:45px;margin:20px 0}.detail-info{font-size:15px;margin:25px 0}.detail-copy .button{width:100%;gap:12px;font-size:11px}.detail-fine{font-size:12px;color:var(--muted);margin-top:17px}.bag-dialog{width:min(500px,100vw);height:100svh;max-height:100svh;margin:0 0 0 auto;padding:70px 32px 35px}.bag-dialog h2{font-size:46px;margin:15px 0 35px}.bag-row{display:grid;grid-template-columns:75px 1fr auto;gap:17px;align-items:center;border-bottom:1px solid var(--line);padding:17px 0}.bag-row img{width:75px;aspect-ratio:2/3;object-fit:cover}.bag-row h3{font-size:24px;line-height:1.2}.bag-row p{font-size:12px;color:var(--muted);margin-top:6px}.bag-row button{width:36px;height:44px;font-size:22px}.bag-empty{padding:20px 0 30px}.bag-empty p{margin-bottom:20px}#bag-footer{margin-top:30px}#bag-footer>p{font-size:14px}#bag-footer>.button{margin-top:20px;width:100%;gap:20px}.manifesto-dialog{width:min(740px,92vw);padding:65px 60px}.manifesto-dialog h2{font-size:52px;margin:20px 0 35px}.manifesto-dialog p:not(.eyebrow){font-size:17px;line-height:1.8;margin-bottom:20px}.manifesto-dialog .manifesto-sign{font-family:var(--serif);font-style:italic;font-size:30px!important;margin-top:30px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);z-index:80;background:var(--coal);color:var(--ivory);padding:15px 25px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;text-align:center;max-width:90vw}.toast.active{opacity:1;transform:translate(-50%,0)}.reveal{opacity:1;transform:none}.motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.motion .reveal.visible{opacity:1;transform:none}.product:nth-child(2){transition-delay:.09s}.product:nth-child(3){transition-delay:.18s}@keyframes drift{50%{transform:translateY(5px)}}
@media(min-width:1800px){.hero{height:880px;max-height:none}.hero-copy{padding-top:105px}.essence-photo{height:790px}.header{height:110px}}
@media(max-width:1100px){.desktop-nav{gap:22px}.hero h1{font-size:75px}.hero{min-height:640px}.hero-copy{padding-top:70px}.essence-photo{height:630px}.essence-copy{padding:42px 35px}.essence-copy h2{font-size:44px}.products{gap:18px}.product h3{font-size:25px}.ritual{gap:8%}.ritual-detail h3{font-size:30px}}
@media(max-width:760px){html{scroll-padding-top:77px}.header{height:78px}.brand{width:81px}.desktop-nav{display:none}.menu-toggle{display:flex}.header-actions{gap:15px}.bag-open{font-size:12px}.bag-count{margin-left:4px;width:22px;height:22px}.mobile-nav{top:77px}.hero{height:auto;min-height:790px;display:flex;align-items:flex-start}.hero-image{inset:0;will-change:auto}.hero-image img{object-position:66% bottom}.hero-shade{background:linear-gradient(180deg,rgba(247,243,235,.95) 0%,rgba(247,243,235,.89) 26%,rgba(247,243,235,.1) 58%,rgba(46,46,46,.06) 100%)}.hero-copy{padding:37px var(--gutter) 0;width:100%}.hero-copy .eyebrow{font-size:10px;letter-spacing:.14em}.hero h1{font-size:clamp(50px,10vw,72px);line-height:1.035;letter-spacing:-.045em;margin:20px 0 14px;max-width:600px}.hero h1 br:first-child{display:none}.hero .intro{font-size:16px;margin-bottom:20px;line-height:1.5}.hero .intro br{display:none}.hero .button{min-height:47px;padding:12px 19px;font-size:11px}.hero-bottom{bottom:23px;left:24px;color:var(--ivory);font-size:11px;gap:16px;text-shadow:0 1px 5px #211e19}.hero-caption{right:24px;bottom:26px;font-size:9px;letter-spacing:.1em}.essence{grid-template-columns:1fr;gap:0;padding-top:0}.essence-photo{height:460px;order:2;margin:0 24px 40px}.essence-photo img{object-position:center 45%}.essence-copy{padding:58px var(--gutter) 40px;order:1}.essence-copy h2{font-size:clamp(38px,8vw,58px);margin:20px 0}.essence-copy p:not(.eyebrow){font-size:16px}.photo-caption{left:24px;bottom:25px}.values-strip{padding:24px var(--gutter);display:grid;grid-template-columns:1fr 1fr;row-gap:14px;font-size:10px;letter-spacing:.15em}.section-pad{padding:60px var(--gutter)}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:43px;margin:15px 0}.section-heading p:not(.eyebrow){font-size:16px}.collection-note{display:none}.mobile-break{display:block}.products{grid-template-columns:1fr;gap:39px}.product-photo{aspect-ratio:2/3}.product-heading{margin-top:17px}.product h3{font-size:30px}.product>p{font-size:15px}.photo-cta{display:none}.product-link{font-size:12px;padding-top:13px}.product-number{left:20px;top:18px}.preview-note{font-size:12px;line-height:1.7;margin-top:30px}.ritual{padding:58px var(--gutter);grid-template-columns:1fr;gap:34px}.ritual-intro h2{font-size:75px;line-height:1;margin:25px 0}.ritual-intro>p:last-child{font-size:17px}.ritual-detail{padding:23px 0}.ritual-detail h3{font-size:30px}.manifesto h2{font-size:clamp(38px,8vw,60px);margin:28px 0 35px}.manifesto h2 br{display:none}.manifesto-bottom{grid-template-columns:1fr;gap:28px}.manifesto-index{font-size:11px}.manifesto-bottom p{font-size:16px}.contact h2{font-size:43px}.contact>p:not(.eyebrow){font-size:16px}.contact p br{display:none}.contact-actions{flex-direction:column;gap:16px}.contact-note{line-height:1.7}.footer-top{grid-template-columns:1fr 1fr;gap:34px 22px;padding:39px 0}.footer-brand{grid-column:1/-1}.footer-brand img{width:113px}.footer-brand p{margin-top:8px}.footer-top .eyebrow{font-size:10px;letter-spacing:.13em}.footer-top nav,.footer-links{font-size:13px}.back-top{position:absolute;right:var(--gutter);margin-top:18px}.footer-bottom{flex-direction:column;gap:8px;font-size:11px}.product-dialog{max-height:92svh}.product-dialog-grid{grid-template-columns:1fr}.product-dialog-grid>img{height:300px;object-fit:contain;background:#d8cdbf}.detail-copy{padding:30px 25px}.detail-copy h2{font-size:37px;margin:14px 0}.manifesto-dialog{padding:55px 27px 25px}.manifesto-dialog h2{font-size:42px}.bag-dialog{padding:68px 25px 30px}.bag-dialog h2{font-size:40px}.toast{width:calc(100vw - 48px)}.product:nth-child(n){transition-delay:0s}}
@media(max-width:380px){.hero{min-height:750px}.hero h1{font-size:47px}.header-actions{gap:8px}.hero-caption{max-width:80px}.hero-bottom{max-width:180px}.eyebrow{font-size:11px}.product h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}.parallax{transform:none!important}}
