@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap');

/* Shared WordPress header, footer and mobile navigation. */

/* Keep the dark navigation crisp without casting grey onto the breadcrumb. */
.prt-header-style-01 .site-header-menu,
.prt-header-style-01 .site-header-menu-inner,
.prt-header-style-01 .prt-stickable-header,
.prt-header-style-01 .prt-stickable-header.fixed-header {
    box-shadow: none !important;
    filter: none !important;
}

/* Stable hover for dark CTAs: replace the legacy circular sweep. */
.prt-btn.prt-btn-style-fill.prt-btn-color-dark:not(.btn-inline) {
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.prt-btn.prt-btn-style-fill.prt-btn-color-dark:not(.btn-inline)::after {
    display: none !important;
}
.prt-btn.prt-btn-style-fill.prt-btn-color-dark:not(.btn-inline):hover,
.prt-btn.prt-btn-style-fill.prt-btn-color-dark:not(.btn-inline):focus-visible {
    color: #ffffff !important;
    border-color: #1246B6 !important;
    background: #1246B6 !important;
    box-shadow: 0 9px 22px rgba(15, 58, 152, .22);
}

/* Compact global breadcrumb: quiet surface, clear hierarchy, no glass pill. */
.prt-titlebar-wrapper {
    position: relative;
    z-index: 2;
    min-height: 56px !important;
    border: 0 !important;
    border-bottom: 1px solid #DEE2EA !important;
    background: #ffffff !important;
    box-shadow: none !important;
}
.prt-titlebar-wrapper .prt-titlebar-wrapper-bg-layer,
.page .prt-titlebar-wrapper::after { display: none !important; }
.prt-titlebar-wrapper .prt-titlebar-wrapper-inner { padding: 0 !important; }
.prt-titlebar-wrapper .prt-page-title-row-heading {
    display: flex;
    min-height: 56px;
    align-items: center;
    justify-content: flex-start !important;
}
.prt-titlebar-wrapper .page-title-heading { display: none !important; }
.prt-titlebar-wrapper .breadcrumb-wrapper {
    display: inline-flex !important;
    flex-wrap: nowrap;
    min-height: 40px;
    align-items: center;
    gap: 9px;
    margin: 0 !important;
    padding: 0 !important;
    color: #5E6F92 !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    text-transform: none;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    white-space: nowrap;
}
.prt-titlebar-wrapper .breadcrumb-wrapper > * { flex: 0 0 auto; }
.prt-titlebar-wrapper .breadcrumb-wrapper > i {
    display: inline-block;
    width: auto;
    height: auto;
    padding: 0 !important;
    color: #1552D6 !important;
    font-size: 12px;
    background: transparent !important;
}
.prt-titlebar-wrapper .breadcrumb-wrapper span {
    border: 0 !important;
    color: #5E6F92;
    line-height: inherit;
}
.prt-titlebar-wrapper .breadcrumb-wrapper a {
    color: #12234B !important;
    text-decoration: none;
}
.prt-titlebar-wrapper .breadcrumb-wrapper a:hover,
.prt-titlebar-wrapper .breadcrumb-wrapper a:focus-visible { color: #1552D6 !important; }
.prt-titlebar-wrapper .breadcrumb-wrapper .prt-sep {
    width: 7px;
    padding: 0 !important;
    color: transparent;
    font-size: 0;
}
.prt-titlebar-wrapper .breadcrumb-wrapper .prt-sep::before {
    content: "\203A";
    color: #97A4BD;
    font-size: 18px;
    font-weight: 400;
}
.prt-titlebar-wrapper .breadcrumb-wrapper .prt-sep::after {
    content: none !important;
    display: none !important;
}
.prt-titlebar-wrapper .breadcrumb-wrapper span:last-child {
    color: #1552D6 !important;
    font-weight: 700;
}

@media (max-width: 575px) {
    .prt-titlebar-wrapper,
    .prt-titlebar-wrapper .prt-page-title-row-heading { min-height: 50px !important; }
    .prt-titlebar-wrapper .breadcrumb-wrapper { min-height: 36px; font-size: 12px; }
    .prt-titlebar-wrapper .breadcrumb-wrapper > i { width: auto; height: auto; }
}

/* Premium header: stable spacing, clear states and equal-height actions. */
.prt-header-style-01 .site-header-menu .site-header-menu-inner {
    padding-inline: clamp(24px, 3vw, 56px);
    border-bottom: 1px solid rgba(119, 158, 242, .18);
    background: var(--shrey-navy);
}

.prt-header-style-01 .site-navigation {
    min-height: 104px;
    min-width: 0;
}

.prt-header-style-01 .header_extra {
    gap: 12px;
    padding-left: 24px;
}

.header_extra > div { margin-left: 0; }

#site-header-menu .site-navigation ul.menu > li > a {
    position: relative;
    min-height: 48px;
    display: flex;
    align-items: center;
    color: rgba(255, 255, 255, .88);
    font-size: 15px;
    font-weight: 600;
    transition: color .2s ease;
}

#site-header-menu .site-navigation ul.menu > li > a::after {
    content: "";
    position: absolute;
    right: 10px;
    bottom: 4px;
    left: 10px;
    height: 2px;
    border-radius: 2px;
    background: #779EF2;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .2s ease;
}

#site-header-menu .site-navigation ul.menu > li:hover > a,
#site-header-menu .site-navigation ul.menu > li > a:focus-visible,
#site-header-menu .prt-stickable-header .site-navigation ul.menu > li.active > a {
    color: #ffffff;
}

#site-header-menu .site-navigation ul.menu > li:hover > a::after,
#site-header-menu .site-navigation ul.menu > li > a:focus-visible::after,
#site-header-menu .site-navigation ul.menu > li.active > a::after {
    transform: scaleX(1);
}

