/* Catalogue-first storefront. Shared forest-green identity, calmer editorial layout. */
.storefront { background:#f7f7f2; color:#183b30; }
.storefront .reveal { opacity:1; transform:none; }
.storefront .site-header { background:rgba(250,250,245,.98); }
.storefront .announcement { background:#123c2e; color:#f5f2df; }
.storefront .hero { background:#e8ecdf; padding:72px 0 56px; min-height:0; }
.storefront .hero__grid { grid-template-columns:1fr; gap:0; align-items:center; }
.storefront .hero h1 { font-size:clamp(36px,4.5vw,66px); line-height:1.07; letter-spacing:-2px; max-width:700px; }
.storefront .hero__lead { font-size:16px; max-width:600px; }
.storefront .hero h1,.storefront .hero__trust strong { color:#183b30; }
.storefront .hero h1 em { color:#7f6424; }
.storefront .hero__lead,.storefront .hero__trust span,.storefront .hero .eyebrow { color:#4e644f; }
.storefront .hero .button--ghost { color:#183b30; border-color:#899b7c; }
.storefront .hero__ids,.storefront .hero__hindi { display:none; }
.storefront .hero__trust { margin-top:32px; padding-top:24px; border-color:#cbd4c1; }
.storefront .hero__visual { transform:none; }
.storefront .ride-frame { border:0; background:white; border-radius:180px 180px 24px 24px; padding:30px 18px; box-shadow:none; transform:none; }
.storefront .ride-frame img { width:100%; object-fit:contain; border-radius:100px 100px 12px 12px; }
.storefront .availability-card { position:relative; inset:auto; margin:-8px 18px 0; transform:none; border-radius:0 0 16px 16px; box-shadow:none; }
.storefront .section { padding:72px 0; }
.storefront .marquee { background:#143e30; color:#fff; }
.kicker { font-size:11px; letter-spacing:2px; font-weight:800; margin:0 0 16px; color:#6b795c; }
.browse-heading { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:32px; }
.browse-heading h2 { font-size:clamp(30px,3.5vw,48px); line-height:1.1; letter-spacing:-1.5px; margin:0; }
.browse-heading > p { max-width:350px; color:#657165; line-height:1.7; margin:0; }
.category-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:20px; }
.category-card { grid-column:span 2; border:1px solid #dde2d5; border-radius:16px; background:white; overflow:hidden; color:inherit; text-decoration:none; transition:transform .18s,border-color .18s; }
.category-card:nth-child(-n+2) { grid-column:span 3; }
.category-card:hover { transform:translateY(-4px); border-color:#79977c; }
.category-image { position:relative; height:200px; padding:16px; background:#fff; }
.category-card:nth-child(-n+2) .category-image { height:260px; }
.category-image img { width:100%; height:100%; object-fit:contain; }
.category-number { position:absolute; top:14px; left:16px; font-size:12px; color:#8b917f; }
.category-copy { padding:22px; border-top:1px solid #edf0e7; }
.category-copy h3 { margin:0 0 8px; font-size:21px; display:flex; justify-content:space-between; gap:12px; }
.category-copy p { margin:0; color:#748071; font-size:13px; }
.storefront .brand-section { padding-top:0; }
.brand-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.brand-tile { border:1px solid #dce2d6; border-radius:10px; padding:24px; background:#fff; color:inherit; text-decoration:none; }
.brand-tile:hover { border-color:#315d44; background:#eef2e7; }
.brand-tile strong { display:block; font-size:25px; letter-spacing:-.7px; }
.brand-tile span { display:flex; justify-content:space-between; font-size:12px; margin-top:18px; color:#75806c; }
.catalogue-banner { display:flex; align-items:center; justify-content:space-between; margin-top:32px; border-radius:14px; padding:32px; background:#173f30; color:#fff; text-decoration:none; }
.catalogue-banner small { display:block; color:#c6cfad; font-size:10px; letter-spacing:1.5px; margin-bottom:8px; }
.catalogue-banner strong { font-size:30px; font-weight:500; }
.catalogue-banner > span:last-child { font-size:36px; color:#dabc64; }
.storefront .wholesale { background:#e8ecdf; color:#183b30; }
.storefront .wholesale__visual { display:none; }
.storefront .wholesale__grid { grid-template-columns:1fr; }
.storefront .wholesale__copy { max-width:100%; }
.storefront .wholesale__copy h2 { max-width:850px; font-size:clamp(28px,3vw,42px); }
.storefront .wholesale__copy p,.storefront .wholesale-points,.storefront .eyebrow--light { color:#435c47; }
.storefront .wholesale .wholesale-points li { color:#183b30; }
.storefront .brand-strip,.storefront .business-ids { display:none; }
.storefront .button--outline-light { color:#183b30; border-color:#8b9a85; }
.storefront .dealer-documents { padding-top:20px; }
.storefront .dealer-documents img { height:180px; }
.storefront .ordering { background:#fff; color:#183b30; }
.storefront .ordering__heading h2,.storefront .ordering-step h3 { color:#183b30; }
.storefront .ordering__heading > p,.storefront .ordering-step p,.storefront .ordering__action p { color:#435c47; }
.storefront .ordering-step { background:#f7f7f2; border-color:#dce2d6; }
.storefront .ordering-step > span { color:#7f6424; }
.storefront .ordering__action { border-color:#dce2d6; }
.storefront .network-card { box-shadow:none; border:1px solid #dce2d6; }
.catalogue-intro { padding-top:48px; padding-bottom:44px; }
.back-link { display:inline-block; font-size:13px; margin-bottom:28px; color:#687761; }
.catalogue-intro h1 { font-size:clamp(36px,4.5vw,60px); line-height:1.08; letter-spacing:-2px; margin:0 0 18px; }
.catalogue-intro > p:last-child { max-width:620px; color:#6a7666; line-height:1.7; }
.catalogue-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:36px; align-items:start; padding-bottom:80px; }
.filter-panel { background:#fff; border:1px solid #dce2d6; border-radius:14px; padding:22px; position:sticky; top:105px; }
.filter-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:22px; }
.filter-heading h2 { margin:0; font-family:inherit; font-weight:700; font-size:16px; }
.clear-filters { border:0; background:none; color:#61725c; padding:0; font-size:11px; text-decoration:underline; cursor:pointer; }
.filter-panel label { display:block; font-size:12px; font-weight:700; margin:18px 0 8px; }
.filter-panel input,.filter-panel select { width:100%; min-width:0; height:44px; padding:10px; border:1px solid #d5ddcc; border-radius:6px; background:#fcfcf8; color:#183b30; font:inherit; font-size:13px; }
.filter-note { font-size:12px; line-height:1.8; margin:26px 0 0; color:#737f6c; }
.filter-note a { color:#183b30; font-weight:700; }
.results-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:0 0 18px; font-size:13px; }
.results-toolbar p { margin:0; font-weight:700; }
.results-toolbar span { color:#79816f; font-size:12px; }
.catalogue-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.catalogue-card { min-width:0; background:#fff; border:1px solid #dde3d6; border-radius:12px; overflow:hidden; display:flex; flex-direction:column; }
.catalogue-card[hidden],.empty-state[hidden] { display:none; }
.catalogue-photo { aspect-ratio:1.2; background:#fff; padding:14px; overflow:hidden; }
.catalogue-photo img { width:100%; height:100%; object-fit:contain; }
.catalogue-photo--cover img { object-fit:cover; }
.catalogue-card-copy { padding:18px; border-top:1px solid #f0f1eb; flex:1; display:flex; flex-direction:column; }
.product-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px; color:#78816d; font-size:10px; }
.product-meta span:first-child { font-weight:800; color:#315b3e; text-transform:uppercase; letter-spacing:1px; }
.catalogue-card h2 { font-family:inherit; font-size:17px; line-height:1.4; margin:10px 0 24px; letter-spacing:-.2px; }
.enquire-link { margin-top:auto; display:flex; justify-content:space-between; align-items:center; gap:10px; color:#235339; font-size:12px; font-weight:700; text-decoration:none; border-top:1px solid #edf0e7; padding-top:14px; }
.enquire-link:hover { text-decoration:underline; }
.empty-state { padding:70px 20px; border:1px dashed #aab7a2; border-radius:12px; text-align:center; }
.empty-state button { padding:12px 20px; border:0; border-radius:6px; background:#173f30; color:#fff; cursor:pointer; }
.storefront a:focus-visible,.storefront button:focus-visible,.storefront input:focus-visible,.storefront select:focus-visible { outline:3px solid #a67d24; outline-offset:4px; }
@media(max-width:1000px) { .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .catalogue-layout{gap:22px;grid-template-columns:210px minmax(0,1fr)} .brand-grid{grid-template-columns:repeat(3,1fr)} }
@media(max-width:760px) { .storefront .hero{padding:36px 0}.storefront .hero__grid{grid-template-columns:1fr;gap:28px}.storefront .hero h1{letter-spacing:-1px}.storefront .hero__visual{max-width:520px;margin:auto}.storefront .section{padding:44px 0}.browse-heading{display:block}.browse-heading>p{margin-top:16px;max-width:none}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card,.category-card:nth-child(-n+2){grid-column:span 1}.category-card:last-child{grid-column:span 2}.category-image,.category-card:nth-child(-n+2) .category-image{height:155px}.category-copy{padding:15px}.category-copy h3{font-size:17px}.category-copy p{font-size:12px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-tile{padding:20px}.catalogue-banner{padding:24px}.catalogue-banner strong{font-size:24px}.catalogue-layout{display:block}.filter-panel{position:static;margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.filter-heading{grid-column:1/-1;margin-bottom:8px}.filter-panel label{margin:8px 0 0}.filter-panel label[for=catalogue-search],#catalogue-search{grid-column:1/-1}.filter-panel label[for=category-filter]{grid-column:1;grid-row:4}.filter-panel label[for=type-filter]{grid-column:2;grid-row:4}#category-filter{grid-column:1;grid-row:5}#type-filter{grid-column:2;grid-row:5}.filter-panel label[for=brand-filter],#brand-filter{grid-column:1/-1}.filter-note{display:none}.catalogue-card-copy{padding:12px}.catalogue-card h2{font-size:15px}.catalogue-grid{gap:12px}.catalogue-intro{padding-top:30px;padding-bottom:24px}.enquire-link{font-size:11px}.results-toolbar span{display:none} }
@media(prefers-reduced-motion:reduce) { .category-card{transition:none}.category-card:hover{transform:none} }
