:root{--navy:#073b82;--blue:#0879bd;--cyan:#12a8d6;--green:#18a84b;--ink:#102a43;--muted:#5e7184;--soft:#f3f8fc;--line:#dce8f1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}.wrap{width:min(1160px,92%);margin:auto}header{position:sticky;top:0;z-index:20;background:#fffffff2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:900;letter-spacing:.3px}.brand em{font-style:normal;color:var(--blue)}.brand small{display:block;font-size:9px;font-weight:600;color:var(--muted);letter-spacing:.2px}.shield{width:42px;height:42px;display:grid;place-items:center;color:white;background:linear-gradient(145deg,var(--navy),var(--cyan));border-radius:12px 12px 18px 18px;font-size:22px}.nav nav{margin-left:auto;display:flex;gap:22px}.nav nav a{text-decoration:none;color:#263a4c;font-size:14px;font-weight:700}.btn{display:inline-block;border:0;border-radius:10px;padding:14px 20px;text-decoration:none;font-weight:800;cursor:pointer}.wa{background:var(--green);color:#fff}.hero{overflow:hidden;background:radial-gradient(circle at 82% 25%,#c9f0f7 0,#e9f7fb 22%,transparent 43%),linear-gradient(125deg,#fff 0,#eef8fd 62%,#dff4f7 100%)}.hero-grid{min-height:590px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px}.eyebrow{display:inline-block;font-size:12px;font-weight:900;letter-spacing:1.7px;color:var(--blue);margin-bottom:14px}.eyebrow.center{display:block;text-align:center}.eyebrow.light{color:#9ce9ff}.hero h1{font-size:72px;line-height:.92;letter-spacing:-3px;margin:0 0 24px;color:var(--navy)}.hero h1 span{color:var(--blue)}.lead{font-size:21px;line-height:1.55;color:#3e566b;max-width:610px}.hero-actions{display:flex;align-items:center;gap:22px;margin:28px 0}.big{padding:17px 24px}.link{color:var(--navy);font-weight:800}.trust{display:flex;gap:10px 18px;flex-wrap:wrap;align-items:center;border-top:1px solid #cfe0ea;padding-top:22px}.trust b{font-size:19px;color:var(--navy)}.trust span{font-size:12px;color:var(--muted);margin-right:12px}.visual{position:relative}.scene{height:350px;border-radius:38px;background:linear-gradient(145deg,#0c4c91,#11a7d4);box-shadow:0 30px 70px #0a4f842d;position:relative;overflow:hidden}.scene:after{content:"";position:absolute;left:-10%;right:-10%;bottom:-45px;height:170px;background:#7ccf9a;border-radius:50%}.sun{position:absolute;width:95px;height:95px;border-radius:50%;background:#fff6b8;right:45px;top:38px}.house{position:absolute;z-index:2;font-size:180px;color:white;left:52px;bottom:25px;line-height:1}.car{position:absolute;z-index:3;right:35px;bottom:72px;font-size:48px;color:#fff}.family{position:absolute;z-index:4;right:68px;bottom:127px;font-size:28px;color:#082f67;letter-spacing:5px}.fed{position:absolute;right:24px;bottom:-38px;background:white;border-radius:18px;padding:18px 24px;box-shadow:0 14px 40px #1233}.fed span{display:block;font-size:11px;color:var(--muted)}.fed b{color:var(--navy);font-size:19px}.section{padding:82px 0}h2{font-size:42px;letter-spacing:-1.3px;color:var(--navy);margin:0 0 12px;text-align:center}.sub{max-width:680px;margin:0 auto 34px;text-align:center;color:var(--muted);font-size:17px;line-height:1.5}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cards a{border:1px solid var(--line);border-radius:18px;padding:24px 20px;text-decoration:none;color:var(--navy);background:#fff;box-shadow:0 8px 25px #0a4c7510;cursor:pointer;transition:.2s}.cards a:hover{transform:translateY(-4px);border-color:#9ac9e4}.cards span{font-size:32px}.cards b{display:block;font-size:17px;margin:14px 0 6px}.cards small{color:var(--green);font-weight:800}.promo{margin-top:12px;margin-bottom:72px;padding:55px!important;border-radius:28px;background:linear-gradient(120deg,#052f6e,#087ebc);color:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:0 24px 60px #073b8230}.promo h2{text-align:left;color:white;font-size:46px}.promo p,.promo li{font-size:17px;line-height:1.7}.promo ul{padding-left:20px}.promo small{opacity:.8}.white{background:white;color:var(--navy);margin-top:24px}.b2badge{width:210px;height:210px;border:9px solid white;border-radius:50%;display:grid;place-items:center;font-size:80px;font-weight:900;line-height:.7}.b2badge span{display:block;font-size:14px;letter-spacing:3px}.soft{background:var(--soft)}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.articles article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 8px 30px #073b820d}.articles article>span{font-size:34px}.articles h3{color:var(--navy);font-size:20px;line-height:1.3}.articles p{color:#4c6275;line-height:1.55}.note{text-align:center;font-size:12px;color:#6e8190;margin:24px 0}.center{text-align:center}.outline{background:white;color:var(--navy);border:2px solid #b7d5e6}.why{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.why h2{text-align:left}.why-copy>p{font-size:18px;line-height:1.65;color:var(--muted)}.ticks{display:grid;grid-template-columns:1fr 1fr;gap:14px;color:var(--navy);font-weight:800}.quote{background:linear-gradient(145deg,#eaf8fd,#f6fbff);border:1px solid #d6eaf4;border-radius:28px;padding:55px 38px;text-align:center}.quote b{font-size:30px;color:var(--navy)}.contact{background:linear-gradient(110deg,#052e6a,#087ab7);color:white;padding:70px 0}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.contact h2{color:white;text-align:left;font-size:44px}.contact p{line-height:1.6}.huge{font-size:20px;padding:20px 24px}footer{background:#032653;color:#c8dcec;padding:22px 0;font-size:13px}footer span{float:right}.float{position:fixed;right:20px;bottom:20px;z-index:30;box-shadow:0 10px 30px #0003}.cards a,.wa{cursor:pointer}@media(max-width:850px){.nav nav{display:none}.nav>.btn{display:none}.hero-grid,.why,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:55px 0 75px}.hero h1{font-size:54px}.visual{margin-top:10px}.scene{height:290px}.cards{grid-template-columns:repeat(2,1fr)}.promo{display:block;margin-left:4%;margin-right:4%;padding:34px!important}.promo h2{font-size:36px}.b2badge{width:140px;height:140px;font-size:54px;margin-top:35px}.articles{grid-template-columns:1fr}.section{padding:58px 0}h2{font-size:34px}.ticks{grid-template-columns:1fr}.contact h2{font-size:36px}footer span{float:none;display:block;margin-top:8px}}@media(max-width:480px){.cards{grid-template-columns:1fr 1fr}.hero h1{font-size:47px}.hero-actions{align-items:flex-start;flex-direction:column}.trust{display:grid;grid-template-columns:auto 1fr}.scene{height:245px}.house{font-size:135px}.car{font-size:35px}.fed{right:10px}.promo h2{font-size:32px}}

/* V3: compatibilidad de iconos, mejor espaciado y WhatsApp flotante */
.ico{width:42px;height:42px;display:grid;place-items:center;color:var(--navy)}
.ico svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cards .ico{font-size:0}.articles article>.ico{font-size:0;width:42px;height:42px}
.articles article>.ico svg{width:34px;height:34px}
.fed small{display:block;margin-top:2px;font-size:8px;font-weight:800;letter-spacing:2px;color:var(--blue)}
.float{right:26px;bottom:28px;border-radius:999px;padding:13px 18px;border:3px solid #fff}
.section{scroll-margin-top:84px}
@media(max-width:850px){.float{right:14px;bottom:14px;padding:12px 15px}.hero-grid{gap:24px}.fed{bottom:-28px}.contact{padding-bottom:92px}}
@media(max-width:480px){.brand{font-size:14px}.shield{width:38px;height:38px}.cards a{padding:20px 14px}.cards b{font-size:15px}.ico{width:38px;height:38px}.ico svg{width:32px;height:32px}.contact{padding-bottom:100px}}


/* V3.1: foto real en portada + WhatsApp flotante sin tapar el pie */
.photo-scene{background-image:linear-gradient(90deg,rgba(7,59,130,.08),rgba(7,59,130,0)),url("hero-casa-auto-familia.jpg");background-size:cover;background-position:center;border:1px solid #d7e7ef}
.photo-scene:after{display:none}
.float{bottom:28px;transition:bottom .25s ease,transform .2s ease}
.float.lifted{bottom:92px}
.float:hover{transform:translateY(-2px)}
footer{position:relative;z-index:2}
@media(max-width:850px){.photo-scene{background-position:center}.float.lifted{bottom:112px}}
@media(max-width:480px){.float{right:14px}.float.lifted{bottom:125px}}

.visit-counter{text-align:center;margin-top:14px;font-size:14px;opacity:.9}
