:root{
  --black:#0a0a0a;--white:#fff;--yellow:#ffd500;--gray:#f3f3f3;
  --page:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--black);background:var(--white);line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.page-width{width:min(calc(100% - 36px),var(--page));margin-inline:auto}
.narrow{max-width:850px}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:#fff;padding:12px;z-index:99}
.announcement{background:var(--yellow);color:#000;text-align:center;font-weight:800;padding:9px 0;font-size:14px}
.site-header{background:#050505;color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #222}
.header-grid{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.brand{font-weight:950;letter-spacing:1px;font-size:24px}.brand-domain{color:var(--yellow)}
.brand-logo{max-height:52px;width:auto}
.desktop-nav{display:flex;gap:30px;font-weight:700}.desktop-nav a:hover{color:var(--yellow)}
.cart-link{justify-self:end;font-weight:700}
.hero{min-height:680px;background:#080808;color:#fff;display:grid;place-items:center;position:relative;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.15))}
.hero-content{position:relative;z-index:2}
.hero h1{font-size:clamp(52px,9vw,120px);line-height:.9;max-width:850px;margin:10px 0 25px;letter-spacing:-4px}
.hero p{font-size:20px;max-width:600px}
.eyebrow{font-weight:900;letter-spacing:3px;color:#b68f00;font-size:13px}
.button{display:inline-block;border:2px solid #111;background:#111;color:#fff;padding:15px 24px;font-weight:900;text-transform:uppercase;cursor:pointer}
.button-yellow{background:var(--yellow);color:#000;border-color:var(--yellow)}
.button:hover{transform:translateY(-1px)}
.full-width{width:100%;margin-top:20px}
.icon-strip{background:var(--yellow);padding:25px 0}
.icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}
.icon-grid strong,.icon-grid span{display:block}.icon-grid strong{font-size:17px;text-transform:uppercase}
.section{padding:80px 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}
.section-heading h2{font-size:clamp(34px,5vw,64px);margin:5px 0;max-width:800px;line-height:1}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.product-card{transition:.2s}.product-card:hover{transform:translateY(-4px)}
.product-image{aspect-ratio:4/5;background:#eee;overflow:hidden}.product-image img,.product-image svg{width:100%;height:100%;object-fit:cover}
.product-card h3{font-size:19px;margin:15px 0 6px}.price{font-weight:900}
.placeholder{background:linear-gradient(135deg,#111 50%,#fff 50%)}
.product-page{display:grid;grid-template-columns:1.25fr .75fr;gap:60px}
.product-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px}.product-gallery img{background:#eee}
.product-info{position:sticky;top:110px;align-self:start}.product-info h1{font-size:48px;line-height:1;margin:10px 0}
.product-price{font-size:25px;font-weight:900}
.product-info label{display:block;font-weight:800;margin:18px 0 7px}
.product-info select,.product-info input[type=number],.newsletter-row input{width:100%;padding:14px;border:1px solid #aaa;background:#fff}
.product-benefits{padding-left:20px;margin-top:28px}
.cart-item{display:grid;grid-template-columns:90px 1fr 90px 120px;gap:20px;align-items:center;border-bottom:1px solid #ddd;padding:18px 0}
.cart-total{text-align:right;font-size:24px;font-weight:900;padding:25px 0}
.site-footer{background:#070707;color:#fff;padding:60px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:50px}
.footer-grid a{display:block;margin:7px 0;color:#ccc}
.newsletter-row{display:flex}.newsletter-row input{border:0}.newsletter-row button{background:var(--yellow);border:0;font-weight:900;padding:0 20px}
.copyright{border-top:1px solid #333;margin-top:40px;padding-top:20px;color:#aaa}
@media(max-width:900px){
 .header-grid{grid-template-columns:1fr auto}.desktop-nav{display:none}.hero{min-height:560px}.hero h1{letter-spacing:-2px}
 .icon-grid,.product-grid{grid-template-columns:1fr 1fr}.product-page{grid-template-columns:1fr}.product-info{position:static}
 .footer-grid{grid-template-columns:1fr}.product-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .page-width{width:min(calc(100% - 24px),var(--page))}.brand{font-size:19px}.cart-link{font-size:13px}
 .hero{min-height:500px}.hero h1{font-size:54px}.hero p{font-size:17px}
 .icon-grid,.product-grid{grid-template-columns:1fr}.section{padding:55px 0}.product-gallery{grid-template-columns:1fr}
 .cart-item{grid-template-columns:70px 1fr}.cart-item input,.cart-item>strong{grid-column:2}
}