:root{--bone:#EDE7DB;--ink:#1F1B17;--mute:#7D7468;--rule:#CFC6B7;--wine:#5B2A2E;--paper:#F6F2EA}
*{box-sizing:border-box}html{font-size:17px}
body{margin:0;background:var(--bone);color:var(--ink);font-family:Manrope,system-ui,sans-serif;font-weight:400;line-height:1.6}
a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule)}a:hover,a:focus-visible{border-color:var(--ink)}
:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
h1,h2,h3,.wordmark,.stamp{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;letter-spacing:-.01em;line-height:1.1;margin:0}
h1{font-size:clamp(2.4rem,6vw,4.6rem)}h2{font-size:clamp(1.7rem,3.2vw,2.5rem);margin-bottom:.6rem}h3{font-size:1.5rem}
p{max-width:62ch;margin:0 0 1rem}
.site-head{display:flex;justify-content:space-between;align-items:baseline;gap:2rem;padding:1.6rem clamp(1.2rem,4vw,3.5rem);flex-wrap:wrap}
.wordmark{font-size:1.6rem;border:0}
nav a{border:0;margin-left:1.4rem;font-size:.92rem;color:var(--mute)}nav a[aria-current]{color:var(--ink)}
main{padding:0 clamp(1.2rem,4vw,3.5rem) 4rem}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;padding:4rem 0 3rem}
.stamp{font-size:clamp(3.4rem,11vw,9rem);line-height:.95;font-style:italic;max-width:none}
.stamp small{display:block;font-style:normal;font-size:.28em;color:var(--mute);margin-top:.8rem;font-family:Manrope,sans-serif;letter-spacing:0}
.hero .lede{font-size:1.15rem}
figure{margin:0}figure img{width:100%;height:auto;display:block;background:var(--rule)}
figcaption{font-size:.85rem;color:var(--mute);margin-top:.6rem;max-width:62ch}
.portrait img{aspect-ratio:4/5;object-fit:cover}
section{padding:3rem 0;border-top:1px solid var(--rule)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1.5rem}
.series{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:2.5rem 2rem}
.series h3{margin-bottom:.4rem}.series p{font-size:.95rem;color:var(--mute)}
.list{list-style:none;padding:0;margin:0}.list li{padding:1rem 0;border-top:1px solid var(--rule)}.list li:first-child{border:0}
.list .who{color:var(--mute);font-size:.9rem;display:block}
dl{display:grid;grid-template-columns:max-content 1fr;gap:.5rem 2rem;margin:0}dt{color:var(--mute)}dd{margin:0}
.brands{font-family:"Cormorant Garamond",serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.35;max-width:none}
.brands span{white-space:nowrap}
.lede{font-size:1.2rem;max-width:56ch}
.site-foot{padding:3rem clamp(1.2rem,4vw,3.5rem);border-top:1px solid var(--rule);color:var(--mute);font-size:.9rem}
.site-foot .canon{color:var(--ink);max-width:70ch}.site-foot .links a{margin-right:1.4rem}
.small{font-size:.8rem}
.faq details{border-top:1px solid var(--rule);padding:1rem 0}.faq summary{cursor:pointer;font-family:"Cormorant Garamond",serif;font-size:1.4rem}
.faq details p{margin-top:.8rem}
pre{background:var(--paper);padding:1.2rem;overflow:auto;font-size:.8rem;border:1px solid var(--rule)}
.tags{color:var(--mute);font-size:.9rem}
.cta{display:inline-block;border:1px solid var(--ink);padding:.7rem 1.2rem;margin-top:.5rem}
.note{background:var(--paper);border-left:3px solid var(--wine);padding:1rem 1.2rem;font-size:.92rem;max-width:70ch}
@media(max-width:800px){.hero,.grid2,.grid3{grid-template-columns:1fr}.stamp{font-size:clamp(3.2rem,16vw,5.5rem)}nav a{margin:0 1rem 0 0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
