/* EcoSolarWork — main.css v1.0 */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}

:root{
  --green:#1e0a5e;
  --green-light:#3d1ab5;
  --green-pale:#ece8ff;
  --yellow:#f5c518;
  --black:#0d0d0d;
  --gray-dark:#1c1c1c;
  --gray:#4a4a4a;
  --gray-mid:#767676;
  --gray-light:#e8e8e8;
  --gray-pale:#f5f5f3;
  --white:#ffffff;
  --border:#e0e0e0;
  --font-display:'Barlow Condensed',sans-serif;
  --font-body:'Barlow',sans-serif;
}

body{font-family:var(--font-body);background:var(--white);color:var(--black);line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{max-width:1240px;margin:0 auto;padding:0 40px}

/* NAV */
.esw-nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.esw-nav-inner{height:72px;display:flex;align-items:center;justify-content:space-between}
.esw-logo{display:inline-flex;align-items:center;gap:0;text-decoration:none}
.esw-logo-img{height:44px;width:auto;display:block}
.esw-logo-svg{height:44px;width:44px;flex-shrink:0}
.esw-logo-text{font-family:var(--font-display);font-weight:400;font-size:1.45rem;letter-spacing:.04em;text-transform:uppercase;color:var(--black);margin-left:10px}
.esw-logo-text strong{font-weight:900}
/* Logo no nav (fundo claro) */
.esw-nav .esw-logo-text{color:var(--black)}
/* Logo no footer (fundo escuro) */
.esw-footer .esw-logo-text,.footer-logo .esw-logo-text{color:var(--white)}
.esw-footer .esw-logo-img,.footer-logo .esw-logo-img{filter:brightness(0) invert(1)}
.esw-nav-links{display:flex;gap:32px}
.esw-nav-links a{font-size:.88rem;font-weight:600;color:var(--gray);letter-spacing:.03em;text-transform:uppercase;transition:.15s}
.esw-nav-links a:hover{color:var(--green)}
.esw-nav-cta{background:var(--green);color:var(--white);font-family:var(--font-display);font-weight:700;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase;padding:11px 22px;border-radius:4px;transition:.2s}
.esw-nav-cta:hover{background:var(--green-light)}

/* HERO */
.esw-hero{margin-top:72px;height:calc(100vh - 72px);min-height:600px;max-height:900px;position:relative;overflow:hidden;display:flex;align-items:flex-end}
.esw-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#0d0032 0%,#1a0050 40%,#2d1580 70%,#160040 100%)}
.esw-hero-bg.has-image{background:none}
.esw-hero-bg.has-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.esw-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.25) 50%,transparent 100%)}
.esw-hero-bg.has-image::after{background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.15) 100%)}
.esw-hero-overlay{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 1px,transparent 1px,transparent 60px),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 1px,transparent 1px,transparent 60px)}
.esw-hero-sun{position:absolute;top:8%;right:12%;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(245,197,24,.35) 0%,rgba(245,197,24,.1) 40%,transparent 70%);animation:sun-pulse 6s ease-in-out infinite}
.esw-hero-bg.has-image .esw-hero-sun{display:none}
@keyframes sun-pulse{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.08);opacity:1}}
.esw-hero-sun-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#ffe066,#f5c518)}
.esw-hero-content{position:relative;z-index:2;padding:0 0 80px;width:100%}
.esw-hero-label{display:inline-block;font-family:var(--font-display);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--yellow);margin-bottom:20px}
.esw-hero h1{font-family:var(--font-display);font-size:clamp(3.5rem,7vw,7rem);font-weight:900;line-height:.95;letter-spacing:-.01em;text-transform:uppercase;color:var(--white);margin-bottom:28px}
.esw-hero h1 em{font-style:normal;color:var(--yellow)}
.esw-hero-sub{font-size:1.15rem;font-weight:300;color:rgba(255,255,255,.75);max-width:500px;margin-bottom:40px;line-height:1.65}
.esw-hero-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.btn-hero-primary{background:var(--yellow);color:#1a1100;font-family:var(--font-display);font-weight:800;font-size:1rem;letter-spacing:.05em;text-transform:uppercase;padding:16px 32px;border-radius:4px;display:inline-flex;align-items:center;gap:10px;transition:.2s;border:none;cursor:pointer}
.btn-hero-primary:hover{background:#ffe066;transform:translateY(-2px)}
.btn-hero-outline{border:2px solid rgba(255,255,255,.4);color:var(--white);font-family:var(--font-display);font-weight:700;font-size:1rem;letter-spacing:.05em;text-transform:uppercase;padding:14px 30px;border-radius:4px;display:inline-flex;align-items:center;gap:10px;transition:.2s;background:transparent;cursor:pointer}
.btn-hero-outline:hover{border-color:var(--white);background:rgba(255,255,255,.08)}
.esw-hero-strip{position:absolute;bottom:0;left:0;right:0;z-index:3;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.12)}
.esw-hero-strip-inner{display:grid;grid-template-columns:repeat(4,1fr)}
.esw-hero-stat{padding:22px 32px;border-right:1px solid rgba(255,255,255,.15)}
.esw-hero-stat:last-child{border-right:none}
.hs-num{font-family:var(--font-display);font-weight:900;font-size:2.4rem;line-height:1;color:var(--white);letter-spacing:-.02em}
.hs-num span{color:var(--yellow)}
.hs-label{font-size:.8rem;font-weight:400;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}

/* MARQUEE */
.esw-marquee{background:var(--green);padding:28px 0;overflow:hidden}
.esw-marquee-track{display:flex;gap:48px;align-items:center;white-space:nowrap;animation:marquee 22s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.esw-marquee-item{font-family:var(--font-display);font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:16px;flex-shrink:0}
.esw-marquee-dot{width:6px;height:6px;border-radius:50%;background:var(--yellow);flex-shrink:0}

/* SECTION UTILITIES */
.section-eyebrow{font-family:var(--font-display);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:var(--green);display:flex;align-items:center;gap:10px;margin-bottom:16px}
.section-eyebrow::before{content:'';width:32px;height:2px;background:var(--green);border-radius:2px}
.section-h{font-family:var(--font-display);font-weight:900;font-size:clamp(2rem,3.5vw,3rem);line-height:1.05;letter-spacing:-.01em;text-transform:uppercase;margin-bottom:18px}
.section-h em{font-style:normal;color:var(--green)}
.section-sub{font-size:1rem;font-weight:300;color:var(--gray);max-width:540px;line-height:1.7}

/* KITS */
.esw-kits{padding:100px 0;background:var(--white)}
.esw-kits-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}
.esw-kits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.esw-kit-card{position:relative;overflow:hidden;background:var(--gray-pale);padding:48px 40px 56px;border:1px solid var(--border);transition:.3s;cursor:pointer}
.esw-kit-card:hover{background:var(--white);transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.1);z-index:1}
.esw-kit-card.featured{background:var(--green);border-color:var(--green)}
.esw-kit-card.featured:hover{background:var(--green-light)}
.esw-kit-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:.3s}
.esw-kit-card:hover::before{background:var(--green)}
.esw-kit-card.featured::before{background:var(--yellow)}
.esw-kit-badge{display:inline-block;font-family:var(--font-display);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;background:var(--yellow);color:#1a1100;padding:4px 12px;border-radius:2px;margin-bottom:32px}
.esw-kit-card.featured .esw-kit-badge{background:rgba(255,255,255,.2);color:var(--white)}
.esw-kit-num{font-family:var(--font-display);font-weight:900;font-size:clamp(3rem,5vw,4.5rem);line-height:1;letter-spacing:-.02em;color:var(--green);margin-bottom:4px}
.esw-kit-card.featured .esw-kit-num{color:var(--yellow)}
.esw-kit-unit{font-family:var(--font-body);font-weight:300;font-size:1rem;color:var(--gray-mid);margin-bottom:24px}
.esw-kit-card.featured .esw-kit-unit{color:rgba(255,255,255,.65)}
.esw-kit-name{font-family:var(--font-display);font-weight:800;font-size:1.6rem;text-transform:uppercase;letter-spacing:.01em;color:var(--black);margin-bottom:10px}
.esw-kit-card.featured .esw-kit-name{color:var(--white)}
.esw-kit-desc{font-size:.9rem;font-weight:300;color:var(--gray);margin-bottom:32px;line-height:1.6}
.esw-kit-card.featured .esw-kit-desc{color:rgba(255,255,255,.75)}
.esw-kit-features{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:40px}
.esw-kit-features li{font-size:.88rem;color:var(--gray);display:flex;align-items:center;gap:10px}
.esw-kit-card.featured .esw-kit-features li{color:rgba(255,255,255,.8)}
.esw-kit-features li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--green);flex-shrink:0}
.esw-kit-card.featured .esw-kit-features li::before{background:var(--yellow)}
.esw-kit-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;color:var(--green);transition:.2s}
.esw-kit-card.featured .esw-kit-cta{color:var(--white)}
.esw-kit-cta svg{transition:.2s}
.esw-kit-card:hover .esw-kit-cta svg,.esw-kit-card.featured:hover .esw-kit-cta svg{transform:translateX(4px)}