.header_search .search_btn,
.header_login a,
.prt-header-style-01 .header_btn .prt-btn {
    min-width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    line-height: 1;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.header_search .search_btn {
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    align-self: center;
    box-sizing: border-box !important;
    border: 1px solid rgba(255, 255, 255, .18);
    color: #ffffff;
    font-size: 18px;
    background: rgba(255, 255, 255, .04);
}

.header_login a {
    padding: 0 20px;
    border: 1px solid #779EF2;
    color: #ffffff;
    font-weight: 600;
    background: transparent;
}

.prt-header-style-01 .header_btn .prt-btn {
    padding: 0 24px;
    border: 1px solid var(--base-skin);
    box-shadow: 0 10px 26px rgba(20, 76, 198, .22);
}

.header_search .search_btn:hover,
.header_search .search_btn:focus-visible,
.header_login a:hover,
.header_login a:focus-visible {
    color: #0C1835;
    border-color: #779EF2;
    background: #779EF2;
}

.prt-header-style-01 .header_btn .prt-btn:hover,
.prt-header-style-01 .header_btn .prt-btn:focus-visible {
    color: #ffffff;
    background: #1040A6;
    border-color: #779EF2;
    box-shadow: 0 12px 30px rgba(20, 76, 198, .32);
}

.header-login-mobile { display: none !important; }

@media (min-width: 1200px) and (max-width: 1399px) {
    .prt-header-style-01 .site-header-menu .site-header-menu-inner { padding-inline: 20px; }
    .prt-header-style-01 .header_extra { gap: 8px; padding-left: 12px; }
    #site-header-menu .site-navigation ul.menu > li > a { font-size: 14px; }
    .header_login a { padding-inline: 16px; }
    .prt-header-style-01 .header_btn .prt-btn { padding-inline: 18px; }
}

@media (max-width: 1199px) {
    .prt-header-style-01 .site-navigation { min-height: 68px; }
    .header-login-mobile { display: list-item !important; }
    .header-login-mobile > a { color: #779EF2 !important; }
    #site-header-menu .site-navigation ul.menu > li > a::after { display: none; }
}

/* One calm navigation state; legacy lines and search separators are removed. */
.prt-header-style-01 nav.main-menu ul.menu > li > a::before {
    display: none !important;
}

@media (min-width: 1200px) {
    .prt-header-style-01 nav.main-menu ul.menu > li.active > a::before {
        content: "";
        position: absolute;
        left: 50%;
        right: auto;
        bottom: 3px;
        width: 24px;
        height: 2px;
        display: block !important;
        border-radius: 999px;
        background: #779EF2;
        transform: translateX(-50%);
    }
}

#site-header-menu .site-navigation ul.menu > li > a::after {
    content: none;
}

#site-header-menu nav.main-menu ul.menu > li > a[href="#"]::after {
    content: "\f107";
    position: static;
    width: auto;
    height: auto;
    margin-left: 7px;
    display: inline-block;
    border: 0;
    background: none;
    color: currentColor;
    font-family: FontAwesome;
    font-size: 11px;
    opacity: .65;
    transform: none;
}

#site-header-menu .site-navigation ul.menu > li:hover > a,
#site-header-menu .site-navigation ul.menu > li > a:focus-visible,
#site-header-menu .prt-stickable-header .site-navigation ul.menu > li.active > a {
    color: #779EF2 !important;
    border-radius: 0;
    background: transparent !important;
}

.prt-header-style-01 .header_search,
.prt-header-style-01 .header_search::before,
.prt-header-style-01 .header_search::after,
.prt-header-style-01 .header_extra::before,
.prt-header-style-01 .header_extra::after {
    border: 0 !important;
    box-shadow: none !important;
}

.prt-header-style-01 .header_search,
.prt-header-style-01 .header_search:hover,
.prt-header-style-01 .header_search:focus-within {
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    overflow: visible !important;
    border-radius: 12px !important;
    background: transparent !important;
}

.prt-header-style-01 .header_search::before,
.prt-header-style-01 .header_search::after,
.prt-header-style-01 .header_extra::before,
.prt-header-style-01 .header_extra::after { display: none !important; }

@media (max-width: 1199px) {
    #site-header-menu .site-navigation ul.menu > li > a {
        border-radius: 0;
        background: transparent;
    }
}

