:root{
 --white:#FFFCFB; --ivory:#FDF6F4; --pale:#FBEAE8; --soft:#F5D9D7;
 --pink:#E9B4B6; --rose:#CE8A8F; --deep:#9C5A63; --plum:#2C1E22;
 --gold:#C6A65E; --goldlt:#E4D3A4;
 --serif:'Cormorant Garamond',ui-serif,Georgia,serif;
 --sans:'Jost',ui-sans-serif,system-ui,sans-serif;
 --script:'Pinyon Script','Snell Roundhand',cursive;
 --g:clamp(1.4rem,5vw,5.5rem);
}
*{box-sizing:border-box}
body{margin:0;background:var(--white);color:var(--plum);font-family:var(--sans);
 font-weight:300;font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.08;text-wrap:balance}
p{margin:0}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--deep);outline-offset:3px}
.wrap{max-width:1200px;margin:0 auto;padding-inline:var(--g)}
.sec{padding-block:clamp(4rem,9vw,7.5rem)}
.eyebrow{font-size:.66rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}
.lede{color:#6C5257;font-size:1.05rem}
.btn{display:inline-block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
 font-weight:400;padding:1.1em 2.6em;border-radius:999px;border:1px solid var(--deep);
 background:var(--deep);color:#fff;cursor:pointer;
 transition:background .45s,border-color .45s,color .45s,letter-spacing .45s}
.btn:hover{background:var(--plum);border-color:var(--plum);letter-spacing:.26em}
.btn--out{background:transparent;color:var(--plum);border-color:var(--plum)}
.btn--out:hover{background:var(--plum);color:#fff}
.btn--gold{background:var(--gold);border-color:var(--gold);color:#fff}
.btn--gold:hover{background:#AC8C48;border-color:#AC8C48}
.btn--lt{background:#fff;border-color:#fff;color:var(--deep)}
.btn--lt:hover{background:var(--pale);border-color:var(--pale);color:var(--deep)}
.ph{background:linear-gradient(150deg,var(--pale),var(--soft) 55%,var(--pink));
 display:grid;place-items:center;text-align:center;padding:1rem;
 transition:transform 1.1s cubic-bezier(.2,.7,.3,1)}
.ph span{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--deep);opacity:.7}
.rise{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}
.rise.seen{opacity:1;transform:none}
.rv{position:relative;overflow:hidden}
.rv::after{content:"";position:absolute;inset:0;background:var(--pale);z-index:2;
 transform:translateY(0);transition:transform 1.25s cubic-bezier(.66,0,.2,1)}
.rv.seen::after{transform:translateY(-101%)}
.drawn{position:relative;padding-bottom:1.05rem}
.drawn::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:56px;background:var(--gold);
 transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.66,0,.2,1) .15s}
.drawn.seen::after{transform:scaleX(1)}
.ctr .drawn::after{left:50%;transform:translateX(-50%) scaleX(0)}
.ctr .drawn.seen::after{transform:translateX(-50%) scaleX(1)}
.silk{position:absolute;top:-30%;bottom:-30%;width:38%;pointer-events:none;z-index:1;
 background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));
 filter:blur(6px);animation:sheen 13s ease-in-out infinite}
@keyframes sheen{0%{transform:translateX(-160%) rotate(9deg)}55%,100%{transform:translateX(420%) rotate(9deg)}}

/* ===== opening ribbon ===== */
#curtain{position:fixed;inset:0;z-index:200;pointer-events:none}
.pnl{position:absolute;top:0;bottom:0;width:50.6%;
 background:linear-gradient(102deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 24%,rgba(206,138,143,.10) 50%,rgba(255,255,255,.45) 72%,rgba(206,138,143,.06) 100%),
 linear-gradient(180deg,var(--white),var(--pale) 48%,var(--soft))}
.pnl--l{left:0}.pnl--r{right:0}
#bow{position:absolute;top:clamp(.5rem,3vh,2.5rem);left:50%;transform:translateX(-50%);width:clamp(160px,22vw,250px)}
#lock{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);text-align:center;width:min(90vw,460px)}
#skip{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);pointer-events:auto;
 background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:.64rem;
 letter-spacing:.24em;text-transform:uppercase;color:var(--deep);opacity:.55}
