/* White & Black theme */
:root{
  --bg:#ffffff;
  --text:#0b0b0b;
  --muted:#444;
  --accent:#000;
  --container:1100px;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;color:var(--text);background:var(--bg);line-height:1.6}
.container{max-width:var(--container);margin:0 auto;padding:1rem}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.brand{font-weight:700;text-decoration:none;color:var(--accent);font-size:1.1rem}
.nav a{margin-left:1rem;text-decoration:none;color:var(--text)}
.site-header{border-bottom:1px solid #eee;background:transparent}
.hero{padding:0}
.carousel{position:relative;overflow:hidden;background:#000}
.slides{position:relative;height:420px}
.slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .6s ease-in-out}
.slide.active{opacity:1;position:relative}
.slide img{width:100%;height:420px;object-fit:cover;filter:brightness(.6)}
.slide figcaption{position:absolute;left:2rem;bottom:2rem;color:#fff}
.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.1);border:0;padding:.6rem 1rem;font-size:1.6rem;color:#fff;cursor:pointer}
.carousel-btn.prev{left:1rem}
.carousel-btn.next{right:1rem}
.dots{position:absolute;left:50%;transform:translateX(-50%);bottom:1rem;display:flex;gap:.5rem}
.dots button{width:10px;height:10px;border-radius:50%;border:0;opacity:.6}
.intro{padding:2rem 1rem}
.cta{display:inline-block;padding:.6rem 1rem;border:1px solid #000;text-decoration:none;color:#000;border-radius:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;list-style:none;padding:0}
.grid li{border:1px solid #eee;padding:1rem;background:#fafafa}
.product-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.product{border:1px solid #eee;padding:1rem;background:#fff}
.contact-form{display:grid;gap:.6rem;max-width:600px}
.contact-form input,.contact-form textarea{padding:.6rem;border:1px solid #ccc;border-radius:6px}
.contact-form button{padding:.6rem 1rem;border:0;background:#000;color:#fff;border-radius:6px;cursor:pointer}
.site-footer{border-top:1px solid #eee;padding:1rem 0;margin-top:2rem;background:transparent}
.small-nav a{color:var(--muted);text-decoration:none;margin-left:.5rem}
@media (max-width:700px){
  .slides{height:260px}
  .slide img{height:260px;object-position:center}
}
