/* WordPress can remove the inline fill styles generated by Vinext/Next.
   Keep exported fill images anchored to their intended media wrappers. */
[data-nimg="fill"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

/* Prevent oversized media from becoming a flex item and moving hero copy
   outside the viewport even before the application hydrates. */
.hero,
.inner-hero,
.article-hero-with-image,
.case-visual-panel,
.leadership-portrait,
.program-card {
  position: relative;
  overflow: hidden;
}

.hero > .hero-image,
.inner-hero > .inner-hero-image,
.article-hero-with-image > .article-hero-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.header-saas-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid rgba(245,130,32,.65);border-radius:999px;color:#fff!important;background:rgba(245,130,32,.14);font-size:10px;font-weight:850;letter-spacing:.05em;white-space:nowrap}.header-saas-link:hover{color:#071019!important;background:#f58220}@media(max-width:800px){.header-saas-link{min-height:34px;padding:7px 10px;font-size:9px;letter-spacing:.02em}}@media(max-width:420px){.header-saas-link{min-height:32px;padding-inline:8px}.header-inner{gap:6px}}
.header-saas-link{min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;color:#d6dde2!important;background:transparent!important;box-shadow:none!important;font-size:11px!important;font-weight:750!important;letter-spacing:.04em!important}.header-saas-link:hover{color:#ffad5c!important;background:transparent!important}.language-switcher{position:relative!important;display:block!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.language-switcher>summary{display:flex;align-items:center;justify-content:center;min-width:62px;min-height:38px;padding:0 11px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(255,255,255,.045);cursor:pointer;list-style:none;color:#c8d1d8;font-size:11px;font-weight:800;letter-spacing:.08em}.language-switcher>summary::-webkit-details-marker{display:none}.language-switcher-menu{position:absolute;z-index:60;top:calc(100% + 9px);right:0;display:grid;min-width:84px;padding:6px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(7,16,25,.98);box-shadow:0 18px 45px rgba(0,0,0,.32)}.language-switcher-menu a{display:block!important;min-width:0!important;height:auto!important;padding:8px 10px!important;border-radius:7px!important;color:#9ba8b1!important;background:transparent!important;box-shadow:none!important;text-align:center;font-size:11px!important}.language-switcher-menu a:hover,.language-switcher-menu a.active{color:#fff!important;background:rgba(245,130,32,.14)!important}@media(max-width:1100px){.header-saas-link{margin-left:auto!important}.language-switcher{margin-left:0!important}.language-switcher-menu{top:calc(100% + 26px)!important}}@media(max-width:800px){.header-saas-link{font-size:10px!important}.language-switcher>summary{min-width:54px;min-height:34px;padding:0 8px;font-size:10px}}@media(max-width:420px){.header-saas-link{font-size:9px!important}.language-switcher>summary{min-width:48px;min-height:32px;padding:0 6px;font-size:9px}}


/* DIVA header guard r8175: keep mobile header identical to the homepage,
   even if a stale cached script has converted the language switcher to <details>. */
@media (max-width:1100px){
  .site-header .header-saas-link{display:none!important}
  .site-header .language-switcher:not(details),
  .site-header details.language-switcher{
    display:flex!important;position:static!important;align-items:center!important;
    width:78px!important;height:32px!important;min-width:78px!important;min-height:32px!important;
    padding:2px!important;margin-left:auto!important;margin-right:0!important;gap:0!important;
    border:1px solid rgba(255,255,255,.13)!important;border-radius:10px!important;
    background:rgba(255,255,255,.043)!important;box-shadow:none!important;overflow:visible!important
  }
  .site-header details.language-switcher>summary{display:none!important}
  .site-header details.language-switcher>.language-switcher-menu{
    display:flex!important;position:static!important;inset:auto!important;z-index:auto!important;
    width:72px!important;height:26px!important;min-width:72px!important;min-height:26px!important;
    padding:0!important;margin:0!important;gap:0!important;border:0!important;border-radius:0!important;
    background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important
  }
  .site-header details.language-switcher>.language-switcher-menu a{
    display:grid!important;place-items:center!important;width:24px!important;height:26px!important;min-width:24px!important;
    padding:0!important;margin:0!important;border:0!important;border-radius:8px!important;
    background:transparent!important;color:#8f9aa4!important;box-shadow:none!important;text-align:center!important;
    font-size:10px!important;font-weight:700!important;line-height:1!important
  }
  .site-header details.language-switcher>.language-switcher-menu a.active{
    background:#ffad5c!important;color:#071019!important
  }
}

/* DIVA canonical public header r8177 — homepage parity at all viewports */
.site-header .header-saas-link{display:none!important}
.site-header .language-switcher:not(details){
  position:static!important;
  display:flex!important;
  flex:none!important;
  align-items:center!important;
  gap:2px!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:38px!important;
  padding:3px!important;
  margin-left:0!important;
  margin-right:0!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.043)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.06)!important;
  overflow:visible!important
}
.site-header .language-switcher:not(details)>a{
  display:grid!important;
  place-items:center!important;
  min-width:31px!important;
  height:30px!important;
  padding:0 7px!important;
  margin:0!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#8f9aa4!important;
  box-shadow:none!important;
  text-align:center!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.08em!important
}
.site-header .language-switcher:not(details)>a:hover{color:#fff!important}
.site-header .language-switcher:not(details)>a.active{
  color:#071019!important;
  background:#ffad5c!important;
  box-shadow:0 5px 16px rgba(245,130,32,.2)!important
}
.site-header .language-switcher:not(details)>span{
  display:block!important;
  flex:none!important;
  width:1px!important;
  height:14px!important;
  background:rgba(255,255,255,.09)!important
}

@media (max-width:1100px){
  .site-header .language-switcher:not(details){margin-left:auto!important}
}
@media (max-width:800px){
  .site-header .language-switcher:not(details){
    gap:2px!important;
    min-height:36px!important;
    padding:3px!important
  }
  .site-header .language-switcher:not(details)>a{
    min-width:28px!important;
    height:28px!important;
    padding:0 5px!important;
    font-size:10px!important
  }
}
@media (max-width:420px){
  .site-header .language-switcher:not(details){
    gap:0!important;
    min-height:32px!important;
    padding:2px!important
  }
  .site-header .language-switcher:not(details)>a{
    min-width:24px!important;
    height:26px!important;
    padding:0 2px!important;
    font-size:9px!important
  }
  .site-header .language-switcher:not(details)>span{display:none!important}
}
