/* ==========================================================
   GRÚAS ELCHE · 24H — hoja de estilos
   Paleta: negro asfalto · amarillo grúa · ámbar rotativo ·
           arena (Dama/Basílica) · verde palmera
   ========================================================== */
:root{
  --bg:#09090b; --bg2:#111115; --bg3:#18181e; --card:#16161b; --line:#2a2a33;
  --y:#FFC400; --y2:#FFD84D; --amber:#FF9500; --sand:#E7B96F; --sand2:#c9944a;
  --palm:#22A35A; --palm2:#14803f; --wa:#25D366; --sky:#2B6BE8;
  --tx:#f5f5f7; --mut:#b4b4bf; --dim:#7d7d8a;
  --r:18px; --r2:26px;
  --sh:0 18px 50px -18px rgba(0,0,0,.8);
  --glow:0 0 0 1px rgba(255,196,0,.35),0 14px 40px -10px rgba(255,196,0,.55);
  --fd:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;
  --fb:'Barlow',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --max:1220px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font-family:var(--fb);font-size:17px;line-height:1.65;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--y);text-decoration:none}
a:hover{color:var(--y2)}
h1,h2,h3,h4{font-family:var(--fd);font-weight:800;line-height:1.02;letter-spacing:.2px;margin:0 0 .5em;text-transform:uppercase}
h1{font-size:clamp(2.6rem,6.4vw,5.2rem);font-style:italic}
h2{font-size:clamp(2.1rem,4.4vw,3.5rem);font-style:italic}
h3{font-size:1.55rem}
p{margin:0 0 1.1em}
ul{padding-left:1.2em}
.wrap{width:min(var(--max),92vw);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--y);color:#000;padding:10px 16px;z-index:999}
.skip:focus{left:10px}
.y{color:var(--y)} .sand{color:var(--sand)} .green{color:var(--palm)}
.hl{background:linear-gradient(180deg,transparent 58%,rgba(255,196,0,.35) 58%);padding:0 .1em}
.eyebrow{display:inline-flex;align-items:center;gap:.55em;font-family:var(--fd);font-weight:700;font-size:1.05rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--y);margin-bottom:.9rem}
.eyebrow::before{content:"";width:34px;height:4px;border-radius:4px;background:repeating-linear-gradient(-45deg,var(--y) 0 6px,#111 6px 12px)}
.lead{font-size:1.18rem;color:var(--mut);max-width:62ch}
.center{text-align:center} .center .lead{margin-inline:auto}

/* ---------- top bar ---------- */
.topbar{background:var(--y);color:#111;font-weight:700;font-size:.92rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;flex-wrap:wrap}
.topbar a{color:#111}
.topbar .live{display:inline-flex;align-items:center;gap:8px}
.dot{width:10px;height:10px;border-radius:50%;background:#e01b1b;box-shadow:0 0 0 0 rgba(224,27,27,.7);animation:ping 1.4s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(224,27,27,.7)}80%,100%{box-shadow:0 0 0 12px rgba(224,27,27,0)}}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(9,9,11,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:78px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:62px;width:auto;filter:drop-shadow(0 4px 12px rgba(255,196,0,.25))}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:var(--tx);font-family:var(--fd);font-weight:700;font-size:1.12rem;letter-spacing:.6px;text-transform:uppercase;padding:9px 13px;border-radius:10px}
.nav a:hover,.nav a[aria-current=page]{color:var(--y);background:rgba(255,196,0,.08)}
.hdr-call{display:inline-flex;align-items:center;gap:10px;background:var(--y);color:#111!important;font-family:var(--fd);font-weight:800;font-size:1.3rem;padding:10px 18px;border-radius:999px;box-shadow:var(--glow);white-space:nowrap}
.hdr-call:hover{background:var(--y2)}
.burger{display:none;background:none;border:2px solid var(--line);color:var(--tx);border-radius:12px;width:48px;height:46px;cursor:pointer}
.burger span{display:block;width:22px;height:3px;background:currentColor;margin:4px auto;border-radius:3px;transition:.25s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--fd);font-weight:800;font-style:italic;text-transform:uppercase;letter-spacing:.6px;font-size:1.45rem;line-height:1;padding:19px 30px;border-radius:999px;border:0;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}
.btn svg{width:26px;height:26px;flex:none}
.btn:hover{transform:translateY(-3px)}
.btn-call{background:linear-gradient(180deg,var(--y2),var(--y) 55%,var(--amber));color:#111!important;box-shadow:0 0 0 4px rgba(255,196,0,.18),0 18px 40px -12px rgba(255,170,0,.8);animation:pulse 2.2s infinite}
.btn-call small{display:block;font-size:.62em;font-style:normal;opacity:.75;letter-spacing:1px}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,196,0,.55),0 18px 40px -12px rgba(255,170,0,.8)}70%{box-shadow:0 0 0 20px rgba(255,196,0,0),0 18px 40px -12px rgba(255,170,0,.8)}100%{box-shadow:0 0 0 0 rgba(255,196,0,0),0 18px 40px -12px rgba(255,170,0,.8)}}
.btn-wa{background:var(--wa);color:#062b14!important;box-shadow:0 16px 36px -14px rgba(37,211,102,.8)}
.btn-ghost{background:transparent;color:var(--tx)!important;border:2px solid #3a3a45}
.btn-ghost:hover{border-color:var(--y);color:var(--y)!important}
.btns{display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;padding:56px 0 110px;isolation:isolate;
  background:radial-gradient(900px 520px at 78% 30%,rgba(255,170,0,.28),transparent 60%),
             radial-gradient(700px 500px at 0% 100%,rgba(34,163,90,.16),transparent 60%),
             linear-gradient(180deg,#0b0b0e,#09090b)}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.hero h1 .big{display:block;font-size:1.18em;color:var(--y);text-shadow:0 6px 0 rgba(0,0,0,.6),0 0 40px rgba(255,196,0,.35)}
.hero .lead{font-size:1.25rem}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 30px}
.badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.05);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-weight:600;font-size:.95rem}
.badge svg{width:18px;height:18px;color:var(--y)}
.hero-art{position:relative}
.hero-art img{position:relative;z-index:2;width:100%;filter:drop-shadow(0 30px 50px rgba(0,0,0,.7));animation:float 6s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.beacon{position:absolute;z-index:1;top:8%;left:28%;width:46%;aspect-ratio:1;border-radius:50%;
  background:conic-gradient(from 0deg,rgba(255,150,0,.0),rgba(255,150,0,.55) 12%,rgba(255,150,0,0) 25%,rgba(255,150,0,0) 50%,rgba(255,196,0,.5) 62%,rgba(255,150,0,0) 75%);
  filter:blur(26px);animation:spin 2.4s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.hazard{position:absolute;left:0;right:0;bottom:0;height:34px;background:repeating-linear-gradient(-45deg,var(--y) 0 26px,#0d0d10 26px 52px);box-shadow:0 -10px 30px rgba(255,196,0,.25)}
.trust-line{display:flex;gap:22px;flex-wrap:wrap;margin-top:22px;color:var(--mut);font-size:.98rem}
.trust-line b{color:var(--tx)}

/* ---------- ticker ---------- */
.ticker{background:#0d0d10;border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap}
.ticker .track{display:inline-flex;gap:0;animation:tick 60s linear infinite;padding:14px 0}
.ticker span{font-family:var(--fd);font-weight:700;font-style:italic;font-size:1.35rem;text-transform:uppercase;color:var(--mut);padding:0 26px;display:inline-flex;align-items:center;gap:26px}
.ticker span::after{content:"";width:10px;height:10px;background:var(--y);transform:rotate(45deg)}
.ticker:hover .track{animation-play-state:paused}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
section{position:relative}
.sec{padding:96px 0}
.sec-alt{background:linear-gradient(180deg,var(--bg2),var(--bg))}
.sec-sand{background:radial-gradient(800px 400px at 15% 0%,rgba(231,185,111,.12),transparent 60%),var(--bg2)}
.sec-head{max-width:820px;margin-bottom:46px}
.sec-head.center{margin-inline:auto}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-62px;position:relative;z-index:5}
.stat{background:linear-gradient(180deg,#1c1c22,#141418);border:1px solid var(--line);border-radius:var(--r);padding:24px 20px;text-align:center;box-shadow:var(--sh)}
.stat b{display:block;font-family:var(--fd);font-style:italic;font-size:2.9rem;line-height:1;color:var(--y)}
.stat span{color:var(--mut);font-weight:600;font-size:.98rem}

/* cards grid */
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)}
.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r2);padding:28px;transition:transform .25s,border-color .25s,box-shadow .25s;overflow:hidden}
.card:hover{transform:translateY(-6px);border-color:rgba(255,196,0,.55);box-shadow:0 26px 50px -24px rgba(255,196,0,.45)}
.card h3{color:var(--tx);margin-bottom:.35em}
.card p{color:var(--mut);margin-bottom:.8em}
.card .ico{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--y),var(--amber));color:#111;margin-bottom:18px;box-shadow:0 10px 26px -10px rgba(255,170,0,.8)}
.card .ico svg{width:34px;height:34px}
.card .more{font-family:var(--fd);font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--y);display:inline-flex;align-items:center;gap:6px}
.card .more::after{content:"→";transition:transform .2s}
.card:hover .more::after{transform:translateX(5px)}
a.card{color:inherit;display:block}
.card::after{content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,0,.14),transparent 70%)}

/* zone chips */
.zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.zone{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:15px 18px;color:var(--tx);font-weight:700;transition:.2s}
.zone small{display:block;font-weight:500;color:var(--dim);font-size:.82rem}
.zone svg{width:22px;height:22px;color:var(--y);flex:none}
.zone:hover{border-color:var(--y);background:#1d1d23;color:var(--y)}

/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--r2);padding:28px 24px;position:relative}
.step::before{counter-increment:s;content:"0" counter(s);font-family:var(--fd);font-style:italic;font-weight:800;font-size:3.6rem;line-height:1;color:transparent;-webkit-text-stroke:2px var(--y);display:block;margin-bottom:12px}
.step h3{font-size:1.35rem}
.step p{color:var(--mut);margin:0}

/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.checks{list-style:none;padding:0;margin:0 0 24px}
.checks li{position:relative;padding-left:40px;margin-bottom:14px;color:var(--mut)}
.checks li b{color:var(--tx)}
.checks li::before{content:"";position:absolute;left:0;top:3px;width:26px;height:26px;border-radius:8px;background:var(--palm) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/16px no-repeat}
.panel{background:linear-gradient(160deg,#1b1b21,#121216);border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--sh);position:relative;overflow:hidden}
.panel::before{content:"";position:absolute;inset:0 0 auto 0;height:8px;background:repeating-linear-gradient(-45deg,var(--y) 0 14px,#111 14px 28px)}

/* pay */
.pay{display:flex;flex-wrap:wrap;gap:12px}
.pay span{display:inline-flex;align-items:center;gap:10px;background:#1d1d23;border:1px solid var(--line);padding:12px 18px;border-radius:14px;font-weight:700}
.pay svg{width:24px;height:24px;color:var(--y)}
.pay .no{opacity:.55;text-decoration:line-through}

/* CTA band */
.cta-band{position:relative;overflow:hidden;background:linear-gradient(100deg,var(--y) 0%,var(--amber) 100%);color:#111;padding:64px 0}
.cta-band::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(0,0,0,.06) 0 22px,transparent 22px 44px)}
.cta-band .wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cta-band h2{margin:0;color:#111;font-size:clamp(2rem,4.2vw,3.4rem)}
.cta-band p{margin:.4em 0 0;font-weight:600;font-size:1.15rem}
.cta-band .btn-call{background:#111;color:var(--y)!important;animation:none;box-shadow:0 18px 40px -12px rgba(0,0,0,.6)}
.cta-band .btn-wa{box-shadow:none}

/* FAQ */
.faq{max-width:900px;margin:0 auto}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:20px 60px 20px 24px;font-weight:700;font-size:1.1rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--y);color:#111;display:grid;place-items:center;font-size:1.4rem;font-weight:800;transition:.25s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details[open]{border-color:rgba(255,196,0,.5)}
.faq .a{padding:0 24px 20px;color:var(--mut)}

/* form */
.form{display:grid;gap:14px}
.form label{font-weight:700;font-size:.95rem;display:block;margin-bottom:6px}
.form input,.form select,.form textarea{width:100%;background:#0e0e12;border:1.5px solid #33333d;color:var(--tx);border-radius:12px;padding:14px 16px;font:inherit;font-size:1rem}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--y);box-shadow:0 0 0 3px rgba(255,196,0,.18)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .btn{width:100%}
.note{font-size:.88rem;color:var(--dim)}

/* page hero (interior) */
.phero{position:relative;padding:54px 0 90px;overflow:hidden;
  background:radial-gradient(700px 380px at 85% 10%,rgba(255,170,0,.24),transparent 60%),radial-gradient(500px 300px at 0% 100%,rgba(34,163,90,.14),transparent 60%),#0b0b0e}
.phero .wrap{display:grid;grid-template-columns:1.4fr .8fr;gap:40px;align-items:center}
.phero h1{font-size:clamp(2.4rem,5.4vw,4.4rem)}
.phero .mini-logo{width:100%;max-width:380px;margin-left:auto;filter:drop-shadow(0 24px 40px rgba(0,0,0,.7))}
.crumbs{font-size:.9rem;color:var(--dim);margin-bottom:18px}
.crumbs a{color:var(--mut)} .crumbs a:hover{color:var(--y)}
.crumbs span{margin:0 8px;color:var(--y)}

/* content */
.content{display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:start}
.prose h2{font-size:clamp(1.9rem,3.4vw,2.7rem);margin-top:1.4em}
.prose h2:first-child{margin-top:0}
.prose h3{margin-top:1.4em;color:var(--y)}
.prose p,.prose li{color:#d2d2da}
.prose li{margin-bottom:.5em}
.prose strong{color:#fff}
.aside{position:sticky;top:100px;display:grid;gap:18px}
.aside .panel{padding:28px}
.aside h3{font-size:1.6rem}
.aside .btn{width:100%;font-size:1.3rem}
.aside ul{list-style:none;padding:0;margin:0}
.aside li a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);color:var(--mut);font-weight:600}
.aside li a:hover{color:var(--y)}
.aside li a::after{content:"›";color:var(--y)}
.info-box{border-left:5px solid var(--y);background:rgba(255,196,0,.06);padding:18px 22px;border-radius:0 14px 14px 0;margin:1.4em 0;color:#e7e7ee}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:1em 0 1.4em}
.tags span{background:#1d1d23;border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.92rem;font-weight:600;color:var(--sand)}

/* footer */
.ftr{background:#060608;border-top:1px solid var(--line);padding:70px 0 120px;color:var(--mut);font-size:.96rem}
.ftr .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px}
.ftr h4{color:var(--tx);font-size:1.3rem;margin-bottom:14px}
.ftr ul{list-style:none;padding:0;margin:0}
.ftr li{margin-bottom:8px}
.ftr a{color:var(--mut)} .ftr a:hover{color:var(--y)}
.ftr .logo{width:230px;margin-bottom:16px}
.ftr .phone{font-family:var(--fd);font-style:italic;font-weight:800;font-size:2.1rem;color:var(--y)}
.legal{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.88rem;color:var(--dim)}

/* floating */
.fab-wa{position:fixed;right:20px;bottom:24px;z-index:80;width:64px;height:64px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 14px 34px -8px rgba(37,211,102,.75);transition:transform .2s}
.fab-wa:hover{transform:scale(1.08)}
.fab-wa svg{width:34px;height:34px;color:#fff}
.mbar{display:none}

/* reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .nav{display:none;position:fixed;inset:78px 0 auto 0;background:#0b0b0e;flex-direction:column;align-items:stretch;padding:16px 4vw 26px;border-bottom:1px solid var(--line);gap:2px}
  .nav.open{display:flex}
  .nav a{font-size:1.4rem;padding:13px 10px}
  .burger{display:block}
  .g4,.steps{grid-template-columns:repeat(2,1fr)}
  .ftr .cols{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  body{font-size:16.5px}
  .hero .wrap,.phero .wrap,.split,.content{grid-template-columns:1fr}
  .hero{padding:30px 0 96px}
  .hero-art{order:-1;max-width:520px;margin:0 auto}
  .phero .mini-logo{display:none}
  .g3{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr)}
  .aside{position:static}
  .sec{padding:72px 0}
  .hdr-call .t{display:none}
  .hdr-call{padding:11px 14px}
}
@media (max-width:620px){
  .g2,.g3,.g4,.steps{grid-template-columns:1fr}
  .form .row{grid-template-columns:1fr}
  .btn{width:100%;font-size:1.35rem}
  .brand img{height:52px}
  .hdr .wrap{height:70px}
  .nav{inset:70px 0 auto 0}
  .topbar .hide-m{display:none}
  .ftr .cols{grid-template-columns:1fr}
  .fab-wa{display:none}
  .mbar{display:grid;grid-template-columns:1.4fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:90;box-shadow:0 -10px 30px rgba(0,0,0,.6)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 8px;font-family:var(--fd);font-weight:800;font-style:italic;font-size:1.35rem;text-transform:uppercase}
  .mbar a svg{width:24px;height:24px}
  .mbar .c{background:var(--y);color:#111}
  .mbar .w{background:var(--wa);color:#062b14}
  .stat b{font-size:2.3rem}
}
.hdr-call svg{width:22px;height:22px}
@media (max-width:620px){.topbar a{display:none}.topbar .wrap{justify-content:center}}

/* ---- paisaje en movimiento (palmeras + carretera) ---- */
.scenery{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.scenery::before{content:"";position:absolute;left:0;right:0;bottom:34px;height:260px;background:linear-gradient(180deg,transparent,rgba(255,150,0,.20) 70%,rgba(255,120,0,.28))}
.scenery i{position:absolute;left:0;bottom:34px;background-repeat:repeat-x;background-position:0 100%;will-change:transform}
.scenery .far{height:160px;width:calc(100% + 520px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 160'%3E%3Cpath fill='%233b2a0c' d='M54.4 160Q60.1 112.5 67.2 65.0L72.8 65.0Q66.9 112.5 65.6 160ZM70.0 65.0Q46.5 47.2 21.2 84.3Q45.2 54.9 70.0 65.0ZM70.0 65.0Q50.3 36.4 24.1 74.5Q45.8 42.8 70.0 65.0ZM70.0 65.0Q64.1 33.9 48.2 60.1Q57.1 37.6 70.0 65.0ZM70.0 65.0Q75.6 41.0 70.0 53.8Q67.8 41.0 70.0 65.0ZM70.0 65.0Q85.8 39.1 91.8 60.1Q78.9 35.5 70.0 65.0ZM70.0 65.0Q96.1 45.5 115.9 74.5Q91.7 39.1 70.0 65.0ZM70.0 65.0Q95.4 58.2 118.8 84.3Q94.0 50.5 70.0 65.0ZM70.0 65.0Q49.3 58.6 32.4 93.3Q52.0 65.9 70.0 65.0ZM70.0 65.0Q86.9 69.1 107.6 93.3Q89.6 61.7 70.0 65.0ZM145.8 160Q144.7 125.0 139.9 90.0L144.1 90.0Q149.7 125.0 154.2 160ZM142.0 90.0Q124.4 76.6 105.4 104.4Q123.4 82.4 142.0 90.0ZM142.0 90.0Q127.2 68.5 107.6 97.2Q123.8 73.3 142.0 90.0ZM142.0 90.0Q137.5 66.7 125.7 86.3Q132.3 69.4 142.0 90.0ZM142.0 90.0Q146.2 72.0 142.0 81.6Q140.3 72.0 142.0 90.0ZM142.0 90.0Q153.9 70.6 158.3 86.3Q148.7 67.8 142.0 90.0ZM142.0 90.0Q161.6 75.4 176.4 97.2Q158.2 70.6 142.0 90.0ZM142.0 90.0Q161.0 84.9 178.6 104.4Q160.0 79.1 142.0 90.0ZM142.0 90.0Q126.5 85.2 113.8 111.2Q128.5 90.7 142.0 90.0ZM142.0 90.0Q154.7 93.1 170.2 111.2Q156.7 87.6 142.0 90.0ZM323.7 160Q331.1 105.0 340.9 50.0L347.1 50.0Q338.7 105.0 336.3 160ZM344.0 50.0Q317.6 30.0 289.0 71.7Q316.1 38.6 344.0 50.0ZM344.0 50.0Q321.8 17.8 292.4 60.7Q316.8 25.0 344.0 50.0ZM344.0 50.0Q337.3 15.0 319.5 44.5Q329.5 19.1 344.0 50.0ZM344.0 50.0Q350.3 23.0 344.0 37.4Q341.5 23.0 344.0 50.0ZM344.0 50.0Q361.8 20.9 368.5 44.5Q354.0 16.8 344.0 50.0ZM344.0 50.0Q373.4 28.1 395.6 60.7Q368.4 20.9 344.0 50.0ZM344.0 50.0Q372.6 42.4 399.0 71.7Q371.0 33.7 344.0 50.0ZM344.0 50.0Q320.7 42.8 301.7 81.9Q323.7 51.1 344.0 50.0ZM344.0 50.0Q363.0 54.6 386.3 81.9Q366.0 46.3 344.0 50.0ZM436.5 160Q435.8 130.0 432.2 100.0L435.8 100.0Q440.0 130.0 443.5 160ZM434.0 100.0Q419.3 88.9 403.5 112.0Q418.5 93.7 434.0 100.0ZM434.0 100.0Q421.7 82.1 405.3 106.0Q418.9 86.1 434.0 100.0ZM434.0 100.0Q430.3 80.6 420.4 96.9Q426.0 82.9 434.0 100.0ZM434.0 100.0Q437.5 85.0 434.0 93.0Q432.6 85.0 434.0 100.0ZM434.0 100.0Q443.9 83.8 447.6 96.9Q439.6 81.5 434.0 100.0ZM434.0 100.0Q450.3 87.8 462.7 106.0Q447.5 83.8 434.0 100.0ZM434.0 100.0Q449.9 95.8 464.5 112.0Q449.0 90.9 434.0 100.0ZM434.0 100.0Q421.1 96.0 410.5 117.7Q422.7 100.6 434.0 100.0ZM434.0 100.0Q444.5 102.6 457.5 117.7Q446.2 98.0 434.0 100.0Z'/%3E%3C/svg%3E");background-size:520px 160px;opacity:.9;animation:drive 26s linear infinite;--t:-520px;bottom:44px}
.scenery .near{height:300px;width:calc(100% + 900px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 300'%3E%3Cpath fill='%23050507' d='M109.5 300Q123.5 185.0 142.8 70.0L153.2 70.0Q136.1 185.0 130.5 300ZM148.0 70.0Q104.0 36.6 56.4 106.1Q101.5 51.1 148.0 70.0ZM148.0 70.0Q111.0 16.3 62.0 87.9Q102.6 28.3 148.0 70.0ZM148.0 70.0Q136.8 11.7 107.2 60.8Q123.9 18.6 148.0 70.0ZM148.0 70.0Q158.5 25.0 148.0 49.0Q143.8 25.0 148.0 70.0ZM148.0 70.0Q177.7 21.5 188.8 60.8Q164.7 14.6 148.0 70.0ZM148.0 70.0Q197.0 33.5 234.0 87.9Q188.6 21.4 148.0 70.0ZM148.0 70.0Q195.6 57.3 239.6 106.1Q193.1 42.8 148.0 70.0ZM148.0 70.0Q109.2 58.0 77.5 123.1Q114.2 71.8 148.0 70.0ZM148.0 70.0Q179.6 77.7 218.5 123.1Q184.7 63.9 148.0 70.0ZM252.3 300Q248.4 225.0 236.2 150.0L243.8 150.0Q257.6 225.0 267.7 300ZM240.0 150.0Q207.8 125.5 172.8 176.5Q205.9 136.1 240.0 150.0ZM240.0 150.0Q212.9 110.6 176.9 163.1Q206.7 119.4 240.0 150.0ZM240.0 150.0Q231.8 107.2 210.0 143.2Q222.3 112.3 240.0 150.0ZM240.0 150.0Q247.7 117.0 240.0 134.6Q236.9 117.0 240.0 150.0ZM240.0 150.0Q261.8 114.4 270.0 143.2Q252.3 109.4 240.0 150.0ZM240.0 150.0Q276.0 123.2 303.1 163.1Q269.8 114.4 240.0 150.0ZM240.0 150.0Q274.9 140.7 307.2 176.5Q273.0 130.0 240.0 150.0ZM240.0 150.0Q211.5 141.2 188.3 188.9Q215.2 151.3 240.0 150.0ZM240.0 150.0Q263.2 155.6 291.7 188.9Q266.9 145.5 240.0 150.0ZM688.1 300Q682.4 170.0 664.0 40.0L676.0 40.0Q696.6 170.0 711.9 300ZM670.0 40.0Q620.2 2.1 566.2 80.9Q617.3 18.5 670.0 40.0ZM670.0 40.0Q628.1 -20.9 572.5 60.3Q618.5 -7.2 670.0 40.0ZM670.0 40.0Q657.4 -26.1 623.7 29.5Q642.7 -18.3 670.0 40.0ZM670.0 40.0Q681.9 -11.0 670.0 16.2Q665.2 -11.0 670.0 40.0ZM670.0 40.0Q703.7 -14.9 716.3 29.5Q688.9 -22.8 670.0 40.0ZM670.0 40.0Q725.6 -1.4 767.5 60.3Q716.0 -15.0 670.0 40.0ZM670.0 40.0Q724.0 25.6 773.8 80.9Q721.1 9.2 670.0 40.0ZM670.0 40.0Q626.0 26.4 590.1 100.2Q631.7 42.0 670.0 40.0ZM670.0 40.0Q705.9 48.7 749.9 100.2Q711.6 33.1 670.0 40.0Z'/%3E%3C/svg%3E");background-size:900px 300px;animation:drive 11s linear infinite;--t:-900px}
.scenery .road{height:4px;bottom:46px;width:calc(100% + 120px);background-image:repeating-linear-gradient(90deg,rgba(255,215,90,.85) 0 60px,transparent 60px 120px);animation:drive 1.1s linear infinite;--t:-120px;opacity:.75}
@keyframes drive{to{transform:translateX(var(--t))}}
@media (max-width:900px){.scenery .near{height:200px;background-size:600px 200px;width:calc(100% + 600px);--t:-600px}.scenery .far{height:110px;background-size:357px 110px;width:calc(100% + 357px);--t:-357px}}
/* ---- mejoras v2 ---- */
.onroute{position:absolute;z-index:3;right:0;top:2%;display:flex;flex-direction:column;gap:2px;background:rgba(9,9,11,.88);border:2px solid var(--y);border-radius:16px;padding:10px 16px 10px 34px;color:var(--tx)!important;font-family:var(--fd);font-weight:800;font-style:italic;text-transform:uppercase;letter-spacing:.6px;font-size:1rem;box-shadow:0 14px 30px -10px rgba(0,0,0,.8);backdrop-filter:blur(6px)}
.onroute .dot{position:absolute;left:13px;top:15px}
.onroute b{font-size:1.5rem;color:var(--y);line-height:1}
.hdr-call svg{width:24px;height:24px}
.v16{counter-reset:v;list-style:none;padding:0;margin:0 0 26px}
.v16 li{counter-increment:v;position:relative;padding:10px 0 10px 54px;color:var(--mut);border-bottom:1px dashed var(--line)}
.v16 li b{color:var(--tx)}
.v16 li::before{content:counter(v);position:absolute;left:0;top:8px;width:38px;height:38px;border-radius:50%;background:var(--y);color:#111;display:grid;place-items:center;font-family:var(--fd);font-weight:800;font-size:1.3rem}
.dist{list-style:none;padding:0;margin:0 0 14px;columns:2;column-gap:26px}
.dist li{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid var(--line);break-inside:avoid}
.dist li a{color:var(--tx);font-weight:600}
.dist li a:hover{color:var(--y)}
.dist li span{color:var(--y);font-family:var(--fd);font-weight:800;font-style:italic;font-size:1.15rem;white-space:nowrap}
.nav a[href="/en/"]{border:1.5px solid var(--line);margin-left:6px}
@media (max-width:620px){.dist{columns:1}.onroute{font-size:.85rem;padding:8px 12px 8px 30px}.onroute b{font-size:1.2rem}}
/* ---- v3: sin franjas ni líneas de carretera ---- */
.hazard,.scenery .road{display:none!important}
.scenery i{bottom:0}
.scenery .far{bottom:10px}
.scenery::before{bottom:0}
.hero,.phero{border-bottom:1px solid var(--line)}
.hero{padding-bottom:90px}
.phero{padding-bottom:70px}
.panel::before{height:4px;background:linear-gradient(90deg,var(--y),var(--amber))!important}
.eyebrow::before{background:var(--y)!important}
/* ---- v4: verde WhatsApp más intenso ---- */
:root{--wa:#00B140;--palm:#00A63E}
.btn-wa{background:linear-gradient(180deg,#22D45F,#00B140 55%,#008F33);color:#fff!important;box-shadow:0 0 0 4px rgba(0,177,64,.18),0 16px 36px -12px rgba(0,177,64,.85)}
.btn-wa:hover{background:linear-gradient(180deg,#2BE068,#00C247 55%,#009C38)}
.fab-wa{background:#00B140;box-shadow:0 14px 34px -8px rgba(0,177,64,.85)}
.mbar .w{background:#00B140;color:#fff}
.green{color:#00C247}
.hdr-call{background:linear-gradient(180deg,#22D45F,#00B140 60%,#008F33);color:#fff!important;box-shadow:0 0 0 1px rgba(0,177,64,.4),0 14px 34px -10px rgba(0,177,64,.75)}
.hdr-call:hover{background:#00C247}
/* ---- v5: correcciones auditoría ---- */
.brand,.brand img{flex:none}
@media (max-width:1280px) and (min-width:1081px){.nav a{padding:9px 9px;font-size:1.05rem}.hdr-call{font-size:1.15rem;padding:10px 14px}}
/* ---- v6: franjas de la banda CTA en movimiento ---- */
.cta-band::before{inset:0 -70px 0 0;animation:ctaslide 2.8s linear infinite;will-change:transform}
@keyframes ctaslide{to{transform:translateX(-62.23px)}}
/* ================= v7: MÓVIL A FONDO ================= */
.hero-btns{margin-top:26px}
.hero .badges{margin:24px 0 0}
.mbar{padding-bottom:env(safe-area-inset-bottom)}
@media (max-width:620px){
  body{font-size:16px;line-height:1.6}
  .sec{padding:52px 0}
  .sec-head{margin-bottom:28px}
  .lead{font-size:1.05rem}
  .eyebrow{font-size:.9rem;letter-spacing:1.4px;margin-bottom:.6rem}
  .eyebrow::before{width:22px}
  h2{font-size:clamp(1.8rem,8.4vw,2.4rem)}
  /* hero compacto: botones arriba */
  .hero{padding:14px 0 70px}
  .hero .wrap{gap:6px}
  .hero-art{max-width:300px}
  .onroute{top:-2%;right:-4%}
  .hero h1{font-size:2.55rem;margin-bottom:.35em}
  .hero .lead{font-size:1.05rem;margin-bottom:0}
  .hero-btns{margin-top:18px;gap:10px}
  .btn{padding:16px 22px;font-size:1.25rem}
  .hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
  .badge{font-size:.82rem;padding:8px 10px;justify-content:center;text-align:center;line-height:1.2}
  .trust-line{display:none}
  .scenery .near{opacity:.7}
  /* stats */
  .stats{gap:10px;margin-top:24px!important}
  .stat{padding:14px 8px}
  .stat b{font-size:2rem}
  .stat span{font-size:.82rem;display:block;line-height:1.3}
  /* tarjetas de servicio en fila compacta */
  .grid.g3>.card,.grid.g2>.card{display:grid;grid-template-columns:52px 1fr;column-gap:14px;align-items:center;padding:16px 16px;border-radius:18px}
  .grid.g3>.card .ico,.grid.g2>.card .ico{width:52px;height:52px;border-radius:14px;margin:0;grid-row:1/3}
  .grid.g3>.card .ico svg,.grid.g2>.card .ico svg{width:28px;height:28px}
  .grid.g3>.card h3,.grid.g2>.card h3{font-size:1.2rem;margin:0 0 2px}
  .grid.g3>.card p,.grid.g2>.card p{font-size:.9rem;line-height:1.4;margin:0}
  .grid.g3>.card .more{display:none}
  .grid.g2>.card .more{display:none}
  .grid.g3>a.card::before,.grid.g2>a.card::before{content:"›";position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:1.8rem;color:var(--y);font-weight:700}
  .grid.g3>a.card,.grid.g2>a.card{padding-right:34px}
  .grid{gap:10px}
  /* barrios: sin icono */
  .g4>.card{padding:18px}
  .g4>.card .ico{display:none}
  .g4>.card h3{font-size:1.25rem}
  .g4>.card p{font-size:.92rem;margin:0}
  /* pasos en horizontal */
  .steps{gap:10px}
  .step{display:grid;grid-template-columns:58px 1fr;column-gap:12px;align-items:center;padding:16px}
  .step::before{font-size:2.6rem;margin:0;grid-row:1/3}
  .step h3{font-size:1.15rem;margin:0 0 2px}
  .step p{font-size:.92rem}
  /* checks y paneles */
  .checks li{padding-left:34px;margin-bottom:10px;font-size:.95rem}
  .checks li::before{width:22px;height:22px;background-size:13px}
  .panel{padding:24px 20px;border-radius:20px}
  .pay{gap:8px}.pay span{padding:9px 12px;font-size:.92rem}
  /* zonas en 2 columnas */
  .zones{grid-template-columns:1fr 1fr;gap:8px}
  .zone{padding:12px;font-size:.92rem;border-radius:12px}
  .zone small{display:none}
  .zone svg{width:18px;height:18px}
  /* distancias más compactas */
  .dist li{padding:7px 0;font-size:.95rem}
  .v16 li{padding:8px 0 8px 46px;font-size:.95rem}
  .v16 li::before{width:32px;height:32px;font-size:1.1rem;top:7px}
  /* FAQ */
  .faq summary{padding:16px 54px 16px 18px;font-size:1rem}
  .faq summary::after{right:16px;width:26px;height:26px;font-size:1.2rem}
  .faq .a{padding:0 18px 16px;font-size:.95rem}
  /* banda CTA */
  .cta-band{padding:40px 0}
  .cta-band .btns{width:100%}
  /* páginas interiores */
  .phero{padding:22px 0 40px}
  .phero h1{font-size:2.2rem}
  .crumbs{font-size:.8rem;margin-bottom:10px}
  .content{gap:28px}
  .prose h2{font-size:1.75rem;margin-top:1.2em}
  .tags span{font-size:.82rem;padding:5px 11px}
  .info-box{padding:14px 16px;font-size:.95rem}
  .aside{gap:12px}
  /* formulario */
  .form{gap:10px}
  .form input,.form select,.form textarea{padding:13px 14px;font-size:16px}
  /* footer en 2 columnas */
  .ftr{padding:44px 0 110px;font-size:.92rem}
  .ftr .cols{grid-template-columns:1fr 1fr;gap:26px 18px}
  .ftr .cols>div:first-child{grid-column:1/-1}
  .ftr .cols>div:last-child{grid-column:1/-1}
  .ftr .logo{width:180px}
  .ftr li{margin-bottom:6px}
  .legal{flex-direction:column;gap:4px;margin-top:26px}
  /* menú móvil: cubre pantalla y deja ver los botones */
  .nav.open{max-height:calc(100vh - 70px);overflow:auto;box-shadow:0 30px 40px rgba(0,0,0,.6)}
  .nav a{font-size:1.3rem;padding:12px 8px;border-bottom:1px solid var(--line)}
}
@media (max-width:360px){
  .hero h1{font-size:2.2rem}
  .btn{font-size:1.1rem;padding:15px 16px}
  .mbar a{font-size:1.15rem}
  .stats{grid-template-columns:1fr 1fr}
}
@media (max-width:1080px){.nav a[href="/en/"]{border:0;border-bottom:1px solid var(--line);margin:0}}
/* ---- v8: aura de colores adaptada al logo ---- */
.aura{position:absolute;inset:-6% -4%;z-index:1;pointer-events:none}
.aura i{position:absolute;border-radius:50%;filter:blur(42px);opacity:.5;animation:breathe 5.5s ease-in-out infinite;will-change:transform,opacity}
.aura .a-blue{left:44%;top:-2%;width:38%;height:36%;background:#2B6BE8}
.aura .a-green1{left:14%;top:6%;width:28%;height:32%;background:#1FAE55;animation-delay:-1.4s}
.aura .a-green2{left:72%;top:16%;width:30%;height:38%;background:#1FAE55;animation-delay:-2.8s}
.aura .a-sand{left:-2%;top:20%;width:26%;height:44%;background:#E7B96F;animation-delay:-3.6s}
.aura .a-yellow{left:16%;top:52%;width:70%;height:42%;background:#FFC400;animation-delay:-.7s}
@keyframes breathe{0%,100%{opacity:.32;transform:scale(.9)}50%{opacity:.72;transform:scale(1.1)}}
.beacon{z-index:1;opacity:.55;background:conic-gradient(from 0deg,transparent,rgba(255,255,255,.35) 8%,transparent 18%,transparent 50%,rgba(255,220,120,.35) 58%,transparent 68%)}
@media (max-width:620px){.aura i{filter:blur(28px)}}
/* aura más visible, desbordando el logo */
.aura{inset:-16% -12%}
.aura i{filter:blur(46px)}
.aura .a-blue{left:38%;top:-4%;width:44%;height:34%}
.aura .a-green1{left:4%;top:4%;width:30%;height:34%}
.aura .a-green2{left:74%;top:14%;width:30%;height:42%}
.aura .a-sand{left:-6%;top:28%;width:26%;height:44%}
.aura .a-yellow{left:10%;top:66%;width:80%;height:34%}
@keyframes breathe{0%,100%{opacity:.5;transform:scale(.9)}50%{opacity:.95;transform:scale(1.12)}}
.aura .a-sand{left:2%;width:22%}
.aura,.beacon{display:none!important}
