
body{margin:0;background:#ffffff}
*{box-sizing:border-box}
a{color:#1F5FD6}a:hover{color:#0A1F44}
.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 28px}
.disp{font-family:Montserrat,system-ui,sans-serif;font-weight:800;letter-spacing:-0.025em;margin:0}
.h2{font-family:Montserrat,system-ui,sans-serif;font-weight:700;letter-spacing:-0.02em;margin:0;font-size:clamp(30px,3.6vw,48px);line-height:1.08;color:#0A1F44}
.kicker{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:0.2em;text-transform:uppercase;color:#1F5FD6;margin:0;display:flex;align-items:center;gap:10px}
.kicker:before{display:none}
.lead{font-size:18.5px;line-height:1.65;color:#4A556E;margin:0;max-width:640px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;border-radius:999px;font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:15px;text-decoration:none;border:0;cursor:pointer;white-space:nowrap}
.btn-blue{background:#2F7BFF;color:#ffffff}.btn-blue:hover{background:#1F5FD6;color:#ffffff}
.btn-white{background:#ffffff;color:#0A1F44}.btn-white:hover{background:#E8EEF9;color:#0A1F44}
.btn-line{background:transparent;color:#ffffff;border:1.5px solid rgba(255,255,255,0.4)}.btn-line:hover{border-color:#ffffff;color:#ffffff}
.btn-navy{background:#0A1F44;color:#ffffff}.btn-navy:hover{background:#13306A;color:#ffffff}
.btn-wa{background:#128C4A;color:#ffffff}.btn-wa:hover{background:#0E6F3A;color:#ffffff}
.nav a.nl{color:#C9D5EC;text-decoration:none;font-weight:500;font-size:15px}.nav a.nl:hover{color:#ffffff}
.seg{min-height:48px;padding:0 22px;border-radius:999px;border:1.5px solid #D3DBE9;background:#ffffff;color:#0A1F44;font-family:Montserrat,system-ui,sans-serif;font-weight:600;font-size:14.5px;cursor:pointer}
.seg:hover{border-color:#2F7BFF}
.seg-on{background:#0A1F44;border-color:#0A1F44;color:#ffffff}
.pi{min-height:44px;padding:0 18px;border-radius:10px;border:1.5px solid rgba(255,255,255,0.25);background:transparent;color:#ffffff;font-family:'DM Sans',sans-serif;font-weight:600;font-size:14px;cursor:pointer}
.pi-on{background:#ffffff;color:#0A1F44;border-color:#ffffff}
.sol{background:#ffffff;border:1px solid #E1E7F1;border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:14px}
.sol h3{font-family:Montserrat,system-ui,sans-serif;font-size:20px;font-weight:700;color:#0A1F44;margin:0}
.sol p{margin:0;color:#4A556E;line-height:1.6;font-size:15.5px}
.ico{width:52px;height:52px;border-radius:16px;background:#EBF2FF;color:#1F5FD6;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tag{display:inline-flex;align-self:flex-start;font-family:Montserrat,sans-serif;font-weight:700;font-size:11px;letter-spacing:0.12em;border-radius:999px;padding:6px 12px;background:#F0F3F9;color:#4A556E}
.sector{position:relative;border-radius:22px;overflow:hidden;background:#0A1F44;min-height:260px;display:flex;align-items:flex-end}
.sector img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sector .sh{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,18,42,0.05) 30%,rgba(6,18,42,0.9) 100%)}
.sector .tx{position:relative;padding:24px;color:#ffffff}
.sector h3{font-family:Montserrat,sans-serif;font-size:20px;font-weight:700;margin:0 0 6px}
.sector p{margin:0;color:#D3DCEC;font-size:14.5px;line-height:1.5}
.sector-plain{border-radius:22px;background:#F3F6FB;border:1px solid #E1E7F1;padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:260px}
.sector-plain h3{font-family:Montserrat,sans-serif;font-size:20px;font-weight:700;margin:0 0 6px;color:#0A1F44}
.sector-plain p{margin:0;color:#4A556E;font-size:14.5px;line-height:1.5}
.opt{min-height:48px;padding:10px 18px;border-radius:12px;border:1.5px solid #CBD5E6;background:#ffffff;color:#0A1F44;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;text-align:left}
.opt:hover{border-color:#2F7BFF}
.opt-on{border-color:#2F7BFF;background:#EBF2FF;box-shadow:inset 0 0 0 1px #2F7BFF}
.q{font-family:Montserrat,sans-serif;font-weight:700;font-size:15px;color:#0A1F44;margin:0 0 12px}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:20px 0;background:none;border:0;border-bottom:1px solid #E1E7F1;font-family:Montserrat,sans-serif;font-weight:600;font-size:17.5px;color:#0A1F44;text-align:left;cursor:pointer}
.cmp{width:100%;border-collapse:collapse;min-width:640px;font-size:15.5px}
.cmp th,.cmp td{padding:18px 22px;text-align:left;border-bottom:1px solid #E1E7F1;vertical-align:top;line-height:1.5}
.cmp th{font-family:Montserrat,sans-serif;font-size:14px;color:#0A1F44}
.cmp td:first-child{color:#4A556E;font-weight:600;width:26%}
.why{display:flex;gap:18px;align-items:flex-start;padding:26px 0;border-top:1px solid rgba(255,255,255,0.12)}
.why h3{font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;margin:0 0 6px;color:#ffffff}
.why p{margin:0;color:#B9C7E2;line-height:1.6;font-size:15px}
.range{width:100%;accent-color:#2F7BFF;height:28px;cursor:pointer}
.foot a{color:#B9C7E2;text-decoration:none}.foot a:hover{color:#ffffff}
html{scroll-behavior:auto}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #8DB4FF;outline-offset:3px}
.btn{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-blue:hover{box-shadow:0 10px 24px rgba(47,123,255,0.35)}
.stage{perspective:1400px}
.card3d{transform:rotateY(-7deg) rotateX(4deg);transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s ease}
.card3d:hover{transform:rotateY(0deg) rotateX(0deg) translateY(-4px);box-shadow:0 40px 100px rgba(0,0,0,0.45)}
.hero-bg{animation:kenburns 24s ease-in-out infinite alternate;transform-origin:70% 50%}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}
.float{animation:floaty 6s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.lift:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(10,31,68,0.12);border-color:#C7D6F2}
.tilt-grid{perspective:1600px}
.sector{text-decoration:none;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease}
.sector img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.sector:hover{transform:translateY(-6px) rotateX(3deg);box-shadow:0 30px 60px rgba(6,20,46,0.28)}
.sector:hover img{transform:scale(1.07)}
.sector .go{position:absolute;top:18px;right:18px;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.3);display:flex;align-items:center;justify-content:center;color:#ffffff;transition:background-color .3s ease,transform .3s ease}
.sector:hover .go{background:#2F7BFF;transform:rotate(-45deg)}
.sector-plain{text-decoration:none;position:relative;overflow:hidden;background:linear-gradient(160deg,#0F2A5C 0%,#06142E 100%);border:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease}
.sector-plain h3{color:#ffffff}.sector-plain p{color:#C9D5EC}
.sector-plain .ico{background:rgba(141,180,255,0.14);color:#8DB4FF;width:64px;height:64px;border-radius:20px}
.sector-plain:hover{transform:translateY(-6px) rotateX(3deg);box-shadow:0 30px 60px rgba(6,20,46,0.28)}
.sector-plain .go{position:absolute;top:18px;right:18px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,0.3);display:flex;align-items:center;justify-content:center;color:#ffffff;transition:background-color .3s ease,transform .3s ease}
.sector-plain:hover .go{background:#2F7BFF;transform:rotate(-45deg)}
.seg,.opt,.pi{transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}
.seg:active,.opt:active,.pi:active{transform:scale(0.97)}
.seg-panel img{animation:fadein .6s ease}
@keyframes fadein{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}
.range{-webkit-appearance:none;appearance:none;height:8px;border-radius:999px;background:rgba(255,255,255,0.18);outline-offset:6px}
.range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:#ffffff;border:6px solid #2F7BFF;box-shadow:0 4px 14px rgba(0,0,0,0.35);cursor:grab}
.range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#ffffff;border:6px solid #2F7BFF;cursor:grab}
.bar{transition:width .5s cubic-bezier(.2,.7,.2,1)}
.faq-q span:last-child{transition:transform .3s ease}
.wa-float{transition:transform .25s ease}.wa-float:hover{transform:scale(1.08)}
.wa-float:before{content:"";position:absolute;inset:0;border-radius:50%;background:#128C4A;animation:pulse 2.4s ease-out infinite;z-index:-1}
@keyframes pulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.7);opacity:0}}
@supports (animation-timeline: view()){
.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 35%}
@keyframes reveal{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
}
@media (max-width:980px){.nav .nl{display:none}.card3d{transform:none}}
@media (max-width:560px){.nav nav{display:none !important}.nav .wrap{gap:10px;padding:0 18px;min-height:72px;flex-wrap:nowrap !important}.nav .btn{min-height:42px;padding:0 14px !important;font-size:12.5px !important}.nav a[href="#inicio"] img{width:30px !important}.nav a[href="#inicio"] span span:last-child{font-size:16px !important}.disp{letter-spacing:-0.02em}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.card3d{transform:none}}
