
/* ASCG transversal global consistency */
#mobile-nav{display:none!important}
#mobile-nav[hidden]{display:none!important}.footer-alias-heading{display:none!important}
.float-wa,.float-whatsapp{right:20px!important;bottom:22px!important;background:#25D366!important;color:#fff!important;border:1px solid #25D366!important;fill:none!important}
.float-wa svg,.float-whatsapp svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important}
.float-top{right:20px!important;bottom:96px!important}.footer{padding-bottom:104px!important}
.mobile-language{display:none}
@media(max-width:1180px){#mobile-nav:not([hidden]){display:block!important}.mobile-language{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.mobile-language a{border:1px solid #34373b!important;border-radius:999px!important;text-align:center!important;padding:9px 10px!important}}
@media(max-width:760px){.float-wa,.float-whatsapp{right:14px!important;bottom:14px!important}.float-top{right:14px!important;bottom:88px!important}.footer{padding-bottom:98px!important}}
.footer .footer-logo{width:390px!important;max-width:100%!important;height:auto!important}
@media(max-width:760px){.footer .footer-logo{width:340px!important}}

/* Mobile navigation must be independent from legacy page-level .nav rules. */
#mobile-nav.mobile-nav{display:none!important;background:#101215!important;color:#fff!important;border-top:1px solid #2a2d31!important;padding-top:10px!important;padding-bottom:18px!important}
@media(max-width:1180px){
  #mobile-nav.mobile-nav:not([hidden]){display:block!important}
  #mobile-nav.mobile-nav>a{display:block!important;width:100%!important;padding:11px 0!important;margin:0!important;border:0!important;border-bottom:1px solid #26292d!important;color:#d7dade!important;font-size:15px!important;line-height:1.35!important;text-align:left!important;white-space:normal!important}
  #mobile-nav.mobile-nav>.mobile-language{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:14px 0!important}
  #mobile-nav.mobile-nav>.mobile-language>a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;margin:0!important;padding:9px 10px!important;border:1px solid #34373b!important;border-radius:999px!important;color:#fff!important;font-size:15px!important;line-height:1.2!important;text-align:center!important}
}

/* Mobile header / navigation — audited September 2026 */
@media(min-width:1181px){
  .site-header .menu-btn{display:none!important}
}
@media(max-width:1180px){
  .site-header .nav,.site-header .header-cta{display:none!important}
  .site-header .header-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:78px!important;height:auto!important}
  .site-header .header-tools{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:0!important;margin-left:auto!important;justify-self:auto!important}
  .site-header .header-tools>.lang{display:none!important}
  .site-header .menu-btn{display:grid!important;place-items:center!important;flex:0 0 46px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;margin:0!important;padding:0!important;border:1px solid #3b3f44!important;border-radius:50%!important;background:transparent!important;color:#fff!important;cursor:pointer!important;appearance:none!important;line-height:1!important}
  .site-header .menu-btn:focus-visible{outline:2px solid #63c2e7!important;outline-offset:3px!important}
  .menu-icon{position:relative!important;display:block!important;width:20px!important;height:14px!important}
  .menu-icon>span{position:absolute!important;left:0!important;width:20px!important;height:2px!important;border-radius:2px!important;background:currentColor!important;transform-origin:center!important;transition:transform .18s ease,opacity .18s ease,top .18s ease!important}
  .menu-icon>span:nth-child(1){top:0!important}
  .menu-icon>span:nth-child(2){top:6px!important}
  .menu-icon>span:nth-child(3){top:12px!important}
  .menu-btn[aria-expanded="true"] .menu-icon>span:nth-child(1){top:6px!important;transform:rotate(45deg)!important}
  .menu-btn[aria-expanded="true"] .menu-icon>span:nth-child(2){opacity:0!important}
  .menu-btn[aria-expanded="true"] .menu-icon>span:nth-child(3){top:6px!important;transform:rotate(-45deg)!important}

  #mobile-nav.mobile-nav{width:min(var(--max,1280px),calc(100% - (var(--pad,clamp(22px,4vw,56px))*2)))!important;margin:0 auto!important;padding:8px 0 18px!important;border-top:1px solid #2a2d31!important;background:#101215!important}
  #mobile-nav.mobile-nav>a{display:flex!important;align-items:center!important;min-height:46px!important;width:100%!important;margin:0!important;padding:12px 10px!important;border:0!important;border-bottom:1px solid #292d31!important;color:#d7dade!important;font-size:16px!important;font-weight:600!important;line-height:1.35!important;text-align:left!important;white-space:normal!important}
  #mobile-nav.mobile-nav>a:hover,#mobile-nav.mobile-nav>a:focus-visible,#mobile-nav.mobile-nav>a[aria-current="page"]{color:#fff!important;background:#15181b!important}
  #mobile-nav.mobile-nav>a:focus-visible{outline:2px solid #63c2e7!important;outline-offset:-2px!important}
  #mobile-nav.mobile-nav>.mobile-language{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:16px 10px!important}
  #mobile-nav.mobile-nav>.mobile-language>a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;margin:0!important;padding:10px 12px!important;border:1px solid #3b3f44!important;border-radius:999px!important;color:#fff!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important;text-align:center!important}
  #mobile-nav.mobile-nav>.mobile-language>a[aria-current="page"]{background:#fff!important;color:#08090a!important;border-color:#fff!important}
}
@media(max-width:640px){
  .site-header .header-row{min-height:76px!important;gap:14px!important}
  .site-header .logo{width:240px!important;max-width:calc(100vw - 104px)!important;height:auto!important}
  #mobile-nav.mobile-nav>a{padding-left:8px!important;padding-right:8px!important}
  #mobile-nav.mobile-nav>.mobile-language{margin-left:8px!important;margin-right:8px!important}
}


/* Release hardening — transversal audit September 2026 */
/* One four-column footer on wide screens regardless of legacy page CSS. */
.footer .footer-grid.footer-top{
  display:grid!important;
  grid-template-columns:minmax(260px,1.55fr) repeat(3,minmax(150px,1fr))!important;
  gap:clamp(28px,3.3vw,46px)!important;
  align-items:start!important;
}
.footer .footer-grid.footer-top>div{min-width:0!important}
.footer .footer-grid.footer-top h3{
  font-size:15px!important;
  line-height:1.3!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  color:#8f969d!important;
  margin:5px 0 14px!important;
}
.footer .footer-grid.footer-top a{font-size:16px!important;line-height:1.45!important}
.footer .footer-note{font-size:16px!important;line-height:1.6!important}
.footer .footer-bottom{font-size:16px!important}

/* Give the commercial side panel a usable width; collapse it before it becomes cramped. */
@media(min-width:1181px){
  .article-layout{grid-template-columns:200px minmax(0,720px) minmax(250px,1fr)!important;gap:40px!important}
  .side-cta{min-width:250px!important}
}
@media(max-width:1180px){
  .article-layout{grid-template-columns:190px minmax(0,1fr)!important;gap:42px!important}
  .side-cta{display:none!important}
  .footer .footer-grid.footer-top{grid-template-columns:1fr 1fr!important;gap:34px 44px!important}
}
@media(max-width:760px){
  .footer .footer-grid.footer-top{grid-template-columns:1fr!important;gap:30px!important}
}

/* Prevent unusually long labels/URLs from creating page-level horizontal overflow. */
main,header,footer,.container{min-width:0}
.footer a,.mobile-nav a,.article a,.story a,.moment,.matrix-row,.contact-point{overflow-wrap:anywhere}
