.vxb-page {
    width: 100%;
}

.vxb-container,
.vxb-container-inner,
.vxb-element {
    box-sizing: border-box;
}

.vxb-container {
    min-height: var(--vxb-min-height-d, auto);
    margin-top: var(--vxb-margin-top-d, 0);
    margin-bottom: var(--vxb-margin-bottom-d, 0);
    padding-top: var(--vxb-padding-top-d, 32px);
    padding-right: var(--vxb-padding-right-d, 20px);
    padding-bottom: var(--vxb-padding-bottom-d, 32px);
    padding-left: var(--vxb-padding-left-d, 20px);
    color: var(--vxb-color-d, inherit) !important;
    background-color: var(--vxb-bg-live, var(--vxb-bg-d, transparent));
    border-width: var(--vxb-border-width-d, 0);
    border-style: var(--vxb-border-style-d, solid);
    border-color: var(--vxb-border-color-d, transparent);
    border-radius: var(--vxb-border-radius-d, 0);
}

.vxb-container--boxed {
    width: var(--vxb-width-d, 100%);
    max-width: var(--vxb-max-width-d, var(--vxb-layout-max-width, 1200px));
    margin-right: var(--vxb-margin-right-d, auto);
    margin-left: var(--vxb-margin-left-d, auto);
}

.vxb-container--full {
    width: var(--vxb-width-d, 100vw);
    max-width: var(--vxb-max-width-d, none);
    margin-right: var(--vxb-margin-right-d, calc(50% - 50vw));
    margin-left: var(--vxb-margin-left-d, calc(50% - 50vw));
    padding-top: var(--vxb-padding-top-d, 0);
    padding-right: var(--vxb-padding-right-d, 0);
    padding-bottom: var(--vxb-padding-bottom-d, 0);
    padding-left: var(--vxb-padding-left-d, 0);
}

.vxb-container-inner {
    width: 100%;
    display: flex;
    flex-direction: var(--vxb-direction, column);
    justify-content: var(--vxb-justify, flex-start);
    align-items: var(--vxb-align, stretch);
    gap: var(--vxb-gap, 12px);
}

.vxb-container-inner--full {
    max-width: none;
}

.vxb-container-inner--boxed {
    max-width: var(--vxb-content-max-width, 1200px);
    margin-right: auto;
    margin-left: auto;
}


/*
 * Vylto 0.8.6
 * Element-level custom properties must start from their own defaults.
 * CSS custom properties inherit by default, so without these declarations
 * children can accidentally reuse a parent container's padding, margin,
 * background, border, shadow, width or min-height values.
 *
 * Inline custom properties generated for the element still override these.
 */
.vxb-element {
    --vxb-width-d: auto;
    --vxb-max-width-d: none;
    --vxb-min-height-d: auto;
    --vxb-margin-top-d: 0;
    --vxb-margin-right-d: 0;
    --vxb-margin-bottom-d: 0;
    --vxb-margin-left-d: 0;
    --vxb-padding-top-d: 0;
    --vxb-padding-right-d: 0;
    --vxb-padding-bottom-d: 0;
    --vxb-padding-left-d: 0;
    --vxb-color-d: inherit;
    --vxb-bg-d: transparent;
    --vxb-font-family-d: inherit;
    --vxb-font-size-d: inherit;
    --vxb-font-weight-d: inherit;
    --vxb-line-height-d: normal;
    --vxb-border-width-d: 0;
    --vxb-border-style-d: solid;
    --vxb-border-color-d: transparent;
    --vxb-border-radius-d: 0;

    --vxb-min-height-t: var(--vxb-min-height-d);
    --vxb-margin-top-t: var(--vxb-margin-top-d);
    --vxb-margin-right-t: var(--vxb-margin-right-d);
    --vxb-margin-bottom-t: var(--vxb-margin-bottom-d);
    --vxb-margin-left-t: var(--vxb-margin-left-d);
    --vxb-padding-top-t: var(--vxb-padding-top-d);
    --vxb-padding-right-t: var(--vxb-padding-right-d);
    --vxb-padding-bottom-t: var(--vxb-padding-bottom-d);
    --vxb-padding-left-t: var(--vxb-padding-left-d);

    --vxb-min-height-m: var(--vxb-min-height-t);
    --vxb-margin-top-m: var(--vxb-margin-top-t);
    --vxb-margin-right-m: var(--vxb-margin-right-t);
    --vxb-margin-bottom-m: var(--vxb-margin-bottom-t);
    --vxb-margin-left-m: var(--vxb-margin-left-t);
    --vxb-padding-top-m: var(--vxb-padding-top-t);
    --vxb-padding-right-m: var(--vxb-padding-right-t);
    --vxb-padding-bottom-m: var(--vxb-padding-bottom-t);
    --vxb-padding-left-m: var(--vxb-padding-left-t);
}

.vxb-element {
    width: var(--vxb-width-d, auto);
    max-width: var(--vxb-max-width-d, none);
    min-height: var(--vxb-min-height-d, auto);
    margin-top: var(--vxb-margin-top-d, 0);
    margin-right: var(--vxb-margin-right-d, 0);
    margin-bottom: var(--vxb-margin-bottom-d, 0);
    margin-left: var(--vxb-margin-left-d, 0);
    padding-top: var(--vxb-padding-top-d, 0);
    padding-right: var(--vxb-padding-right-d, 0);
    padding-bottom: var(--vxb-padding-bottom-d, 0);
    padding-left: var(--vxb-padding-left-d, 0);
    color: var(--vxb-color-d, inherit) !important;
    background-color: var(--vxb-bg-live, var(--vxb-bg-d, transparent));
    font-family: var(--vxb-font-family-d, inherit);
    font-size: var(--vxb-font-size-d, inherit);
    font-weight: var(--vxb-font-weight-d, inherit);
    line-height: var(--vxb-line-height-d, normal);
    letter-spacing: var(--vxb-letter-spacing-d, normal);
    white-space: var(--vxb-white-space-d, normal);
    border-width: var(--vxb-border-width-d, 0);
    border-style: var(--vxb-border-style-d, solid);
    border-color: var(--vxb-border-color-d, transparent);
    border-radius: var(--vxb-border-radius-d, 0);
}