#skip:hover{opacity:1}
.go #lock{animation:settle 1s cubic-bezier(.22,.7,.3,1) both, fade .7s ease-in 1.7s both}
.go .knot{animation:knot .5s ease-in 1s both}
.go .lpL{animation:lpL .8s cubic-bezier(.5,0,.4,1) 1.1s both}
.go .lpR{animation:lpR .8s cubic-bezier(.5,0,.4,1) 1.1s both}
.go #bow{animation:lift .9s ease-in 1.6s both}
.go .pnl--l{animation:partL 1.3s cubic-bezier(.7,0,.25,1) 1.65s both}
.go .pnl--r{animation:partR 1.3s cubic-bezier(.7,0,.25,1) 1.65s both}
.go #skip{animation:fade .4s ease 1.6s both}
@keyframes settle{from{opacity:0;transform:translate(-50%,-42%)}to{opacity:1;transform:translate(-50%,-50%)}}
@keyframes fade{to{opacity:0}}
@keyframes knot{to{opacity:0;transform:scale(.6)}}
@keyframes lpL{to{transform:translate(-48px,26px) rotate(-38deg);opacity:0}}
@keyframes lpR{to{transform:translate(48px,26px) rotate(38deg);opacity:0}}
@keyframes lift{to{opacity:0;transform:translateX(-50%) translateY(-26px)}}
@keyframes partL{to{transform:translateX(-101%)}}
@keyframes partR{to{transform:translateX(101%)}}
.lpL,.lpR,.knot{transform-origin:center;transform-box:fill-box}

/* ===== logo forming (wand sweep) ===== */
.logoform{position:relative;display:inline-block}
.logoform img{display:block;width:100%;height:auto}
.forming img{-webkit-mask-image:linear-gradient(118deg,#000 0 34%,rgba(0,0,0,.25) 41%,transparent 47%);
 mask-image:linear-gradient(118deg,#000 0 34%,rgba(0,0,0,.25) 41%,transparent 47%);
 -webkit-mask-size:300% 100%;mask-size:300% 100%;
 -webkit-mask-position:100% 0;mask-position:100% 0;
 animation:formIn 2.2s cubic-bezier(.5,0,.2,1) .2s forwards}
@keyframes formIn{to{-webkit-mask-position:0% 0;mask-position:0% 0}}
.glint{position:absolute;top:-12%;bottom:-12%;width:16%;pointer-events:none;z-index:3;
 background:radial-gradient(closest-side,rgba(255,255,255,.95),rgba(255,247,225,.55) 45%,transparent 72%);
 filter:blur(2px);opacity:0}
.forming .glint{animation:glide 2.3s cubic-bezier(.5,0,.2,1) .25s forwards}
@keyframes glide{0%{left:96%;opacity:0}12%{opacity:1}88%{opacity:1}100%{left:-14%;opacity:0}}
.spark{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;
 box-shadow:0 0 7px 2px rgba(230,208,150,.95);opacity:0;z-index:4;pointer-events:none}
.forming .spark{animation:twinkle 1.5s ease-out forwards}
.logoform.done img{-webkit-mask-image:none!important;mask-image:none!important}
@keyframes twinkle{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.3)}}

/* ===== nav ===== */
.nav{position:sticky;top:0;z-index:60;background:rgba(255,252,251,.96);
 backdrop-filter:blur(12px);border-bottom:1px solid var(--pale)}
.nav__in{max-width:1200px;margin:0 auto;padding:.8rem var(--g);display:flex;
 align-items:center;justify-content:space-between;gap:1.5rem}
.brand{display:flex;align-items:center;gap:.7rem;cursor:pointer}
.brand img{width:42px;height:auto;display:block}
.bn{font-family:var(--serif);font-size:1rem;letter-spacing:.28em;line-height:1.15;display:block}
.bt{font-family:var(--script);font-size:.88rem;color:var(--rose);line-height:1;display:block}
.menu{display:flex;align-items:center;gap:1.5rem;list-style:none;margin:0;padding:0}
.menu a:not(.btn),.menu button:not(.btn){background:none;border:0;padding:0 0 3px;cursor:pointer;font-family:var(--sans);
 font-size:.67rem;letter-spacing:.15em;text-transform:uppercase;color:#6C5257;
 border-bottom:1px solid transparent;transition:.3s}
