/* ═══════════════════════════════════════════════════════════════
   SISTEMA DE CORRIDAS — Landing Page
   Assessoria Superando Limites
   Copyright © Daniel Silva 2026
═══════════════════════════════════════════════════════════════ */

/* ── Variáveis ────────────────────────────────────────────────── */
:root {
  --sl-green:       #1a7a1a;
  --sl-green-l:     #2d9e2d;
  --sl-green-xl:    #3dbf3d;
  --sl-green-pale:  #e8f5e8;
  --sl-yellow:      #f5c400;
  --sl-yellow-d:    #c49a00;
  --sl-blue:        #1e9ad6;
  --sl-blue-d:      #0d7ab5;
  --sl-dark:        #0a0e1a;
  --sl-dark2:       #111827;
  --sl-dark3:       #1c2536;
  --sl-dark4:       #243047;
  --sl-text:        #f1f5f9;
  --sl-text2:       #94a3b8;
  --sl-text3:       #64748b;
  --sl-white:       #ffffff;
  --sl-border:      rgba(255,255,255,.08);
  --sl-font:        -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --sl-r:           12px;
  --sl-r-lg:        20px;
  --sl-shadow:      0 4px 24px rgba(0,0,0,.3);
  --sl-shadow-lg:   0 12px 48px rgba(0,0,0,.4);
}

/* ── Base ─────────────────────────────────────────────────────── */
.sl-home *{box-sizing:border-box;margin:0;padding:0}
.sl-home{font-family:var(--sl-font);color:var(--sl-text);background:var(--sl-dark);line-height:1.6;overflow-x:hidden}
.sl-home a{text-decoration:none;color:inherit}
.sl-home img{max-width:100%;height:auto}
.sl-section{padding:80px 0}
.sl-container{max-width:1400px;margin:0 auto;padding:0 32px}
.sl-section-label{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sl-green-xl);margin-bottom:10px}
.sl-section-title{font-size:clamp(1.6rem,3.5vw,2.6rem);font-weight:800;color:var(--sl-white);line-height:1.2;margin-bottom:14px}
.sl-section-sub{font-size:1rem;color:var(--sl-text2);max-width:560px;line-height:1.7}
.sl-center{text-align:center}
.sl-center .sl-section-sub{margin:0 auto}

