/* XponixAI responsive overrides. Desktop styling is inline; these media rules adapt it on smaller screens.
   NOTE: the runtime serializes style attributes (colon+space, "rgb(7, 26, 56)" for hex, "0px" for 0,
   "repeat(3, 1fr)") — all [style*=...] selectors below must use that serialized form. */
img{max-width:100%}
/* Link defaults. 22 links across the blog and legal pages carried no colour and were
   rendering browser-blue; inline colours still win, so styled links are unaffected. */
a{color:#033A84}
a:hover{color:#062B5E}
@media (max-width:960px){
  body{overflow-x:clip}
  #xai-desktopnav{display:none!important}
  #xai-burger{display:inline-flex!important}
  [style*="max-width: 1240px"],[style*="max-width: 880px"]{padding-left:24px!important;padding-right:24px!important}
  [style*="display: flex"][style*="justify-content: space-between"]{flex-wrap:wrap}
  [style*="display: flex"][style*="align-items: flex-end"]{flex-wrap:wrap}
  [style*="display: flex"][style*="align-items: baseline"]{flex-wrap:wrap}
  [style*="display: flex"][style*="gap: 14px"]{flex-wrap:wrap}
  [style*="display: flex"][style*="gap: 12px"][style*="align-items: center"]{flex-wrap:wrap}
  [style*="display: flex"][style*="gap: 18px"][style*="align-items: center"]{flex-wrap:wrap}
  [style*="display: flex"][style*="gap: 40px"],[style*="display: flex"][style*="gap: 44px"],[style*="display: flex"][style*="gap: 48px"]{flex-wrap:wrap}
  [style*="animation"]{flex-wrap:nowrap!important}
  [style*="height: 72px"]{flex-wrap:nowrap!important}
  [style*="grid-template-columns"]{grid-template-columns:1fr!important}
  [style*="grid-template-columns: 1fr 1fr 1fr"],[style*="repeat(3, 1fr)"],[style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="grid-template-columns"][style*="gap: 14px"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="border-right: 1px solid rgba(7, 26, 56, 0.1)"]{border-right:none!important;padding-right:0!important}
  [style*="border-right: 2px solid rgb(7, 26, 56)"]{border-right:none!important;border-bottom:2px solid #071A38!important}
  [style*="border-right: 2px solid rgba(7, 26, 56, 0.15)"]{border-right:none!important}
  [style*="font-size: 104px"]{font-size:72px!important}
  [style*="font-size: 76px"]{font-size:56px!important}
  [style*="font-size: 68px"]{font-size:52px!important}
  [style*="font-size: 64px"]{font-size:50px!important}
  [style*="font-size: 62px"]{font-size:48px!important}
  [style*="font-size: 60px"]{font-size:46px!important}
  [style*="font-size: 58px"]{font-size:44px!important}
  [style*="font-size: 56px"]{font-size:43px!important}
  [style*="font-size: 54px"]{font-size:42px!important}
  [style*="font-size: 52px"]{font-size:40px!important}
  [style*="font-size: 50px"]{font-size:42px!important}
}
/* Tablet (641-960): tighten section rhythm, span an orphan third card, footer as brand / 3 link columns / offices. */
@media (min-width:641px) and (max-width:960px){
  [style*="padding: 104px 32px"],[style*="padding: 96px 32px"],[style*="padding: 92px 32px"],[style*="padding: 88px 32px"]{padding-top:72px!important;padding-bottom:72px!important}
  [style*="32px 0px"]{padding-bottom:0!important}
  [style*="grid-template-columns: 1fr 1fr 1fr"] > :nth-child(3):last-child,[style*="repeat(3, 1fr)"] > :nth-child(3):last-child{grid-column:1/-1}
  footer [style*="grid-template-columns: 1.5fr 1fr 1fr 1fr 1.3fr"]{grid-template-columns:repeat(3,1fr)!important;gap:40px 28px!important}
}
@media (max-width:960px){
  footer [style*="grid-template-columns: 1.5fr 1fr 1fr 1fr 1.3fr"] > :first-child,footer [style*="grid-template-columns: 1.5fr 1fr 1fr 1fr 1.3fr"] > :last-child{grid-column:1/-1}
  footer [style*="gap: 22px"]{flex-wrap:wrap;row-gap:0!important}
}
@media (max-width:640px){
  [style*="max-width: 1240px"],[style*="max-width: 880px"]{padding-left:20px!important;padding-right:20px!important}
  footer [style*="grid-template-columns: 1.5fr 1fr 1fr 1fr 1.3fr"]{grid-template-columns:repeat(2,1fr)!important;gap:36px 20px!important;padding-bottom:44px!important}
  [style*="repeat(2, 1fr)"] > :nth-child(3):last-child{grid-column:1/-1}
  footer [style*="gap: 22px"]{column-gap:18px!important}
  footer [style*="gap: 22px"] > span{display:none}
  [style*="grid-template-columns: 1fr 1fr 1fr"],[style*="repeat(3, 1fr)"],[style*="repeat(4, 1fr)"]{grid-template-columns:1fr!important}
  [style*="grid-template-columns"][style*="gap: 14px"],[style*="grid-template-columns"][style*="gap: 18px"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="grid-template-columns"][style*="gap: 48px"],[style*="grid-template-columns"][style*="gap: 56px"],[style*="grid-template-columns"][style*="gap: 60px"],[style*="grid-template-columns"][style*="gap: 64px"],[style*="grid-template-columns"][style*="gap: 72px"]{gap:36px!important}
  [style*="padding: 104px 32px"]{padding-top:64px!important;padding-bottom:44px!important}
  [style*="padding: 96px 32px"],[style*="padding: 92px 32px"],[style*="padding: 88px 32px"],[style*="padding: 84px 32px"]{padding-top:58px!important;padding-bottom:58px!important}
  [style*="padding: 80px 32px"],[style*="padding: 72px 32px"],[style*="padding: 56px 32px"]{padding-top:48px!important;padding-bottom:48px!important}
  [style*="32px 0px"]{padding-bottom:0!important}
  [style*="padding: 44px"]{padding:30px 22px!important}
  [style*="padding: 44px 44px 0px"]{padding:30px 22px 0!important}
  [style*="padding: 44px 32px"]{padding-top:36px!important;padding-bottom:36px!important;padding-left:18px!important;padding-right:18px!important}
  [style*="padding: 52px"]{padding:30px 22px!important}
  [style*="padding: 40px"]{padding:28px 20px!important}
  [style*="padding: 36px"]{padding:26px 20px!important}
  [style*="padding: 30px 36px"]{padding:22px 20px!important}
  [style*="padding: 26px 28px"]{padding:20px 0!important}
  [style*="border-right: 2px solid rgba(7, 26, 56, 0.25)"]{border-right:none!important;border-bottom:2px solid rgba(7,26,56,0.25)!important}
  [style*="width: 330px"]{width:240px!important}
  [style*="font-size: 104px"]{font-size:44px!important}
  [style*="font-size: 76px"]{font-size:40px!important}
  [style*="font-size: 68px"]{font-size:38px!important}
  [style*="font-size: 64px"]{font-size:37px!important}
  [style*="font-size: 62px"]{font-size:36px!important}
  [style*="font-size: 60px"]{font-size:34px!important}
  [style*="font-size: 58px"]{font-size:33px!important}
  [style*="font-size: 56px"]{font-size:32px!important}
  [style*="font-size: 54px"]{font-size:31px!important}
  [style*="font-size: 52px"]{font-size:30px!important}
  [style*="font-size: 50px"]{font-size:31px!important}
  [style*="font-size: 46px"]{font-size:29px!important}
  [style*="font-size: 44px"]{font-size:29px!important}
  [style*="font-size: 42px"]{font-size:28px!important}
  [style*="font-size: 40px"]{font-size:27px!important}
  [style*="font-size: 38px"]{font-size:26px!important}
  [style*="font-size: 34px"]{font-size:25px!important}
  [style*="font-size: 36px"]{font-size:26px!important}
  [style*="font-size: 32px"]{font-size:24px!important}
  /* mono eyebrow labels sit at 10.5-11px on desktop; lift them to a legible floor on phones */
  [style*="font-size: 11px"],[style*="font-size: 10.5px"]{font-size:12px!important}
}
/* Touch targets: stacked nav and footer links are 16-18px of text on their own.
   Real element selectors here, not [style*=...], so they survive inline-style edits. */
@media (max-width:960px){
  #xai-mobilepanel{height:calc(100vh - 72px);height:calc(100dvh - 72px);scrollbar-width:none}
  #xai-mobilepanel::-webkit-scrollbar{display:none}
  #xai-mobilepanel a,#xai-mobilepanel button{min-height:44px;box-sizing:border-box}
  #xai-mobilepanel a{display:flex;align-items:center}
  footer a{min-height:44px;display:inline-flex;align-items:center;box-sizing:border-box}
}
/* Keyboard focus (Sept 2026 brief): a visible ring on every interactive element, including the
   all:unset buttons. Inline styles beat stylesheet rules, hence !important. Lime ring on navy. */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #033A84!important;outline-offset:3px!important}
[style*="background: rgb(3, 58, 132)"] a:focus-visible,[style*="background: rgb(3, 58, 132)"] button:focus-visible,footer a:focus-visible,footer button:focus-visible{outline-color:#C2D152!important}
/* External links: announce the new tab to assistive technology (visible "↗" marks it for sighted users). */
a[target="_blank"]::after{content:" (opens in a new tab)";position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (prefers-reduced-motion:reduce){
  [style*="animation"]{animation:none!important}
  *{transition-duration:0.01ms!important}
}
