/* Estilos propios de la versión estática. Se cargan después de app.css. */
:root{--navy:#0D1F3C;--ink:#070c18;--gold:#FDB272;--gold-dk:#b8702c;--sand:#f5f0e8;--txt:#2b2f38;--muted:#5b616e;--light:#e8e4dc}
html{scroll-behavior:smooth}
body{background:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* utilidades que no estaban en el CSS original */
.max-w-\[820px\]{max-width:820px}.max-w-\[780px\]{max-width:780px}.max-w-\[620px\]{max-width:620px}.max-w-\[420px\]{max-width:420px}
.flex-wrap{flex-wrap:wrap}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mb-8{margin-bottom:2rem}

/* cabecera */
.gs-nav-link.gx-active{color:var(--gold)}
.gx-mnav{display:flex;flex-direction:column;padding:8px 24px 20px;border-top:1px solid rgba(255,255,255,.06);background:var(--ink)}
.gx-mnav[hidden]{display:none}
.gx-mnav-link{color:rgba(232,228,220,.85);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.gx-mnav-link:last-child{border-bottom:0}
@media (min-width:768px){.gx-mnav{display:none!important}}

/* portada */
.gx-btn-ghost{display:inline-block;padding:1rem 1.75rem;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--light);border:1px solid rgba(232,228,220,.4);transition:border-color .2s,color .2s}
.gx-btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.gx-kpi{display:block;transition:background .2s}
.gx-kpi:hover{background:rgba(253,178,114,.06)}
.gx-pad{padding:56px 24px}
@media (min-width:768px){.gx-pad{padding:70px 64px}}
.gx-link-gold{font-size:12px;font-weight:700;color:var(--gold);letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid rgba(253,178,114,.35);padding-bottom:2px}
.gx-link-gold:hover{border-color:var(--gold)}
.gx-link-blue{font-size:12px;font-weight:700;letter-spacing:.5px;color:#1b5fa8;text-transform:uppercase;border-bottom:1px solid rgba(27,95,168,.3);padding-bottom:2px}
.gx-link-navy{font-size:12px;font-weight:700;letter-spacing:1px;color:var(--navy);text-transform:uppercase;border-bottom:1px solid rgba(13,31,60,.3);padding-bottom:2px}
.gx-link-navy:hover,.gx-link-blue:hover{border-color:currentColor}
.gx-plain{color:inherit}
.gx-card{position:relative}
.gx-card-link{color:inherit}
.gx-card-link::after{content:"";position:absolute;inset:0}
.gx-card-link:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.gx-tab{background:#151e30;color:rgba(232,228,220,.6);white-space:nowrap;transition:background .15s,color .15s}
.gx-tab:hover{color:var(--light);background:#1a2540}
.gx-tab[aria-selected="true"]{background:var(--gold);color:var(--ink)}
.gx-case-panel{margin-bottom:2px}
.js .gx-case-panel[hidden]{display:none}
.gx-more{display:inline-block;margin-top:6px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gold);border-bottom:1px solid rgba(253,178,114,.35);padding-bottom:2px}
.gx-row{display:grid;grid-template-columns:88px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07);align-items:baseline}
.gx-row span:first-child{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(232,228,220,.45)}
.gx-row a,.gx-row .gx-row-v{font-size:13px;color:rgba(232,228,220,.8);font-weight:500}
.gx-row a:hover{color:var(--gold)}
.gx-mosaic{display:grid;grid-template-columns:11fr 9fr;grid-template-rows:260px 200px;gap:5px}
@media (min-width:768px){.gx-mosaic{grid-template-rows:320px 240px;padding-top:22px}}
.gx-check{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;color:rgba(232,228,220,.7)}
.gx-check input{margin-top:3px;accent-color:var(--gold)}
.gx-check a{color:var(--gold);text-decoration:underline}
.gx-hp{position:absolute;left:-9999px}

/* páginas interiores */
.gx-hero{background:var(--navy);padding:40px 0 48px}
@media (min-width:768px){.gx-hero{padding:56px 0 64px}}
.gx-crumbs{font-size:12px;color:rgba(232,228,220,.55);margin-bottom:28px}
.gx-crumbs a{color:rgba(232,228,220,.75)}
.gx-crumbs a:hover{color:var(--gold)}
.gx-crumbs .gx-sep{margin:0 8px;opacity:.5}
.gx-h1{font-family:Merriweather,Georgia,serif;font-weight:900;line-height:1.15;letter-spacing:-.03em;font-size:clamp(28px,4vw,46px);color:var(--light);max-width:900px;margin-bottom:20px}
.gx-hero-intro{font-size:17px;line-height:1.8;color:rgba(232,228,220,.82);max-width:760px}
.gx-hero-intro+.gx-hero-intro{margin-top:12px}
.gx-body{background:var(--sand);padding:48px 0 64px}
@media (min-width:768px){.gx-body{padding:64px 0 88px}}
.gx-layout{display:grid;gap:40px}
@media (min-width:1024px){.gx-layout{grid-template-columns:minmax(0,1fr) 300px;gap:64px}}
.gx-prose{color:var(--txt);font-size:16px;line-height:1.85;max-width:760px}
.gx-prose.gx-narrow{max-width:720px}
.gx-prose h2{font-family:Merriweather,Georgia,serif;font-weight:900;color:var(--navy);font-size:clamp(20px,2.2vw,26px);letter-spacing:-.02em;line-height:1.3;margin:44px 0 14px}
.gx-prose h2:first-child{margin-top:0}
.gx-prose p+p{margin-top:14px}
.gx-prose ul{list-style:disc;padding-left:1.2em;margin:14px 0}
.gx-prose li{padding-left:.2em}
.gx-prose li+li{margin-top:10px}
.gx-prose li::marker{color:#8a8f99}
.gx-prose a:not([class]){color:#1b5fa8;text-decoration:underline;text-underline-offset:3px}
.gx-prose strong{color:var(--navy)}
.gx-list{list-style:none;padding:0;display:grid;gap:10px}
.gx-list{list-style:disc;padding-left:20px}
.gx-list li{padding-left:2px}
.gx-list a{color:var(--navy);font-weight:600}
.gx-list a:hover{color:var(--gold-dk)}
.gx-note{font-size:13px;color:var(--muted);margin-top:18px}
.gx-faq{border-top:1px solid rgba(13,31,60,.15);padding:0}
.gx-faq:last-of-type{border-bottom:1px solid rgba(13,31,60,.15)}
.gx-faq summary{cursor:pointer;font-weight:700;color:var(--navy);padding:16px 0;list-style:none;position:relative;padding-right:28px}
.gx-faq summary::-webkit-details-marker{display:none}
.gx-faq summary::after{content:"+";position:absolute;right:0;top:12px;font-size:20px;color:var(--muted)}
.gx-faq[open] summary::after{content:"\2212"}
.gx-faq p{padding:0 0 18px;margin:0;color:var(--muted);font-size:15px}
.gx-rel-grid{display:grid;gap:2px;margin-top:8px}
@media (min-width:640px){.gx-rel-grid{grid-template-columns:1fr 1fr}}
.gx-rel,.gx-case-link{display:flex;flex-direction:column;gap:6px;background:#fff;padding:22px}
.gx-rel:hover .gx-rel-name,.gx-case-link:hover .gx-rel-name{text-decoration:underline;text-underline-offset:3px}
.gx-rel-tag{font-size:12px;color:var(--muted)}
.gx-rel-name{font-family:Merriweather,Georgia,serif;font-weight:700;font-size:15px;color:var(--navy);line-height:1.4}
.gx-rel-txt{font-size:13px;color:var(--muted);line-height:1.7}
.gx-aside{display:flex;flex-direction:column;gap:24px}
@media (min-width:1024px){.gx-aside{position:sticky;top:96px;align-self:start}}
.gx-aside-box{background:var(--navy);padding:26px;color:rgba(232,228,220,.8);font-size:14px;line-height:1.7}
.gx-aside-box p{margin-bottom:18px}
.gx-aside-box a:not(.gs-btn-primary){color:var(--gold)}
.gx-aside-box .gs-btn-primary{padding:.9rem 1.2rem;font-size:11px;text-align:center;display:block}
.gx-aside-h{font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:10px!important}
.gx-aside-list{background:#fff;padding:22px 26px}
.gx-aside-list .gx-aside-h{color:var(--muted)}
.gx-aside-list ul{list-style:none;padding:0;display:grid;gap:10px;font-size:14px;line-height:1.5}
.gx-aside-list a{color:var(--navy)}
.gx-aside-list a:hover,.gx-aside-list a[aria-current]{color:var(--gold-dk);font-weight:600}
.gx-svc-grid{display:grid;gap:2px}
@media (min-width:768px){.gx-svc-grid{grid-template-columns:1fr 1fr}}
.gx-svc-item{display:flex;flex-direction:column;gap:12px;background:#fff;padding:32px;color:var(--muted);font-size:15px;line-height:1.75}
.gx-svc-item:hover .gx-svc-name{text-decoration:underline;text-underline-offset:4px}
.gx-svc-name{font-family:Merriweather,Georgia,serif;font-weight:900;color:var(--navy);font-size:20px;line-height:1.3;letter-spacing:-.01em}
.gx-svc-item strong{color:var(--navy)}
.gx-more-dark{margin-top:auto;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--navy)}
.gx-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:8px;border-top:1px solid rgba(13,31,60,.15);border-bottom:1px solid rgba(13,31,60,.15)}
.gx-kpi-card{padding:18px 8px;display:flex;flex-direction:column;gap:6px}
.gx-kpi-card+.gx-kpi-card{border-left:1px solid rgba(13,31,60,.12);padding-left:18px}
.gx-kpi-v{font-family:Merriweather,Georgia,serif;font-weight:900;color:var(--navy);font-size:clamp(18px,2.4vw,26px);line-height:1}
.gx-kpi-l{font-size:12px;color:var(--muted)}
.gx-person{display:flex;flex-direction:column;gap:24px}
@media (min-width:640px){.gx-person{flex-direction:row;align-items:center;gap:36px}}
.gx-person-img{width:140px;height:140px;border-radius:50%;object-fit:cover;object-position:center top}
.gx-cta{background:var(--ink)}
.gx-cta-inner{display:flex;flex-direction:column;gap:20px;padding-top:44px;padding-bottom:44px}
@media (min-width:768px){.gx-cta-inner{flex-direction:row;align-items:center;justify-content:space-between}}
.gx-cta-txt{font-family:Merriweather,Georgia,serif;font-weight:700;color:var(--light);font-size:clamp(18px,2vw,24px)}

/* pie */
.gx-footer{background:var(--ink);border-top:1px solid rgba(255,255,255,.07)}
.gx-footer-grid{display:grid;gap:36px;padding-top:48px;padding-bottom:36px}
@media (min-width:768px){.gx-footer-grid{grid-template-columns:1.3fr 1fr 1fr}}
.gx-footer-txt{margin-top:16px;font-size:13px;line-height:1.8;color:rgba(232,228,220,.55)}
.gx-footer-txt a,.gx-footer-list a{color:rgba(232,228,220,.65)}
.gx-footer-txt a:hover,.gx-footer-list a:hover{color:var(--gold)}
.gx-footer-h{font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.gx-footer-list{list-style:none;padding:0;display:grid;gap:9px;font-size:13px}
.gx-footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:20px;padding-bottom:28px;font-size:11px;letter-spacing:.5px;color:rgba(232,228,220,.4)}

/* portada: legibilidad del hero sobre la foto */
.gx-hero-h1{text-shadow:0 2px 24px rgba(7,12,24,.55)}
@media (min-width:768px){.gx-hero-h1{white-space:nowrap;font-size:clamp(32px,calc((100vw - 140px) / 21.5),62px)}}
.gx-hero-sub{color:rgba(232,228,220,.9)!important;text-shadow:0 1px 12px rgba(7,12,24,.7)}
.gx-hero-line{color:rgba(232,228,220,.8);text-shadow:0 1px 10px rgba(7,12,24,.7)}

.gx-card-tag{font-size:11px;color:#7a8190;margin-bottom:14px}
.gx-card:hover .gx-card-link{text-decoration:underline;text-underline-offset:4px}
.gx-sources{font-size:14px}