/* ── Navbar ───────────────────────────────────────────────────── */
.sl-nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(10,14,26,.85);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--sl-border);
  height:64px;
  display:flex;align-items:center;
  transition:background .3s;
}
.sl-nav-inner{display:flex;align-items:center;gap:0;width:100%;max-width:1400px;margin:0 auto;padding:0 32px}
.sl-nav-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-right:32px}
.sl-nav-logo img{height:36px;width:auto}
.sl-nav-logo-text{display:flex;flex-direction:column;line-height:1}
.sl-nav-logo-name{font-size:.8rem;font-weight:800;color:var(--sl-yellow);letter-spacing:.06em;text-transform:uppercase}
.sl-nav-logo-sub{font-size:.6rem;color:var(--sl-text3)}
.sl-nav-links{display:flex;align-items:center;gap:4px;flex:1}
.sl-nav-link{font-size:.82rem;color:var(--sl-text2);padding:6px 10px;border-radius:6px;transition:.15s;white-space:nowrap}
.sl-nav-link:hover{color:var(--sl-white);background:rgba(255,255,255,.06)}
.sl-nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}
.sl-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--sl-r);font-size:.85rem;font-weight:600;cursor:pointer;transition:.15s;border:none;font-family:var(--sl-font)}
.sl-btn-ghost{background:transparent;color:var(--sl-text2);border:1px solid var(--sl-border)}
.sl-btn-ghost:hover{color:var(--sl-white);border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.05)}
.sl-btn-outline{background:transparent;color:var(--sl-white);border:1px solid rgba(255,255,255,.2)}
.sl-btn-outline:hover{background:rgba(255,255,255,.06)}
.sl-btn-green{background:var(--sl-green);color:#fff}
.sl-btn-green:hover{background:var(--sl-green-l);transform:translateY(-1px);box-shadow:0 4px 16px rgba(26,122,26,.4)}
.sl-btn-yellow{background:var(--sl-yellow);color:var(--sl-dark);font-weight:800}
.sl-btn-yellow:hover{background:#ffe033;transform:translateY(-1px);box-shadow:0 4px 16px rgba(245,196,0,.35)}
.sl-btn-lg{padding:13px 28px;font-size:.95rem;border-radius:var(--sl-r-lg)}
.sl-btn-xl{padding:16px 36px;font-size:1.05rem;border-radius:var(--sl-r-lg)}
.sl-hamburger{display:none;background:none;border:none;color:var(--sl-text);cursor:pointer;font-size:1.4rem;padding:4px 8px}

/* ── Hero ─────────────────────────────────────────────────────── */
.sl-hero{
  min-height:100vh;
  display:flex;align-items:center;
  position:relative;
  overflow:hidden;
  padding-top:64px;
}
.sl-hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 80% 60% at 60% 40%, rgba(26,122,26,.18) 0%, transparent 70%),
    radial-gradient(ellipse 50% 40% at 20% 70%, rgba(30,154,214,.1) 0%, transparent 60%),
    linear-gradient(160deg, #060a14 0%, #0a1220 40%, #0d1a14 100%);
  z-index:0;
}
.sl-hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(26,122,26,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(26,122,26,.05) 1px, transparent 1px);
  background-size:60px 60px;
  z-index:0;
}
.sl-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:60px 0}
.sl-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(26,122,26,.15);border:1px solid rgba(26,122,26,.3);border-radius:20px;padding:5px 14px;font-size:.72rem;font-weight:700;color:var(--sl-green-xl);letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px}
.sl-hero-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--sl-green-xl);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.sl-hero-title{font-size:clamp(2rem,4.5vw,3.6rem);font-weight:900;color:var(--sl-white);line-height:1.1;margin-bottom:16px;letter-spacing:-.02em}
.sl-hero-title em{font-style:normal;color:var(--sl-green-xl)}
.sl-hero-sub{font-size:1.05rem;color:var(--sl-text2);line-height:1.7;margin-bottom:28px;max-width:480px}
.sl-hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px}
.sl-hero-trust{display:flex;align-items:center;gap:12px;color:var(--sl-text3);font-size:.78rem}
.sl-hero-trust-avatars{display:flex}
.sl-hero-trust-av{width:28px;height:28px;border-radius:50%;border:2px solid var(--sl-dark);background:var(--sl-dark3);margin-left:-8px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:var(--sl-green-xl)}
.sl-hero-trust-av:first-child{margin-left:0}
.sl-hero-visual{position:relative}
.sl-hero-card{background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r-lg);padding:20px;margin-bottom:12px;backdrop-filter:blur(8px)}
.sl-hero-card-label{font-size:.68rem;color:var(--sl-text3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.sl-hero-card-val{font-size:1.8rem;font-weight:800;color:var(--sl-white);line-height:1}
.sl-hero-card-sub{font-size:.75rem;color:var(--sl-green-xl);margin-top:3px}
.sl-hero-card-pace{display:flex;gap:8px;margin-top:8px}
.sl-hero-card-zone{flex:1;background:rgba(255,255,255,.04);border-radius:6px;padding:6px 8px;font-size:.7rem;text-align:center}
.sl-hero-card-zone-name{color:var(--sl-text3);margin-bottom:2px}
.sl-hero-card-zone-pace{font-weight:700;color:var(--sl-white)}
.sl-hero-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sl-hero-mini-card{background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r);padding:12px}
.sl-hero-mini-val{font-size:1.3rem;font-weight:800;color:var(--sl-white)}
.sl-hero-mini-lbl{font-size:.7rem;color:var(--sl-text3);margin-top:2px}
.sl-treino-card-preview{background:var(--sl-dark2);border:1px solid var(--sl-border);border-radius:var(--sl-r);padding:14px;border-top:3px solid var(--sl-green)}
.sl-treino-preview-nome{font-size:.95rem;font-weight:700;color:var(--sl-white);margin-bottom:6px}
.sl-treino-preview-meta{display:flex;gap:8px;flex-wrap:wrap}
.sl-treino-preview-chip{font-size:.7rem;padding:2px 8px;border-radius:6px;background:rgba(26,122,26,.15);color:var(--sl-green-xl);border:1px solid rgba(26,122,26,.2)}

/* ── Números / Counters ───────────────────────────────────────── */
.sl-counters{padding:48px 0;background:var(--sl-dark2);border-top:1px solid var(--sl-border);border-bottom:1px solid var(--sl-border)}
.sl-counters-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--sl-border)}
.sl-counter{background:var(--sl-dark2);padding:32px 24px;text-align:center;transition:.2s}
.sl-counter:hover{background:var(--sl-dark3)}
.sl-counter-val{font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--sl-white);line-height:1;display:flex;align-items:baseline;justify-content:center;gap:2px}
.sl-counter-plus{font-size:1.5rem;color:var(--sl-green-xl)}
.sl-counter-label{font-size:.8rem;color:var(--sl-text2);margin-top:6px}