.menu a:not(.btn):hover,.menu a:not(.btn)[aria-current="page"],.menu button:hover,.menu button[aria-current="true"]{color:var(--plum);border-color:var(--gold)}
.nav .btn{padding:.85em 1.9em;font-size:.66rem;letter-spacing:.18em}
.burger{display:none;background:none;border:0;cursor:pointer;padding:.4rem}
.burger span{display:block;width:22px;height:1px;background:var(--plum);margin:5px 0}
@media(max-width:1100px){.menu{display:none}.burger{display:block}
 .menu.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;
  align-items:flex-start;gap:1.1rem;background:var(--white);padding:1.4rem var(--g) 2rem;
  border-bottom:1px solid var(--pale)}}

[data-page]{display:none}
[data-page].on{display:block}

/* ===== hero ===== */
.hero{position:relative;overflow:hidden;background:var(--pale)}
.hero__ph{position:absolute;inset:0 0 0 36%;background:linear-gradient(150deg,#FDF1EF,var(--soft) 55%,var(--pink));
 animation:kb 30s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1.04)}to{transform:scale(1.14)}}
.hero__v{position:absolute;inset:0;background:linear-gradient(96deg,var(--white) 5%,rgba(255,252,251,.95) 33%,rgba(255,252,251,.4) 60%,rgba(255,252,251,0) 84%)}
.hero__in{position:relative;padding-block:clamp(3.5rem,9vw,7rem)}
.hero__col{max-width:35rem;display:grid;gap:1.35rem}
.hero .logoform{width:clamp(150px,17vw,210px);margin-bottom:.4rem}
.hero h1{font-size:clamp(2.7rem,7vw,4.6rem)}
.hero h1 i{display:block;font-style:italic;color:var(--rose)}
.hero .lede{max-width:27rem}
.acts{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.2rem}
.trust{font-size:.8rem;color:#6C5257;border-top:1px solid rgba(198,166,94,.45);padding-top:.9rem;max-width:27rem}
.band{border-block:1px solid var(--pale);background:var(--ivory)}
.band .wrap{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;flex-wrap:wrap;padding-block:1.4rem}
.band .s{font-family:var(--script);font-size:1.75rem;color:var(--deep)}
.band .l{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:#6C5257}

.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--pale);
 border-block:1px solid var(--pale);margin-top:clamp(2.5rem,6vw,4rem);text-align:left}
.pillar{background:var(--white);padding:clamp(2rem,4vw,3rem) clamp(1.2rem,3vw,2.4rem)}
.pillar .n{font-family:var(--script);font-size:1.5rem;color:var(--rose)}
.pillar h3{font-size:1.7rem;margin:.2rem 0 .6rem}
.pillar p{font-size:.94rem;color:#6C5257}
@media(max-width:840px){.pillars{grid-template-columns:1fr}}

/* ===== invitation ===== */
.inv{background:var(--deep);color:#fff;position:relative;overflow:hidden}
.inv__ph{position:absolute;inset:0 0 0 55%;background:linear-gradient(150deg,var(--rose),var(--deep));opacity:.45}
.inv__v{position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 46%,rgba(156,90,99,.74) 74%,rgba(156,90,99,.55))}
.inv__in{position:relative;padding-block:clamp(4rem,9vw,7rem)}
.inv .eyebrow{color:var(--goldlt)}
.inv .drawn::after{background:var(--goldlt)}
.card-inv{max-width:35rem;border:1px solid rgba(228,211,164,.45);padding:clamp(1.8rem,4vw,3rem);background:rgba(255,255,255,.06)}
.card-inv h2{font-size:clamp(2.3rem,5.4vw,3.5rem);margin-top:.8rem}
.card-inv .sub{font-family:var(--serif);font-style:italic;font-size:1.25rem;color:var(--pale);margin-top:.5rem}
.rule{width:52px;height:1px;background:var(--goldlt);margin:1.3rem 0}
.when{font-family:var(--serif);font-size:clamp(1.7rem,3.2vw,2.3rem)}
.where{font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--goldlt);margin-top:.4rem}
.card-inv p.body{margin-top:1.2rem;color:rgba(255,255,255,.88)}
.note{margin-top:1rem;font-size:.8rem;color:rgba(255,255,255,.65)}
.therm{margin-top:1.8rem;max-width:35rem;border-top:1px solid rgba(228,211,164,.4);padding-top:1.3rem}
.therm b{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--goldlt);font-weight:400}
.therm .amt{font-family:var(--serif);font-style:italic;font-size:1.25rem;line-height:1.5;margin-top:.5rem;max-width:24rem;color:rgba(255,255,255,.9)}
.therm .give{margin-top:1.1rem}
.therm .bar{height:2px;background:rgba(255,255,255,.25);margin-top:.8rem;position:relative}
.therm .bar i{position:absolute;inset:0 62% 0 0;background:var(--goldlt)}
.therm small{display:block;margin-top:.7rem;font-size:.72rem;color:rgba(255,255,255,.62)}

