/* Master Catalog 4.0 — progressive visual enhancement.
   No catalog, price, order or admin behavior is changed. */
:root{--ink:#17252b;--muted:#62736d;--gold:#c6a66b;--line:#e4e9e3;--paper:#f8f7f3;--dark:#102d28;--radius:18px}
body{background:var(--paper)}
.top{box-shadow:0 2px 24px rgba(16,45,40,.04)}
.cartbtn,.primary{background:var(--dark);border-radius:12px}
.cartbtn:hover,.primary:hover{background:#19483e}
.hero{background-color:var(--dark);border-radius:22px;overflow:hidden}
.card{border-radius:18px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(16,45,40,.1);border-color:#cddbd2}
.productpicture{background:#f5f7f4}
.productpicture img{transition:transform .22s ease}
.card:hover .productpicture img{transform:scale(1.035)}
.add{border-radius:10px;background:#e9f0e9}
.add:hover{background:#d9e9dd}
.category.active{background:#e1ece5;color:#102d28}
input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible{outline-color:var(--gold)}
@media(prefers-reduced-motion:reduce){.card,.productpicture img{transition:none!important}.card:hover{transform:none}.card:hover .productpicture img{transform:none}}
@media(max-width:600px){.card{border-radius:14px}.hero{border-radius:16px}}

/* Explicit product marketing labels (never fabricated). */
.productbadges{position:absolute;top:10px;left:10px;z-index:1;display:flex;flex-wrap:wrap;gap:5px;max-width:calc(100% - 20px)}
.productbadge{font-size:10px;font-weight:700;letter-spacing:.035em;border-radius:6px;padding:5px 8px;color:white;background:#28634d}
.badge-new{background:#236b91}.badge-sale{background:#a33e38}.badge-combo{background:#785a2e}

/* Contacts 4.0 — responsive, keyboard-friendly contact hub */
.contact-v4{margin:48px 0 12px;color:#17252b;scroll-margin-top:110px}
.contact-v4-hero{padding:30px;background:#102d28;color:white;border-radius:20px;margin-bottom:16px}
.contact-v4-eyebrow{color:#c6a66b;letter-spacing:.12em;font-size:11px;font-weight:700}
.contact-v4-hero h2{font-size:clamp(24px,3vw,34px);margin:12px 0;color:white}
.contact-v4-hero p{max-width:650px;color:#d9e5dd}
.contact-v4-hours{font-size:13px;color:#e9e2cf}
.contact-v4-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-v4-card,.contact-v4-legal{background:white;border:1px solid #e1e7e0;border-radius:18px;padding:24px}
.contact-v4-card h3{margin:0 0 16px;font-size:17px}
.contact-v4-number{font-size:clamp(20px,2.5vw,28px);font-weight:700;display:inline-block;margin-bottom:20px;overflow-wrap:anywhere}
.contact-v4-actions{display:flex;flex-wrap:wrap;gap:10px}
.contact-v4-primary,.contact-v4-secondary{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:10px;font-weight:600;font-size:13px}
.contact-v4-primary{background:#102d28;color:white}
.contact-v4-secondary{background:#eaf0eb;color:#102d28}
.contact-v4-details{margin-top:22px;border-top:1px solid #e1e7e0;padding-top:16px}
.contact-v4 details summary{cursor:pointer;font-weight:600;list-style-position:inside;padding:8px 0}
.contact-v4-details ul{padding-left:18px;display:grid;gap:12px}
.contact-v4-details a{text-decoration:underline;text-underline-offset:3px}
.contact-v4-map{margin:8px 0}
.contact-v4-muted{color:#66746b;font-size:13px}
.contact-v4-social{margin-top:16px}
.contact-v4-social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.contact-v4-social-grid a{background:#f2f6f2;border:1px solid #e3eae4;border-radius:12px;padding:20px 12px;display:flex;gap:10px;align-items:center;justify-content:center;font-size:13px;font-weight:600;text-align:center}
.contact-v4-social-grid span{font-size:22px;color:#1b6c74}
.contact-v4-legal{margin-top:16px}
.contact-v4-legal dl{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:12px;margin:16px 0 0;font-size:13px}
.contact-v4-legal dt{color:#68766f}.contact-v4-legal dd{margin:0;overflow-wrap:anywhere}
#companyInfo:has(+ #premiumContacts) .companygrid>.companypanel:last-child{display:none}
#companyInfo:has(+ #premiumContacts) .companygrid{grid-template-columns:repeat(2,minmax(0,1fr))}
#companyInfo:has(+ #premiumContacts) .legalname{display:none}
@media(max-width:760px){.contact-v4-grid{grid-template-columns:1fr}.contact-v4-social-grid{grid-template-columns:1fr 1fr 1fr}.contact-v4-card,.contact-v4-legal{padding:18px}#companyInfo:has(+ #premiumContacts) .companygrid{grid-template-columns:1fr}}
@media(max-width:440px){.contact-v4-hero{padding:22px}.contact-v4-actions>a{flex:1}.contact-v4-social-grid a{flex-direction:column;gap:6px;padding:12px 5px;font-size:11px}.contact-v4-legal dl{grid-template-columns:1fr;gap:5px}.contact-v4-legal dd{margin-bottom:9px}}


/* Premium 4.0 interface polish — additive CSS only, 2026-11-02.
   Keep commerce, owner authentication, product data and existing markup intact. */
:root{color-scheme:light}
.top{position:relative;z-index:5;border-bottom:1px solid #e3e8e2}
.wordmark .seal{box-shadow:0 0 0 4px rgba(198,166,107,.1)}
.navbtn,.cartbtn,.primary,.secondary,.category,.add{transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.navbtn:hover{color:#102d28}
.hero{box-shadow:0 18px 44px rgba(16,45,40,.1)}
.workspace{align-items:start}
.listing{min-width:0}
.filters{gap:10px}
.search input{min-width:0}
#grid .card{background:#fff;border:1px solid #e5ebe5;overflow:hidden}
#grid .card:focus-within{border-color:#c6a66b;box-shadow:0 0 0 2px rgba(198,166,107,.12)}
#grid .card .productpicture img{object-fit:contain}
#grid .card .add:focus-visible{outline:3px solid #c6a66b;outline-offset:2px}
#productDialog{max-width:min(94vw,940px);border-radius:20px}
#productDialog::backdrop,#cartDialog::backdrop{background:rgba(10,25,22,.6)}
#cartDialog{max-width:min(94vw,680px);border-radius:20px}
#productDetails img{max-width:100%}
#resultCount{font-variant-numeric:tabular-nums}
@media(hover:hover) and (pointer:fine){
  .cartbtn:hover,.primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(16,45,40,.18)}
}
@media(max-width:760px){
  .top{gap:10px}
  .actions{gap:8px}
  .filters{gap:8px}
  #productDialog,#cartDialog{max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px)}
}
@media(max-width:440px){
  .wordmark{letter-spacing:.6px}
  .hero{box-shadow:none}
  #grid .card{border-radius:14px}
}
@media(prefers-reduced-motion:reduce){
  .navbtn,.cartbtn,.primary,.secondary,.category,.add{transition:none!important}
  .cartbtn:hover,.primary:hover{transform:none;box-shadow:none}
}

/* Premium contact hub: phone and department emails in one scannable panel */
.contact-v4-premium-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:stretch}
.contact-v4-hub{padding:30px;background:linear-gradient(145deg,#fff 0%,#f7faf7 100%);border-color:#dce6dd}
.contact-v4-hub-head{margin-bottom:12px}
.contact-v4-hub .contact-v4-eyebrow{display:block;color:#8b7042;margin-bottom:8px}
.contact-v4-hub h3{font-size:15px;color:#55675d;margin:0 0 8px}
.contact-v4-phone{font-size:clamp(24px,3vw,34px);letter-spacing:-.035em;margin-bottom:18px;white-space:normal}
.contact-v4-hub .contact-v4-actions>a{min-height:44px}
.contact-v4-email-list{margin-top:26px;padding-top:22px;border-top:1px solid #dee8df}
.contact-v4-email-list>h3{font-size:17px;color:#152e28;margin-bottom:12px}
.contact-v4-email-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #e8eee8}
.contact-v4-email-row:last-child{border-bottom:0}
.contact-v4-email-copy{min-width:0;display:grid;gap:4px}
.contact-v4-email-copy span{font-size:12px;color:#63766c;font-weight:600}
.contact-v4-email-copy a{color:#102d28;font-size:clamp(15px,1.75vw,19px);font-weight:700;overflow-wrap:anywhere;text-decoration:none}
.contact-v4-email-copy a:hover{text-decoration:underline;text-underline-offset:3px}
.contact-v4-mail-action{background:#e9f0eb;color:#102d28;flex-shrink:0;border-radius:10px;padding:12px 15px;font-size:13px;font-weight:700;text-decoration:none}
.contact-v4-mail-action:hover{background:#dbe9df}
.contact-v4-location{display:flex;flex-direction:column;align-items:flex-start}
.contact-v4-location p{line-height:1.7}
.contact-v4-location .contact-v4-muted{margin-top:auto;padding-top:12px}
@media(max-width:760px){.contact-v4-premium-grid{grid-template-columns:minmax(0,1fr)}.contact-v4-hub{padding:22px}.contact-v4-location .contact-v4-muted{margin-top:12px}}
@media(max-width:440px){.contact-v4-email-row{align-items:stretch;flex-direction:column;gap:9px}.contact-v4-mail-action{align-self:flex-start}.contact-v4-hub .contact-v4-actions>a{flex:1}}

.office-country-map{margin:24px 0}.office-country-map img{width:100%;height:auto;display:block;border-radius:16px}.office-country-map figcaption{font-size:12px;color:#51675f;margin-top:10px}