/* ── Como Funciona ────────────────────────────────────────────── */
.sl-steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--sl-border);border-radius:var(--sl-r-lg);overflow:hidden;margin-top:48px}
.sl-step{background:var(--sl-dark2);padding:32px 24px;position:relative;transition:.2s}
.sl-step:hover{background:var(--sl-dark3)}
.sl-step::after{content:'›';position:absolute;right:-8px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--sl-text3);z-index:1}
.sl-step:last-child::after{display:none}
.sl-step-num{width:40px;height:40px;border-radius:10px;background:rgba(26,122,26,.15);border:1px solid rgba(26,122,26,.3);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:900;color:var(--sl-green-xl);margin-bottom:16px}
.sl-step-title{font-size:1rem;font-weight:700;color:var(--sl-white);margin-bottom:8px}
.sl-step-text{font-size:.82rem;color:var(--sl-text2);line-height:1.6}

/* ── Recursos ─────────────────────────────────────────────────── */
.sl-features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.sl-feature{background:var(--sl-dark2);border:1px solid var(--sl-border);border-radius:var(--sl-r-lg);padding:24px;transition:.2s;cursor:default}
.sl-feature:hover{background:var(--sl-dark3);border-color:rgba(26,122,26,.3);transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,.3)}
.sl-feature-icon{width:44px;height:44px;border-radius:10px;background:rgba(26,122,26,.12);border:1px solid rgba(26,122,26,.2);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:14px}
.sl-feature-title{font-size:.92rem;font-weight:700;color:var(--sl-white);margin-bottom:6px}
.sl-feature-text{font-size:.78rem;color:var(--sl-text2);line-height:1.6}

