:root{--ink:#231a22;--rust:#c84f2c;--orange:#ec7a30;--plum:#602a55;--gold:#d6a03a;--cream:#fff8ef;--paper:#fff;--line:#e6ddd6;--muted:#71646b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.45 "DM Sans",sans-serif}a{color:inherit}.site-header{height:68px;padding:0 max(22px,calc((100vw - 1160px)/2));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:700;text-decoration:none}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font:700 20px "Fraunces",serif}.site-header nav{display:flex;gap:25px}.site-header nav a{text-decoration:none;font-size:.9rem;font-weight:600}.site-header nav a:hover{color:var(--rust)}main{max-width:1160px;margin:auto;padding:28px 22px 75px}.banner{display:grid;grid-template-columns:46% 54%;min-height:340px;overflow:hidden;background:var(--rust);border-radius:8px}.banner-copy{padding:50px;color:white;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.banner-copy p{margin:0 0 10px;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700}.banner-copy h1{font:700 clamp(3rem,6vw,5.2rem)/.95 "Fraunces",serif;letter-spacing:-.04em;margin:0 0 28px}.banner-copy a{background:#fff;color:var(--ink);border-radius:999px;padding:13px 24px;text-decoration:none;font-weight:700}.banner img{width:100%;height:100%;min-height:340px;object-fit:cover}.shop-section{padding:52px 0}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.section-title h2,.price-section h2{font:700 clamp(2rem,4vw,3rem)/1 "Fraunces",serif;margin:0}.section-title>a{font-weight:700}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.product-grid.compact{grid-template-columns:repeat(4,1fr)}.product-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;min-width:0;outline:none;box-shadow:0 5px 18px rgba(40,25,35,.05)}.dummy-image{aspect-ratio:1/1;display:grid;place-items:center;color:rgba(255,255,255,.88);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.shade-rust{background:linear-gradient(145deg,#d96a45,#a93d26)}.shade-cream{background:linear-gradient(145deg,#e9ded2,#c8b8a8);color:#62545b}.shade-plum{background:linear-gradient(145deg,#7d3c70,#40213c)}.shade-gold{background:linear-gradient(145deg,#e8bd5a,#bd7d12)}.shade-orange{background:linear-gradient(145deg,#f39b55,#d55b25)}.shade-ink{background:linear-gradient(145deg,#40313d,#191217)}.product-label{padding:14px}.product-label h3{font-size:.96rem;margin:0}.product-label p{font-size:.78rem;color:var(--muted);margin:3px 0 0}.product-details{position:absolute;inset:0;background:rgba(35,26,34,.95);color:#fff;padding:24px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;opacity:0;transform:translateY(10px);transition:opacity .22s ease,transform .22s ease}.product-details>span{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:700;color:#ffc27e}.product-details h3{font:700 1.6rem/1.05 "Fraunces",serif;margin:10px 0}.product-details p{font-size:.86rem;color:#e7dfe4;margin:0 0 18px}.product-details a{background:var(--rust);color:#fff;padding:9px 15px;border-radius:999px;text-decoration:none;font-size:.8rem;font-weight:700}.product-card:hover .product-details,.product-card:focus .product-details,.product-card:focus-within .product-details,.product-card.is-open .product-details{opacity:1;transform:none}.interaction-note{text-align:right;color:var(--muted);font-size:.78rem;margin:12px 0 0}.category-strip{background:var(--plum);color:#fff;padding:36px 42px;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.category-strip p{margin:0 0 7px;color:#ffc27e;text-transform:uppercase;font-size:.72rem;letter-spacing:.12em;font-weight:700}.category-strip h2{font:700 clamp(1.8rem,4vw,3rem)/1.05 "Fraunces",serif;margin:0;max-width:680px}.category-strip>a{background:#fff;color:var(--plum);padding:12px 20px;border-radius:999px;text-decoration:none;font-weight:700;white-space:nowrap}.price-section{background:var(--cream);border:1px solid var(--line);border-radius:8px;padding:36px;margin-top:20px}.price-section div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.price-section a{background:#fff;border:1px solid var(--line);border-radius:7px;padding:14px;text-align:center;text-decoration:none;font-weight:700}footer{background:var(--cream);border-top:1px solid var(--line);padding:45px max(22px,calc((100vw - 1116px)/2)) 28px;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}footer>div>strong{font:700 1.35rem "Fraunces",serif}.disclosure{font-size:.82rem;color:var(--muted)}.disclosure strong{font:700 .82rem "DM Sans",sans-serif;color:var(--ink)}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:.78rem}
@media(max-width:820px){.site-header nav{display:none}.banner{grid-template-columns:1fr}.banner-copy{padding:38px 28px}.banner img{height:280px;min-height:0}.product-grid{grid-template-columns:repeat(2,1fr)}.product-grid.compact{grid-template-columns:repeat(2,1fr)}.category-strip{align-items:flex-start;flex-direction:column;gap:25px}.price-section div{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr;gap:20px}}
@media(max-width:520px){main{padding-left:14px;padding-right:14px}.banner-copy h1{font-size:3.1rem}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-label{padding:10px}.product-label h3{font-size:.84rem}.product-details{padding:14px}.product-details h3{font-size:1.25rem}.product-details p{font-size:.76rem}.category-strip{padding:28px 22px}.price-section{padding:28px 18px}.price-section div{grid-template-columns:1fr 1fr}}
@media(hover:none){.product-details{opacity:0}.product-card.is-open .product-details,.product-card:focus-within .product-details{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-details{transition:none}}
.product-image-link{position:relative;display:block;color:inherit;text-decoration:none;outline-offset:-4px}.detail-action{background:var(--rust);color:#fff;padding:9px 15px;border-radius:999px;font-size:.8rem;font-weight:700}.product-image-link:focus .product-details{opacity:1;transform:none}
@media(hover:none){.product-image-link .product-details{position:static;opacity:1;transform:none;padding:14px;background:var(--ink)}.product-image-link .product-details p{display:none}.product-image-link .product-details h3{font-size:1rem;margin:5px 0 10px}}
.banner{min-height:245px;grid-template-columns:42% 58%}.banner-copy{padding:34px 42px}.banner-copy h1{font-size:clamp(2.6rem,4.5vw,4rem);margin-bottom:22px}.banner img{height:245px;min-height:245px}
@media(max-width:820px){.banner{grid-template-columns:44% 56%;min-height:220px}.banner-copy{padding:26px 22px}.banner-copy h1{font-size:clamp(2rem,6vw,3rem)}.banner img{height:220px;min-height:220px}}
@media(max-width:560px){.banner{grid-template-columns:1fr}.banner img{height:210px;min-height:210px}.banner-copy{padding:30px 24px}}
.product-grid.eight-products{grid-template-columns:repeat(4,1fr)}.section-tint{background:var(--cream);margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.section-tint .product-card{background:#fff}
@media(max-width:820px){.product-grid.eight-products{grid-template-columns:repeat(2,1fr)}}
.real-product-image{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff}
.real-product-image[src="terror_dog.png"]{object-fit:cover;object-position:center center}
@media(hover:none){.product-image-link .product-details{height:144px;min-height:144px;justify-content:flex-start;overflow:hidden}.product-image-link .product-details h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;line-height:1.05;height:3.15em;min-height:3.15em;max-height:3.15em;flex:none}.product-image-link .detail-action{position:relative;z-index:1;margin-top:auto;align-self:flex-start;flex:none}}
.banner-copy h1{margin-bottom:0}

/* Keep every category label aligned in the bottom-left corner of its tile. */
.product-card{display:flex;flex-direction:column;height:100%}
.product-image-link{flex:0 0 auto}
.product-label{display:flex;flex:1;flex-direction:column;min-height:94px}
.product-label p{margin:auto 0 0;padding-top:8px}
@media(max-width:520px){.product-label{min-height:96px}}

/* A quiet seasonal backdrop for wide desktop screens. */
body{background-color:#fbf4ea}
@media(min-width:1500px){
  body{
    background-image:url("autumn-leaves.svg"),url("autumn-leaves.svg");
    background-position:left 86px,right 330px;
    background-repeat:repeat-y;
    background-size:180px 620px;
  }
}
@media(max-width:820px){body{background-color:#fff;background-image:none}}

/* Touchscreens do not support hover, so remove the desktop-only guidance and its gap. */
@media(max-width:820px){
  .interaction-note{display:none}
  main{padding-bottom:28px}
}