/* SEGMENTOS */
.esw-seg-grid{display:grid;grid-template-columns:1fr 1fr}
.esw-seg-block{padding:100px 60px;position:relative;overflow:hidden}
.esw-seg-block.residencial{background:var(--gray-pale)}
.esw-seg-block.comercial{background:var(--black);color:var(--white)}
.esw-seg-block.comercial .section-eyebrow{color:var(--yellow)}
.esw-seg-block.comercial .section-eyebrow::before{background:var(--yellow)}
.esw-seg-block.comercial .section-h{color:var(--white)}
.esw-seg-block.comercial .section-h em{color:var(--yellow)}
.esw-seg-bg-num{position:absolute;bottom:-20px;right:-20px;font-family:var(--font-display);font-weight:900;font-size:14rem;line-height:1;color:rgba(0,0,0,.06);user-select:none;pointer-events:none}
.esw-seg-block.comercial .esw-seg-bg-num{color:rgba(255,255,255,.04)}
.esw-seg-block>*{position:relative;z-index:1}
.esw-seg-block p{font-weight:300;line-height:1.7;margin-bottom:28px}
.esw-seg-block.comercial p{color:rgba(255,255,255,.65)}
.esw-seg-items{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:40px}
.esw-seg-items li{display:flex;align-items:flex-start;gap:12px;font-size:.92rem}
.esw-seg-block.residencial .esw-seg-items li{color:var(--gray)}
.esw-seg-block.comercial .esw-seg-items li{color:rgba(255,255,255,.7)}
.esw-seg-items li svg{flex-shrink:0;margin-top:2px}
.esw-seg-stat{display:inline-block;border-top:2px solid var(--green);padding-top:16px}
.esw-seg-block.comercial .esw-seg-stat{border-color:var(--yellow)}
.esw-seg-stat-num{font-family:var(--font-display);font-weight:900;font-size:3rem;line-height:1;letter-spacing:-.02em;color:var(--green)}
.esw-seg-block.comercial .esw-seg-stat-num{color:var(--yellow)}
.esw-seg-stat-label{font-size:.8rem;font-weight:400;color:var(--gray-mid);text-transform:uppercase;letter-spacing:.08em}
.esw-seg-block.comercial .esw-seg-stat-label{color:rgba(255,255,255,.45)}
.btn-seg{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:800;font-size:.92rem;text-transform:uppercase;letter-spacing:.06em;padding:14px 28px;border-radius:4px;transition:.2s;margin-bottom:40px}
.btn-seg.green{background:var(--green);color:var(--white)}
.btn-seg.green:hover{background:var(--green-light)}
.btn-seg.yellow{background:var(--yellow);color:#1a1100}
.btn-seg.yellow:hover{background:#ffe066}

/* COMO FUNCIONA */
.esw-cf{padding:100px 0;background:var(--white)}
.esw-cf-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:70px}
.esw-cf-step{padding:40px 32px 40px 0;border-right:1px solid var(--border)}
.esw-cf-step:last-child{border-right:none;padding-right:0}
.esw-cf-num{font-family:var(--font-display);font-weight:900;font-size:4.5rem;line-height:1;color:var(--gray-light);letter-spacing:-.03em;margin-bottom:24px}
.esw-cf-line{width:40px;height:3px;background:var(--green);margin-bottom:20px}
.esw-cf-step h4{font-family:var(--font-display);font-weight:800;font-size:1.15rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px}
.esw-cf-step p{font-size:.88rem;font-weight:300;color:var(--gray);line-height:1.65}

/* NÚMEROS */
.esw-numeros{padding:90px 0;background:var(--green)}
.esw-numeros-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.esw-num-block{padding:48px 40px;border-right:1px solid rgba(255,255,255,.15);text-align:center}
.esw-num-block:last-child{border-right:none}
.nb-num{font-family:var(--font-display);font-weight:900;font-size:clamp(2.8rem,4vw,4rem);line-height:1;color:var(--white);letter-spacing:-.02em;margin-bottom:8px}
.nb-num span{color:var(--yellow)}
.nb-label{font-size:.82rem;font-weight:400;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.1em;line-height:1.4}

/* DIFERENCIAIS */
.esw-dif{padding:100px 0;background:var(--gray-pale)}
.esw-dif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:60px}
.esw-dif-card{background:var(--white);padding:40px 36px;border:1px solid var(--border);transition:.2s;position:relative}
.esw-dif-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.07);transform:translateY(-2px)}
.esw-dif-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background:transparent;transition:.3s}
.esw-dif-card:hover::before{background:var(--green)}
.esw-dif-icon{width:48px;height:48px;border-radius:4px;background:var(--green-pale);display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.esw-dif-icon svg{width:26px;height:26px;stroke:var(--green)}
.esw-dif-card h4{font-family:var(--font-display);font-weight:800;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px}
.esw-dif-card p{font-size:.88rem;font-weight:300;color:var(--gray);line-height:1.65}

/* SIMULADOR */
.esw-sim{padding:100px 0;background:var(--white)}
.esw-sim-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.esw-sim-field{margin-bottom:32px}
.esw-sim-field label{display:block;font-family:var(--font-display);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-mid);margin-bottom:12px}
.esw-sim-field .sim-val{font-family:var(--font-display);font-weight:900;font-size:2rem;color:var(--green);letter-spacing:-.01em;margin-bottom:10px}
input[type=range]{width:100%;appearance:none;height:3px;border-radius:2px;background:var(--gray-light);outline:none}
input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:var(--green);cursor:pointer;border:3px solid var(--white);box-shadow:0 0 0 1px var(--green)}
.esw-sim-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-bottom:32px}
.esw-sim-card{background:var(--gray-pale);padding:28px 24px;border:1px solid var(--border)}
.esw-sim-card .sc-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-mid);margin-bottom:10px}
.esw-sim-card .sc-val{font-family:var(--font-display);font-weight:900;font-size:1.8rem;color:var(--black);letter-spacing:-.02em}
.esw-sim-card.highlight{background:var(--green);border-color:var(--green)}
.esw-sim-card.highlight .sc-label{color:rgba(255,255,255,.7)}
.esw-sim-card.highlight .sc-val{color:var(--white)}
.esw-sim-card.yellow-card{background:var(--yellow);border-color:var(--yellow)}
.esw-sim-card.yellow-card .sc-label{color:rgba(0,0,0,.55)}
.esw-sim-card.yellow-card .sc-val{color:var(--black)}
.btn-sim-wa{width:100%;background:#25D366;color:var(--white);font-family:var(--font-display);font-weight:800;font-size:1rem;text-transform:uppercase;letter-spacing:.06em;padding:18px 24px;border-radius:4px;border:none;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:.2s}
.btn-sim-wa:hover{background:#1ebe5d}
.btn-sim-wa svg{width:22px;height:22px}

/* REGIÕES */
.esw-regioes{padding:80px 0;background:var(--gray-pale);border-top:1px solid var(--border)}
.esw-regioes-inner{display:flex;align-items:center;gap:60px}
.esw-reg-label{font-family:var(--font-display);font-weight:800;font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;white-space:nowrap;color:var(--gray-mid)}
.esw-reg-divider{width:1px;height:40px;background:var(--border);flex-shrink:0}
.esw-reg-cities{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.esw-reg-city{font-family:var(--font-body);font-size:.88rem;font-weight:600;color:var(--gray);border:1px solid var(--border);background:var(--white);padding:6px 16px;border-radius:2px;transition:.2s}
.esw-reg-city:hover{border-color:var(--green);color:var(--green)}

/* CTA FINAL */
.esw-cta{padding:120px 0;background:var(--black);position:relative;overflow:hidden}
.esw-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 100% at 80% 50%,rgba(26,122,60,.25),transparent)}
.esw-cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.esw-cta h2{font-family:var(--font-display);font-weight:900;font-size:clamp(2.5rem,4vw,4rem);text-transform:uppercase;letter-spacing:-.01em;line-height:1;color:var(--white);margin-bottom:20px}
.esw-cta h2 em{font-style:normal;color:var(--yellow)}
.esw-cta p{font-weight:300;color:rgba(255,255,255,.6);line-height:1.7;font-size:1.05rem}
.esw-cta-actions{display:flex;flex-direction:column;gap:16px}
.btn-wa-big{background:#25D366;color:var(--white);font-family:var(--font-display);font-weight:800;font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em;padding:20px 36px;border-radius:4px;display:inline-flex;align-items:center;gap:12px;transition:.2s;border:none;cursor:pointer}
.btn-wa-big:hover{background:#1ebe5d;transform:translateY(-2px)}
.btn-wa-big svg{width:24px;height:24px}
.esw-cta-note{font-size:.82rem;color:rgba(255,255,255,.35);padding-left:4px}

/* FOOTER */
.esw-footer{background:var(--black);border-top:1px solid rgba(255,255,255,.08);padding:60px 0 32px}
.esw-footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.esw-footer-brand-txt{font-size:.87rem;font-weight:300;color:rgba(255,255,255,.45);max-width:260px;line-height:1.7;margin-top:14px}
.esw-footer-col h5{font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.4);margin-bottom:18px}
.esw-footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.esw-footer-col ul li a{font-size:.87rem;font-weight:300;color:rgba(255,255,255,.6);transition:.15s}
.esw-footer-col ul li a:hover{color:var(--green-light)}
.esw-footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:24px;display:flex;justify-content:space-between;align-items:center}
.esw-footer-bottom p{font-size:.8rem;font-weight:300;color:rgba(255,255,255,.3)}
.esw-footer-bottom a{color:var(--green-light)}

/* RESPONSIVE */
@media(max-width:1024px){
  .container{padding:0 24px}
  .esw-hero-strip-inner{grid-template-columns:repeat(2,1fr)}
  .esw-kits-grid,.esw-seg-grid,.esw-sim-layout,.esw-cta-inner{grid-template-columns:1fr}
  .esw-seg-block{padding:72px 40px}
  .esw-cf-steps{grid-template-columns:1fr 1fr;gap:40px}
  .esw-cf-step{border-right:none;border-bottom:1px solid var(--border);padding:0 0 40px}
  .esw-cf-step:last-child{border-bottom:none}
  .esw-numeros-grid{grid-template-columns:1fr 1fr}
  .esw-num-block:nth-child(2){border-right:none}
  .esw-dif-grid{grid-template-columns:1fr 1fr}
  .esw-footer-top{grid-template-columns:1fr 1fr}
  .esw-regioes-inner{flex-direction:column;align-items:flex-start;gap:24px}
  .esw-nav-links{display:none}
  .esw-kits-header{flex-direction:column;gap:20px}
}
@media(max-width:640px){
  .esw-hero{height:auto;min-height:100vh}
  .esw-hero-content{padding:40px 0 220px}
  .esw-hero-strip-inner,.esw-numeros-grid,.esw-sim-results-grid,.esw-dif-grid,.esw-cf-steps{grid-template-columns:1fr}
  .esw-num-block{border-right:none;border-bottom:1px solid rgba(255,255,255,.15)}
  .esw-footer-top{grid-template-columns:1fr}
}

/* ── Video scrub parallax ── */
.esw-hero-bg video.esw-hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  /* Inicia invisível; JS resolve o currentTime antes de mostrar */
  opacity: 0;
  transition: opacity .6s ease;
  pointer-events: none;
  user-select: none;
}
.esw-hero-bg.video-ready video.esw-hero-video {
  opacity: 1;
}
/* Quando há vídeo, remover o gradiente estático */
.esw-hero-bg.has-video {
  background: #060010;
}
.esw-hero-bg.has-video .esw-hero-sun { display: none; }

