/* Adaptacion movil: cargar despues de los estilos actuales. */
.cb-mobile-fixes .nav-toggle { display:none; }
.cb-mobile-fixes :is(.nav,.hero-inner,.wrap,.footer-inner) { max-width:1180px; }
.cb-mobile-fixes :is(.hero-inner,.section-head,.project-board,.news-grid,.team-grid,.statement) > * { min-width:0; }
.cb-mobile-fixes :is(.news-body,.project-copy,.person-body) { overflow-wrap:anywhere; }
.cb-mobile-fixes .portrait-frame { touch-action:manipulation; }
.cb-mobile-fixes .portrait-frame:hover .portrait-wink,
.cb-mobile-fixes .portrait-frame:focus-within .portrait-wink { animation:none; }
.cb-mobile-fixes .portrait-frame.cb-wink .portrait-wink { animation:winkSwap .78s ease-in-out 1; }
.cb-mobile-fixes :is(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid #0055a4; outline-offset:4px; }
.cb-mobile-fixes .portrait-frame:focus-visible { outline-offset:6px; }
.cb-mobile-fixes :is(.project-card,.news-card,.person) img { max-width:100%; }
.cb-mobile-fixes :is(.project-column.featured-projects,.project-column.secondary-projects) { min-width:0; }
@media(max-width:1100px) {
.cb-mobile-fixes .topbar { position:relative; }
.cb-mobile-fixes .nav { flex-wrap:wrap; gap:12px; padding:14px 0; min-height:72px; }
.cb-mobile-fixes .brand { max-width:calc(100% - 94px); width:270px; }
.cb-mobile-fixes .nav-toggle { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 14px; border:1px solid #dbe8ef; border-radius:8px; color:#003f7d; background:#fff; font:inherit; font-weight:700; cursor:pointer; margin-left:auto; }
.cb-mobile-fixes .menu { display:flex; width:100%; flex-wrap:wrap; gap:8px; overflow:visible; padding:8px 0 0; }
.cb-mobile-fixes .menu[hidden] { display:none !important; }
.cb-mobile-fixes .menu a { display:flex; align-items:center; min-height:44px; padding:10px 14px; flex:1 1 calc(25% - 8px); border:1px solid #dbe8ef; background:#f7fbfe; }
}
@media(max-width:920px) {
.cb-mobile-fixes .nav { flex-direction:row; align-items:center; }
.cb-mobile-fixes .hero-inner { grid-template-columns:minmax(0,1fr); min-height:0; gap:28px; }
.cb-mobile-fixes .hero-portrait { flex-direction:column; align-items:center; justify-content:center; min-height:0; }
.cb-mobile-fixes .portrait-frame { width:min(390px,100%); aspect-ratio:4/5; }
.cb-mobile-fixes .stat-strip { position:relative; inset:auto; width:min(390px,100%); margin:12px 0 0; box-shadow:none; }
.cb-mobile-fixes .project-board { grid-template-columns:minmax(0,1fr); }
.cb-mobile-fixes .project-column.featured-projects { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cb-mobile-fixes .project-column.featured-projects h3 { flex-wrap:wrap; line-height:1.2; }
.cb-mobile-fixes .project-column.featured-projects h3::after { white-space:normal; line-height:1.4; }
}
@media(max-width:620px) {
.cb-mobile-fixes :is(.nav,.hero-inner,.wrap,.footer-inner) { width:calc(100% - 36px); }
.cb-mobile-fixes .nav { padding:12px 0; }
.cb-mobile-fixes .brand { width:220px; }
.cb-mobile-fixes .menu a { flex-basis:calc(50% - 8px); font-size:14px; }
.cb-mobile-fixes .hero-inner { padding:30px 0 38px; }
.cb-mobile-fixes h1 { font-size:clamp(34px,10vw,48px); overflow-wrap:normal; }
.cb-mobile-fixes .hero-title-rest { font-size:clamp(25px,7vw,34px); }
.cb-mobile-fixes .hero-name { cursor:default; }
.cb-mobile-fixes .hero-name:hover { transform:none; }
.cb-mobile-fixes .section { padding:42px 0; }
.cb-mobile-fixes .section-head { grid-template-columns:minmax(0,1fr); gap:16px; }
.cb-mobile-fixes :is(.news-grid,.team-grid,.priorities,.facts,.project-column.featured-projects) { grid-template-columns:minmax(0,1fr); }
.cb-mobile-fixes .project-column.featured-projects { padding:16px; }
.cb-mobile-fixes .project-column.featured-projects .project-card img { height:auto; aspect-ratio:16/10; }
.cb-mobile-fixes .news-card { min-height:0; }
.cb-mobile-fixes :is(.news-image,.news-card.featured .news-image) { height:auto; aspect-ratio:16/10; }
.cb-mobile-fixes .news-image img { height:100%; }
.cb-mobile-fixes .news-body h3 { line-height:1.25; }
.cb-mobile-fixes .news-link { display:inline-flex; align-items:center; min-height:44px; }
.cb-mobile-fixes :is(.button,.menu a) { min-height:44px; }
.cb-mobile-fixes :is(input,select,textarea) { font-size:16px; max-width:100%; }
.cb-mobile-fixes :is(audio,video,iframe) { max-width:100%; }
.cb-mobile-fixes .footer-inner { flex-wrap:wrap; gap:12px; }
}
@media(prefers-reduced-motion:reduce) {
html.cb-mobile-fixes { scroll-behavior:auto; }
.cb-mobile-fixes .portrait-frame.cb-wink .portrait-wink { animation:none; }
.cb-mobile-fixes .portrait-frame.cb-wink .portrait-wink { opacity:1; }
.cb-mobile-fixes :is(.button,.hero-name,.hero-name::after) { transition:none; transform:none; }
}

/* Support article pages, text zoom and compact navigation. */
.cb-mobile-fixes .nav-toggle { flex-shrink:0; }
.cb-mobile-fixes .cb-article { overflow-wrap:anywhere; }
.cb-mobile-fixes .cb-article img { height:auto; }
@media(max-width:620px) {
 .cb-mobile-fixes .brand { max-width:calc(100% - 94px); }
 .cb-mobile-fixes .news-body :is(h2,h3) { font-size:23px; line-height:1.25; }
 .cb-mobile-fixes .cb-article { width:calc(100% - 36px); padding:32px 0; }
 .cb-mobile-fixes .cb-article h1 { font-size:clamp(28px,8.5vw,40px); line-height:1.15; }
 .cb-mobile-fixes .project-column.featured-projects h3 { font-size:clamp(26px,8vw,38px); }
 .cb-mobile-fixes .news-grid { margin-top:24px; }
}
@media(forced-colors:active) {
 .cb-mobile-fixes :focus-visible { outline:3px solid Highlight; }
 .cb-mobile-fixes .nav-toggle { border:1px solid ButtonText; }
}
