
/* v0.6.6.8.7.9.2 · cabecera y pie públicos corregidos; despliegue estático verificable */
:root{--site-header-h:78px;--site-max:1240px;--focus:0 0 0 4px rgba(255,107,53,.24)}
body{padding:0}
.wrap{width:min(var(--site-max),calc(100% - 48px))}
.topbar{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.985);backdrop-filter:saturate(160%) blur(14px);border-top:3px solid rgba(255,107,53,.34);border-bottom:1px solid #d9e4ec;box-shadow:0 5px 24px rgba(18,59,92,.055)}
.nav{min-height:var(--site-header-h);height:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px}
.brand{min-height:48px}.brand svg{width:40px;height:40px}.brand b{font-size:27px}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0}
.desktop-nav>a,.nav-group>summary{display:inline-flex;align-items:center;min-height:44px;padding:10px 11px;border-radius:9px;text-decoration:none;color:var(--azul);font-weight:800;font-size:14.5px;white-space:nowrap;cursor:pointer;list-style:none}
.desktop-nav>a:hover,.desktop-nav>a:focus-visible,.nav-group>summary:hover,.nav-group>summary:focus-visible{background:#eef4f8;color:#0c2b44}
.nav-group{position:relative}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary::after{content:'⌄';font-size:13px;margin-left:6px;transform:translateY(-1px)}
.nav-group[open]>summary{background:#eef4f8}
.nav-menu{position:absolute;top:calc(100% + 10px);left:0;width:310px;padding:10px;background:#fff;border:1px solid var(--borde);border-radius:14px;box-shadow:0 22px 50px rgba(18,59,92,.16)}
.nav-menu a{display:block;padding:11px 12px;border-radius:9px;text-decoration:none;color:var(--azul);font-weight:800;line-height:1.25}.nav-menu a small{display:block;margin-top:3px;color:var(--gris);font-weight:650}.nav-menu a:hover,.nav-menu a:focus-visible{background:#f1f6f9}
.nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}
.nav-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 11px;border-radius:10px;text-decoration:none;color:var(--azul);font-size:14px;font-weight:850}
.nav-actions a:hover,.nav-actions a:focus-visible{background:#eef4f8}.nav-actions .login-link{border:1px solid #cbd9e4}.nav-actions .demo-link{background:var(--naranja);color:#fff;padding-inline:18px;box-shadow:0 9px 22px rgba(255,107,53,.18)}.nav-actions .demo-link:hover,.nav-actions .demo-link:focus-visible{background:var(--naranja2);color:#fff}
.mobile-nav{display:none;position:relative}.mobile-toggle{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 12px;border:1px solid #cbd9e4;border-radius:10px;background:#fff;color:var(--azul);font:inherit;font-weight:900;cursor:pointer}.mobile-toggle:focus-visible{outline:none;box-shadow:var(--focus)}.burger{width:20px;height:14px;position:relative;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.burger::after{content:'';position:absolute;left:0;right:0;top:5px;border-top:2px solid currentColor}
.mobile-drawer{display:none;position:absolute;right:0;top:calc(100% + 12px);width:min(390px,calc(100vw - 28px));max-height:calc(100vh - 100px);overflow:auto;padding:12px;background:#fff;border:1px solid var(--borde);border-radius:16px;box-shadow:0 24px 60px rgba(18,59,92,.22)}.mobile-nav[data-open='true'] .mobile-drawer{display:block}.mobile-drawer a{display:block;padding:12px 13px;border-radius:9px;text-decoration:none;color:var(--azul);font-weight:800}.mobile-drawer a:hover,.mobile-drawer a:focus-visible{background:#eef4f8}.mobile-drawer .mobile-section{margin:9px 12px 3px;color:#6a7b89;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.mobile-drawer .mobile-cta{margin-top:8px;background:var(--naranja);color:#fff;text-align:center}.mobile-drawer .mobile-cta:hover{background:var(--naranja2)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus)}
.hero{padding-top:88px}.page-head{padding-top:72px}
.footer .brand{display:inline-flex}.footer-copy{margin-top:14px;max-width:440px}.footer a{min-height:30px}.legal-line{align-items:center}
@media(max-width:1120px){.desktop-nav{gap:0}.desktop-nav>a,.nav-group>summary{padding-inline:8px;font-size:13.5px}.nav-actions .citizen-link{display:none}.nav{gap:16px}}
@media(max-width:960px){.desktop-nav,.nav-actions{display:none}.mobile-nav{display:block}.nav{grid-template-columns:auto 1fr auto;min-height:68px}.topbar{--site-header-h:68px}.wrap{width:min(100% - 32px,var(--site-max))}.hero{padding-top:64px}}
@media(max-width:560px){.wrap,.narrow{width:min(100% - 28px,1120px)}.brand b{font-size:23px}.brand svg{width:35px;height:35px}.mobile-toggle .label{display:none}.mobile-toggle{width:44px;padding:9px}.nav{gap:10px}.hero{padding-top:52px}.page-head{padding-top:50px}.footer{padding-top:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.topbar,.mobile-nav{display:none!important}body{color:#000}.hero,.page-head{background:#fff!important;color:#000!important;padding:20px 0}.footer{background:#fff!important;color:#000!important}}


/* v0.6.6.8.7.9.2 · pie corporativo alineado y jerarquía estable */
.footer{padding:58px 0 26px}
.footer .foot-grid{display:grid;grid-template-columns:minmax(320px,1.65fr) repeat(3,minmax(155px,.8fr));gap:46px;align-items:start}
.footer .foot-grid>div{min-width:0}
.footer .footer-brand{padding-right:24px}
.footer .footer-brand .brand{margin:0 0 16px;min-height:auto}
.footer .footer-copy{max-width:470px;margin:0;color:#b8ccda;line-height:1.72}
.footer .footer-nav h4{margin:0 0 15px;font-size:15px;letter-spacing:.01em}
.footer .footer-nav a{display:flex;align-items:center;min-height:34px;margin:1px 0;padding:3px 0;color:#b8ccda;line-height:1.35}
.footer .footer-nav a:hover,.footer .footer-nav a:focus-visible{color:#fff;text-decoration:underline;text-decoration-color:var(--naranja);text-underline-offset:4px}
.footer .footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:22px;align-items:center;border-top:1px solid rgba(255,255,255,.14);margin-top:40px;padding-top:22px;font-size:13px;color:#a9c1d4}
.footer .footer-bottom p{margin:0}
.footer .footer-copyright{justify-self:start;white-space:nowrap}
.footer .footer-legal{display:flex;align-items:center;justify-content:center;gap:18px;white-space:nowrap}
.footer .footer-legal a{display:inline-flex;align-items:center;min-height:36px;margin:0;color:#b8ccda}
.footer .footer-note{justify-self:end;text-align:right;max-width:430px;line-height:1.45}
@media(max-width:1050px){
  .footer .foot-grid{grid-template-columns:minmax(280px,1.4fr) repeat(3,minmax(140px,.75fr));gap:30px}
  .footer .footer-brand{padding-right:8px}
  .footer .footer-bottom{grid-template-columns:1fr auto}
  .footer .footer-note{grid-column:1/-1;justify-self:center;text-align:center;max-width:none}
}
@media(max-width:820px){
  .footer .foot-grid{grid-template-columns:1.25fr 1fr;gap:36px 42px}
  .footer .footer-brand{grid-column:1/-1;padding-right:0}
  .footer .footer-copy{max-width:620px}
  .footer .footer-bottom{grid-template-columns:1fr;gap:10px;text-align:center}
  .footer .footer-copyright,.footer .footer-note{justify-self:center;text-align:center;white-space:normal}
  .footer .footer-legal{flex-wrap:wrap;gap:8px 18px}
}
@media(max-width:520px){
  .footer{padding:44px 0 22px}
  .footer .foot-grid{grid-template-columns:1fr;gap:30px}
  .footer .footer-brand{grid-column:auto}
  .footer .footer-nav h4{margin-bottom:10px}
  .footer .footer-nav a{min-height:38px}
  .footer .footer-bottom{margin-top:32px;padding-top:18px}
  .footer .footer-legal{display:grid;grid-template-columns:1fr;gap:2px}
}

/* v0.6.6.8.7.9.4 · formulario corporativo y estados de envío */
.form-status{max-width:700px;margin:0 auto 18px;padding:15px 18px;border-radius:13px;font-weight:800;line-height:1.5}
.form-status.success{display:block;background:#e7f7f2;border:1px solid #8bd5c2;color:#075e52}
.form-status.error{display:block;background:#fff0ed;border:1px solid #f3ad9b;color:#8e2f17}
.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form button[disabled]{opacity:.68;cursor:wait;transform:none}
