/*-----------------------------------------------------------------------------*/
/*   - FONTS -   */
/*-----------------------------------------------------------------------------*/
/* @import url("https://fonts.googleapis.com/css?family=Karla:400,400i,700,700i&subset=latin-ext"); */

:root {
    --text-wght-rl: 350;
    --text-wght-r: 400;
    --text-wght-m: 500;
    --text-wght-sb: 625;
    --text-wght-b: 700;
    --text-wdth: 85;
    --text-wdth-sm: 25;
    --text-opsz: 80;
    --text-GRAD: 88;
    --text-axis: 1;
    --text-ital: 1;
    --text-ital-base: oblique;
    --text-ital-10: oblique 10deg;
    --text-ital-20: oblique 20deg;
}

@font-face {
    font-family: "EuropeaVar";
    src: url("../fonts/EuropeaVar.woff2") format("woff2"),
         url("../fonts/EuropeaVar.woff") format("woff");
    font-weight: 250 900;
    font-style: normal;
    font-display: swap;
}

/*-----------------------------------------------------------------------------*/
/*   - COLORS -   */
/*-----------------------------------------------------------------------------*/
.bg-darkblue {
    background-color: #1b1464 !important;
}

.bg-elecblue {
    background-color: #0000fe !important;
}

.bg-yellow {
    background-color: #f0e56f !important;
}

.bg-grey {
    background-color: #ebf4f9 !important;
}

.txt-darkblue {
    color: #1b1464 !important;
}

.txt-elecblue {
    color: #0713f3 !important;
}

.txt-yellow {
    color: #f0e56f !important;
}

.txt-grey {
    color: #ebf4f9 !important;
}

.border-yellow {
    border: 1px solid #f0e56f !important;
}

/*-----------------------------------------------------------------------------*/
/*   - DESIGN -   */
/*-----------------------------------------------------------------------------*/
body {
    font-family: 'EuropeaVar', Arial, sans-serif;
}

#waimenu {
    z-index: 9;
}

#waimenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#waimenu ul a {
    text-decoration: none;
    background-color: #0000fe;
    color: #fff;
    padding: 0.5rem;
}

a.navbar-brand > img,
a.footer-logo > img {
    height: 50px;
    width: auto;
}

a.img-link img {
    width: 100%;
    height: auto;
}

.navbar {
    box-shadow: 0 0.35rem 1rem rgba(27, 20, 100, 0.18);
}

.navbar-dark .navbar-nav {
    gap: 0.15rem;
}

