.institute-nav { color: #265171; background: #fff; border-bottom: 1px solid #ffffff26; }
.institute-nav .nav-brand-row { min-height: 104px; gap: 28px; background: #fff; }
.nav-brand-row > a img { height: 72px; width: auto; object-fit: contain; }
.institute-nav form[data-search-form] { border-radius: 12px; background: #ffffff14; border-color: #ffffff55; flex-direction: row; transition: background 220ms ease, border-color 220ms ease, box-shadow 220ms ease; }
.institute-nav form[data-search-form]:focus-within { background: white; border-color: #179f9a; box-shadow: 0 0 0 3px #179f9a15; }
.institute-nav input[data-search-input] { min-width: 0; margin: 0; padding: 13px 18px; text-align: start; outline: none; color: white; }
.institute-nav input[data-search-input]::placeholder { color: #ffffffcc; }
.institute-nav form[data-search-form] button { color: white; margin-inline: 0 8px; }
.institute-nav form[data-search-form]:focus-within input, .institute-nav form[data-search-form]:focus-within button { color: #265171; }
.institute-nav form[data-search-form]:focus-within input::placeholder { color: #697e8b; }
.nav-menu-band { color: #fff; background: #179F9A; border-top: 1px solid #ffffff26; border-bottom: 1px solid #ffffff26; }
.institute-nav .nav-links-row { padding-block: 10px; gap: 24px; }
.nav-primary { justify-content: flex-start; gap: 4px; }
.nav-primary > li { position: relative; }
.nav-primary > li + li:not(:last-child)::before { content: ''; position: absolute; inset-inline-start: -2px; top: 50%; width: 1px; height: 16px; transform: translateY(-50%); background: #ffffff35; }
.nav-primary > li > a, .nav-primary > li > button { position: relative; display: flex; align-items: center; min-height: 44px; padding: 10px 14px; border-radius: 7px; color: #fff; font-size: 14px; font-weight: 600; transition: color 220ms ease, background 220ms ease, box-shadow 220ms ease; }
.nav-primary > li > a:hover, .nav-primary > li > button:hover, .nav-primary > li:focus-within > a, .nav-primary > li:focus-within > button { color: #fff; background: #ffffff20; }
.nav-primary > li.is-current > a:not(.nav-learning-cta), .nav-primary > li.is-current > button, .nav-primary > li > a[aria-current]:not(.nav-learning-cta) { color: #fff; background: #117c78; box-shadow: none; }
.nav-primary > li.is-current > a:not(.nav-learning-cta)::after, .nav-primary > li.is-current > button::after, .nav-primary > li > a[aria-current]:not(.nav-learning-cta)::after { content: ''; position: absolute; inset-inline: 14px; bottom: 5px; height: 2px; background: #fff; border-radius: 2px; }
.nav-primary > li > a.nav-learning-cta, .nav-login-cta, #mobile-menu .nav-learning-cta, #mobile-menu .nav-login-cta { display: flex; align-items: center; justify-content: center; gap: 9px; color: white; background: #117f7b; border: 1px solid #117f7b; border-radius: 9px; padding: 11px 17px; box-shadow: 0 4px 12px #179f9a20; transition: background 220ms ease, box-shadow 220ms ease; }
.nav-primary > li > a.nav-learning-cta:hover, .nav-login-cta:hover, #mobile-menu .nav-learning-cta:hover, #mobile-menu .nav-login-cta:hover { background: #0e6b68; box-shadow: 0 6px 16px #179f9a30; opacity: 1; }
.nav-learning-cta svg, .nav-login-cta svg { width: 22px; height: 22px; flex-shrink: 0; }
#mobile-menu .nav-learning-cta, #mobile-menu .nav-login-cta { margin: 10px 24px 18px; }
.institute-nav .group > .absolute { display: block; opacity: 0; visibility: hidden; transform: translateY(6px); padding-top: 10px; transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease; z-index: 60; }
.institute-nav .group:hover > .absolute, .institute-nav .group:focus-within > .absolute { opacity: 1; visibility: visible; transform: translateY(0); }
.institute-nav .group > .absolute > ul, .institute-nav .group > .absolute > div { display: block; margin-top: 0; padding: 6px; color: #265171; background: white; border: 1px solid #26517115; border-radius: 12px; box-shadow: 0 14px 36px #172f4017; }
.institute-nav .group > .absolute a { border-radius: 7px; font-size: 13px; padding: 12px 14px; transition: background 180ms ease, color 180ms ease; }
.institute-nav .group > .absolute a:hover { background: #edf7f6; color: #117b77; }
.institute-nav .group > button { border-radius: 9px; }
.institute-nav a:focus-visible, .institute-nav button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.institute-nav .group > .absolute a:focus-visible { outline-color: #179f9a; }
.nav-brand-row > a { display: flex; align-items: center; padding: 0; border-radius: 10px; background: white; }
.institute-nav .nav-language-trigger, .institute-nav .nav-account-trigger { color: white; background: #ffffff14; border: 1px solid #ffffff55; }
.institute-nav .nav-language-trigger:hover, .institute-nav .nav-account-trigger:hover { color: white; background: #ffffff26; }
.institute-nav .nav-account-trigger i { color: white; }
.nav-brand-row form[data-search-form] { background: #f4f6f7; border-color: transparent; }
.nav-brand-row input[data-search-input], .nav-brand-row form[data-search-form] button { color: #265171; }
.nav-brand-row input[data-search-input]::placeholder { color: #697e8b; }
.institute-nav .nav-brand-row .nav-language-trigger { color: #265171; background: #f5f5f5; border-color: transparent; }
.institute-nav .nav-brand-row .nav-language-trigger:hover { color: #117b77; background: #edf7f6; }
.nav-brand-row a:focus-visible, .nav-brand-row button:focus-visible { outline-color: #179f9a; }
.nav-brand-row #menu-toggle { color: #265171; background: #f0f5f6; border-color: #26517118; }
#mobile-menu { height: 100dvh; }
#mobile-menu:not(.hidden) { animation: nav-enter 260ms ease-out; }
#mobile-menu { background: #179F9A; color: white; }
#mobile-menu > .bg-neutral-50 { background: #117c78; color: white; }
#mobile-menu > ul { padding: 12px; }
#mobile-menu > ul > li { border-bottom: 1px solid #ffffff26; }
#mobile-menu > ul > li > a:not(.nav-learning-cta):not(.nav-login-cta), #mobile-menu > ul > li > button { border-radius: 6px; color: white; font-weight: 600; transition: background 220ms ease; }
#mobile-menu > ul > li > a:hover, #mobile-menu > ul > li > button:hover { background: #ffffff20; }
#mobile-menu > ul > li.is-current > a:not(.nav-learning-cta):not(.nav-login-cta), #mobile-menu > ul > li.is-current > button { background: #117c78; color: white; box-shadow: inset -3px 0 white; }
[dir="ltr"] #mobile-menu > ul > li.is-current > a:not(.nav-learning-cta):not(.nav-login-cta), [dir="ltr"] #mobile-menu > ul > li.is-current > button { box-shadow: inset 3px 0 white; }
#mobile-menu .submenu, #mobile-menu [data-nav-language] { background: #f2f7f7; color: #265171; }
#mobile-menu > ul > li[data-nav-language] > a:not(.nav-learning-cta):not(.nav-login-cta) { color: #265171; }
#menu-toggle, #close-menu { width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 10px; color: white; background: #ffffff14; border: 1px solid #ffffff55; }
#menu-toggle { display: inline-flex; }
@keyframes nav-enter { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: translateY(0); } }
.institute-partners .partner-logo { height: 92px; width: auto; max-width: 100%; object-fit: contain; filter: none; transition: transform 400ms cubic-bezier(.22,1,.36,1); }
.institute-partners .splide__slide { min-height: 124px; padding: 12px; }
.institute-partners .splide__slide a:hover .partner-logo { transform: scale(1.04); }
.institute-partners .splide__slide a:focus-visible { outline: 2px solid #179f9a; outline-offset: 5px; }
@media(min-width: 1024px) { #menu-toggle { display: none; } }
@media(min-width: 1024px) and (max-width: 1199px) { .nav-primary > li > a, .nav-primary > li > button { padding-inline: 9px; font-size: 12px; } .institute-nav .nav-links-row { gap: 12px; } }
@media(max-width: 1023px) { .nav-menu-band { display: none; } .institute-nav .nav-brand-row { min-height: 88px; gap: 10px; padding: 14px 20px; } .nav-brand-row > .flex-1 { display: none; } .nav-brand-row > a { padding: 6px; } .nav-brand-row > a img { height: 46px; max-width: min(110px, calc((100vw - 128px) / 2)); } .institute-nav .nav-links-row { display: none; } }
@media(max-width: 639px) { .institute-partners .partner-logo { height: 78px; } .institute-partners .splide__slide { padding: 8px; } }
@media(prefers-reduced-motion: reduce) { .institute-nav *, .institute-partners * { animation: none !important; transition: none !important; } }
