
:root{--ivory:#F7F2EA;--champagne:#EDE2D0;--linen:#E3D5BE;--gold:#A8834C;--gold-soft:#C6A675;--ink:#2B1F1B;--soft:#6A5A50;--oxblood:#5B1F1D;--line:rgba(43,31,27,.13);
--display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--mark:"Marcellus","Cormorant Garamond",Georgia,serif;--body:"Jost","Futura","Avenir Next","Helvetica Neue",Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--body);font-weight:300;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--ivory);padding:.6rem 1rem;z-index:100}
.skip:focus{left:12px}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}
.eyebrow{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:400}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;margin:0;text-wrap:balance}
h1{font-size:clamp(2.6rem,6.5vw,4.6rem)}
h2{font-size:clamp(2rem,4.4vw,3rem)}
h3{font-size:1.45rem;line-height:1.2}
p{margin:0}
.measure{max-width:36rem}
.soft{color:var(--soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:1.05em 2.2em;border:1px solid var(--ink);background:var(--ink);color:var(--ivory);font-size:.76rem;font-weight:400;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;transition:background .3s,border-color .3s,color .3s}
.btn:hover{background:var(--oxblood);border-color:var(--oxblood)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--ivory)}
.btn.static{cursor:default;background:transparent;color:var(--ink);border-color:var(--gold)}
.btn.static:hover{background:transparent;border-color:var(--gold)}
header.site{position:sticky;top:0;z-index:40;background:rgba(247,242,234,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top)}
header.site .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:68px}
.wordmark{grid-column:2;font-family:var(--mark);font-size:1.75rem;letter-spacing:.09em;color:var(--gold);text-decoration:none;line-height:1}
nav.main{display:flex;gap:2rem}
nav.main a,.menubtn{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;font-weight:400;padding:.4rem 0;border-bottom:1px solid transparent}
nav.main a[aria-current=page]{border-bottom-color:var(--gold)}
nav.right{justify-self:end}
.menubtn{display:none;background:none;border:0;cursor:pointer;font-family:inherit;color:inherit}
#mnav{display:none}
@media (max-width:780px){
 nav.main{display:none}
 .menubtn{display:block;justify-self:start}
 .wordmark{font-size:1.45rem}
 #mnav:not([hidden]){display:flex;flex-direction:column;border-top:1px solid var(--line)}
 #mnav a{padding:1rem max(22px,env(safe-area-inset-left));border-bottom:1px solid var(--line);text-decoration:none;font-family:var(--display);font-size:1.5rem}
}
main{display:block}
.section{padding-block:clamp(3.5rem,8vw,6.5rem)}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,6vw,5.5rem);align-items:center;padding-block:clamp(2.2rem,5vw,4.5rem)}
.hero > *,.split > *{min-width:0}
.frame{aspect-ratio:4/5;overflow:hidden;background:var(--linen)}
.frame img{width:100%;height:100%;object-fit:cover}
.hero .frame img{animation:settle 2.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes settle{from{transform:scale(1.05)}to{transform:none}}
.stack{display:flex;flex-direction:column;gap:1.4rem}
.rise{animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.split.rev .frame{order:2}
@media (max-width:820px){.hero,.split{grid-template-columns:1fr}.split.rev .frame{order:0}.hero{padding-top:1.2rem}}
.band{background:var(--oxblood);color:#F2E8D8}
.band .wrap{padding-block:clamp(3rem,7vw,5.5rem);display:grid;gap:1rem;justify-items:center;text-align:center}
.band .big{font-family:var(--display);font-size:clamp(1.9rem,4.6vw,3.2rem);line-height:1.15;letter-spacing:.04em}
.band .eyebrow{color:#D8B97E}
.ritual{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ritual li{display:grid;grid-template-columns:4rem 1fr;gap:1rem;padding-block:1.1rem;border-bottom:1px solid var(--line)}
.ritual .k{font-family:var(--display);font-size:1.6rem;color:var(--gold);line-height:1.1}
.ritual b{display:block;font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;margin-bottom:.15rem}
.ritual span.v{color:var(--soft)}
.benefits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2.5rem}
.benefits li{padding-block:1rem;border-top:1px solid var(--line);font-family:var(--display);font-size:1.35rem;line-height:1.3}
@media (max-width:620px){.benefits{grid-template-columns:1fr}}
.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start;padding-block:clamp(1.5rem,4vw,3.5rem) clamp(3rem,6vw,5rem)}
.pdp > *{min-width:0}
@media (max-width:860px){.pdp{grid-template-columns:1fr}}
.gallery{display:grid;gap:.8rem}
.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.thumbs button{padding:0;border:1px solid transparent;background:var(--linen);aspect-ratio:1;overflow:hidden;cursor:pointer}
.thumbs button[aria-pressed=true]{border-color:var(--gold)}
.thumbs img{width:100%;height:100%;object-fit:cover}
.buy{display:flex;flex-direction:column;gap:1.3rem;position:sticky;top:96px}
@media (max-width:860px){.buy{position:static}}
.meta{display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.price{font-family:var(--display);font-size:2rem}
.size{color:var(--soft);letter-spacing:.06em;font-size:.92rem}
.note{font-size:.88rem;color:var(--soft)}
details.acc{border-top:1px solid var(--line)}
details.acc:last-of-type{border-bottom:1px solid var(--line)}
details.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding-block:1.1rem;font-size:.76rem;letter-spacing:.24em;text-transform:uppercase;font-weight:400}
details.acc summary::-webkit-details-marker{display:none}
details.acc summary::after{content:"+";font-size:1.25rem;color:var(--gold);transition:transform .3s}
details.acc[open] summary::after{transform:rotate(45deg)}
.acc-body{padding-bottom:1.4rem;color:var(--soft);display:grid;gap:.8rem}
.acc-body ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}
.inci{font-size:.88rem;line-height:1.8}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem 2.5rem}
.keys > div{border-top:1px solid var(--gold);padding-top:1rem;display:grid;gap:.5rem;align-content:start}
.keys p{color:var(--soft);font-size:.96rem}
@media (max-width:860px){.keys{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.keys{grid-template-columns:1fr}}
.pagehead{padding-block:clamp(2.5rem,6vw,4.5rem) 1rem;display:grid;gap:1rem}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);padding-block:2.5rem clamp(3rem,7vw,5.5rem)}
.founders > *{min-width:0}
@media (max-width:760px){.founders{grid-template-columns:1fr}}
.founder{display:grid;gap:.9rem;align-content:start;border-top:1px solid var(--gold);padding-top:1.4rem}
.founder .role{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.founder p{color:var(--soft)}
.faq{max-width:46rem;padding-bottom:clamp(3rem,7vw,5.5rem)}
.contact-card{display:grid;gap:1.2rem;max-width:36rem;padding-bottom:clamp(3rem,7vw,5.5rem)}
.email{font-family:var(--display);font-size:clamp(1.5rem,4vw,2.1rem);word-break:break-all}
footer.site{background:var(--champagne);border-top:1px solid var(--line)}
footer.site .wrap{padding-block:3rem calc(2rem + env(safe-area-inset-bottom));display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
footer.site .wrap > *{min-width:0}
footer .fmark{font-family:var(--mark);font-size:1.6rem;color:var(--gold);letter-spacing:.09em}
footer .tag{font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;color:var(--soft);margin-top:.6rem}
footer h4{margin:0 0 .8rem;font-weight:400;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
footer a{text-decoration:none;color:var(--soft);font-size:.94rem}
footer a:hover{color:var(--ink)}
footer .legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1.3rem;font-size:.78rem;color:var(--soft)}
@media (max-width:760px){footer.site .wrap{grid-template-columns:1fr 1fr}footer .c1{grid-column:1/-1}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
