/* ==========================================================================
   Fonts
   ========================================================================== */

/* source-sans-3-300 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 300;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-300.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-300.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-300italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 300;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-300italic.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-300italic.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 400;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-regular.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-regular.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 400;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-italic.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-italic.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-500 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 500;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-500.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-500.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-500italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 500;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-500italic.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-500italic.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 700;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-700.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-700.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-700italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 700;
    src: url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-700italic.woff2?version=0') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('https://landing1.gehealthcare.com/rs/005-SHS-767/images/source-sans-3-v15-latin-700italic.ttf?version=0') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* ==========================================================================
   Bootstrap reset
   ========================================================================== */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
}

/* ==========================================================================
   General
   ========================================================================== */

:root {
    --color-brand: #6022A6;
    --color-brand-darker: #581B9E;
    --color-brand-lighter: #9e5ce8;
    --color-brand-extra-light: #F4F1F8;
    --color-brand-secondary: #88CEDA;
    --color-body: #222222;
    --color-lighter: #5B5B66;
    --color-extra-light: #E5E5E5;
    --color-orange: #F37F63;
    --color-green: #45B2C5;
    --border-radius-default: 24px;
    --border-radius-16: 16px;
    --border-radius-lg: 30px
}

.bg-brand {
    background-color: var(--color-brand);
}
.bg-brand--darker {
    background-color: var(--color-brand-darker);
}
.bg-brand--lighter {
    background-color: var(--color-brand-lighter);
}
.bg-brand--extra-light {
    background-color: var(--color-brand-extra-light);
}
.bg-brand-secondary {
    background-color: var(--color-brand-secondary);
}
.bg-orange {
    background-color: var(--color-orange);
}
.bg-green {
    background-color: var(--color-green);
}
.rounded-default {
    border-radius: var(--border-radius-default);
}
.rounded-16 {
    border-radius: var(--border-radius-16);
}
.rounded-lg {
    border-radius: var(--border-radius-lg);
}
.text-brand {
    color: var(--color-brand);
}
.text-brand-secondary {
    color: var(--color-brand-secondary);
}
.text-lighter {
    color: var(--color-lighter);
}
.border-extra-light {
    border-color: var(--color-extra-light) !important;
}
.text-opacity {
    opacity: 0.7;
}

.ls-10 {
    letter-spacing: 0.1em;
}

html,
body {
    font-family: 'Source Sans 3', sans-serif;
    color: var(--color-body);
}

.btn {
    font-weight: 700;
    padding-right: 30px;
    padding-left: 30px;
}
@media (min-width: 1024px) {
    .btn {
        padding-right: 40px;
        padding-left: 40px;
    }
}

@media (min-width: 1200px) {
    .btn {
        padding-right: 50px;
        padding-left: 50px;
    }
}
.btn-brand {
    color: white;
    background-color: var(--color-brand);
}
.btn-brand:hover {
    color: white;
    background-color: var(--color-brand-lighter);
}
.btn-white {
    color: var(--color-brand);
    background-color: white;
}
.btn-white:hover {
    color: white;
    background-color: var(--color-brand-lighter);
}

.shadow-default {
    -webkit-box-shadow: 0px 4.5em 1.5em -3em rgba(6,2,42,0.25);
    -moz-box-shadow: 0px 4.5em 1.5em -3em rgba(6,2,42,0.25);
    box-shadow: 0px 4.5em 1.5em -3em rgba(6,2,42,0.25);
}

.square {
    width: 100%;
    aspect-ratio: 1;
}

@media (max-width: 767px) {
    .img-mobile-full {
        width: calc(100% + 48px);
        min-width: calc(100% + 48px);
        margin-right: -24px;
        margin-left: -24px;
        border-radius: 0;
    }
}
.label--custom_desc-img {
    font-weight: 500;
    color: var(--color-brand);
}

/* ==========================================================================
   Custom containers
   ========================================================================== */

.container-fluid {
    padding-left: 24px;
    padding-right: 24px;
}

