:root{--petrol:#183B45;--green:#6E8F84;--bg:#F5F7F7;--white:#fff;--text:#1f2b2f;--muted:#667478;--line:#dbe4e1;--shadow:0 18px 50px rgba(24,59,69,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--text);background:#fff;line-height:1.65}h1,h2,h3{font-family:Manrope,Inter,sans-serif;color:var(--petrol);line-height:1.12;margin-top:0}h1{font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.04em;margin-bottom:1.25rem}h2{font-size:clamp(2rem,3.4vw,3.2rem);letter-spacing:-.03em;margin-bottom:1rem}h3{font-size:1.18rem}p{margin:.6rem 0 1rem}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}.narrow{max-width:820px}.center{text-align:center}.section{padding:88px 0}.alt{background:var(--bg)}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:800;color:var(--green);margin-bottom:14px}.eyebrow.light{color:#d7e8e2}.lead{font-size:1.22rem;color:#31484f}.small{font-size:.92rem;color:var(--muted)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(219,228,225,.8)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--petrol);color:#fff;display:grid;place-items:center;font-size:.85rem;font-weight:800}.brand-text{font-weight:600}.brand-text strong{font-weight:800}.main-nav{display:flex;align-items:center;gap:24px;font-size:.94rem;font-weight:600}.main-nav>a:not(.btn){color:#3f5055}.menu-toggle{display:none;border:0;background:transparent;font-size:1.7rem;color:var(--petrol)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:12px;font-weight:800;border:1px solid transparent;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--petrol);color:#fff}.btn-primary:hover{background:#0f3038}.btn-secondary{border-color:var(--petrol);color:var(--petrol);background:#fff}.btn-secondary:hover{background:#eef4f2}.btn-light{background:#fff;color:var(--petrol)}.btn-sm{padding:10px 16px}.full{width:100%}
.hero{padding-top:68px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center}.hero-copy p{max-width:720px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-card{background:linear-gradient(145deg,#f6f9f8,#eef3f1);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow)}.building-visual svg{width:100%;display:block}.hero-card-copy{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:4px 8px 2px;color:var(--petrol)}.hero-card-copy span{font-size:.9rem;color:var(--muted)}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.trust-strip div{padding:22px 24px;border-right:1px solid var(--line)}.trust-strip div:last-child{border-right:0}.trust-strip strong,.trust-strip span{display:block}.trust-strip span{font-size:.85rem;color:var(--muted);margin-top:4px}
.cards-3,.cards-2{display:grid;gap:22px;margin-top:38px}.cards-3{grid-template-columns:repeat(3,1fr)}.cards-2{grid-template-columns:repeat(2,1fr)}.info-card,.big-card,.price-card,.credential-card,.note-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 10px 30px rgba(24,59,69,.05)}.icon{width:48px;height:48px;border-radius:14px;background:#e9f0ee;color:var(--petrol);display:grid;place-items:center;font-size:1.4rem;font-weight:800;margin-bottom:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px}.align-center{align-items:center}.compare-box{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.compare-head,.compare-row{display:grid;grid-template-columns:1.7fr .6fr .8fr;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);align-items:center}.compare-head{background:#edf3f1}.compare-row:last-child{border-bottom:0}.compare-row b{text-align:center;color:var(--petrol)}.note-card{margin-top:26px}.big-card .big-number{font-family:Manrope;font-size:3.4rem;font-weight:800;color:var(--green);line-height:1}.stats-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px auto 24px}.stats-strip>div{background:var(--petrol);color:#fff;border-radius:16px;padding:22px}.stats-strip span,.stats-strip strong,.stats-strip small{display:block}.stats-strip span{opacity:.75;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.stats-strip strong{font-family:Manrope;font-size:1.55rem;margin:4px 0}.stats-strip small{opacity:.78}
.aid{background:var(--petrol);color:#fff}.aid h2,.aid h3{color:#fff}.aid-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:56px;align-items:center}.aid-number{font-family:Manrope;font-size:clamp(4.5rem,10vw,8rem);font-weight:800;letter-spacing:-.06em;line-height:.9;color:#fff}.aid-number span{font-size:.45em;color:#b9d0c8}.pill-row{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 28px}.pill-row span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:.9rem}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}.benefit-grid>div{padding:22px;border-radius:18px;background:var(--bg)}.benefit-grid span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dfeae6;color:var(--petrol);font-weight:800}.benefit-grid strong{display:block;margin-top:14px}.benefit-grid p{font-size:.92rem;color:var(--muted)}.process{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:38px}.process article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.process article span{font-family:Manrope;color:var(--green);font-size:1.5rem;font-weight:800}.credential-card{text-align:center}.stamp{width:110px;height:110px;margin:0 auto 18px;border-radius:50%;border:4px solid var(--green);display:grid;place-items:center;color:var(--petrol);font-family:Manrope;font-size:2rem;font-weight:800}.credential-card strong,.credential-card span{display:block}.credential-card span{color:var(--muted);font-size:.92rem}.price-card{background:#eef4f2;display:flex;flex-direction:column;justify-content:center}.price-card strong{font-family:Manrope;font-size:1.35rem;color:var(--petrol);margin-bottom:10px}
.quote{background:#214b56;color:#fff}.quote h2{color:#fff}.quote-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}.contact-box{display:flex;flex-direction:column;gap:8px;margin-top:28px}.contact-box a{font-size:1.08rem}.quote-form{background:#fff;color:var(--text);padding:28px;border-radius:22px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-weight:700;font-size:.92rem}.field label span{font-weight:500;color:var(--muted)}.field input,.field textarea{width:100%;border:1px solid #ccd8d4;border-radius:10px;padding:13px 14px;font:inherit;background:#fbfcfc;outline:none}.field input:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(110,143,132,.15)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;margin:6px 0 16px}.check input{margin-top:4px}.form-note{font-size:.8rem;color:var(--muted)}.form-status{font-size:.9rem;font-weight:700;margin-top:10px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:30px}.map-card{background:var(--bg);border-radius:22px;padding:22px}.map-card svg{width:100%;display:block}.towns{display:flex;flex-wrap:wrap;gap:10px}.towns span{padding:10px 14px;border-radius:999px;background:#edf3f1;color:var(--petrol);font-weight:700;font-size:.9rem}
.faq-list{max-width:900px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:0 18px}.faq-list summary{cursor:pointer;list-style:none;font-weight:800;color:var(--petrol);padding:18px 4px;position:relative;padding-right:34px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:4px;top:14px;font-size:1.4rem;color:var(--green)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 4px 18px;color:#4d5f64}.final-cta{background:var(--green);color:#fff}.final-cta h2{color:#fff}.site-footer{background:#102d34;color:#d9e4e1;padding:58px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:40px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid strong{color:#fff}.footer-grid a{color:#d9e4e1}.footer-brand .brand-mark{background:#fff;color:var(--petrol)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:18px;font-size:.85rem;color:#a9bbb6}
@media(max-width:980px){.main-nav{position:fixed;left:20px;right:20px;top:84px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;display:none;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.split,.aid-grid,.quote-grid,.location-grid{grid-template-columns:1fr}.cards-3{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.trust-strip{grid-template-columns:1fr 1fr}.aid-number{text-align:left}.benefit-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.section{padding:64px 0}.container{width:min(100% - 28px,1160px)}.hero{padding-top:44px}.hero-actions,.hero-actions .btn{width:100%}.cards-3,.cards-2,.benefit-grid,.process,.stats-strip,.form-grid,.footer-grid{grid-template-columns:1fr}.trust-strip{grid-template-columns:1fr}.trust-strip div{border-right:0;border-bottom:1px solid var(--line)}.trust-strip div:last-child{border-bottom:0}.hero-card-copy{flex-direction:column;align-items:flex-start}.compare-head,.compare-row{grid-template-columns:1.5fr .5fr .7fr;font-size:.9rem}.aid-number{font-size:4.8rem}.quote-form{padding:20px}.site-footer{padding-top:44px}}

/* V2 visual refinements */
.hero-official{padding:26px;background:linear-gradient(145deg,#f8fbfa,#edf3f1)}
.hero-official-art{display:grid;place-items:center;min-height:330px;border-radius:22px;overflow:hidden;background:#f5f7f7}
.hero-official-art img{width:100%;height:100%;max-height:360px;object-fit:cover;display:block}
.hero-official .hero-card-copy{margin-top:12px}

.feature-cards .info-card{padding:32px 30px 30px}
.feature-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin-bottom:22px;box-shadow:0 0 0 10px rgba(110,143,132,.10)}
.feature-icon svg{width:44px;height:44px;display:block}
.feature-icon-petrol{background:var(--petrol);color:#fff;box-shadow:0 0 0 10px rgba(24,59,69,.09)}
.feature-icon-green{background:var(--green);color:#fff}

.realistic-map{padding:28px;background:linear-gradient(145deg,#f5f7f7,#edf3f1);border:1px solid var(--line)}
.realistic-map svg{filter:drop-shadow(0 12px 22px rgba(24,59,69,.06))}
.vega-outline{fill:#e7efec;stroke:#6E8F84;stroke-width:5;stroke-linejoin:round;filter:url(#softShadow)}
.coast-line{fill:none;stroke:#183B45;stroke-width:3;stroke-linecap:round;opacity:.35}
.map-point circle{fill:#183B45;stroke:#fff;stroke-width:3}
.map-point{cursor:default}
.map-caption{margin:12px 4px 0;color:var(--muted);font-size:.8rem;text-align:center}

@media(max-width:640px){
  .hero-official-art{min-height:250px}
  .hero-official-art img{max-height:300px}
  .feature-icon{width:68px;height:68px}
  .feature-icon svg{width:39px;height:39px}
  .realistic-map{padding:18px}
}

.vega-map-image{width:100%;height:auto;display:block;border-radius:18px;box-shadow:0 10px 24px rgba(24,59,69,.06);object-fit:contain;aspect-ratio:auto}

/* Legal / utility pages */
.legal-hero{padding:70px 0 28px;background:var(--bg)}
.legal-page{padding:42px 0 80px}
.legal-content{max-width:900px;margin:0 auto}
.legal-content h2{margin-top:34px;font-size:1.5rem}
.legal-content h3{margin-top:24px;font-size:1.1rem}
.legal-content p,.legal-content li{line-height:1.75}
.legal-content ul{padding-left:22px}
.legal-alert{padding:16px 18px;border:1px solid #e7c985;background:#fff9e8;border-radius:12px;margin:20px 0;color:#5c4b18}
.privacy-layer{font-size:.78rem;line-height:1.55;background:#f4f7f6;border:1px solid #d8e2de;border-radius:10px;padding:12px 14px;margin:8px 0 14px}
.privacy-layer strong{display:block;margin-bottom:5px;color:var(--petrol)}
.privacy-layer p{margin:0;color:#4c5f63}
.privacy-layer a,.check a{color:var(--petrol);text-decoration:underline}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.contact-card{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}
@media(max-width:760px){.contact-cards{grid-template-columns:1fr}.legal-hero{padding-top:44px}}


/* V5: mapa robusto sin deformación */
.map-card-v5{
  background:linear-gradient(145deg,#f5f7f7,#edf3f1);
  border:1px solid var(--line);
  border-radius:22px;
  padding:18px;
  overflow:hidden;
}
.map-visual-v5{
  width:100%;
  aspect-ratio:4 / 3;
  background-image:url("mapa-vega-baja-v5.webp?v=5");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  border-radius:16px;
}
@media(max-width:980px){
  .map-card-v5{max-width:760px;margin:0 auto;width:100%;}
}

.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.quote-form button[disabled]{opacity:.65;cursor:wait;transform:none}
