/* Montserrat (SIL Open Font License), alojada en el propio sitio: no se carga desde Google */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/montserrat-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/montserrat-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--azul:#1278C6;--azul-claro:#e8f2fb;--lima:#96D21E;--verde:#2f9a9a;--verde-claro:#eef7e4;--texto:#4a4545;--suave:#8A848A;--crema:#fbfaf6;--borde:#e6e9ec}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Montserrat,"Segoe UI",system-ui,-apple-system,Roboto,sans-serif;color:var(--texto);background:var(--crema);line-height:1.65}
a{color:var(--azul)}img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
header{background:#fff;border-bottom:1px solid var(--borde);position:sticky;top:0;z-index:10}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;max-width:1180px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#4a4545;font-weight:700;font-size:1.15rem}.brand img{height:40px;width:auto}
.menu-cb,.burger{display:none}
.nav ul{display:flex;gap:22px;list-style:none;flex-wrap:wrap}
.nav ul a{text-decoration:none;color:var(--texto);font-size:.93rem;font-weight:500}
.nav ul a:hover{color:var(--azul)}
.hero{background:linear-gradient(135deg,var(--azul-claro),var(--verde-claro));padding:64px 0 72px}
.hero-in{display:grid;grid-template-columns:auto 1fr;gap:64px;align-items:center}
.hero-logo img{width:300px;height:auto}
.hero-txt p{font-size:1.2rem;max-width:520px;margin-bottom:30px;color:#3d4852}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;padding:13px 26px;border-radius:999px;text-decoration:none;font-weight:600;transition:.2s}
.btn-p{background:var(--azul);color:#fff}.btn-p:hover{background:#0e62a3}
.btn-s{border:1.5px solid var(--verde);color:var(--verde)}.btn-s:hover{background:#fff}
section{padding:72px 0}
h2{font-size:1.75rem;color:#2d3a45;margin-bottom:8px}
.sub{color:var(--suave);margin-bottom:32px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.card{background:#fff;border:1px solid var(--borde);border-radius:18px;padding:26px;text-decoration:none;color:var(--texto);transition:.2s;display:block}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(18,120,198,.1);border-color:#cfe3f4}
.ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;margin-bottom:14px;background:var(--azul-claro)}
.card:nth-child(even) .ico{background:var(--verde-claro)}
.card h3{font-size:1.1rem;color:#2d3a45;margin-bottom:6px}.card p{font-size:.93rem}
.more{display:inline-block;margin-top:12px;font-size:.88rem;font-weight:600;color:var(--azul)}
.alt{background:#fff}
.layout{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start}
.badge{display:inline-block;background:#fff6d9;color:#8a6d12;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.res{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:56px}
.res .card{background:var(--crema)}
.art{display:grid;gap:16px}
.art article{background:var(--crema);border:1px dashed #d4d9dd;border-radius:16px;padding:22px}
.art h3{font-size:1.05rem;color:#2d3a45;margin:6px 0 4px}
.tag{font-size:.78rem;color:var(--verde);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
aside{display:grid;gap:20px;position:sticky;top:90px}
.box{background:var(--crema);border:1px solid var(--borde);border-radius:18px;padding:24px;font-size:.92rem}
.box h3{font-size:1rem;color:#2d3a45;margin-bottom:8px}
.avatar{width:72px;height:72px;border-radius:50%;background:#fff;border:1px solid var(--borde);padding:10px;margin-bottom:12px}
.box a.link{font-weight:600;text-decoration:none;display:inline-block;margin-top:10px}
.box.red{background:var(--verde-claro);border-color:#dcebc9}
.talk{text-align:center;background:linear-gradient(135deg,var(--verde-claro),var(--azul-claro));border-radius:24px;padding:48px 24px}
.talk p{max-width:560px;margin:10px auto 24px}
footer{background:#2d3a45;color:#d7dde2;padding:48px 0 28px;font-size:.9rem}
footer a{color:#fff}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
footer h4{color:#fff;margin-bottom:10px}
footer ul{list-style:none;display:grid;gap:6px}
.disc{border-top:1px solid #45535f;margin-top:32px;padding-top:20px;font-size:.82rem;color:#b5bfc7}
@media(max-width:900px){.layout{grid-template-columns:1fr}aside{position:static}.res{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr;gap:24px}section{padding:52px 0}
.nav{flex-wrap:wrap;padding:10px 20px}.burger{display:block;width:44px;height:44px;cursor:pointer;position:relative}
.burger span,.burger span:before,.burger span:after{position:absolute;left:11px;width:22px;height:2px;background:#2d3a45;border-radius:2px;transition:.2s;content:""}
.burger span{top:21px}.burger span:before{top:-7px;left:0}.burger span:after{top:7px;left:0}
.menu-cb:checked+.burger span{background:transparent}.menu-cb:checked+.burger span:before{top:0;transform:rotate(45deg)}.menu-cb:checked+.burger span:after{top:0;transform:rotate(-45deg)}
.nav ul{display:none;width:100%;flex-direction:column;gap:0;padding:6px 0 8px}.menu-cb:checked~ul{display:flex}
.nav ul li{border-top:1px solid var(--borde)}.nav ul a{display:block;padding:13px 4px;font-size:1rem}
.hero{padding:40px 0 48px}.hero-in{grid-template-columns:1fr;gap:28px;text-align:center;justify-items:center}.hero-logo img{width:210px}
.hero-txt p{font-size:1.05rem;margin:0 auto 24px}.ctas{flex-direction:column;align-items:stretch;max-width:320px;margin:0 auto}.btn{text-align:center}
h2{font-size:1.5rem}.wrap{padding:0 20px}.talk{padding:36px 20px}}
.ses{max-width:860px}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}
.steps li{background:#fff;border:1px solid var(--borde);border-radius:18px;padding:22px}.steps span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--azul-claro);color:var(--azul);font-weight:700;margin-bottom:10px}
.steps h3{font-size:1.02rem;color:#2d3a45;margin-bottom:4px}.steps p{font-size:.93rem}.note{font-size:.88rem;color:var(--suave)}
@media(max-width:900px){.steps{grid-template-columns:1fr}}

.phero{background:linear-gradient(135deg,var(--azul-claro),var(--verde-claro));padding:56px 0 40px}.phero h1{font-size:2.2rem;color:#2d3a45;margin-bottom:8px}.phero .sub{max-width:760px;font-size:1.08rem}
.flow-g,.igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.icard{background:#fff;border:1px solid var(--borde);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.icard h3{color:#2d3a45;font-size:1.08rem}.icard .tag{align-self:flex-start}.orig{font-size:.84rem;font-weight:600;color:var(--verde)}
.src{font-size:.82rem;color:var(--suave)}.iact{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:8px}
.btn.sm{padding:9px 16px;font-size:.88rem;text-align:center}.soon{display:block;text-align:center;padding:9px 16px;border-radius:999px;background:var(--azul-claro);color:var(--azul);font-weight:600;font-size:.88rem}
.icard.ph{background:var(--crema);border-style:dashed}.icard.ph .badge{align-self:flex-start}
.emerg{background:#fff4f1;border:2px solid #e0795f;border-radius:18px;padding:22px 24px;margin-bottom:36px}.emerg h2{color:#b8442a;font-size:1.25rem;margin:0 0 6px}
.ses>h2{margin:30px 0 10px}.lst{padding-left:22px;display:grid;gap:6px}
@media(max-width:900px){.flow-g,.igrid{grid-template-columns:1fr}.phero h1{font-size:1.7rem}}

.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 15%,rgba(150,210,30,.22),transparent 40%),radial-gradient(circle at 10% 90%,rgba(18,120,198,.16),transparent 45%),linear-gradient(135deg,var(--azul-claro),var(--verde-claro))}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.hero:before{width:420px;height:420px;right:-120px;bottom:-180px;background:rgba(47,154,154,.10)}.hero:after{width:180px;height:180px;left:42%;top:-70px;background:rgba(150,210,30,.12)}
.hero-in{position:relative;z-index:1}
.hero-kicker{font-size:.82rem!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--verde)!important;margin-bottom:12px!important}
.hero-txt .hero-lead{font-size:1.3rem;line-height:1.5;color:#2d3a45;max-width:560px;margin-bottom:22px}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:#fff;text-decoration:none;font-weight:600;font-size:.95rem;box-shadow:0 4px 14px rgba(45,58,69,.08);border:1.5px solid transparent;transition:.2s}
.pill:hover{transform:translateY(-2px)}.p1{color:#b8442a;border-color:#f3c7b8}.p2{color:#4f7d0f;border-color:#cfe8a6}.p3{color:var(--azul);border-color:#b9d8f1}
@media(max-width:900px){.pills{justify-content:center}.hero-txt .hero-lead{font-size:1.1rem}}

.pol{max-width:820px}.pol h2{font-size:1.35rem;margin:36px 0 10px}.pol h2:first-child{margin-top:0}.pol p{margin-bottom:12px}.pol .lst{margin-bottom:14px}
.pol .box{margin:18px 0}.pol .box p:last-child{margin-bottom:0}.pol .upd{font-size:.88rem;color:var(--suave)}