/* ── Análise Esportiva ────────────────────────────────────────── */
.sl-analise-section{background:var(--sl-dark2);border-top:1px solid var(--sl-border);border-bottom:1px solid var(--sl-border)}
.sl-analise-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.sl-analise-badges{display:flex;flex-direction:column;gap:10px;margin-top:28px}
.sl-analise-badge{display:flex;align-items:center;gap:12px;background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r);padding:12px 16px;transition:.15s}
.sl-analise-badge:hover{border-color:rgba(26,122,26,.3)}
.sl-analise-badge-icon{width:32px;height:32px;border-radius:8px;background:rgba(26,122,26,.15);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.sl-analise-badge-text{font-size:.82rem;color:var(--sl-text2)}
.sl-analise-badge-title{font-size:.88rem;font-weight:700;color:var(--sl-white);margin-bottom:1px}
.sl-analise-visual{position:relative}
.sl-analise-report{background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r-lg);padding:20px;overflow:hidden}
.sl-report-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--sl-border)}
.sl-report-icon{width:32px;height:32px;border-radius:8px;background:rgba(26,122,26,.2);display:flex;align-items:center;justify-content:center}
.sl-report-title{font-size:.88rem;font-weight:700;color:var(--sl-white)}
.sl-report-sub{font-size:.72rem;color:var(--sl-text3)}
.sl-report-msg{font-size:.78rem;color:var(--sl-text2);line-height:1.7;border-left:3px solid var(--sl-green);padding-left:10px;margin-bottom:14px}
.sl-chart-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.sl-chart-bar-label{font-size:.68rem;color:var(--sl-text3);width:60px;text-align:right;flex-shrink:0}
.sl-chart-bar-track{flex:1;height:6px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden}
.sl-chart-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--sl-green),var(--sl-green-xl))}
.sl-chart-bar-val{font-size:.68rem;color:var(--sl-text3);width:36px;flex-shrink:0}

/* ── Distâncias de prova ──────────────────────────────────────── */
.sl-distances-grid{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:48px}
.sl-distance{background:var(--sl-dark2);border:1px solid var(--sl-border);border-radius:var(--sl-r-lg);padding:28px 24px;text-align:center;min-width:120px;transition:.2s;cursor:default}
.sl-distance:hover{background:var(--sl-dark3);border-color:rgba(26,122,26,.4);transform:translateY(-3px);box-shadow:0 8px 32px rgba(0,0,0,.4)}
.sl-distance-km{font-size:2rem;font-weight:900;color:var(--sl-white);line-height:1}
.sl-distance-unit{font-size:.7rem;color:var(--sl-green-xl);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.sl-distance-text{font-size:.72rem;color:var(--sl-text3);margin-top:6px}

/* ── Depoimentos ──────────────────────────────────────────────── */
.sl-testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.sl-testimonial{background:var(--sl-dark2);border:1px solid var(--sl-border);border-radius:var(--sl-r-lg);padding:24px;transition:.15s}
.sl-testimonial:hover{border-color:rgba(26,122,26,.3)}
.sl-testimonial-stars{color:var(--sl-yellow);font-size:.85rem;margin-bottom:12px;letter-spacing:2px}
.sl-testimonial-text{font-size:.85rem;color:var(--sl-text2);line-height:1.7;font-style:italic;margin-bottom:16px}
.sl-testimonial-author{display:flex;align-items:center;gap:10px}
.sl-testimonial-avatar{width:40px;height:40px;border-radius:50%;background:var(--sl-dark3);border:2px solid var(--sl-green);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--sl-green-xl);flex-shrink:0;overflow:hidden}
.sl-testimonial-avatar img{width:100%;height:100%;object-fit:cover}
.sl-testimonial-name{font-size:.85rem;font-weight:700;color:var(--sl-white)}
.sl-testimonial-city{font-size:.72rem;color:var(--sl-text3)}

