:root{--blue:#0d47a1;--blue2:#08306f;--white:#fff;--text:#102033;--muted:#64748b;--soft:#eef5ff;--line:rgba(13,71,161,.16);--shadow:0 22px 60px rgba(13,71,161,.18);--radius:28px;--container:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:linear-gradient(180deg,#f8fbff,#eaf3ff 48%,#fff);overflow-x:hidden}a{color:inherit;text-decoration:none}p{line-height:1.7}.container{width:min(var(--container),calc(100% - 32px));margin:auto}.progress{position:fixed;inset:0 auto auto 0;height:4px;background:linear-gradient(90deg,var(--blue),#6fb3ff);z-index:200;width:0}.topbar{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}.home-logo img{width:58px;height:58px;object-fit:contain;border-radius:14px;box-shadow:0 10px 26px rgba(13,71,161,.18)}.nav{display:flex;gap:18px;align-items:center;font-weight:850;color:#244262}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:3px;background:var(--blue);border-radius:99px;transition:.25s}.nav a:hover:after{width:100%}.top-actions{display:flex;align-items:center;gap:10px}.menu{display:none;border:0;background:var(--blue);color:#fff;border-radius:14px;width:48px;height:48px;font-size:1.4rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:999px;padding:.85rem 1.12rem;border:1px solid transparent;font-weight:900;cursor:pointer;transition:.2s transform,.2s box-shadow,.2s background}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(13,71,161,.18)}.btn-primary{background:linear-gradient(135deg,var(--blue),#1d66d2);color:white}.btn-white{background:white;color:var(--blue)}.btn-outline,.btn-ghost{border-color:rgba(13,71,161,.22);background:rgba(255,255,255,.60);color:var(--blue)}.big{padding:1rem 1.35rem}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(13,71,161,.32)}50%{box-shadow:0 0 0 12px rgba(13,71,161,0)}}.hero{position:relative;padding:36px 0 26px;background:radial-gradient(circle at 80% 0,rgba(13,71,161,.22),transparent 30%),linear-gradient(135deg,#fff,#e7f1ff);overflow:hidden}.hero-shape{position:absolute;border-radius:50%;filter:blur(2px);opacity:.28}.hero-shape.one{width:260px;height:260px;background:#0d47a1;right:-80px;top:80px}.hero-shape.two{width:180px;height:180px;background:#70b7ff;left:-50px;bottom:30px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch;position:relative}.hero-copy,.hero-card,.calc-card,.result-card,.service-card,.review-card,.contact-info,.contact-form,.article-grid article,.compare-card{border:1px solid rgba(13,71,161,.13);border-radius:var(--radius);background:rgba(255,255,255,.78);box-shadow:var(--shadow)}.hero-copy{padding:28px}.main-logo{width:100%;max-width:668px;border-radius:12px;box-shadow:0 12px 35px rgba(13,71,161,.25);margin-bottom:22px}.badge{display:inline-flex;border-radius:999px;background:rgba(13,71,161,.1);color:var(--blue);border:1px solid rgba(13,71,161,.16);padding:.45rem .75rem;font-size:.82rem;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.badge.light{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.25)}h1{font-size:clamp(2.1rem,4vw,4.7rem);line-height:1.01;letter-spacing:-.055em;margin:16px 0}h2{font-size:clamp(1.7rem,3vw,3rem);line-height:1.08;margin:12px 0}h3{margin:8px 0}.lead,.section-title p,.service-card p,.review-card p,.article-grid p,.calc-card p,.result-card p,.compare-card p{color:var(--muted)}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.trust-row div{background:linear-gradient(180deg,#fff,#eef5ff);border:1px solid rgba(13,71,161,.12);border-radius:20px;padding:16px}.trust-row strong{display:block;color:var(--blue);font-size:1.45rem}.trust-row span{color:var(--muted);font-size:.9rem}.hero-card{padding:24px;background:linear-gradient(160deg,var(--blue),var(--blue2));color:white;display:flex;flex-direction:column;justify-content:space-between;min-height:520px;position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;inset:-80px -120px auto auto;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.14)}.glass-card{position:relative;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:24px;padding:22px}.hero-icon{font-size:4rem}.quick-box{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}.quick-box button,.wizard-options button{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:white;border-radius:18px;padding:16px;font-weight:900;cursor:pointer;transition:.2s}.quick-box button:hover,.wizard-options button:hover{background:white;color:var(--blue);transform:translateY(-2px)}.open-box{position:relative;background:white;color:var(--text);border-radius:22px;padding:18px}.open-box strong,.open-box a{font-weight:900;color:var(--blue)}.dopamine-strip{background:var(--blue);color:white;overflow:hidden}.ticker{white-space:nowrap;padding:14px 0;font-weight:900}.ticker span{display:inline-block;animation:ticker 24s linear infinite}@keyframes ticker{from{transform:translateX(20%)}to{transform:translateX(-100%)}}.section{padding:62px 0}.soft{background:linear-gradient(180deg,rgba(13,71,161,.06),rgba(255,255,255,.35))}.section-title{text-align:center;max-width:780px;margin:0 auto 28px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{padding:22px;overflow:hidden;transition:.2s}.service-card:hover,.compare-card:hover,.review-card:hover,.article-grid article:hover{transform:translateY(-4px)}.service-card a,.review-card a{color:var(--blue);font-weight:900}.visual{height:135px;border-radius:22px;margin-bottom:16px;background:linear-gradient(135deg,var(--blue),#70b7ff);position:relative;overflow:hidden}.visual:after{position:absolute;right:16px;bottom:8px;font-size:4rem;filter:drop-shadow(0 10px 10px rgba(0,0,0,.18))}.home:after{content:"🏠"}.car:after{content:"🚗"}.life:after{content:"❤️"}.biz:after{content:"🏢"}.family:after{content:"👨‍👩‍👧"}.rc:after{content:"⚖️"}.blue-section{background:linear-gradient(135deg,var(--blue),var(--blue2));color:white}.assistant-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:26px;align-items:center}.wizard{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:24px}.wizard-question{font-size:1.4rem;font-weight:900}.wizard-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.wizard-result{margin-top:16px;background:white;color:var(--blue);padding:16px;border-radius:18px;font-weight:900}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.compare-card{padding:26px}.compare-card span{font-size:2.4rem}.compare-card button,.read-more{border:0;background:var(--blue);color:white;border-radius:999px;padding:.8rem 1rem;font-weight:900;cursor:pointer}.calc-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.calc-card,.result-card,.contact-info,.contact-form{padding:26px}.calc-card label{display:block;margin:14px 0 6px;font-weight:900}input,select,textarea{width:100%;border:1px solid rgba(13,71,161,.18);border-radius:16px;background:white;padding:14px 16px;font:inherit;color:var(--text);outline:none;margin-bottom:10px}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 4px rgba(13,71,161,.12);border-color:var(--blue)}textarea{min-height:135px;resize:vertical}.result-card{display:grid;place-content:center;background:linear-gradient(160deg,#fff,#dbeaff)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-card{padding:24px}.article-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.article-grid article{padding:24px}.article-grid span{color:var(--blue);font-weight:900}.article-more{max-height:0;overflow:hidden;transition:.35s}.article-more.open{max-height:180px}.contact{background:linear-gradient(135deg,var(--blue),var(--blue2));color:white}.contact-info,.contact-form{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18)}.contact-info img{width:96px;border-radius:18px}.contact a{font-weight:900}.contact-buttons,.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.light-outline{color:white;border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.08)}.privacy-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 10px;font-weight:700}.privacy-check input{width:auto;margin-top:4px}.privacy-check a{text-decoration:underline}.form-note{display:block;color:rgba(255,255,255,.82);line-height:1.55}.footer{background:#071f4a;color:white;padding:24px 0}.footer-inner{display:flex;justify-content:space-between;gap:14px;align-items:center}.footer span{display:block;opacity:.8}.footer nav{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.footer button{border:0;background:transparent;color:#fff;font:inherit;font-weight:900;cursor:pointer;padding:0}.floating{position:fixed;right:18px;bottom:18px;z-index:100;display:grid;gap:12px}.floating a,.floating button{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:white;box-shadow:var(--shadow);font-size:1.2rem;border:0;cursor:pointer}.reveal{opacity:0;transform:translateY(22px);transition:.7s ease}.reveal.show{opacity:1;transform:none}.delay{transition-delay:.12s}.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:300;display:none;grid-template-columns:1fr auto;gap:18px;align-items:center;background:white;color:var(--text);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 24px 80px rgba(0,0,0,.22)}.cookie-banner.show{display:grid}.cookie-banner p{margin:.25rem 0 0;color:var(--muted)}.cookie-actions,.modal-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button,.modal-actions button,.modal-close{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--blue);font-weight:900;padding:.8rem 1rem;cursor:pointer}.primary-cookie{background:var(--blue)!important;color:white!important}.cookie-modal{display:none;position:fixed;inset:0;background:rgba(3,12,30,.56);z-index:310;padding:18px;place-items:center}.cookie-modal.show{display:grid}.cookie-panel{position:relative;width:min(760px,100%);background:white;color:var(--text);border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.35);padding:28px}.modal-close{position:absolute;right:18px;top:18px;width:42px;height:42px;padding:0;font-size:1.4rem}.cookie-option{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:16px;margin:12px 0}.cookie-option span{display:block;color:var(--muted);font-size:.92rem}.switch input{display:none}.switch span{width:58px;height:32px;background:#cbd5e1;border-radius:999px;display:block;position:relative;cursor:pointer}.switch span:before{content:"";position:absolute;width:26px;height:26px;left:3px;top:3px;background:white;border-radius:50%;transition:.2s}.switch input:checked+span{background:var(--blue)}.switch input:checked+span:before{transform:translateX(26px)}@media(max-width:980px){.nav{display:none;position:absolute;top:78px;left:16px;right:16px;background:white;padding:18px;border-radius:20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu{display:block}.hero-grid,.assistant-grid,.calc-grid,.contact-grid,.service-grid,.review-grid,.article-grid,.compare-grid{grid-template-columns:1fr}.hero-card{min-height:auto}.wizard-options{grid-template-columns:1fr 1fr}.trust-row{grid-template-columns:1fr}.cookie-banner{grid-template-columns:1fr}}@media(max-width:620px){.top-actions .btn-ghost{display:none}.hero-copy,.hero-card{padding:20px}.wizard-options{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}.cookie-actions,.modal-actions{flex-direction:column}.cookie-actions button,.modal-actions button{width:100%}}

/* Mejoras añadidas: reseñas Google, teléfonos fijo/móvil y artículos */
.mobile-call{white-space:nowrap}.google-frame{grid-template-columns:1.25fr .85fr .85fr}.review-feature{background:linear-gradient(160deg,#fff,#eaf3ff);position:relative;overflow:hidden}.review-feature:after{content:"★★★★★";position:absolute;right:-18px;bottom:8px;font-size:4.4rem;color:rgba(13,71,161,.10);font-weight:900;letter-spacing:-.08em}.review-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.review-actions .btn-outline{background:#fff}.review-card small{display:block;color:var(--blue);font-weight:900;margin-top:10px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.insight-card{padding:24px;border:1px solid rgba(13,71,161,.13);border-radius:var(--radius);background:rgba(255,255,255,.86);box-shadow:var(--shadow);transition:.2s;position:relative;overflow:hidden}.insight-card:hover{transform:translateY(-4px)}.insight-card:before{content:"";position:absolute;right:-48px;top:-48px;width:130px;height:130px;border-radius:50%;background:rgba(13,71,161,.08)}.insight-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--blue),#70b7ff);font-size:1.8rem;margin-bottom:12px}.insight-card span{color:var(--blue);font-weight:900;text-transform:uppercase;font-size:.8rem;letter-spacing:.06em}.insight-card p{color:var(--muted)}.insight-card .article-more.open{max-height:220px}@media(max-width:980px){.google-frame,.insight-grid{grid-template-columns:1fr}.mobile-call{display:none}}

/* Actualización: prioridad móvil, mapa, tiempo y herramientas interactivas */
.phone-stack{display:flex;flex-direction:column;gap:7px;align-items:stretch;min-width:168px}.phone-stack a{display:flex;flex-direction:column;justify-content:center;gap:2px;border:1px solid rgba(13,71,161,.18);background:rgba(255,255,255,.9);border-radius:16px;padding:8px 12px;line-height:1.05;box-shadow:0 10px 24px rgba(13,71,161,.08)}.phone-stack a:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(13,71,161,.14)}.phone-stack span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.phone-stack strong{color:var(--blue);font-size:.98rem}.header-phone a:first-child{background:linear-gradient(135deg,var(--blue),#1976d2);border-color:transparent}.header-phone a:first-child span,.header-phone a:first-child strong{color:#fff}.mini-phone{margin-top:12px}.mini-phone a{background:rgba(255,255,255,.75)}.contact-phone{margin:16px 0;max-width:330px}.contact-phone a{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.30)}.contact-phone span,.contact-phone strong{color:#fff}.contact-phone a:first-child{background:rgba(255,255,255,.25)}
.interactive-grid{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:16px}.tool-card{padding:24px;border-radius:var(--radius);background:#fff;border:1px solid rgba(13,71,161,.14);box-shadow:var(--shadow)}.tool-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--blue),#75b6ff);font-size:1.8rem;margin-bottom:12px}.check-list{display:grid;gap:10px;margin:14px 0}.check-list label{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:14px;background:#f4f8ff;border:1px solid rgba(13,71,161,.10);cursor:pointer}.check-list input{width:auto;margin-top:3px}.score-box{padding:14px;border-radius:16px;background:linear-gradient(135deg,#eaf3ff,#fff);border:1px dashed rgba(13,71,161,.28);font-weight:800;color:var(--blue);margin:14px 0}.glossary-list{display:grid;gap:10px;margin-top:12px;max-height:320px;overflow:auto}.glossary-item{padding:12px;border-radius:14px;background:#f7fbff;border:1px solid rgba(13,71,161,.10)}.glossary-item strong{color:var(--blue);display:block}.glossary-item span{color:var(--muted);font-size:.95rem}.urgent-actions{display:grid;gap:10px;margin:14px 0}.location-weather-grid{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:16px;align-items:stretch}.map-card,.weather-card,.visit-card{background:#fff;border:1px solid rgba(13,71,161,.14);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.map-card iframe{display:none;width:100%;height:360px;border:0}.map-card.loaded iframe{display:block}.map-card.loaded .map-placeholder{display:none}.map-placeholder{min-height:360px;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,rgba(13,71,161,.95),rgba(25,118,210,.86)),radial-gradient(circle at top left,rgba(255,255,255,.24),transparent 34%);color:#fff;padding:28px}.map-placeholder strong{display:block;font-size:1.45rem}.map-placeholder span{display:block;margin:8px 0 18px;opacity:.9}.map-placeholder small{display:block;margin-top:12px;opacity:.78}.route-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;background:#f8fbff}.route-buttons a{padding:12px;border-radius:14px;background:#fff;border:1px solid rgba(13,71,161,.14);font-weight:900;text-align:center;color:var(--blue)}.route-buttons a:hover{background:var(--blue);color:#fff}.weather-card,.visit-card{padding:24px}.weather-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.weather-icon{width:64px;height:64px;border-radius:22px;background:linear-gradient(135deg,var(--blue),#77b9ff);display:grid;place-items:center;font-size:2rem}.weather-main{font-size:2.1rem;font-weight:900;color:var(--blue);margin:16px 0 10px}.weather-details{display:grid;grid-template-columns:1fr 1fr;gap:10px}.weather-details div{padding:12px;border-radius:14px;background:#f4f8ff;border:1px solid rgba(13,71,161,.10)}.weather-details strong{display:block;color:var(--blue)}.weather-details span{font-size:.86rem;color:var(--muted);font-weight:800;text-transform:uppercase}.weather-advice{color:var(--muted)}.visit-list{display:grid;gap:10px;margin:14px 0}.visit-list button{border:1px solid rgba(13,71,161,.15);background:#f7fbff;text-align:left;border-radius:14px;padding:13px;font-weight:900;color:var(--text);cursor:pointer}.visit-list button:hover,.visit-list button.active{background:var(--blue);color:#fff}#visitTip{padding:14px;border-radius:16px;background:#eaf3ff;color:var(--blue);font-weight:800}.delay2{transition-delay:.18s}
@media(max-width:1120px){.header-phone{display:none}.location-weather-grid,.interactive-grid{grid-template-columns:1fr}.route-buttons{grid-template-columns:1fr}.map-card iframe,.map-placeholder{height:auto;min-height:300px}.weather-details{grid-template-columns:1fr}}@media(max-width:620px){.phone-stack{width:100%}.contact-phone{max-width:none}.top-actions{gap:8px}.location-weather-grid,.interactive-grid{gap:12px}.weather-main{font-size:1.65rem}}