.navbar-dark .navbar-nav .nav-link {
    border-radius: 0.2rem;
    color: rgba(255, 255, 255, 0.86);
    font-size: 0.92rem;
    font-weight: var(--text-wght-m);
    letter-spacing: 0;
    padding: 0.72rem 0.88rem;
    transition: background-color 160ms ease, color 160ms ease;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .show > .nav-link {
    background-color: #0713f3;
    color: #fff;
}

.navbar-dark .navbar-nav .nav-link:focus-visible,
.navbar-nav .dropdown-menu .dropdown-item:focus-visible {
    outline: 2px solid #f0e56f;
    outline-offset: 2px;
}

.navbar-nav .dropdown-menu {
    min-width: 15.5rem;
    margin-top: 0.55rem;
    border: 1px solid rgba(27, 20, 100, 0.12);
    padding: 0.45rem;
    border-radius: 0.35rem;
    background-color: #fff;
    box-shadow: 0 1rem 2rem rgba(27, 20, 100, 0.22);
}

.navbar-nav .dropdown-menu .dropdown-item {
    border-radius: 0.25rem;
    color: #1b1464;
    font-size: 0.94rem;
    font-weight: var(--text-wght-r);
    line-height: 1.25;
    padding: 0.65rem 0.8rem;
    transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease;
}

.navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar-nav .dropdown-menu .dropdown-item:focus {
    background-color: #ebf4f9;
    box-shadow: inset 0.2rem 0 0 #0713f3;
    color: #0713f3;
}

.navbar-nav .dropdown-menu .dropdown-item.active,
.navbar-nav .dropdown-menu .dropdown-item:active {
    background-color: #0713f3;
    color: #fff;
}

.navbar-nav .dropdown-divider {
    border-top-color: rgba(27, 20, 100, 0.14);
    margin: 0.35rem 0;
}

.vid-container {
    position: relative;
}

.vid-container video, .vid-container iframe {
    border-bottom: 0.25rem solid #fff;
}

.vid-container .btn-play-container {
    position: absolute;
    right: 0;
    bottom: 7px;
    top: 0;
    left: 0;
    z-index: 300;
    border-bottom: 0.25rem solid #fff;
}

.vid-container .btn-play-container .btn-play {
    background-color: transparent;
    border: none;
    width: 100%;
    height: 100%;
    padding: 0;
}

.img-wrapper img {
    width: 100%;
    height: auto;
}

.iframe-container {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    border: 3px solid #fff;
}

.iframe-container > iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.footer-logos > li {
    list-style: none;
}

.footer-logos > li > a {
    height: 100%;
}

.footer-ul > li {
    list-style: none;
}

.footer-ul > li:last-child:after {
    display: none;
}

.footer-ul > li > a {
    color: #fff;
    font-size: 0.875rem;
    text-decoration: none;
}

@media screen and (min-width: 768px) {
    .footer-ul > li:after {
        content: '|';
        color: #fff;
        margin-right: 0.5rem;
    }
}

.hasHeight {
    min-height: 400px;
}

@media screen and (max-width: 767px) {
    .hasHeight {
        min-height: 350px;
    }
}

.hasHeight-2 {
    min-height: 56vh;
}

@media screen and (max-width: 767px) {
    .hasHeight-2 {
        min-height: 40vh;
    }
}

.hasFixedBg {
    background-image: url("../img/pattern.jpg");
    background-repeat: repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
}

@media screen and (max-width: 991px) {
    .hasFixedBg {
        background-size: 150% auto;
    }
}

@media screen and (max-width: 767px) {
    .hasFixedBg {
        background-size: 200% auto;
    }
}

.hasFixedBg.conf2021-bg {
    background-image: url("../img/conf2021/pattern-conf.jpg");
}

.hasFixedBg.conf2021-start-bg {
    background-image: url("../img/conf2021/pattern-conf-start.svg");
    background-position: top 36% center;
}

.hasFixedBg.conf2022-start-bg {
    background-image: url("../img/conf2022/pattern-conf-start.svg");
    background-position: top 36% center;
}

.hasFixedBg.conf2023-start-bg {
    background-image: url(../img/conf2023/pattern-conf-start.svg);
    background-position: top 0 left;
    background-size: auto;
    background-color: #29abe2 !important;
    background-repeat: no-repeat;
}

/* Match conference banner spacing and clear sticky navigation on anchor jumps. */
.hasFixedBg.conf2025-start-bg,
.hasFixedBg.conf2026-start-bg {
    padding-top: 1rem;
    scroll-margin-top: 6rem;
}

.hasFixedBg.conf2025-start-bg {
    background-image: none;
    /*background-position: top 76px left;*/
    /*background-size: auto;*/
    background-color: white !important;
    /*background-repeat: no-repeat;*/
}

.hasFixedBg.conf2026-start-bg {
    background-image: none;
    /*background-position: top 76px left;*/
    /*background-size: auto;*/
    background-color: white !important;
    /*background-repeat: no-repeat;*/
}

@media screen and (max-width: 767px) {
    .hasFixedBg.conf-start-bg {
        background-position: top 20% center;
    }
}

@media screen and (max-width: 575px) {
    .hasFixedBg.conf-start-bg {
        background-size: 280% auto;
        background-position: top 24% center;
    }
}

.hasBanner {
    background-image: url("../img/banner-pg-v2.png");
    background-position: center center;
}

.hasBanner.conf-banner {
    background-image: url("../img/conf2021/banner-conf-light-pg.png");
}

.dot:after {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #fff;
    margin-left: 0.6rem;
    margin-right: 0.5rem;
    position: relative;
    top: -3px;
}

.page-title {
    min-height: 150px;
    width: 50%;
}

.speaker-page-note {
    color: rgba(255, 255, 255, 0.88);
    font-size: 1rem;
    font-weight: var(--text-wght-r);
    line-height: 1.25;
    margin-top: 0.35rem;
}

.home-title {
    width: 55%;
}

@media screen and (max-width: 991px) {
    .home-title {
        width: 65%;
    }
}

@media screen and (max-width: 767px) {
    .home-title {
        width: 75%;
    }
}

@media screen and (max-width: 575px) {
    .home-title {
        width: 85%;
    }
}

.st-nav {
    position: sticky !important;
    top: 100px;
}

.st-nav > ul {
    margin: 0;
    padding: 0;
}

.st-nav > ul > li {
    list-style: none;
}

.p-anchor {
    padding-top: 6rem !important;
}

.partner-list > li {
    list-style: none;
}

.partner-list > li > a {
    border: 2px solid #0000fe;
    border-radius: 0;
}

.partner-list > li > a:focus {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5) !important;
}

.partner-list > li > a > div.bg-white {
    height: 100px;
}

.list-style-none > li {
    list-style: none;
}

.publication-list > li {
    position: relative;
    padding-left: 4rem;
}

.publication-list > li > svg {
    position: absolute;
    top: 1px;
    left: 0;
}

.publication-list.useful-link-list > li {
    padding-left: 3rem;
}

