/* ═══ Spark New Energy Solutions · sistema de diseño ═══ */
:root{
  --verde:#0B3D2E; --verde-2:#12503C; --verde-3:#061F17; --verde-4:#0A2E23;
  --oro:#B8860B; --oro-c:#E4B665; --oro-luz:#F0D9A8;
  --papel:#FCFBF8; --sup:#FFFFFF; --tinta:#0C1A15; --tinta-2:#465A50; --gris:#7A8A81;
  --linea:#E6E3DA;
  --serif:"Playfair Display",'Iowan Old Style',Georgia,serif;
  --sans:"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
  --e:cubic-bezier(.19,1,.22,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:auto;}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--sans);
     font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0;
            letter-spacing:-.02em;}
p{margin:0;max-width:66ch;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
:focus-visible{outline:2px solid var(--oro);outline-offset:4px;}

.w{max-width:1280px;margin:0 auto;padding:0 48px;}
@media(max-width:820px){.w{padding:0 22px;}}
.idx{font-family:var(--mono);font-size:10px;letter-spacing:.26em;text-transform:uppercase;
     color:var(--oro);display:block;}

/* ── barra ── */
.barra{position:fixed;inset:0 0 auto 0;z-index:90;transition:background .5s var(--e),
       border-color .5s var(--e);border-bottom:1px solid transparent;}
.barra.solida{background:rgba(252,251,248,.88);backdrop-filter:blur(20px) saturate(1.4);
              border-bottom-color:var(--linea);}
.barra-in{display:flex;align-items:center;justify-content:space-between;height:78px;gap:28px;}
.logo{display:flex;align-items:center;gap:13px;}
.logo svg{width:30px;height:34px;flex:none;}
.logo .marca{width:40px;height:40px;flex:none;border-radius:5px;}
.logo .txt{font-family:var(--serif);font-size:19px;letter-spacing:.01em;line-height:1;}
.logo .txt em{font-style:normal;color:var(--oro);}
.logo .txt small{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.26em;
                 color:var(--gris);text-transform:uppercase;margin-top:5px;}
.barra.claro .logo .txt{color:#fff;} .barra.claro .logo .txt small{color:rgba(255,255,255,.5);}
.barra.claro .nav a{color:rgba(255,255,255,.82);}
.barra.claro .nav a:hover,.barra.claro .nav a.on{color:#fff;}
.nav{display:flex;gap:4px;align-items:center;}
.nav a{font-size:14px;color:var(--tinta-2);padding:10px 16px;position:relative;
       transition:color .35s var(--e);}
.nav a::after{content:"";position:absolute;left:16px;right:16px;bottom:6px;height:1px;
  background:var(--oro);transform:scaleX(0);transform-origin:left;
  transition:transform .5s var(--e);}
.nav a:hover::after,.nav a.on::after{transform:scaleX(1);}
.nav a.on{color:var(--tinta);}
.lang{display:flex;gap:2px;margin-left:16px;padding-left:18px;border-left:1px solid var(--linea);}
.barra.claro .lang{border-left-color:rgba(255,255,255,.2);}
.lang button{font-family:var(--mono);font-size:10px;letter-spacing:.12em;padding:6px 9px;
  border:1px solid transparent;background:none;color:var(--gris);cursor:pointer;
  transition:color .3s,border-color .3s;}
.lang button[aria-pressed="true"]{color:var(--oro);border-color:var(--oro);}
.hamb{display:none;background:none;border:0;cursor:pointer;padding:10px;z-index:100;}
.hamb i{display:block;width:24px;height:1.5px;background:var(--tinta);margin:6px 0;
        transition:transform .45s var(--e),opacity .3s;}
.barra.claro .hamb i{background:#fff;}
@media(max-width:1000px){
  .hamb{display:block;}
  .nav{position:fixed;inset:0;background:var(--verde);flex-direction:column;
    justify-content:center;align-items:flex-start;padding:0 34px;gap:0;
    clip-path:circle(0% at calc(100% - 40px) 40px);
    transition:clip-path .8s var(--e);}
  .nav.abierta{clip-path:circle(150% at calc(100% - 40px) 40px);}
  .nav a{font-family:var(--serif);font-size:34px;color:#EFF5F2;padding:14px 0;}
  .nav a::after{display:none;}
  .lang{margin:28px 0 0;padding:0;border:0;}
  .lang button{color:rgba(255,255,255,.6);}
}

/* ── revelados ── */
.rv{opacity:0;transform:translateY(30px);}
.linea-ani{display:block;overflow:hidden;}
.linea-ani > span{display:block;}

/* ── secciones ── */
.sec{padding:104px 0 120px;position:relative;}
.sec + .sec{border-top:1px solid var(--linea);}
.cab{display:grid;grid-template-columns:190px 1fr;gap:52px;align-items:start;margin-bottom:64px;}
@media(max-width:900px){.cab{grid-template-columns:1fr;gap:18px;margin-bottom:44px;}}
.cab h2{font-size:clamp(32px,4.6vw,52px);max-width:18ch;}
.cab .lead{margin-top:24px;font-size:19px;color:var(--tinta-2);max-width:60ch;}

/* ── pie ── */
.pie{background:var(--verde-3);color:#8AA096;padding:76px 0 40px;}
.pie a{text-decoration:none;color:#9FB4AA;transition:color .35s var(--e);}
.pie a:hover{color:var(--oro-c);}
.pie-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:48px;
  padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.09);}
@media(max-width:920px){.pie-top{grid-template-columns:1fr 1fr;gap:40px 32px;}}
@media(max-width:540px){.pie-top{grid-template-columns:1fr;gap:34px;}}
.pie-txt{font-family:var(--serif);font-size:21px;color:#C8D8CF;letter-spacing:.01em;}
.pie-txt em{font-style:normal;color:var(--oro-c);}
.pie-txt small{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.24em;
  color:#5E7267;margin-top:5px;}
.pie-marca p{margin:18px 0 0;max-width:36ch;font-size:13.5px;line-height:1.65;color:#7D948A;}
.pie-col{display:flex;flex-direction:column;gap:12px;font-size:14px;}
.pie-col span:not(.pie-h){color:#9FB4AA;}
.pie-h{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:#5E7267;margin-bottom:4px;}
.pie-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;
  padding-top:26px;font-size:12.5px;color:#5E7267;}
.pie-bar .rev{color:var(--oro-c);}
.pie-legal{display:flex;gap:24px;flex-wrap:wrap;}
.pie-legal a{font-size:12.5px;color:#8AA096;}

.rev{background:rgba(228,182,101,.22);border:1px dashed var(--oro);padding:1px 8px;
     font-family:var(--mono);font-size:11px;color:var(--oro);white-space:nowrap;}
[data-l]{display:none;} [data-l].act{display:block;}
span[data-l].act,em[data-l].act{display:inline;} li[data-l].act{display:list-item;}

/* ── botones (componente compartido) ── */
.cta-fila{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap;}
.bt{display:inline-flex;align-items:center;gap:11px;padding:16px 30px;font-size:15px;
    letter-spacing:.01em;transition:transform .5s var(--e),background .4s,color .4s;}
.bt:hover{transform:translateY(-2px);}
.bt.oro{background:var(--oro-c);color:#1C1406;font-weight:600;}
.bt.oro:hover{background:var(--oro-luz);}
.bt.gh{border:1px solid rgba(239,245,242,.3);color:#EFF5F2;}
.bt.gh:hover{border-color:var(--oro-c);color:var(--oro-c);}
.bt.linea{border:1px solid var(--linea);color:var(--tinta);}
.bt.linea:hover{border-color:var(--oro);color:var(--oro);}
