:root{--paper:#f5f1e9;--plum:#513341;--ink:#342e2c;--muted:#746b65;--olive:#777b60}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--plum);outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;background:var(--paper);padding:16px;z-index:9}.skip:focus{top:10px}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 36%,#dfdccb77,transparent 50%);z-index:-1}header{display:flex;align-items:center;justify-content:space-between;padding:32px 5.5vw;gap:24px}.logo{width:170px;height:auto;display:block}.opening{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;letter-spacing:.04em}.opening i{width:6px;height:6px;border-radius:50%;background:var(--olive);box-shadow:0 0 0 5px #777b6010}.header-link{font-size:13px}.header-link span{padding-left:14px}.intro{max-width:1500px;margin:auto;padding:30px 8vw 70px;display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:center;min-height:calc(100svh - 200px)}.eyebrow{font-size:10px;letter-spacing:.23em;color:var(--olive);margin:0 0 25px}h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(70px,7.9vw,125px);font-weight:400;line-height:.94;letter-spacing:-.035em;margin:0 0 32px}h1 em{color:var(--plum);font-weight:400}.description{font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:27px}.cta{display:inline-flex;align-items:center;gap:30px;background:var(--plum);color:#fff;padding:18px 23px;font-size:12px;transition:background .25s,transform .25s}.cta:hover{background:#6a4656;transform:translateY(-3px)}.cta span{font-size:20px}.aside{font-size:11px;color:var(--muted);margin-top:16px}.showcase{position:relative;max-width:490px;width:100%;justify-self:end;padding-top:14px}.photo-stack{position:relative;perspective:1000px}.back-card{position:absolute;inset:12px -9px -8px 9px;background:#dfd6c8;transform:rotate(5deg);border:1px solid #cdc4b4}.photo{margin:0;position:relative;overflow:hidden;aspect-ratio:4/5;background:#e8dfd2;transform:rotate(var(--photo-angle,-3deg));box-shadow:0 25px 60px #48392a16;transition:none}.photo img{height:100%;width:100%;object-fit:cover;display:block;transition:opacity .22s,transform 1s}.photo:hover img{transform:scale(1.035)}.photo-shade{position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#211a1655);pointer-events:none}figcaption{position:absolute;bottom:23px;left:25px;right:25px;color:white;display:flex;align-items:end;justify-content:space-between;gap:16px}figcaption span:first-child{font-family:'Instrument Serif',Georgia,serif;font-size:30px}figcaption span:nth-child(2){font-size:9px;letter-spacing:.04em}.sprig{position:absolute;right:-50px;bottom:10px;width:100px;height:200px;color:var(--olive);filter:drop-shadow(0 2px 0 var(--paper));pointer-events:none;stroke-dasharray:600;stroke-dashoffset:600;animation:draw 3s .4s forwards}.orbit{position:absolute;right:-30px;top:-34px;width:130px;height:130px;border:1px solid #777b6033;border-radius:50%;display:grid;place-items:center;z-index:2;background:#f5f1e9ed;transform:rotate(12deg)}.orbit span{max-width:90px;text-align:center;font-size:9px;line-height:2.1;letter-spacing:.17em;color:var(--olive)}.selector{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:34px}.selector>span{font-size:11px;color:var(--muted)}.selector>div{display:flex;gap:10px}.swatch{width:43px;height:43px;padding:3px;border:1px solid transparent;background:transparent;border-radius:50%;cursor:pointer;transition:transform .25s,border-color .25s}.swatch img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.swatch.active{border-color:var(--plum)}.swatch:hover{transform:translateY(-3px)}footer{margin:0 5.5vw;padding:23px 0;border-top:1px solid #746b6526;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}footer p{margin:0}footer p span{color:var(--ink)}footer a{border-bottom:1px solid #746b6555;padding-bottom:4px}footer button{border:0;background:transparent;font-size:10px;cursor:pointer;padding:10px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.copy>*{animation:rise 1s both}.copy>:nth-child(2){animation-delay:.1s}.copy>:nth-child(3){animation-delay:.2s}.copy>:nth-child(4){animation-delay:.3s}.copy>:nth-child(5){animation-delay:.4s}.showcase{animation:rise 1.4s .15s both}.back-card{animation:sway 9s 1.5s ease-in-out infinite alternate}@keyframes rise{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes sway{to{transform:rotate(2deg)}}body.paused *,body.paused *::before{animation-play-state:paused!important}body.paused .photo{transform:rotate(var(--photo-angle,-3deg))!important}body.paused .photo img{transform:none!important}@media(min-width:1600px){.intro{padding-top:60px;padding-bottom:90px}}@media(max-width:900px){header{padding:25px 6vw}.opening{display:none}.intro{gap:7vw;padding:35px 7vw 65px}h1{font-size:80px}.description br{display:none}.orbit{width:100px;height:100px;right:-10px}.sprig{right:-25px;width:75px}.selector{flex-wrap:wrap}figcaption span:nth-child(2){display:none}}@media(max-width:650px){header{padding:24px 7vw}.logo{width:140px}.intro{grid-template-columns:1fr;padding:30px 8vw 45px;gap:60px}.copy{max-width:440px}h1{font-size:clamp(68px,16vw,100px);margin-bottom:24px}.description{font-size:14px}.eyebrow{font-size:9px;margin-bottom:20px}.showcase{max-width:420px;justify-self:center;width:92%}.orbit{top:-25px;right:-20px}.selector{margin-top:30px}.selector>span{font-size:10px}.cta{min-height:52px}.aside{line-height:1.6}.sprig{right:-34px}footer{margin:0 7vw;flex-wrap:wrap;justify-content:flex-start;gap:14px;padding:25px 0}footer p{width:100%}footer button{margin-left:auto}.swatch{width:44px;height:44px}}@media(prefers-reduced-motion:reduce){*,*::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sprig{stroke-dashoffset:0}.photo:hover img{transform:none}}
/* Requested accents: brief light sweep, followed by a long quiet interval. */
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .shimmer-text{--shimmer-base:var(--ink);background-image:linear-gradient(110deg,var(--shimmer-base) 40%,#aa9590 49%,var(--shimmer-base) 58%);background-size:300% 100%;background-position:150% 0;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:headline-shimmer 6s 1.5s cubic-bezier(.4,0,.2,1) infinite}
 h1 em .shimmer-text{--shimmer-base:var(--plum)}
}
@keyframes headline-shimmer{0%{background-position:150% 0}25%,100%{background-position:-50% 0}}
.opening i{position:relative;flex-shrink:0}
.opening i::after{content:'';position:absolute;inset:-5px;border:1px solid var(--olive);border-radius:50%;opacity:0;animation:opening-pulse 3s cubic-bezier(.22,1,.36,1) infinite}
@keyframes opening-pulse{0%{transform:scale(.45);opacity:0}15%{opacity:.35}70%,100%{transform:scale(1.65);opacity:0}}
body.paused .shimmer-text{animation:none;background-image:none;color:var(--shimmer-base);-webkit-text-fill-color:var(--shimmer-base)}
body.paused .opening i::after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){.shimmer-text{animation:none!important;background-image:none;color:var(--shimmer-base);-webkit-text-fill-color:var(--shimmer-base)}.opening i::after{animation:none!important;opacity:0}}
/* Single-screen layout: size the content to the viewport rather than clipping a long page. */
html,body{height:100%;overflow:hidden}
body{height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
header{padding:clamp(14px,3svh,28px) 5.5vw}
main{min-height:0}
.intro{height:100%;min-height:0;padding:12px 8vw 22px;gap:6vw}
h1{font-size:clamp(54px,10.5svh,112px);margin-bottom:clamp(14px,3svh,28px)}
.eyebrow{margin-bottom:clamp(12px,2.4svh,24px)}
.description{margin-bottom:20px}
.showcase{width:min(100%,calc((100svh - 245px)*.8));max-width:490px;padding-top:0}
.selector{margin-top:20px}
footer{padding:12px 0}
@media(max-height:700px) and (min-width:651px){header{padding-top:12px;padding-bottom:12px}.logo{width:140px}.description{font-size:12px;line-height:1.65;margin-bottom:15px}.aside{font-size:10px}.cta{padding:12px 18px}.showcase{width:min(100%,calc((100svh - 190px)*.8))}.selector{margin-top:14px}h1{font-size:10svh;margin-bottom:16px}.eyebrow{margin-bottom:12px}footer{padding:7px 0}}
@media(max-width:650px){header{padding:12px 7vw}.logo{width:112px}.header-link{font-size:11px}.intro{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;gap:12px;padding:5px 8vw 14px}.copy{width:100%;max-width:none}h1{font-size:clamp(34px,6svh,54px);margin-bottom:12px;line-height:1}.eyebrow{font-size:8px;margin-bottom:10px}.description{font-size:11px;line-height:1.55;margin:0 0 12px;max-width:42ch}.description br{display:none}.cta{min-height:38px;padding:10px 16px;font-size:11px}.aside{display:none}.showcase{height:100%;width:auto;max-width:100%;padding:0;display:flex;flex-direction:column;align-items:center;justify-self:center;min-height:0}.photo-stack{height:calc(100% - 48px);width:auto;aspect-ratio:4/5;min-height:0}.photo{height:100%;width:100%;aspect-ratio:auto}.selector{height:44px;flex-shrink:0;margin-top:8px;gap:12px;flex-wrap:nowrap}.selector>span{display:none}.swatch{width:36px;height:36px}.sprig{height:120px;width:60px;right:-23px}.photo figcaption{bottom:12px;left:15px}.photo figcaption span:first-child{font-size:22px}footer{margin:0 7vw;padding:8px 0;gap:5px 12px;font-size:8px}footer p{width:auto;margin:0;flex:1}footer a{font-size:8px}footer button{font-size:8px;padding:5px;margin-left:0}}
@media(max-width:650px) and (max-height:700px){h1{font-size:5.8svh;margin-bottom:8px}.description{font-size:10px;margin-bottom:8px}.eyebrow{margin-bottom:6px}.intro{gap:8px}.logo{width:95px}header{padding-top:9px;padding-bottom:9px}footer p{display:none}}
.mobile-title,.mobile-cta{display:none}
@media(max-width:650px){
 body{height:100svh}
 header{padding:16px 24px 8px;min-height:65px}.logo{width:122px}.header-link{font-size:12px}.header-link span{display:none}
 .intro{padding:12px 26px 10px;grid-template-rows:auto minmax(0,1fr) auto;gap:15px;align-items:center}
 .copy{text-align:center;max-width:none}.eyebrow{font-size:11px;letter-spacing:.02em;margin:0 0 12px;color:var(--muted)}
 .desktop-title{display:none}.mobile-title{display:inline}
 h1{font-size:clamp(32px,11vw,51px);line-height:1.08;letter-spacing:-.025em;margin:0;padding-bottom:4px}
 .copy .description,.copy .cta,.copy .aside{display:none}
 .showcase{height:100%;width:100%;max-width:none;min-height:0;align-items:center;justify-content:center}
 .photo-stack{height:calc(100% - 57px);max-height:410px;max-width:86%;width:auto;aspect-ratio:4/5;flex-shrink:1}
 .photo{width:100%;height:100%}.back-card{inset:6px -6px -5px 6px}.sprig{display:none}
 .photo figcaption{left:18px;bottom:18px}.photo figcaption span:first-child{font-size:25px}
 .selector{height:44px;margin-top:13px;gap:0}.selector>div{gap:16px}.swatch{width:42px;height:42px;padding:3px}
 .mobile-cta{display:flex;justify-content:center;justify-self:stretch;min-height:48px;font-size:13px;padding:13px 20px}
 footer{margin:0 26px;padding:6px 0 12px;border:0;justify-content:space-between;gap:10px;min-height:39px}
 footer p{display:none}footer a{font-size:10px;padding:4px 0;margin:0;border:0}footer button{font-size:10px;padding:6px 0;margin:0}
}
@media(max-width:650px) and (max-height:700px){header{padding:9px 24px 4px;min-height:48px}.logo{width:105px}.intro{padding-top:5px;gap:10px}.eyebrow{font-size:10px;margin-bottom:6px}h1{font-size:clamp(31px,9.7vw,40px)}.photo-stack{max-width:72%}.selector{margin-top:10px;height:36px}.swatch{height:36px;width:36px}.mobile-cta{min-height:42px;padding:10px 16px}footer{padding-bottom:8px;min-height:32px}}