.publication-list.useful-link-list > li > svg {
    top: 5px;
}

.list-group-horizontal > .list-group-item {
    border: 1px solid #0000fe;
}

.list-group-horizontal > .list-group-item > a {
    color: #0000fe;
}

.list-group-horizontal > .list-group-item > a:hover {
    text-decoration: underline !important;
}

.list-group-horizontal > .list-group-item > a abbr {
    text-decoration: none;
}

.list-group-horizontal > .list-group-item:first-child {
    border-bottom-left-radius: 2rem;
    border-top-left-radius: 2rem;
}

.list-group-horizontal > .list-group-item:last-child {
    border-bottom-right-radius: 2rem;
    border-top-right-radius: 2rem;
}

@media screen and (max-width: 350px) {
    .list-group-horizontal {
        flex-direction: column;
    }

    .list-group-horizontal > .list-group-item {
        border-left-width: 1px !important;
        border-top-width: 0px !important;
    }

    .list-group-horizontal > .list-group-item:first-child {
        border-top-width: 1px !important;
        border-bottom-left-radius: 0 !important;
        border-top-left-radius: 1.5rem !important;
        border-top-right-radius: 1.5rem !important;
    }

    .list-group-horizontal > .list-group-item:last-child {
        border-top-right-radius: 0 !important;
        border-bottom-right-radius: 1.5rem !important;
        border-bottom-left-radius: 1.5rem !important;
    }

    .list-group-horizontal > .list-group-item > a {
        display: inline-block;
        width: 100%;
    }
}

.list-group.big-link-list {
    border-radius: 0;
}

.list-group.big-link-list > .list-group-item {
    border: 1px solid #0000fe;
    margin-bottom: 0.5rem;
    border-radius: 2rem;
}

.list-group.big-link-list > .list-group-item > a {
    width: 100%;
}

.list-group.big-link-list > .list-group-item > a:hover .txt-elecblue {
    text-decoration: underline !important;
}

.list-group.colored-simple-list {
    border-radius: 0;
}

.list-group.colored-simple-list > .list-group-item {
    border: none;
}

.speaker-list .card {
    background-color: #154295;
    border: 2px solid #154295;
    border-radius: 0;
    width: 100%;
}

.speaker-list > li .card .card-body h2, .speaker-list > li .card .card-body p {
    color: #fff !important;
}

.speaker-list .card .img-wrapper {
    display: flex;
    justify-content: center;
}

.speaker-list .card .img-wrapper img {
    width: 180px;
    height: 180px;
    border-radius: 50%;
}

.speaker-list .card .card-footer {
    background-color: #154295 !important;
    color: #fff;
    border: none;
}

.speaker-list .card .card-footer button {
    border: none !important;
    background-color: #fff !important;
    color: #154295 !important;
}

.speaker-list > li.highlighted .card {
    background-color: #0000fe;
}

.speaker-list > li.highlighted .card .card-body h2, .speaker-list > li.highlighted .card .card-body p {
    color: #fff !important;
}

.speaker-list > li.highlighted .card .card-footer {
    background-color: #0000fe !important;
}

.speaker-list > li.highlighted .card .card-footer button {
    /* background-color: #fff !important; */
    color: #0000fe !important;
}

/* .speaker-list > li.highlighted .card .card-footer button:focus {
  box-shadow: 0 0 0 0.25rem black, 0 0 0 0.32rem white; }  */

.swiper-wrapper {
    margin: 0;
    padding: 0;
}

.swiper-wrapper > li {
    list-style: none;
    margin-right: 1rem;
}

.swiper-wrapper > li > button {
    display: inline-block;
    width: 150px;
}

.swiper-wrapper > li > button img {
    display: inline-block;
    width: 100%;
    height: auto;
}

/*.swiper-wrapper>li>a {
  display: inline-block;
  width: 150px;
  height: 150px;
}*/
.swiper-slide {
    width: 150px;
}

.swiper-slide > button {
    background-color: transparent;
    border: 2px solid #0000fe;
    height: 150px;
}

.swiper-slide > button:focus {
    box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.swiper-slide > button > div {
    position: absolute;
    top: 0;
    left: 0;
}

.swiper-slide > button p {
    color: #0000fe;
    text-align: left;
    line-height: 1rem;
    font-size: .8rem;
}

.swiper-slide > button.active {
    background-color: #0000fe;
}

.swiper-slide > button.active p {
    color: #fff;
}

.slide-player-2025,
.slide-player-2023,
.slide-player-2022,
.slide-player-2021,
.slide-player-one,
.slide-player-two,
.speakers-slider {
    position: relative;
}

.speakers-slider .swiper-slide {
    width: 240px;
}

.speakers-slider .swiper-slide img {
    width: 240px;
    height: 240px;
    border-radius: 50%;
}

@media screen and (max-width: 991px) {
    .speakers-slider .swiper-slide {
        width: 200px;
    }

    .speakers-slider .swiper-slide img {
        width: 200px;
        height: 200px;
    }
}

@media screen and (max-width: 575px) {
    .speakers-slider .swiper-slide {
        width: 180px;
    }

    .speakers-slider .swiper-slide img {
        width: 180px;
        height: 180px;
    }
}

.swiper-button-prev,
.swiper-button-next {
    background-image: none;
    width: 44px;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.5) !important;
}