/* ── Comunidade / Aniversariantes ─────────────────────────────── */
.sl-community{background:var(--sl-dark2);border-top:1px solid var(--sl-border);border-bottom:1px solid var(--sl-border)}
.sl-community-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-top:48px}
.sl-bday-list{display:flex;flex-direction:column;gap:8px}
.sl-bday-item{display:flex;align-items:center;gap:10px;background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r);padding:10px 14px}
.sl-bday-av{width:36px;height:36px;border-radius:50%;background:var(--sl-dark4);border:2px solid var(--sl-green);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:var(--sl-green-xl);flex-shrink:0;overflow:hidden}
.sl-bday-av img{width:100%;height:100%;object-fit:cover}
.sl-bday-name{font-size:.85rem;font-weight:600;color:var(--sl-white)}
.sl-bday-date{font-size:.72rem;color:var(--sl-text3)}
.sl-bday-turma{font-size:.68rem;padding:1px 6px;border-radius:4px;background:rgba(30,154,214,.1);color:var(--sl-blue);border:1px solid rgba(30,154,214,.2);margin-left:auto;white-space:nowrap}
.sl-conquistas-list{display:flex;flex-direction:column;gap:8px}
.sl-conquista-item{display:flex;align-items:center;gap:10px;background:var(--sl-dark3);border:1px solid var(--sl-border);border-radius:var(--sl-r);padding:10px 14px}
.sl-conquista-icon{font-size:1.4rem;flex-shrink:0}
.sl-conquista-nome{font-size:.85rem;font-weight:600;color:var(--sl-white)}
.sl-conquista-desc{font-size:.72rem;color:var(--sl-text3)}
.sl-conquista-badge{font-size:.68rem;padding:1px 6px;border-radius:4px;background:rgba(245,196,0,.1);color:var(--sl-yellow);border:1px solid rgba(245,196,0,.2);margin-left:auto;white-space:nowrap}

