/* Shared navigation and footer refinements; all selectors stay inside site chrome. */
.header .language-search { gap: 20px; }
.header .language-search > .language {
  background: none;
  padding-left: 0;
  margin-left: 0;
  width: auto;
  overflow: visible;
  font-weight: 500;
  transition: color .18s ease;
}
.header .language-search > .language:hover,
.header .language-search > .language:focus-visible { color: #0369ae; }
.header .heaer-menu-button { margin-left: 0; }
.header button.mobile { display: none; }
.header .box .logo {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  width: auto;
  gap: 14px;
  color: #273343;
  text-decoration: none;
  height: 40px;
}
.header .header-brand__mark { position: relative; display: flex; align-items: center; flex: 0 0 168px; width: 168px; height: 40px; }
.header .header-brand__mark > img { display: block; width: 100%; height: auto; }
.header .header-brand__slogan { display: flex; flex: 0 0 auto; flex-direction: column; justify-content: center; padding-left: 14px; border-left: 1px solid rgba(85,103,122,.3); color: inherit; font-size: 12px; font-weight: 400; line-height: 1.65; letter-spacing: 0; white-space: nowrap; }
.header .header-brand__slogan > span { display: block; }
@media (min-width: 1025px) and (max-width: 1280px) {
  .header .header-brand__mark { flex-basis: 152px; width: 152px; }
  .header .header-brand__slogan { font-size: 11.5px; padding-left: 12px; }
}
.footer .footer_contact h5.footer-brand img { display: block; width: 200px; height: auto; }
.footer .footer_contact h5.footer-brand a { display: inline-block; }

@media (min-width: 1025px) {
  .header .box { gap: clamp(24px, 3vw, 56px); }
  .header .box > ul {
    margin-left: auto;
    align-items: center;
    gap: clamp(22px, 2.5vw, 44px);
  }
  .header .box > ul > li { margin: 0; white-space: nowrap; }
  .header .box > ul > li > .ul {
    width: max-content;
    min-width: 100%;
    max-width: none;
    box-sizing: border-box;
    top: calc(100% + 22px);
    left: 50%;
    transform: translateX(-50%);
    padding: 8px 16px;
    border: 0;
    border-radius: 4px;
  }
  .header .box > ul > li > .ul::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: -24px;
    height: 24px;
  }
  .header .box > ul > li > .ul > a {
    text-align: center;
    white-space: nowrap;
    line-height: 24px;
    padding: 8px 0;
    border-top: 0;
    color: #626b74;
  }
  .header .box > ul > li > .ul > a:hover,
  .header .box > ul > li > .ul > a:focus-visible { color: #0369ae; }
  .header .box > ul > li > .ul > a:first-child { border-top: 0; }
  .header .box > ul > li:hover > .ul,
  .header .box > ul > li:focus-within > .ul { display: block; }
}

@media (max-width: 1024px) {
  .header .box > ul > li { position: relative; }
  .header button.mobile {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 5px;
    width: 40px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #070731;
    font: inherit;
    font-size: 20px;
    cursor: pointer;
  }
  .header button.mobile::before { content: '+'; }
  .header button.mobile[aria-expanded="true"]::before { content: '−'; }
  .header .box > ul > li > .ul,
  .header .box > ul > li:hover > .ul,
  .header .box > ul > li:focus-within > .ul {
    display: none;
    position: static;
    width: 100%;
    max-width: none;
    padding: 12px 0 4px 18px;
    box-sizing: border-box;
    transform: none;
  }
  .header .box > ul > li > .ul > a {
    text-align: left;
    line-height: 28px;
    padding: 8px 0;
  }
  .header .box > ul > li.submenu-open > .ul { display: block; }
}

/* Light neutral footer shared by every page. */
body .footer { background: #F5F5F7; color: #273746; border-top: 1px solid #e8e9ed; }
.footer .footer_box :is(h5,h6),.footer .footer_box .footer_contact .tal { color: #273746; }
.footer .footer_box .footer_menu .list > a,.footer .footer_box .footer_contact .mail,.footer .footer_box .foonter_two :is(.copyright,.footer-links,a) { color: #626d7a; }
.footer .footer_box :is(.footer_menu .list > a,.footer_contact a,.foonter_two a,h5 > a):is(:hover,:focus-visible) { color: #0369ae; }
.footer .footer_box a:focus-visible { outline: 2px solid #0369ae; outline-offset: 4px; }
.footer .footer_box .foonter_two { border-top: 1px solid #dee2e7; }
.footer .footer_box .footer-links > span { color: #a6afb9; }
.footer .footer_box .footer_menu > ul > li > h5 { --site-title-weight: 600; color: #000; font-size: 18px; line-height: 1.5; border-bottom-color: #dce1e7; }
.footer .footer_box .footer_menu > ul > li > h5::before,.footer .footer_box .footer_menu > ul > li > h5::after { background-color: #7b8795; }
.footer .footer_one {
  align-items: flex-start;
  gap: clamp(40px, 5vw, 88px);
  padding-top: 72px;
  padding-bottom: 88px;
}
.footer .footer_menu { flex: 1 1 0; width: auto; min-width: 0; }
.footer .footer_menu > ul {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(24px, 2.4vw, 44px);
}
.footer .footer_menu > ul > li { max-width: none; width: auto; min-width: 0; }
.footer .footer_menu > ul > li > h5 { margin-bottom: 26px; }
.footer .footer_menu > ul > li .list > a { line-height: 28px; margin-bottom: 10px; }
.footer .footer_menu > ul > li .list > a:last-child { margin-bottom: 0; }
.footer .footer_contact { flex: 0 0 290px; }
.footer .footer_contact .footer_contact_con { margin-right: 0; width: 100%; }
.footer .footer_contact h5 { margin-bottom: 26px; }
.footer .footer_contact h6 { margin-bottom: 10px; }
.footer .footer_contact .tal { line-height: 28px; margin-bottom: 12px; }
.footer .footer_contact .mail { line-height: 26px; margin-bottom: 9px; }
.footer .footer_contact .button_title { margin-top: 20px; }

@media (min-width: 981px) and (max-width: 1280px) {
  .footer .footer_menu > ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 32px; }
  .footer .footer_contact { flex-basis: 270px; }
}
@media (max-width: 980px) {
  .footer .footer_one { flex-direction: column; gap: 44px; padding-top: 48px; padding-bottom: 52px; }
  .footer .footer_menu { width: 100%; flex: auto; }
  .footer .footer_contact { flex: auto; width: 100%; }
  .footer .footer_menu > ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
}
@media (max-width: 640px) {
  .header .box .logo { flex-basis: auto; width: auto; gap: 10px; }
  .header .header-brand__mark { flex-basis: 112px; width: 112px; }
  .header .header-brand__slogan { padding-left: 10px; font-size: 10px; line-height: 1.6; }
  .header .language-search { gap: 14px; }
  .footer .footer_menu > ul { display: block; }
  .footer .footer_menu > ul > li { width: 100%; }
  .footer .footer_menu > ul > li > h5 { margin-bottom: 10px; }
  .footer .footer_menu > ul > li .list { padding: 8px 0 20px; }
  .footer .footer_one { gap: 30px; }
  .footer .footer_contact { margin-top: 0; }
}

@media (max-width: 380px) {
  .header .box .logo { gap: 8px; }
  .header .header-brand__mark { flex-basis: 100px; width: 100px; }
  .header .header-brand__slogan { padding-left: 8px; font-size: 9.5px; }
  .header .language-search { gap: 10px; }
}

/* A quiet illuminated edge; dropdown parents never receive an underline. */
.header {
  --header-rule: rgba(91,114,138,.2);
  --header-nav-color: #0369ae;
  --header-nav-glow: rgba(56,158,230,.38);
  --header-nav-glow-soft: rgba(56,158,230,.16);
  box-shadow: 0 4px 14px rgba(12,37,60,.075);
}
.header::after { content: ''; position: absolute; z-index: 1; left: 0; right: 0; bottom: 0; height: 1px; background: var(--header-rule); box-shadow: 0 1px 8px var(--header-nav-glow-soft); pointer-events: none; }
.header .header-nav-indicator { display: none; position: absolute; z-index: 2; left: 0; bottom: 0; width: 0; height: 1px; background: linear-gradient(90deg,transparent,var(--header-nav-color) 22%,var(--header-nav-color) 78%,transparent); box-shadow: 0 0 8px var(--header-nav-glow),0 0 18px var(--header-nav-glow-soft); opacity: 0; pointer-events: none; transition: transform .35s cubic-bezier(.22,1,.36,1),width .35s cubic-bezier(.22,1,.36,1),opacity .22s ease; }
.header .box > ul > li.has-submenu::before { content: none !important; display: none !important; }
@media (min-width: 1025px) {
  .header .header-nav-indicator { display: block; }
  .header.has-nav-indicator .header-nav-indicator.is-visible { opacity: 1; }
  .header .box > ul > li:not(.has-submenu)::before { content: ''; position: absolute; left: -24px; bottom: -22px; width: calc(100% + 48px); height: 1px; background: linear-gradient(90deg,transparent,var(--header-nav-color) 22%,var(--header-nav-color) 78%,transparent); box-shadow: 0 0 8px var(--header-nav-glow),0 0 18px var(--header-nav-glow-soft); transform: scaleX(0); transform-origin: center; transition: transform .3s ease; pointer-events: none; }
  .header .box > ul > li:not(.has-submenu):is(.active,:hover,:focus-within)::before { left: -24px; bottom: -22px; width: calc(100% + 48px); height: 1px; transform: scaleX(1); }
  .header.has-nav-indicator .box > ul > li::before { display: none; }
  .header .box > ul > li > a { transition: color .2s ease,text-shadow .3s ease; }
  .header .box > ul > li:is(.active,:hover,:focus-within) > a { text-shadow: 0 0 12px var(--header-nav-glow),0 0 22px var(--header-nav-glow-soft); }
  .header .box > ul > li:is(:hover,:focus-within) > .ul { box-shadow: 0 10px 26px rgba(15,37,59,.1),0 -2px 16px rgba(56,158,230,.12); }
}
@media (max-width: 1024px) { .header .box > ul > li::before { display: none; } }
@media (prefers-reduced-motion: reduce) { .header .header-nav-indicator,.header .box > ul > li::before,.header .box > ul > li > a { transition: none; } }

/* Column pages use the surface below the fixed navigation, independently of the homepage video header. */
.site-column-page .header { --column-header-bg: #fff; --column-menu-bg: #fff; --column-header-ink: #233343; background: var(--column-header-bg) !important; color: var(--column-header-ink); -webkit-backdrop-filter: blur(10px) saturate(115%); backdrop-filter: blur(10px) saturate(115%); transition: background-color .28s ease,color .28s ease,box-shadow .28s ease; }
.site-column-page .header[data-column-tone="dark"] { --column-header-bg: rgba(6,14,25,.5); --column-menu-bg: rgba(8,18,30,.95); --column-header-ink: #fff; --header-rule: rgba(255,255,255,.18); --header-nav-color: #fff; --header-nav-glow: rgba(255,255,255,.48); --header-nav-glow-soft: rgba(204,227,245,.14); box-shadow: 0 4px 14px rgba(0,0,0,.1); }
.site-column-page .header[data-column-surface="banner"] { --column-header-bg: rgba(255,255,255,.72); }
.site-column-page .header[data-column-tone="dark"][data-column-surface="banner"] { --column-header-bg: rgba(4,12,23,.3); }
.site-column-page .header .box .logo,.site-column-page .header .box > ul > li > a,.site-column-page .header .language-search > .language,.site-column-page .header button.mobile { color: var(--column-header-ink); }
.site-column-page .header .box > ul > li > a:is(:hover,:focus-visible),.site-column-page .header .language-search > .language:is(:hover,:focus-visible) { color: #0369ae; }
.site-column-page .header .header-brand__mark > img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); transition: opacity .25s ease; }
.site-column-page .header .column-header-logo--blue { opacity: 1; }
.site-column-page .header .column-header-logo--white { opacity: 0; }
.site-column-page .header[data-column-tone="dark"] .column-header-logo--blue { opacity: 0; }
.site-column-page .header[data-column-tone="dark"] .column-header-logo--white { opacity: 1; }
.site-column-page .header[data-column-tone="dark"] .header-brand__slogan { border-left-color: rgba(255,255,255,.35); }
.site-column-page .header .heaer-menu-button .icon-bar { background: var(--column-header-ink); }
.site-column-page .header .box > ul > li > .ul { background: var(--column-menu-bg); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.site-column-page .header[data-column-tone="dark"] .box > ul > li > .ul > a { color: #d9e1e8; }
.site-column-page .header .box > ul > li > .ul > a:is(:hover,:focus-visible) { color: #0369ae; }
@media (max-width: 1024px) { .site-column-page .header .box > ul { background: var(--column-menu-bg); } }
@media (prefers-reduced-motion: reduce) { .site-column-page .header,.site-column-page .header .header-brand__mark > img { transition: none; } }

/* Replace the old empty header gap with image area, retaining banner content height. */
.site-column-page [data-column-banner] { margin-top: 0 !important; isolation: isolate; }
.site-column-page :is(.ar-hero,.ep-hero,.rd-hero,.sustain-hero,.about-hero)[data-column-banner] { box-sizing: content-box !important; padding-top: var(--site-header-height,65px) !important; }
.site-column-page .other-banner:not(.about-hero)[data-column-banner] { padding-top: calc(23.332% + var(--site-header-height,65px)) !important; }
@media (max-width: 768px) { .site-column-page .other-banner:not(.about-hero)[data-column-banner] { padding-top: calc(41.332% + var(--site-header-height,65px)) !important; } }

/* Fixed-header clearance for content pages after the breadcrumb strip is removed. */
.site-header-clearance { height: var(--site-header-height,65px); pointer-events: none; }
