html {
    scroll-padding-top: 100px;
}

.background-image{
    margin-top:-10px;
}
.intro--compact {
    overflow: hidden;
    height: 590px;
    min-height: auto;
}
.intro--compact .background-image {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: 55%;
}
.intro--compact::after {
    display: none;
}
#team-management.section--people {
    padding-top: 67px;
    padding-bottom: 30px;
    position: relative;
    background: #2f2f7f;
}
#team-management.section--people::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 450px;
    background: #fff;
    z-index: 0;
}
#team-management.section--people .row {
    margin: 0 auto !important;
    justify-content: center;
}
#team-management.section--people .person {
    max-width: 363px;
}
#team-management.section--people .container {
    position: relative;
}
#team-management.section--people .container-line::before {
    display: none;
}
#team-management.section--people h2.heading--sm {
    color: #000;
    font-family: "Playfair Display";
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: none;
    margin-bottom: 75px;
    position: relative;
    z-index: 1;
}
#team-management.section--people .person__container h4.heading--xs.cprim {
    color: #fff !important;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
#team-management.section--people .person__container p.lead.lead--xs {
    color: #fff;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    opacity: 0.6;
}
.section--worldMap {
    background: #fff;
    position: relative;
    margin-top: -20px;
    border-bottom: 0;
}
.section--worldMap .padding-horizontal-sm-5 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0;
    padding: 0 !important;
}
.section--worldMap .heading-line {
    display: block;
    height: 250px;
    width: 27px;
    background: #2f2f7f;
}
.section--worldMap .container--md {
    padding: 0;
    background: #f15822;
    mix-blend-mode: multiply;
    max-width: 100%;
}
.section--worldMap h3 {
    text-align: center;
    color: #fff;
    font-family: "Playfair Display";
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    mix-blend-mode: normal !important;
    background: none !important;
    padding: 126px 0;
}
.section--worldMap .europe-map-container {
    margin-top: -55px;
}
.section--worldMap .europe-map-container .container {
    padding: 0;
}
.section--worldMap .europe-map-container .container img {
    min-height: 530px;
    object-fit: cover;
    object-position: 70%;
}
.section--country-tabs {
    padding: 0;
    position: relative;
    /* Remove stacking context so popups can overlay the fixed header */
    z-index: auto;
}

