/* Public storefront only. Checkout, cart and account styles keep their existing rules. */
.marketing-site { --cta:#9a3b00; --cta-2:#7d3000; }
.marketing-site .header-row { gap:20px; }
.marketing-site .primary-nav a { white-space:nowrap; }
.marketing-site .primary-nav { gap:4px; }
.marketing-site .nav-item:focus-within .nav-dropdown { opacity:1; visibility:visible; transform:none; pointer-events:auto; }
.marketing-site :is(input,select,textarea) { min-width:0; max-width:100%; }
.marketing-site :is(.hero-search,.search-form,.search-input-wrap,.contact-grid,.contact-form,.tld-content-grid) { min-width:0; }
.marketing-site :is(.hero-search,.search-form) input { flex:1 1 0; min-width:0; width:0; }
.marketing-site .contact-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); }
.marketing-site :is(.contact-info,.contact-form,.tld-content-grid > *) { min-width:0; overflow-wrap:anywhere; }
.marketing-site :is(.hero-search,.search-form) button { flex-shrink:0; }
.marketing-site :is(button,a,input,select,textarea):focus-visible { outline:3px solid #08717b; outline-offset:3px; }
.marketing-site .form-label { display:block; font-size:14px; font-weight:650; margin:18px 0 7px; }
.store-hero { padding:64px 0 42px; background:linear-gradient(135deg,#edf6f3,#fff); }
.store-hero h1 { font-size:clamp(34px,4.5vw,58px); line-height:1.08; max-width:850px; margin:12px 0 22px; letter-spacing:-1.5px; }
.store-hero .lead { max-width:780px; }
.store-hero .hero-search { max-width:760px; margin:0; }
.store-section { padding:48px 0; }
.store-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.store-card { min-width:0; border:1px solid var(--border); border-radius:16px; padding:26px; background:#fff; }
.store-card h2 { font-size:24px; line-height:1.2; margin:10px 0 14px; }
.store-card p { color:var(--muted); }
.store-card.featured { background:#edf6f3; border-color:#9ccdc4; }
.store-card .btn { width:100%; margin-top:12px; }
.store-price { font-size:26px; font-weight:750; margin:18px 0; }
.store-price small { font-size:14px; font-weight:400; }
.store-note { border-left:4px solid var(--brand); background:var(--bg-2); padding:20px 24px; margin:24px 0; border-radius:0 10px 10px 0; }
.store-links { display:flex; gap:12px; flex-wrap:wrap; margin:18px 0; }
.store-toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:end; margin:20px 0; }
.store-toolbar label { font-size:14px; font-weight:600; }
.store-toolbar :is(input,select) { display:block; padding:10px; border:1px solid var(--border); border-radius:7px; margin-top:5px; background:#fff; }
.store-table-wrap { overflow-x:auto; max-width:100%; }
.store-table { width:100%; border-collapse:collapse; }
.store-table th,.store-table td { text-align:left; padding:13px 12px; border-bottom:1px solid var(--border); vertical-align:top; }
.store-table th { font-size:13px; }
.store-table .price-num { white-space:nowrap; font-variant-numeric:tabular-nums; }
.store-table small { display:block; color:var(--muted); margin-top:5px; }
.store-sample { border:1px dashed #8aaca7; padding:24px; border-radius:12px; background:#f8fbfa; }
.store-sample h3 { margin-top:0; }
.store-actions { display:flex; gap:12px; flex-wrap:wrap; margin:20px 0; }
@media(max-width:1050px) { .marketing-site .primary-nav,.marketing-site .nav-right { display:none; } .marketing-site .nav-toggle { display:block; } }
@media(max-width:700px) {
  .store-hero { padding:36px 0 24px; }
  .store-section { padding:30px 0; }
  .store-grid,.marketing-site .contact-grid,.marketing-site .tld-content-grid { grid-template-columns:minmax(0,1fr); }
  .store-card { padding:22px; }
  .marketing-site :is(.hero-search,.search-form) { flex-direction:column; align-items:stretch; border-radius:14px; }
  .marketing-site :is(.hero-search,.search-form) input { width:100%; flex:auto; padding:14px 12px; }
  .marketing-site :is(.hero-search,.search-form) button { width:100%; border-radius:9px; }
  .marketing-site .search-input-wrap { width:100%; }
  .store-toolbar label,.store-toolbar input { width:100%; }
}