@media (min-width: 768px) {
    .container-fluid--xl {
        /* calc( [value-min = 576px] + ( ([value-max = 1470px] - [value-min = 576px]) * (100vw - [breakpoint-min = 576px]) ) / ([breakpoint-max = 1728px] - [breakpoint-min = 576px]) ); */
        max-width: calc(576px + (894 * (100vw - 576px)) / 1152);
    }
    .container-fluid--lg {
        /* calc( [value-min = 576px] + ( ([value-max = 1258px] - [value-min = 576px]) * (100vw - [breakpoint-min = 576px]) ) / ([breakpoint-max = 1728px] - [breakpoint-min = 576px]) ); */
        max-width: calc(576px + (628 * (100vw - 576px)) / 1152);
    }
    .container-fluid--md {
        /* calc( [value-min = 576px] + ( ([value-max = 1050px] - [value-min = 576px]) * (100vw - [breakpoint-min = 576px]) ) / ([breakpoint-max = 1728px] - [breakpoint-min = 576px]) ); */
        max-width: calc(576px + (474 * (100vw - 576px)) / 1152);
    }
    .container-fluid--sm {
        /* calc( [value-min = 576px] + ( ([value-max = 842px] - [value-min = 576px]) * (100vw - [breakpoint-min = 576px]) ) / ([breakpoint-max = 1728px] - [breakpoint-min = 576px]) ); */
        max-width: calc(576px + (266 * (100vw - 576px)) / 1152);
    }
}

@media (min-width: 1728px) {
    /* 83% */
    .container-fluid--xl {
        max-width: 1470px;
    }
    /* 71% */
    .container-fluid--lg {
        max-width: 1258px;
    }
    /* 59% */
    .container-fluid--md {
        max-width: 1050px;
    }
    /* 47% */
    .container-fluid--sm {
        max-width: 842px;
    }
}

/* ==========================================================================
   Fluid Sizes
   ========================================================================== */

.fs-fluid--xs {
    font-size: 12px;
}

.fs-fluid--sm {
    font-size: 14px;
}

.fs-fluid--md {
    font-size: 16px;
}

.fs-fluid--md-large {
    font-size: 16px;
}

.fs-fluid--md-larger {
    font-size: 16px;
}

.fs-fluid--md-extralarge {
    font-size: 18px;
}

.fs-fluid--lg {
    font-size: 22px;
}

.fs-fluid--xxl {
    font-size: 40px;
}

.fs-fluid--xxxl {
    font-size: 44px;
}


.pt-xl {
    padding-top: 70px;
}
.pb-xl {
    padding-bottom: 70px;
}