@media (max-width: 767px) {
    body { padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); }
    #masthead.prt-header-style-01,
    .prt-header-style-01 .site-header-menu,
    .prt-header-style-01 .site-header-menu .site-header-menu-inner {
        box-shadow: none !important;
    }
    .prt-header-style-01 .site-header-menu,
    .prt-header-style-01 .site-header-menu-inner,
    .prt-header-style-01 .site-navigation {
        min-height: 62px !important;
        background: #ffffff !important;
    }
    .prt-header-style-01 .site-header-menu .site-header-menu-inner {
        padding-inline: 12px;
        border-bottom: 1px solid #dce5e7;
        background: #ffffff !important;
    }
    .prt-header-style-01 .site-header-menu-inner > .container-fluid { padding-inline: 12px !important; }
    .prt-header-style-01 .site-navigation { min-height: 62px; }
    .prt-header-style-01 .top_bar,
    .prt-header-style-01 .top_bar .d-flex { min-height: 28px !important; }
    .prt-header-style-01 .top_bar_contact_item { line-height: 28px !important; }
    #logo-img { max-width: 124px !important; max-height: 42px !important; }
    .menubar { min-width: 42px; min-height: 42px; }

    .prt-header-style-01 .site-navigation > div:first-child {
        height: 62px !important;
        margin-left: 0;
        flex: 0 0 140px !important;
        padding: 7px 0 !important;
        clip-path: none !important;
        box-shadow: none !important;
        border-radius: 0;
        background: transparent;
    }
    .prt-header-style-01 .btn-show-menu-mobile {
        width: 42px !important;
        height: 42px !important;
        flex: 0 0 42px !important;
        border: 1px solid #0C1835;
        border-radius: 12px;
        background: #0C1835;
        box-shadow: none;
    }
    .prt-header-style-01 .btn-show-menu-mobile:hover,
    .prt-header-style-01 .btn-show-menu-mobile:focus-visible,
    .prt-header-style-01 .btn-show-menu-mobile.is-active {
        border-color: #144CC6;
        background: #1040A6;
    }
    .prt-header-style-01 .site-navigation.nav-open::before { display: none !important; }

    #site-header-menu nav.main-menu.menu-mobile {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        right: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 112px) !important;
        padding: 8px 14px !important;
        border: 1px solid rgba(119, 158, 242, .18) !important;
        border-radius: 18px !important;
        background: rgba(10, 21, 45, .985) !important;
        box-shadow: 0 20px 48px rgba(5, 10, 22, .34) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu { gap: 0; }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a {
        min-height: 45px;
        padding: 0 8px !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(119, 158, 242, .10) !important;
        border-radius: 0;
        color: rgba(255, 255, 255, .82) !important;
        background: transparent !important;
        font-size: 13px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li:last-child > a { border-bottom: 0 !important; }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a:hover,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a.active,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.active > a {
        color: #ffffff !important;
        background: rgba(119, 158, 242, .07) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.active > a::before,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a.active::before {
        top: 13px;
        bottom: 13px;
        left: -6px;
        width: 2px;
        background: #779EF2;
    }
    #site-header-menu nav.main-menu.menu-mobile li.has-mobile-submenu > a.mega-menu-link::after {
        width: 25px;
        height: 25px;
        flex-basis: 25px;
        border-color: rgba(119, 158, 242, .16);
        border-radius: 50%;
        color: #779EF2;
        background: rgba(119, 158, 242, .06);
        font-size: 15px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li.mega-menu-item ul.mega-submenu {
        margin: 2px 4px 6px 8px !important;
        padding-left: 10px !important;
        border-left-color: rgba(119, 158, 242, .18) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li ul.mega-submenu li a {
        min-height: 38px;
        color: rgba(255, 255, 255, .70) !important;
        font-size: 12px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.header-login-mobile > a {
        margin-top: 7px;
        justify-content: center;
        border: 1px solid rgba(119, 158, 242, .30) !important;
        border-radius: 11px;
        color: #ffffff !important;
        background: rgba(20, 76, 198, .20) !important;
    }

    .shrey-mobile-nav {
        left: 8px;
        right: 8px;
        bottom: calc(8px + env(safe-area-inset-bottom, 0px));
        min-height: 60px;
        padding: 5px;
        border: 1px solid rgba(119, 158, 242, .20);
        border-radius: 17px;
        background: rgba(10, 21, 45, .96);
        box-shadow: 0 12px 32px rgba(6, 13, 28, .28);
    }
    .shrey-mobile-nav a,
    .shrey-mobile-nav button {
        min-height: 50px;
        gap: 3px;
        padding: 5px 2px;
        border-radius: 12px;
        color: rgba(255, 255, 255, .70);
        font-size: 10px;
    }
    .shrey-mobile-nav a i,
    .shrey-mobile-nav button i {
        width: 24px;
        height: 20px;
        color: rgba(255, 255, 255, .68);
        font-size: 15px;
    }
    .shrey-mobile-nav a.is-active,
    .shrey-more-toggle[aria-expanded="true"] {
        color: #ffffff;
        background: rgba(119, 158, 242, .14);
    }
    .shrey-mobile-nav a.is-active i,
    .shrey-more-toggle[aria-expanded="true"] i {
        color: #779EF2;
        background: transparent;
    }
    .shrey-more-sheet {
        left: 8px;
        right: 8px;
        bottom: calc(76px + env(safe-area-inset-bottom, 0px));
        max-height: calc(100dvh - 112px);
        padding: 8px 14px 14px;
        border: 1px solid rgba(119, 158, 242, .18);
        border-radius: 20px;
        background: #0F1D3E;
        box-shadow: 0 22px 54px rgba(6, 11, 23, .38);
    }
    .shrey-more-handle { margin-bottom: 5px; background: rgba(255, 255, 255, .22); }
    .shrey-more-close {
        top: 12px;
        right: 12px;
        min-width: 34px !important;
        width: 34px !important;
        height: 34px !important;
        padding: 0 !important;
        display: grid !important;
        place-items: center;
        border: 1px solid rgba(255, 255, 255, .10) !important;
        border-radius: 50% !important;
        color: rgba(255, 255, 255, .78);
        background: rgba(255, 255, 255, .055) !important;
        box-shadow: none !important;
        font-size: 13px;
        line-height: 1;
    }
    .shrey-more-close:hover,
    .shrey-more-close:focus-visible { color: #ffffff; background: rgba(119, 158, 242, .16) !important; }
    .shrey-more-heading { margin: 0 44px 13px 2px; }
    .shrey-more-heading > span {
        display: block;
        margin-bottom: 2px;
        color: #779EF2;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: .12em;
        text-transform: uppercase;
    }
    .shrey-more-title {
        margin: 0;
        color: #ffffff;
        font-size: 19px;
        letter-spacing: -.01em;
    }
    .shrey-more-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 72px;
        gap: 8px;
        margin-bottom: 10px;
    }
    .shrey-more-appointment {
        min-height: 58px;
        margin: 0;
        padding: 9px 14px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border: 1px solid rgba(119, 158, 242, .32);
        border-radius: 14px;
        color: #ffffff;
        background: linear-gradient(135deg, rgba(20, 76, 198, .95), rgba(20, 76, 198, .72));
        box-shadow: 0 10px 24px rgba(5, 10, 22, .16);
    }
    .shrey-more-appointment span { font-size: 13px; font-weight: 700; line-height: 1.2; }
    .shrey-more-appointment small {
        display: block;
        margin-bottom: 3px;
        color: rgba(255, 255, 255, .72);
        font-size: 9px;
        font-weight: 600;
        letter-spacing: .08em;
        text-transform: uppercase;
    }
    .shrey-more-appointment > i {
        width: 32px;
        height: 32px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        color: #0C1835;
        background: #ffffff;
        font-size: 12px;
    }
    .shrey-more-login {
        min-height: 58px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        border: 1px solid rgba(119, 158, 242, .24);
        border-radius: 14px;
        color: #ffffff;
        background: rgba(255, 255, 255, .055);
        font-size: 10px;
        font-weight: 700;
    }
    .shrey-more-login i { color: #779EF2; font-size: 15px; }
    .shrey-more-login:hover,
    .shrey-more-login:focus-visible { color: #ffffff; background: rgba(119, 158, 242, .14); }
    .shrey-more-quick {
        gap: 7px;
        margin: 10px 0 0;
        padding-top: 10px;
        border-top: 1px solid rgba(119, 158, 242, .14);
    }
    .shrey-more-quick a {
        min-height: 58px;
        padding: 8px 4px;
        border-color: rgba(119, 158, 242, .12);
        border-radius: 12px;
        background: rgba(255, 255, 255, .055);
    }
    .shrey-more-quick a i { font-size: 17px; }
    .shrey-more-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
        padding-top: 0;
        border-top: 0;
    }
    .shrey-more-list li + li { border-top: 0; }
    .shrey-more-list a {
        min-height: 44px;
        padding: 0 11px;
        gap: 9px;
        border: 1px solid rgba(119, 158, 242, .10);
        border-radius: 11px;
        color: rgba(255, 255, 255, .86);
        background: rgba(255, 255, 255, .035);
        font-size: 12px;
    }
    .shrey-more-list a:hover,
    .shrey-more-list a:focus-visible { background: rgba(119, 158, 242, .12); }
    .shrey-more-list a i:first-child { width: 17px; font-size: 14px; }
    .shrey-more-list a i.fa-angle-right { display: none; }
    .shrey-more-toggle:focus:not(:focus-visible) { outline: 0; }
    #totop { bottom: calc(82px + env(safe-area-inset-bottom, 0px)); }
}

@media (prefers-reduced-motion: reduce) {
    #site-header-menu .site-navigation ul.menu > li > a::after,
    .header_search .search_btn,
    .header_login a,
    .prt-header-style-01 .header_btn .prt-btn { transition: none; }
}

/* Final mobile navigation treatment: one opaque, compact navigation layer. */
@media (max-width: 767px) {
    .prt-header-style-01 .btn-show-menu-mobile {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        flex-basis: 40px !important;
        border: 0 !important;
        border-radius: 11px !important;
        background: #144CC6 !important;
        box-shadow: 0 7px 18px rgba(20, 76, 198, .20) !important;
    }
    .prt-header-style-01 .btn-show-menu-mobile:hover,
    .prt-header-style-01 .btn-show-menu-mobile:focus-visible,
    .prt-header-style-01 .btn-show-menu-mobile.is-active { background: #1040A6 !important; }
    .prt-header-style-01 .menubar-box { width: 21px; height: 17px; }
    .prt-header-style-01 .menubar-inner,
    .prt-header-style-01 .menubar-inner::before,
    .prt-header-style-01 .menubar-inner::after {
        width: 21px;
        height: 2px;
        background: #ffffff !important;
    }
    .prt-header-style-01 .menubar-inner::before { top: -6px; }
    .prt-header-style-01 .menubar-inner::after { bottom: -6px; }

    #site-header-menu nav.main-menu.menu-mobile {
        top: calc(100% + 7px) !important;
        right: 0 !important;
        left: 0 !important;
        max-height: calc(100dvh - 108px) !important;
        padding: 9px 14px 12px !important;
        border: 1px solid #dce5e7 !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: 0 20px 48px rgba(12, 24, 53, .20) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a {
        min-height: 44px;
        padding: 0 8px !important;
        border: 0 !important;
        border-bottom: 1px solid #e7edef !important;
        border-radius: 0 !important;
        color: #2D3647 !important;
        background: transparent !important;
        font-size: 13px;
        font-weight: 650;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li:last-child > a { border-bottom: 0 !important; }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a:hover,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a.active,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.active > a {
        color: #0E368C !important;
        background: #E6EDFD !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.active > a::before,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a.active::before {
        left: -6px;
        background: #144CC6 !important;
    }
    #site-header-menu nav.main-menu.menu-mobile li.has-mobile-submenu > a.mega-menu-link::after {
        border-color: #F0F5FE;
        color: #144CC6;
        background: #EBF1FD;
    }
    #site-header-menu nav.main-menu.menu-mobile li.has-mobile-submenu > a.mega-menu-link.active::after {
        border-color: #C7D7F9;
        color: #0E368C;
        background: #f1f5fe;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li.mega-menu-item ul.mega-submenu {
        border-left-color: #cfe1e1 !important;
        background: #ffffff !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li ul.mega-submenu li a {
        color: #566687 !important;
        background: transparent !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li ul.mega-submenu li a:hover,
    #site-header-menu nav.main-menu.menu-mobile ul.menu li ul.mega-submenu li.active > a {
        color: #0E368C !important;
        background: #E6EDFD !important;
    }
    #site-header-menu nav.main-menu.menu-mobile .header-login-mobile > a {
        margin-top: 8px;
        border: 0 !important;
        border-radius: 11px !important;
        color: #ffffff !important;
        background: #144CC6 !important;
    }
    #site-header-menu nav.main-menu.menu-mobile .header-login-mobile > a:hover,
    #site-header-menu nav.main-menu.menu-mobile .header-login-mobile > a:focus-visible {
        color: #ffffff !important;
        background: #1040A6 !important;
    }

    .shrey-mobile-nav-open .shrey-mobile-nav {
        opacity: 0;
        pointer-events: none;
        transform: translateY(12px);
    }
    .shrey-mobile-nav { transition: opacity .2s ease, transform .2s ease; }
}

/* Mobile header rollback: restore the original v2.3.23 navigation treatment. */
@media (max-width: 767px) {
    html,
    body { margin: 0 !important; background-color: #0A142B; }
    body .page,
    #masthead.prt-header-style-01,
    .prt-header-style-01 .site-header-menu,
    .prt-header-style-01 .site-header-menu-inner {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
    }
    .prt-header-style-01 .top_bar,
    .prt-header-style-01 .top_bar .d-flex { min-height: 34px !important; }
    .prt-header-style-01 .top_bar_contact_item { line-height: 34px !important; }
    .prt-header-style-01 .site-header-menu,
    .prt-header-style-01 .site-header-menu-inner,
    .prt-header-style-01 .site-navigation {
        min-height: 70px !important;
        background: linear-gradient(112deg, #0A142B 0%, #0F1E41 100%) !important;
    }
    .prt-header-style-01 .site-header-menu .site-header-menu-inner,
    .prt-header-style-01 .site-header-menu .site-header-menu-inner > .container-fluid,
    .prt-header-style-01 .site-header-menu .site-header-menu-inner > .container-fluid > .row,
    .prt-header-style-01 .site-header-menu .site-header-menu-inner > .container-fluid > .row > .col-lg-12 {
        background: #0F1E41 !important;
    }
    .prt-header-style-01 .site-header-menu-inner > .container-fluid { padding: 0 14px !important; }
    .prt-header-style-01 .site-navigation > div:first-child {
        width: auto !important;
        height: 68px !important;
        margin-left: -12px;
        padding: 8px 30px 8px 14px !important;
        flex: 0 0 174px !important;
        clip-path: polygon(0 0, 100% 0, 86% 100%, 0 100%) !important;
        border-radius: 0;
        background: #ffffff !important;
        box-shadow: 10px 0 28px rgba(4, 7, 15, .12) !important;
    }
    .prt-header-style-01 .site-navigation #logo-img {
        width: 136px !important;
        max-height: 46px !important;
        transform: scale(1.1) translateX(-1px) !important;
    }
    .prt-header-style-01 .btn-show-menu-mobile {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        flex-basis: 44px !important;
        border: 1px solid rgba(255, 255, 255, .14) !important;
        border-radius: 13px !important;
        background: rgba(255, 255, 255, .075) !important;
        box-shadow: 0 9px 22px rgba(4, 7, 15, .18) !important;
    }
    .prt-header-style-01 .btn-show-menu-mobile:hover,
    .prt-header-style-01 .btn-show-menu-mobile:focus-visible,
    .prt-header-style-01 .btn-show-menu-mobile.is-active { background: rgba(20, 76, 198, .22) !important; }
    .prt-header-style-01 .menubar-box { width: 25px; height: 20px; }
    .prt-header-style-01 .menubar-inner,
    .prt-header-style-01 .menubar-inner::before,
    .prt-header-style-01 .menubar-inner::after {
        width: 25px;
        height: 2px;
        background: #ffffff !important;
    }
    .prt-header-style-01 .menubar-inner::before { top: -7px; }
    .prt-header-style-01 .menubar-inner::after { bottom: -7px; }
    .prt-header-style-01 .site-navigation.nav-open::before { display: none !important; }

    #site-header-menu nav.main-menu.menu-mobile {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        right: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 116px) !important;
        padding: 10px 14px 12px !important;
        overflow-y: auto;
        border: 1px solid rgba(119, 158, 242, .20) !important;
        border-radius: 18px !important;
        background: linear-gradient(155deg, #0F1E40 0%, #0B162F 100%) !important;
        box-shadow: 0 22px 52px rgba(6, 11, 23, .36) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu { gap: 0; }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a {
        min-height: 46px;
        padding: 0 8px !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(147, 178, 244, .11) !important;
        border-radius: 0 !important;
        color: rgba(255, 255, 255, .88) !important;
        background: transparent !important;
        font-size: 13px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a:hover,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li > a.active,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.active > a {
        color: #ffffff !important;
        background: rgba(119, 158, 242, .07) !important;
    }
    #site-header-menu nav.main-menu.menu-mobile li.has-mobile-submenu > a.mega-menu-link::after {
        width: 25px;
        height: 25px;
        flex-basis: 25px;
        border-color: rgba(147, 178, 244, .16);
        border-radius: 50%;
        color: #93B2F4;
        background: rgba(119, 158, 242, .06);
        font-size: 15px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li.mega-menu-item ul.mega-submenu {
        margin: 2px 4px 6px 8px !important;
        padding-left: 10px !important;
        border-left-color: rgba(147, 178, 244, .18) !important;
        background: transparent !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu li ul.mega-submenu li a {
        min-height: 38px;
        color: rgba(255, 255, 255, .68) !important;
        background: transparent !important;
        font-size: 12px;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.header-login-mobile > a {
        margin-top: 8px;
        justify-content: center;
        border: 0 !important;
        border-radius: 11px !important;
        color: #ffffff !important;
        background: #144CC6 !important;
    }
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.header-login-mobile > a:hover,
    #site-header-menu nav.main-menu.menu-mobile ul.menu > li.header-login-mobile > a:focus-visible {
        background: #1040A6 !important;
    }
    .shrey-mobile-nav-open .shrey-mobile-nav {
        visibility: hidden;
        animation: none;
        opacity: 0;
        pointer-events: none;
        transform: translateY(12px);
    }
}

/* Premium mobile quick-access tray: fewer cards, clearer hierarchy. */
@media (max-width: 767px) {
    .shrey-mobile-nav .fa,
    .shrey-more-sheet .fa {
        font-family: FontAwesome !important;
        font-weight: normal !important;
    }
    .shrey-more-sheet {
        bottom: calc(78px + env(safe-area-inset-bottom, 0px));
        padding: 9px 16px 15px;
        border: 1px solid rgba(119, 158, 242, .20);
        border-radius: 21px;
        background: linear-gradient(155deg, #0F1E40 0%, #0B162F 100%);
        box-shadow: 0 24px 54px rgba(6, 11, 23, .36);
    }
    .shrey-more-handle {
        width: 30px;
        height: 3px;
        margin-bottom: 8px;
        background: rgba(255, 255, 255, .22);
    }
    .shrey-more-heading { margin-bottom: 14px; }
    .shrey-more-heading > span { color: #93B2F4; }
    .shrey-more-title { font-size: 20px; }
    .shrey-more-actions {
        grid-template-columns: minmax(0, 1fr) 70px;
        gap: 9px;
        margin-bottom: 12px;
    }
    .shrey-more-appointment,
    .shrey-more-login { min-height: 60px; border-radius: 14px; }
    .shrey-more-appointment {
        border: 0;
        background: #144CC6;
        box-shadow: 0 10px 24px rgba(4, 9, 19, .18);
    }
    .shrey-more-login {
        border-color: rgba(147, 178, 244, .20);
        background: rgba(255, 255, 255, .055);
    }

    .shrey-more-list {
        gap: 0 14px;
        padding: 0;
        border-top: 1px solid rgba(147, 178, 244, .14);
        border-bottom: 1px solid rgba(147, 178, 244, .14);
    }
    .shrey-more-list li:nth-child(odd) { border-right: 1px solid rgba(147, 178, 244, .10); }
    .shrey-more-list a {
        min-height: 47px;
        padding: 0 7px 0 2px;
        border: 0;
        border-bottom: 1px solid rgba(147, 178, 244, .09);
        border-radius: 0;
        background: transparent;
        font-size: 12px;
    }
    .shrey-more-list li:nth-last-child(-n+2) a { border-bottom: 0; }
    .shrey-more-list a i:first-child {
        width: 25px;
        height: 25px;
        display: grid;
        place-items: center;
        border-radius: 8px;
        color: #93B2F4;
        background: rgba(119, 158, 242, .09);
        font-size: 12px;
    }
    .shrey-more-list a:hover,
    .shrey-more-list a:focus-visible { background: rgba(119, 158, 242, .07); }

    .shrey-more-contact-label {
        margin: 12px 0 7px 2px;
        color: rgba(255, 255, 255, .54);
        font-size: 9px;
        font-weight: 700;
        letter-spacing: .11em;
        text-transform: uppercase;
    }
    .shrey-more-quick {
        gap: 0;
        margin: 0;
        padding: 0;
        overflow: hidden;
        border: 1px solid rgba(147, 178, 244, .14);
        border-radius: 14px;
    }
    .shrey-more-quick a {
        min-height: 58px;
        padding: 8px 4px;
        border: 0;
        border-right: 1px solid rgba(147, 178, 244, .12);
        border-radius: 0;
        background: rgba(255, 255, 255, .035);
    }
    .shrey-more-quick a:last-child { border-right: 0; }
    .shrey-more-quick a:hover,
    .shrey-more-quick a:focus-visible { background: rgba(119, 158, 242, .10); }
    .shrey-more-quick a i { color: #93B2F4; }

    .shrey-more-toggle[aria-expanded="true"] {
        color: #ffffff;
        background: rgba(119, 158, 242, .16);
        box-shadow: none;
    }
}

/* Footer: one quiet editorial grid with clear navigation and contact paths. */
.shrey-editorial-footer.footer {
    color: rgba(255, 255, 255, .72);
    background: linear-gradient(135deg, #080F20 0%, #0C1834 100%) !important;
}

.shrey-editorial-footer > .container,
.shrey-editorial-footer .shrey-footer-bottom > .container {
    width: min(1320px, calc(100% - 64px));
    max-width: 1320px;
    padding: 0;
}

.shrey-footer-grid {
    display: grid;
    grid-template-columns: .9fr 1.15fr 1.35fr;
    gap: 0;
    padding: 36px 0 38px;
}

.shrey-footer-grid > * {
    min-width: 0;
    padding: 0 34px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.shrey-footer-grid > *:first-child { padding-left: 0; }
.shrey-footer-grid > *:last-child { padding-right: 0; border-right: 0; }

.shrey-editorial-footer h2 {
    margin: 0 0 18px;
    color: #fff;
    font-family: "Lexend", sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: -.01em;
    line-height: 1.3;
}

.shrey-editorial-footer h2:after {
    content: "";
    display: block;
    width: 28px;
    height: 2px;
    margin-top: 9px;
    background: #1550D0;
}

.shrey-footer-column ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.shrey-footer-column a {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    color: rgba(255, 255, 255, .8);
    font-size: 13px;
    transition: color .2s ease;
}

.shrey-footer-grid > .shrey-footer-column:first-child ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 14px;
}

.shrey-footer-column a:after {
    content: "\f061";
    margin-left: 8px;
    color: #759CF1;
    font-family: FontAwesome;
    font-size: 9px;
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity .2s ease, transform .2s ease;
}

.shrey-footer-column a:hover,
.shrey-footer-column a:focus-visible { color: #fff; }

.shrey-footer-column a:hover:after,
.shrey-footer-column a:focus-visible:after { opacity: 1; transform: none; }

.shrey-footer-destinations ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 18px;
}

.shrey-footer-destinations a { white-space: nowrap; }

.shrey-footer-destinations a img {
    width: 21px;
    height: 14px;
    margin-right: 8px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 2px;
    object-fit: cover;
}

.shrey-footer-contact address {
    display: grid;
    gap: 15px;
    margin: 0;
    font-style: normal;
}

.shrey-footer-contact address p {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    margin: 0;
    color: rgba(255, 255, 255, .8);
    font-size: 13px;
    line-height: 1.55;
}

.shrey-footer-contact address i {
    margin-top: 4px;
    color: #759CF1;
    font-size: 13px;
}

.shrey-footer-contact address a {
    overflow-wrap: anywhere;
    color: rgba(255, 255, 255, .82);
}

.shrey-footer-contact address a:hover,
.shrey-footer-contact address a:focus-visible { color: #fff; }

.shrey-footer-social {
    display: flex;
    gap: 9px;
    margin-top: 24px;
}

.shrey-footer-social a {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 10px;
    color: #fff;
    background: rgba(255, 255, 255, .04);
    transition: border-color .2s ease, background .2s ease;
}

.shrey-footer-social a:hover,
.shrey-footer-social a:focus-visible {
    border-color: #1550D0;
    color: #fff;
    background: #144CC6;
}

.shrey-editorial-footer a:focus-visible {
    outline: 2px solid #759CF1;
    outline-offset: 3px;
}

.shrey-footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .1);
    background: rgba(3, 6, 13, .24);
}

.shrey-footer-bottom > .container {
    display: flex;
    min-height: 50px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    color: rgba(255, 255, 255, .58);
    font-size: 12px;
}

@media (max-width: 1199px) {
    .shrey-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
    .shrey-footer-grid > * { padding: 0 30px; }
    .shrey-footer-grid > *:nth-child(2) { padding-right: 0; border-right: 0; }
    .shrey-footer-contact { grid-column: 1 / -1; padding: 32px 0 0 !important; border-top: 1px solid rgba(255, 255, 255, .1); }
}

@media (max-width: 767px) {
    .shrey-editorial-footer > .container,
    .shrey-editorial-footer .shrey-footer-bottom > .container { width: calc(100% - 32px); }
    .shrey-footer-grid { grid-template-columns: 1fr; gap: 0; padding: 18px 0 24px; }
    .shrey-footer-grid > * {
        padding: 26px 0;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }
    .shrey-footer-grid > *:first-child { padding-top: 8px; }
    .shrey-footer-grid > *:last-child { padding-bottom: 0; border-bottom: 0; }
    .shrey-footer-contact { grid-column: auto; padding: 26px 0 0 !important; border-top: 0; }
    .shrey-editorial-footer h2 { margin-bottom: 17px; }
    .shrey-footer-column ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 18px; }
    .shrey-footer-bottom > .container {
        min-height: 104px;
        padding-bottom: 58px;
        align-items: center;
        flex-direction: column-reverse;
        justify-content: center;
        gap: 10px;
        text-align: center;
    }
}

@media (max-width: 420px) {
    .shrey-footer-destinations ul { grid-template-columns: 1fr 1fr; gap: 7px 10px; }
    .shrey-footer-destinations a { font-size: 12px; }
}

/* Keep every visa detail page completely flat. */
.visa-detail-page .visa-detail-hero {
    background: #fff !important;
}
body.visa-detail-page .site-main > section {
    background: #fff !important;
    background-image: none !important;
}
body.visa-detail-page *,
body.visa-detail-page *::before,
body.visa-detail-page *::after {
    box-shadow: none !important;
    text-shadow: none !important;
}
body.visa-detail-page .prt-header-style-01 .site-navigation > div:first-child,
body.visa-detail-page .footer .prt-advertiser a {
    filter: none !important;
}

/* Polished mobile quick menu in the established navy, teal and gold theme. */
@media (max-width: 767px) {
    .shrey-more-sheet {
        left: 10px;
        right: 10px;
        bottom: calc(78px + env(safe-area-inset-bottom, 0px));
        max-height: calc(100dvh - 102px);
        padding: 10px 14px 14px;
        overflow-y: auto;
        border: 1px solid rgba(231, 197, 127, .34);
        border-radius: 22px;
        color: #ffffff;
        background: linear-gradient(155deg, #112147 0%, #0A152D 72%);
        box-shadow: 0 24px 60px rgba(6, 13, 28, .42);
    }
    .shrey-more-handle {
        width: 34px;
        height: 3px;
        margin-bottom: 7px;
        background: rgba(231, 197, 127, .62);
    }
    .shrey-more-close {
        top: 12px;
        right: 12px;
        color: rgba(255, 255, 255, .78);
        border-color: rgba(255, 255, 255, .14) !important;
        background: rgba(255, 255, 255, .06) !important;
    }
    .shrey-more-close:hover,
    .shrey-more-close:focus-visible {
        color: #ffffff;
        background: rgba(119, 158, 242, .14) !important;
    }
    .shrey-more-heading { margin: 0 44px 13px 2px; }
    .shrey-more-heading > span {
        margin-bottom: 3px;
        color: #d8bd80;
        font-size: 9px;
        letter-spacing: .14em;
    }
    .shrey-more-title {
        color: #ffffff;
        font-size: 20px;
        line-height: 1.2;
    }
    .shrey-more-actions {
        grid-template-columns: minmax(0, 1fr) 72px;
        gap: 9px;
        margin-bottom: 12px;
    }
    .shrey-more-appointment,
    .shrey-more-login {
        min-height: 58px;
        border-radius: 13px;
    }
    .shrey-more-appointment {
        border: 0;
        background: linear-gradient(135deg, #1550D1, #1245B4);
        box-shadow: 0 8px 18px rgba(10, 20, 44, .16);
    }
    .shrey-more-appointment span { color: #ffffff; }
    .shrey-more-appointment small { color: #d8bd80; }
    .shrey-more-appointment > i {
        color: #0E1B3A;
        background: #e7c57f;
    }
    .shrey-more-appointment:hover,
    .shrey-more-appointment:focus-visible {
        color: #ffffff;
        background: linear-gradient(135deg, #1349BD, #103EA0);
        box-shadow: inset 0 0 0 1px rgba(231, 197, 127, .52), 0 8px 18px rgba(10, 20, 44, .20);
    }
    .shrey-more-appointment:hover span,
    .shrey-more-appointment:focus-visible span { color: #ffffff; }
    .shrey-more-appointment:hover small,
    .shrey-more-appointment:focus-visible small { color: #f0d697; }
    .shrey-more-appointment:hover > i,
    .shrey-more-appointment:focus-visible > i {
        color: #0A142B;
        background: #f0d697;
    }
    .shrey-more-login {
        color: #ffffff;
        border-color: rgba(119, 158, 242, .24);
        background: rgba(255, 255, 255, .055);
    }
    .shrey-more-login i { color: #144CC6; }
    .shrey-more-login:hover,
    .shrey-more-login:focus-visible {
        color: #ffffff;
        background: rgba(119, 158, 242, .14);
    }
    .shrey-more-list {
        gap: 7px;
        padding: 0;
        border: 0;
    }
    .shrey-more-list li:nth-child(odd) { border-right: 0; }
    .shrey-more-list a {
        min-height: 45px;
        padding: 0 10px;
        gap: 8px;
        color: rgba(255, 255, 255, .88);
        border: 1px solid rgba(119, 158, 242, .14);
        border-radius: 11px;
        background: rgba(255, 255, 255, .04);
        font-size: 11px;
        font-weight: 650;
    }
    .shrey-more-list li:nth-last-child(-n+2) a { border-bottom: 1px solid rgba(119, 158, 242, .14); }
    .shrey-more-list a i:first-child {
        width: 25px;
        height: 25px;
        color: #93B2F4;
        background: rgba(119, 158, 242, .10);
    }
    .shrey-more-list a:hover,
    .shrey-more-list a:focus-visible {
        color: #ffffff;
        border-color: rgba(231, 197, 127, .34);
        background: rgba(119, 158, 242, .10);
    }
    .shrey-more-contact-label {
        margin: 12px 0 7px 2px;
        color: rgba(255, 255, 255, .56);
        font-size: 9px;
    }
    .shrey-more-quick {
        overflow: hidden;
        gap: 0;
        margin: 0;
        padding: 0;
        border: 1px solid rgba(119, 158, 242, .16);
        border-radius: 13px;
        background: rgba(255, 255, 255, .035);
    }
    .shrey-more-quick a {
        min-height: 54px;
        padding: 7px 4px;
        color: rgba(255, 255, 255, .88);
        border: 0;
        border-right: 1px solid rgba(119, 158, 242, .14);
        border-radius: 0;
        background: transparent;
    }
    .shrey-more-quick a:last-child { border-right: 0; }
    .shrey-more-quick a i { color: #144CC6; }
    .shrey-more-quick a:hover,
    .shrey-more-quick a:focus-visible { background: rgba(119, 158, 242, .10); }

    .shrey-mobile-nav {
        border-color: rgba(231, 197, 127, .28);
        background: #0D1936;
        box-shadow: 0 12px 34px rgba(6, 13, 28, .34);
    }
    .shrey-mobile-nav a.is-active,
    .shrey-more-toggle[aria-expanded="true"] {
        color: #ffffff;
        background: #142755;
        box-shadow: inset 0 0 0 1px rgba(231, 197, 127, .55);
    }
    .shrey-mobile-nav a.is-active i,
    .shrey-more-toggle[aria-expanded="true"] i { color: #e7c57f; }

    .shrey-more-sheet a,
    .shrey-more-sheet button,
    .shrey-mobile-nav a,
    .shrey-mobile-nav button {
        transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
}

/* Final visual system: one brand, one typographic voice, and calmer chrome. */
:root {
    --base-bodyfont: "Source Sans 3", "Segoe UI", sans-serif;
    --base-headingfont-main: "Lexend", "Segoe UI", sans-serif;
    --base-headingfont: "Lexend", "Segoe UI", sans-serif;
    --base-bodyfont-color: #51607E;
    --base-headingfont-color: #0E1B3B;
    --base-skin: #144CC6;
    --base-dark: #0E1B3B;
    --base-grey: #f4f7f7;
    --shrey-ink: #0E1B3B;
    --shrey-copy: #51607E;
    --shrey-red: #144CC6;
    --shrey-red-dark: #1040A6;
    --shrey-soft: #f4f7f7;
    --shrey-line: #d8e0e2;
    --career-ink: #0E1B3B;
    --career-teal: #144CC6;
    --career-gold: #c89a45;
    --career-muted: #51607E;
    --career-line: #d8e0e2;
    --career-soft: #f7f4ee;
    --contact-ink: #0E1B3B;
    --contact-teal: #144CC6;
    --contact-gold: #c89a45;
    --contact-muted: #51607E;
    --contact-line: #d8e0e2;
    --contact-soft: #f4f7f7;
    --ep-navy: #0E1B3B;
    --ep-ink: #0E1B3B;
    --ep-red: #144CC6;
    --ep-soft: #f4f7f7;
    --ep-line: #d8e0e2;
    --ep-muted: #51607E;
    --tp-navy: #0E1B3B;
    --tp-red: #144CC6;
    --tp-ink: #102046;
    --tp-muted: #51607E;
    --tp-line: #d8e0e2;
    --tp-soft: #f4f7f7;
}

body { font-family: var(--base-bodyfont); }
h1, h2, h3, h4, h5, h6 {
    font-family: var(--base-headingfont);
    text-wrap: balance;
}
p, li, blockquote { text-wrap: pretty; }
::selection { color: #ffffff; background: #144CC6; }
.slick-dots button { min-width: 24px; min-height: 24px; }

.sg-country-page {
    --sg-navy: #0E1B3B;
    --sg-navy-2: #142856;
    --sg-red: #144CC6;
    --sg-ink: #0E1B3B;
    --sg-copy: #51607E;
    --sg-line: #d8e0e2;
    --sg-soft: #f4f7f7;
}

.visa-detail-page {
    --ve-navy: #0E1B3B;
    --ve-ink: #102046;
    --ve-teal: #144CC6;
    --ve-teal-light: #93B2F4;
    --ve-line: #d8e0e2;
    --ve-muted: #51607E;
    --ve-paper: #fbfcfc;
    --ve-warm: #f7f4ee;
    --ve-wash: #E6EDFC;
}

.sc-field input,
.sc-field select,
.sc-field textarea,
.sc-submit,
.ct-field input,
.ct-field select,
.ct-field textarea,
.ct-submit { font-family: var(--base-bodyfont); }

@media (min-width: 1200px) {
    .prt-header-style-01 .top_bar {
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 48px !important;
    }
    .prt-header-style-01 .top_bar .d-flex { min-height: 38px !important; }
    .prt-header-style-01 .top_bar_contact_item { line-height: 38px !important; }
    .prt-header-style-01 .site-header-menu,
    .prt-header-style-01 .site-header-menu-inner,
    .prt-header-style-01 .prt-stickable-header,
    .prt-header-style-01 .site-navigation {
        min-height: 86px !important;
        height: 86px !important;
    }
    .prt-header-style-01 .site-navigation > div:first-child {
        flex: 0 0 220px !important;
        align-self: center;
        height: 72px !important;
        margin: 7px 0 !important;
        padding: 0 32px !important;
        clip-path: none !important;
        border: 1px solid #DEE5F4;
        border-left: 0;
        border-radius: 0 18px 18px 0;
        background: #ffffff !important;
        filter: none !important;
        box-shadow: 0 12px 28px rgba(7, 13, 28, .16) !important;
    }
    .prt-header-style-01 .site-navigation #logo-img {
        width: 156px !important;
        max-height: 54px !important;
    }
    #site-header-menu nav.main-menu {
        height: 86px !important;
        margin-left: clamp(30px, 3vw, 52px) !important;
    }
    #site-header-menu nav.main-menu > ul.menu > li > a {
        min-height: 86px !important;
        line-height: 1.2 !important;
    }
}

@media (max-width: 1199px) {
    .prt-header-style-01 .site-navigation > div:first-child {
        width: auto !important;
        margin-left: 0 !important;
        padding: 8px 14px !important;
        flex: 0 0 auto !important;
        clip-path: none !important;
        border-right: 1px solid rgba(216, 224, 226, .72);
        border-radius: 0 16px 16px 0;
        background: #ffffff !important;
        filter: none !important;
        box-shadow: 0 10px 24px rgba(7, 13, 28, .14) !important;
    }
    .prt-header-style-01 .site-navigation .home-link { min-height: 44px !important; }
}

@media (max-width: 767px) {
    .team-page .featured-imagebox-team.style1 .prt-media-link a {
        width: 44px !important;
        height: 44px !important;
    }
    .sg-country-nav a,
    .sg-source-links a,
    .sc-job a,
    .ep-guide-toc a { min-height: 44px !important; }
    .ep-guide-faq summary,
    .ep-guide-body details summary { min-height: 44px; padding-block: 10px; }
    #blog-search { min-height: 46px; }
    .slick-dots button { min-width: 44px; min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .shrey-mobile-nav,
    .shrey-more-sheet { animation: none !important; }
}