/* Loja Solar / Kits com produto Ronma */
.esw-product-kits-grid{grid-template-columns:repeat(5,1fr);gap:12px}
.esw-product-kit-card{padding:28px 22px 34px;cursor:default;display:flex;flex-direction:column}
.esw-product-image-wrap{height:190px;margin:-8px 0 22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.25));border:1px solid rgba(0,0,0,.06);border-radius:10px;overflow:hidden}
.esw-product-image-wrap img{height:178px;width:auto;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(0,0,0,.25))}
.esw-product-kit-card .esw-kit-name{font-size:1.28rem}
.esw-product-kit-card .esw-kit-desc{font-size:.84rem;margin-bottom:20px}
.esw-product-kit-card .esw-kit-features{gap:8px;margin-bottom:22px}
.esw-product-kit-card .esw-kit-features li{font-size:.8rem;line-height:1.35}
.esw-kit-price{font-family:var(--font-display);font-weight:900;font-size:1.65rem;line-height:1;color:var(--green);letter-spacing:-.02em;margin:0 0 16px}
.esw-product-kit-card.featured .esw-kit-price{color:var(--yellow)}
.esw-kit-links{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.esw-kit-links a{font-size:.76rem;font-weight:700;color:var(--green);background:rgba(30,10,94,.07);padding:6px 9px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em}
.esw-product-kit-card.featured .esw-kit-links a{color:var(--white);background:rgba(255,255,255,.12)}
.esw-product-kit-card .esw-kit-cta{margin-top:auto}
@media(max-width:1200px){.esw-product-kits-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.esw-product-kits-grid{grid-template-columns:1fr}.esw-product-image-wrap{height:220px}.esw-product-image-wrap img{height:205px}}

/* Ajuste: kits com imagem do painel + imagem do inversor */
.esw-kits-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:flex-end;max-width:430px}
.esw-mini-cta{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:4px;background:var(--green);color:var(--purple);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 14px 30px rgba(46,213,115,.18)}
.esw-mini-cta.alt{background:rgba(255,255,255,.12);color:var(--white);border:1px solid rgba(255,255,255,.18)}
.esw-kit-images{height:220px;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;margin:-8px 0 22px}
.esw-kit-images figure{height:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.72);border:1px solid rgba(0,0,0,.06);border-radius:8px;padding:8px;overflow:hidden}
.esw-kit-images img{max-width:100%;max-height:145px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(0,0,0,.18))}
.esw-kit-images figcaption{font-size:.66rem;line-height:1.1;text-align:center;color:#182035;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.esw-product-kit-card .esw-kit-features{margin-top:0}
@media(max-width:1200px){.esw-kits-actions{justify-content:flex-start}.esw-kit-images{height:240px}.esw-kit-images img{max-height:165px}}
@media(max-width:760px){.esw-kit-images{height:260px}.esw-kit-images img{max-height:180px}}


/* ===== AJUSTES ECOSOLARWORK — cards e vídeo ===== */

/* Textos amarelos no card azul/destaque dos kits */
.esw-kit-card.featured,
.esw-kit-card.featured .esw-kit-name,
.esw-kit-card.featured .esw-kit-desc,
.esw-kit-card.featured .esw-kit-unit,
.esw-kit-card.featured .esw-kit-features li,
.esw-kit-card.featured .esw-kit-cta {
  color: var(--yellow) !important;
}

/* Mantém o selo legível */
.esw-kit-card.featured .esw-kit-badge {
  background: var(--yellow) !important;
  color: #1a1100 !important;
}

/* Garante que o vídeo do hero cubra o fundo e rode como background */
.esw-hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

body,button,input,textarea,select{
font-family:'Plus Jakarta Sans',sans-serif!important;
}

.hero h1,.hero-title{
font-weight:800!important;
letter-spacing:-0.04em!important;
line-height:1!important;
}

.kit-card,.product-card,.blue-card{
color:#FFD54A!important;
backdrop-filter:blur(18px);
border:1px solid rgba(255,255,255,0.08)!important;
box-shadow:0 20px 60px rgba(0,0,0,0.35)!important;
transition:all .3s ease;
}

.kit-card:hover,.product-card:hover{
transform:translateY(-6px);
box-shadow:0 30px 70px rgba(255,179,0,0.18)!important;
}

.btn-whatsapp,.btn-primary,.button-primary{
background:linear-gradient(135deg,#FFD54A,#FFB300)!important;
color:#111!important;
font-weight:700!important;
border-radius:16px!important;
}

.ecosolar-trust{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
margin-top:50px;
}

.ecosolar-trust .trust-box{
background:rgba(255,255,255,0.05);
border:1px solid rgba(255,255,255,0.08);
border-radius:22px;
padding:24px;
text-align:center;
}

.ecosolar-trust .trust-box strong{
display:block;
font-size:1.8rem;
color:#FFD54A;
margin-bottom:8px;
}

.economia-box{
background:rgba(255,213,74,.12);
border:1px solid rgba(255,213,74,.25);
border-radius:18px;
padding:14px 18px;
margin-top:18px;
}

video{
object-fit:cover;
}

@media(max-width:768px){
.hero h1{
font-size:2.8rem!important;
}
}


/* ===== Ajuste EcoSolarWork: botões arredondados ===== */
button,
input[type="button"],
input[type="submit"],
.wp-block-button__link,
.btn,
.btn-primary,
.btn-secondary,
.btn-hero-primary,
.btn-hero-outline,
.btn-seg,
.btn-sim-wa,
.esw-mini-cta,
.esw-kit-cta,
.esw-btn,
.button,
a[class*="btn"],
a[class*="cta"],
a[class*="button"] {
  border-radius: 999px !important;
}

/* Mantém CTAs dos kits limpos após remoção dos links auxiliares */
.esw-kit-cta {
  margin-top: 18px;
}



/* ===== EcoSolarWork: kits todos na mesma linha mantendo layout ===== */
.esw-product-kits-grid,
.esw-kits-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(240px, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

.esw-product-kit-card,
.esw-kit-card {
  min-width: 0 !important;
}

.esw-product-kit-card .esw-kit-name,
.esw-kit-card .esw-kit-name {
  font-size: clamp(1.05rem, 1.2vw, 1.35rem) !important;
}

@media (max-width: 1180px) {
  .esw-product-kits-grid,
  .esw-kits-grid {
    display: flex !important;
    overflow-x: auto !important;
    gap: 18px !important;
    scroll-snap-type: x mandatory;
    padding-bottom: 16px;
  }

  .esw-product-kit-card,
  .esw-kit-card {
    flex: 0 0 280px !important;
    scroll-snap-align: start;
  }
}

@media (max-width: 520px) {
  .esw-product-kit-card,
  .esw-kit-card {
    flex-basis: 86vw !important;
  }
}

/* ===== EcoSolarWork Motion Graphics Premium ===== */
@media (prefers-reduced-motion: no-preference) {
  .esw-hero-content,
  .esw-hero-strip,
  .esw-marquee,
  .esw-kits-header,
  .esw-kit-card,
  .esw-product-kit-card,
  .esw-seg-block,
  .esw-cf-step,
  .esw-num-block,
  .esw-dif-card,
  .esw-sim-layout,
  .esw-regioes-inner {
    opacity: 0;
    transform: translateY(34px);
    transition: opacity .75s ease, transform .75s cubic-bezier(.2,.75,.25,1), box-shadow .35s ease;
    will-change: opacity, transform;
  }

  .esw-motion-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }

  .esw-kit-card.esw-motion-visible,
  .esw-product-kit-card.esw-motion-visible,
  .esw-dif-card.esw-motion-visible,
  .esw-cf-step.esw-motion-visible,
  .esw-num-block.esw-motion-visible {
    animation: eswSoftPop .65s cubic-bezier(.2,.75,.25,1) both;
  }

  @keyframes eswSoftPop {
    0% { opacity: 0; transform: translateY(34px) scale(.96); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
  }

  .esw-kit-card:hover,
  .esw-product-kit-card:hover,
  .esw-dif-card:hover,
  .esw-cf-step:hover {
    transform: translateY(-8px) scale(1.015) !important;
  }

  .esw-hero-bg {
    animation: eswHeroFloat 12s ease-in-out infinite alternate;
  }

  @keyframes eswHeroFloat {
    from { transform: scale(1); }
    to { transform: scale(1.035); }
  }

  .esw-kit-num,
  .nb-num,
  .hs-num {
    animation: eswGlowText 3s ease-in-out infinite alternate;
  }

  @keyframes eswGlowText {
    from { text-shadow: 0 0 0 rgba(255,213,74,0); }
    to { text-shadow: 0 0 22px rgba(255,213,74,.34); }
  }

  .btn-hero-primary,
  .btn-sim-wa,
  .esw-kit-cta,
  .btn-seg {
    position: relative;
    overflow: hidden;
  }

  .btn-hero-primary::after,
  .btn-sim-wa::after,
  .esw-kit-cta::after,
  .btn-seg::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent);
    transition: transform .75s ease;
  }

  .btn-hero-primary:hover::after,
  .btn-sim-wa:hover::after,
  .esw-kit-cta:hover::after,
  .btn-seg:hover::after {
    transform: translateX(120%);
  }
}


/* ===== PATCH SEGURO: botões WhatsApp verdes e arredondados ===== */
.btn-whatsapp,
.btn-sim-wa,
.esw-kit-cta,
.btn-hero-primary,
a[href*="wa.me"],
a[href*="whatsapp"] {
  background: #25D366 !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  border: none !important;
  box-shadow: 0 12px 30px rgba(37,211,102,.25) !important;
}

.btn-whatsapp:hover,
.btn-sim-wa:hover,
.esw-kit-cta:hover,
.btn-hero-primary:hover,
a[href*="wa.me"]:hover,
a[href*="whatsapp"]:hover {
  background: #1ebe5d !important;
  color: #ffffff !important;
  box-shadow: 0 18px 40px rgba(37,211,102,.38) !important;
}

/* Mantém a linha de kits sem forçar quebra estrutural */
@media (min-width: 1181px) {
  .esw-product-kits-grid,
  .esw-kits-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(220px, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
  }
}


/* ===== EcoSolarWork: mobile kits abertos sem scroll horizontal ===== */

/* Desktop: mantém os kits na mesma linha */
@media (min-width: 1181px) {
  .esw-product-kits-grid,
  .esw-kits-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(220px, 1fr)) !important;
    gap: 18px !important;
    overflow: visible !important;
  }
}

/* Tablet: 2 colunas, sem scroll horizontal */
@media (min-width: 681px) and (max-width: 1180px) {
  .esw-product-kits-grid,
  .esw-kits-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }

  .esw-product-kit-card,
  .esw-kit-card {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }
}

/* Mobile: 1 coluna, todos os kits visíveis um abaixo do outro */
@media (max-width: 680px) {
  .esw-product-kits-grid,
  .esw-kits-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    overflow: visible !important;
    overflow-x: visible !important;
    scroll-snap-type: none !important;
    padding-bottom: 0 !important;
  }

  .esw-product-kit-card,
  .esw-kit-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: none !important;
    scroll-snap-align: unset !important;
  }

  .esw-kit-images {
    grid-template-columns: 1fr 1fr !important;
  }
}
