/* Local fonts: their SIL Open Font Licences are included in assets/fonts. */
@font-face{font-family:Fraunces;src:url('assets/fonts/fraunces-latin.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:Fraunces;src:url('assets/fonts/fraunces-italic-latin.woff2') format('woff2');font-style:italic;font-weight:400 600;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html{scrollbar-gutter:stable}
html:has(.setup-dialog[open]){overflow:hidden}
#main:focus{outline:none}
.setup-dialog{overscroll-behavior:contain}
.saved-item>div{min-width:0;overflow-wrap:anywhere}
.hero h1,h2,.product-details h1{font-family:Fraunces,Georgia,serif;font-weight:450;letter-spacing:-.047em;line-height:1.1}
.hero h1{font-size:clamp(3.5rem,5.6vw,5.25rem);line-height:1.03;letter-spacing:-.055em}
.hero h1 em,.story h2 em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.05em}
.brand{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.07em}
.card-title-row h3,.detail-item h3{font-weight:600;letter-spacing:-.035em}
.hero-description{line-height:1.8}.eyebrow{font-weight:650}.dialog-header h2{font-size:1.875rem}
.product-details h1{font-size:clamp(2.5rem,3.8vw,3.25rem);overflow-wrap:break-word}
.card-copy,.product-details,.product-gallery{min-width:0}
@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:clamp(3rem,6.2vw,4.2rem)}.product-details h1{font-size:2.6rem}}
@media(max-width:700px){
 .hero h1{font-size:clamp(2.75rem,12vw,4rem)}
 .hero-copy{padding-bottom:26px}.hero-image{z-index:0}
 .hero-image-note{z-index:1}.product-details h1{font-size:clamp(2.2rem,9.5vw,2.8rem)}
 .dialog-header h2{font-size:1.75rem}.story h2{font-size:2.5rem}
 .saved-item{grid-template-columns:64px minmax(0,1fr) 44px;gap:10px}.saved-image{width:64px}
}
@media(max-width:350px){
 .hero h1{font-size:2.7rem}.hero .button{min-width:0;width:100%;padding-inline:12px;gap:10px}
 .product-card>.save-button{left:calc(44% - 47px);right:auto;top:3px}.card-tag{display:none}
 .related .product-grid{grid-template-columns:1fr}.related .product-card:last-child{display:grid}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