.split{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,6vw,5rem);align-items:center}
@media(max-width:880px){.split{grid-template-columns:1fr}}
.cap{font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:#6C5257;margin-top:.7rem}
.pull{font-family:var(--script);font-size:clamp(1.4rem,2.8vw,1.95rem);color:var(--deep);line-height:1.4}
.tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--pale);
 border:1px solid var(--pale);margin-top:2.4rem}
.tier{background:var(--white);padding:2.1rem 1.6rem}
.tier h3{font-size:1.42rem}
.tier p{font-size:.9rem;color:#6C5257;margin-top:.6rem}
.tier .amt{margin-top:1rem;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--deep)}
@media(max-width:900px){.tiers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tiers{grid-template-columns:1fr}}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-top:2.4rem}
.card{border:1px solid var(--pale);padding:2rem 1.5rem;display:flex;flex-direction:column;gap:.6rem;
 transition:border-color .45s,transform .55s cubic-bezier(.2,.7,.3,1),box-shadow .55s}
.card:hover{border-color:var(--rose);transform:translateY(-4px);box-shadow:0 24px 50px -34px rgba(156,90,99,.45)}
.card h3{font-size:1.4rem}
.card p{font-size:.9rem;color:#6C5257}
.card .go{margin-top:auto;padding-top:1rem;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--deep)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cards{grid-template-columns:1fr}}
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:2rem}
.strip .ph{aspect-ratio:3/4}
.strip .ph:nth-child(even){margin-top:34px}
.strip .ph:hover{transform:scale(1.015)}
@media(max-width:820px){.strip{grid-template-columns:repeat(2,1fr)}}
.logos{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--pale);
 border:1px solid var(--pale);margin-top:2.2rem}
.logo{background:var(--ivory);height:112px;display:grid;place-items:center;font-size:.58rem;
 letter-spacing:.22em;text-transform:uppercase;color:#6C5257;opacity:.7}
@media(max-width:820px){.logos{grid-template-columns:repeat(2,1fr)}}

/* ===== ribbon draw (our story) ===== */
.ribbonwrap{display:grid;place-items:center;padding-block:1rem}
.ribbonwrap svg{width:clamp(130px,15vw,190px);height:auto;overflow:visible}
#ribbonPath{fill:none;stroke:url(#rgrad);stroke-width:7;stroke-linecap:round;
 stroke-dasharray:640;stroke-dashoffset:640}
.ribbonwrap.seen #ribbonPath{animation:drawRibbon 3.4s cubic-bezier(.5,0,.25,1) forwards}
@keyframes drawRibbon{to{stroke-dashoffset:0}}
.ribbonwrap.seen .cart{opacity:1}
.cart{opacity:0;transition:opacity .3s}

