body{background:radial-gradient(circle at 5% 12%,color-mix(in srgb,var(--rust) 6%,transparent),transparent 24%),var(--paper);color:var(--ink)}
header{background:color-mix(in srgb,var(--header-bg,var(--paper)) 94%,transparent);box-shadow:0 12px 35px color-mix(in srgb,var(--ink) 8%,transparent);backdrop-filter:blur(16px)}
header nav a:after{background:var(--rust)}
.notice{background:linear-gradient(100deg,var(--olive),color-mix(in srgb,var(--olive) 68%,var(--rust)),var(--olive));color:var(--notice-text,#fffdf8)}
.button{background:linear-gradient(135deg,var(--button-bg,var(--ink)),color-mix(in srgb,var(--button-bg,var(--ink)) 62%,var(--rust)));border-color:var(--button-bg,var(--ink));color:var(--button-text,#fff);box-shadow:0 10px 24px color-mix(in srgb,var(--button-bg,var(--ink)) 22%,transparent)}
.button:hover{background:linear-gradient(135deg,var(--rust),color-mix(in srgb,var(--rust) 72%,var(--button-bg,var(--ink))));border-color:var(--rust);color:var(--button-text,#fff);box-shadow:0 14px 30px color-mix(in srgb,var(--rust) 30%,transparent)}
.newsletter{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--paper) 55%,transparent),transparent 28%),radial-gradient(circle at 90% 80%,color-mix(in srgb,var(--rust) 26%,transparent),transparent 34%),var(--newsletter-bg,#f6b5c7)}
footer,.copyright{background:var(--footer-bg,var(--paper));color:var(--footer-text,var(--muted))}
footer p,footer a{color:var(--footer-text,var(--muted))}
.product-image,.detail-image{background:linear-gradient(145deg,var(--sand),color-mix(in srgb,var(--sand) 78%,var(--paper)))}
.product{transition:transform .3s ease}.product:hover{transform:translateY(-6px)}.product-title h2 a:hover,.product-title h3 a:hover{color:var(--rust)}
.category{box-shadow:0 18px 45px color-mix(in srgb,var(--ink) 12%,transparent)}.category:hover{box-shadow:0 24px 55px color-mix(in srgb,var(--rust) 23%,transparent)}
.story{background:linear-gradient(135deg,var(--sand),color-mix(in srgb,var(--sand) 64%,var(--paper)));box-shadow:0 28px 70px color-mix(in srgb,var(--rust) 12%,transparent)}
.line-link{border-color:var(--rust)}.line-link:hover{color:var(--rust)}
.eyebrow{color:var(--rust)}
img{max-width:100%;image-orientation:from-image}
@media(prefers-reduced-motion:reduce){.product,.category,.button{transition:none!important}.product:hover,.category:hover,.button:hover{transform:none!important}}
.category,.hero-photo,.story-photo{background-repeat:no-repeat;background-position:center;background-size:cover}
.story{width:min(1160px,calc(100% - 48px));margin:90px auto;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);overflow:hidden}
.story-photo{min-height:0;max-height:520px;aspect-ratio:4/5;align-self:center;margin:24px 0 24px 24px;overflow:hidden;background-color:var(--sand)}
.story-photo img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.story-copy{padding:clamp(38px,5vw,72px)}
@media(max-width:900px){.story{width:min(720px,calc(100% - 40px));margin:60px auto;grid-template-columns:1fr}.story-photo{max-height:none;aspect-ratio:16/10;margin:20px 20px 0}.story-photo img{min-height:0}.story-copy{padding:42px 36px 48px}}
@media(max-width:620px){.story{width:calc(100% - 28px);margin:42px auto}.story-photo{aspect-ratio:4/3;margin:14px 14px 0}.story-copy{padding:34px 24px 40px}}