/* ── CTA Final ────────────────────────────────────────────────── */
.sl-cta{
  padding:100px 0;
  background:
    radial-gradient(ellipse 70% 80% at 50% 50%, rgba(26,122,26,.15) 0%, transparent 70%),
    var(--sl-dark);
  text-align:center;
}
.sl-cta-title{font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--sl-white);margin-bottom:14px;letter-spacing:-.02em}
.sl-cta-sub{font-size:1rem;color:var(--sl-text2);max-width:500px;margin:0 auto 32px;line-height:1.7}
.sl-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── Rodapé ───────────────────────────────────────────────────── */
.sl-footer{background:var(--sl-dark2);border-top:1px solid var(--sl-border);padding:60px 0 0}
.sl-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--sl-border)}
.sl-footer-brand img{height:52px;width:auto;margin-bottom:14px}
.sl-footer-brand-name{font-size:.85rem;font-weight:700;color:var(--sl-yellow);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.sl-footer-brand-sub{font-size:.75rem;color:var(--sl-text3);margin-bottom:14px}
.sl-footer-brand-desc{font-size:.78rem;color:var(--sl-text2);line-height:1.65;max-width:280px}
.sl-footer-col-title{font-size:.75rem;font-weight:700;color:var(--sl-white);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}
.sl-footer-links{display:flex;flex-direction:column;gap:8px}
.sl-footer-link{font-size:.8rem;color:var(--sl-text2);transition:.15s}
.sl-footer-link:hover{color:var(--sl-green-xl)}
.sl-footer-social{display:flex;gap:8px;margin-top:14px}
.sl-social-btn{width:36px;height:36px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid var(--sl-border);display:flex;align-items:center;justify-content:center;font-size:.9rem;color:var(--sl-text2);transition:.15s}
.sl-social-btn:hover{background:rgba(26,122,26,.15);border-color:rgba(26,122,26,.3);color:var(--sl-green-xl)}
.sl-footer-contact{display:flex;flex-direction:column;gap:8px}
.sl-footer-contact-item{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--sl-text2)}
.sl-footer-contact-icon{width:24px;height:24px;border-radius:5px;background:rgba(26,122,26,.1);display:flex;align-items:center;justify-content:center;font-size:.7rem;flex-shrink:0}
.sl-footer-bottom{padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.sl-footer-copy{font-size:.72rem;color:var(--sl-text3)}
.sl-footer-copy a{color:var(--sl-text2)}
.sl-footer-copy a:hover{color:var(--sl-white)}

/* ── Mobile menu ──────────────────────────────────────────────── */
.sl-mobile-menu{
  display:none;position:fixed;inset:0;z-index:999;
  background:var(--sl-dark2);
  padding:80px 24px 40px;
  flex-direction:column;gap:6px;
  overflow-y:auto;
}
.sl-mobile-menu.open{display:flex}
.sl-mobile-link{font-size:1.1rem;color:var(--sl-text);padding:12px 0;border-bottom:1px solid var(--sl-border)}
.sl-mobile-link:hover{color:var(--sl-green-xl)}
.sl-mobile-btns{display:flex;flex-direction:column;gap:10px;margin-top:20px}

/* ── Animações ────────────────────────────────────────────────── */
.sl-fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.sl-fade-in.visible{opacity:1;transform:translateY(0)}
.sl-stagger-1{transition-delay:.1s}
.sl-stagger-2{transition-delay:.2s}
.sl-stagger-3{transition-delay:.3s}
.sl-stagger-4{transition-delay:.4s}

/* ── Responsivo ───────────────────────────────────────────────── */
@media(max-width:1024px){
  .sl-features-grid{grid-template-columns:repeat(2,1fr)}
  .sl-steps-grid{grid-template-columns:repeat(2,1fr)}
  .sl-step::after{display:none}
  .sl-hero-inner{grid-template-columns:1fr;gap:40px}
  .sl-hero-visual{display:none}
  .sl-analise-inner{grid-template-columns:1fr}
  .sl-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .sl-section{padding:56px 0}
  .sl-nav-links{display:none}
  .sl-nav-actions .sl-btn-ghost,.sl-nav-actions .sl-btn-outline{display:none}
  .sl-hamburger{display:block}
  .sl-counters-grid{grid-template-columns:repeat(2,1fr)}
  .sl-testimonials-grid{grid-template-columns:1fr}
  .sl-features-grid{grid-template-columns:1fr 1fr}
  .sl-distances-grid{gap:10px}
  .sl-distance{min-width:90px;padding:20px 14px}
  .sl-community-grid{grid-template-columns:1fr}
  .sl-footer-grid{grid-template-columns:1fr}
  .sl-footer-bottom{flex-direction:column;text-align:center}
  .sl-cta{padding:64px 0}
}
@media(max-width:480px){
  .sl-features-grid{grid-template-columns:1fr}
  .sl-steps-grid{grid-template-columns:1fr}
  .sl-hero-btns{flex-direction:column}
  .sl-cta-btns{flex-direction:column;align-items:center}
}

html{scroll-behavior:smooth}
[id]{scroll-margin-top:72px}

/* WP theme reset for landing (body class approach - all browsers) */
body.sr-page-home .entry-content,
body.sr-page-home .post-content{max-width:none!important;padding:0!important;margin:0!important;width:100%!important}
body.sr-page-home main,
body.sr-page-home article,
body.sr-page-home #content,
body.sr-page-home .site-content,
body.sr-page-home .wp-block-group{max-width:none!important;padding:0!important;margin:0!important;float:none!important}
body.sr-page-home .elementor-section-boxed>.elementor-container{max-width:100%!important}
/* :has() fallback */
body.page .entry-content:has(.sl-home),
body.page .post-content:has(.sl-home){max-width:none!important;padding:0!important;margin:0!important;width:100%!important}
body.page:has(.sl-home) main,
body.page:has(.sl-home) article,
body.page:has(.sl-home) #content,
body.page:has(.sl-home) .site-content{max-width:none!important;padding:0!important;margin:0!important;float:none!important}
.elementor-page:has(.sl-home) .elementor-section-boxed>.elementor-container{max-width:100%!important}

/* Hover only on pointer devices */
@media(hover:hover)and(pointer:fine){
  .sl-feature:hover{background:var(--sl-dark3);border-color:rgba(26,122,26,.3);transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,.3)}
  .sl-distance:hover{background:var(--sl-dark3);border-color:rgba(26,122,26,.4);transform:translateY(-3px)}
  .sl-testimonial:hover{border-color:rgba(26,122,26,.3)}
  .sl-step:hover{background:var(--sl-dark3)}
}
@media not all and(hover:hover){
  .sl-feature,.sl-distance,.sl-testimonial,.sl-step{transition:none}
}
