/* Shop uses the same quiet cream and forest palette as the brand journey. */
body.inventory-scroll-page { background:#faf9f5; color:#244b3a; font-family:"Helvetica Neue",Helvetica,Arial,sans-serif; }
.inventory-page #inventory { width:min(1320px,90%); margin:0 auto; padding:58px 0 72px; border:0; border-radius:0; background:transparent; box-shadow:none; }
#inventory .catalog-heading { display:block; margin:0 0 30px; padding:0; border:0; background:none; }
#inventory .catalog-title .eyebrow { margin:0 0 16px; font:500 11px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:.15em; color:#718076; }
#inventory #inventory-title { max-width:none; margin:0; color:#183f31; font:500 clamp(32px,3.5vw,48px)/1.12 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:-.045em; }
#inventory .catalog-summary { display:flex; flex-wrap:wrap; align-items:center; gap:18px 32px; margin-top:20px; }
#inventory .catalog-intro { flex:1 1 100%; max-width:none; margin:0; color:#68776c; font-size:16px; line-height:1.6; }
#inventory .inventory-finder-entry { width:auto; max-width:none; margin:0; padding:0; border:0; border-radius:0; box-shadow:none; background:none; }
#inventory .inventory-finder-entry strong { font:500 14px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif; color:#244b3a; }
#inventory .inventory-finder-entry small { margin-top:3px; color:#748177; font-size:12px; }
#inventory .inventory-finder-entry svg { width:22px; height:22px; padding:0; background:none; color:#244b3a; }
#inventory .inventory-grade-guide { flex:1 1 260px; max-width:600px; margin:0 0 0 auto; padding:12px 0; border:0; border-radius:0; border-bottom:1px solid #dce1d8; background:none; }
#inventory .inventory-grade-guide summary { cursor:pointer; font-size:13px; color:#5c7064; }
#inventory .inventory-grade-guide-heading { margin-top:18px; }
#inventory .inventory-grade-guide dl { margin-top:14px; }
#inventory .inventory-retail-note { max-width:80ch; margin:0 0 24px; font-size:11px; line-height:1.6; color:#7a877d; }
#inventory .inventory-brand-nav { margin-bottom:28px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
#inventory .inventory-filter-toolbar { gap:20px; padding:18px 0; border:0; border-top:1px solid #dce1d8; border-bottom:1px solid #dce1d8; border-radius:0; background:transparent; box-shadow:none; }
#inventory .inventory-filter-status { color:#68776c; }
#inventory .inventory-filter-status strong { font-weight:500; }
#inventory .inventory-filter-category, #inventory .inventory-filter-toggle { min-height:42px; padding:10px 18px; border:1px solid #dce1d8; border-radius:99px; box-shadow:none; background:transparent; color:#526a5c; font:500 13px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; }
#inventory .inventory-filter-category[aria-current="page"] { background:#244b3a; border-color:#244b3a; color:#fffdf8; }
#inventory .inventory-filter-category small { color:inherit; background:transparent; }
#inventory .product-grid, #inventory .inventory-brand-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
#inventory .product-grid.inventory-brand-groups { grid-template-columns:1fr; }
#inventory .product-card { min-width:0; border:1px solid #e0e4dc; border-radius:12px; background:#ffffffa8; box-shadow:none; font-family:inherit; overflow:hidden; transition:border-color .18s ease; }
#inventory .product-card:hover { transform:none; border-color:#94a58f; box-shadow:none; }
#inventory .product-media { height:auto; min-height:0; aspect-ratio:1; margin:16px 16px 0; border-radius:6px; background:#f4f5f1; }
#inventory .product-media::before, #inventory .product-media::after { display:none; }
#inventory .product-body { padding:22px 22px 0; }
#inventory .product-heading { align-items:flex-start; }
#inventory .product-brand { color:#68776c; font-size:11px; font-weight:400; letter-spacing:.025em; }
#inventory .product-card h3 { color:#244b3a; font:500 24px/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:-.035em; }
#inventory .inventory-feature-badges { display:none; }
#inventory .product-body>.product-summary { min-height:0; margin:14px 0; padding:0; font:400 13px/1.55 "Helvetica Neue",Helvetica,Arial,sans-serif; color:#68776c; }
#inventory .product-body>.product-summary::before { display:none; }
#inventory .product-chip-row { margin:14px 0; gap:5px; }
#inventory .product-chip-row>span { border:0; background:#eef1e9; border-radius:5px; color:#5c7064; font:400 11px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; }
.shop-card-specs { margin:4px 0 16px; border-top:1px solid #e0e4dc; }
#inventory .shop-card-specs .product-spec-summary { padding:14px 0 2px; border:0; }
#inventory .shop-card-specs .product-spec-summary h4 { margin:0 0 11px; color:#718076; font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
#inventory .product-footer { display:flex; flex-direction:column; align-items:stretch; gap:18px; margin: auto 22px 0; padding:16px 0 22px; border-top:1px solid #e0e4dc; }
#inventory .product-price-comparison { width:100%; }
#inventory .product-price-block > strong { font:500 32px/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:-.04em; color:#244b3a; }
#inventory .product-price-block > span { font-size:11px; color:#68776c; }
#inventory .inventory-price-gap { gap:3px; margin-top:8px; padding:0; border:0; background:none; box-shadow:none; }
#inventory .inventory-price-gap-label { display:none; }
#inventory .inventory-price-gap-statement, #inventory .inventory-price-gap-statement strong { font:500 13px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; }
#inventory .inventory-price-gap-context { font-size:10px; color:#748177; }
#inventory .inventory-retail-reference { padding:8px 0 0; border:0; background:none; font-size:10px; color:#748177; }
#inventory .product-actions { width:100%; justify-content:space-between; gap:16px; }
#inventory .product-primary-action { flex:1; min-width:0; min-height:44px; padding:12px 16px; border:1px solid #244b3a; border-radius:99px; background:#244b3a; color:#fffdf8; font:500 13px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; box-shadow:none; }
#inventory .product-reserve-action { font:400 12px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; color:#526a5c; }
#inventory :is(a,button,summary):focus-visible { outline:2px solid #52795f; outline-offset:4px; }
@media(max-width:1050px) { #inventory .product-grid, #inventory .inventory-brand-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
  .inventory-page #inventory { width:calc(100% - 36px); padding-top:32px; }
  #inventory .catalog-summary { gap:20px; }
  #inventory .inventory-grade-guide { max-width:none; margin:0; }
  #inventory .inventory-filter-toolbar { flex-wrap:wrap; gap:12px; }
  #inventory .inventory-filter-categories { flex-wrap:wrap; }
  #inventory .product-grid, #inventory .inventory-brand-product-grid { grid-template-columns:1fr; gap:22px; }
  #inventory .product-media { aspect-ratio:1.15; }
}
@media(prefers-reduced-motion:reduce) { #inventory .product-card { transition:none; } }

#inventory [hidden] { display:none !important; }

/* Only the document scrolls. `hidden` on one axis otherwise makes the other
   axis `auto`, trapping the start of wheel/touch gestures inside the main. */
html.inventory-scroll-root { overflow-x:clip; overflow-y:visible; scroll-behavior:auto; }
body.inventory-scroll-page { overflow-x:clip; overflow-y:visible; touch-action:pan-y pinch-zoom; }
body.inventory-scroll-page .page-main.inventory-page,
body.inventory-scroll-page #inventory,
body.inventory-scroll-page #inventory .product-grid,
body.inventory-scroll-page #inventory .inventory-brand-section,
body.inventory-scroll-page #inventory .inventory-brand-product-grid {
  overflow:visible;
}
body.inventory-scroll-page #inventory .product-card,
body.inventory-scroll-page #inventory .product-media {
  overflow:clip;
  touch-action:pan-y pinch-zoom;
}
