/* 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:#25251f; color:#f6f3ec; border:1px solid #25251f; padding:13px 14px; min-height:46px; }
body:has(.hero) .product .add-to-cart:hover { background:#44453b; border-color:#25251f; color:#f6f3ec; }
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; }
}

.home-partners{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:8%;margin:0 6% 70px;padding:clamp(30px,4.5vw,64px);background:#e8eadf;border:1px solid #d9dece;border-radius:8px}.home-partners .eyebrow{font-size:10px;letter-spacing:1.8px;color:#657354}.home-partners h2{font-size:clamp(26px,2.8vw,39px);font-weight:400;letter-spacing:-1px;line-height:1.3;margin:20px 0 26px}.home-partners h2 em{color:#58664c}.home-partners-sectors{display:flex;flex-wrap:wrap;gap:8px}.home-partners-sectors span{padding:7px 12px;border:1px solid #cbd2be;border-radius:30px;font-size:11px;color:#58664c}.home-partners-copy p{font-size:15px;line-height:1.85;color:#646c5b;margin:0 0 16px}.home-partners .button{margin-top:9px;padding:16px 20px;gap:22px;font-size:12px;background:#34422e;border-color:#34422e;border-radius:4px}.home-partners .button:hover{background:#4c5c43}@media(max-width:800px){.home-partners{grid-template-columns:1fr;gap:26px;margin:0 18px 46px;padding:28px 22px}.home-partners h2{font-size:28px;letter-spacing:-.8px;margin:16px 0 22px}.home-partners-copy p{font-size:14px;line-height:1.75}.home-partners .button{width:100%}}

/* Slightly deepen the right side of the cover while retaining its soft gradient. */
body:has(.hero) .hero-copy{background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.52) 28%,rgba(0,0,0,.36) 62%,rgba(0,0,0,.28) 100%)!important}
@media(max-width:800px){body:has(.hero) .hero-copy{background:linear-gradient(90deg,rgba(20,24,18,.78),rgba(20,24,18,.52) 72%,rgba(20,24,18,.34))!important}}

/* Align the business panel with the product grid at every viewport width. */
body:has(.hero) .home-partners{width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-content-width);margin-left:auto;margin-right:auto;box-sizing:border-box}
