:root{
  --sl-bg:#ffffff;
  --sl-mute:#f7f7f7;
  --sl-ink:#000000;
  --sl-soft:#666666;
  --sl-line:#e6e6e6;
  --sl-field:#f5f5f5;
  --sl-green:#049b6e;
  --sl-radius:2rem;
  --sl-btn-radius:2.4rem;
  --sl-card-radius:1.2rem;
  --sl-font:'Poppins',system-ui,sans-serif;
  --sl-pad:1.5rem;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--sl-bg); color:var(--sl-ink);
  font-family:var(--sl-font); font-weight:400; line-height:1.6; letter-spacing:.01em;
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
h1,h2,h3{font-family:var(--sl-font); font-weight:700; line-height:1.15; margin:0 0 .5em; letter-spacing:-.02em}
.sl-kicker{font-weight:600; text-transform:uppercase; letter-spacing:.18em; font-size:.72rem; color:var(--sl-soft); margin:0 0 .7em}
.sl-wrap{max-width:1180px; margin:0 auto; padding:0 var(--sl-pad)}
.sl-btn{display:inline-block; padding:.9em 1.7em; border:1px solid var(--sl-ink); border-radius:var(--sl-btn-radius); font-weight:600; font-size:.9rem; transition:.2s}
.sl-btn-fill{background:var(--sl-ink); color:#fff}
.sl-btn-fill:hover{background:#333}
.sl-btn:hover{transform:translateY(-1px)}

.sl-marquee{overflow:hidden; background:#000; color:#fff; font-size:.78rem; font-weight:500; letter-spacing:.06em}
.sl-marquee-track{display:flex; gap:1.4rem; white-space:nowrap; padding:.55em 0; animation:sl-scroll 28s linear infinite}
.sl-marquee i{opacity:.45; font-style:normal}
@keyframes sl-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.sl-head{display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px var(--sl-pad); position:sticky; top:0; z-index:20; background:#fff; border-bottom:1px solid var(--sl-line)}
.sl-menu-btn{display:none; border:0; background:none; font-size:1.4rem; cursor:pointer}
.sl-brand{display:flex; align-items:center; gap:10px}
.sl-brand-mark{width:36px; height:36px; object-fit:contain}
.sl-brand-name{font-weight:700; font-size:1.15rem; letter-spacing:.04em; text-transform:uppercase}
.sl-nav{display:flex; gap:22px; font-size:.88rem; font-weight:500}
.sl-nav a{color:#111}
.sl-nav a:hover{opacity:.6}
.sl-drop{position:relative}
.sl-mega{display:none; position:absolute; left:0; top:100%; background:#fff; border:1px solid var(--sl-line); border-radius:16px; padding:18px 22px; min-width:520px; grid-template-columns:repeat(3,1fr); gap:16px; box-shadow:0 18px 50px rgba(0,0,0,.08); z-index:30}
.sl-drop:hover .sl-mega,.sl-drop:focus-within .sl-mega{display:grid}
.sl-mega p{margin:0 0 8px; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--sl-soft)}
.sl-mega a{display:block; padding:.28em 0; font-weight:500}
.sl-tools{display:flex; align-items:center; gap:8px}
.sl-cart{font-size:.86rem; border:1px solid var(--sl-ink); padding:.48em 1em; border-radius:999px}
.sl-cart-n{margin-left:.3em; font-weight:700}
.sl-checkout{font-size:.86rem; background:#000; color:#fff; padding:.48em 1.05em; border-radius:999px}
.sl-checkout.is-empty{background:transparent; color:#000; border:1px solid #000; opacity:.5}
.sl-announce{background:var(--sl-mute); text-align:center; padding:.5em 16px; font-size:.8rem; font-weight:500}

.sl-hero{position:relative; height:420px; overflow:hidden; background:#111}
.sl-hero img{width:100%; height:100%; object-fit:cover; opacity:.72}
.sl-hero-copy{position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:0 40px 42px; max-width:780px; color:#fff; background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.05) 70%)}
.sl-hero-copy .sl-kicker{color:#fff}
.sl-hero-copy h1{font-size:2.55rem; margin-bottom:.35em; letter-spacing:-.03em}
.sl-hero-copy p{max-width:540px; color:rgba(255,255,255,.9)}
.sl-hero-cta{display:flex; flex-wrap:wrap; gap:10px; margin-top:1.1em}
.sl-hero-copy .sl-btn{border-color:#fff; color:#fff}
.sl-btn-ghost{background:transparent; color:#fff}
.sl-btn-ghost:hover{background:#fff; color:#000}

.sl-why{padding:56px 0 28px; background:var(--sl-mute); border-bottom:1px solid var(--sl-line)}
.sl-why h2{font-size:1.9rem; max-width:18ch}
.sl-why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:28px}
.sl-why-grid article{background:#fff; border:1px solid var(--sl-line); border-radius:18px; padding:20px 20px 16px}
.sl-why-grid b{display:block; font-size:1.02rem; margin-bottom:.45em}
.sl-why-grid p{margin:0; color:var(--sl-soft); font-size:.92rem}

.sl-albums{display:grid; grid-template-columns:repeat(4,1fr); gap:10px; padding:18px var(--sl-pad)}
.sl-album{position:relative; height:240px; overflow:hidden; border-radius:var(--sl-card-radius)}
.sl-album img{width:100%; height:100%; object-fit:cover; transition:.4s}
.sl-album:hover img{transform:scale(1.04)}
.sl-album div{position:absolute; inset:auto 0 0 0; padding:16px; background:linear-gradient(0deg,rgba(0,0,0,.62),transparent)}
.sl-album .sl-kicker,.sl-album h2{color:#fff}
.sl-album h2{font-size:1.05rem; font-weight:600}

.sl-section{padding:56px 0 12px}
.sl-sec-head{display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap}
.sl-sec-title{font-size:2rem}
.sl-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:28px}
.sl-card{display:block; position:relative}
.sl-card-media{display:block; aspect-ratio:1/1; overflow:hidden; border-radius:var(--sl-card-radius); background:var(--sl-mute); border:1px solid var(--sl-line)}
.sl-card-media img{width:100%!important; height:100%!important; object-fit:cover!important}
.sl-card-badge{position:absolute; top:12px; left:12px; background:#000; color:#fff; font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; padding:.35em .65em; border-radius:999px}
.sl-card-row{display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-top:12px}
.sl-card h3{font-size:.98rem; font-weight:600; margin:0}
.sl-meta{color:var(--sl-soft); font-size:.9rem; margin:0; white-space:nowrap}

.sl-steps{padding:56px 0; background:#111; color:#fff; margin-top:28px}
.sl-steps .sl-kicker{color:#bbb}
.sl-steps h2{font-size:2rem; max-width:16ch}
.sl-steps-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:28px 0 36px; padding:0; list-style:none}
.sl-steps-grid li{border:1px solid #2a2a2a; border-radius:16px; padding:18px 16px; background:#181818}
.sl-steps-grid b{display:block; margin-bottom:.5em}
.sl-steps-grid p{margin:0; color:#bbb; font-size:.9rem}
.sl-split{display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:center; padding:48px 0}
.sl-split-tight{padding:0}
.sl-split-media{border-radius:var(--sl-radius); overflow:hidden; background:var(--sl-mute)}
.sl-split-media img{width:100%; height:280px; object-fit:cover}
.sl-split-copy h2{font-size:2rem}
.sl-split-copy p{color:#ccc}
.sl-quotes{padding:56px 0 10px}
.sl-quote-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:24px}
.sl-quote-grid blockquote{margin:0; border:1px solid var(--sl-line); border-radius:18px; padding:22px 20px; background:var(--sl-mute)}
.sl-quote-grid p{margin:0 0 12px; font-size:1.02rem}
.sl-quote-grid cite{font-style:normal; font-size:.78rem; color:var(--sl-soft); letter-spacing:.04em}

.sl-faq{padding:20px 0 70px; max-width:760px}
.sl-faq h2{font-size:1.8rem; margin-bottom:12px}
.sl-faq details{border-top:1px solid var(--sl-line); padding:14px 0}
.sl-faq details:last-child{border-bottom:1px solid var(--sl-line)}
.sl-faq summary{cursor:pointer; font-weight:600; list-style:none; display:flex; justify-content:space-between}
.sl-faq summary::after{content:'+'; font-weight:400}
.sl-faq details[open] summary::after{content:'−'}
.sl-faq p{color:var(--sl-soft); margin:.7em 0 0}

.sl-page{padding:56px 0 80px}
.sl-article{max-width:760px; margin:0 auto}
.sl-page-title{font-size:2.3rem}
.sl-entry{font-size:1.02rem}
.sl-entry h2{font-size:1.4rem; margin-top:1.5em}
.sl-entry p{margin:0 0 1em}
.sl-entry ul,.sl-entry ol{margin:0 0 1.1em; padding-left:1.15em}
.sl-entry a{text-decoration:underline}

.sl-archive{padding:40px 0 80px}
.sl-wrap-head{margin-bottom:8px}

.sl-crumb{font-size:.8rem; color:var(--sl-soft); padding:16px var(--sl-pad) 0}
.sl-crumb a{color:#000; font-weight:500}
.sl-crumb span{margin:0 .35em; opacity:.5}

.sl-pdp{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:48px; align-items:start; padding:28px var(--sl-pad) 60px}
.sl-pdp-media{position:sticky; top:78px}
.sl-pdp-title{font-size:2rem}
.sl-pdp-price{display:flex; align-items:center; gap:12px; margin:.2em 0 1em}
.sl-price-now{font-size:1.45rem; font-weight:700}
.sl-price-now del{color:var(--sl-soft); font-weight:400; font-size:1rem; margin-right:8px}
.sl-sale-tag{background:#000; color:#fff; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; padding:.35em .7em; border-radius:999px}
.sl-from{font-size:.86rem; color:var(--sl-soft); margin:-.4em 0 1em}
.sl-pdp-desc{color:var(--sl-soft); margin-bottom:14px}
.sl-offers{border:1px solid var(--sl-line); border-radius:16px; padding:12px 14px; margin:0 0 16px; background:var(--sl-mute)}
.sl-offers-h{font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; margin:0 0 8px; font-weight:600}
.sl-offer{display:flex; align-items:center; gap:8px; padding:8px 4px; font-size:.92rem}
.sl-offer.is-on{font-weight:600}
.sl-offer small{color:var(--sl-soft); margin-left:auto}
.sl-shipnote{font-size:.86rem; background:var(--sl-mute); border-radius:12px; padding:.7em 1em; margin:12px 0}
.sl-trust{display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin:8px 0 18px}
.sl-trust-i{border:1px solid var(--sl-line); border-radius:14px; padding:12px 8px; text-align:center; background:#fff}
.sl-trust-i b{display:block; font-size:1.05rem; margin-bottom:4px}
.sl-trust-i span{font-size:.72rem; color:var(--sl-soft); line-height:1.25}

.sl-acc details{border-top:1px solid var(--sl-line); padding:13px 0}
.sl-acc details:last-child{border-bottom:1px solid var(--sl-line)}
.sl-acc summary{cursor:pointer; font-weight:600; list-style:none; display:flex; justify-content:space-between}
.sl-acc summary::after{content:'+'}
.sl-acc details[open] summary::after{content:'−'}
.sl-acc-body{padding:10px 0 2px; color:var(--sl-soft); font-size:.95rem}
.sl-acc-body ol{padding-left:1.15em}
.sl-acc-body a{color:#000; text-decoration:underline}
.sl-specs{width:100%; border-collapse:collapse}
.sl-specs td{padding:8px 4px; border-bottom:1px solid var(--sl-line); font-size:.9rem}
.sl-specs td:first-child{width:110px; color:#000; font-weight:600}
.sl-pay{display:flex; justify-content:space-between; gap:10px; margin-top:18px; font-size:.78rem; color:var(--sl-soft); flex-wrap:wrap}

.pdp-gallery{display:flex; flex-direction:column; gap:12px}
.pdp-gallery-stage{background:var(--sl-mute); border-radius:var(--sl-radius); overflow:hidden; border:1px solid var(--sl-line)}
.pdp-gallery-stage img{width:100%; height:auto; display:block}
.pdp-gallery-thumbs{display:flex; gap:10px; flex-wrap:wrap}
.pdp-gallery-thumb{width:78px; height:78px; padding:0; border:1px solid var(--sl-line); border-radius:12px; overflow:hidden; background:#fff; cursor:pointer}
.pdp-gallery-thumb img{width:100%; height:100%; object-fit:cover; display:block}
.pdp-gallery-thumb.is-active{border-color:#000; box-shadow:0 0 0 2px #000}

.sl-buy .cart{display:flex; flex-wrap:wrap; gap:12px; align-items:center}
.sl-buy .quantity{display:inline-flex; border:1px solid #000; border-radius:999px; overflow:hidden}
.sl-buy .quantity .qty{width:64px; border:0; text-align:center; font-size:1rem; padding:.55em 0; background:none; font-family:inherit}
.sl-buy .single_add_to_cart_button{flex:1; min-width:180px; border-radius:999px; padding:1em; background:#000; color:#fff; border:1px solid #000; font-family:inherit; font-weight:600; cursor:pointer}
.sl-buy .single_add_to_cart_button:hover{background:#333}
.woocommerce-tabs,.wc-tabs-wrapper,.related.products{display:none!important}
.variations select,.pdp-native-select{position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; border:0!important}
.pdp-swatches{margin:0 0 12px}
.pdp-swatches-caption{font-size:.75rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; margin-bottom:8px}
.pdp-swatches-row{display:flex; flex-wrap:wrap; gap:8px}
.pdp-swatch{border:1px solid var(--sl-line); background:#fff; border-radius:999px; padding:.45em 1em; cursor:pointer; font-family:inherit; font-size:.88rem}
.pdp-swatch.is-active{border-color:#000; box-shadow:0 0 0 2px #000}

.sl-foot{background:#000; color:#fff; margin-top:40px}
.sl-foot-grid{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:28px; max-width:1180px; margin:0 auto; padding:52px var(--sl-pad) 28px}
.sl-foot-brand{font-weight:700; font-size:1.2rem; letter-spacing:.06em; text-transform:uppercase; margin:0 0 .4em}
.sl-foot-tag{color:#bbb; font-size:.9rem}
.sl-foot-h{font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:#888; margin:0 0 .7em}
.sl-foot a{display:block; color:#ddd; font-size:.9rem; padding:.22em 0}
.sl-foot a:hover{color:#fff}
.sl-foot-base{display:flex; justify-content:space-between; gap:8px; border-top:1px solid #222; max-width:1180px; margin:0 auto; padding:16px var(--sl-pad) 22px; font-size:.78rem; color:#888}

.reveal{opacity:0; transform:translateY(14px); transition:opacity .55s ease,transform .55s ease}
.reveal.in{opacity:1; transform:none}

.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{
  max-width:980px; margin:30px auto 80px; padding:0 var(--sl-pad)
}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:#000!important; color:#fff!important; border-radius:999px!important
}

@media (max-width:900px){
  .sl-menu-btn{display:block}
  .sl-nav{display:none; position:absolute; left:0; right:0; top:100%; background:#fff; flex-direction:column; padding:12px 18px 18px; border-bottom:1px solid var(--sl-line)}
  body.sl-nav-open .sl-nav{display:flex}
  .sl-mega{position:static; display:grid; min-width:0; box-shadow:none; border:0; padding:8px 0}
  .sl-albums{grid-template-columns:repeat(2,1fr)}
  .sl-album{height:170px}
  .sl-grid{grid-template-columns:repeat(2,1fr); gap:14px}
  .sl-pdp{grid-template-columns:1fr; gap:20px}
  .sl-pdp-media{position:static}
  .sl-split{grid-template-columns:1fr}
  .sl-foot-grid{grid-template-columns:1fr 1fr}
  .sl-hero{height:280px; border-radius:0}
  .sl-hero-copy{padding:0 20px 24px; background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 70%)}
  .sl-hero-copy h1{font-size:1.55rem}
  .sl-why-grid,.sl-steps-grid,.sl-quote-grid{grid-template-columns:1fr 1fr}
  .sl-trust{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:520px){
  .sl-grid{grid-template-columns:1fr}
  .sl-foot-grid{grid-template-columns:1fr}
  .sl-why-grid,.sl-steps-grid,.sl-quote-grid{grid-template-columns:1fr}
}
