/* ── Hero Section ──────────────────────────────────────────────────────── */
.hero-section{position:relative;width:100%;height:520px;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center center;background-repeat:no-repeat;}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,0.20),rgba(0,0,0,0.72));}
.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 24px;}
.hero-badge{display:inline-block;background:rgba(127,187,66,0.22);color:#a8e065;border:1px solid rgba(127,187,66,0.35);border-radius:20px;padding:4px 14px;font-size:13px;font-weight:600;margin-bottom:14px;}
.hero-title{font-size:clamp(24px,4vw,48px);font-weight:700;color:#fff;line-height:1.2;margin-bottom:12px;text-shadow:0 2px 12px rgba(0,0,0,0.4);}
.hero-subtitle{font-size:clamp(13px,1.8vw,18px);color:rgba(255,255,255,0.78);max-width:560px;line-height:1.7;margin-bottom:24px;}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:28px;}
.hero-section .btn-primary{padding:12px 28px;background:#7FBB42;color:#fff;border-radius:8px;font-size:15px;font-weight:600;text-decoration:none;}
.hero-section .btn-primary:hover{opacity:0.88;}
.hero-section .btn-secondary{padding:12px 28px;background:rgba(255,255,255,0.10);border:1.5px solid rgba(255,255,255,0.40);color:#fff;border-radius:8px;font-size:15px;text-decoration:none;}
.hero-section .btn-secondary:hover{background:rgba(255,255,255,0.20);}
.hero-stats{display:flex;border-top:1px solid rgba(255,255,255,0.12);padding-top:20px;width:100%;max-width:480px;}
.hero-stats .stat{flex:1;text-align:center;border-right:1px solid rgba(255,255,255,0.10);}
.hero-stats .stat:last-child{border-right:none;}
.hero-stats strong{display:block;color:#fff;font-size:17px;font-weight:700;}
.hero-stats span{color:rgba(255,255,255,0.50);font-size:10px;text-transform:uppercase;letter-spacing:0.05em;}
@media(max-width:768px){
  .hero-section{height:460px;}
  .hero-content{padding:28px 18px;}
  .hero-buttons{flex-direction:column;align-items:center;}
  .hero-section .btn-primary,.hero-section .btn-secondary{width:100%;max-width:280px;text-align:center;display:block;}
  .hero-stats{max-width:100%;}
  .hero-stats strong{font-size:14px;}
}
@media(max-width:480px){
  .hero-section{height:420px;}
  .hero-stats span{font-size:9px;}
}

/* ── Other widgets ─────────────────────────────────────────────────────── */
.wsl-box{ background:#fff; border:1px solid #eee; border-radius:16px; padding:20px; }
.wsl-product-grid .wsl-card{ border:1px solid #eee; border-radius:14px; padding:14px; display:flex; flex-direction:column; gap:8px; }
.wsl-card-media img{ width:100%; height:auto; display:block; border-radius:12px; }
.wsl-title{ font-size:16px; line-height:1.3; margin:6px 0; }
.wsl-price{ font-weight:600; }
.wsl-btn{ display:inline-block; padding:10px 14px; border-radius:10px; border:1px solid #111; text-decoration:none; }
.wsl-testimonial-grid{ display:grid; gap:16px; grid-template-columns:repeat(3,1fr); }
@media (max-width: 1024px){ .wsl-testimonial-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width: 767px){ .wsl-testimonial-grid{ grid-template-columns:1fr; } }