/* Homepage refinement; content and other pages remain unchanged. */
body:has(.hero) { --paper:#f7f5ef; --ink:#292d25; --muted:#727469; }
body:has(.hero) .announcement { height:36px; min-height:36px; font-size:10px; line-height:1; letter-spacing:2px; padding:0 20px; display:flex; align-items:center; justify-content:center; }
body:has(.hero) header { border-bottom:0; }
body:has(.hero) .hero-copy { padding:clamp(28px,5.5vw,88px) 6%!important; }
body:has(.hero) .hero-copy h1 { font-size:clamp(38px,5.5vw,78px)!important; font-weight:400; letter-spacing:-2.6px; line-height:1.08; margin:24px 0!important; }
body:has(.hero) .hero-copy .eyebrow { font-size:10px; letter-spacing:2px; }
body:has(.hero) .hero-copy>p { font-size:16px; line-height:1.75; margin-bottom:24px; }
body:has(.hero) .hero-copy .button { padding:18px 25px; min-width:205px; border:0; }
body:has(.hero) .values { height:36px; min-height:36px; padding:0 6%; font-size:12px; font-weight:500; letter-spacing:.15px; border-bottom:1px solid #e4e2d9; background:var(--paper); }
body:has(.hero) .values .star { font-size:15px; color:#959986; }
body:has(.hero) .collection { padding:76px 6% 82px; }
body:has(.hero) .collection .eyebrow { font-size:10px; letter-spacing:1.8px; color:#777d6c; }
body:has(.hero) .collection h2 { font-weight:400; font-size:clamp(28px,3.2vw,44px)!important; line-height:1.2!important; margin-top:18px; letter-spacing:-1.4px!important; }
body:has(.hero) .collection-bar { margin-top:25px; border-top:0; justify-content:flex-end; padding:0 0 25px; font-size:12px; }
body:has(.hero) .collection .products { gap:34px 20px!important; }
body:has(.hero) .product .product-image { background:#eeece5!important; border:1px solid #e9e6dc; }
body:has(.hero) .product .product-image img { mix-blend-mode:multiply!important; transition:transform .35s; }
body:has(.hero) .product:hover .product-image img { transform:scale(1.025); }
body:has(.hero) .product-tag { top:12px; left:12px; font-size:9px!important; letter-spacing:1px; background:#f7f5efdf; padding:6px 9px; }
body:has(.hero) .product h3 { font-size:15px; font-weight:500; min-height:44px; line-height:1.5; margin-top:18px; }
body:has(.hero) .product .product-amount { font-size:12px; margin:6px 0; }
body:has(.hero) .product .product-price { font-size:19px; margin:5px 0 18px; letter-spacing:-.4px; }
body:has(.hero) .product .add-to-cart { background:transparent; color:var(--ink); border:1px solid #b9bcae; padding:13px 14px; min-height:46px; }
body:has(.hero) .product .add-to-cart:hover { background:#30372a; border-color:#30372a; color:#fff; }
body:has(.hero) .product .button-label { font-size:12px; }
body:has(.hero) .home-careers { margin:0 6% 76px; padding:54px 5%; background:#e9ebdf; border:1px solid #e0e3d5; gap:9%; }
body:has(.hero) .home-careers h2 { font-size:clamp(30px,3.5vw,48px); line-height:1.15; }
body:has(.hero) .home-careers-copy>p { font-size:15px; line-height:1.85; }
body:has(.hero) .home-careers-copy .home-careers-benefits { font-size:12px; color:#737a64; }
body:has(.hero) .home-careers .button { padding:16px 22px; font-size:13px; }
body:has(.hero) footer { padding:44px 6% 30px; border-top:1px solid #e1dfd5; }
body:has(.hero) .footer-bottom { line-height:1.8; }

/* The cover occupies exactly the part of the first screen below the site chrome. */
body:has(.hero) .hero {
  height:var(--home-hero-height, calc(100svh - 134px))!important;
  min-height:0!important;
}
body:has(.hero) .hero-image,
body:has(.hero) .hero-image img {
  width:100%!important;
  height:100%!important;
}
body:has(.hero) .hero-image img {
  object-fit:cover!important;
  object-position:center center!important;
}
@media(max-width:950px) and (min-width:651px) {
  body:has(.hero) .hero-copy h1 { font-size:40px!important; margin:16px 0!important; }
  body:has(.hero) .hero-copy>p { font-size:13px; line-height:1.5; margin-bottom:12px; }
  body:has(.hero) .hero-copy .button { min-height:44px; padding:12px 18px; margin-top:0!important; }
}
@media(max-width:650px) {
  body:has(.hero) .hero-copy {
    position:absolute!important;
    inset:0!important;
    padding:36px 6%!important;
    justify-content:center!important;
    background:linear-gradient(90deg,rgba(22,27,19,.76) 0%,rgba(22,27,19,.42) 62%,rgba(22,27,19,.16) 100%)!important;
  }
  body:has(.hero) .hero-copy h1 { font-size:42px!important; }
  body:has(.hero) .values { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; align-items:center!important; height:32px!important; min-height:32px!important; gap:6px!important; padding:0 8px!important; font-size:9px!important; font-weight:500!important; line-height:1.1!important; text-align:center!important; }
  body:has(.hero) .values .star { display:none; }
  body:has(.hero) .collection { padding:46px 6%; }
  body:has(.hero) .collection .products { gap:28px 14px!important; }
  body:has(.hero) .home-careers { margin:0 6% 46px; padding:30px 24px; gap:24px; }
}