.swiper-button-prev:focus,
.swiper-button-next:focus {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.5), 0 0 0 0.25rem rgba(49, 132, 253, 0.5) !important;
}

.swiper-button-prev {
    left: 1rem;
}

.swiper-button-next {
    right: 1rem;
}

video, iframe {
    width: 100%;
    height: auto;
}

#video-wrapper-two > video,
#video-wrapper-one > video {
    border: 3px solid #fff;
}

.back-to-top-btn {
    position: fixed;
    right: 1rem;
    bottom: 3rem;
    z-index: 300;
    display: none;
    background-color: #fff;
}

.nav-special-link {
    border-radius: 2rem;
}

.btn {
    border-radius: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.btn.btn-primary {
    background-color: #0713f3 !important;
    border-color: #0713f3 !important;
}

.btn.btn-primary:hover {
    background-color: #1b1464 !important;
    border-color: #1b1464 !important;
}

.btn.btn-outline-primary {
    color: #0713f3 !important;
    border-color: #0713f3 !important;
    background-color: #fff !important;
}

.btn.btn-outline-primary:hover {
    color: #fff !important;
    background-color: #0713f3 !important;
}

.btn.btn-outline-primary:focus {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5) !important;
}

.btn.btn-yellow {
    color: #1b1464;
    background-color: #f0e56f;
}

.btn.btn-yellow:hover {
    background-color: #1b1464;
    color: #fff;
}

.btn.btn-lg.text-uppercase > span {
    position: relative;
    top: 1px;
}

.btn-magnify > button {
    font-size: 1.25rem;
    border-radius: 0 !important;
    background-color: #f0f0f0;
    padding-top: 0.1rem !important;
    padding-bottom: 0.1rem !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

.btn-magnify > button.active {
    background-color: #1b1464;
    color: #fff;
}

.btn-magnify > button.btn-sm {
    font-size: 1rem;
}

.btn-magnify > button.btn-lg {
    font-size: 1.5rem;
}

.txt-1 {
    font-size: 1rem !important;
}

.txt-1-25 {
    font-size: 1.25rem !important;
}

.txt-1-5 {
    font-size: 1.5rem !important;
}

.has-img-wrapper {
    position: relative;
}

.has-img-wrapper .img-wrapper {
    position: absolute;
    width: 50%;
    height: 100%;
    overflow: hidden;
}

.has-img-wrapper .img-wrapper img {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 767px) {
    .has-img-wrapper .img-wrapper {
        position: inherit;
        width: 100%;
        height: 300px;
    }
}

.txt-condensed {
    letter-spacing: -2px;
}

.txt-red {
    color: #ff0000;
}

.txt-bold {
    font-weight: var(--text-wght-b);
}

.txt-italic {
    font-style: var(--text-ital-base);
}

.txt-semibold {
    font-weight: var(--text-wght-sb);
}

.timeline .name:before {
    content: '';
    display: inline-block;
    width: 5px !important;
    height: 5px !important;
    border-radius: 50%;
    background-color: #1b1464;
    margin-right: 0.25rem;
    position: relative;
    top: -2px;
}

.timeline li {
    list-style: none;
}

.timeline > li {
    position: relative;
    list-style: none;
}

.timeline > li .timing time,
.timeline > li h3 {
    color: #0000fe;
}

.timeline > li p {
    color: #1b1464;
}

.timeline > li.border-primary {
    border-color: #0000fe !important;
}

.timeline > li.bullet:before, .timeline > li:last-child:after {
    content: '';
    position: absolute;
    background-color: #0000fe;
}

.timeline > li.box {
    border: 1px solid;
    text-align: center;
    padding-bottom: 0 !important;
}

.timeline > li.bullet:before {
    top: 28px;
    left: -8px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
}

.timeline > li:last-child {
    border: none !important;
}

.timeline > li:last-child:after {
    width: 1px;
    height: 2rem;
    top: -10px;
    left: 0;
}

/* .timeline > li:first-child:before {
  top: 1.75rem; } */

.modal .crux-btn {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
}

.modal-dialog .modal-content {
    border-radius: 0;
}

.modal-dialog .modal-content .modal-header {
    border-bottom: 1px solid #0000fe;
}

.modal-dialog .modal-content .modal-footer {
    border-top: 1px solid #0000fe;
}