@media (min-width: 768px) {
    .fs-fluid--xs {
        font-size: calc(12px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--sm {
        font-size: calc(14px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--md {
        font-size: calc(16px + (2 * (100vw - 768px)) / 960);
    }

    .fs-fluid--md-large {
        font-size: calc(16px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--md-larger {
        font-size: calc(16px + (10 * (100vw - 768px)) / 960);
    }

    .fs-fluid--md-extralarge {
        font-size: calc(18px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--lg {
        font-size: calc(22px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--xxl {
        font-size: calc(40px + (4 * (100vw - 768px)) / 960);
    }

    .fs-fluid--xxxl {
        font-size: calc(44px + (24 * (100vw - 768px)) / 960);
    }


    .pt-xl {
        padding-top: calc(70px + (30 * (100vw - 768px)) / 960);
    }
    .pb-xl {
        padding-bottom: calc(70px + (30 * (100vw - 768px)) / 960);
    }
}

@media (min-width: 1728px) {
    .fs-fluid--xs {
        font-size: 16px;
    }

    .fs-fluid--sm {
        font-size: 18px;
    }

    .fs-fluid--md {
        font-size: 18px;
    }

    .fs-fluid--md-large {
        font-size: 20px;
    }

    .fs-fluid--md-larger {
        font-size: 26px;
    }

    .fs-fluid--md-extralarge {
        font-size: 22px;
    }

    .fs-fluid--lg {
        font-size: 26px;
    }

    .fs-fluid--xxl {
        font-size: 44px;
    }

    .fs-fluid--xxxl {
        font-size: 71px;
    }


    .pt-xl {
        padding-top: 100px;
    }
    .pb-xl {
        padding-bottom: 100px;
    }
}

/* ==========================================================================
   Fixed Typography
   ========================================================================== */

.fs-35 {
    font-size: 35px;
}

/* ==========================================================================
   Header
   ========================================================================== */

.header {
    color: var(--color-brand);
    background-color: white;
    z-index: 999;
    transition: all .3s;
}

.logo-innovation-talks {
    max-width: 130px;
    transform: translate3d(0, 10%, 0);
    width: 100%;
}

.icon-info {
    width: 25px;
    height: 25px;
}

@media (min-width: 768px) {
    .logo-innovation-talks {
        max-width: 175px;
    }

    .icon-info {
        width: 28px;
        height: 28px;
    }
}

@media (min-width: 1200px) {
    .logo-innovation-talks {
        max-width: 220px;
    }

    .icon-info {
        width: 31px;
        height: 31px;
    }
}

#pageSelector button {
    border-bottom: 1px solid var(--color-brand);
    border-radius: 0;
    font-weight: 300;
    font-size: 18px;
    text-transform: uppercase;
    color: var(--color-brand);
}

#pageSelector button::after {
    display: inline-block;
    margin-left: .35em;
    vertical-align: .075em;
    content: "";
    border-top: .5em solid;
    border-right: .35em solid transparent;
    border-bottom: 0;
    border-left: .35em solid transparent;
}

#pageMenu {
    max-height: 0;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: all .3s;
}

/*
.swiper-slide--chapter {
    flex-shrink: 0;
}*/

.swiper-slide--chapter a {
    aspect-ratio: 7/10;
    padding: 22px;
    text-decoration: none;
    background-color: var(--color-brand);
}
.swiper-slide--chapter a::after,
.swiper-slide--chapter a:not(.swiper-slide--chapter__link-active)::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 44%);
    opacity: .7;
    z-index: 2;
}
.swiper-slide--chapter a:not(.swiper-slide--chapter__link-active) img {
    mix-blend-mode: screen;
}
.swiper-slide--chapter a:not(.swiper-slide--chapter__link-active)::after {
    background: linear-gradient(0deg, #6022A6 0%, #6022A6 100%);
    mix-blend-mode: normal;
    z-index: 3;
    opacity: .2;
}
.swiper-slide--chapter__link-active::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
    border: 3px solid white;
    border-radius: calc(var(--border-radius-default) - 1px);
}

.swiper-slide--chapter-existing a {
    background-color: transparent;
}

.swiper-slide--chapter-existing a::after,
.swiper-slide--chapter-existing a:not(.swiper-slide--chapter__link-active)::before {
    background: none !important;
}


.swiper-slide--chapter .badge {
    top: 13px;
    right: 11px;
    letter-spacing: .15em;
}
.swiper-slide--chapter .badge span {
    transform: translate3d(2%, 3%, 0);
}

.swiper-slide--chapter h3 {
    font-size: 18px;
}

.swiper--chapters .swiper-buttons::after {
    background-color: white;
    opacity: .13;
}

@media (min-width: 768px) {
    #pageSelector button {
        font-size: calc(18px + (7 * (100vw - 768px)) / 960);
    }
    .swiper-slide--chapter {
        padding-right: 1rem;
    }

    .swiper-slide--chapter-new a::before {
        border-width: 5px;
    }

    .swiper-slide--chapter h3 {
        font-size: calc(18px + (17 * (100vw - 768px)) / 960);
    }
}

@media (min-width: 1024px) {
    .swiper-slide--chapter a {
        padding: 30px;
    }
    .swiper-slide--chapter .badge {
        top: 26px;
        right: 24px;
    }
}

@media (min-width: 1728px) {
    #pageSelector button {
        font-size: 25px;
    }
    .swiper-slide--chapter h3 {
        font-size: 35px;
    }
}

@media (max-width: 767px) {
    .swiper--chapters .swiper-wrapper {
        width: 100% !important;
        transform: none !important;
        display: grid !important;
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: max-content;
        gap: 12px;
        padding-right: 24px;
        padding-left: 24px;
        box-sizing: border-box;
        /* height: 100vh;
        overflow: scroll; */
    }
    .swiper--chapters .swiper-buttons {
        display: none !important;
    }
    .swiper-slide--chapter {
        width: 100% !important;
    }
    .swiper-slide--chapter h3 {
        margin-bottom: 0;
    }
}
@media (max-width: 575px) {
    .swiper--chapters .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* animation */
.body--menu-open .header {
    margin-bottom: 50px;
    color: var(--color-brand);
    background-color: var(--color-brand);
}
.body--menu-open .header__top .menu-open-invert {
    filter: brightness(0) invert(1);
}
.body--menu-open .header__top .btn-brand:not(:hover) {
    color: var(--color-brand);
    background-color: white;
}
.body--menu-open #pageMenu {
    /* max-height: 100vh; */
    max-height: 9999px;
    visibility: visible;
    opacity: 1;
    pointer-events: all;
}
.body--menu-open #pageSelector button {
    border-color: white;
    color: white;
}
.body--menu-open #pageSelector button::after {
    transform: rotate(180deg);
}

@media (min-width: 768px) {
    .body--menu-open #pageMenu {
        max-height: 100vh;
    }
}