/* Defaults for sticky submenu offsets */
:root {
    /* Current header height (updated via JS) */
    --header-offset: 8rem;
    /* Current submenu height (updated via JS) */
    --submenu-height: 56px;
    /* Total scroll offset so anchors are not hidden under header+submenu */
    --scroll-offset: calc(var(--header-offset) + var(--submenu-height));
}
.section--country-tabs .container {
    padding: 0;
}
.section--country-tabs .tabs-content {
    margin-top: 50px;
}
.tabs-nav-container {
    margin-bottom: 40px;
}
.tabs-nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 31px;
    justify-content: space-between;
    list-style: none;
    padding: 0;
    margin: 0;
}
.tabs-nav li a {
    display: block;
    color: #2f2f7f;
    font-family: "Playfair Display";
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    border-bottom: 4px solid transparent;
    transform: translateY(2px);
    transition: all 0.2s ease;
    text-transform: uppercase;
    text-align: center;
}
.tabs-nav li a.active,
.tabs-nav li a:hover {
    color: #f15822;
}
.tab-pane {
    display: none;
}
.tab-pane.active {
    display: block;
}
.country-content-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 50px;
}
.country-content-left {
    flex: 2;
    min-width: 300px;
}
.country-content-left h3 {
    color: #2f2f7f;
    text-align: center;
    font-family: "Playfair Display";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin: 65px auto 62px auto;
    width: calc(100% - 54px);
    text-transform: none;
}
.country-content-left .text {
    color: #000;
    text-align: center;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 29px;
    background: #f3f3f3;
    padding: 63px 50px;
    position: relative;
}
.country-content-left .text::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    width: 2px;
    height: 47px;
    background: #f15822;
}
.country-content-left img {
    max-width: 100%;
    height: auto;
}
.country-content-right {
    flex: 1;
    min-width: 250px;
}
.country-content-right h3 {
    color: #2f2f7f;
    text-align: center;
    font-family: "Playfair Display";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin: 40px auto;
    text-transform: none;
}
.country-content-right h3:not(:first-child) {
    margin: 53px 50px 56px 50px;
}
.country-content-right .contact-image {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 30px;
}
.country-content-right .contact-info {
    background: #f3f3f3;
    padding: 54px 50px;
    position: relative;
}
.country-content-right .contact-info::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    width: 2px;
    height: 47px;
    background: #f15822;
}
.country-content-right .contact-info .phone {
    margin-top: 21px;
}
.country-content-right .whistle {
    background: #2f2f7f;
    padding: 54px 50px;
    position: relative;
    color: #fff;
}
.country-content-right .whistle::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    width: 2px;
    height: 47px;
    background: #f15822;
}
.country-content-right .whistle-title {
    color: #2f2f7f;
    font-family: "Playfair Display";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.country-content-right .whistle h4,
.country-content-right .whistle a,
.country-content-right .whistle strong {
    color: #fff;
}
.country-content-right .whistle .phone {
    margin-bottom: 50px;
}
.country-content-right .whistle a {
    position: relative;
    display: inline-block;
    text-decoration: none;
}
.country-content-right .whistle a::after {
    content: "";
    display: inline-block;
    width: 28px;
    height: 6px;
    margin-left: 8px;
    vertical-align: middle;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="28" height="6" viewBox="0 0 28 6" fill="none"><path d="M28 2.88672L23 -2.90887e-05L23 5.77347L28 2.88672ZM0 2.88672L-7.77091e-08 3.38672L23.5 3.38672L23.5 2.88672L23.5 2.38672L7.77091e-08 2.38672L0 2.88672Z" fill="white"/></svg>')
    no-repeat center center;
    background-size: contain;
}
.country-content-right .text {
    color: #000;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 29px;
    text-align: center;
}
.country-content-right h4 {
    color: #2f2f7f;
    text-align: center;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 29px;
}
.country-content-right strong {
    color: #2f2f7f;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 29px;
}
.sub-tab-pane.contact-pane {
    padding: 0 0 49px 0;
}
.sub-tab-pane .section--people {
    margin: 0;
    padding: 0 0 37px 0;
}
.sub-tab-pane .section--people h2 {
    color: #000;
    font-family: "Playfair Display";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin: 47px auto 49px auto;
    display: block;
    position: relative;
}
.sub-tab-pane .section--people .row {
    margin: 0 auto !important;
    justify-content: center;
}
.sub-tab-pane .section--people .person {
    max-width: 363px;
    margin-bottom: 15px;
}
.sub-tab-pane .section--people .person::after {
    display: none;
}
.sub-tab-pane .section--people .container {
    position: relative;
    z-index: 1;
}
.sub-tab-pane .section--people .person__img {
    margin-bottom: 16px;
}
.sub-tab-pane .section--people h4 {
    color: #2f2f7f;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 16px;
}
.sub-tab-pane .section--people p.lead {
    color: #000;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    opacity: 0.6;
    margin: 0;
}
.section-find-news {
    margin: 0;
    padding: 0;
    text-align: center;
}
.section-find-news h3 {
    color: #000;
    font-family: "Playfair Display";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: none;
    margin: 30px auto 42px auto;
}
.section-find-news h4 {
    color: #000;
    font-family: "Playfair Display";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: none;
    margin: 30px auto 42px auto;
}
.section-find-news .social-feed-content {
    padding: 0 !important;
}
.section-find-news .tb_app_wrapper {
    margin: 0 auto;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.section-find-news .tb_app_wrapper .tb_theme_container {
    max-height: 800px;
    overflow-y: auto;
    flex-wrap: nowrap;
}
.section-find-news .tb_cp_post_container {
    flex-direction: column !important;
}
.section-find-news .tb_cp_post_container .tb_cp_post_wrapper {
    width: 100% !important;
}
@media (min-width: 768px) {
    .col.person {
        width: 40%;
    }
    #team-management.section--people::after {
        height: 355px;
    }
    .sub-tab-pane .section--people h2 {
        margin: 47px auto 49px auto;
    }
    .section-find-news .tb_cp_post_container {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
    .section-find-news .tb_cp_post_container .tb_cp_post_wrapper {
        width: 49% !important;
        flex: 1 !important;
    }
}
@media (min-width: 1024px) {
    .section-find-news .tb_cp_post_container .tb_cp_post_wrapper {
        width: 33% !important;
    }
}
@media (min-width: 1300px) {
    .intro--compact {
        min-height: 713px;
    }
    .tabs-content {
        padding-bottom: 100px;
    }
    #team-management.section--people::after {
        height: 400px;
    }
    #team-management.section--people .row {
        gap: 50px;
    }
    .col.person {
        width: 20%;
        margin: 0;
    }
    .section--worldMap h3 {
        padding: 52px 0;
    }
    .section--worldMap .heading-line {
        height: 82px;
        width: 60px;
    }
    .section--worldMap .europe-map-container {
        margin-top: -157px;
    }
    .section--country-tabs {
        padding-top: 0;
        margin-top: -130px;
    }
    .section--country-tabs .tabs-nav-container {
        width: calc(100% - 54px);
        margin: 0 auto;
    }
    .section--country-tabs .tabs-content {
        margin-top: 26px;
    }
    .tabs-nav {
        flex-direction: row;
    }
    .tabs-nav li a.active,
    .tabs-nav li a:hover {
        color: #f15822;
        border-bottom-color: #f15822;
    }
    .section--country-tabs .country-content-grid .country-content-left {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: calc(100% - 48px);
        margin: 0 auto;
    }
    .section--country-tabs .country-content-grid .country-content-left h3 {
        grid-column: 1;
        grid-row: 1;
        color: #2f2f7f;
        font-family: "Playfair Display";
        font-size: 40px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        text-align: left;
        margin: 100px 0 42px 90px;
    }
    .section--country-tabs .country-content-grid .country-content-left .text {
        grid-column: 1;
        grid-row: 2;
        color: #000;
        font-family: Poppins;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 29px;
        text-align: left;
        padding: 58px 86px 58px 90px;
    }
    .section--country-tabs .country-content-grid .country-content-left .text::before {
        transform: translate(0, -50%);
        left: 90px;
    }
    .section--country-tabs .country-content-grid .country-content-left img {
        grid-column: 2;
        grid-row: 1 / 3;
        height: 100%;
        object-fit: cover;
    }
    .sub-tab-pane .section--people {
        width: calc(100% - 48px);
        margin: 0 auto 37px auto;
    }
    .sub-tab-pane .section--people .row {
        gap: 50px;
    }
    .sub-tab-pane .section--people .person {
        margin-bottom: 0;
    }
    .country-content-right {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    .country-content-right .contact-image {
        grid-column: 1;
        grid-row: 1 / 3;
        height: 100%;
        object-fit: cover;
        margin-bottom: 0;
    }
    .country-content-right h3 {
        grid-column: 2;
        grid-row: 1;
        color: #2f2f7f;
        font-family: "Playfair Display";
        font-size: 40px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        text-align: left;
        margin: -20px 0 39px 87px;
    }
    .country-content-right .text {
        grid-column: 2;
        grid-row: 2;
        color: #000;
        font-family: Poppins;
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        line-height: 29px;
        text-align: left;
    }
    .country-content-right .contact-info {
        padding: 62px 90px 62px 90px;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 120px;
    }
    .country-content-right .contact-info::before {
        transform: translate(0, -50%);
        left: 90px;
    }
    .country-content-right .contact-info .phone {
        margin-top: 0;
    }
    .country-content-right h4 {
        color: #2f2f7f;
        font-family: Poppins;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 29px;
        text-align: left;
    }
    .country-content-right strong {
        color: #2f2f7f;
        font-family: Poppins;
        font-size: 20px;
        font-style: normal;
        font-weight: 700;
        line-height: 29px;
    }
    .country-content-right .whistle {
        display: flex;
        flex-direction: row-reverse;
        flex-wrap: nowrap;
        gap: 120px;
        justify-content: flex-end;
        align-items: center;
        padding: 23px 80px;
    }
    .country-content-right .whistle::before {
        transform: translate(0, -50%);
        left: 83px;
    }
    .country-content-right h3.whistle-title {
        margin: 39px 80px 30px 80px;
        text-align: left;
    }
    .country-content-right .whistle h4 {
        color: #fff;
        font-family: Poppins;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 29px;
    }
    .country-content-right .whistle strong {
        color: #fff;
        font-family: Poppins;
        font-size: 20px;
        font-style: normal;
        font-weight: 700;
        line-height: 29px;
    }
    .country-content-right .whistle p a {
        color: #fff;
        font-family: Poppins;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: 29px;
        text-transform: uppercase;
    }
    .country-content-right .whistle p a::after {
        margin-left: 26px;
    }
    .country-content-right .whistle .phone {
        margin-bottom: 0;
    }
    .section-find-news h3 {
        color: #000;
        font-family: "Playfair Display";
        font-size: 40px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
    }
    .section-find-news .tb_cp_post_container .tb_cp_post_wrapper {
        width: 20% !important;
    }
}
@media (min-width: 1600px) {
    .section--country-tabs .sub-tab-pane .section--people {
        width: 100%;
    }
}
.country-submenu-container {
    background-color: #F3F3F3;
    padding: 0;
    border-top: none;
    border-bottom: none;
    margin: 0 auto 40px auto;
    /* Submenu je ve výchozím stavu v normálním toku.
       Lepení řídí JS přidáním .is-stuck (fixed). */
}
/* JS fallback: when sticky is unreliable, we toggle .is-stuck to force fixed positioning */
.country-submenu-container.is-stuck {
    position: fixed;
    top: var(--header-offset, 8rem);
    left: 0;
    right: 0;
    width: 100%;
    z-index: 9; /* výchozí: pod headerem (10), nad obsahem */
}
/* Placeholder to prevent layout jump when submenu is fixed */
.country-submenu-placeholder {
    height: 0;
}

/* Layering strategy: na desktopu musí submenu překrýt obsah headeru,
   na mobilu musí zůstat pod mobilním aside/overlays. */
@media (min-width: 768px) {
    /* Desktop: položme submenu nad .header (ta má z-index: 10) */
    .country-submenu-container.is-stuck {
        z-index: 11;
    }
}
@media (max-width: 767px) {
    /* Mobil: držme submenu níž, aby nepřekrývalo mobilní aside/overlay */
    .country-submenu-container.is-stuck {
        z-index: 8;
    }
}

/* Tablet: pokud je otevřený aside (overlay je aktivní), subnavigaci skryjeme,
   aby nepřekrývala overlay ani nezasahovala do interakcí. */
@media (min-width: 768px) and (max-width: 1023px) {
    body.overlay-active .country-submenu-container {
        display: none !important;
    }
    /* Skryjeme i placeholder, který vkládá JS při fixed režimu, aby nezůstávala mezera */
    body.overlay-active .country-submenu-placeholder {
        display: none !important;
    }
}

/* Mobile: pokud je aktivní overlay (otevřený aside), schovejme subnavigaci
   stejně jako na tabletech – ať neleze pod overlay a nepůsobí rušivě. */
@media (max-width: 767px) {
    body.overlay-active .country-submenu-container {
        display: none !important;
    }
    body.overlay-active .country-submenu-placeholder {
        display: none !important;
    }
}

/* Desktop only: když je submenu přilepené, některé neviditelné vrstvy headeru
   (např. header__container) mohou zachytávat kliky. Vypneme jim pointer-events,
   ale ponecháme interaktivní prvky headeru funkční. */
@media (min-width: 768px) {
    /* Defenzivně cílíme jak na .header__container, tak na .header .container */
    .submenu-stuck .header__container,
    .submenu-stuck .header .container {
        pointer-events: none;
    }



    /* Zachovat klikatelnost navigace/logo/nástrojů v headeru */
    .submenu-stuck .header__nav,
    .submenu-stuck .header__nav *,
    .submenu-stuck .header__logo,
    .submenu-stuck .header__tools,
    .submenu-stuck .header__hamburger *,
    .submenu-stuck .header__tools * {
        pointer-events: auto;
    }
}
.country-submenu-nav-desktop {
    display: none;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 30px;
}
.country-submenu-nav-desktop a {
    display: block;
    position: relative;
    text-decoration: none;
    padding: 16px 0;
    color: #2f2f7f;
    font-family: Poppins;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
/* Animated underline (hover + active) */
.country-submenu-nav-desktop a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 11px;
    width: 100%;
    height: 2px;
    background-color: #2f2f7f;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.country-submenu-nav-desktop a:hover::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
}
.country-submenu-nav-desktop li.active a::after,
.country-submenu-nav-desktop a.active::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.country-submenu-select-mobile {
    display: block;
    width: calc(100% - 42px);
    margin: 0 auto;
    padding: 12px 0 14px 0;
    color: #2f2f7f;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 40px !important;
}
.custom-arrow {
    display: block;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 2;
}
.country-submenu-select-mobile::-ms-expand {
    display: none;
}
.sub-tab-pane {
    display: none;
}
.sub-tab-pane.active {
    display: block;
}
@media (min-width: 768px) {
    .country-submenu-nav-desktop {
        display: flex;
    }
    .country-submenu-select-mobile {
        display: none;
    }
    .custom-arrow {
        display: none;
    }
    .sub-tab-pane {
        display: block !important;
    }
    .country-submenu-container {
        max-width: 100%;
        margin: 0 auto 28px auto;
    }
}
@media (min-width: 768px) {
    .country-submenu-container {
        max-width: 100%;
        margin: 0 auto 28px auto;
    }
    .custom-arrow {
        display: none;
    }
}
.custom-select-mobile-wrapper {
    position: relative;
    display: none;
    width: 100%;
    margin: 0 auto;
    padding: 16px 21px 18px 21px;
    z-index: 10;
}
.custom-select-mobile-wrapper,
.custom-select-mobile-wrapper *,
.country-submenu-container,
.country-submenu-container *,
.header a {
    /* Odstranění modrého tap highlightu na mobilech (iOS/Android) */
    -webkit-tap-highlight-color: transparent;
}
.custom-select-trigger {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    color: #2f2f7f;
    font-family: Poppins, sans-serif;
    font-size: 16px;
    font-weight: 400;
}
.custom-select-trigger span {
    color: #2f2f7f;
    font-family: Poppins, sans-serif;
    font-size: inherit;
    font-weight: 400;
	margin-top:1px;
}
.custom-select-trigger .custom-arrow {
    transition: transform 0.3s ease;
    transform-origin: 50% 25%;
}
.custom-select-mobile-wrapper.open .custom-select-trigger .custom-arrow {
    transform: rotate(180deg);
}
.custom-select-options {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #f3f3f3;
    border-top: 0;
    list-style: none;
    padding: 0 21px;
    margin: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    z-index: 9;
}
.custom-select-mobile-wrapper.open .custom-select-options {
    max-height: 300px;
    /* Allow scrolling when many options are present */
    overflow-y: auto;
}
.custom-select-options li {
    padding: 8px 0;
    color: #2f2f7f;
    font-family: Poppins, sans-serif;
    font-size: 20px;
    cursor: pointer;
}
.custom-select-options li:hover {
    background-color: #f9f9f9;
}
/* Zrušit defaultní aktivní/focus podbarvení u položek v custom dropdownu (mobilní tap) */
.custom-select-trigger:focus,
.custom-select-trigger:active,
.custom-select-options li:focus,
.custom-select-options li:active {
    outline: none;
    background-color: transparent;
}
/* Lepší přístupnost na klávesnici: pokud použijeme :focus-visible, ponecháme jemný obrys */
.custom-select-trigger:focus-visible,
.custom-select-options li:focus-visible {
    outline: 2px solid rgba(47, 47, 127, 0.3);
    outline-offset: 2px;
}
@media (max-width: 767px) {
    .country-submenu-nav-desktop {
        display: none;
    }
    .custom-select-mobile-wrapper {
        display: block;
    }
    .sub-tab-pane.active {
        display: block;
    }
}

/* Mobilní úpravy submenu: menší písmo a kompaktní výška při fixaci */
@media (max-width: 767px) {
    /* Zmenšit písmo u položek v mobilním dropdownu na 15px (trigger ponechat 18px) */
    .custom-select-mobile-wrapper .custom-select-options li {
        font-size: 15px;
        line-height: 1.2;
    }

    /* Když je submenu přilepené (is-stuck), zúžit jeho výšku na ~40px */
    .country-submenu-container.is-stuck .custom-select-mobile-wrapper {
        padding-top: 10px;
        padding-bottom: 10px;
        min-height: 40px;
    }
}

/* Mobile navigace v headeru: podtržení pro aktivní link jako na desktopu */
@media (max-width: 767px) {
    .header .current-menu-item > a::after,
    .header .current_page_item > a::after,
    .header a.active::after {
        transform: scaleX(1);
        transform-origin: left center;
        transition: transform .3s ease-in-out;
    }
}

/* Mobil: když je submenu přilepené a overlay NENÍ aktivní, skryjeme vrstvu
   .header__container.container, která by mohla blokovat kliky na submenu. */
@media (max-width: 767px) {
    body.submenu-stuck:not(.overlay-active) .header__container.container {
        visibility: hidden;
        pointer-events: none;
    }
}

/* Ensure in-page anchors are scrolled with offset for fixed header + sticky submenu */
.country-sub-content [id^="team-"],
.country-sub-content [id^="contact-"],
.country-sub-content [id^="news-"] {
    scroll-margin-top: var(--scroll-offset, 10rem);
}
@media (min-width: 768px) {
    .country-submenu-nav-desktop {
        display: flex;
    }
    .custom-select-mobile-wrapper {
        display: none;
    }
    .sub-tab-pane {
        display: block !important;
    }
}

.country-content-right .whistle .phone a::after {
    display: none;
}

/* Mobile: zobrazit všechny podsekce pod sebou (bez přepínání tabů) */
.sub-tab-pane {
    display: block;
}
.sub-tab-pane.active {
    display: block;
}

a.mobile-link{
    -webkit-transition: color 0.3s linear;
    transition: color 0.3s linear;
}
a.mobile-link:hover{
    color: #8484d2 !important;
}

.hero-wsre {
    background: url('/wp-content/themes/yslab/src/img/polish_news_bgr.jpg') center center/cover no-repeat;
    position: relative;
    color: white;
    min-height: 480px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    font-family: "Playfair Display", serif;
}

.hero-wsre::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(47, 47, 127, 0.66); /* modrý overlay */
    z-index: 1;
}

.hero-wsre-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.hero-wsre-title {
    font-size: 3.9375rem; /* 63px */
    font-weight: 700;
    margin-bottom: 4.625rem; /* 74px */
}

/* Responsive typography */
@media (max-width: 768px) {
    .hero-wsre-title {
        font-size: 28px;
    }
}

.hero-wsre-content a.button {
    font-family: Poppins, sans-serif;
    justify-content: center;
    align-items: center;
    background-color: #f15a29 !important;  /* oranžová */
    color: white !important;
    text-transform: uppercase;
    margin: 0 auto; /* vycentrování */
}

.hero-wsre-content a.button:hover {
    background-color: #d94f22 !important;
    color: white !important;
}