:root{--navy:#102b4e;--blue:#194e78;--sky:#d9eef3;--coral:#ee6f61;--mint:#79bbb0;--cream:#f7f4ed;--ink:#14243a;--muted:#607083;--white:#fff;--radius:24px;--shadow:0 20px 55px rgba(16,43,78,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;background:#fff;line-height:1.55}h1,h2,h3,b{font-family:Manrope,sans-serif}h1{font-size:clamp(2.7rem,5vw,5.3rem);line-height:1.02;letter-spacing:-.055em;margin:.25em 0}h2{font-size:clamp(2rem,3.7vw,3.6rem);line-height:1.1;letter-spacing:-.04em;margin:.25em 0}h3{line-height:1.25}p{color:var(--muted)}button,a{font:inherit}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.13em;color:var(--coral)}.btn{border:0;border-radius:999px;padding:15px 23px;background:var(--navy);color:#fff;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:16px;transition:.25s}.btn:hover{background:var(--blue);transform:translateY(-2px)}.btn.small{padding:10px 18px}.btn.ghost{color:var(--navy);background:#fff;border:1px solid #ccd7df}.btn.coral{background:var(--coral)}.btn.outline{background:transparent;border:1px solid #fff}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;line-height:1}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50% 50% 46% 54%;background:var(--navy);color:white;font-size:1.4rem;font-weight:800}.brand-mark span{color:var(--coral)}.brand small{display:block;font-size:.48rem;letter-spacing:.14em;margin-top:5px}header{height:76px;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,24px);border-bottom:1px solid #e9eef1}nav{display:flex;align-items:center;gap:22px}nav a{color:var(--ink);text-decoration:none;font-size:.91rem;font-weight:600}.wa-icon{border:0;background:var(--mint);color:white;width:40px;height:40px;border-radius:50%;font-size:1.25rem}.menu{display:none;border:0;background:none;font-size:1.7rem}.hero{min-height:690px;background:linear-gradient(125deg,var(--cream),#edf6f5);padding:75px max(5vw,24px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw;overflow:hidden}.hero-copy{max-width:750px}.lead{font-size:1.2rem;color:#344c63}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 12px}.micro{color:var(--muted)}.hero-art{position:relative}.photo-placeholder{overflow:hidden;background:linear-gradient(145deg,#dcefe9,#f2c3aa);position:relative}.hero-photo{height:550px;border-radius:46% 46% 18px 18px;box-shadow:var(--shadow)}.sun{position:absolute;width:340px;height:340px;background:#fff5c9;border-radius:50%;top:-80px;left:-50px;filter:blur(2px)}.family{position:absolute;inset:auto 6% 0;display:flex;align-items:end;justify-content:center;gap:8px;height:82%}.family i{display:block;width:24%;height:72%;background:linear-gradient(#714d39 0 17%,#203c5c 17%);border-radius:48% 48% 10% 10%}.family i:nth-child(2){height:88%;background:linear-gradient(#5b3b2b 0 16%,#f5e4cd 16%)}.family i:nth-child(3){height:57%;background:linear-gradient(#7a4c34 0 20%,#e47767 20%)}.family i:nth-child(4){height:50%;background:linear-gradient(#4f3023 0 20%,#7bbcb1 20%)}.hero-photo>span{position:absolute;bottom:20px;left:25px;color:white;font-weight:700;text-shadow:0 2px 10px #0006}.float-card{position:absolute;bottom:28px;left:-40px;background:#fff;padding:18px 24px;border-radius:18px;box-shadow:var(--shadow)}.float-card b,.float-card small{display:block}.eps{background:var(--navy);color:white;padding:25px max(5vw,24px);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.eps p{color:#d6e3ef;margin:5px 0}.eps strong{color:#a7d8d1}.eps-actions{display:grid;gap:8px}.eps-actions .btn{background:var(--coral)}.text-btn{background:transparent;color:white;border:0;text-decoration:underline;cursor:pointer}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:24px max(5vw,24px);border-bottom:1px solid #e8edef}.trust-strip div{padding:10px 25px;border-right:1px solid #dce3e8}.trust-strip div:last-child{border:0}.trust-strip b,.trust-strip small{display:block}.trust-strip small{color:var(--muted)}.section{padding:100px max(5vw,24px)}.section-head{max-width:780px;margin-bottom:46px}.section-head p{font-size:1.1rem}.need{background:#fff}.need-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.need-grid article{min-height:300px;padding:28px;border-radius:var(--radius);background:var(--cream);display:flex;flex-direction:column;align-items:flex-start;transition:.25s}.need-grid article:hover,.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.need-grid .dark{background:var(--navy);color:#fff}.need-grid .dark p{color:#cad8e5}.need-grid a,.link{margin-top:auto;color:var(--navy);font-weight:700;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}.dark a{color:#fff}.icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#fff;color:var(--coral);font-size:1.6rem}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product-card{border:1px solid #e0e7eb;border-radius:var(--radius);padding:26px;transition:.25s;display:flex;flex-direction:column}.product-card .icon{background:var(--sky)}.product-card p{min-height:72px}.product-card details{border-top:1px solid #e3e8eb;padding-top:14px;margin-top:auto}.product-card summary{cursor:pointer;font-weight:700;color:var(--blue)}.product-card ul{padding-left:18px;color:var(--muted);font-size:.9rem}.product-card .btn{margin-top:15px;width:100%}.conditions{text-align:center;font-size:.85rem;margin-top:26px}.business{background:var(--navy);color:#fff}.section-head.light p{color:#c9d6e3}.business-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.business-grid article{background:#17385e;border:1px solid #31516f;padding:25px;border-radius:22px}.business-grid p{color:#c9d6e3;min-height:88px}.business-grid button{color:#fff;background:none;border:0;padding:0;font-weight:700;cursor:pointer}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:34px}.steps article{border-top:2px solid #dae4e7;padding:22px 20px}.steps b{color:var(--coral);font-size:1.8rem}.form-section{padding:100px max(5vw,24px);display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;background:var(--cream)}.contact-card{margin-top:35px;background:var(--navy);color:#fff;padding:25px;border-radius:var(--radius);display:grid;gap:8px}.contact-card small{color:#bfd0df}form{background:#fff;border-radius:30px;padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:18px;box-shadow:var(--shadow)}.field{display:grid;gap:7px}.full{grid-column:1/-1}.field label{font-weight:700;font-size:.88rem}.field input,.field select,.field textarea{width:100%;padding:14px;border:1px solid #cbd5db;border-radius:12px;background:#fff;font:inherit}.check{font-size:.84rem;color:var(--muted)}.success{grid-column:1/-1;color:#176b58;font-weight:700}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.why-grid article{padding:26px;background:#f7f9f8;border-radius:20px}.why-grid article>span{color:var(--coral);font-weight:800;font-size:1.4rem}.numbers{background:var(--sky);padding:70px max(5vw,24px);text-align:center}.numbers>p{font-size:.76rem}.numbers>div{display:grid;grid-template-columns:repeat(4,1fr)}.numbers article{display:grid}.numbers b{font-size:3rem;color:var(--navy)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.testimonial-grid article{background:var(--cream);padding:30px;border-radius:var(--radius);font-size:1.1rem;font-style:italic}.testimonial-grid small{display:block;margin-top:30px;color:var(--muted)}.faq{max-width:1050px;margin:auto}.faq-item{border-bottom:1px solid #dae2e6}.faq-item button{width:100%;background:none;border:0;padding:22px 0;display:flex;justify-content:space-between;text-align:left;font-weight:800;cursor:pointer}.faq-answer{display:none;padding:0 40px 20px 0}.faq-item.open .faq-answer{display:block}.final-cta{padding:90px max(8vw,24px);text-align:center;color:#fff;background:linear-gradient(120deg,var(--blue),var(--navy))}.final-cta p,.final-cta small{color:#d6e3ed}.final-cta .actions{justify-content:center}footer{background:#091d33;color:#fff;padding:50px max(5vw,24px);display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}footer .brand{color:white}footer div{display:grid;gap:8px}footer a{color:#c7d5e1;text-decoration:none}footer>small{grid-column:1/-1;color:#8298aa}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:25;border:0;background:#24b46b;color:white;border-radius:999px;padding:14px 18px;font-weight:800;box-shadow:var(--shadow);cursor:pointer}.mobile-cta{display:none}dialog{border:0;border-radius:24px;padding:35px;max-width:560px;box-shadow:var(--shadow)}dialog::backdrop{background:#0c2038bb;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:18px;top:12px;background:none;border:0;font-size:1.8rem;cursor:pointer}.modal-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#ffebe8;color:var(--coral);font-weight:800}.wa-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:25px 0}.wa-options button{padding:12px;border:1px solid #d7e0e5;background:#f8faf9;border-radius:12px;text-align:left;cursor:pointer}.wa-options button:hover{border-color:var(--coral)}#loader{position:fixed;inset:0;background:var(--cream);display:grid;place-items:center;z-index:100;transition:.4s}#loader.hide{opacity:0;pointer-events:none}.reveal{opacity:0;transform:translateY(15px);transition:.6s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){nav{position:fixed;inset:76px 0 auto;background:#fff;padding:24px;display:none;flex-direction:column;align-items:stretch}nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;padding-top:50px}.hero-art{max-width:650px}.need-grid,.business-grid{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}.form-section{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){body{padding-bottom:62px}h1{font-size:2.65rem}.hero{padding:42px 20px}.hero-photo{height:390px}.float-card{left:10px}.eps{grid-template-columns:1fr}.trust-strip{grid-template-columns:1fr 1fr;padding:15px}.trust-strip div:nth-child(2){border-right:0}.section{padding:72px 20px}.need-grid,.product-grid,.business-grid,.steps,.why-grid,.testimonial-grid,.numbers>div{grid-template-columns:1fr}.form-section{padding:72px 20px}form{padding:22px;grid-template-columns:1fr}.field{grid-column:1/-1}.hero .actions .btn{width:100%}.whatsapp{bottom:76px}.mobile-cta{display:block;position:fixed;z-index:24;bottom:0;left:0;right:0;width:100%;border-radius:0}.wa-options{grid-template-columns:1fr}footer{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Identidad visual oficial Focus Life y escala tipográfica refinada */
:root{--navy:#435372;--blue:#536687;--green:#5aaa4f;--teal:#0aa39c;--sky:#e8f5f3;--coral:#5aaa4f;--mint:#0aa39c;--cream:#f7f9f8;--ink:#26364f;--muted:#657184;--shadow:0 20px 55px rgba(67,83,114,.12)}
body{font-size:16px;line-height:1.6;background:#fff}h1{font-size:clamp(2.45rem,4.4vw,4.55rem);line-height:1.06;letter-spacing:-.045em}h2{font-size:clamp(1.9rem,3.2vw,3.1rem);line-height:1.13;letter-spacing:-.035em}h3{font-size:clamp(1.08rem,1.4vw,1.3rem);line-height:1.3}.lead{font-size:1.15rem}.section-head p{font-size:1.05rem}.eyebrow{font-size:.75rem;color:var(--green)}
.brand{gap:0}.brand img{display:block;width:190px;height:auto;max-height:58px;object-fit:contain}#loader>img{width:230px;height:auto}.btn{padding:14px 22px}.btn:hover{background:var(--teal)}.wa-icon{background:var(--teal)}
.hero{min-height:660px;background:#fff;padding-top:70px;padding-bottom:70px}.photo-placeholder{background:linear-gradient(145deg,#e5f3eb,#bde5df)}.family i:nth-child(3){background:linear-gradient(#7a4c34 0 20%,#5aaa4f 20%)}.eps-actions .btn{background:var(--green)}.need-grid article{min-height:280px}.business-grid article{background:#506180;border-color:#687994}.final-cta{background:linear-gradient(120deg,var(--teal),var(--navy))}
.insurers{padding:90px max(5vw,24px);background:#fff;text-align:center}.insurers .section-head{margin:0 auto 45px}.logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1180px;margin:auto}.logo-grid div{height:145px;border:1px solid #e5e9ec;border-radius:20px;display:grid;place-items:center;padding:28px;background:#fff;transition:.25s}.logo-grid div:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d1ddd9}.logo-grid img{max-width:100%;max-height:76px;width:auto;height:auto;object-fit:contain}.insurer-note{font-size:.85rem;margin:28px auto 0;max-width:760px}
footer{background:#35435f}.footer-logo{background:#fff;border-radius:14px;padding:10px 14px;width:max-content}.footer-logo img{width:180px}
@media(max-width:650px){body{font-size:15.5px}h1{font-size:clamp(2.25rem,11vw,2.85rem)}h2{font-size:clamp(1.85rem,8vw,2.35rem)}header .brand img{width:158px}.logo-grid{grid-template-columns:1fr 1fr}.logo-grid div{height:110px;padding:20px}.logo-grid img{max-height:60px}}

/* Hero fotográfico y corrección de desbordamientos */
.hero-copy,.hero-art,.need-grid article,.product-card,.business-grid article,.steps article,.why-grid article{min-width:0}.hero-photo{position:relative;margin:0;height:auto;aspect-ratio:1.42;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:var(--sky)}.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo figcaption{position:absolute;left:22px;bottom:20px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.9);color:var(--navy);font-size:.82rem;font-weight:700;backdrop-filter:blur(8px)}
.need-grid article,.product-card,.business-grid article{height:auto;min-height:0}.product-card p,.business-grid p{min-height:0}.product-card h3,.business-grid h3,.need-grid h3,.steps h3,.why-grid h3{overflow-wrap:anywhere;hyphens:auto}.product-card .btn{white-space:normal;line-height:1.3;min-height:52px;padding-inline:16px}.business-grid button,.need-grid a,.need-grid .link{white-space:normal;text-align:left;overflow-wrap:anywhere;line-height:1.35}.product-card details{margin-top:12px}.product-card .btn{margin-top:18px}.product-grid,.business-grid,.need-grid,.steps,.why-grid{align-items:stretch}.section-head,.hero-copy,p,h1,h2,h3{overflow-wrap:break-word}.final-cta .actions .btn{white-space:normal}
@media(max-width:1200px) and (min-width:1001px){nav{gap:13px}nav a{font-size:.82rem}.brand img{width:166px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.hero{gap:34px}.hero-photo{aspect-ratio:1.08;border-radius:24px}.hero-photo img{object-position:55% center}.hero-photo figcaption{left:14px;bottom:14px}.float-card{bottom:-18px}.product-card,.business-grid article,.need-grid article{padding:22px}.final-cta .actions .btn{width:100%}}

/* Los encabezados de sección no heredan el comportamiento sticky del menú */
main .section-head,.insurers .section-head{position:static;inset:auto;z-index:auto;height:auto;min-height:0;padding:0;border:0;background:transparent;backdrop-filter:none;display:block;max-width:760px;width:100%;overflow:visible}.section-head h2{max-width:720px;margin:.3em 0}.section-head p{max-width:680px;margin:.7em 0 0}.insurers .section-head{margin:0 auto 42px;text-align:center}.insurers .section-head h2,.insurers .section-head p{margin-left:auto;margin-right:auto}.section-head h2{font-size:clamp(1.85rem,2.8vw,2.8rem);line-height:1.16}.section-head .eyebrow{display:block;margin-bottom:10px}
@media(max-width:650px){main .section-head,.insurers .section-head{margin-bottom:30px}.section-head h2{font-size:clamp(1.75rem,7.7vw,2.15rem);line-height:1.18}.section-head p{font-size:1rem}.section-head .eyebrow{font-size:.69rem;letter-spacing:.11em}}

/* Catálogos compactos en acordeón */
.product-grid,.business-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.insurance-accordion{min-width:0;border:1px solid #dfe6e8;border-radius:18px;background:#fff;overflow:hidden;transition:.25s}.insurance-accordion[open]{border-color:#b8d6cf;box-shadow:0 14px 35px rgba(67,83,114,.1)}.insurance-accordion summary{list-style:none;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:14px;padding:17px 19px;cursor:pointer;color:var(--ink);font-family:Manrope,sans-serif;font-size:1rem;font-weight:750;line-height:1.3}.insurance-accordion summary::-webkit-details-marker{display:none}.insurance-accordion summary i{font-style:normal;color:var(--teal);font-size:1.25rem;transition:.2s}.insurance-accordion[open] summary i{transform:rotate(45deg)}.insurance-accordion .icon{width:44px;height:44px;font-size:1.25rem;background:var(--sky)}.insurance-panel{padding:0 20px 20px 81px}.insurance-panel p{margin:0 0 12px;min-height:0}.insurance-panel ul{margin:0 0 18px;padding-left:18px;color:var(--muted);font-size:.92rem}.insurance-panel .btn{width:auto;min-height:54px;white-space:normal;text-align:center}.business-grid .insurance-accordion{background:#506180;border-color:#687994;color:#fff}.business-grid .insurance-accordion[open]{border-color:#89c9bd}.business-grid .insurance-accordion summary{color:#fff}.business-grid .insurance-accordion .icon{background:#fff;color:var(--teal)}.business-grid .insurance-panel p{color:#e1e8ef}.business-grid .insurance-panel .btn{background:#fff;color:var(--navy)}
.process-benefits{display:flex;flex-wrap:wrap;gap:10px;margin:-6px 0 30px}.process-benefits span{padding:9px 14px;border-radius:999px;background:var(--sky);color:var(--navy);font-size:.88rem;font-weight:700}.quote.btn,.eps-actions .btn,.mobile-cta{min-height:58px;padding:17px 30px;font-size:1.02rem}.hero .quote.btn,.final-cta .quote.btn,.process>.quote.btn{min-height:62px;padding:18px 34px;font-size:1.08rem}
@media(max-width:700px){.product-grid,.business-grid{grid-template-columns:1fr}.insurance-accordion summary{padding:15px;grid-template-columns:44px minmax(0,1fr) 22px}.insurance-panel{padding:0 16px 18px}.insurance-panel .btn{width:100%}.process-benefits{display:grid}.quote.btn,.eps-actions .btn{width:100%}}
@media(max-width:650px){body{padding-bottom:82px}.mobile-cta{min-height:74px;padding:20px 24px;font-size:1.12rem;font-weight:800;letter-spacing:.01em;background:var(--teal);box-shadow:0 -8px 28px rgba(38,54,79,.18)}.whatsapp{bottom:94px}}
.whatsapp{min-height:64px;padding:17px 25px;font-size:1.05rem;display:inline-flex;align-items:center;gap:10px;background:var(--teal);border:2px solid #fff}.whatsapp .wa-symbol{font-size:1.35rem;line-height:1}.mobile-cta{font-size:1.16rem!important;font-weight:800!important}
@media(max-width:650px){.mobile-cta{min-height:82px;padding:23px 26px;font-size:1.2rem!important}.whatsapp{right:14px;bottom:98px;min-height:58px;padding:14px 18px;font-size:.94rem}}
.whatsapp,.mobile-cta{background:#25d366!important;color:#fff!important}.whatsapp:hover,.mobile-cta:hover{background:#1fb85a!important}.whatsapp-icon{width:26px;height:26px;display:block;flex:0 0 auto}.mobile-cta{align-items:center;justify-content:center;gap:11px}.mobile-cta .whatsapp-icon{width:29px;height:29px}