/* ==========================================================================
   Hero
   ========================================================================== */

.hero__logo {
    width: 75%;
    max-width: 218px;
    height: auto;
}

@media (min-width: 768px) {
    .hero__logo {
        width: 25%;
        max-width: 25%;
        height: auto;
        position: absolute;
        right: 6vw;
        bottom: 4vw;
    }
}


/* ==========================================================================
   Video
   ========================================================================== */

/* .section--video .card {
    -webkit-box-shadow: 0px 3.5em 2.7em -3.75em rgba(6,2,42,0.35);
    -moz-box-shadow: 0px 3.5em 2.7em -3.75em rgba(6,2,42,0.35);
    box-shadow: 0px 3.5em 4.2em -3.75em rgba(6,2,42,0.35);
} */
.rounded-default .card-img-top {
    border-top-right-radius: var(--border-radius-default);
    border-top-left-radius: var(--border-radius-default);
}

.section--video__play svg {
    width: 55px;
    height: 55px;
}

.section--video .card-title {
    font-size: 32px;
}

@media (min-width: 768px) {
    .section--video__gradient {
        background: linear-gradient(180deg, 
            #FFFFFF 0%, 
            #FFFFFF 33%, 
            #F4F1F8 33%, 
            #F4F1F8 100%
        );
    }

    .section--video__play svg {
        width: calc(55px + (35 * (100vw - 768px)) / 960);
        height: calc(55px + (35 * (100vw - 768px)) / 960);
    }
}

@media (min-width: 1728px) {
    .section--video__play svg {
        width: 90px;
        height: 90px;
    }
}

/* @media (max-width: 767px) {
    .section--video {
        background-color: var(--color-brand-extra-light);
    }
} */

/* ==========================================================================
   Cases
   ========================================================================== */

.swiper-slide--case {
    padding-right: 50px;
}

.swiper-button {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin-right: 2rem;
}
.swiper-button-disabled {
    opacity: .5;
}
.swiper-buttons::after {
    content: '';
    display: block;
    width: 100%;
    height: 2.5px;
    margin-left: 2rem;
    background-color: #DCDCDC;
}
.swiper-buttons::before {
    display: none;
}

.case__doctor {
    margin-bottom: 24px;
}
.case__doctor img {
    width: 72px;
    height: 72px;
    object-fit: cover;
    border-radius: 10px;
    margin-right: .85em;
}
.case__doctor h5 {
    font-size: 18px;
}
.case__doctor h6 {
    font-size: 14px;
}