/* ===== contact ===== */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5rem)}
@media(max-width:900px){.contact{grid-template-columns:1fr}}
.routes{margin-top:1.5rem;display:grid;gap:1px;background:var(--pale);border-block:1px solid var(--pale)}
.route{background:var(--white);display:flex;gap:1.3rem;align-items:baseline;padding-block:1rem}
.route b{flex:none;width:118px;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--deep);font-weight:400}
.route span{font-size:.92rem;color:#6C5257}
.form{background:var(--ivory);border:1px solid var(--pale);padding:clamp(1.6rem,3vw,2.5rem);
 display:grid;gap:1rem;align-content:start}
.form label{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:#6C5257;display:block;margin-bottom:.5rem}
.form input,.form textarea{width:100%;font-family:var(--sans);font-size:.95rem;font-weight:300;
 padding:.9em 1em;border:1px solid var(--pale);background:var(--white);color:var(--plum)}
.form textarea{min-height:110px;resize:vertical}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{padding:.6em 1.1em;border-radius:999px;border:1px solid var(--pale);background:var(--white);
 font-size:.78rem;color:#6C5257;cursor:pointer;transition:.3s;font-family:var(--sans)}
.chip:hover,.chip[aria-pressed="true"]{border-color:var(--rose);color:var(--plum);background:var(--pale)}
.form .btn{border:0;width:100%;text-align:center}
.form small{font-size:.76rem;color:#6C5257}

/* ===== legal pages ===== */
.legalpage{max-width:64ch}
.legalpage h3{font-size:1.35rem;margin-top:2rem}
.legalpage p{margin-top:.8rem;color:#6C5257}
.notice{border:1px solid var(--gold);background:var(--ivory);padding:1.1rem 1.3rem;
 font-size:.85rem;color:#6C5257;margin-top:1.5rem}

/* ===== footer ===== */
.foot{background:var(--ivory);border-top:1px solid var(--pale)}
.foot__up{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);
 padding-block:clamp(3.5rem,7vw,5rem) 2.6rem;align-items:center}
.foot img.mark{width:66px;height:auto;display:block}
.foot__name{font-family:var(--serif);font-size:1.3rem;letter-spacing:.28em;margin-top:.7rem}
.foot__tag{font-family:var(--script);font-size:1.45rem;color:var(--rose)}
.foot h4{font-family:var(--sans);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;
 color:var(--gold);margin:0 0 1rem;font-weight:400}
.foot p{font-size:.9rem;color:#6C5257}
.signup{display:flex;gap:.6rem;margin-top:1rem;flex-wrap:wrap}
.signup input{flex:1;min-width:190px;font-family:var(--sans);font-size:.9rem;font-weight:300;
 padding:.9em 1.1em;border:1px solid var(--pale);background:var(--white);color:var(--plum)}
.foot__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.5rem,4vw,3.5rem);padding-bottom:2.8rem}
.foot__cols ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem;font-size:.9rem;color:#6C5257}
.foot__cols button,.foot__cols a{background:none;border:0;padding:0;cursor:pointer;font-family:var(--sans);
 font-weight:300;font-size:.9rem;color:#6C5257;text-align:left}
.foot__cols button:hover,.foot__cols a:hover{color:var(--deep)}
.foot__legal{border-top:1px solid var(--pale);padding-block:1.5rem 2.5rem;display:grid;
 grid-template-columns:1.6fr 1fr;gap:2rem;font-size:.75rem;color:#6C5257}
.foot__legal ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.foot__legal button{background:none;border:0;padding:0;cursor:pointer;font-family:var(--sans);
 font-size:.75rem;color:#6C5257;text-align:left;font-weight:300}
.foot__legal button:hover{color:var(--deep);text-decoration:underline}
@media(max-width:900px){.foot__up,.foot__legal{grid-template-columns:1fr}
 .foot__cols{grid-template-columns:repeat(2,1fr)}}

@media(prefers-reduced-motion:reduce){
 #curtain{display:none}
 .rise,.rv::after,.hero__ph,.silk,.forming img,.glint,.spark{animation:none!important;transition:none!important}
 .rise{opacity:1;transform:none}
 .rv::after{display:none}
 .forming img{-webkit-mask-image:none;mask-image:none}
 .drawn::after{transform:scaleX(1)}
 
}
/* hero: text left, logo right */
.hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr);
 gap:clamp(1.2rem,4vw,4rem);align-items:center}
.hero__grid .logoform{width:100%;max-width:320px;margin:0 auto;justify-self:end}
@media(max-width:560px){.hero__grid{grid-template-columns:1fr}
 .hero__grid .logoform{max-width:210px;margin-top:1.4rem;justify-self:center}}

/* satin ribbon mark */
.ribbonmark{display:flex;justify-content:center;padding-bottom:.6rem}
.ribbonmark svg{width:74px;height:auto;display:block;overflow:visible;
 filter:drop-shadow(0 6px 12px rgba(156,90,99,.18))}

/* looks with video */
.look video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.look .lbl{z-index:2}
.look .story{z-index:3}
.photo{width:100%;height:100%;object-fit:cover;display:block}
.ph.filled{background:none;padding:0}
.ph.filled span{display:none}

/* press clippings */
.clips{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-top:2.2rem;text-align:left}
.clip{display:block;margin:0;border:1px solid var(--pale);background:var(--white);
 padding:1rem 1rem 1.2rem;color:inherit;text-decoration:none;
 transition:border-color .45s,transform .55s cubic-bezier(.2,.7,.3,1),box-shadow .55s}
.clip:hover{border-color:var(--rose);transform:translateY(-4px);
 box-shadow:0 24px 50px -34px rgba(156,90,99,.45)}
.clipimg{aspect-ratio:4/3;overflow:hidden;background:var(--ivory);display:block}
.clipimg img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.clipmeta{display:grid;gap:.32rem;margin-top:.9rem}
.clip b{font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:400}
.clip span{font-family:var(--serif);font-size:1.12rem;line-height:1.3;color:var(--plum)}
.clip i{font-size:.76rem;color:#6C5257;font-style:normal}
.clip em{font-style:normal;margin-top:.35rem;font-size:.62rem;letter-spacing:.2em;
 text-transform:uppercase;color:var(--deep)}
.clip:hover em{text-decoration:underline}
@media(max-width:760px){.clips{grid-template-columns:1fr}}

/* founder media pair */
.medpair{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.medpair figure{margin:0}
.medpair .cap{margin-top:.55rem;font-size:.58rem;letter-spacing:.14em}
@media(max-width:620px){.medpair{grid-template-columns:1fr 1fr}}
@media(max-width:380px){.medpair{grid-template-columns:1fr}}

/* collection */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem}
@media(max-width:900px){.grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid3{grid-template-columns:1fr}}
.look{position:relative;aspect-ratio:3/4;overflow:hidden;cursor:pointer;border:1px solid var(--pale);
 background:linear-gradient(150deg,var(--pale),var(--soft) 55%,var(--pink))}
.look .lbl{position:absolute;inset:auto 0 0 0;padding:1rem 1.1rem;display:flex;
 justify-content:space-between;align-items:baseline;gap:.6rem;
 background:linear-gradient(0deg,rgba(255,252,251,.94),rgba(255,252,251,0));
 font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--deep)}
.look .story{position:absolute;inset:0;background:rgba(156,90,99,.94);color:#fff;
 padding:clamp(1.2rem,2.5vw,2rem);display:flex;flex-direction:column;justify-content:center;gap:.7rem;
 opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease}
.look[aria-expanded="true"] .story,.look:hover .story{opacity:1;transform:none}
.look .story h3{font-size:1.35rem}
.look .story p{font-size:.82rem;line-height:1.65;color:rgba(255,255,255,.9)}
.look .story p b{display:block;font-weight:400;font-size:.62rem;letter-spacing:.16em;
 text-transform:uppercase;color:var(--goldlt)}
.look .story{gap:.55rem;overflow-y:auto}
.look .story em{font-family:var(--script);font-size:1.2rem;font-style:normal;color:var(--goldlt)}

/* story flow */
.flow{max-width:68ch}
.flow h3{font-size:clamp(1.4rem,2.6vw,1.85rem);margin-top:2.6rem}
.flow p{margin-top:.9rem;color:#6C5257}
.standfirst{font-family:var(--serif);font-size:clamp(1.2rem,2.3vw,1.5rem);line-height:1.55;color:var(--plum)}
.defs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--pale);
 border:1px solid var(--pale);margin-top:1.6rem}
.def{background:var(--white);padding:1.6rem 1.4rem}
.def b{display:block;font-family:var(--script);font-size:1.5rem;color:var(--deep);font-weight:400}
.def p{margin-top:.5rem;font-size:.92rem;color:#6C5257}
@media(max-width:640px){.defs{grid-template-columns:1fr}}
.stat3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--pale);
 border:1px solid var(--pale);margin-top:1.8rem}
.st{background:var(--white);padding:1.6rem 1.3rem}
.st b{display:block;font-family:var(--serif);font-size:1.9rem;color:var(--deep)}
.st span{display:block;margin-top:.4rem;font-size:.78rem;color:#6C5257}
@media(max-width:700px){.stat3{grid-template-columns:1fr}}
.closing{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.4;
 text-align:center;margin-top:3rem;color:var(--plum)}
.closing em{display:block;font-family:var(--script);font-style:normal;color:var(--deep);
 font-size:1.3em;margin-top:.4rem}
.menu a{text-decoration:none;display:inline-block}
.menu a.btn{border-radius:999px}
.menu a,.menu button{white-space:nowrap}
@media(max-width:1300px){.menu{gap:1.05rem}.nav .btn{padding:.8em 1.5em}}
.look video,.medpair video,.photo{background:var(--pale)}
video[data-src]{opacity:0;transition:opacity .5s}
video.vready{opacity:1}
.gbslot{margin-top:1rem}
.gbslot givebutter-widget{display:block}
.form .err{color:#9C5A63;font-size:.82rem;margin-top:.4rem}
.form .ok{background:var(--ivory);border-left:2px solid var(--gold);padding:1rem 1.2rem;font-size:.92rem}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--plum);color:#fff;padding:.7rem 1.1rem;z-index:300}
.skip-link:focus{left:0}