.vxb-heading {
    margin-top: 0;
    margin-bottom: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

.vxb-text,
.vxb-text p {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

.vxb-text > :first-child {
    margin-top: 0;
}

.vxb-text > :last-child {
    margin-bottom: 0;
}

.vxb-button-wrap {
    text-align: var(--vxb-text-align, left);
}

.vxb-button {
    display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;gap:var(--vxb-btn-gap,8px);
    padding:var(--vxb-btn-py,var(--vxb-global-button-py,12px)) var(--vxb-btn-px,var(--vxb-global-button-px,20px));
    background:var(--vxb-btn-bg,var(--vxb-global-button-bg,var(--vxb-global-color-primary,#2271b1)));
    color:var(--vxb-btn-color,var(--vxb-global-button-text,#fff)) !important;
    font-size:var(--vxb-btn-font-size,inherit);font-weight:var(--vxb-btn-font-weight,var(--vxb-global-button-weight,inherit));line-height:inherit;text-decoration:none;
    border:var(--vxb-btn-border-width,0) solid var(--vxb-btn-border-color,transparent);border-radius:var(--vxb-btn-radius,var(--vxb-global-button-radius,4px));transition:background-color .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease;
}
.vxb-button--full{display:flex;width:100%;}
.vxb-button-icon{display:inline-flex;line-height:1;}
.vxb-button:hover{background:var(--vxb-btn-hover-bg,var(--vxb-btn-bg,var(--vxb-global-button-bg,var(--vxb-global-color-primary,#2271b1))));color:var(--vxb-btn-hover-color,var(--vxb-btn-color,var(--vxb-global-button-text,#fff))) !important;opacity:1;}

@media (max-width: 1024px) {
    .vxb-container,
    .vxb-element {
        min-height: var(--vxb-min-height-t, var(--vxb-min-height-d));
        margin-top: var(--vxb-margin-top-t, var(--vxb-margin-top-d));
        margin-bottom: var(--vxb-margin-bottom-t, var(--vxb-margin-bottom-d));
        padding-top: var(--vxb-padding-top-t, var(--vxb-padding-top-d));
        padding-right: var(--vxb-padding-right-t, var(--vxb-padding-right-d));
        padding-bottom: var(--vxb-padding-bottom-t, var(--vxb-padding-bottom-d));
        padding-left: var(--vxb-padding-left-t, var(--vxb-padding-left-d));
        color: var(--vxb-color-t, var(--vxb-color-d)) !important;
        --vxb-bg-live: var(--vxb-bg-t, var(--vxb-bg-d, transparent));
        background-color: var(--vxb-bg-live, transparent) !important;
        font-family: var(--vxb-font-family-t, var(--vxb-font-family-d, inherit));
        font-size: var(--vxb-font-size-t, var(--vxb-font-size-d));
        font-weight: var(--vxb-font-weight-t, var(--vxb-font-weight-d));
        line-height: var(--vxb-line-height-t, var(--vxb-line-height-d));
        letter-spacing: var(--vxb-letter-spacing-t, var(--vxb-letter-spacing-d, normal));
        white-space: var(--vxb-white-space-t, var(--vxb-white-space-d, normal));
        border-width: var(--vxb-border-width-t, var(--vxb-border-width-d));
        border-style: var(--vxb-border-style-t, var(--vxb-border-style-d));
        border-color: var(--vxb-border-color-t, var(--vxb-border-color-d));
        border-radius: var(--vxb-border-radius-t, var(--vxb-border-radius-d));
    }

    .vxb-container {
        --vxb-bg-live: var(--vxb-bg-t, var(--vxb-bg-d, transparent));
        background-color: var(--vxb-bg-live, transparent) !important;
    }

    .vxb-container--boxed,
    .vxb-element {
        width: var(--vxb-width-t, var(--vxb-width-d));
        max-width: var(--vxb-max-width-t, var(--vxb-max-width-d));
        margin-right: var(--vxb-margin-right-t, var(--vxb-margin-right-d));
        margin-left: var(--vxb-margin-left-t, var(--vxb-margin-left-d));
    }

    .vxb-container--full {
        width: var(--vxb-width-t, var(--vxb-width-d, 100vw));
        max-width: var(--vxb-max-width-t, var(--vxb-max-width-d, none));
        margin-right: var(--vxb-margin-right-t, var(--vxb-margin-right-d, calc(50% - 50vw)));
        margin-left: var(--vxb-margin-left-t, var(--vxb-margin-left-d, calc(50% - 50vw)));
        padding-top: var(--vxb-padding-top-t, var(--vxb-padding-top-d, 0));
        padding-right: var(--vxb-padding-right-t, var(--vxb-padding-right-d, 0));
        padding-bottom: var(--vxb-padding-bottom-t, var(--vxb-padding-bottom-d, 0));
        padding-left: var(--vxb-padding-left-t, var(--vxb-padding-left-d, 0));
    }
}

@media (max-width: 767px) {
    .vxb-container,
    .vxb-element {
        min-height: var(--vxb-min-height-m, var(--vxb-min-height-t, var(--vxb-min-height-d)));
        margin-top: var(--vxb-margin-top-m, var(--vxb-margin-top-t, var(--vxb-margin-top-d)));
        margin-bottom: var(--vxb-margin-bottom-m, var(--vxb-margin-bottom-t, var(--vxb-margin-bottom-d)));
        padding-top: var(--vxb-padding-top-m, var(--vxb-padding-top-t, var(--vxb-padding-top-d)));
        padding-right: var(--vxb-padding-right-m, var(--vxb-padding-right-t, var(--vxb-padding-right-d)));
        padding-bottom: var(--vxb-padding-bottom-m, var(--vxb-padding-bottom-t, var(--vxb-padding-bottom-d)));
        padding-left: var(--vxb-padding-left-m, var(--vxb-padding-left-t, var(--vxb-padding-left-d)));
        color: var(--vxb-color-m, var(--vxb-color-t, var(--vxb-color-d))) !important;
        --vxb-bg-live: var(--vxb-bg-m, var(--vxb-bg-t, var(--vxb-bg-d, transparent)));
        background-color: var(--vxb-bg-live, transparent) !important;
        font-family: var(--vxb-font-family-m, var(--vxb-font-family-t, var(--vxb-font-family-d, inherit)));
        font-size: var(--vxb-font-size-m, var(--vxb-font-size-t, var(--vxb-font-size-d)));
        font-weight: var(--vxb-font-weight-m, var(--vxb-font-weight-t, var(--vxb-font-weight-d)));
        line-height: var(--vxb-line-height-m, var(--vxb-line-height-t, var(--vxb-line-height-d)));
        letter-spacing: var(--vxb-letter-spacing-m, var(--vxb-letter-spacing-t, var(--vxb-letter-spacing-d, normal)));
        white-space: var(--vxb-white-space-m, var(--vxb-white-space-t, var(--vxb-white-space-d, normal)));
        border-width: var(--vxb-border-width-m, var(--vxb-border-width-t, var(--vxb-border-width-d)));
        border-style: var(--vxb-border-style-m, var(--vxb-border-style-t, var(--vxb-border-style-d)));
        border-color: var(--vxb-border-color-m, var(--vxb-border-color-t, var(--vxb-border-color-d)));
        border-radius: var(--vxb-border-radius-m, var(--vxb-border-radius-t, var(--vxb-border-radius-d)));
    }

    .vxb-container {
        --vxb-bg-live: var(--vxb-bg-m, var(--vxb-bg-t, var(--vxb-bg-d, transparent)));
        background-color: var(--vxb-bg-live, transparent) !important;
    }

    .vxb-container--boxed,
    .vxb-element {
        width: var(--vxb-width-m, var(--vxb-width-t, var(--vxb-width-d)));
        max-width: var(--vxb-max-width-m, var(--vxb-max-width-t, var(--vxb-max-width-d)));
        margin-right: var(--vxb-margin-right-m, var(--vxb-margin-right-t, var(--vxb-margin-right-d)));
        margin-left: var(--vxb-margin-left-m, var(--vxb-margin-left-t, var(--vxb-margin-left-d)));
    }

    .vxb-container--full {
        width: var(--vxb-width-m, var(--vxb-width-t, var(--vxb-width-d, 100vw)));
        max-width: var(--vxb-max-width-m, var(--vxb-max-width-t, var(--vxb-max-width-d, none)));
        margin-right: var(--vxb-margin-right-m, var(--vxb-margin-right-t, var(--vxb-margin-right-d, calc(50% - 50vw))));
        margin-left: var(--vxb-margin-left-m, var(--vxb-margin-left-t, var(--vxb-margin-left-d, calc(50% - 50vw))));
        padding-top: var(--vxb-padding-top-m, var(--vxb-padding-top-t, var(--vxb-padding-top-d, 0)));
        padding-right: var(--vxb-padding-right-m, var(--vxb-padding-right-t, var(--vxb-padding-right-d, 0)));
        padding-bottom: var(--vxb-padding-bottom-m, var(--vxb-padding-bottom-t, var(--vxb-padding-bottom-d, 0)));
        padding-left: var(--vxb-padding-left-m, var(--vxb-padding-left-t, var(--vxb-padding-left-d, 0)));
    }
}

/* Vylto 0.4.1 media and site elements */
.vxb-image-wrap .vxb-image,
.vxb-site-logo .vxb-site-logo-image {
    max-width: 100%;
    height: auto;
    display: inline-block;
}
.vxb-site-logo .vxb-site-logo-image {
    width: var(--vxb-logo-w-d, 120px);
    max-width: 100%;
}
@media (max-width:1024px){
    .vxb-site-logo .vxb-site-logo-image { width: var(--vxb-logo-w-t, var(--vxb-logo-w-d, 120px)); }
}
@media (max-width:767px){
    .vxb-site-logo .vxb-site-logo-image { width: var(--vxb-logo-w-m, var(--vxb-logo-w-t, var(--vxb-logo-w-d, 120px))); }
}
.vxb-site-logo-link,
.vxb-site-logo-link:hover {
    color: inherit;
    text-decoration: none;
}
.vxb-site-logo-fallback {
    font-size: 1.5em;
    font-weight: 700;
}
.vxb-navigation .vxb-nav-menu,
.vxb-navigation .vxb-nav-menu ul {
    list-style: none;
    padding: 0;
}
.vxb-navigation .vxb-nav-menu {
    margin: 0;
}
.vxb-navigation .vxb-nav-menu--horizontal {
    display: inline-flex;
    align-items: center;
    gap: var(--vxb-nav-gap-d, 22px);
}
.vxb-navigation .vxb-nav-menu--vertical {
    display: inline-flex;
    flex-direction: column;
    gap: var(--vxb-nav-gap-d, 10px);
}
.vxb-navigation .vxb-nav-menu > li {
    position: relative;
    margin: 0;
}
.vxb-navigation .vxb-nav-menu a {
    display: block;
    padding: var(--vxb-nav-pad-top-d, 10px) var(--vxb-nav-pad-x-d, 10px) var(--vxb-nav-pad-bottom-d, 10px);
    color: inherit;
    font: inherit;
    line-height: inherit;
    text-decoration: none;
}
.vxb-navigation .vxb-nav-menu a:hover,
.vxb-navigation .vxb-nav-menu .current-menu-item > a,
.vxb-navigation .vxb-nav-menu .current-menu-ancestor > a {
    text-decoration: underline;
    text-underline-offset: .2em;
}
.vxb-navigation .sub-menu {
    display: none;
    position: absolute;
    z-index: 50;
    top: 100%;
    left: 0;
    min-width: var(--vxb-submenu-width, 240px);
    margin: 0;
    padding: 0;
    background: var(--vxb-submenu-bg, var(--vxb-global-color-background, #fff));
    border: 1px solid var(--vxb-submenu-border, #dcdcde);
    border-radius: var(--vxb-submenu-radius, 0);
    box-shadow: 0 8px 24px rgba(0,0,0,.12);
    text-align: left;
}
.vxb-navigation .sub-menu li { margin: 0; }
.vxb-navigation .sub-menu a { display: block; padding: var(--vxb-submenu-pad-y, 10px) var(--vxb-submenu-pad-x, 14px); color: var(--vxb-submenu-color, var(--vxb-global-color-text, #1d2327)) !important; font-size:var(--vxb-submenu-font-size,14px); font-weight:var(--vxb-submenu-font-weight,500); white-space: nowrap; }
.vxb-navigation .sub-menu > li:hover > a,
.vxb-navigation .sub-menu > li:focus-within > a,
.vxb-navigation .sub-menu > .current-menu-item > a { background:var(--vxb-submenu-hover-bg,rgba(0,0,0,.05)); color:var(--vxb-submenu-hover-color,var(--vxb-submenu-color,#1d2327)) !important; }
.vxb-navigation li:hover > .sub-menu,
.vxb-navigation li:focus-within > .sub-menu,
.vxb-navigation li.vxb-submenu-open > .sub-menu { display: block; }
/* 0.17.6 — nested submenu geometry: keep level 3 directly adjacent to its parent so
   hover/focus content remains reachable (WCAG 1.4.13). */
.vxb-navigation .sub-menu > li { position: relative; }
.vxb-navigation .sub-menu .sub-menu {
    top: -1px;
    left: calc(100% - 1px);
    margin-left: 0;
}
.vxb-navigation .sub-menu .sub-menu a { white-space: nowrap; }
.vxb-navigation .vxb-nav-menu--vertical .sub-menu {
    position: static;
    display: block;
    margin-left: 16px;
    border: 0;
    box-shadow: none;
    padding: 4px 0;
}
@media (max-width: 767px) {
    .vxb-navigation .vxb-nav-menu--horizontal {
        flex-wrap: wrap;
        gap: var(--vxb-nav-gap-m, 14px);
    }
}


/* Block-theme / Full Site Editing Navigation support */
.vxb-navigation--block > .wp-block-navigation {
    margin: 0;
    width: auto;
    max-width: 100%;
}
.vxb-navigation--block .wp-block-navigation__container,
.vxb-navigation--block .wp-block-navigation__submenu-container {
    margin: 0;
}
.vxb-navigation--block.vxb-navigation--horizontal > .wp-block-navigation .wp-block-navigation__container {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: var(--vxb-nav-gap-d, 22px);
}
.vxb-navigation--block.vxb-navigation--vertical > .wp-block-navigation .wp-block-navigation__container {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--vxb-nav-gap-d, 10px);
}
.vxb-navigation--block .wp-block-navigation-item__content {
    display: block;
    padding: var(--vxb-nav-pad-top-d, 10px) var(--vxb-nav-pad-x-d, 10px) var(--vxb-nav-pad-bottom-d, 10px);
    color: inherit;
    font: inherit;
    line-height: inherit;
    text-decoration: none;
}
.vxb-navigation--block .wp-block-navigation-item__content:hover {
    text-decoration: underline;
    text-underline-offset: .2em;
}
@media (max-width: 767px) {
    .vxb-navigation--block.vxb-navigation--horizontal > .wp-block-navigation .wp-block-navigation__container {
        flex-wrap: wrap;
        gap: var(--vxb-nav-gap-m, 14px);
    }
}

/* Vylto 0.4.2 responsive custom logo */
.vxb-responsive-logo { display:inline-block; line-height:0; }
.vxb-responsive-logo img { max-width:100%; height:auto; }
.vxb-navigation--vylto .vxb-nav-menu { list-style:none; padding:0; margin:0; }

/* Vylto 0.5.0 - Global Header */
.vxb-global-header {
    position: relative;
    z-index: 50;
    width: 100%;
}
.vxb-global-header .vxb-header-document {
    width: 100%;
}
.vxb-site-name-text {
    margin: 0;
    color: inherit;
    font: inherit;
}
.vxb-site-name-link,
.vxb-site-name-link:hover,
.vxb-contact-info a,
.vxb-contact-info a:hover {
    color: inherit;
    text-decoration: none;
}
.vxb-contact-info {
    line-height: 1.4;
}
.vxb-link-list {
    display: flex;
    gap: var(--vxb-link-gap-d, 8px);
    font: inherit;
    color: inherit;
}
.vxb-link-list--vertical { flex-direction: column; }
.vxb-link-list--horizontal { flex-direction: row; flex-wrap: wrap; }
.vxb-link-list--align-left { align-items: flex-start; justify-content: flex-start; text-align: left; }
.vxb-link-list--align-center { align-items: center; justify-content: center; text-align: center; }
.vxb-link-list--align-right { align-items: flex-end; justify-content: flex-end; text-align: right; }
.vxb-link-list-link,
.vxb-link-list-link:visited {
    color: inherit;
    font: inherit;
    text-decoration: var(--vxb-link-decoration, none);
}
.vxb-link-list-link:hover,
.vxb-link-list-link:focus-visible {
    color: var(--vxb-link-hover-color, currentColor);
    text-decoration: var(--vxb-link-hover-decoration, underline);
}
.vxb-social-icons {
    display: flex;
    gap: var(--vxb-social-gap-d, 8px);
}
.vxb-social-icons--horizontal { flex-direction: row; flex-wrap: wrap; }
.vxb-social-icons--vertical { flex-direction: column; }
.vxb-social-icons--align-left { justify-content: flex-start; align-items: flex-start; }
.vxb-social-icons--align-center { justify-content: center; align-items: center; }
.vxb-social-icons--align-right { justify-content: flex-end; align-items: flex-end; }
.vxb-social-icon,
.vxb-social-icon:visited {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: var(--vxb-social-size-d, 34px);
    height: var(--vxb-social-size-d, 34px);
    box-sizing: border-box;
    border: var(--vxb-social-border-width, 1px) solid var(--vxb-social-border-color, currentColor);
    border-radius: var(--vxb-social-radius, 6px);
    color: var(--vxb-social-color, currentColor);
    background: var(--vxb-social-bg, transparent);
    text-decoration: none;
    line-height: 1;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.vxb-social-icons--shape-none .vxb-social-icon { border-width: 0; background: transparent; border-radius: 0; }
.vxb-social-icons--shape-square .vxb-social-icon { border-radius: 0; }
.vxb-social-icons--shape-circle .vxb-social-icon { border-radius: 999px; }
.vxb-social-icon svg { width: 52%; height: 52%; fill: currentColor; display: block; }
.vxb-social-icon:hover,
.vxb-social-icon:focus-visible { color: var(--vxb-social-hover-color, currentColor); background: var(--vxb-social-hover-bg, transparent); transform: translateY(-1px); }
@media (max-width: 1024px) {
    .vxb-link-list { gap: var(--vxb-link-gap-t, var(--vxb-link-gap-d, 8px)); }
    .vxb-social-icons { gap: var(--vxb-social-gap-t, var(--vxb-social-gap-d, 8px)); }
    .vxb-social-icon { width: var(--vxb-social-size-t, var(--vxb-social-size-d, 34px)); height: var(--vxb-social-size-t, var(--vxb-social-size-d, 34px)); }
}
@media (max-width: 767px) {
    .vxb-link-list { gap: var(--vxb-link-gap-m, var(--vxb-link-gap-t, 8px)); }
    .vxb-social-icons { gap: var(--vxb-social-gap-m, var(--vxb-social-gap-t, 8px)); }
    .vxb-social-icon { width: var(--vxb-social-size-m, var(--vxb-social-size-t, 34px)); height: var(--vxb-social-size-m, var(--vxb-social-size-t, 34px)); }
}

/* Optional replacement of common classic and block-theme headers. */
body.vxb-replace-theme-header header#masthead,
body.vxb-replace-theme-header #masthead.site-header,
body.vxb-replace-theme-header header#site-header,
body.vxb-replace-theme-header .site-header:not(.vxb-global-header),
body.vxb-replace-theme-header .wp-site-blocks > header.wp-block-template-part:first-child {
    display: none !important;
}

/* Vylto 0.5.1 - clean page layouts and theme overrides */
body.vxb-page-layout-fullwidth,
body.vxb-page-layout-canvas {
    margin: 0 !important;
    padding: 0 !important;
}
body.vxb-page-layout-fullwidth .vxb-layout-main,
body.vxb-page-layout-canvas .vxb-layout-main {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}
body.vxb-page-layout-fullwidth .vxb-page,
body.vxb-page-layout-canvas .vxb-page {
    width: 100%;
    max-width: none;
    margin: 0;
}

/* Theme-layout selective overrides. These classes are added only when requested. */
body.vxb-hide-page-title .entry-title,
body.vxb-hide-page-title .page-title,
body.vxb-hide-page-title .wp-block-post-title,
body.vxb-hide-page-title h1.wp-block-post-title,
body.vxb-hide-page-title header.entry-header > h1:first-child {
    display: none !important;
}
body.vxb-hide-theme-header header#masthead,
body.vxb-hide-theme-header #masthead.site-header,
body.vxb-hide-theme-header header#site-header,
body.vxb-hide-theme-header .site-header:not(.vxb-global-header),
body.vxb-hide-theme-header .wp-site-blocks > header.wp-block-template-part:first-child {
    display: none !important;
}
body.vxb-hide-theme-footer footer#colophon,
body.vxb-hide-theme-footer #colophon.site-footer,
body.vxb-hide-theme-footer footer#site-footer,
body.vxb-hide-theme-footer .site-footer,
body.vxb-hide-theme-footer .wp-site-blocks > footer.wp-block-template-part:last-child {
    display: none !important;
}


/* Vylto 0.6.0 - Global Footer */
.vxb-global-footer {
    position: relative;
    z-index: 20;
    width: 100%;
}
.vxb-global-footer .vxb-footer-document {
    width: 100%;
}

/* Optional replacement of common classic and block-theme footers. */
body.vxb-replace-theme-footer footer#colophon,
body.vxb-replace-theme-footer #colophon.site-footer,
body.vxb-replace-theme-footer footer#site-footer,
body.vxb-replace-theme-footer .site-footer:not(.vxb-global-footer),
body.vxb-replace-theme-footer .wp-site-blocks > footer.wp-block-template-part:last-child {
    display: none !important;
}


/* Vylto 0.7.0 Hero & Banner */
.vxb-hero,.vxb-banner{position:relative;isolation:isolate;background-size:var(--vxb-block-bg-size,cover);background-position:var(--vxb-block-bg-position,center center);background-repeat:var(--vxb-block-bg-repeat,no-repeat);overflow:hidden;width:100%}
.vxb-hero{min-height:var(--vxb-block-height-d,520px);display:flex;padding:72px 6vw}
.vxb-hero--top{align-items:flex-start}.vxb-hero--center{align-items:center}.vxb-hero--bottom{align-items:flex-end}
.vxb-hero-overlay,.vxb-banner-overlay{position:absolute;inset:0;background:var(--vxb-hero-overlay,#000);opacity:var(--vxb-hero-overlay-opacity,.45);z-index:-1}
.vxb-banner-overlay{background:var(--vxb-banner-overlay,#000);opacity:var(--vxb-banner-overlay-opacity,.35)}
.vxb-hero-content,.vxb-banner-content{position:relative;width:min(100%,1200px);margin-inline:auto;color:inherit}
.vxb-hero-title,.vxb-banner-title{margin:0 0 16px;color:inherit;font:inherit;font-size:clamp(38px,6vw,72px);font-weight:800;line-height:1.05}
.vxb-banner-title{font-size:clamp(30px,4vw,52px)}
.vxb-hero-eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.vxb-hero-text{max-width:720px;font-size:clamp(16px,2vw,21px);line-height:1.6}.vxb-hero-text p{margin:0}
.vxb-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.vxb-hero[style*="text-align:center"] .vxb-hero-actions{justify-content:center}.vxb-hero[style*="text-align:right"] .vxb-hero-actions{justify-content:flex-end}
.vxb-hero-button{display:inline-block;padding:13px 22px;border:1px solid currentColor;text-decoration:none;color:inherit}.vxb-hero-button--primary{background:#2271b1;border-color:#2271b1;color:#fff}
.vxb-banner{min-height:var(--vxb-block-height-d,450px);display:flex;align-items:center;padding:52px 6vw}.vxb-banner-text{font-size:18px;line-height:1.5}
@media(max-width:1024px){.vxb-hero,.vxb-banner{min-height:var(--vxb-block-height-t,var(--vxb-block-height-d))}}
@media(max-width:767px){.vxb-hero{min-height:var(--vxb-block-height-m,var(--vxb-block-height-t,var(--vxb-block-height-d,430px)));padding:52px 24px}.vxb-banner{min-height:var(--vxb-block-height-m,var(--vxb-block-height-t,var(--vxb-block-height-d,220px)));padding:40px 24px}.vxb-hero-actions{gap:10px}}


/* Vylto 0.7.2 banner/hero image display modes */
.vxb-block-mode--original.vxb-hero,
.vxb-block-mode--original.vxb-banner {
    min-height: 0;
    box-sizing: border-box;
    aspect-ratio: var(--vxb-block-ratio-w, 3) / var(--vxb-block-ratio-h, 1);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
.vxb-block-mode--stretch.vxb-hero,
.vxb-block-mode--stretch.vxb-banner { background-size: 100% 100%; background-repeat: no-repeat; }
.vxb-block-mode--contain.vxb-hero,
.vxb-block-mode--contain.vxb-banner { background-size: contain; }
@media(max-width:1024px){.vxb-block-mode--original.vxb-hero,.vxb-block-mode--original.vxb-banner{min-height:0}}
@media(max-width:767px){.vxb-block-mode--original.vxb-hero,.vxb-block-mode--original.vxb-banner{min-height:0}}


/* Vylto 0.7.3 - Navigation parity / responsive item spacing */
@media (max-width: 1024px) {
    .vxb-navigation .vxb-nav-menu--horizontal,
    .vxb-navigation .vxb-nav-menu--vertical,
    .vxb-navigation--block.vxb-navigation--horizontal > .wp-block-navigation .wp-block-navigation__container,
    .vxb-navigation--block.vxb-navigation--vertical > .wp-block-navigation .wp-block-navigation__container {
        gap: var(--vxb-nav-gap-t, var(--vxb-nav-gap-d, 18px));
    }
    .vxb-navigation .vxb-nav-menu a,
    .vxb-navigation--block .wp-block-navigation-item__content {
        padding: var(--vxb-nav-pad-top-t, var(--vxb-nav-pad-top-d, 9px)) var(--vxb-nav-pad-x-t, var(--vxb-nav-pad-x-d, 9px)) var(--vxb-nav-pad-bottom-t, var(--vxb-nav-pad-bottom-d, 9px));
    }
}
@media (max-width: 767px) {
    .vxb-navigation .vxb-nav-menu--horizontal,
    .vxb-navigation .vxb-nav-menu--vertical,
    .vxb-navigation--block.vxb-navigation--horizontal > .wp-block-navigation .wp-block-navigation__container,
    .vxb-navigation--block.vxb-navigation--vertical > .wp-block-navigation .wp-block-navigation__container {
        gap: var(--vxb-nav-gap-m, var(--vxb-nav-gap-t, 14px));
    }
    .vxb-navigation .vxb-nav-menu a,
    .vxb-navigation--block .wp-block-navigation-item__content {
        padding: var(--vxb-nav-pad-top-m, var(--vxb-nav-pad-top-t, 8px)) var(--vxb-nav-pad-x-m, var(--vxb-nav-pad-x-t, 8px)) var(--vxb-nav-pad-bottom-m, var(--vxb-nav-pad-bottom-t, 8px));
    }
}

/* Shortcode widget */
.vxb-shortcode {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}


/* Vylto 0.8.4: normalize default browser margins inside text/heading widgets.
   Widget/container spacing must be controlled by Vylto, not by p/h defaults. */
.vxb-widget-heading > .vxb-heading,
.vxb-widget-heading .vxb-heading,
.vxb-widget-text > .vxb-text,
.vxb-widget-text .vxb-text {
    margin-top: 0;
    margin-bottom: 0;
}

.vxb-widget-text .vxb-text > :first-child {
    margin-top: 0;
}

.vxb-widget-text .vxb-text > :last-child {
    margin-bottom: 0;
}

.vxb-widget-text .vxb-text p {
    margin-top: 0;
    margin-bottom: 0;
}


/* AJM Stiri auto-layout: no inherited flex gap between editorial items. */
[id^="ajm-article-"] > .vxb-container-inner,
.vxb-container[id^="ajm-article-"] > .vxb-container-inner,
[id^="ajm-article-"].vxb-container > .vxb-container-inner {
    gap: 0 !important;
    row-gap: 0 !important;
}

/* Vylto 0.9.0 - Responsive Navigation / Hamburger */
.vxb-nav-toggle { display:none; appearance:none; border:0; background:transparent; color:inherit; padding:8px; margin:0; cursor:pointer; align-items:center; gap:8px; font:inherit; }
.vxb-nav-toggle-icon { width:26px; height:20px; display:inline-flex; flex-direction:column; justify-content:space-between; }
.vxb-nav-toggle-icon span { display:block; width:100%; height:2px; background:currentColor; transition:transform .2s ease, opacity .2s ease; }
.vxb-navigation.is-open .vxb-nav-toggle-icon span:nth-child(1) { transform:translateY(9px) rotate(45deg); }
.vxb-navigation.is-open .vxb-nav-toggle-icon span:nth-child(2) { opacity:0; }
.vxb-navigation.is-open .vxb-nav-toggle-icon span:nth-child(3) { transform:translateY(-9px) rotate(-45deg); }
@media (max-width:767px) {
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile .vxb-nav-toggle { display:inline-flex; }
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile > .vxb-nav-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile > .vxb-navigation-classic-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile > .vxb-navigation-block-menu { display:none; }
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile.is-open > .vxb-nav-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile.is-open > .vxb-navigation-classic-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--mobile.is-open > .vxb-navigation-block-menu { display:block; }
}
@media (max-width:1024px) {
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet .vxb-nav-toggle { display:inline-flex; }
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet > .vxb-nav-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet > .vxb-navigation-classic-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet > .vxb-navigation-block-menu { display:none; }
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet.is-open > .vxb-nav-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet.is-open > .vxb-navigation-classic-menu,
  .vxb-navigation--mobile-toggle.vxb-navigation-breakpoint--tablet.is-open > .vxb-navigation-block-menu { display:block; }
}
@media (max-width:1024px) {
  .vxb-navigation--mobile-toggle.is-open .vxb-nav-menu,
  .vxb-navigation--mobile-toggle.is-open .wp-block-navigation__container { width:100%; display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:var(--vxb-nav-gap-m,14px); }
  .vxb-navigation--mobile-toggle.is-open .vxb-nav-menu > li { width:100%; }
  .vxb-navigation--mobile-toggle.is-open .sub-menu { position:static; display:block; width:100%; margin:0 0 0 14px; border:0; box-shadow:none; background:var(--vxb-submenu-bg, transparent); }
  .vxb-navigation-mobile-align--center { text-align:center !important; }
  .vxb-navigation-mobile-align--right { text-align:right !important; }
  .vxb-navigation-mobile-align--center .vxb-nav-toggle { margin-left:auto; margin-right:auto; }
  .vxb-navigation-mobile-align--right .vxb-nav-toggle { margin-left:auto; }
}

/* Vylto 0.10.0 - Vylto Menu Manager v2 dropdown indicators */
.vxb-navigation--vylto .menu-item-has-children > a::after {
    content: " ▾";
    font-size: .72em;
    opacity: .7;
}
.vxb-navigation--vylto .sub-menu .menu-item-has-children > a::after { content: " ›"; float: right; margin-left: 14px; }
.vxb-navigation--vylto .sub-menu .sub-menu { top: -1px; left: calc(100% - 1px); }
@media (max-width: 1024px) {
    .vxb-navigation--mobile-toggle.is-open .sub-menu { position: static; display: block; min-width: 0; margin: 0 0 0 16px; padding: 0; border: 0; box-shadow: none; background: var(--vxb-submenu-bg, transparent); }
    .vxb-navigation--mobile-toggle.is-open .sub-menu a { color: var(--vxb-submenu-color, inherit) !important; white-space: normal; }
    .vxb-navigation--mobile-toggle.is-open .sub-menu .sub-menu { margin-left: 16px; }
}

/* Vylto 0.11.0 — Global Styles */
.vxb-page,
.vxb-global-header,
.vxb-global-footer {
    color: var(--vxb-global-body-color, var(--vxb-global-color-text, #1D2327));
    font-family: var(--vxb-global-body-font, inherit);
    font-size: var(--vxb-global-body-size, 16px);
    font-weight: var(--vxb-global-body-weight, 400);
    line-height: var(--vxb-global-body-line, 1.6);
}

/* Elements keep their local/container inheritance. Global Body/Text live on the
 * document root above, so legacy container colors/fonts continue to cascade.
 * Explicit Global tokens are emitted inline by VXB_Style and still win. */

.vxb-heading-wrap--h1 { --vxb-color-d:var(--vxb-global-h1-color); --vxb-font-family-d:var(--vxb-global-h1-font); --vxb-font-size-d:var(--vxb-global-h1-size); --vxb-font-weight-d:var(--vxb-global-h1-weight); --vxb-line-height-d:var(--vxb-global-h1-line); }
.vxb-heading-wrap--h2 { --vxb-color-d:var(--vxb-global-h2-color); --vxb-font-family-d:var(--vxb-global-h2-font); --vxb-font-size-d:var(--vxb-global-h2-size); --vxb-font-weight-d:var(--vxb-global-h2-weight); --vxb-line-height-d:var(--vxb-global-h2-line); }
.vxb-heading-wrap--h3 { --vxb-color-d:var(--vxb-global-h3-color); --vxb-font-family-d:var(--vxb-global-h3-font); --vxb-font-size-d:var(--vxb-global-h3-size); --vxb-font-weight-d:var(--vxb-global-h3-weight); --vxb-line-height-d:var(--vxb-global-h3-line); }
.vxb-heading-wrap--h4 { --vxb-color-d:var(--vxb-global-h4-color); --vxb-font-family-d:var(--vxb-global-h4-font); --vxb-font-size-d:var(--vxb-global-h4-size); --vxb-font-weight-d:var(--vxb-global-h4-weight); --vxb-line-height-d:var(--vxb-global-h4-line); }
.vxb-heading-wrap--h5 { --vxb-color-d:var(--vxb-global-h5-color); --vxb-font-family-d:var(--vxb-global-h5-font); --vxb-font-size-d:var(--vxb-global-h5-size); --vxb-font-weight-d:var(--vxb-global-h5-weight); --vxb-line-height-d:var(--vxb-global-h5-line); }
.vxb-heading-wrap--h6 { --vxb-color-d:var(--vxb-global-h6-color); --vxb-font-family-d:var(--vxb-global-h6-font); --vxb-font-size-d:var(--vxb-global-h6-size); --vxb-font-weight-d:var(--vxb-global-h6-weight); --vxb-line-height-d:var(--vxb-global-h6-line); }

/* 0.13.6: semantic heading typography is emitted by VXB_Style.
 * Global H1-H6 is the default; a deliberate Custom / Local mode can override it. */

.vxb-text a {
    color: var(--vxb-global-link-color, var(--vxb-global-color-primary, #2271B1));
    font-family: var(--vxb-global-link-font, inherit);
    font-weight: var(--vxb-global-link-weight, inherit);
}

.vxb-page { background-color: var(--vxb-global-color-background, #FFFFFF); }


/* Vylto 0.11.3 - frontend/editor color parity.
 * Themes often assign explicit colors to p/a/heading tags. Vylto element color
 * is the authority inside Vylto-owned text/site widgets, so inner markup must
 * inherit it even when the active theme has stronger typography rules. */
.vxb-text,
.vxb-text p,
.vxb-heading,
.vxb-site-name-text,
.vxb-site-name-link,
.vxb-site-name-link:hover,
.vxb-contact-info,
.vxb-contact-info a,
.vxb-contact-info a:hover {
    color: inherit !important;
}

/* Vylto 0.11.4 - explicit element colors must reach inner markup on the public site.
 * WordPress themes can set !important colors on p/span/a/headings. We only force
 * descendants when Vylto actually emitted an explicit color token/value inline,
 * so normal inherited/global link colors remain untouched for unstyled widgets. */
.vxb-element[style*="--vxb-color-d:"] > *,
.vxb-element[style*="--vxb-color-d:"] > * * {
    color: var(--vxb-color-d, inherit) !important;
}

@media (max-width: 1024px) {
    .vxb-element[style*="--vxb-color-d:"] > *,
    .vxb-element[style*="--vxb-color-d:"] > * *,
    .vxb-element[style*="--vxb-color-t:"] > *,
    .vxb-element[style*="--vxb-color-t:"] > * * {
        color: var(--vxb-color-t, var(--vxb-color-d, inherit)) !important;
    }
}

@media (max-width: 767px) {
    .vxb-element[style*="--vxb-color-d:"] > *,
    .vxb-element[style*="--vxb-color-d:"] > * *,
    .vxb-element[style*="--vxb-color-t:"] > *,
    .vxb-element[style*="--vxb-color-t:"] > * *,
    .vxb-element[style*="--vxb-color-m:"] > *,
    .vxb-element[style*="--vxb-color-m:"] > * * {
        color: var(--vxb-color-m, var(--vxb-color-t, var(--vxb-color-d, inherit))) !important;
    }
}

/* Vylto 0.11.6 - global footer must not inherit a boxed theme gutter.
 * The footer wrapper itself is full-bleed; its first Vylto container can still
 * keep boxed inner content. The wrapper background is emitted by the renderer. */
.vxb-global-footer {
    width:100vw !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    box-sizing:border-box;
    overflow-x:clip;
}
.vxb-global-footer .vxb-footer-document { width:100% !important; max-width:none !important; margin:0 !important; }

/* Vylto 0.12.2 - responsive column structures */
.vxb-container-inner--columns {
    display:grid;
    grid-template-columns:var(--vxb-cols-d, 1fr);
    gap:var(--vxb-col-gap-d, var(--vxb-gap, 12px));
}
.vxb-column {
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:var(--vxb-col-v-d, flex-start);
    align-items:var(--vxb-col-h-d, stretch);
    gap:var(--vxb-gap, 12px);
}
@media (max-width:1024px) {
    .vxb-container-inner--columns {
        grid-template-columns:var(--vxb-cols-t, var(--vxb-cols-d, 1fr));
        gap:var(--vxb-col-gap-t, var(--vxb-col-gap-d, 12px));
    }
    .vxb-column {
        order:var(--vxb-order-t, 0);
        justify-content:var(--vxb-col-v-t, var(--vxb-col-v-d, flex-start));
        align-items:var(--vxb-col-h-t, var(--vxb-col-h-d, stretch));
    }
}
@media (max-width:767px) {
    .vxb-container-inner--columns {
        grid-template-columns:var(--vxb-cols-m, 1fr);
        gap:var(--vxb-col-gap-m, var(--vxb-col-gap-t, 12px));
    }
    .vxb-column {
        order:var(--vxb-order-m, var(--vxb-order-t, 0));
        justify-content:var(--vxb-col-v-m, var(--vxb-col-v-t, flex-start));
        align-items:var(--vxb-col-h-m, var(--vxb-col-h-t, stretch));
    }
}


/* Vylto 0.12.4 - frontend typography parity.
 * Active WordPress themes frequently assign font-size/font-weight/line-height
 * directly to p, a, headings or spans. When Vylto has an explicit typography
 * value on an element, propagate that value to Vylto-owned descendants so the
 * public site matches the editor preview. */
.vxb-element[style*="--vxb-font-size-d:"] > *,
.vxb-element[style*="--vxb-font-size-d:"] > * * {
    font-size: var(--vxb-font-size-d, inherit) !important;
}
.vxb-element[style*="--vxb-font-weight-d:"] > *,
.vxb-element[style*="--vxb-font-weight-d:"] > * * {
    font-weight: var(--vxb-font-weight-d, inherit) !important;
}
.vxb-element[style*="--vxb-line-height-d:"] > *,
.vxb-element[style*="--vxb-line-height-d:"] > * * {
    line-height: var(--vxb-line-height-d, inherit) !important;
}

@media (max-width:1024px) {
    .vxb-element[style*="--vxb-font-size-d:"] > *,
    .vxb-element[style*="--vxb-font-size-d:"] > * *,
    .vxb-element[style*="--vxb-font-size-t:"] > *,
    .vxb-element[style*="--vxb-font-size-t:"] > * * {
        font-size: var(--vxb-font-size-t, var(--vxb-font-size-d, inherit)) !important;
    }
    .vxb-element[style*="--vxb-font-weight-d:"] > *,
    .vxb-element[style*="--vxb-font-weight-d:"] > * *,
    .vxb-element[style*="--vxb-font-weight-t:"] > *,
    .vxb-element[style*="--vxb-font-weight-t:"] > * * {
        font-weight: var(--vxb-font-weight-t, var(--vxb-font-weight-d, inherit)) !important;
    }
    .vxb-element[style*="--vxb-line-height-d:"] > *,
    .vxb-element[style*="--vxb-line-height-d:"] > * *,
    .vxb-element[style*="--vxb-line-height-t:"] > *,
    .vxb-element[style*="--vxb-line-height-t:"] > * * {
        line-height: var(--vxb-line-height-t, var(--vxb-line-height-d, inherit)) !important;
    }
}

@media (max-width:767px) {
    .vxb-element[style*="--vxb-font-size-d:"] > *,
    .vxb-element[style*="--vxb-font-size-d:"] > * *,
    .vxb-element[style*="--vxb-font-size-t:"] > *,
    .vxb-element[style*="--vxb-font-size-t:"] > * *,
    .vxb-element[style*="--vxb-font-size-m:"] > *,
    .vxb-element[style*="--vxb-font-size-m:"] > * * {
        font-size: var(--vxb-font-size-m, var(--vxb-font-size-t, var(--vxb-font-size-d, inherit))) !important;
    }
    .vxb-element[style*="--vxb-font-weight-d:"] > *,
    .vxb-element[style*="--vxb-font-weight-d:"] > * *,
    .vxb-element[style*="--vxb-font-weight-t:"] > *,
    .vxb-element[style*="--vxb-font-weight-t:"] > * *,
    .vxb-element[style*="--vxb-font-weight-m:"] > *,
    .vxb-element[style*="--vxb-font-weight-m:"] > * * {
        font-weight: var(--vxb-font-weight-m, var(--vxb-font-weight-t, var(--vxb-font-weight-d, inherit))) !important;
    }
    .vxb-element[style*="--vxb-line-height-d:"] > *,
    .vxb-element[style*="--vxb-line-height-d:"] > * *,
    .vxb-element[style*="--vxb-line-height-t:"] > *,
    .vxb-element[style*="--vxb-line-height-t:"] > * *,
    .vxb-element[style*="--vxb-line-height-m:"] > *,
    .vxb-element[style*="--vxb-line-height-m:"] > * * {
        line-height: var(--vxb-line-height-m, var(--vxb-line-height-t, var(--vxb-line-height-d, inherit))) !important;
    }
}

/* Vylto 0.14.4 - Link List / Social Icons explicit interaction colors. */
.vxb-link-list .vxb-link-list-link:hover,
.vxb-link-list .vxb-link-list-link:focus-visible { color: var(--vxb-link-hover-color, currentColor) !important; }
.vxb-social-icons .vxb-social-icon,
.vxb-social-icons .vxb-social-icon:visited { color: var(--vxb-social-color, currentColor) !important; }
.vxb-social-icons .vxb-social-icon:hover,
.vxb-social-icons .vxb-social-icon:focus-visible { color: var(--vxb-social-hover-color, currentColor) !important; }

/* Vylto 0.14.8 - footer utility widgets */
.vxb-link-list-link { padding-block: var(--vxb-link-pad-d, 2px); }
.vxb-contact-info { display:flex; flex-direction:column; gap:10px; }
.vxb-contact-info--left { align-items:flex-start; text-align:left; }
.vxb-contact-info--center { align-items:center; text-align:center; }
.vxb-contact-info--right { align-items:flex-end; text-align:right; }
.vxb-contact-logo { display:block; max-width:220px; max-height:110px; width:auto; height:auto; }
.vxb-contact-company { font-weight:700; }
.vxb-contact-rows { display:flex; flex-direction:column; gap:var(--vxb-contact-row-gap,6px); }
.vxb-contact-row { display:flex; align-items:flex-start; gap:8px; }
.vxb-contact-icon { width:var(--vxb-contact-icon-size,16px); height:var(--vxb-contact-icon-size,16px); flex:0 0 auto; color:var(--vxb-contact-icon-color,currentColor); margin-top:.18em; }
.vxb-contact-icon svg { width:100%; height:100%; display:block; fill:currentColor; }
.vxb-contact-label { font-weight:600; }
.vxb-video { width:100%; aspect-ratio:var(--vxb-video-ratio,16/9); overflow:hidden; }
.vxb-video iframe, .vxb-google-map iframe { display:block; width:100%; height:100%; border:0; }
.vxb-google-map { width:100%; height:var(--vxb-map-h-d,300px); overflow:hidden; }
@media (max-width:1024px){ .vxb-link-list-link{padding-block:var(--vxb-link-pad-t,var(--vxb-link-pad-d,2px));} .vxb-google-map{height:var(--vxb-map-h-t,var(--vxb-map-h-d,300px));} }
@media (max-width:767px){ .vxb-link-list-link{padding-block:var(--vxb-link-pad-m,var(--vxb-link-pad-t,2px));} .vxb-google-map{height:var(--vxb-map-h-m,var(--vxb-map-h-t,260px));} }


/* Vylto 0.15.2 - Divider */
.vxb-divider { display:flex; width:100%; }
.vxb-divider--left { justify-content:flex-start; }
.vxb-divider--center { justify-content:center; }
.vxb-divider--right { justify-content:flex-end; }
.vxb-divider-line { display:block; width:var(--vxb-divider-w-d,100%); border-top:var(--vxb-divider-thickness,1px) var(--vxb-divider-style,solid) var(--vxb-divider-color,#D1D5DB); }
@media (max-width:1024px){ .vxb-divider-line{width:var(--vxb-divider-w-t,var(--vxb-divider-w-d,100%));} }
@media (max-width:767px){ .vxb-divider-line{width:var(--vxb-divider-w-m,var(--vxb-divider-w-t,100%));} }


/* Footer utility widgets */
.vxb-icon-list{display:flex;flex-direction:column;gap:var(--vxb-icon-list-gap-d,8px)}
.vxb-icon-list--left{align-items:flex-start;text-align:left}.vxb-icon-list--center{align-items:center;text-align:center}.vxb-icon-list--right{align-items:flex-end;text-align:right}
.vxb-icon-list-row>a,.vxb-icon-list-row{display:flex;align-items:center;gap:8px}.vxb-icon-list-row a{color:inherit;text-decoration:none}.vxb-icon-list-row svg{width:var(--vxb-icon-list-size,16px);height:var(--vxb-icon-list-size,16px);fill:none;stroke:var(--vxb-icon-list-color,currentColor);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.vxb-icon-list-divider--left{border-left:var(--vxb-icon-list-divider-width,2px) solid var(--vxb-icon-list-divider-color,currentColor);padding-left:var(--vxb-icon-list-divider-gap,16px)}.vxb-icon-list-divider--right{border-right:var(--vxb-icon-list-divider-width,2px) solid var(--vxb-icon-list-divider-color,currentColor);padding-right:var(--vxb-icon-list-divider-gap,16px)}
.vxb-opening-hours{display:flex;flex-direction:column;gap:var(--vxb-hours-gap,6px)}.vxb-hours-row{display:flex;justify-content:space-between;gap:18px;max-width:420px;width:100%}.vxb-opening-hours--left{align-items:flex-start;text-align:left}.vxb-opening-hours--center{align-items:center;text-align:center}.vxb-opening-hours--right{align-items:flex-end;text-align:right}.vxb-hours-label{font-weight:600}
.vxb-back-top{display:flex}.vxb-back-top--left{justify-content:flex-start}.vxb-back-top--center{justify-content:center}.vxb-back-top--right{justify-content:flex-end}.vxb-back-top-button{display:inline-flex;align-items:center;gap:7px;cursor:pointer;border:1px solid currentColor;background:transparent;color:inherit;padding:9px 13px;border-radius:4px;font:inherit}
@media(max-width:1024px){.vxb-icon-list{gap:var(--vxb-icon-list-gap-t,var(--vxb-icon-list-gap-d,8px))}}@media(max-width:767px){.vxb-icon-list{gap:var(--vxb-icon-list-gap-m,var(--vxb-icon-list-gap-t,8px))}}

/* Vylto 0.15.6 - Media + Text */
.vxb-media-text-link{display:flex;gap:var(--vxb-mt-gap-d,10px);color:inherit;text-decoration:none;min-width:0}
.vxb-media-text--start .vxb-media-text-link{align-items:flex-start}.vxb-media-text--center .vxb-media-text-link{align-items:center}.vxb-media-text--end .vxb-media-text-link{align-items:flex-end}
.vxb-media-text-media{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.vxb-media-text-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--vxb-mt-size-d,28px);height:var(--vxb-mt-size-d,28px);padding:var(--vxb-mt-icon-pad,0);box-sizing:content-box;color:var(--vxb-mt-icon-color,currentColor);background:var(--vxb-mt-icon-bg,transparent);border-radius:var(--vxb-mt-radius,0)}
.vxb-media-text-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.vxb-media-text-image{display:block;width:var(--vxb-mt-size-d,80px);max-width:none;height:auto;object-fit:contain;padding:var(--vxb-mt-image-pad,0);border-radius:var(--vxb-mt-image-radius,0);box-sizing:border-box}
.vxb-media-text-copy{display:flex;flex-direction:column;min-width:0}.vxb-media-text-primary{font-weight:600}.vxb-media-text-secondary{opacity:.82;font-size:.9em;margin-top:2px}
@media(max-width:1024px){.vxb-media-text-link{gap:var(--vxb-mt-gap-t,var(--vxb-mt-gap-d,10px))}.vxb-media-text-icon{width:var(--vxb-mt-size-t,var(--vxb-mt-size-d,28px));height:var(--vxb-mt-size-t,var(--vxb-mt-size-d,28px))}.vxb-media-text-image{width:var(--vxb-mt-size-t,var(--vxb-mt-size-d,80px))}}
@media(max-width:767px){.vxb-media-text-link{gap:var(--vxb-mt-gap-m,var(--vxb-mt-gap-t,8px))}.vxb-media-text-icon{width:var(--vxb-mt-size-m,var(--vxb-mt-size-t,24px));height:var(--vxb-mt-size-m,var(--vxb-mt-size-t,24px))}.vxb-media-text-image{width:var(--vxb-mt-size-m,var(--vxb-mt-size-t,60px))}}

/* Vylto 0.16.0 - Media + Text horizontal alignment */
.vxb-media-text-align--left .vxb-media-text-link{justify-content:flex-start}
.vxb-media-text-align--center .vxb-media-text-link{justify-content:center}
.vxb-media-text-align--right .vxb-media-text-link{justify-content:flex-end}


/* Header utility widgets */
.vxb-search { display:flex; width:100%; }
.vxb-search-align--left { justify-content:flex-start; }
.vxb-search-align--center { justify-content:center; }
.vxb-search-align--right { justify-content:flex-end; }
.vxb-search-form { width:min(100%,var(--vxb-search-width,260px)); display:flex; align-items:stretch; }
.vxb-search-form input[type="search"] { min-width:0; width:100%; margin:0; border:1px solid var(--vxb-search-border,currentColor); border-right:0; border-radius:var(--vxb-search-radius,4px) 0 0 var(--vxb-search-radius,4px); padding:9px 11px; background:var(--vxb-search-input-bg,#FFFFFF); color:var(--vxb-search-text,#0F172A); font:inherit; }
.vxb-search-form input[type="search"]::placeholder { color:var(--vxb-search-placeholder,currentColor); opacity:1; }
.vxb-search-submit,.vxb-search-toggle { appearance:none; display:inline-flex; align-items:center; justify-content:center; gap:6px; border:1px solid var(--vxb-search-border,currentColor); background:var(--vxb-search-button-bg,transparent); color:var(--vxb-search-icon,inherit); cursor:pointer; padding:9px 11px; }
.vxb-search-submit { border-radius:0 var(--vxb-search-radius,4px) var(--vxb-search-radius,4px) 0; }
.vxb-search-submit svg,.vxb-search-toggle svg { width:var(--vxb-search-icon-size,20px); height:var(--vxb-search-icon-size,20px); flex:0 0 auto; }
.vxb-search-toggle { display:none; border-radius:var(--vxb-search-radius,4px); }
.vxb-search--icon .vxb-search-toggle { display:inline-flex; }
.vxb-search--icon .vxb-search-form { display:none; margin-left:8px; }
.vxb-search--icon.is-open .vxb-search-form { display:flex; }
.vxb-icon-button { display:flex; width:100%; }
.vxb-icon-button-align--left { justify-content:flex-start; }.vxb-icon-button-align--center { justify-content:center; }.vxb-icon-button-align--right { justify-content:flex-end; }
.vxb-icon-button-link { display:inline-flex; align-items:center; gap:7px; padding:var(--vxb-icon-button-pad,10px); border-radius:var(--vxb-icon-button-radius,6px); color:var(--vxb-icon-button-color,currentColor); background:var(--vxb-icon-button-bg,transparent); text-decoration:none; line-height:1; }
.vxb-icon-button-link svg { width:var(--vxb-icon-button-size,20px); height:var(--vxb-icon-button-size,20px); flex:0 0 auto; }
.vxb-spacer { display:block; width:100%; min-height:var(--vxb-spacer-d,24px); }
.vxb-spacer--grow { flex:1 1 auto; }
.vxb-nav-toggle { color:var(--vxb-nav-toggle-color,inherit); background:var(--vxb-nav-toggle-bg,transparent); padding:var(--vxb-nav-toggle-padding,8px); border-radius:var(--vxb-nav-toggle-radius,4px); }
.vxb-nav-toggle-icon { width:var(--vxb-nav-toggle-size,26px); height:calc(var(--vxb-nav-toggle-size,26px) * .77); }
@media (max-width:1024px){.vxb-spacer{min-height:var(--vxb-spacer-t,var(--vxb-spacer-d,24px));}}
@media (max-width:767px){.vxb-spacer{min-height:var(--vxb-spacer-m,var(--vxb-spacer-t,18px));}}

/* Vylto 0.16.9 — Accent Heading */
.vxb-accent-heading-wrap {
    width: 100%;
    padding: 24px;
    box-sizing: border-box;
}
.vxb-accent-heading--light { background: #FFFFFF; }
.vxb-accent-heading--dark { background: #082B60; }
.vxb-accent-heading-wrap .vxb-accent-heading-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    width: 100%;
    max-width: var(--vxb-ah-max-d, 1100px);
}
.vxb-accent-heading-align--left .vxb-accent-heading-inner { margin-right: auto; }
.vxb-accent-heading-align--center .vxb-accent-heading-inner { margin-left: auto; margin-right: auto; }
.vxb-accent-heading-align--right .vxb-accent-heading-inner { margin-left: auto; }
.vxb-accent-heading-bar {
    flex: 0 0 var(--vxb-ah-bar-width, 3px);
    width: var(--vxb-ah-bar-width, 3px);
    height: var(--vxb-ah-bar-height, 92px);
    margin-right: var(--vxb-ah-bar-gap, 22px);
    background: var(--vxb-ah-bar-color, #1590D3);
}
.vxb-accent-heading-wrap .vxb-accent-heading {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    text-align: inherit;
}
.vxb-accent-heading-align--left .vxb-accent-heading { text-align: left; }
.vxb-accent-heading-align--center .vxb-accent-heading { text-align: center; }
.vxb-accent-heading-align--right .vxb-accent-heading { text-align: right; }
.vxb-accent-heading-segment { color: inherit; }
.vxb-accent-heading-break { display: block; }
.vxb-accent-heading-underline {
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(-1 * var(--vxb-ah-underline-gap, 12px));
    height: var(--vxb-ah-underline-thickness, 4px);
    overflow: hidden;
    pointer-events: none;
}
.vxb-accent-heading-wrap.has-left-bar .vxb-accent-heading-underline {
    left: calc(var(--vxb-ah-bar-width, 3px) + var(--vxb-ah-bar-gap, 22px));
}
.vxb-accent-heading-underline.is-full { background: var(--vxb-ah-underline-color, #1590D3); }
.vxb-accent-heading-underline.is-segmented { display: flex; align-items: stretch; }
.vxb-accent-heading-underline.is-segmented > span { display: block; height: 100%; flex: 0 0 auto; }
@media (max-width: 1024px) {
    .vxb-accent-heading-wrap .vxb-accent-heading-inner { max-width: var(--vxb-ah-max-t, 900px); }
}
@media (max-width: 767px) {
    .vxb-accent-heading-wrap .vxb-accent-heading-inner { max-width: var(--vxb-ah-max-m, 520px); }
    .vxb-accent-heading-bar { height: min(var(--vxb-ah-bar-height, 92px), 72px); }
}


/* Vylto 0.16.11 - responsive visibility + overflow safety */
.vxb-container { display:var(--vxb-visible-d, block) !important; }
.vxb-element { display:var(--vxb-visible-d, block) !important; max-width:100%; min-width:0; }
.vxb-column { min-width:0; max-width:100%; }
.vxb-element img, .vxb-element iframe, .vxb-element video { max-width:100%; }
.vxb-text, .vxb-heading, .vxb-site-name, .vxb-media-text, .vxb-contact-info { overflow-wrap:anywhere; word-break:normal; }
.vxb-link-list--horizontal, .vxb-navigation .vxb-nav-menu--horizontal { flex-wrap:wrap; }
.vxb-search-form { max-width:100%; }

@media (max-width:1024px) {
    .vxb-container, .vxb-element { display:var(--vxb-visible-t, block) !important; }
}
@media (max-width:767px) {
    .vxb-container, .vxb-element { display:var(--vxb-visible-m, block) !important; }
    .vxb-container { max-width:100vw; }
    .vxb-container-inner { min-width:0; }
    .vxb-column > .vxb-element { width:100%; }
    .vxb-media-text-inner { max-width:100%; }
}


/* Vylto 0.16.12 - robust mobile stacking + sensible heading fitting */
@media (max-width:767px) {
    .vxb-container-inner--columns { width:100%; min-width:0; }
    .vxb-container-inner--columns > .vxb-column { width:100%; max-width:100%; min-width:0; }
    .vxb-heading-wrap.vxb-auto-mobile-type {
        font-size:min(var(--vxb-font-size-m, var(--vxb-font-size-t, var(--vxb-font-size-d, 34px))), 9vw) !important;
    }
    .vxb-accent-heading-wrap { padding:16px; }
    .vxb-accent-heading-wrap .vxb-accent-heading-inner { width:100%; min-width:0; }
    .vxb-accent-heading { overflow-wrap:normal; word-break:normal; }
    .vxb-media-text-link { max-width:100%; min-width:0; }
    .vxb-media-text-copy { min-width:0; }
}


/* Contact Actions */
.vxb-contact-actions {
    display:flex;
    gap:var(--vxb-contact-actions-gap-d,18px);
    min-width:0;
}
.vxb-contact-actions--horizontal { flex-direction:row; flex-wrap:wrap; align-items:center; }
.vxb-contact-actions--vertical { flex-direction:column; flex-wrap:nowrap; }
.vxb-contact-actions--align-left { justify-content:flex-start; align-items:flex-start; text-align:left; }
.vxb-contact-actions--horizontal.vxb-contact-actions--align-left { align-items:center; }
.vxb-contact-actions--align-center { justify-content:center; align-items:center; text-align:center; }
.vxb-contact-actions--align-right { justify-content:flex-end; align-items:flex-end; text-align:right; }
.vxb-contact-actions--horizontal.vxb-contact-actions--align-right { align-items:center; }
.vxb-contact-action,
.vxb-contact-action:visited {
    display:inline-flex;
    align-items:center;
    gap:.45em;
    min-width:0;
    color:inherit !important;
    text-decoration:none !important;
    line-height:1.25;
}
.vxb-contact-action:hover,
.vxb-contact-action:focus-visible { opacity:.82; color:inherit !important; }
.vxb-contact-action-icon { display:inline-flex; width:var(--vxb-contact-actions-icon-size,18px); height:var(--vxb-contact-actions-icon-size,18px); flex:0 0 auto; }
.vxb-contact-action-icon svg { display:block; width:100%; height:100%; fill:currentColor; }
.vxb-contact-action-text { min-width:0; overflow-wrap:anywhere; }
.vxb-contact-actions--horizontal.has-separators .vxb-contact-action + .vxb-contact-action { border-left:1px solid var(--vxb-contact-actions-separator,#D1D5DB); padding-left:var(--vxb-contact-actions-gap-d,18px); }
.vxb-contact-actions--vertical.has-separators .vxb-contact-action + .vxb-contact-action { border-top:1px solid var(--vxb-contact-actions-separator,#D1D5DB); padding-top:var(--vxb-contact-actions-gap-d,18px); }
@media (max-width:1024px){
    .vxb-contact-actions{gap:var(--vxb-contact-actions-gap-t,var(--vxb-contact-actions-gap-d,18px));}
    .vxb-contact-actions--horizontal.has-separators .vxb-contact-action + .vxb-contact-action{padding-left:var(--vxb-contact-actions-gap-t,var(--vxb-contact-actions-gap-d,18px));}
    .vxb-contact-actions--vertical.has-separators .vxb-contact-action + .vxb-contact-action{padding-top:var(--vxb-contact-actions-gap-t,var(--vxb-contact-actions-gap-d,18px));}
}
@media (max-width:767px){
    .vxb-contact-actions{gap:var(--vxb-contact-actions-gap-m,var(--vxb-contact-actions-gap-t,10px));}
    .vxb-contact-actions--horizontal.has-separators .vxb-contact-action + .vxb-contact-action{padding-left:var(--vxb-contact-actions-gap-m,var(--vxb-contact-actions-gap-t,10px));}
    .vxb-contact-actions--vertical.has-separators .vxb-contact-action + .vxb-contact-action{padding-top:var(--vxb-contact-actions-gap-m,var(--vxb-contact-actions-gap-t,10px));}
}

/* Vylto 0.16.27 - polished circular Social Icons. */
.vxb-social-icons--shape-circle .vxb-social-icon {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.vxb-social-icons--shape-circle .vxb-social-icon:hover,
.vxb-social-icons--shape-circle .vxb-social-icon:focus-visible {
    transform: translateY(-1px) scale(1.04);
}


/* Competition Cards */
.vxb-competition-cards{
    display:grid;
    grid-template-columns:repeat(var(--vxb-cc-cols-d,3),minmax(0,1fr));
    gap:var(--vxb-cc-gap-d,18px);
    width:100%;
}
.vxb-competition-card{
    position:relative;
    min-width:0;
    min-height:210px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:26px 22px 24px;
    text-align:center;
    text-decoration:none!important;
    border:1px solid rgba(12,54,98,.18);
    box-shadow:0 8px 24px rgba(13,45,78,.10);
    overflow:hidden;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
.vxb-competition-card:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 34px rgba(13,45,78,.16);
}
.vxb-competition-card-icon{
    width:var(--vxb-cc-icon-d,72px);
    height:var(--vxb-cc-icon-d,72px);
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    font-size:calc(var(--vxb-cc-icon-d,72px) * .64);
}
.vxb-competition-card-icon img{
    width:100%;height:100%;object-fit:contain;display:block;
}
.vxb-competition-card-copy{min-width:0}
.vxb-competition-card-title{
    margin:0!important;
    font:inherit;
    font-size:20px!important;
    line-height:1.2!important;
    font-weight:700!important;
    color:inherit!important;
}
.vxb-competition-card-season{
    margin-top:5px;
    font-size:13px;
    line-height:1.35;
    opacity:.82;
}
.vxb-competition-card-subtitle{
    margin-top:8px;
    font-size:13px;
    line-height:1.45;
    opacity:.78;
}
.vxb-competition-card-badge{
    position:absolute;top:12px;left:12px;
    padding:4px 8px;
    font-size:10px;font-weight:700;letter-spacing:.35px;text-transform:uppercase;
    border-radius:999px;
}
.vxb-competition-card-arrow{
    position:absolute;right:16px;bottom:13px;
    font-size:20px;line-height:1;
    transition:transform .2s ease;
}
.vxb-competition-card:hover .vxb-competition-card-arrow{transform:translateX(4px)}

/* Sport / navy */
.vxb-competition-cards--sport .vxb-competition-card{
    color:#fff;
    background:linear-gradient(135deg,#0d3769 0%,#165d96 100%);
    border-color:rgba(255,255,255,.12);
}
.vxb-competition-cards--sport .vxb-competition-card-badge{
    color:#0b3566;background:#f3c645;
}
/* Clean */
.vxb-competition-cards--clean .vxb-competition-card{
    color:#18324c;background:#fff;
}
.vxb-competition-cards--clean .vxb-competition-card-badge{
    color:#fff;background:#1769aa;
}
.vxb-competition-cards--clean .vxb-competition-card:hover{border-color:#1769aa}
/* Gradient sport */
.vxb-competition-cards--gradient .vxb-competition-card{
    color:#fff;
    background:linear-gradient(145deg,#0c2f60 0%,#126ea7 62%,#1b91c6 100%);
    border-color:rgba(255,255,255,.16);
}
.vxb-competition-cards--gradient .vxb-competition-card::before{
    content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#f0d719;
}
.vxb-competition-cards--gradient .vxb-competition-card-badge{
    color:#0b3566;background:#f0d719;
}
@media(max-width:1024px){
    .vxb-competition-cards{grid-template-columns:repeat(var(--vxb-cc-cols-t,2),minmax(0,1fr));gap:var(--vxb-cc-gap-t,14px)}
    .vxb-competition-card-icon{width:var(--vxb-cc-icon-t,64px);height:var(--vxb-cc-icon-t,64px);font-size:calc(var(--vxb-cc-icon-t,64px)*.64)}
}
@media(max-width:767px){
    .vxb-competition-cards{grid-template-columns:repeat(var(--vxb-cc-cols-m,1),minmax(0,1fr));gap:var(--vxb-cc-gap-m,12px)}
    .vxb-competition-card{min-height:180px;padding:24px 18px 22px}
    .vxb-competition-card-icon{width:var(--vxb-cc-icon-m,58px);height:var(--vxb-cc-icon-m,58px);font-size:calc(var(--vxb-cc-icon-m,58px)*.64)}
    .vxb-competition-card-title{font-size:18px!important}
}

/* ==========================================================================
   Vylto 0.16.27 — Competition Cards frontend fix
   Grid real pe desktop + contrast + icon sizing.
   ========================================================================== */

/* Forțăm widgetul să rămână grid chiar dacă .vxb-element sau tema îl resetează */
body .vxb-competition-cards.vxb-element {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: repeat(var(--vxb-cc-cols-d, 3), minmax(0, 1fr)) !important;
    gap: var(--vxb-cc-gap-d, 18px) !important;
    align-items: stretch !important;
}

/* Cardul nu mai moștenește culori nepotrivite din Global Styles */
body .vxb-competition-cards .vxb-competition-card {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    text-decoration: none !important;
}

body .vxb-competition-cards--sport .vxb-competition-card,
body .vxb-competition-cards--gradient .vxb-competition-card {
    color: #ffffff !important;
}

body .vxb-competition-cards--sport .vxb-competition-card *,
body .vxb-competition-cards--gradient .vxb-competition-card * {
    color: inherit !important;
}

/* Badge-ul trebuie să-și păstreze contrastul propriu */
body .vxb-competition-cards--sport .vxb-competition-card-badge {
    color: #0b3566 !important;
    background: #f3c645 !important;
}

body .vxb-competition-cards--gradient .vxb-competition-card-badge {
    color: #0b3566 !important;
    background: #f0d719 !important;
}

body .vxb-competition-cards--clean .vxb-competition-card {
    color: #18324c !important;
}

body .vxb-competition-cards--clean .vxb-competition-card * {
    color: inherit !important;
}

body .vxb-competition-cards--clean .vxb-competition-card-badge {
    color: #ffffff !important;
    background: #1769aa !important;
}

/* Titlu + meta lizibile */
body .vxb-competition-cards .vxb-competition-card-title {
    margin: 0 !important;
    color: inherit !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

body .vxb-competition-cards .vxb-competition-card-season {
    color: inherit !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    opacity: .88 !important;
}

body .vxb-competition-cards .vxb-competition-card-subtitle {
    color: inherit !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    opacity: .78 !important;
}

/* Icon / logo — control real pe device */
body .vxb-competition-cards .vxb-competition-card-icon {
    width: var(--vxb-cc-icon-d, 72px) !important;
    height: var(--vxb-cc-icon-d, 72px) !important;
    min-width: var(--vxb-cc-icon-d, 72px) !important;
    min-height: var(--vxb-cc-icon-d, 72px) !important;
    max-width: var(--vxb-cc-icon-d, 72px) !important;
    max-height: var(--vxb-cc-icon-d, 72px) !important;
    flex: 0 0 auto !important;
}

body .vxb-competition-cards .vxb-competition-card-icon img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    display: block !important;
}

/* Trofeul placeholder se scalează odată cu icon size */
body .vxb-competition-cards .vxb-competition-card-icon > span {
    font-size: calc(var(--vxb-cc-icon-d, 72px) * .64) !important;
    line-height: 1 !important;
}

/* Tablet */
@media (max-width: 1024px) {
    body .vxb-competition-cards.vxb-element {
        grid-template-columns: repeat(var(--vxb-cc-cols-t, 2), minmax(0, 1fr)) !important;
        gap: var(--vxb-cc-gap-t, 14px) !important;
    }

    body .vxb-competition-cards .vxb-competition-card-icon {
        width: var(--vxb-cc-icon-t, 64px) !important;
        height: var(--vxb-cc-icon-t, 64px) !important;
        min-width: var(--vxb-cc-icon-t, 64px) !important;
        min-height: var(--vxb-cc-icon-t, 64px) !important;
        max-width: var(--vxb-cc-icon-t, 64px) !important;
        max-height: var(--vxb-cc-icon-t, 64px) !important;
    }

    body .vxb-competition-cards .vxb-competition-card-icon > span {
        font-size: calc(var(--vxb-cc-icon-t, 64px) * .64) !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    body .vxb-competition-cards.vxb-element {
        grid-template-columns: repeat(var(--vxb-cc-cols-m, 1), minmax(0, 1fr)) !important;
        gap: var(--vxb-cc-gap-m, 12px) !important;
    }

    body .vxb-competition-cards .vxb-competition-card-icon {
        width: var(--vxb-cc-icon-m, 58px) !important;
        height: var(--vxb-cc-icon-m, 58px) !important;
        min-width: var(--vxb-cc-icon-m, 58px) !important;
        min-height: var(--vxb-cc-icon-m, 58px) !important;
        max-width: var(--vxb-cc-icon-m, 58px) !important;
        max-height: var(--vxb-cc-icon-m, 58px) !important;
    }

    body .vxb-competition-cards .vxb-competition-card-icon > span {
        font-size: calc(var(--vxb-cc-icon-m, 58px) * .64) !important;
    }

    body .vxb-competition-cards .vxb-competition-card-title {
        font-size: 18px !important;
    }
}

/* ==========================================================================
   Vylto 0.16.27 — Competition Cards Smart / Auto Layout
   ========================================================================== */

/* Auto desktop defaults: 3 columns */
body .vxb-competition-cards--layout-auto.vxb-element {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* 1 competition: centered single card with elegant max width */
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1 {
    grid-template-columns: minmax(0, 480px) !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1.vxb-competition-cards--last-center {
    justify-content: center !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1.vxb-competition-cards--last-left {
    justify-content: start !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1.vxb-competition-cards--last-right {
    justify-content: end !important;
}

/* 2 competitions: centered pair, not stretched edge-to-edge */
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-2 {
    grid-template-columns: repeat(2, minmax(0, 480px)) !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-2.vxb-competition-cards--last-center {
    justify-content: center !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-2.vxb-competition-cards--last-left {
    justify-content: start !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-2.vxb-competition-cards--last-right {
    justify-content: end !important;
}

/* 4 competitions: balanced 2 x 2 */
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* 5 competitions: 3 + 2; second row centered by explicit placement */
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 .vxb-competition-card {
    grid-column: span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-center .vxb-competition-card:nth-child(4) {
    grid-column: 2 / span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-center .vxb-competition-card:nth-child(5) {
    grid-column: 4 / span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-left .vxb-competition-card:nth-child(4) {
    grid-column: 1 / span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-left .vxb-competition-card:nth-child(5) {
    grid-column: 3 / span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-right .vxb-competition-card:nth-child(4) {
    grid-column: 3 / span 2;
}
body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-right .vxb-competition-card:nth-child(5) {
    grid-column: 5 / span 2;
}

/* Tablet: 2 columns; odd last card follows last-row alignment */
@media (max-width: 1024px) {
    body .vxb-competition-cards--layout-auto.vxb-element {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1 {
        grid-template-columns: minmax(0, 480px) !important;
    }

    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 .vxb-competition-card {
        grid-column: auto !important;
    }
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5.vxb-competition-cards--last-center .vxb-competition-card:nth-child(5) {
        grid-column: 1 / -1 !important;
        width: calc(50% - (var(--vxb-cc-gap-t, 14px) / 2)) !important;
        justify-self: center !important;
    }
}

/* Mobile: always one card per row */
@media (max-width: 767px) {
    body .vxb-competition-cards--layout-auto.vxb-element,
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-1,
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-2,
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-4,
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 {
        grid-template-columns: 1fr !important;
    }

    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 .vxb-competition-card,
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 .vxb-competition-card:nth-child(4),
    body .vxb-competition-cards--layout-auto.vxb-competition-cards--count-5 .vxb-competition-card:nth-child(5) {
        grid-column: auto !important;
        width: 100% !important;
        justify-self: stretch !important;
    }
}

/* ==========================================================================
   Vylto 0.16.27 — Hero Section / layered container
   ========================================================================== */

.vxb-hero-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: var(--vxb-hero-h-d, 620px);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.vxb-hero-section-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: var(--vxb-hero-overlay, #061B33);
    opacity: var(--vxb-hero-overlay-opacity, .45);
}

.vxb-hero-section > .vxb-container-inner {
    position: relative;
    z-index: 1;
    min-height: inherit;
}

.vxb-hero-section .vxb-column {
    position: relative;
    z-index: 1;
}

@media (max-width: 1024px) {
    .vxb-hero-section {
        min-height: var(--vxb-hero-h-t, 520px);
    }
}

@media (max-width: 767px) {
    .vxb-hero-section {
        min-height: var(--vxb-hero-h-m, 420px);
    }
}

/* ==========================================================================
   Vylto 0.16.27 — Hero responsive background layer
   ========================================================================== */

.vxb-hero-section-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: var(--vxb-hero-bg-d, none);
    background-position: var(--vxb-hero-pos-d, center center);
    background-size: var(--vxb-hero-size-d, cover);
    background-repeat: var(--vxb-hero-repeat, no-repeat);
}

.vxb-hero-section-overlay {
    z-index: 1;
}

.vxb-hero-section > .vxb-container-inner {
    z-index: 2;
}

@media (max-width: 1024px) {
    .vxb-hero-section-background {
        background-image: var(--vxb-hero-bg-t, var(--vxb-hero-bg-d, none));
        background-position: var(--vxb-hero-pos-t, center center);
        background-size: var(--vxb-hero-size-t, cover);
    }
}

@media (max-width: 767px) {
    .vxb-hero-section-background {
        background-image: var(--vxb-hero-bg-m, var(--vxb-hero-bg-t, var(--vxb-hero-bg-d, none)));
        background-position: var(--vxb-hero-pos-m, center center);
        background-size: var(--vxb-hero-size-m, cover);
    }

    .vxb-hero-section > .vxb-container-inner,
    .vxb-hero-section .vxb-columns {
        max-width: 100%;
    }

    .vxb-hero-section .vxb-column {
        min-width: 0;
        max-width: 100%;
    }
}

/* Vylto 0.16.30 — Heading 2.0 effects. Opacity is applied to the background only. */
.vxb-element {
    --vxb-bg-opacity-d: 100;
    --vxb-border-opacity-d: 100;
    --vxb-backdrop-blur-d: 0px;
    background-color: color-mix(in srgb, var(--vxb-bg-live, var(--vxb-bg-d, transparent)) calc(var(--vxb-bg-opacity-d, 100) * 1%), transparent);
    border-color: color-mix(in srgb, var(--vxb-border-color-d, transparent) calc(var(--vxb-border-opacity-d, 100) * 1%), transparent);
    backdrop-filter: blur(var(--vxb-backdrop-blur-d, 0px));
    -webkit-backdrop-filter: blur(var(--vxb-backdrop-blur-d, 0px));
    box-shadow: var(--vxb-box-shadow-x-d, 0px) var(--vxb-box-shadow-y-d, 0px) var(--vxb-box-shadow-blur-d, 0px) var(--vxb-box-shadow-spread-d, 0px) var(--vxb-box-shadow-color-d, transparent);
    text-shadow: var(--vxb-text-shadow-x-d, 0px) var(--vxb-text-shadow-y-d, 0px) var(--vxb-text-shadow-blur-d, 0px) var(--vxb-text-shadow-color-d, transparent);
}
@media (max-width:1024px) {
    .vxb-element {
        background-color: color-mix(in srgb, var(--vxb-bg-live, transparent) calc(var(--vxb-bg-opacity-t, var(--vxb-bg-opacity-d, 100)) * 1%), transparent) !important;
        border-color: color-mix(in srgb, var(--vxb-border-color-t, var(--vxb-border-color-d, transparent)) calc(var(--vxb-border-opacity-t, var(--vxb-border-opacity-d, 100)) * 1%), transparent);
        backdrop-filter: blur(var(--vxb-backdrop-blur-t, var(--vxb-backdrop-blur-d, 0px)));
        -webkit-backdrop-filter: blur(var(--vxb-backdrop-blur-t, var(--vxb-backdrop-blur-d, 0px)));
        box-shadow: var(--vxb-box-shadow-x-t, var(--vxb-box-shadow-x-d, 0px)) var(--vxb-box-shadow-y-t, var(--vxb-box-shadow-y-d, 0px)) var(--vxb-box-shadow-blur-t, var(--vxb-box-shadow-blur-d, 0px)) var(--vxb-box-shadow-spread-t, var(--vxb-box-shadow-spread-d, 0px)) var(--vxb-box-shadow-color-t, var(--vxb-box-shadow-color-d, transparent));
        text-shadow: var(--vxb-text-shadow-x-t, var(--vxb-text-shadow-x-d, 0px)) var(--vxb-text-shadow-y-t, var(--vxb-text-shadow-y-d, 0px)) var(--vxb-text-shadow-blur-t, var(--vxb-text-shadow-blur-d, 0px)) var(--vxb-text-shadow-color-t, var(--vxb-text-shadow-color-d, transparent));
    }
}
@media (max-width:767px) {
    .vxb-element {
        background-color: color-mix(in srgb, var(--vxb-bg-live, transparent) calc(var(--vxb-bg-opacity-m, var(--vxb-bg-opacity-t, var(--vxb-bg-opacity-d, 100))) * 1%), transparent) !important;
        border-color: color-mix(in srgb, var(--vxb-border-color-m, var(--vxb-border-color-t, var(--vxb-border-color-d, transparent))) calc(var(--vxb-border-opacity-m, var(--vxb-border-opacity-t, var(--vxb-border-opacity-d, 100))) * 1%), transparent);
        backdrop-filter: blur(var(--vxb-backdrop-blur-m, var(--vxb-backdrop-blur-t, var(--vxb-backdrop-blur-d, 0px))));
        -webkit-backdrop-filter: blur(var(--vxb-backdrop-blur-m, var(--vxb-backdrop-blur-t, var(--vxb-backdrop-blur-d, 0px))));
        box-shadow: var(--vxb-box-shadow-x-m, var(--vxb-box-shadow-x-t, var(--vxb-box-shadow-x-d, 0px))) var(--vxb-box-shadow-y-m, var(--vxb-box-shadow-y-t, var(--vxb-box-shadow-y-d, 0px))) var(--vxb-box-shadow-blur-m, var(--vxb-box-shadow-blur-t, var(--vxb-box-shadow-blur-d, 0px))) var(--vxb-box-shadow-spread-m, var(--vxb-box-shadow-spread-t, var(--vxb-box-shadow-spread-d, 0px))) var(--vxb-box-shadow-color-m, var(--vxb-box-shadow-color-t, var(--vxb-box-shadow-color-d, transparent)));
        text-shadow: var(--vxb-text-shadow-x-m, var(--vxb-text-shadow-x-t, var(--vxb-text-shadow-x-d, 0px))) var(--vxb-text-shadow-y-m, var(--vxb-text-shadow-y-t, var(--vxb-text-shadow-y-d, 0px))) var(--vxb-text-shadow-blur-m, var(--vxb-text-shadow-blur-t, var(--vxb-text-shadow-blur-d, 0px))) var(--vxb-text-shadow-color-m, var(--vxb-text-shadow-color-t, var(--vxb-text-shadow-color-d, transparent)));
    }
}

/* Vylto 0.16.31 — Heading clean defaults and theme-safe text shadow. */
.vxb-heading-wrap > .vxb-heading,
.vxb-accent-heading-wrap .vxb-accent-heading {
    text-shadow: var(--vxb-text-shadow-x-d, 0px) var(--vxb-text-shadow-y-d, 0px) var(--vxb-text-shadow-blur-d, 0px) var(--vxb-text-shadow-color-d, transparent) !important;
}
@media (max-width:1024px) {
    .vxb-heading-wrap > .vxb-heading,
    .vxb-accent-heading-wrap .vxb-accent-heading {
        text-shadow: var(--vxb-text-shadow-x-t, var(--vxb-text-shadow-x-d, 0px)) var(--vxb-text-shadow-y-t, var(--vxb-text-shadow-y-d, 0px)) var(--vxb-text-shadow-blur-t, var(--vxb-text-shadow-blur-d, 0px)) var(--vxb-text-shadow-color-t, var(--vxb-text-shadow-color-d, transparent)) !important;
    }
}
@media (max-width:767px) {
    .vxb-heading-wrap > .vxb-heading,
    .vxb-accent-heading-wrap .vxb-accent-heading {
        text-shadow: var(--vxb-text-shadow-x-m, var(--vxb-text-shadow-x-t, var(--vxb-text-shadow-x-d, 0px))) var(--vxb-text-shadow-y-m, var(--vxb-text-shadow-y-t, var(--vxb-text-shadow-y-d, 0px))) var(--vxb-text-shadow-blur-m, var(--vxb-text-shadow-blur-t, var(--vxb-text-shadow-blur-d, 0px))) var(--vxb-text-shadow-color-m, var(--vxb-text-shadow-color-t, var(--vxb-text-shadow-color-d, transparent))) !important;
    }
}


/* Vylto 0.16.32 — Heading content-sized box + predictable padding. */
.vxb-heading-wrap.vxb-heading-box--auto {
    width:fit-content !important;
    max-width:100% !important;
}
.vxb-heading-wrap.vxb-heading-box--full { width:100% !important; }
.vxb-heading-wrap.vxb-heading-box--custom { max-width:100% !important; }
.vxb-heading-wrap.vxb-heading-box-align--left { align-self:flex-start; }
.vxb-heading-wrap.vxb-heading-box-align--center { align-self:center; }
.vxb-heading-wrap.vxb-heading-box-align--right { align-self:flex-end; }
.vxb-heading-wrap { box-sizing:border-box; }
@media (max-width:767px) {
    .vxb-column > .vxb-heading-wrap.vxb-heading-box--auto { width:fit-content !important; max-width:100% !important; }
    .vxb-column > .vxb-heading-wrap.vxb-heading-box--full { width:100% !important; }
}


/* =========================================================
   Vylto 0.16.34 — Sponsors / Partners
   ========================================================= */
.vxb-sponsors-partners{width:100%;overflow:hidden;box-sizing:border-box}
.vxb-sponsors-track{display:grid;grid-template-columns:repeat(var(--vxb-sp-cols-d,5),minmax(0,1fr));gap:var(--vxb-sp-gap-d,24px);width:100%;box-sizing:border-box}
.vxb-sponsor-item{min-width:0;height:var(--vxb-sp-slot-h-d,120px);padding:var(--vxb-sp-padding,12px);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:var(--vxb-sp-slot-bg,transparent);text-decoration:none!important;color:inherit;overflow:hidden}
.vxb-sponsor-logo-box{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.vxb-sponsor-logo{display:block;max-width:var(--vxb-sp-logo-w,86%);max-height:var(--vxb-sp-logo-h,72%);width:auto;height:auto;object-fit:contain;opacity:var(--vxb-sp-opacity,1);transition:filter .25s ease,opacity .25s ease,transform .25s ease}
.vxb-sponsors-partners.is-normalized .vxb-sponsor-logo{width:var(--vxb-sp-logo-w,86%);height:var(--vxb-sp-logo-h,72%);object-fit:contain}
.vxb-sponsor-item:hover .vxb-sponsor-logo{opacity:var(--vxb-sp-hover-opacity,1)}
.vxb-sponsors-partners.is-grayscale .vxb-sponsor-logo{filter:grayscale(1)}
.vxb-sponsors-partners.is-grayscale .vxb-sponsor-item:hover .vxb-sponsor-logo{filter:grayscale(0)}
.vxb-sponsor-name{font-size:13px;line-height:1.25;text-align:center;color:var(--vxb-sp-name-color,currentColor);white-space:normal}
.vxb-sponsors--carousel .vxb-sponsors-track{display:flex;gap:var(--vxb-sp-gap-d,24px);width:max-content;will-change:transform}
.vxb-sponsors--carousel .vxb-sponsor-item{flex:0 0 var(--vxb-sp-item-w,220px);width:var(--vxb-sp-item-w,220px);max-width:360px;min-width:70px}
.vxb-sponsors--carousel.is-autoplay .vxb-sponsors-track{animation:vxb-sponsors-marquee var(--vxb-sp-speed,28s) linear infinite}
.vxb-sponsors--carousel.vxb-sponsors--direction-right .vxb-sponsors-track{animation-direction:reverse}
.vxb-sponsors--carousel.is-pause-hover:hover .vxb-sponsors-track{animation-play-state:paused}
@keyframes vxb-sponsors-marquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - (var(--vxb-sp-gap-d,24px)/2)))}}
.vxb-sponsors--carousel:not(.is-loop) .vxb-sponsors-track{animation-name:vxb-sponsors-marquee-single}
@keyframes vxb-sponsors-marquee-single{from{transform:translateX(0)}to{transform:translateX(calc(-100% + 100vw))}}
@media(max-width:1024px){
 .vxb-sponsors-track{grid-template-columns:repeat(var(--vxb-sp-cols-t,3),minmax(0,1fr));gap:var(--vxb-sp-gap-t,18px)}
 .vxb-sponsor-item{height:var(--vxb-sp-slot-h-t,105px)}
 .vxb-sponsors--carousel .vxb-sponsors-track{gap:var(--vxb-sp-gap-t,18px)}
}
@media(max-width:767px){
 .vxb-sponsors-track{grid-template-columns:repeat(var(--vxb-sp-cols-m,2),minmax(0,1fr));gap:var(--vxb-sp-gap-m,12px)}
 .vxb-sponsor-item{height:var(--vxb-sp-slot-h-m,90px)}
 .vxb-sponsors--carousel .vxb-sponsors-track{gap:var(--vxb-sp-gap-m,12px)}
}
.vxb-sponsors--carousel.is-insufficient .vxb-sponsors-track{animation:none!important}
@media(prefers-reduced-motion:reduce){.vxb-sponsors--carousel.is-autoplay .vxb-sponsors-track{animation:none!important}}
/* Vylto 0.16.37 Photo Gallery + Gallery Preview */
.vxb-photo-gallery{width:100%;gap:var(--vxb-g-gap,10px)}
.vxb-gallery-item,.vxb-gallery-preview-item{margin:0;position:relative;overflow:hidden;cursor:pointer;background:#f3f4f6;min-width:0}
.vxb-gallery-item img,.vxb-gallery-preview-item img{display:block;width:100%;height:100%;object-fit:var(--vxb-g-fit,cover);transition:transform .25s ease}
/* Grid = predictable equal cards. */
.vxb-gallery--grid{display:grid!important;grid-template-columns:repeat(var(--vxb-g-cols-d,4),minmax(0,1fr))!important;grid-auto-flow:row;align-items:stretch}
.vxb-gallery--grid .vxb-gallery-item{width:auto!important;aspect-ratio:var(--vxb-g-ratio,4/3)}
/* Masonry keeps each image's natural height. */
.vxb-gallery--masonry{display:block!important;columns:var(--vxb-g-cols-d,4);column-gap:var(--vxb-g-gap,10px)}
.vxb-gallery--masonry .vxb-gallery-item{display:block;width:100%;break-inside:avoid;margin:0 0 var(--vxb-g-gap,10px)}
.vxb-gallery--masonry .vxb-gallery-item img{height:auto;aspect-ratio:auto;object-fit:contain}
/* Justified = flexible rows based on each image's natural aspect ratio. */
.vxb-gallery--justified{display:flex!important;flex-wrap:wrap;align-items:stretch;gap:var(--vxb-g-gap,10px)}
.vxb-gallery--justified::after{content:'';flex:999 1 calc(var(--vxb-g-row-h,190px) * 6)}
.vxb-gallery--justified .vxb-gallery-item{height:var(--vxb-g-row-h,190px);flex-grow:var(--vxb-g-natural,1.3333);flex-basis:calc(var(--vxb-g-natural,1.3333) * var(--vxb-g-row-h,190px));aspect-ratio:auto}
.vxb-gallery--justified .vxb-gallery-item img{height:100%;width:100%;object-fit:cover}
.vxb-gallery-item:hover img,.vxb-gallery-preview-item:hover img{transform:scale(1.025)}
.vxb-gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:9px 11px;background:rgba(0,0,0,.58);color:#fff;font-size:13px}
.vxb-gallery-preview-grid{display:grid;gap:var(--vxb-gp-gap,8px)}
.vxb-gallery-preview--mosaic .vxb-gallery-preview-grid{grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,150px)}
.vxb-gallery-preview--mosaic .vxb-gallery-preview-item:first-child{grid-row:1/3}
.vxb-gallery-preview--strip .vxb-gallery-preview-grid,.vxb-gallery-preview--slider .vxb-gallery-preview-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.vxb-gallery-preview--strip .vxb-gallery-preview-item,.vxb-gallery-preview--slider .vxb-gallery-preview-item{aspect-ratio:4/3}
.vxb-gallery-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);color:#fff;font-size:28px;font-weight:700}
.vxb-gallery-preview-button{display:inline-block;margin-top:14px;text-decoration:none;font-weight:600}
@media(max-width:1024px){
 .vxb-gallery--grid{grid-template-columns:repeat(var(--vxb-g-cols-t,3),minmax(0,1fr))!important}
 .vxb-gallery--masonry{columns:var(--vxb-g-cols-t,3)}
 .vxb-gallery--justified{--vxb-g-row-h:160px}
 .vxb-gallery-preview--mosaic .vxb-gallery-preview-grid{grid-template-rows:repeat(2,120px)}
}
@media(max-width:767px){
 .vxb-gallery--grid{grid-template-columns:repeat(var(--vxb-g-cols-m,2),minmax(0,1fr))!important}
 .vxb-gallery--masonry{columns:var(--vxb-g-cols-m,2)}
 .vxb-gallery--justified{--vxb-g-row-h:120px}
 .vxb-gallery-preview--mosaic .vxb-gallery-preview-grid{grid-template-columns:1fr 1fr;grid-template-rows:180px 100px 100px}
 .vxb-gallery-preview--mosaic .vxb-gallery-preview-item:first-child{grid-column:1/3;grid-row:auto}
 .vxb-gallery-preview--strip .vxb-gallery-preview-grid,.vxb-gallery-preview--slider .vxb-gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.vxb-lightbox{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:40px}.vxb-lightbox[hidden]{display:none}.vxb-lightbox img{max-width:min(92vw,1500px);max-height:84vh;object-fit:contain}.vxb-lightbox-close,.vxb-lightbox-prev,.vxb-lightbox-next{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;font-size:30px}.vxb-lightbox-close{right:22px;top:18px;width:46px;height:46px}.vxb-lightbox-prev,.vxb-lightbox-next{top:50%;transform:translateY(-50%);width:48px;height:64px}.vxb-lightbox-prev{left:20px}.vxb-lightbox-next{right:20px}.vxb-lightbox-caption{position:absolute;bottom:14px;left:20px;right:20px;text-align:center;color:#fff}
@media(max-width:767px){.vxb-lightbox{padding:20px}.vxb-lightbox-prev{left:5px}.vxb-lightbox-next{right:5px}}

/* Vylto Contact Form */
.vxb-contact-form{width:100%}.vxb-contact-form form{margin:0}.vxb-form-grid{display:flex;flex-wrap:wrap;gap:16px}.vxb-form-field{min-width:0}.vxb-form-width-100{flex:0 0 100%}.vxb-form-width-50{flex:0 0 calc(50% - 8px)}.vxb-form-width-33{flex:0 0 calc(33.333% - 11px)}.vxb-form-field>label{display:block;margin:0 0 7px;font-size:14px;font-weight:600}.vxb-form-field input[type=text],.vxb-form-field input[type=email],.vxb-form-field input[type=tel],.vxb-form-field textarea,.vxb-form-field select{box-sizing:border-box;width:100%;min-height:46px;padding:10px 12px;border:1px solid #d6dbe1;border-radius:4px;background:#fff;color:#1f2937;font:inherit;line-height:1.4;box-shadow:none}.vxb-form-field textarea{min-height:130px;resize:vertical}.vxb-form-field input:focus,.vxb-form-field textarea:focus,.vxb-form-field select:focus{outline:2px solid currentColor;outline-offset:1px}.vxb-form-check{display:flex!important;align-items:flex-start;gap:9px;font-weight:400!important}.vxb-form-check input{margin-top:4px}.vxb-form-submit{margin-top:18px;min-height:44px;padding:10px 22px;border:0;border-radius:4px;background:#0c54a0;color:#fff;font:inherit;font-weight:700;cursor:pointer}.vxb-form-submit[disabled]{opacity:.65;cursor:wait}.vxb-form-status{margin-top:12px;font-size:14px}.vxb-form-status.is-success{color:#137333}.vxb-form-status.is-error{color:#b3261e}.vxb-form-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.vxb-contact-form .vxb-form-field span[aria-hidden=true]{color:#b3261e}@media(max-width:767px){.vxb-form-width-50,.vxb-form-width-33{flex-basis:100%}}
/* Vylto Popup System 0.16.40 */
.vxb-popup-overlay{position:fixed;inset:0;z-index:2147482000;background:color-mix(in srgb,var(--vxb-popup-overlay,#000) calc(var(--vxb-popup-opacity,.65)*100%),transparent);display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}
.vxb-popup-overlay[hidden]{display:none!important}.vxb-popup-panel{width:min(100%,var(--vxb-popup-width,560px));max-height:calc(100vh - 48px);overflow:auto;position:relative;margin:auto}.vxb-popup-close{position:absolute;top:10px;right:10px;z-index:20;width:42px;height:42px;padding:0;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--vxb-popup-close-bg,transparent);color:var(--vxb-popup-close-color,#222);font-size:var(--vxb-popup-close-size,28px);font-family:Arial,sans-serif;font-weight:400;line-height:1;cursor:pointer;appearance:none;-webkit-appearance:none}.vxb-popup-close span{display:block;line-height:.85;transform:translateY(-1px)}.vxb-popup-close:hover{filter:brightness(.88)}.vxb-popup-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}.vxb-popup-open{overflow:hidden}
@media(max-width:767px){.vxb-popup-overlay{padding:14px}.vxb-popup-panel{max-height:calc(100vh - 28px)}.vxb-popup-close{top:8px;right:8px;width:44px;height:44px}}


/* Vylto 0.16.51 - responsive heading typography + mobile safe-area polish */
.vxb-heading-wrap { letter-spacing:var(--vxb-letter-spacing-d, normal); white-space:var(--vxb-white-space-d, normal); }
.vxb-heading-wrap .vxb-heading { letter-spacing:inherit; white-space:inherit; }
@media(max-width:1024px){.vxb-heading-wrap{letter-spacing:var(--vxb-letter-spacing-t,var(--vxb-letter-spacing-d,normal));white-space:var(--vxb-white-space-t,var(--vxb-white-space-d,normal));}}
@media(max-width:767px){.vxb-heading-wrap{letter-spacing:var(--vxb-letter-spacing-m,var(--vxb-letter-spacing-t,var(--vxb-letter-spacing-d,normal)));white-space:var(--vxb-white-space-m,var(--vxb-white-space-t,var(--vxb-white-space-d,normal)));}.vxb-heading-wrap[style*="--vxb-white-space-m:nowrap"] .vxb-heading{overflow-wrap:normal;word-break:normal;}}

/* CTA Banner */
.vxb-cta-banner{display:var(--vxb-visible-d,flex);width:100%;box-sizing:border-box;background:var(--vxb-cta-bg,#082B60);padding:var(--vxb-cta-pad-d,28px);border-radius:var(--vxb-cta-radius,0);gap:var(--vxb-cta-gap-d,28px);align-items:center;justify-content:space-between}.vxb-cta-banner.is-vertical{flex-direction:column}.vxb-cta-copy{flex:1;min-width:0}.vxb-cta-banner.align-left{text-align:left}.vxb-cta-banner.align-center{text-align:center}.vxb-cta-banner.align-right{text-align:right}.vxb-cta-banner.is-vertical.align-left{align-items:flex-start}.vxb-cta-banner.is-vertical.align-center{align-items:center}.vxb-cta-banner.is-vertical.align-right{align-items:flex-end}.vxb-cta-badge{display:inline-block;background:var(--vxb-cta-badge-bg,#F4C430);color:var(--vxb-cta-badge-color,#082B60);padding:5px 10px;font-size:12px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}.vxb-cta-title{margin:10px 0 6px;color:var(--vxb-cta-title,#fff);font-size:clamp(22px,2.2vw,34px);line-height:1.12}.vxb-cta-text{margin:0;color:var(--vxb-cta-text,#E6EEF8);font-size:16px;line-height:1.55}.vxb-cta-contacts{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;align-items:center}.vxb-cta-contacts a{color:var(--vxb-cta-secondary,#fff);text-decoration:none;font-weight:600}.vxb-cta-buttons{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}.vxb-cta-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;font-weight:800;text-decoration:none;line-height:1.2}.vxb-cta-button.is-primary{background:var(--vxb-cta-primary-bg,#F4C430);color:var(--vxb-cta-primary-color,#082B60)}.vxb-cta-button.is-secondary{border:1px solid var(--vxb-cta-secondary,#fff);color:var(--vxb-cta-secondary,#fff);background:transparent}.vxb-cta-banner.align-center .vxb-cta-buttons{justify-content:center}.vxb-cta-banner.align-right .vxb-cta-buttons{justify-content:flex-end}
@media(max-width:1024px){.vxb-cta-banner{display:var(--vxb-visible-t,flex);padding:var(--vxb-cta-pad-t,24px);gap:var(--vxb-cta-gap-t,20px)}}
@media(max-width:767px){.vxb-cta-banner{display:var(--vxb-visible-m,flex);padding:var(--vxb-cta-pad-m,20px);gap:var(--vxb-cta-gap-m,16px);flex-direction:column;align-items:stretch}.vxb-cta-banner.align-center{align-items:center}.vxb-cta-banner.align-right{align-items:flex-end}.vxb-cta-buttons{width:100%}.vxb-cta-button{flex:1 1 auto}.vxb-cta-contacts{justify-content:inherit}.vxb-cta-title{font-size:24px}}


/* Vylto 0.16.55 — Text Editor 2.0 */
.vxb-rich-text{max-width:100%;overflow-wrap:anywhere}
.vxb-rich-text> :first-child{margin-top:0}.vxb-rich-text> :last-child{margin-bottom:0}
.vxb-rich-text p{margin-top:0;margin-bottom:1em}.vxb-rich-text ul,.vxb-rich-text ol{margin:.8em 0;padding-left:1.6em}.vxb-rich-text li+li{margin-top:.25em}
.vxb-rich-text blockquote{margin:1em 0;padding:.15em 0 .15em 1em;border-left:3px solid currentColor;opacity:.9}.vxb-rich-text h2,.vxb-rich-text h3,.vxb-rich-text h4{margin:1em 0 .45em;line-height:1.25}.vxb-rich-text a{color:inherit;text-decoration:underline;text-underline-offset:.12em}

/* Vylto 0.16.64 - Image 2.0 */
/* Image alignment must not override Advanced spacing.
 * Advanced margin/padding lives on the .vxb-element wrapper via --vxb-* variables.
 * Only provide alignment auto-margins when that side has no explicit desktop margin. */
.vxb-image-wrap{width:var(--vxb-img-w-d,100%);max-width:var(--vxb-img-max-d,none);box-sizing:border-box}
.vxb-image-wrap.is-align-left:not([style*="--vxb-margin-left-d"]){margin-left:0}.vxb-image-wrap.is-align-left:not([style*="--vxb-margin-right-d"]){margin-right:auto}
.vxb-image-wrap.is-align-center:not([style*="--vxb-margin-left-d"]){margin-left:auto}.vxb-image-wrap.is-align-center:not([style*="--vxb-margin-right-d"]){margin-right:auto}
.vxb-image-wrap.is-align-right:not([style*="--vxb-margin-left-d"]){margin-left:auto}.vxb-image-wrap.is-align-right:not([style*="--vxb-margin-right-d"]){margin-right:0}
.vxb-image-wrap .vxb-image-link{display:block}.vxb-image-wrap .vxb-image{display:block;width:100%;height:auto;max-width:none;box-sizing:border-box;object-fit:var(--vxb-img-fit,cover);object-position:var(--vxb-img-pos,center center);border:var(--vxb-img-border-w,0) solid var(--vxb-img-border-color,#ddd);border-radius:var(--vxb-img-radius,0);opacity:var(--vxb-img-opacity,1);transition:opacity .2s ease}
.vxb-image-wrap[style*="--vxb-img-ratio"] .vxb-image{aspect-ratio:var(--vxb-img-ratio);height:auto}
.vxb-image-wrap:hover .vxb-image{opacity:var(--vxb-img-hover-opacity,var(--vxb-img-opacity,1))}.vxb-image-caption{margin-top:8px;font-size:.9em;line-height:1.4;color:inherit}
@media(max-width:1024px){.vxb-image-wrap{width:var(--vxb-img-w-t,var(--vxb-img-w-d,100%));max-width:var(--vxb-img-max-t,var(--vxb-img-max-d,none))}}
@media(max-width:767px){.vxb-image-wrap{width:var(--vxb-img-w-m,var(--vxb-img-w-t,var(--vxb-img-w-d,100%)));max-width:var(--vxb-img-max-m,var(--vxb-img-max-t,var(--vxb-img-max-d,none)))}}


/* Icon widget */
.vxb-icon-widget{display:flex;width:100%}.vxb-icon-align--left{justify-content:flex-start}.vxb-icon-align--center{justify-content:center}.vxb-icon-align--right{justify-content:flex-end}.vxb-icon-widget-link{display:inline-flex;align-items:center;justify-content:center;padding:var(--vxb-icon-pad,0);color:var(--vxb-icon-color,currentColor);background:var(--vxb-icon-bg,transparent);text-decoration:none;line-height:1;transition:color .18s ease,background-color .18s ease,transform .18s ease}.vxb-icon-widget-link svg{width:var(--vxb-icon-d,40px);height:var(--vxb-icon-d,40px);transform:rotate(var(--vxb-icon-rotate,0deg));transition:inherit}.vxb-icon-shape--circle .vxb-icon-widget-link{border-radius:50%;aspect-ratio:1}.vxb-icon-shape--rounded .vxb-icon-widget-link{border-radius:10px}.vxb-icon-shape--square .vxb-icon-widget-link{border-radius:0;aspect-ratio:1}.vxb-icon-widget-link:hover{color:var(--vxb-icon-hover-color,var(--vxb-icon-color,currentColor));background:var(--vxb-icon-hover-bg,var(--vxb-icon-bg,transparent))}@media(max-width:1024px){.vxb-icon-widget-link svg{width:var(--vxb-icon-t,36px);height:var(--vxb-icon-t,36px)}}@media(max-width:767px){.vxb-icon-widget-link svg{width:var(--vxb-icon-m,32px);height:var(--vxb-icon-m,32px)}}


/* Vylto 0.16.94 — Classic Hero typography controls. Hero Section remains the recommended fully flexible option. */
.vxb-hero .vxb-hero-eyebrow{
    font-family:var(--vxb-hero-eyebrow-family,Roboto,sans-serif);
    font-size:var(--vxb-hero-eyebrow-size-d,14px);
    font-weight:var(--vxb-hero-eyebrow-weight,600);
    color:var(--vxb-hero-eyebrow-color,#fff);
    line-height:var(--vxb-hero-eyebrow-line,1.3);
    letter-spacing:var(--vxb-hero-eyebrow-letter,1.2px);
}
.vxb-hero .vxb-hero-title{
    font-family:var(--vxb-hero-title-family,Roboto,sans-serif);
    font-size:var(--vxb-hero-title-size-d,56px);
    font-weight:var(--vxb-hero-title-weight,700);
    color:var(--vxb-hero-title-color,#fff);
    line-height:var(--vxb-hero-title-line,1.1);
    letter-spacing:var(--vxb-hero-title-letter,0px);
}
.vxb-hero .vxb-hero-text{
    font-family:var(--vxb-hero-text-family,Roboto,sans-serif);
    font-size:var(--vxb-hero-text-size-d,18px);
    font-weight:var(--vxb-hero-text-weight,400);
    color:var(--vxb-hero-text-color,#fff);
    line-height:var(--vxb-hero-text-line,1.5);
    letter-spacing:var(--vxb-hero-text-letter,0px);
}
@media (max-width:1024px){
    .vxb-hero .vxb-hero-eyebrow{font-size:var(--vxb-hero-eyebrow-size-t,13px)}
    .vxb-hero .vxb-hero-title{font-size:var(--vxb-hero-title-size-t,44px)}
    .vxb-hero .vxb-hero-text{font-size:var(--vxb-hero-text-size-t,17px)}
}
@media (max-width:767px){
    .vxb-hero .vxb-hero-eyebrow{font-size:var(--vxb-hero-eyebrow-size-m,12px)}
    .vxb-hero .vxb-hero-title{font-size:var(--vxb-hero-title-size-m,34px)}
    .vxb-hero .vxb-hero-text{font-size:var(--vxb-hero-text-size-m,16px)}
}


/* Vylto 0.16.97 — Accent Heading exact frontend parity.
 * Accent Heading has intentionally independent segment colors and its own
 * appearance background. Generic Vylto theme-protection rules must not flatten
 * those segment colors or replace the appearance background with transparent. */
.vxb-accent-heading-wrap {
    background-color: color-mix(
        in srgb,
        var(--vxb-ah-bg-d, var(--vxb-ah-appearance-bg, transparent)) calc(var(--vxb-bg-opacity-d, 100) * 1%),
        transparent
    ) !important;
}
.vxb-accent-heading-wrap .vxb-accent-heading-segment[style*="--vxb-ah-segment-color:"] {
    color: var(--vxb-ah-segment-color) !important;
}
@media (max-width:1024px) {
    .vxb-accent-heading-wrap {
        background-color: color-mix(
            in srgb,
            var(--vxb-ah-bg-t, var(--vxb-ah-bg-d, var(--vxb-ah-appearance-bg, transparent))) calc(var(--vxb-bg-opacity-t, var(--vxb-bg-opacity-d, 100)) * 1%),
            transparent
        ) !important;
    }
}
@media (max-width:767px) {
    .vxb-accent-heading-wrap {
        background-color: color-mix(
            in srgb,
            var(--vxb-ah-bg-m, var(--vxb-ah-bg-t, var(--vxb-ah-bg-d, var(--vxb-ah-appearance-bg, transparent)))) calc(var(--vxb-bg-opacity-m, var(--vxb-bg-opacity-t, var(--vxb-bg-opacity-d, 100))) * 1%),
            transparent
        ) !important;
    }
}


/* Vylto 0.16.98 — Accessibility baseline (WCAG-oriented foundation). */
.vxb-skip-link{position:fixed;left:12px;top:12px;z-index:100000;transform:translateY(-160%);padding:10px 14px;background:#fff;color:#111827;border:2px solid currentColor;border-radius:3px;font-weight:700;text-decoration:none;transition:transform .15s ease}
.vxb-skip-link:focus{transform:translateY(0)}
.vxb-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.vxb-element a:focus-visible,.vxb-element button:focus-visible,.vxb-element input:focus-visible,.vxb-element textarea:focus-visible,.vxb-element select:focus-visible,.vxb-popup-close:focus-visible,.vxb-lightbox button:focus-visible,.vxb-skip-link:focus-visible{outline:3px solid #0b69a5!important;outline-offset:3px!important}
.vxb-navigation li:focus-within>.sub-menu{visibility:visible;opacity:1;pointer-events:auto}
.vxb-navigation .vxb-submenu-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;margin-left:2px;padding:4px;border:0;background:transparent;color:inherit;cursor:pointer}
.vxb-navigation .vxb-submenu-toggle::before{content:'▾';font-size:.85em;line-height:1;transition:transform .15s ease}
.vxb-navigation .vxb-submenu-toggle[aria-expanded="true"]::before{transform:rotate(180deg)}
@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto!important}.vxb-skip-link,.vxb-navigation .vxb-submenu-toggle::before,.vxb-element *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Vylto 0.16.99 — keep accessible submenu control out of desktop menu flow. */
.vxb-navigation .vxb-nav-menu > li.vxb-has-accessible-submenu-toggle{position:relative}
.vxb-navigation .vxb-nav-menu > li.vxb-has-accessible-submenu-toggle > a{padding-right:30px}
.vxb-navigation .vxb-nav-menu > li.vxb-has-accessible-submenu-toggle > a::after{display:none!important}
.vxb-navigation .vxb-nav-menu > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);z-index:2;min-width:24px;min-height:24px;width:24px;height:24px;margin:0;padding:2px}
.vxb-navigation .vxb-nav-menu--vertical > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle{top:var(--vxb-nav-pad-top-d,10px);transform:none}
@media (max-width:1024px){.vxb-navigation--mobile-toggle.is-open .vxb-nav-menu > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle{top:8px;transform:none}}


/* Vylto 0.17.7 — accessible nested dropdown controls and continuous hover geometry. */
.vxb-navigation .sub-menu > li.vxb-has-accessible-submenu-toggle{position:relative}
.vxb-navigation .sub-menu > li.vxb-has-accessible-submenu-toggle > a{padding-right:38px}
.vxb-navigation .sub-menu > li.vxb-has-accessible-submenu-toggle > a::after{display:none!important}
.vxb-navigation .sub-menu > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:3;width:28px;height:28px;min-width:28px;min-height:28px;margin:0;padding:2px}
.vxb-navigation .sub-menu > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle::before{content:'›';transform:none!important}
.vxb-navigation .sub-menu > li.menu-item-has-children::after{content:'';position:absolute;top:0;right:-2px;width:4px;height:100%;z-index:51}
@media (max-width:1024px){.vxb-navigation--mobile-toggle.is-open .sub-menu > li.vxb-has-accessible-submenu-toggle > .vxb-submenu-toggle{top:8px;transform:none}.vxb-navigation--mobile-toggle.is-open .sub-menu > li.menu-item-has-children::after{display:none}}

/* Vylto 0.17.8 — navigation stacking hardening.
 * Decorative dividers must never intercept pointer travel to dropdowns.
 * Keep navigation/dropdowns above adjacent decorative elements without
 * changing the visual layout of the header. */
.vxb-navigation{position:relative;z-index:100;overflow:visible!important}
.vxb-navigation .vxb-navigation-classic-menu,
.vxb-navigation .vxb-navigation-block-menu,
.vxb-navigation .vxb-nav-menu{overflow:visible!important}
.vxb-navigation .sub-menu{z-index:1000}
.vxb-navigation .sub-menu .sub-menu{z-index:1010}
.vxb-divider{position:relative;z-index:0;pointer-events:none}
.vxb-divider-line{pointer-events:none}


/* Vylto 0.17.21 — Photo Gallery Preview polish */
.vxb-gallery-preview-item img{object-fit:var(--vxb-gp-fit,cover)}
.vxb-gallery-hover--none .vxb-gallery-preview-item:hover img{transform:none}
.vxb-gallery-preview-item figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:8px 10px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:13px;line-height:1.35}
.vxb-gallery-preview-button-wrap{display:flex;margin-top:14px}.vxb-gallery-preview-button-wrap.is-left{justify-content:flex-start}.vxb-gallery-preview-button-wrap.is-center{justify-content:center}.vxb-gallery-preview-button-wrap.is-right{justify-content:flex-end}.vxb-gallery-preview-button-wrap .vxb-gallery-preview-button{margin-top:0}
/* Slider is an actual horizontally scrollable preview instead of a static six-column grid. */
.vxb-gallery-preview--slider .vxb-gallery-preview-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,32%);grid-template-columns:none!important;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding-bottom:6px;scrollbar-width:thin}
.vxb-gallery-preview--slider .vxb-gallery-preview-item{scroll-snap-align:start;aspect-ratio:4/3}
@media(max-width:1024px){.vxb-gallery-preview--slider .vxb-gallery-preview-grid{grid-auto-columns:minmax(210px,48%)}}
@media(max-width:767px){.vxb-gallery-preview--slider .vxb-gallery-preview-grid{grid-auto-columns:minmax(220px,84%);grid-template-columns:none!important}}


/* Vylto 0.17.22 — unified Photo Gallery / Photo Gallery Preview controls */
.vxb-photo-gallery .vxb-gallery-item{position:relative;overflow:hidden}
.vxb-photo-gallery .vxb-gallery-item img{transition:transform .25s ease;object-fit:var(--vxb-g-fit,cover)}
.vxb-photo-gallery.vxb-gallery-hover--zoom .vxb-gallery-item:hover img{transform:scale(1.035)}
.vxb-photo-gallery.vxb-gallery-hover--none .vxb-gallery-item:hover img{transform:none}
.vxb-photo-gallery .vxb-gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:8px 10px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:13px;line-height:1.35}


/* Vylto 0.17.26 - Accessibility: preserve configured Link List sizing,
   but never render link text below 12px. */
.vxb-link-list-link,
.vxb-link-list-link:visited {
    font-size: max(12px, 1em);
}
\n\n/* Vylto 0.17.29 — Navigation Menu gap control fix.\n * Keep the widget's responsive gap authoritative for Vylto, classic and block menus. */\n.vxb-element.vxb-navigation.vxb-navigation--horizontal > .vxb-nav-menu.vxb-nav-menu--horizontal,\n.vxb-element.vxb-navigation.vxb-navigation--classic.vxb-navigation--horizontal .vxb-navigation-classic-menu > .vxb-nav-menu,\n.vxb-element.vxb-navigation.vxb-navigation--block.vxb-navigation--horizontal > .wp-block-navigation .wp-block-navigation__container {\n    column-gap: var(--vxb-nav-gap-d, 22px) !important;\n    row-gap: var(--vxb-nav-gap-d, 22px) !important;\n}\n.vxb-element.vxb-navigation.vxb-navigation--vertical > .vxb-nav-menu.vxb-nav-menu--vertical,\n.vxb-element.vxb-navigation.vxb-navigation--classic.vxb-navigation--vertical .vxb-navigation-classic-menu > .vxb-nav-menu,\n.vxb-element.vxb-navigation.vxb-navigation--block.vxb-navigation--vertical > .wp-block-navigation .wp-block-navigation__container {\n    row-gap: var(--vxb-nav-gap-d, 10px) !important;\n}\n@media (max-width: 1024px) {\n    .vxb-element.vxb-navigation > .vxb-nav-menu,\n    .vxb-element.vxb-navigation.vxb-navigation--classic .vxb-navigation-classic-menu > .vxb-nav-menu,\n    .vxb-element.vxb-navigation.vxb-navigation--block > .wp-block-navigation .wp-block-navigation__container {\n        column-gap: var(--vxb-nav-gap-t, var(--vxb-nav-gap-d, 18px)) !important;\n        row-gap: var(--vxb-nav-gap-t, var(--vxb-nav-gap-d, 18px)) !important;\n    }\n}\n@media (max-width: 767px) {\n    .vxb-element.vxb-navigation > .vxb-nav-menu,\n    .vxb-element.vxb-navigation.vxb-navigation--classic .vxb-navigation-classic-menu > .vxb-nav-menu,\n    .vxb-element.vxb-navigation.vxb-navigation--block > .wp-block-navigation .wp-block-navigation__container {\n        column-gap: var(--vxb-nav-gap-m, var(--vxb-nav-gap-t, 14px)) !important;\n        row-gap: var(--vxb-nav-gap-m, var(--vxb-nav-gap-t, 14px)) !important;\n    }\n}\n

/* Vylto 0.17.30 — Navigation gap authority.
   Gap belongs to the Navigation widget, not to the selected menu.
   !important ensures dynamically switched Vylto menus (e.g. RO/HU) use the same widget gap. */
.vxb-navigation .vxb-nav-menu--horizontal,
.vxb-navigation .vxb-nav-menu--vertical {
    gap: var(--vxb-nav-gap-d, 22px) !important;
}
@media (max-width: 1024px) {
    .vxb-navigation .vxb-nav-menu--horizontal,
    .vxb-navigation .vxb-nav-menu--vertical {
        gap: var(--vxb-nav-gap-t, var(--vxb-nav-gap-d, 18px)) !important;
    }
}
@media (max-width: 767px) {
    .vxb-navigation .vxb-nav-menu--horizontal,
    .vxb-navigation .vxb-nav-menu--vertical,
    .vxb-navigation--mobile-toggle.is-open .vxb-nav-menu {
        gap: var(--vxb-nav-gap-m, var(--vxb-nav-gap-t, 14px)) !important;
    }
}


/* Vylto 0.17.31 — Navigation gap bound to the widget instance.
 * The active menu may change at render time (e.g. multilingual RO/HU),
 * but spacing always follows the Navigation widget settings. */
.vxb-element.vxb-navigation {
    --vxb-nav-gap-current: var(--vxb-nav-gap-d, 22px);
}
@media (max-width: 1024px) {
    .vxb-element.vxb-navigation {
        --vxb-nav-gap-current: var(--vxb-nav-gap-t, var(--vxb-nav-gap-d, 18px));
    }
}
@media (max-width: 767px) {
    .vxb-element.vxb-navigation {
        --vxb-nav-gap-current: var(--vxb-nav-gap-m, var(--vxb-nav-gap-t, 14px));
    }
}