@media (min-width: 768px) {
    .modal .case__doctor {
        margin-bottom: 0;
    }
    .case__doctor img {
        width: calc(72px + (13 * (100vw - 768px)) / 960);
        height: calc(72px + (13 * (100vw - 768px)) / 960);
    }
    .case__doctor h5 {
        font-size: calc(18px + (4 * (100vw - 768px)) / 960);
    }
    .case__doctor h6 {
        font-size: calc(14px + (4 * (100vw - 768px)) / 960);
    }
}

@media (min-width: 1728px) {
    .case__doctor img {
        width: 85px;
        height: 85px;
    }
    .case__doctor h5 {
        font-size: 22px;
    }
    .case__doctor h6 {
        font-size: 18px;
    }
}

.equal-height-slide {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    min-height: 100%;
}
.swiper--cases .swiper-wrapper {
    display: flex;
    align-items: stretch; /* forza tutte le slide ad allinearsi in altezza */
}
.swiper--cases .swiper-slide {
    display: flex;
    flex-direction: column;
    height: auto;
}


/* ==========================================================================
   Cards
   ========================================================================== */
.label--custom {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .label--custom {
        font-size: calc(16px + (6 * (100vw - 768px)) / 960);
    }
}

@media (min-width: 1728px) {
    .label--custom {
        font-size: 22px;
    }
}

.accordion--custom .accordion-item {
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 0;
    background: transparent;
}
.accordion--custom .accordion-button {
    justify-content: space-between;
    padding-right: 0;
    padding-left: 0;
    border-right: 0;
    border-left: 0;
    color: white;
    font-weight: 700;
    background: transparent;
    box-shadow: none;
}
.accordion--custom .accordion-button::after {
    width: 1.75em;
    height: 1.75em;
    margin-right: 1em;
    margin-left: .5em;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1Ljg3ODIgMEwxNS44NzgyIDMxLjc1NjMiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMyIvPgo8cGF0aCBkPSJNMzEuNzU2MyAxNS44Nzg0TDcuMTE2NzllLTA1IDE1Ljg3ODQiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMyIvPgo8L3N2Zz4=");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.accordion--custom .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iNCIgdmlld0JveD0iMCAwIDMyIDQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zMS43NTYzIDJMNy4xMTY3OWUtMDUgMiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIzIi8+Cjwvc3ZnPg==");
}
.accordion--custom .accordion-body {
    padding: 0 0 1rem 0;
}

.nav-tabs--custom .nav-link {
    padding-right: 1em;
    padding-left: 1em;
    color: white;
    border: none !important;
    background-color: transparent !important;
    font-size: 14px;
}
.nav-tabs--custom .nav-link.active {
    color: var(--color-brand-secondary);
}
.nav-tabs--custom .nav-link.nav-tabs--custom_extra {
    font-size: 10px;
}
@media (min-width: 1024px) {
    .nav-tabs--custom .nav-link.nav-tabs--custom_extra {
        font-size: 12px;
    }
}
/* ==========================================================================
   Image scroller
   ========================================================================== */

   .image-stack-container {
    position: relative;
    /* width: 400px;
    height: 400px; */
    /* margin: 20px auto; */
    border: 1px solid black;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}
