:root{
  --bg:#ffffff;
  --bg-alt:#f4f7fb;
  --ink:#16202c;
  --muted:#5b6b7c;
  --blue:#1d4e89;
  --blue-dark:#153a66;
  --blue-light:#eaf1fa;
  --line:#dbe2ea;
  --good:#1f7a4d;
  --bad:#b3392f;
  --radius:6px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:16px;}
a{text-decoration:none;color:inherit;}
.container{max-width:1080px;margin:0 auto;padding:0 24px;}
.page{padding:36px 0 70px;}
p{color:var(--muted);}

.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);z-index:10;}
.header-inner{display:flex;align-items:center;gap:28px;padding:16px 24px;}
.logo{font-weight:700;font-size:17px;white-space:nowrap;color:var(--ink);}
.logo span{color:var(--blue);}
.main-nav{display:flex;gap:20px;flex:1;overflow-x:auto;}
.main-nav a{color:var(--muted);font-size:14px;font-weight:500;white-space:nowrap;}
.main-nav a:hover{color:var(--ink);}
.cart-link{background:var(--bg);border:1px solid var(--line);padding:9px 16px;border-radius:var(--radius);font-size:14px;font-weight:600;white-space:nowrap;color:var(--ink);}
.cart-link:hover{border-color:var(--blue);color:var(--blue);}
.cart-badge{background:var(--blue);color:#fff;border-radius:10px;padding:1px 7px;font-size:11.5px;margin-left:4px;}

.hero{padding:56px 0 48px;text-align:center;border-bottom:1px solid var(--line);margin-bottom:44px;}
.tag{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:13.5px;font-weight:600;margin-bottom:16px;}
.hero h1{font-size:32px;font-weight:700;margin-bottom:14px;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.3;color:var(--ink);}
.hero h1 span{color:var(--blue);}
.hero p{color:var(--muted);font-size:16px;max-width:540px;margin:0 auto 26px;}

.trust-row{display:flex;justify-content:center;gap:0;flex-wrap:wrap;max-width:760px;margin:0 auto;border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.trust-item{flex:1;min-width:200px;padding:18px 20px;border-left:1px solid var(--line);}
.trust-item:first-child{border-left:none;}
.trust-item strong{display:block;color:var(--ink);font-size:14px;margin-bottom:3px;}
.trust-item span{color:var(--muted);font-size:13px;}

.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:48px;}
.category-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:18px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;}
.category-card:hover{border-color:var(--blue);}
.cat-icon{font-size:20px;}
.cat-name{font-size:12.5px;color:var(--muted);}

.featured h2, .page-head h1{font-size:20px;font-weight:700;margin-bottom:20px;color:var(--ink);}
.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap;}

.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.product-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:6px;}
.product-card:hover{border-color:var(--blue);}
.swatch{width:100%;height:90px;border-radius:var(--radius);border:1px solid var(--line);margin-bottom:6px;}
.badge{background:var(--blue-light);border:1px solid var(--line);color:var(--blue);font-size:11px;font-weight:600;padding:3px 9px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;align-self:flex-start;}
.product-card h3{font-size:15px;font-weight:600;margin-top:4px;color:var(--ink);}
.fits{color:var(--muted);font-size:12.5px;}
.price{font-size:16px;font-weight:700;color:var(--blue);margin-top:4px;}

.model-filter{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);}
.model-filter select{background:var(--bg);border:1px solid var(--line);color:var(--ink);padding:7px 10px;border-radius:var(--radius);font-family:inherit;}

.empty{color:var(--muted);padding:30px 0;}

.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}
.swatch-large{width:100%;aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);}
.detail-info h1{font-size:24px;font-weight:700;margin:10px 0 6px;color:var(--ink);}
.sku{color:var(--muted);font-size:12.5px;margin-bottom:6px;}
.blurb{color:var(--muted);font-size:14px;margin:16px 0;}
.price-row{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.price-row .price{font-size:24px;}
.stock{font-size:12.5px;padding:3px 9px;border-radius:3px;}
.in-stock{color:var(--good);}
.out-of-stock{color:var(--bad);}
.add-form{display:flex;align-items:center;gap:10px;}
.add-form label{color:var(--muted);font-size:13px;}
.add-form input[type=number]{width:60px;background:var(--bg-alt);border:1px solid var(--line);color:var(--ink);padding:9px 10px;border-radius:var(--radius);font-family:inherit;}

.btn{display:inline-flex;align-items:center;gap:6px;background:var(--blue);color:#fff;padding:11px 22px;border-radius:var(--radius);font-weight:600;font-size:13.5px;border:1px solid var(--blue);cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,color .15s;}
.btn:hover{background:var(--blue-dark);border-color:var(--blue-dark);}
.btn:disabled{opacity:.5;cursor:not-allowed;}
.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line);}
.btn.secondary:hover{border-color:var(--blue);color:var(--blue);background:transparent;}

.cart-table{width:100%;border-collapse:collapse;margin-bottom:20px;}
.cart-table th,.cart-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:13.5px;vertical-align:middle;}
.cart-table th{color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.03em;}
.cart-table input[type=number]{width:56px;background:var(--bg-alt);border:1px solid var(--line);color:var(--ink);padding:6px 8px;border-radius:var(--radius);font-family:inherit;}
.link-btn{background:none;border:none;color:var(--muted);font-size:12.5px;cursor:pointer;text-decoration:underline;font-family:inherit;}
.link-btn:hover{color:var(--ink);}
.cart-actions{margin-bottom:24px;}
.cart-summary{background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.subtotal{font-size:15px;color:var(--ink);}
.subtotal strong{color:var(--blue);font-size:19px;}

.status-page{text-align:center;padding:60px 0;}
.status-page h1{font-size:26px;font-weight:700;margin:14px 0;color:var(--ink);}
.status-page p{color:var(--muted);margin-bottom:24px;}

.site-footer{border-top:1px solid var(--line);margin-top:40px;background:var(--bg-alt);}
.site-footer .container{padding:26px 24px;text-align:center;}
.site-footer p{color:var(--muted);font-size:12.5px;margin-bottom:6px;}
.site-footer a{color:var(--blue);}
.site-footer a:hover{color:var(--blue-dark);}
.test-mode-note{color:var(--blue) !important;font-weight:600;}

@media(max-width:800px){
  .category-grid{grid-template-columns:repeat(3,1fr);}
  .product-grid{grid-template-columns:repeat(2,1fr);}
  .product-detail{grid-template-columns:1fr;}
  .main-nav{display:none;}
  .trust-row{flex-direction:column;}
  .trust-item{border-left:none;border-top:1px solid var(--line);}
  .trust-item:first-child{border-top:none;}
}
