:root {
  --infinity-black: #0f1113;
  --infinity-charcoal: #1b1e21;
  --infinity-panel: #24282c;
  --infinity-silver: #d9dde1;
  --infinity-gold: #c88a20;
  --infinity-gold-light: #e0ad4f;
  --infinity-red: #ff6569;
}
body { color: #eef0f2; background: var(--infinity-black); }
main { background: linear-gradient(180deg, #171a1d 0, #101214 100%); }
a { color: var(--infinity-gold-light); }
a:hover { color: #f0c675; }
.text-muted { color: #aeb5bc !important; }
.site-logo { width: auto; height: 52px; max-width: min(260px, 62vw); object-fit: contain; border-radius: .2rem; }
.navbar { background: #08090a !important; border-bottom: 1px solid #5e441d; }
.navbar .nav-link { color: #d5d8db; }
.navbar .nav-link:hover { color: var(--infinity-gold-light); }
.navbar .nav-specials { color: var(--infinity-red); font-weight: 700; }
.navbar .nav-specials:hover, .navbar .nav-specials:focus-visible { color: #ff9295; }
.hero { background: linear-gradient(120deg, #f8f9fa, #eef4f7) !important; }
.hero-industrial { color: #fff; background: linear-gradient(115deg, rgba(10,11,12,.98), rgba(46,42,35,.94)), repeating-linear-gradient(135deg, transparent 0 28px, rgba(200,138,32,.045) 28px 30px) !important; border-bottom-color: #69491d !important; }
.hero-industrial .text-light-emphasis { color: #d7dadd !important; }
.hero-kicker { color: var(--infinity-gold-light); letter-spacing: .08em; }
.hero-industrial .btn-light { color: #17130d; background: var(--infinity-gold-light); border-color: var(--infinity-gold-light); font-weight: 600; }
.hero-industrial .btn-light:hover { background: #f0c675; border-color: #f0c675; }
.card { color: #eef0f2; background: var(--infinity-panel); }
.product-card { transition: transform .15s ease, box-shadow .15s ease; }
.product-card:hover { transform: translateY(-3px); box-shadow: 0 .5rem 1.5rem rgba(0,0,0,.35); }
.product-card:focus-within { outline: 3px solid var(--infinity-gold-light); outline-offset: 3px; }
.product-card .card-title a { color: #f5f6f7; }
.news-card { border-top: 3px solid var(--infinity-gold) !important; }
.news-thumbnail { width: 100%; height: 180px; object-fit: cover; background: #e9ecef; }
.product-image { width: 100%; height: 220px; object-fit: contain; background: #191c1f; padding: .75rem; }
.detail-image { width: 100%; min-height: 380px; max-height: 520px; object-fit: contain; background: #191c1f; }
.placeholder-image { display: grid; place-items: center; color: #9aa1a8; }
.catalogue-filters { background: #202428; border-color: #444b51; }
.catalogue-update { background: #202428; border-color: #5e441d !important; }
.special-badge { color: #111; background: var(--infinity-gold-light); }
.form-control:focus, .form-select:focus, .btn:focus-visible, a:focus-visible { outline: 3px solid #f0c675; outline-offset: 2px; box-shadow: none; }
.category-tile { display: block; height: 100%; padding: 1.25rem; border: 1px solid #3d4247; border-left: 4px solid var(--infinity-gold); border-radius: .25rem; text-decoration: none; font-weight: 600; background: #202326; color: #f3f4f5; }
.category-tile:hover { color: #fff; border-color: var(--infinity-gold-light); background: #282c30; }
.btn-primary { --bs-btn-bg: var(--infinity-gold); --bs-btn-border-color: var(--infinity-gold); --bs-btn-hover-bg: #a96f13; --bs-btn-hover-border-color: #a96f13; --bs-btn-color: #111; --bs-btn-hover-color: #fff; }
.btn-outline-dark { --bs-btn-color: var(--infinity-gold-light); --bs-btn-border-color: var(--infinity-gold); --bs-btn-hover-bg: var(--infinity-gold); --bs-btn-hover-border-color: var(--infinity-gold); --bs-btn-hover-color: #111; }
.btn-light { --bs-btn-bg: #e5e7e9; --bs-btn-border-color: #e5e7e9; }
.table { --bs-table-color: #e8eaec; --bs-table-bg: transparent; --bs-table-border-color: #41464b; }
.badge.text-bg-light { color: #f1f3f5 !important; background: #2e3337 !important; border-color: #555c62 !important; }
.site-footer { color: #d8dadd; background: #08090a; border-top-color: #5e441d !important; }
.site-footer a { color: var(--infinity-gold-light); }
.content-body { font-size: 1.075rem; line-height: 1.75; }
.campaign-hero { background: radial-gradient(circle at 20% 20%, #29251e, #0d0f11 58%); }
.campaign-carousel { background: #070809; border: 1px solid #5e441d; border-radius: .5rem; overflow: hidden; }
.campaign-flyer { width: 100%; height: min(72vh, 820px); object-fit: contain; background: #070809; }
.specials-flyer { width: 100%; height: 580px; object-fit: contain; background: #070809; }
.flyer-card { border-color: #464b50; overflow: hidden; }
.carousel-control-prev, .carousel-control-next { width: 10%; background: rgba(0,0,0,.18); }
.brand-card { display:flex; align-items:center; justify-content:center; min-height:118px; padding:1.4rem; background:#fff; border:1px solid #d9dde1; border-radius:.35rem; transition:transform .15s ease, box-shadow .15s ease; }
.brand-card:hover, .brand-card:focus-visible { transform:translateY(-2px); box-shadow:0 .35rem 1rem rgba(0,0,0,.3); outline:3px solid var(--infinity-gold-light); outline-offset:2px; }
.brand-card img { display:block; width:100%; max-width:180px; height:64px; object-fit:contain; }
.shop-brand-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.shop-brand-card { display:grid; grid-template-rows:52px 22px; min-width:0; height:74px; overflow:hidden; background:#fff; border:1px solid #d9dde1; border-radius:.3rem; color:inherit; text-decoration:none; transition:transform .15s ease, box-shadow .15s ease; }
.shop-brand-card:hover, .shop-brand-card:focus-visible { color:inherit; transform:translateY(-2px); box-shadow:0 .35rem 1rem rgba(0,0,0,.3); outline:3px solid var(--infinity-gold-light); outline-offset:2px; }
.shop-brand-card-image { display:flex; min-width:0; align-items:center; justify-content:center; padding:.25rem .45rem; background:#fff; }
.shop-brand-card-image img { display:block; width:100%; max-width:132px; height:42px; object-fit:contain; }
.shop-brand-card-name { display:block; overflow:hidden; padding:.18rem .35rem; border-top:1px solid #e8ebee; font-size:.68rem; font-weight:600; line-height:1.15; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.back-to-results { font-weight:600; text-decoration:none; }
.buyer-layer h1 { font-size:clamp(1.8rem,3vw,2.6rem); }
.product-summary { display:-webkit-box; overflow:hidden; -webkit-line-clamp:3; -webkit-box-orient:vertical; }
.key-specifications { padding:1rem; border:1px solid #444b51; border-radius:.4rem; background:#1d2124; }
.key-spec-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem 1rem; }
.key-spec-grid > div { min-width:0; padding-bottom:.45rem; border-bottom:1px solid #343a40; }
.key-spec-grid dt { color:#aeb5bc; font-size:.78rem; font-weight:600; text-transform:uppercase; letter-spacing:.03em; }
.key-spec-grid dd { margin:0; overflow-wrap:anywhere; font-weight:600; }
.purchase-actions #qty { width:6rem; }
.bulk-order-cue { padding:.75rem 1rem; border-left:3px solid var(--infinity-gold); background:#202428; color:#dfe2e5; }
.btn-whatsapp { --bs-btn-bg:#1f9d55; --bs-btn-border-color:#1f9d55; --bs-btn-hover-bg:#178146; --bs-btn-hover-border-color:#178146; --bs-btn-color:#fff; --bs-btn-hover-color:#fff; }
.buyer-reassurance { padding:1rem; border:1px solid #3d4b42; border-radius:.4rem; background:#18221d; }
.buyer-reassurance li::before { content:"✓"; margin-right:.4rem; color:#58c987; font-weight:700; }
.gap-x-3 { column-gap:1rem; }
.gap-y-1 { row-gap:.25rem; }
.specification-table th { width:44%; }
@media (min-width: 576px) { .shop-brand-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (min-width: 768px) { .shop-brand-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (min-width: 992px) { .shop-brand-grid { grid-template-columns:repeat(6,minmax(0,1fr)); } }
@media (min-width: 1200px) { .shop-brand-grid { grid-template-columns:repeat(8,minmax(0,1fr)); } }
@media (prefers-reduced-motion: reduce) { .carousel-item { transition: none !important; } }
@media (max-width: 767.98px) { .campaign-flyer { height: 65vh; } .specials-flyer { height: auto; max-height: 80vh; } }
@media (max-width: 575.98px) { .site-logo { height: 44px; max-width: 58vw; } }
@media (max-width: 575.98px) { .key-spec-grid { grid-template-columns:1fr; } .detail-image { min-height:280px; } .btn-whatsapp { width:100%; } }