.image-stack-wrapper {
    width: 100%;
}
.image-stack-wrapper img {
    /* width: 100%;
    height: 100%;
    object-fit: cover; */
    width: 100%;
    max-width: 100%;
    height: auto;
}
.scrollbar-container {
    position: absolute;
    right: 5px;
    top: 50%;
    height: 94%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.image-stack-scrollbar {
    width: 20px;
    height: 100%;
    background: #3B3B3B;
    position: relative;
}
.scroll-knob {
    position: absolute;
    width: 100%;
    height: 8px;
    background: white;
    cursor: grab;
}
.scroll-up-button, .scroll-down-button {
    width: 30px;
    height: 30px;
    background: transparent;
    color: white;
    text-align: center;
    cursor: pointer;
    font-size: 18px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* .scroll-up-button:hover, .scroll-down-button:hover {
} */

/* ==========================================================================
   Connect
   ========================================================================== */

.icon-connect--calendar {
    width: 48px;
    height: 48px;
    margin-top: 10px;
    margin-left: -10px;
}
.icon-connect {
    width: 37px;
    height: 37px;
    border-radius: 50%;
}
/* .section--connect__image {
    -webkit-box-shadow: 0px 23px 43px -28px rgba(6,2,42,0.48);
    -moz-box-shadow: 0px 23px 43px -28px rgba(6,2,42,0.48);
    box-shadow: 0px 23px 43px -28px rgba(6,2,42,0.48);
} */

@media (min-width: 1024px) {
    .icon-connect--calendar {
        width: 65px;
        height: 65px;
        margin-top: 14px;
        margin-left: -14px;
    }
}

/* ==========================================================================
   Events
   ========================================================================== */

.swiper-pagination--custom {
    position: relative;
    margin-top: 1rem;
}
.swiper-pagination--custom .swiper-pagination-bullet {
    width: 28px;
    height: 12px;
    margin: 0 3px;
    background-color: white;
    opacity: .2;
    border-radius: 6px;
    transition: all .2s;
    transform-origin: center;
}
.swiper-pagination--custom .swiper-pagination-bullet-active {
    width: 54px;
    opacity: 1;
}

.swiper-slide--event h6 {
    font-size: 20px;
}

@media (min-width: 768px) {
    .section--events > .container-fluid {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
    .swiper-slide--event__inner img {
        width: 40%;
        margin-right: 3.5rem;
        border-radius: 30px;
    }

    .swiper-slide--event h6 {
        font-size: calc(20px + (2 * (100vw - 768px)) / 960);
    }

    .swiper-pagination--custom {
        margin-top: 3.75rem;
    }
}

@media (min-width: 1728px) {
    .swiper-slide--event h6 {
        font-size: 20px;
    }
}

/* ==========================================================================
   Page Navigation
   ========================================================================== */
.page-navigation [role="button"].disabled {
    opacity: .5;
    pointer-events: none;
}

/* ==========================================================================
   Footer
   ========================================================================== */

.footer__nav {
    padding-left: 0;
    list-style: none;
}
.footer__nav a {
    color: var(--color-body);
    text-decoration: none;
}

/* ==========================================================================
   Modal
   ========================================================================== */

.modal--custom .modal-header {
    padding-right: 24px;
    padding-left: 24px;
}
.modal--custom .modal-body {
    padding-right: 0;
    padding-left: 0;
}
.modal--custom .btn-close {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236022A6'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    opacity: 1;
}
.modal--custom .btn-close.btn-close--white {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}

#modalInfo .img-fluid {
    width: 220px;
}

@media (min-width: 768px) {
    #modalInfo .img-fluid {
        width: calc(220px + (178 * (100vw - 768px)) / 960);
    }

    #modalInfo .modal-dialog {
        height: 100%;
    }
    
    #modalInfo .modal-content {
        height: auto;
        min-height: 100%;
        border-radius: 0;
    }
    
    #modalInfo .modal-body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    #modalInfo .modal-body > * {
        transform: translate3d(0, -50px, 0);
    }
}

@media (min-width: 1728px) {
    #modalInfo .img-fluid {
        width: 398px;
    }
}

@media(max-width: 575px){

    button#btnModalContact {
        font-size: 14px;
        padding: 4px 10px;
        line-height: 100%;
    }

    .menu-open-invert.text-center {
        padding: 0;
    }


}

.mktoForm {
    max-width: 100%;
}

.mktoForm textarea{
    cursor: initial !important;
}

#mktoForm_137021{
    width: 100% !important;
}

@media(max-width: 479px){

    .mktoFieldDescriptor.mktoFormCol {
        width: 100%;
    }

}

#preloader {
    transition: opacity 0.5s ease-in-out;
}

#preloader.loaded {
    opacity: 0;
    pointer-events: none;
}


@media only screen and (max-width: 480px),
only screen and (max-device-width: 480px),
only screen and (max-device-height: 480px) {
    body#bodyId {
       padding: 0 !important;
   }
}