:root{--red:#e31b2f;--red-dark:#b71323;--ink:#111827;--muted:#64707d;--soft:#f4f5f7;--line:#e5e8ec;--dark:#0b1016}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--soft);color:var(--ink);line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,92vw);margin-inline:auto}
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(230,232,235,.88)}
.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:170px;height:auto}
.header-contact{display:flex;align-items:center;gap:20px;font-size:14px;font-weight:800}
.nav-cta{background:var(--red);color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 14px 28px rgba(227,27,47,.25)}
.hero{min-height:100vh;position:relative;color:#fff;display:flex;align-items:flex-end;padding:150px 0 72px;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-image:url('../img/hero-aisa.png');background-size:cover;background-position:center;transform:scale(1.02)}
.hero-shade{position:absolute;inset:0;background:radial-gradient(circle at 70% 40%,rgba(227,27,47,.18),transparent 25%),linear-gradient(90deg,rgba(4,8,15,.94) 0%,rgba(4,8,15,.72) 45%,rgba(4,8,15,.24) 100%),linear-gradient(0deg,rgba(4,8,15,.88),transparent 48%)}
.hero-content{position:relative;max-width:980px}
.kicker,.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.22em;font-weight:900;font-size:12px;margin-bottom:18px}
.eyebrow.light{color:#ff6b78}
.hero h1{font-size:clamp(52px,9vw,112px);line-height:.9;letter-spacing:-.075em;font-weight:900;margin-bottom:28px}
.hero-lead{max-width:790px;font-size:clamp(18px,2vw,24px);color:rgba(255,255,255,.86);margin-bottom:38px}
.hero-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:860px;border:1px solid rgba(255,255,255,.22);background:rgba(8,14,24,.48);backdrop-filter:blur(16px);border-radius:26px;overflow:hidden}
.hero-panel div{padding:24px;border-right:1px solid rgba(255,255,255,.14)}
.hero-panel div:last-child{border-right:0}
.hero-panel span{display:block;color:rgba(255,255,255,.68);font-size:13px;margin-bottom:8px}
.hero-panel strong{display:block;font-size:25px;line-height:1.05;letter-spacing:-.04em}
.institutional{background:#fff;padding:105px 0}
.institutional-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center}
.institutional h2,.image-band h2,.contact-copy h2{font-size:clamp(34px,4.7vw,60px);line-height:1.03;letter-spacing:-.055em;font-weight:900}
.institutional-text{font-size:19px;color:#3f4a56}
.institutional-text p+p{margin-top:22px}
.image-band{position:relative;color:#fff;padding:125px 0;background:linear-gradient(90deg,rgba(5,8,13,.9),rgba(5,8,13,.52)),url('../img/planta-aisa.png') center/cover}
.band-grid{display:grid;grid-template-columns:1fr .85fr;gap:60px;align-items:end}
.image-band h2{color:#fff}
.image-band p{color:rgba(255,255,255,.82);font-size:19px}
.contact-section{background:#f7f8fa;padding:105px 0}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.contact-copy p:not(.eyebrow){color:var(--muted);font-size:18px;margin-top:20px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:38px;box-shadow:0 28px 70px rgba(15,23,42,.12)}
.contact-item{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.contact-item span{display:block;color:var(--red);text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:900;margin-bottom:8px}
.contact-item strong{display:block;font-size:20px;line-height:1.4;letter-spacing:-.02em}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:16px;padding:15px 22px;font-weight:900;cursor:pointer;transition:.25s ease;font-size:15px}
.button.primary{background:var(--red);color:#fff;box-shadow:0 18px 38px rgba(227,27,47,.28)}
.button.primary:hover{background:var(--red-dark);transform:translateY(-2px)}
.site-footer{background:#07090d;color:rgba(255,255,255,.68);padding:38px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-inner img{width:140px;background:#fff;border-radius:999px;padding:2px}
.footer-inner p{font-size:14px}
@media(max-width:900px){.header-inner{height:74px}.brand img{width:140px}.header-contact a:first-child{display:none}.hero{padding-top:125px}.hero-panel,.institutional-grid,.band-grid,.contact-grid{grid-template-columns:1fr}.institutional-grid{align-items:start}.hero-panel div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.hero-panel div:last-child{border-bottom:0}.footer-inner{flex-direction:column;text-align:center}}
@media(max-width:560px){.hero h1{font-size:54px}.institutional,.contact-section{padding:78px 0}.image-band{padding:90px 0}.contact-card{padding:28px}}

/* Efectos modernos */
.hero-bg{will-change:opacity,transform}
.hero-bg-1{animation:heroZoom 4s ease-in-out infinite alternate}
.hero-bg-2{position:absolute;inset:0;background-image:url('../img/planta-aisa.png');background-size:cover;background-position:center;opacity:0;transform:scale(1.04);animation:heroFade 16s ease-in-out infinite,heroZoomAlt 18s ease-in-out infinite alternate}
@keyframes heroFade{0%,38%{opacity:0}50%,84%{opacity:1}100%{opacity:0}}
@keyframes heroZoom{from{transform:scale(1.02)}to{transform:scale(1.09)}}
@keyframes heroZoomAlt{from{transform:scale(1.04)}to{transform:scale(1.1)}}
.hero-content{animation:heroContentIn 1.1s ease both .2s}
@keyframes heroContentIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero-panel{animation:panelIn 1.1s ease both .45s}
@keyframes panelIn{from{opacity:0;transform:translateY(18px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.reveal{opacity:0;transform:translateY(42px);filter:blur(8px);transition:opacity .9s ease,transform .9s ease,filter .9s ease}
.reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}
.contact-card,.hero-panel,.site-header{transition:transform .25s ease,box-shadow .25s ease}
.contact-card:hover{transform:translateY(-4px);box-shadow:0 34px 90px rgba(15,23,42,.16)}

.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;align-items:center;gap:10px;background:#25D366;color:#fff;padding:14px 18px;border-radius:999px;font-weight:900;font-size:14px;box-shadow:0 14px 34px rgba(37,211,102,.36);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(37,211,102,.48);background:#20bd5a}
.whatsapp-float svg{width:22px;height:22px}
.whatsapp-float::after{content:"";position:absolute;inset:0;border-radius:999px;animation:whatsappPulse 2.6s infinite;pointer-events:none}
@keyframes whatsappPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.42)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

@media(max-width:768px){.whatsapp-float{right:16px;bottom:16px;padding:14px}.whatsapp-float span{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none;filter:none}}