/* Quiet olive, warm wood, and the natural grain of the product photographs. */
.site-header { background:rgba(250,248,242,.97); }
.announcement { background:var(--green-dark); letter-spacing:.08em; }
.brand { color:var(--ink); }
.brand-mark { border-color:var(--brass); color:var(--green); }
.brand-name > span { color:var(--green); letter-spacing:.32em; }
.desktop-nav { color:var(--body); }
.button { border-radius:5px; }
.button:hover { box-shadow:0 5px 18px #39422714; }
.button-outline:hover { background:var(--olive-soft); }
.text-link,.card-link { text-underline-offset:5px; }
.small-line { background:var(--brass); width:30px; }
.hero-visual { padding:10px; border:1px solid #d9d3bd; border-radius:10px; background:#f0eee3; }
.hero-photo { background:#fff; border-radius:5px; }
.hero-visual figcaption { padding:0 5px 3px; color:var(--body); }
.origin-seal { background:var(--olive-soft); color:var(--green-dark); border-color:#a5ac8c; outline-color:var(--cream); }
.hero-visual figcaption > span:first-child { color:var(--wood); }
.hero-note.olive-origin { display:inline-flex; gap:15px; max-width:100%; padding-top:21px; margin-top:26px; border-top:1px solid var(--line); }
.olive-origin img { width:64px; height:64px; flex:0 0 64px; border-radius:4px; object-fit:cover; object-position:28% 45%; }
.olive-origin > span { display:grid; gap:5px; color:var(--body); font-family:var(--sans); font-size:13px; line-height:1.55; }
.olive-origin strong { font-weight:550; font-size:14px; color:var(--green); }
.olive-origin:hover strong { text-decoration:underline; text-underline-offset:4px; }
.promise-strip { border-color:var(--line); }
.promise-strip > div > span { color:var(--brass); }
.promise-strip strong { color:var(--green-dark); }
.collection-grid { gap:20px; border:0; }
.collection-card,.collection-card:nth-child(2),.collection-card:nth-child(3) { background:#f1eee3; border:1px solid var(--line); border-radius:7px; overflow:hidden; }
.collection-card:nth-child(2) { background:#eff0e6; }
.collection-card:hover { background:#e9ecdf; }
.collection-photo { background:#fff; border-bottom:1px solid var(--line); }
.card-kicker { color:var(--wood); }
.card-link { border-color:#d2d2bc; }
.story { background:var(--sand); }
.story-image { border-radius:7px; overflow:hidden; }
.story-image figcaption { background:linear-gradient(transparent,#303c25d4); }
.heritage-difference,.heritage-values,.heritage-value + .heritage-value,.heritage-accordion details,.heritage-accordion details:first-child { border-color:#d5d3c0; }
.inquiry-section { background:var(--green-dark); border-top:3px solid var(--brass); }
.inquiry-copy h2 em { color:#d6d9ba; }
.inquiry-form { border-radius:7px; }
input,select,textarea { border-color:#d0cebc; border-radius:4px; color:var(--ink); background:#fffefb; }
input::placeholder,textarea::placeholder { color:#7c786c; }
.site-dialog { border-radius:8px; }
.site-dialog::backdrop { background:#283021a8; }
.stars { color:var(--wood); }
.site-footer { background:#eeefe5; border-top:1px solid #cfd3bd; }
.footer-brand .brand-mark span { background:#eeefe5; }
.footer-bottom { border-color:#d2d6c3; }
.catalog-search { border-color:#cfcebd; background:#fffefb; border-radius:5px; }
.catalog-search:focus-within { outline-color:var(--green); }
.filter-chip { background:var(--olive-soft); border-color:#ccd2b8; color:var(--green-dark); }
.filter-chip:hover { background:#e1e6d1; }
.product-image { border:1px solid var(--line); border-radius:6px; background:#fff; }
.photo-count { background:rgba(250,248,242,.97); color:var(--green-dark); border:1px solid var(--line); border-radius:3px; }
.product-specifications th { background:var(--sand); }
.product-specifications tr.is-selected td { background:var(--olive-soft); }
.empty-results,.cart-empty { background:var(--sand); border-radius:6px; }
.cart-contact { background:var(--sand); border-radius:7px; }
.customer-review,.admin-review { background:#f7f6ed; border-radius:6px; }
.reviews-empty { border-color:#d2d6c3; }
.review-admin-header { border-color:var(--line); }
.shipping-popup { width:min(500px,calc(100% - 32px)); padding:48px 38px 24px; text-align:center; border-top:4px solid var(--green); box-shadow:0 24px 80px #28302130; }
.shipping-popup .eyebrow { justify-content:center; font-size:12px; letter-spacing:.13em; margin:0 auto; }
.shipping-popup h2 { font-size:clamp(38px,6vw,52px); line-height:1.12; margin:23px 0 19px; }
.shipping-popup h2 em { color:var(--green); }
.shipping-popup > #shipping-offer-description { font-size:16px; line-height:1.65; max-width:325px; margin:0 auto 28px; }
.shipping-popup .button { display:flex; width:100%; }
.shipping-continue { display:block; min-height:44px; padding:12px; margin:8px auto 0; border:0; background:transparent; color:var(--body); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.shipping-continue:hover { color:var(--green-dark); }
@media(max-width:800px) {
  .hero-visual { padding:7px; border-radius:7px; }
  .hero-visual figcaption { padding-inline:3px; }
  .olive-origin > span { font-size:12px; }
  .olive-origin img { width:56px; height:56px; flex-basis:56px; }
  .collection-grid { gap:18px; }
  .filter-panel { background:var(--cream); }
  .shipping-popup { padding:58px 24px 20px; }
  .shipping-popup .eyebrow { max-width:100%; font-size:11px; }
}
