﻿*,
*::before,
*::after {
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: transparent
}

@-ms-viewport {
    width: device-width
}

article,
aside,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
    display: block
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff
}

[tabindex="-1"]:focus {
    outline: 0 !important
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: .5rem
}

p {
    margin-top: 0;
    margin-bottom: 1rem
}

abbr[title],
abbr[data-original-title] {
    text-decoration: underline;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

dd {
    margin-bottom: .5rem;
    margin-left: 0
}

blockquote {
    margin: 0 0 1rem
}

dfn {
    font-style: italic
}

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: #007bff;
    text-decoration: none;
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:hover {
    color: #0056b3;
    text-decoration: underline
}

a:not([href]):not([tabindex]) {
    color: inherit;
    text-decoration: none
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
    color: inherit;
    text-decoration: none
}

a:not([href]):not([tabindex]):focus {
    outline: 0
}

pre,
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    -ms-overflow-style: scrollbar
}

figure {
    margin: 0 0 1rem
}

img {
    vertical-align: middle;
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

table {
    border-collapse: collapse
}

caption {
    padding-top: .75rem;
    padding-bottom: .75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom
}

th {
    text-align: inherit
}

label {
    display: inline-block;
    margin-bottom: .5rem
}

button {
    border-radius: 0
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none
}

input[type="radio"],
input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
    -webkit-appearance: listbox
}

textarea {
    overflow: auto;
    resize: vertical
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal
}

progress {
    vertical-align: baseline
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    outline-offset: -2px;
    -webkit-appearance: none
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

output {
    display: inline-block
}

summary {
    display: list-item;
    cursor: pointer
}

template {
    display: none
}

[hidden] {
    display: none !important
}

.evid {
    font-size: 1.4em;
}

.img-fluid {
    max-width: 100%;
    height: auto
}

.img-thumbnail {
    padding: .25rem;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: .25rem;
    max-width: 100%;
    height: auto
}

.figure {
    display: inline-block
}

.figure-img {
    margin-bottom: .5rem;
    line-height: 1
}

.figure-caption {
    font-size: 90%;
    color: #6c757d
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 576px) {
    .container {
        max-width: 540px
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 720px
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px
    }
}

.container-fluid {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*="col-"] {
    padding-right: 0;
    padding-left: 0
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm,
.col-sm-auto,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md,
.col-md-auto,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg,
.col-lg-auto,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.col-xl-auto {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none
}

.col-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    order: -1
}

.order-last {
    order: 13
}

.order-0 {
    order: 0
}

.order-1 {
    order: 1
}

.order-2 {
    order: 2
}

.order-3 {
    order: 3
}

.order-4 {
    order: 4
}

.order-5 {
    order: 5
}

.order-6 {
    order: 6
}

.order-7 {
    order: 7
}

.order-8 {
    order: 8
}

.order-9 {
    order: 9
}

.order-10 {
    order: 10
}

.order-11 {
    order: 11
}

.order-12 {
    order: 12
}

.offset-1 {
    margin-left: 8.33333%
}

.offset-2 {
    margin-left: 16.66667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333%
}

.offset-5 {
    margin-left: 41.66667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333%
}

.offset-8 {
    margin-left: 66.66667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333%
}

.offset-11 {
    margin-left: 91.66667%
}

@media (min-width: 576px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }
    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }
    .col-sm-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .col-sm-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-sm-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .col-sm-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-sm-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .col-sm-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-sm-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .col-sm-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-sm-first {
        order: -1
    }
    .order-sm-last {
        order: 13
    }
    .order-sm-0 {
        order: 0
    }
    .order-sm-1 {
        order: 1
    }
    .order-sm-2 {
        order: 2
    }
    .order-sm-3 {
        order: 3
    }
    .order-sm-4 {
        order: 4
    }
    .order-sm-5 {
        order: 5
    }
    .order-sm-6 {
        order: 6
    }
    .order-sm-7 {
        order: 7
    }
    .order-sm-8 {
        order: 8
    }
    .order-sm-9 {
        order: 9
    }
    .order-sm-10 {
        order: 10
    }
    .order-sm-11 {
        order: 11
    }
    .order-sm-12 {
        order: 12
    }
    .offset-sm-0 {
        margin-left: 0
    }
    .offset-sm-1 {
        margin-left: 8.33333%
    }
    .offset-sm-2 {
        margin-left: 16.66667%
    }
    .offset-sm-3 {
        margin-left: 25%
    }
    .offset-sm-4 {
        margin-left: 33.33333%
    }
    .offset-sm-5 {
        margin-left: 41.66667%
    }
    .offset-sm-6 {
        margin-left: 50%
    }
    .offset-sm-7 {
        margin-left: 58.33333%
    }
    .offset-sm-8 {
        margin-left: 66.66667%
    }
    .offset-sm-9 {
        margin-left: 75%
    }
    .offset-sm-10 {
        margin-left: 83.33333%
    }
    .offset-sm-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 768px) {
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }
    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }
    .col-md-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .col-md-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-md-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .col-md-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-md-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .col-md-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-md-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .col-md-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-md-first {
        order: -1
    }
    .order-md-last {
        order: 13
    }
    .order-md-0 {
        order: 0
    }
    .order-md-1 {
        order: 1
    }
    .order-md-2 {
        order: 2
    }
    .order-md-3 {
        order: 3
    }
    .order-md-4 {
        order: 4
    }
    .order-md-5 {
        order: 5
    }
    .order-md-6 {
        order: 6
    }
    .order-md-7 {
        order: 7
    }
    .order-md-8 {
        order: 8
    }
    .order-md-9 {
        order: 9
    }
    .order-md-10 {
        order: 10
    }
    .order-md-11 {
        order: 11
    }
    .order-md-12 {
        order: 12
    }
    .offset-md-0 {
        margin-left: 0
    }
    .offset-md-1 {
        margin-left: 8.33333%
    }
    .offset-md-2 {
        margin-left: 16.66667%
    }
    .offset-md-3 {
        margin-left: 25%
    }
    .offset-md-4 {
        margin-left: 33.33333%
    }
    .offset-md-5 {
        margin-left: 41.66667%
    }
    .offset-md-6 {
        margin-left: 50%
    }
    .offset-md-7 {
        margin-left: 58.33333%
    }
    .offset-md-8 {
        margin-left: 66.66667%
    }
    .offset-md-9 {
        margin-left: 75%
    }
    .offset-md-10 {
        margin-left: 83.33333%
    }
    .offset-md-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 992px) {
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }
    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }
    .col-lg-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .col-lg-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-lg-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .col-lg-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-lg-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .col-lg-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-lg-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .col-lg-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-lg-first {
        order: -1
    }
    .order-lg-last {
        order: 13
    }
    .order-lg-0 {
        order: 0
    }
    .order-lg-1 {
        order: 1
    }
    .order-lg-2 {
        order: 2
    }
    .order-lg-3 {
        order: 3
    }
    .order-lg-4 {
        order: 4
    }
    .order-lg-5 {
        order: 5
    }
    .order-lg-6 {
        order: 6
    }
    .order-lg-7 {
        order: 7
    }
    .order-lg-8 {
        order: 8
    }
    .order-lg-9 {
        order: 9
    }
    .order-lg-10 {
        order: 10
    }
    .order-lg-11 {
        order: 11
    }
    .order-lg-12 {
        order: 12
    }
    .offset-lg-0 {
        margin-left: 0
    }
    .offset-lg-1 {
        margin-left: 8.33333%
    }
    .offset-lg-2 {
        margin-left: 16.66667%
    }
    .offset-lg-3 {
        margin-left: 25%
    }
    .offset-lg-4 {
        margin-left: 33.33333%
    }
    .offset-lg-5 {
        margin-left: 41.66667%
    }
    .offset-lg-6 {
        margin-left: 50%
    }
    .offset-lg-7 {
        margin-left: 58.33333%
    }
    .offset-lg-8 {
        margin-left: 66.66667%
    }
    .offset-lg-9 {
        margin-left: 75%
    }
    .offset-lg-10 {
        margin-left: 83.33333%
    }
    .offset-lg-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1200px) {
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }
    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }
    .col-xl-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .col-xl-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%
    }
    .col-xl-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .col-xl-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%
    }
    .col-xl-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .col-xl-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%
    }
    .col-xl-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .col-xl-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%
    }
    .order-xl-first {
        order: -1
    }
    .order-xl-last {
        order: 13
    }
    .order-xl-0 {
        order: 0
    }
    .order-xl-1 {
        order: 1
    }
    .order-xl-2 {
        order: 2
    }
    .order-xl-3 {
        order: 3
    }
    .order-xl-4 {
        order: 4
    }
    .order-xl-5 {
        order: 5
    }
    .order-xl-6 {
        order: 6
    }
    .order-xl-7 {
        order: 7
    }
    .order-xl-8 {
        order: 8
    }
    .order-xl-9 {
        order: 9
    }
    .order-xl-10 {
        order: 10
    }
    .order-xl-11 {
        order: 11
    }
    .order-xl-12 {
        order: 12
    }
    .offset-xl-0 {
        margin-left: 0
    }
    .offset-xl-1 {
        margin-left: 8.33333%
    }
    .offset-xl-2 {
        margin-left: 16.66667%
    }
    .offset-xl-3 {
        margin-left: 25%
    }
    .offset-xl-4 {
        margin-left: 33.33333%
    }
    .offset-xl-5 {
        margin-left: 41.66667%
    }
    .offset-xl-6 {
        margin-left: 50%
    }
    .offset-xl-7 {
        margin-left: 58.33333%
    }
    .offset-xl-8 {
        margin-left: 66.66667%
    }
    .offset-xl-9 {
        margin-left: 75%
    }
    .offset-xl-10 {
        margin-left: 83.33333%
    }
    .offset-xl-11 {
        margin-left: 91.66667%
    }
}

.fade {
    transition: opacity 0.15s linear
}

@media screen and (prefers-reduced-motion: reduce) {
    .fade {
        transition: none
    }
}

.fade:not(.show) {
    opacity: 0
}

.collapse:not(.show) {
    display: none
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    transition: height 0.35s ease
}

@media screen and (prefers-reduced-motion: reduce) {
    .collapsing {
        transition: none
    }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
    position: relative
}

.dropdown-toggle::after {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent
}

.dropdown-toggle:empty::after {
    margin-left: 0
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: .25rem
}

.dropdown-menu-right {
    right: 0;
    left: auto
}

.dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: .125rem
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: 0;
    border-right: .3em solid transparent;
    border-bottom: .3em solid;
    border-left: .3em solid transparent
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropright .dropdown-menu {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: .125rem
}

.dropright .dropdown-toggle::after {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: 0;
    border-bottom: .3em solid transparent;
    border-left: .3em solid
}

.dropright .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropright .dropdown-toggle::after {
    vertical-align: 0
}

.dropleft .dropdown-menu {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: .125rem
}

.dropleft .dropdown-toggle::after {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: .255em;
    vertical-align: .255em;
    content: ""
}

.dropleft .dropdown-toggle::after {
    display: none
}

.dropleft .dropdown-toggle::before {
    display: inline-block;
    width: 0;
    height: 0;
    margin-right: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: .3em solid;
    border-bottom: .3em solid transparent
}

.dropleft .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropleft .dropdown-toggle::before {
    vertical-align: 0
}

.dropdown-menu[x-placement^="top"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"] {
    right: auto;
    bottom: auto
}

.dropdown-divider {
    height: 0;
    margin: .5rem 0;
    overflow: hidden;
    border-top: 1px solid #e9ecef
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1.5rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: #16181b;
    text-decoration: none;
    background-color: #f8f9fa
}

.dropdown-item.active,
.dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #007bff
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: #6c757d;
    background-color: transparent
}

.dropdown-menu.show {
    display: block
}

.dropdown-header {
    display: block;
    padding: .5rem 1.5rem;
    margin-bottom: 0;
    font-size: .875rem;
    color: #6c757d;
    white-space: nowrap
}

.dropdown-item-text {
    display: block;
    padding: .25rem 1.5rem;
    color: #212529
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none
}

.nav-link {
    display: block;
    padding: .5rem 1rem
}

.nav-link:hover,
.nav-link:focus {
    text-decoration: none
}

.nav-link.disabled {
    color: #6c757d
}

.nav-tabs {
    border-bottom: 1px solid #dee2e6
}

.nav-tabs .nav-item {
    margin-bottom: -1px
}

.nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
    border-color: #e9ecef #e9ecef #dee2e6
}

.nav-tabs .nav-link.disabled {
    color: #6c757d;
    background-color: transparent;
    border-color: transparent
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff
}

.nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.nav-pills .nav-link {
    border-radius: .25rem
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: #fff;
    background-color: #007bff
}

.nav-fill .nav-item {
    flex: 1 1 auto;
    text-align: center
}

.nav-justified .nav-item {
    flex-basis: 0;
    flex-grow: 1;
    text-align: center
}

.tab-content>.tab-pane {
    display: none
}

.tab-content>.active {
    display: block
}

.navbar {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: .5rem 1rem
}

.navbar>.container,
.navbar>.container-fluid {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between
}

.navbar-brand {
    display: inline-block;
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    line-height: inherit;
    white-space: nowrap
}

.navbar-brand:hover,
.navbar-brand:focus {
    text-decoration: none
}

.navbar-nav {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none
}

.navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0
}

.navbar-nav .dropdown-menu {
    position: static;
    float: none
}

.navbar-text {
    display: inline-block;
    padding-top: .5rem;
    padding-bottom: .5rem
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center
}

.navbar-toggler {
    padding: .25rem .75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: .25rem
}

.navbar-toggler:hover,
.navbar-toggler:focus {
    text-decoration: none
}

.navbar-toggler:not(:disabled):not(.disabled) {
    cursor: pointer
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    content: "";
    background: no-repeat center center;
    background-size: 100% 100%
}

@media (max-width: 575.98px) {
    .navbar-expand-sm>.container,
    .navbar-expand-sm>.container-fluid {
        padding-right: 0;
        padding-left: 0
    }
}

@media (min-width: 576px) {
    .navbar-expand-sm {
        flex-flow: row nowrap;
        justify-content: flex-start
    }
    .navbar-expand-sm .navbar-nav {
        flex-direction: row
    }
    .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute
    }
    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }
    .navbar-expand-sm>.container,
    .navbar-expand-sm>.container-fluid {
        flex-wrap: nowrap
    }
    .navbar-expand-sm .navbar-collapse {
        display: flex !important;
        flex-basis: auto
    }
    .navbar-expand-sm .navbar-toggler {
        display: none
    }
}

@media (max-width: 767.98px) {
    .navbar-expand-md>.container,
    .navbar-expand-md>.container-fluid {
        padding-right: 0;
        padding-left: 0
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        flex-flow: row nowrap;
        justify-content: flex-start
    }
    .navbar-expand-md .navbar-nav {
        flex-direction: row
    }
    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute
    }
    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }
    .navbar-expand-md>.container,
    .navbar-expand-md>.container-fluid {
        flex-wrap: nowrap
    }
    .navbar-expand-md .navbar-collapse {
        display: flex !important;
        flex-basis: auto
    }
    .navbar-expand-md .navbar-toggler {
        display: none
    }
}

@media (max-width: 991.98px) {
    .navbar-expand-lg>.container,
    .navbar-expand-lg>.container-fluid {
        padding-right: 0;
        padding-left: 0
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        flex-flow: row nowrap;
        justify-content: flex-start
    }
    .navbar-expand-lg .navbar-nav {
        flex-direction: row
    }
    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }
    .navbar-expand-lg>.container,
    .navbar-expand-lg>.container-fluid {
        flex-wrap: nowrap
    }
    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto
    }
    .navbar-expand-lg .navbar-toggler {
        display: none
    }
}

@media (max-width: 1199.98px) {
    .navbar-expand-xl>.container,
    .navbar-expand-xl>.container-fluid {
        padding-right: 0;
        padding-left: 0
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        flex-flow: row nowrap;
        justify-content: flex-start
    }
    .navbar-expand-xl .navbar-nav {
        flex-direction: row
    }
    .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute
    }
    .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }
    .navbar-expand-xl>.container,
    .navbar-expand-xl>.container-fluid {
        flex-wrap: nowrap
    }
    .navbar-expand-xl .navbar-collapse {
        display: flex !important;
        flex-basis: auto
    }
    .navbar-expand-xl .navbar-toggler {
        display: none
    }
}

.navbar-expand {
    flex-flow: row nowrap;
    justify-content: flex-start
}

.navbar-expand>.container,
.navbar-expand>.container-fluid {
    padding-right: 0;
    padding-left: 0
}

.navbar-expand .navbar-nav {
    flex-direction: row
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: absolute
}

.navbar-expand .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem
}

.navbar-expand>.container,
.navbar-expand>.container-fluid {
    flex-wrap: nowrap
}

.navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto
}

.navbar-expand .navbar-toggler {
    display: none
}

.navbar-light .navbar-brand {
    color: rgba(0, 0, 0, 0.9)
}

.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
    color: rgba(0, 0, 0, 0.9)
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 0.5)
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7)
}

.navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3)
}

.navbar-light .navbar-nav .show>.nav-link,
.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
    color: rgba(0, 0, 0, 0.9)
}

.navbar-light .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border-color: rgba(0, 0, 0, 0.1)
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,0,0,0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")
}

.navbar-light .navbar-text {
    color: rgba(0, 0, 0, 0.5)
}

.navbar-light .navbar-text a {
    color: rgba(0, 0, 0, 0.9)
}

.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
    color: rgba(0, 0, 0, 0.9)
}

.navbar-dark .navbar-brand {
    color: #fff
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
    color: #fff
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.5)
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.75)
}

.navbar-dark .navbar-nav .nav-link.disabled {
    color: rgba(255, 255, 255, 0.25)
}

.navbar-dark .navbar-nav .show>.nav-link,
.navbar-dark .navbar-nav .active>.nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
    color: #fff
}

.navbar-dark .navbar-toggler {
    color: rgba(255, 255, 255, 0.5);
    border-color: rgba(255, 255, 255, 0.1)
}

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")
}

.navbar-dark .navbar-text {
    color: rgba(255, 255, 255, 0.5)
}

.navbar-dark .navbar-text a {
    color: #fff
}

.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
    color: #fff
}

.carousel {
    position: relative
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden
}

.carousel-item {
    position: relative;
    display: none;
    align-items: center;
    width: 100%;
    transition: transform 0.6s ease;
    backface-visibility: hidden;
    perspective: 1000px
}

@media screen and (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition: none
    }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
    display: block
}

.carousel-item-next,
.carousel-item-prev {
    position: absolute;
    top: 0
}

.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
    transform: translateX(0)
}

@supports (transform-style: preserve-3d) {
    .carousel-item-next.carousel-item-left,
    .carousel-item-prev.carousel-item-right {
        transform: translate3d(0, 0, 0)
    }
}

.carousel-item-next,
.active.carousel-item-right {
    transform: translateX(100%)
}

@supports (transform-style: preserve-3d) {
    .carousel-item-next,
    .active.carousel-item-right {
        transform: translate3d(100%, 0, 0)
    }
}

.carousel-item-prev,
.active.carousel-item-left {
    transform: translateX(-100%)
}

@supports (transform-style: preserve-3d) {
    .carousel-item-prev,
    .active.carousel-item-left {
        transform: translate3d(-100%, 0, 0)
    }
}

.carousel-fade .carousel-item {
    opacity: 0;
    transition-duration: .6s;
    transition-property: opacity
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
    opacity: 1
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    opacity: 0
}

.carousel-fade .carousel-item-next,
.carousel-fade .carousel-item-prev,
.carousel-fade .carousel-item.active,
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-prev {
    transform: translateX(0)
}

@supports (transform-style: preserve-3d) {
    .carousel-fade .carousel-item-next,
    .carousel-fade .carousel-item-prev,
    .carousel-fade .carousel-item.active,
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-prev {
        transform: translate3d(0, 0, 0)
    }
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    color: #fff;
    text-align: center;
    opacity: .5
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: .9
}

.carousel-control-prev {
    left: 0
}

.carousel-control-next {
    right: 0
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: transparent no-repeat center center;
    background-size: 100% 100%
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 10px;
    left: 0;
    z-index: 15;
    display: flex;
    justify-content: center;
    padding-left: 0;
    margin-right: 15%;
    margin-left: 15%;
    list-style: none
}

.carousel-indicators li {
    position: relative;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    background-color: rgba(255, 255, 255, 0.5)
}

.carousel-indicators li::before {
    position: absolute;
    top: -10px;
    left: 0;
    display: inline-block;
    width: 100%;
    height: 10px;
    content: ""
}

.carousel-indicators li::after {
    position: absolute;
    bottom: -10px;
    left: 0;
    display: inline-block;
    width: 100%;
    height: 10px;
    content: ""
}

.carousel-indicators .active {
    background-color: #fff
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 20px;
    left: 15%;
    z-index: 10;
    padding-top: 20px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center
}

.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-table {
    display: table !important
}

.d-table-row {
    display: table-row !important
}

.d-table-cell {
    display: table-cell !important
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}

@media (min-width: 576px) {
    .d-sm-none {
        display: none !important
    }
    .d-sm-inline {
        display: inline !important
    }
    .d-sm-inline-block {
        display: inline-block !important
    }
    .d-sm-block {
        display: block !important
    }
    .d-sm-table {
        display: table !important
    }
    .d-sm-table-row {
        display: table-row !important
    }
    .d-sm-table-cell {
        display: table-cell !important
    }
    .d-sm-flex {
        display: flex !important
    }
    .d-sm-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none !important
    }
    .d-md-inline {
        display: inline !important
    }
    .d-md-inline-block {
        display: inline-block !important
    }
    .d-md-block {
        display: block !important
    }
    .d-md-table {
        display: table !important
    }
    .d-md-table-row {
        display: table-row !important
    }
    .d-md-table-cell {
        display: table-cell !important
    }
    .d-md-flex {
        display: flex !important
    }
    .d-md-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 992px) {
    .d-lg-none {
        display: none !important
    }
    .d-lg-inline {
        display: inline !important
    }
    .d-lg-inline-block {
        display: inline-block !important
    }
    .d-lg-block {
        display: block !important
    }
    .d-lg-table {
        display: table !important
    }
    .d-lg-table-row {
        display: table-row !important
    }
    .d-lg-table-cell {
        display: table-cell !important
    }
    .d-lg-flex {
        display: flex !important
    }
    .d-lg-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 1200px) {
    .d-xl-none {
        display: none !important
    }
    .d-xl-inline {
        display: inline !important
    }
    .d-xl-inline-block {
        display: inline-block !important
    }
    .d-xl-block {
        display: block !important
    }
    .d-xl-table {
        display: table !important
    }
    .d-xl-table-row {
        display: table-row !important
    }
    .d-xl-table-cell {
        display: table-cell !important
    }
    .d-xl-flex {
        display: flex !important
    }
    .d-xl-inline-flex {
        display: inline-flex !important
    }
}

@media print {
    .d-print-none {
        display: none !important
    }
    .d-print-inline {
        display: inline !important
    }
    .d-print-inline-block {
        display: inline-block !important
    }
    .d-print-block {
        display: block !important
    }
    .d-print-table {
        display: table !important
    }
    .d-print-table-row {
        display: table-row !important
    }
    .d-print-table-cell {
        display: table-cell !important
    }
    .d-print-flex {
        display: flex !important
    }
    .d-print-inline-flex {
        display: inline-flex !important
    }
}

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden
}

.embed-responsive::before {
    display: block;
    content: ""
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.embed-responsive-21by9::before {
    padding-top: 42.85714%
}

.embed-responsive-16by9::before {
    padding-top: 56.25%
}

.embed-responsive-4by3::before {
    padding-top: 75%
}

.embed-responsive-1by1::before {
    padding-top: 100%
}

.flex-row {
    flex-direction: row !important
}

.flex-column {
    flex-direction: column !important
}

.flex-row-reverse {
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    flex-direction: column-reverse !important
}

.flex-wrap {
    flex-wrap: wrap !important
}

.flex-nowrap {
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    flex: 1 1 auto !important
}

.flex-grow-0 {
    flex-grow: 0 !important
}

.flex-grow-1 {
    flex-grow: 1 !important
}

.flex-shrink-0 {
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    flex-shrink: 1 !important
}

.justify-content-start {
    justify-content: flex-start !important
}

.justify-content-end {
    justify-content: flex-end !important
}

.justify-content-center {
    justify-content: center !important
}

.justify-content-between {
    justify-content: space-between !important
}

.justify-content-around {
    justify-content: space-around !important
}

.align-items-start {
    align-items: flex-start !important
}

.align-items-end {
    align-items: flex-end !important
}

.align-items-center {
    align-items: center !important
}

.align-items-baseline {
    align-items: baseline !important
}

.align-items-stretch {
    align-items: stretch !important
}

.align-content-start {
    align-content: flex-start !important
}

.align-content-end {
    align-content: flex-end !important
}

.align-content-center {
    align-content: center !important
}

.align-content-between {
    align-content: space-between !important
}

.align-content-around {
    align-content: space-around !important
}

.align-content-stretch {
    align-content: stretch !important
}

.align-self-auto {
    align-self: auto !important
}

.align-self-start {
    align-self: flex-start !important
}

.align-self-end {
    align-self: flex-end !important
}

.align-self-center {
    align-self: center !important
}

.align-self-baseline {
    align-self: baseline !important
}

.align-self-stretch {
    align-self: stretch !important
}

@media (min-width: 576px) {
    .flex-sm-row {
        flex-direction: row !important
    }
    .flex-sm-column {
        flex-direction: column !important
    }
    .flex-sm-row-reverse {
        flex-direction: row-reverse !important
    }
    .flex-sm-column-reverse {
        flex-direction: column-reverse !important
    }
    .flex-sm-wrap {
        flex-wrap: wrap !important
    }
    .flex-sm-nowrap {
        flex-wrap: nowrap !important
    }
    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }
    .flex-sm-fill {
        flex: 1 1 auto !important
    }
    .flex-sm-grow-0 {
        flex-grow: 0 !important
    }
    .flex-sm-grow-1 {
        flex-grow: 1 !important
    }
    .flex-sm-shrink-0 {
        flex-shrink: 0 !important
    }
    .flex-sm-shrink-1 {
        flex-shrink: 1 !important
    }
    .justify-content-sm-start {
        justify-content: flex-start !important
    }
    .justify-content-sm-end {
        justify-content: flex-end !important
    }
    .justify-content-sm-center {
        justify-content: center !important
    }
    .justify-content-sm-between {
        justify-content: space-between !important
    }
    .justify-content-sm-around {
        justify-content: space-around !important
    }
    .align-items-sm-start {
        align-items: flex-start !important
    }
    .align-items-sm-end {
        align-items: flex-end !important
    }
    .align-items-sm-center {
        align-items: center !important
    }
    .align-items-sm-baseline {
        align-items: baseline !important
    }
    .align-items-sm-stretch {
        align-items: stretch !important
    }
    .align-content-sm-start {
        align-content: flex-start !important
    }
    .align-content-sm-end {
        align-content: flex-end !important
    }
    .align-content-sm-center {
        align-content: center !important
    }
    .align-content-sm-between {
        align-content: space-between !important
    }
    .align-content-sm-around {
        align-content: space-around !important
    }
    .align-content-sm-stretch {
        align-content: stretch !important
    }
    .align-self-sm-auto {
        align-self: auto !important
    }
    .align-self-sm-start {
        align-self: flex-start !important
    }
    .align-self-sm-end {
        align-self: flex-end !important
    }
    .align-self-sm-center {
        align-self: center !important
    }
    .align-self-sm-baseline {
        align-self: baseline !important
    }
    .align-self-sm-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 768px) {
    .flex-md-row {
        flex-direction: row !important
    }
    .flex-md-column {
        flex-direction: column !important
    }
    .flex-md-row-reverse {
        flex-direction: row-reverse !important
    }
    .flex-md-column-reverse {
        flex-direction: column-reverse !important
    }
    .flex-md-wrap {
        flex-wrap: wrap !important
    }
    .flex-md-nowrap {
        flex-wrap: nowrap !important
    }
    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }
    .flex-md-fill {
        flex: 1 1 auto !important
    }
    .flex-md-grow-0 {
        flex-grow: 0 !important
    }
    .flex-md-grow-1 {
        flex-grow: 1 !important
    }
    .flex-md-shrink-0 {
        flex-shrink: 0 !important
    }
    .flex-md-shrink-1 {
        flex-shrink: 1 !important
    }
    .justify-content-md-start {
        justify-content: flex-start !important
    }
    .justify-content-md-end {
        justify-content: flex-end !important
    }
    .justify-content-md-center {
        justify-content: center !important
    }
    .justify-content-md-between {
        justify-content: space-between !important
    }
    .justify-content-md-around {
        justify-content: space-around !important
    }
    .align-items-md-start {
        align-items: flex-start !important
    }
    .align-items-md-end {
        align-items: flex-end !important
    }
    .align-items-md-center {
        align-items: center !important
    }
    .align-items-md-baseline {
        align-items: baseline !important
    }
    .align-items-md-stretch {
        align-items: stretch !important
    }
    .align-content-md-start {
        align-content: flex-start !important
    }
    .align-content-md-end {
        align-content: flex-end !important
    }
    .align-content-md-center {
        align-content: center !important
    }
    .align-content-md-between {
        align-content: space-between !important
    }
    .align-content-md-around {
        align-content: space-around !important
    }
    .align-content-md-stretch {
        align-content: stretch !important
    }
    .align-self-md-auto {
        align-self: auto !important
    }
    .align-self-md-start {
        align-self: flex-start !important
    }
    .align-self-md-end {
        align-self: flex-end !important
    }
    .align-self-md-center {
        align-self: center !important
    }
    .align-self-md-baseline {
        align-self: baseline !important
    }
    .align-self-md-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 992px) {
    .flex-lg-row {
        flex-direction: row !important
    }
    .flex-lg-column {
        flex-direction: column !important
    }
    .flex-lg-row-reverse {
        flex-direction: row-reverse !important
    }
    .flex-lg-column-reverse {
        flex-direction: column-reverse !important
    }
    .flex-lg-wrap {
        flex-wrap: wrap !important
    }
    .flex-lg-nowrap {
        flex-wrap: nowrap !important
    }
    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }
    .flex-lg-fill {
        flex: 1 1 auto !important
    }
    .flex-lg-grow-0 {
        flex-grow: 0 !important
    }
    .flex-lg-grow-1 {
        flex-grow: 1 !important
    }
    .flex-lg-shrink-0 {
        flex-shrink: 0 !important
    }
    .flex-lg-shrink-1 {
        flex-shrink: 1 !important
    }
    .justify-content-lg-start {
        justify-content: flex-start !important
    }
    .justify-content-lg-end {
        justify-content: flex-end !important
    }
    .justify-content-lg-center {
        justify-content: center !important
    }
    .justify-content-lg-between {
        justify-content: space-between !important
    }
    .justify-content-lg-around {
        justify-content: space-around !important
    }
    .align-items-lg-start {
        align-items: flex-start !important
    }
    .align-items-lg-end {
        align-items: flex-end !important
    }
    .align-items-lg-center {
        align-items: center !important
    }
    .align-items-lg-baseline {
        align-items: baseline !important
    }
    .align-items-lg-stretch {
        align-items: stretch !important
    }
    .align-content-lg-start {
        align-content: flex-start !important
    }
    .align-content-lg-end {
        align-content: flex-end !important
    }
    .align-content-lg-center {
        align-content: center !important
    }
    .align-content-lg-between {
        align-content: space-between !important
    }
    .align-content-lg-around {
        align-content: space-around !important
    }
    .align-content-lg-stretch {
        align-content: stretch !important
    }
    .align-self-lg-auto {
        align-self: auto !important
    }
    .align-self-lg-start {
        align-self: flex-start !important
    }
    .align-self-lg-end {
        align-self: flex-end !important
    }
    .align-self-lg-center {
        align-self: center !important
    }
    .align-self-lg-baseline {
        align-self: baseline !important
    }
    .align-self-lg-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1200px) {
    .flex-xl-row {
        flex-direction: row !important
    }
    .flex-xl-column {
        flex-direction: column !important
    }
    .flex-xl-row-reverse {
        flex-direction: row-reverse !important
    }
    .flex-xl-column-reverse {
        flex-direction: column-reverse !important
    }
    .flex-xl-wrap {
        flex-wrap: wrap !important
    }
    .flex-xl-nowrap {
        flex-wrap: nowrap !important
    }
    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }
    .flex-xl-fill {
        flex: 1 1 auto !important
    }
    .flex-xl-grow-0 {
        flex-grow: 0 !important
    }
    .flex-xl-grow-1 {
        flex-grow: 1 !important
    }
    .flex-xl-shrink-0 {
        flex-shrink: 0 !important
    }
    .flex-xl-shrink-1 {
        flex-shrink: 1 !important
    }
    .justify-content-xl-start {
        justify-content: flex-start !important
    }
    .justify-content-xl-end {
        justify-content: flex-end !important
    }
    .justify-content-xl-center {
        justify-content: center !important
    }
    .justify-content-xl-between {
        justify-content: space-between !important
    }
    .justify-content-xl-around {
        justify-content: space-around !important
    }
    .align-items-xl-start {
        align-items: flex-start !important
    }
    .align-items-xl-end {
        align-items: flex-end !important
    }
    .align-items-xl-center {
        align-items: center !important
    }
    .align-items-xl-baseline {
        align-items: baseline !important
    }
    .align-items-xl-stretch {
        align-items: stretch !important
    }
    .align-content-xl-start {
        align-content: flex-start !important
    }
    .align-content-xl-end {
        align-content: flex-end !important
    }
    .align-content-xl-center {
        align-content: center !important
    }
    .align-content-xl-between {
        align-content: space-between !important
    }
    .align-content-xl-around {
        align-content: space-around !important
    }
    .align-content-xl-stretch {
        align-content: stretch !important
    }
    .align-self-xl-auto {
        align-self: auto !important
    }
    .align-self-xl-start {
        align-self: flex-start !important
    }
    .align-self-xl-end {
        align-self: flex-end !important
    }
    .align-self-xl-center {
        align-self: center !important
    }
    .align-self-xl-baseline {
        align-self: baseline !important
    }
    .align-self-xl-stretch {
        align-self: stretch !important
    }
}

.position-static {
    position: static !important
}

.position-relative {
    position: relative !important
}

.position-absolute {
    position: absolute !important
}

.position-fixed {
    position: fixed !important
}

.position-sticky {
    position: sticky !important
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030
}

@supports (position: sticky) {
    .sticky-top {
        position: sticky;
        top: 0;
        z-index: 1020
    }
}

.text-monospace {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace
}

.text-justify {
    text-align: justify !important
}

.text-nowrap {
    white-space: nowrap !important
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

@media (min-width: 576px) {
    .text-sm-left {
        text-align: left !important
    }
    .text-sm-right {
        text-align: right !important
    }
    .text-sm-center {
        text-align: center !important
    }
}

@media (min-width: 768px) {
    .text-md-left {
        text-align: left !important
    }
    .text-md-right {
        text-align: right !important
    }
    .text-md-center {
        text-align: center !important
    }
}

@media (min-width: 992px) {
    .text-lg-left {
        text-align: left !important
    }
    .text-lg-right {
        text-align: right !important
    }
    .text-lg-center {
        text-align: center !important
    }
}

@media (min-width: 1200px) {
    .text-xl-left {
        text-align: left !important
    }
    .text-xl-right {
        text-align: right !important
    }
    .text-xl-center {
        text-align: center !important
    }
}

.text-lowercase {
    text-transform: lowercase !important
}

.text-uppercase {
    text-transform: uppercase !important
}

.text-capitalize {
    text-transform: capitalize !important
}

.font-weight-light {
    font-weight: 300 !important
}

.font-weight-normal {
    font-weight: 400 !important
}

.font-weight-bold {
    font-weight: 700 !important
}

.font-italic {
    font-style: italic !important
}

.text-white {
    color: #fff !important
}

.text-primary {
    color: #007bff !important
}

a.text-primary:hover,
a.text-primary:focus {
    color: #0062cc !important
}

.text-secondary {
    color: #6c757d !important
}

a.text-secondary:hover,
a.text-secondary:focus {
    color: #545b62 !important
}

.text-success {
    color: #28a745 !important
}

a.text-success:hover,
a.text-success:focus {
    color: #1e7e34 !important
}

.text-info {
    color: #17a2b8 !important
}

a.text-info:hover,
a.text-info:focus {
    color: #117a8b !important
}

.text-warning {
    color: #ffc107 !important
}

a.text-warning:hover,
a.text-warning:focus {
    color: #d39e00 !important
}

.text-danger {
    color: #dc3545 !important
}

a.text-danger:hover,
a.text-danger:focus {
    color: #bd2130 !important
}

.text-light {
    color: #f8f9fa !important
}

a.text-light:hover,
a.text-light:focus {
    color: #dae0e5 !important
}

.text-dark {
    color: #343a40 !important
}

a.text-dark:hover,
a.text-dark:focus {
    color: #1d2124 !important
}

.text-body {
    color: #212529 !important
}

.text-muted {
    color: #6c757d !important
}

.text-black-50 {
    color: rgba(0, 0, 0, 0.5) !important
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.5) !important
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.visible {
    visibility: visible !important
}

.invisible {
    visibility: hidden !important
}

img {
    max-width: 100%;
    height: auto
}

a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto
}

body {
    text-rendering: optimizeLegibility;
    font-size: 13px;
    font-family: 'Poppins', sans-serif;
    position: relative;
    color: #585857;
    line-height: 2em;
    overflow-x: hidden;
    overflow-y: auto
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    line-height: 1.2em;
    font-weight: 500
}

.navbar-brand .icon {
    width: 134px;
    height: 45px;
    fill: #fff
}

.header-navbar {
    padding: 0 50px 0 50px;
    -webkit-transition: background-color 0.5s ease;
    transition: background-color 0.5s ease;
    font-weight: 700
}

.header-navbar.open,
.header-navbar.fixed {
    background-color: rgba(2, 6, 73, 0.8)
}

.header-navbar:hover:not(.open):not(.fixed) {
    background-color: rgba(2, 6, 73, 0.8)
}

.header-navbar .navbar-brand {
    position: relative;
    top: 4px;
    margin-top: 10px;
    margin-bottom: 11px
}

.header-navbar .header-menu {
    font-size: 12px;
    text-transform: uppercase
}

.header-navbar .header-menu li.active a,
.header-navbar .header-menu .current-menu-ancestor>a {
    color: #58c1ee
}

.header-navbar .header-menu a {
    color: #fff;
    -webkit-transition: color 0.5s ease;
    transition: color 0.5s ease;
    line-height: 28px
}

.header-navbar .header-menu a:hover {
    text-decoration: none;
    color: #58c1ee
}

.header-navbar .main-menu li a {
    padding: 0 20px;
    line-height: 80px;
    display: inline-block
}

.header-navbar .main-menu li:first-child a {
    padding-left: 0
}

.header-navbar .main-menu li:last-child a {
    padding-right: 0
}

.header-social {
    margin-top: 10px
}

.header-social a,
.follow-us a {
    padding: 0 5px
}

.header-social .icon,
.follow-us .icon {
    width: 28px;
    height: 28px;
    fill: #fff;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.header-social a:hover .icon,
.follow-us a:hover .icon {
    fill: #58c1ee
}

.main-menu {
    margin-left: auto;
    margin-right: auto
}

.intro {
    width: 100vw;
    padding-bottom: 50%;
    background-size: cover;
    background-position: center;
    position: relative
}

.intro .contact-form {
    padding: 180px 0 150px
}

.intro h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 40px;
    width: 100%;
    text-align: center
}

.intro.globe:before {
    content: '';
    position: absolute;
    background-image: url("images/globe.svg");
    background-size: contain;
    width: 340px;
    height: 679px;
    bottom: 0;
    right: 0;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    z-index: 1
}

.intro.globe_green:before {
    background-image: url("images/globe_green.svg")
}

.page-template-template-keyfactors .intro,
.page-template-template-project .intro,
.page-template-template-sponsors .intro,
.page-template-template-press .intro,
.page-template-template-structure .intro {
    position: relative
}

.page-template-template-keyfactors .intro:after,
.page-template-template-project .intro:after,
.page-template-template-sponsors .intro:after,
.page-template-template-press .intro:after,
.page-template-template-structure .intro:after {
    content: '';
    position: absolute;
    bottom: -355px;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    height: 617px;
    background-color: #58c1ee
}

.page-template-template-press .intro:after {
    bottom: 30px;
    height: auto;
    top: 60%
}

.page-template-template-project .intro:after,
.page-template-template-sponsors .intro:after {
    bottom: -85px;
    height: 355px
}

.box-container {
    padding-bottom: 53px;
    padding-bottom: 120px
}

.box-container .container {
    padding: 0 85px
}

.box {
    margin: -85px auto 0;
    background-color: #58c1ee;
    color: #fff;
    z-index: 1;
    position: relative;
    padding: 0 60px
}

.box h3 {
    text-align: right;
    font-size: 40px;
    padding-top: 55px;
    padding-bottom: 35px;
    padding-right: 50px !important
}

.box .box-testo {
    padding-top: 90px;
    padding-bottom: 35px;
    margin-left: -15px
}

.box.box-bg {
    background-size: cover;
    background-color: #022150
}

.box.box-bg .box-testo {
    font-size: 15px;
    font-weight: 500;
    padding: 60px 50px
}

@media (min-width: 768px) {
    .alternate-content:nth-child(even) .image-container {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 12;
        order: 12;
        padding-left: 150px;
        padding-right: 55px
    }
    .alternate-content:nth-child(even) .icon {
        left: -72px;
        right: auto
    }
    .page-template-template-project .alternate-content:nth-child(even) .image-container {
        -webkit-box-ordinal-group: -1;
        -ms-flex-order: -1;
        order: -1;
        padding-left: 55px;
        padding-right: 150px
    }
    .page-template-template-project .alternate-content:nth-child(odd) .image-container {
        -webkit-box-ordinal-group: 12;
        -ms-flex-order: 12;
        order: 12;
        padding-left: 150px;
        padding-right: 55px
    }
}

.alternate-content {
    padding-top: 113px;
    padding-bottom: 100px
}

.alternate-content .icon {
    width: 180px;
    height: 180px;
    position: absolute;
    top: -60px;
    right: -45px
}

.alternate-content .image-container {
    padding-right: 150px;
    padding-left: 30px
}

.alternate-content .image {
    position: relative
}

.alternate-content h2 {
    color: #58c1ee;
    font-size: 40px;
    padding-bottom: 15px
}

.alternate-content:nth-child(even) {
    background-color: #58c1ee;
    color: #fff
}

.alternate-content:nth-child(even) h2 {
    color: #fff
}

.alternate-content:nth-child(3) {
    position: relative;
    overflow: hidden
}

.alternate-content:nth-child(3):before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -20px;
    width: 340px;
    height: 679px;
    background-image: url("images/globe2.svg");
    background-size: contain
}

.footer .contact-container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

.footer .contact-container .block {
    flex: 1;
    margin: 80px 20px;
    padding: 0;
    text-align: center;
}

.footer .contact-container .block h3 {
    font-size: 40px;
    padding-bottom: 5px
}

.footer .contact-container .block .button {
    background-color: #58c1ee;
    color: #fff;
    text-transform: uppercase;
    padding: 5px 40px;
    margin: 40px 0;
}

.contact-form {
    max-width: 600px;
    margin: auto;
    text-align: center;
    padding: 80px 0
}

.contact-form h3 {
    font-size: 40px;
    color: #58c1ee;
    padding-bottom: 5px
}

.contact-form .col-12 {
    position: relative;
    text-align: left
}

.contact-form .col-12 br {
    display: none
}

.contact-form .col-12 label {
    position: absolute;
    z-index: 1;
    margin-bottom: 0;
    pointer-events: none;
    left: 16px;
    line-height: 39px;
    padding: 0 16px;
    top: 19px;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease
}

.contact-form .col-12.focus label {
    top: 11px;
    color: #58c1ee;
    opacity: .5
}

.contact-form .col-12.col-textarea.focus label {
    top: 14px
}

.contact-form .col-12 label,
.contact-form .col-12 input {
    color: #fff
}

.contact-form .col-12 input,
.contact-form .col-12 textarea {
    border: 0;
    background: #020649;
    margin-top: 19px;
    outline: 0;
    line-height: 28px;
    width: 100%;
    padding: 11px 16px 0
}

.contact-form .col-12 textarea {
    padding: 18px 16px;
    color: #fff;
    height: 100px
}

.contact-form p {
    margin-bottom: 11px
}

.contact-form input[type="submit"],
.partner-container .button,
.carousel-content .button,
.parallax-single .button,
.video-text .button,
.ocean-view .button {
    margin: auto;
    line-height: 41px;
    border: 1px solid #58c1ee;
    background: #58c1ee;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    color: #020649;
    padding: 0 50px;
    border-radius: 20px;
    margin-top: 34px;
    outline: 0;
    cursor: pointer;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    display: inline-block
}

.contact-form input[type="submit"]:hover,
.partner-container .button:hover,
.carousel-content .button:hover,
.parallax-single .button:hover,
.video-text .button:hover,
.ocean-view .button:hover {
    background-color: transparent;
    text-decoration: none;
    color: #58c1ee
}

.contact-form-container {
    position: relative
}

.contact-form-container.globe:before,
.footer.globe:before {
    content: '';
    position: absolute;
    background-image: url("images/globe.svg");
    background-size: contain;
    width: 340px;
    height: 679px;
    top: -225px;
    right: 0
}

.footer {
    background-image: url("images/footer.jpg");
    background-size: cover;
    padding-top: 65px;
    color: #fff;
    position: relative
}

.footer.footer-hp {
    background-position: center bottom
}

.footer.footer-hp:before {
    bottom: auto;
    top: 50%;
    margin-top: -339px
}

.footer.globe:before {
    top: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.footer a {
    color: #fff
}

.footer .ocean-logos {
    padding: 10px 30px 0
}

.footer .ocean-logos img {
    margin-bottom: 20px
}

.footer .row:nth-child(2) {
    line-height: 1.5em
}

.footer .row:nth-child(2) p {
    margin-top: 10px
}

.ocean-reef {
    width: 134px;
    text-align: center
}

.ocean-reef .icon {
    width: 120px;
    height: 48.3px;
    fill: #fff;
    margin-top: 15px
}

.follow-us {
    text-transform: uppercase;
    text-align: center;
    font-size: 12px;
    margin-top: 40px;
    padding-right: 60px
}

.follow-us ul {
    padding: 0;
    margin: 15px 0 0;
    list-style: none
}

.follow-us ul li {
    display: inline-block
}

.footer-menu-container ul {
    padding: 0;
    list-style: none;
    font-size: 12px;
    text-transform: uppercase
}

.footer-menu-container ul li {
    margin-bottom: 15px
}

.footer-menu-container ul ul {
    margin-bottom: 30px;
    text-transform: none;
    font-size: 11px;
    line-height: 1.5em
}

.footer-menu-container ul ul li {
    margin-bottom: 0
}

.footer-bottom {
    border-top: .5px solid #fff;
    margin-top: 5px;
    padding-top: 15px
}

.footer-bottom ul {
    padding: 0;
    list-style: none
}

.footer-bottom ul li {
    display: inline-block;
    text-transform: uppercase;
    padding-right: 50px
}

.navbar-toggler:focus {
    outline: 0
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")
}

@media (max-width: 768px) {
    .intro {
        height: 100vh;
        padding-bottom: 0
    }
}

@media (max-width: 1330px) {
    .header-navbar .main-menu li a {
        padding: 0 10px
    }
}

@media (min-width: 577px) and (max-width: 1330px) {
    .page-template-template-keyfactors .intro:after {
        height: 480px
    }
}

@media (max-width: 1130px) {
    .header-navbar .main-menu li a {
        padding: 0 10px
    }
    .header-social {
        display: none
    }
}

@media (max-width: 1109.98px) {
    .navbar-expand-custom>.container,
    .navbar-expand-custom>.container-fluid {
        padding-right: 0;
        padding-left: 0
    }
    .header-navbar {
        padding: 10px 24px 11px;
        background-color: rgba(2, 6, 73, 0.5)
    }
    .header-navbar .navbar-nav {
        padding-top: 30px
    }
    .header-navbar .main-menu li a {
        padding: 10px 0;
        line-height: 2em
    }
    .dropdown-menu {
        background-color: transparent;
        font-size: 11px;
        line-height: 1.8em !important
    }
    .dropdown-menu li {
        padding-left: 10px
    }
    .header-social {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .header-social {
        margin-top: 0;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 25px 0 15px !important
    }
    .header-social a {
        padding: 0 10px 0 0
    }
}

@media (min-width: 1110px) {
    .navbar-expand-custom {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .navbar-expand-custom .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
    .navbar-expand-custom .navbar-nav .dropdown-menu {
        position: absolute
    }
    .navbar-expand-custom .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }
    .navbar-expand-custom>.container,
    .navbar-expand-custom>.container-fluid {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        padding-right: 0;
        padding-left: 0
    }
    .navbar-expand-custom .navbar-collapse {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
    .navbar-expand-custom .navbar-toggler {
        display: none
    }
}

@media (max-width: 991px) {
    .intro.globe:before,
    .intro.globe_bottom:before,
    .footer.globe:before,
    .globe_bottom:before {
        display: none
    }
    .box-container .container {
        padding: 0
    }
    .alternate-content .image-container {
        padding-right: 80px;
        padding-left: 0
    }
    .alternate-content .icon {
        width: 140px;
        height: 140px
    }
    .alternate-content:nth-child(even) .image-container {
        padding-left: 80px;
        padding-right: 0
    }
    .follow-us,
    .ocean-reef .icon {
        margin-top: 10px
    }
    .follow-us {
        padding-right: 0
    }
    .follow-us ul {
        margin-top: 5px
    }
    .footer-menu-container {
        margin-top: 40px;
        text-align: center
    }
    .ocean-reef {
        width: auto
    }
    .menu-footer-bottom-container {
        text-align: center
    }
    .footer {
        padding-bottom: 15px
    }
    .footer .text-right {
        text-align: center !important
    }
}

@media (max-width: 767px) {
    .box h3 {
        text-align: center;
        padding-right: 0 !important
    }
    .box .box-testo {
        margin-left: 0;
        text-align: center;
        padding-top: 0;
        font-size: 13px
    }
    .box-container {
        padding-bottom: 0
    }
    .alternate-content .text {
        text-align: center;
        font-size: 13px;
        line-height: 1.8em
    }
    .contact-form p {
        font-size: 13px;
        line-height: 1.8em
    }
    .contact-form input[type="text"],
    .contact-form textarea,
    .contact-form label {
        font-size: 13px
    }
    .contact-form textarea {
        line-height: 15px !important
    }
}

@media (min-width: 577px) and (max-width: 767px) {
    .alternate-content .text {
        text-align: center;
        padding-top: 50px
    }
    .alternate-content .image-container {
        padding: 0 60px !important
    }
    .contact-form {
        max-width: 540px;
        padding: 80px 15px
    }
}

@media (max-width: 576px) {
    .intro h1 {
        font-size: 29px
    }
    .navbar-brand .icon {
        width: 90px;
        height: 30px;
        fill: #fff
    }
    .container {
        padding-left: 28px;
        padding-right: 28px
    }
    .page-template-template-keyfactors .intro:after {
        bottom: 0;
        height: 30vh
    }
    .box-container .container {
        padding: 0 28px
    }
    .box {
        padding: 0 30px
    }
    .box h3 {
        font-size: 15px;
        line-height: 2em;
        padding-top: 35px
    }
    .box h3 br {
        display: none
    }
    .alternate-content {
        padding-top: 70px;
        padding-bottom: 50px
    }
    .alternate-content .image-container {
        padding: 0 25px
    }
    .alternate-content .icon {
        width: 99px;
        height: 99px;
        top: -45px;
        right: -30px
    }
    .alternate-content h2 {
        font-size: 29.7px;
        padding-top: 20px
    }
    .alternate-content:nth-child(even) {
        padding: 70px 0 50px
    }
    .alternate-content:nth-child(even) .icon {
        left: -25px;
        right: auto
    }
    .alternate-content:nth-child(even) .image-container {
        padding: 0 25px
    }
    .alternate-content:nth-child(3):before {
        display: none
    }
    .contact-form-container.globe:before {
        display: none
    }
    .contact-form {
        padding-top: 50px
    }
    .contact-form h3 {
        font-size: 30px
    }
    .footer {
        background-color: #111226;
        background-repeat: no-repeat;
        background-size: 500%;
        text-align: center;
        padding-top: 35px;
        padding-bottom: 35px
    }
    .ocean-reef {
        margin: auto
    }
    .ocean-reef .icon {
        width: 80px;
        height: 33px
    }
    .follow-us {
        padding-right: 0;
        margin-bottom: 40px
    }
    .footer-bottom ul li {
        padding-right: 0;
        float: left;
        width: 50%
    }
    .footer-bottom ul li:nth-child(even) {
        text-align: left;
        padding-left: 6px
    }
    .footer-bottom ul li:nth-child(odd) {
        text-align: right;
        padding-right: 6px
    }
    .menu-footer-bottom-container {
        float: left;
        width: 100%;
        margin-bottom: 30px
    }
}

.acf-map {
    width: 100%;
    padding-bottom: 25%;
    margin: 20px 0
}

.acf-map img {
    max-width: inherit !important
}

.contacts-container {
    padding: 80px 0
}

.contacts-container h2 {
    font-size: 30px;
    color: #020649
}

.contacts-container .contatti {
    padding: 20px 0 0
}

.contacts-container .contatti p {
    margin: 0
}

.contacts-container .contatti strong,
.contacts-container .contatti b {
    font-weight: 400;
    color: #020649
}

.contacts-container .contatti a {
    color: #585857
}

.contacts-container .mappa {
    margin-bottom: 45px
}

.globe_bottom {
    position: relative
}

.globe_bottom:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -285px;
    width: 340px;
    height: 679px;
    background-image: url("images/globe2.svg");
    background-size: contain
}

.partner-container {
    text-align: center;
    color: #fff;
    padding-bottom: 95px
}

.partner-container h3 {
    margin-bottom: 15px;
    font-size: 30px
}

@media (max-width: 576px) {
    .intro .contact-form {
        padding: 100px 50px 80px
    }
    .acf-map {
        padding-bottom: 100%
    }
    .contacts-container {
        font-size: 13px
    }
    .contacts-container h2 {
        font-size: 15px
    }
    .contacts-container .contatti {
        padding-top: 5px
    }
    .globe_bottom:before {
        display: none
    }
    .partner-container .testo,
    .intro .contact-form p {
        font-size: 13px;
        line-height: 1.8em
    }
    .contact-form input[type="submit"],
    .partner-container .button {
        font-size: 13px;
        line-height: 33px;
        padding: 0 32px
    }
}

.step {
    position: absolute;
    display: inline-block;
    left: 50%;
    top: 50%;
    width: 126px;
    margin-left: -63px;
    margin-top: -63px;
    line-height: 126px;
    padding: 0 9px;
    text-align: center
}

.step:hover {
    text-decoration: none
}

.step:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 126px;
    width: 63px;
    border-top-left-radius: 63px;
    border-bottom-left-radius: 63px;
    border: 2px solid white;
    border-right: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.step.step-left:before {
    -webkit-animation: rotate 1s forwards;
    animation: rotate 1s forwards
}

.step.step-right:before {
    -webkit-animation: rotateright 1s forwards;
    animation: rotateright 1s forwards
}

.step.step-start {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 40px;
    color: #fff;
    margin-top: 140px
}

@-webkit-keyframes rotate {
    0% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes rotate {
    0% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@-webkit-keyframes rotateright {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
}

@keyframes rotateright {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
}

.steps-container {
    position: relative
}

.steps-container .step:before {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center right;
    transform-origin: center right
}

.steps-container .step-outer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    z-index: 100;
    pointer-events: none
}

.steps-container .step-outer.fixed {
    position: fixed
}

.steps-container .step-outer.bottom {
    top: auto;
    bottom: 0
}

.steps-container .step-outer:before,
.steps-container .step-outer:after {
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -1px;
    width: 2px
}

.steps-container .step-outer:before {
    top: 0;
    margin-top: -120px;
    background-color: #58c1ee;
    height: calc( 50vh + 25px)
}

.steps-container .step-outer:after {
    height: calc( 50vh - 95px);
    top: calc( 50vh + 95px);
    background-image: url("images/dot.svg");
    background-size: 2px auto
}

.steps-container .step {
    color: #58c1ee;
    font-family: 'Oswald', sans-serif;
    font-size: 56px
}

.steps-container .step:before {
    border-color: #58c1ee
}

.step-container {
    height: 100vh;
    background-color: #020649;
    position: relative
}

.step-container .image {
    position: absolute;
    top: 50%;
    left: 20%;
    width: 358px;
    height: 358px;
    margin-top: -179px
}

.step-container .image img {
    border-radius: 50%
}

.step-container .image:before {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    height: 398px;
    width: 199px;
    border-top-left-radius: 199px;
    border-bottom-left-radius: 199px;
    border: 2px solid #58c1ee;
    border-right: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.step-container .testo-container {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 35%;
    padding-left: 100px;
    color: #fff;
    padding-bottom: 35px
}

.step-container .testo-container h2 {
    font-size: 40px;
    color: #58c1ee;
    padding-bottom: 15px
}

.step-container:nth-child(odd):before {
    content: '';
    position: absolute;
    background-image: url("images/globe.svg");
    background-size: contain;
    width: 340px;
    height: 679px;
    bottom: 0;
    right: 0;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    z-index: 1
}

.step-container:nth-child(odd) .image {
    left: 50%;
    margin-left: 100px
}

.step-container:nth-child(odd) .image:before {
    left: auto;
    right: -20px;
    border-top-right-radius: 199px;
    border-bottom-right-radius: 199px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border: 2px solid #58c1ee;
    border-left: 0
}

.step-container:nth-child(odd) .testo-container {
    left: auto;
    right: 50%;
    padding-right: 100px;
    text-align: right
}

.page-template-template-storyline .intro {
    position: relative
}

.page-template-template-storyline .footer .contact-form h3,
.page-template-template-gallery .footer .contact-form h3,
.page-template-template-sponsors .footer .contact-form h3,
.page-template-template-press .footer .contact-form h3,
.page-template-template-invest .footer .contact-form h3,
.page-template-template-contactus .footer .contact-form h3 {
    color: #fff
}

.page-template-template-storyline .footer .contact-form .col-12 input,
.page-template-template-storyline .footer .contact-form .col-12 textarea,
.page-template-template-gallery .footer .contact-form .col-12 input,
.page-template-template-gallery .footer .contact-form .col-12 textarea,
.page-template-template-sponsors .footer .contact-form .col-12 input,
.page-template-template-sponsors .footer .contact-form .col-12 textarea,
.page-template-template-press .footer .contact-form .col-12 input,
.page-template-template-press .footer .contact-form .col-12 textarea,
.page-template-template-invest .footer .contact-form .col-12 input,
.page-template-template-invest .footer .contact-form .col-12 textarea,
.page-template-template-contactus .footer .contact-form .col-12 input,
.page-template-template-contactus .footer .contact-form .col-12 textarea {
    background-color: #fff
}

.page-template-template-storyline .footer .contact-form .col-12 label,
.page-template-template-storyline .footer .contact-form .col-12 input,
.page-template-template-storyline .footer .contact-form .col-12 textarea,
.page-template-template-gallery .footer .contact-form .col-12 label,
.page-template-template-gallery .footer .contact-form .col-12 input,
.page-template-template-gallery .footer .contact-form .col-12 textarea,
.page-template-template-sponsors .footer .contact-form .col-12 label,
.page-template-template-sponsors .footer .contact-form .col-12 input,
.page-template-template-sponsors .footer .contact-form .col-12 textarea,
.page-template-template-press .footer .contact-form .col-12 label,
.page-template-template-press .footer .contact-form .col-12 input,
.page-template-template-press .footer .contact-form .col-12 textarea,
.page-template-template-invest .footer .contact-form .col-12 label,
.page-template-template-invest .footer .contact-form .col-12 input,
.page-template-template-invest .footer .contact-form .col-12 textarea,
.page-template-template-contactus .footer .contact-form .col-12 label,
.page-template-template-contactus .footer .contact-form .col-12 input,
.page-template-template-contactus .footer .contact-form .col-12 textarea {
    color: #585857
}

.page-template-template-sponsors .footer .contact-form h3 {
    color: #58c1ee
}

.timeline {
    position: absolute;
    top: 50vh;
    left: 105px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: 'Oswald', sans-serif;
    font-size: 15px;
    list-style: none;
    padding: 0;
    line-height: 30px
}

.timeline.fixed {
    position: fixed
}

.timeline.bottom {
    top: auto;
    bottom: 50vh
}

.timeline a {
    color: #fff;
    -webkit-transition: color 0.5s ease;
    transition: color 0.5s ease
}

.timeline a.active {
    color: #58c1ee
}

.timeline a:hover {
    text-decoration: none;
    color: #58c1ee
}

@media (max-width: 1640px) {
    .page-template-template-storyline .intro:after {
        height: 50px
    }
}

@media (max-width: 1350px) {
    .page-template-template-storyline .intro:after {
        height: 20px
    }
}

@media (max-width: 1500px) {
    .step-container .image {
        width: 250px;
        height: 250px;
        margin-top: -125px
    }
    .step-container .image:before {
        height: 290px;
        width: 145px;
        border-top-left-radius: 145px;
        border-bottom-left-radius: 145px
    }
    .step-container .testo-container {
        width: 40%
    }
    .step-container .testo-container h2 {
        font-size: 30px
    }
}

@media (max-width: 1185px) {
    .step.step-start {
        margin-top: 80px;
        font-size: 30px
    }
    .intro.globe:before {
        width: 238px;
        height: 475px
    }
    .steps-container .step {
        font-size: 40px
    }
    .step-container .image {
        left: 17%
    }
    .timeline {
        left: 50px
    }
}

.step-mobile,
.timeline-mobile {
    display: none
}

@media (max-width: 1024px) {
    .page-template-template-storyline .intro {
        height: 100vh
    }
    .page-template-template-storyline .intro:after {
        height: 120px
    }
}

@media (max-width: 991px) {
    .step-mobile {
        display: block;
        position: relative;
        left: auto;
        top: auto;
        margin: 0 auto 60px
    }
    .timeline:not(.timeline-mobile),
    .step-outer {
        display: none
    }
    .timeline-mobile {
        display: block;
        top: 90px;
        -webkit-transform: none;
        transform: none
    }
    .step-container {
        height: auto;
        text-align: center;
        padding-top: 100px;
        padding-bottom: 50px
    }
    .step-container:before {
        content: '';
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -1px;
        width: 2px !important;
        height: 20px !important;
        background: #58c1ee !important;
        bottom: auto !important;
        right: auto !important;
        -webkit-transform: none !important;
        transform: none !important
    }
    .step-container:after {
        content: '';
        position: absolute;
        left: 50%;
        margin-left: -1px;
        width: 2px !important;
        height: 32px !important;
        background: #58c1ee !important;
        bottom: 0 !important;
        right: auto !important;
        -webkit-transform: none !important;
        transform: none !important
    }
    .step-container:nth-child(odd) .step-mobile:before {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
    .step-container:nth-child(odd) .image {
        margin-left: auto
    }
    .step-container:nth-child(odd) .image:before {
        right: calc(50% - 145px)
    }
    .step-container:nth-child(odd) .testo-container {
        padding-right: 0;
        text-align: center;
        right: auto
    }
    .step-container .image,
    .step-container .testo-container {
        position: relative
    }
    .step-container .image {
        margin: auto;
        left: auto !important;
        top: auto
    }
    .step-container .image:before {
        left: calc(50% - 145px)
    }
    .step-container .testo-container {
        padding-left: 0;
        left: auto;
        width: 50%;
        margin-left: 25%;
        margin-top: 60px
    }
    .step-container .testo {
        font-size: 13px;
        line-height: 1.8em
    }
    .page-template-template-storyline .footer {
        position: relative
    }
    .page-template-template-storyline .footer:before {
        content: '';
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -1px;
        width: 2px;
        height: 65px;
        background: #58c1ee
    }
}

@media (max-width: 576px) {
    .step:before {
        height: 78px;
        width: 39px;
        border-top-left-radius: 39px;
        border-bottom-left-radius: 39px
    }
    .step {
        width: 78px;
        padding: 0;
        line-height: 78px
    }
    .step.step-start {
        font-size: 21px;
        margin-left: -39px
    }
    .step-container .step {
        font-size: 30px
    }
    .step-container .image {
        width: 107px;
        height: 107px
    }
    .step-container .image:before {
        width: 60px;
        height: 120px;
        border-top-left-radius: 120px;
        border-bottom-left-radius: 120px;
        left: calc(50% - 60px);
        top: -6px
    }
    .step-container .testo-container h2 {
        color: #fff
    }
    .step-container:nth-child(odd) .image:before {
        right: calc(50% - 60px)
    }
}

@media (max-width: 480px) {
    .step-container .testo-container {
        width: 100%;
        margin-left: 0;
        padding: 0 30px !important
    }
}

.page-template-template-gallery .intro {
    padding-bottom: 42%
}

.page-template-template-gallery .footer {
    margin-top: -175px;
    padding-top: 140px;
    position: relative
}

.page-template-template-gallery .footer:before {
    content: '';
    position: absolute;
    left: 0;
    top: -210px;
    width: 340px;
    height: 679px;
    background-image: url("images/globe2.svg");
    background-size: contain
}

.gallery-container,
.video-container:not(.video-video):not(.video-live) {
    margin-top: -100px;
    padding-bottom: 50px;
    position: relative;
    z-index: 2
}

.gallery-container:before,
.video-container:not(.video-video):not(.video-live):before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    top: -45px;
    background-color: #58c1ee
}

.gallery-container img {
    padding: 15px
}

.gallery-container .gallery-title {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    padding: 30px;
    font-size: 20px
}

.video-title {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    padding: 30px;
    font-size: 15px
}

.intro-gallery-container {
    width: 100%;
    padding: 0 15px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.intro-gallery-container h1 {
    position: static;
    -webkit-transform: none;
    transform: none
}

.intro-gallery-container .nav-tabs {
    border-bottom: 0;
    margin-top: 30px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.intro-gallery-container .nav-item:first-child .nav-link {
    margin-right: 30px
}

.intro-gallery-container .nav-link {
    line-height: 41px;
    border: 1px solid #58c1ee;
    background-color: transparent;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    width: 153px;
    padding: 0;
    border-radius: 20px;
    outline: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.intro-gallery-container .nav-link.active,
.intro-gallery-container .nav-link:hover {
    background-color: #58c1ee;
    border-color: #58c1ee;
    color: #020649
}

.video-container .video-outer {
    padding: 15px
}

.video-container .youtube-video {
    background-color: #000;
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    cursor: pointer
}

.video-container .youtube-video img {
    width: 100%;
    top: -16.84%;
    left: 0;
    opacity: 0.7
}

.video-container .youtube-video .play-button {
    width: 45px;
    height: 30px;
    background-color: #333;
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.6);
    z-index: 1;
    opacity: 0.8;
    border-radius: 3px
}

.video-container .youtube-video .play-button:before {
    content: "";
    border-style: solid;
    border-width: 7px 0 7px 13.0px;
    border-color: transparent transparent transparent #fff
}

.video-container .youtube-video img,
.video-container .youtube-video .play-button {
    cursor: pointer
}

.video-container .youtube-video img,
.video-container .youtube-video iframe,
.video-container .youtube-video .play-button,
.video-container .youtube-video .play-button:before {
    position: absolute
}

.video-container .youtube-video .play-button,
.video-container .youtube-video .play-button:before {
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0)
}

.video-container .youtube-video iframe {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0
}

@media (max-width: 991px) {
    .page-template-template-gallery .intro {
        padding-bottom: 70%
    }
}

@media (max-width: 768px) {
    .page-template-template-gallery .intro {
        height: auto
    }
}

@media (max-width: 672px) {
    .intro-gallery-container .nav-link {
        width: 101px;
        line-height: 33px;
        font-size: 13px
    }
    .intro-gallery-container .nav-item:first-child .nav-link {
        margin-right: 10px
    }
}

@media (max-width: 575px) {
    .page-template-template-gallery .intro {
        padding-bottom: 145%
    }
}

@media screen and (min-width: 1109.98px) {
    .dropdown:hover>.dropdown-menu {
        display: block
    }
    .dropdown>.dropdown-menu {
        color: #fff;
        border: 0;
        border-radius: 0;
        padding-top: 15px;
        padding-bottom: 15px;
        width: 188%;
        margin-top: 0
    }
    .dropdown>.dropdown-menu a {
        font-size: 11px;
        line-height: 11px !important;
        text-transform: none;
        padding: 0 20px !important
    }
    .dropdown-toggle::after {
        display: none
    }
    .header-navbar.open .dropdown>.dropdown-menu,
    .header-navbar.fixed .dropdown>.dropdown-menu {
        background-color: rgba(2, 6, 73, 0.8)
    }
    .header-navbar:hover:not(.open):not(.fixed) .dropdown>.dropdown-menu {
        background-color: rgba(2, 6, 73, 0.8)
    }
}

.page-template-template-project .intro:before {
    bottom: -108px
}

.page-template-template-project .alternate-content strong {
    font-weight: 500;
    font-size: 15px;
    padding-left: 32px;
    display: inline-block;
    color: #58c1ee;
    position: relative
}

.page-template-template-project .alternate-content strong:before {
    content: '';
    width: 2px;
    background-color: #58c1ee;
    position: absolute;
    top: -10px;
    bottom: -10px;
    left: 0
}

.page-template-template-project .alternate-content p strong:first-child {
    margin-top: 10px
}

.page-template-template-project .alternate-content p strong:last-child {
    margin-bottom: 10px
}

.page-template-template-project .alternate-content .image img {
    border-radius: 50%
}

.page-template-template-project .alternate-content .image:before {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    height: 398px;
    width: 199px;
    border-top-left-radius: 199px;
    border-bottom-left-radius: 199px;
    border: 2px solid #58c1ee;
    border-right: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.page-template-template-project .alternate-content:nth-child(even) h2 {
    color: #020649
}

.page-template-template-project .alternate-content:nth-child(even) strong {
    color: #020649
}

.page-template-template-project .alternate-content:nth-child(even) strong:before {
    background-color: #020649
}

.page-template-template-project .alternate-content:nth-child(even) .image:before {
    left: auto;
    right: -20px;
    border-top-right-radius: 199px;
    border-bottom-right-radius: 199px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border: 2px solid #020649;
    border-left: 0
}

.project-keyfacts-container {
    padding: 70px 0 75px
}

.project-keyfacts-container h2 {
    color: #7fb627;
    font-size: 40px
}

.project-keyfacts-container .text {
    padding: 15px 0 20px;
    margin-bottom: 63px;
    position: relative
}

.project-keyfacts-container .text:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 127px;
    height: 2px;
    background-color: #7fb627
}

.project-keyfacts-container .key-single {
    padding: 0 70px 0 85px;
    position: relative
}

.project-keyfacts-container .key-single-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 65px
}

.project-keyfacts-container .key-single-icon img {
    max-width: 65px;
    height: auto
}

.project-keyfacts-container .key-single-text h3 {
    color: #7fb627;
    font-size: 15px;
    padding-bottom: 3px
}

.project-keyfacts-container+.alternate-content-container {
    background-color: #f1f2f2
}

@media (max-width: 1199px) {
    .page-template-template-project .alternate-content .image-container {
        padding-right: 0 !important;
        padding-left: 105px !important
    }
    .page-template-template-project .alternate-content:nth-child(even) .image-container {
        padding-right: 105px !important;
        padding-left: 0 !important
    }
    .page-template-template-project .intro:after {
        height: 155px
    }
    .page-template-template-project .intro:before {
        display: none
    }
    .page-template-template-project .contact-form-container.globe:before {
        display: none
    }
}

@media (max-width: 991px) {
    .page-template-template-project .alternate-content:nth-child(even) .image-container,
    .page-template-template-project .alternate-content:nth-child(odd) .image-container {
        padding: 0 0 40px !important;
        -webkit-box-ordinal-group: -1;
        -ms-flex-order: -1;
        order: -1
    }
    .page-template-template-project .alternate-content:nth-child(even) .image-container .image:before {
        border-top-right-radius: 199px;
        border-bottom-right-radius: 199px;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        border-left: 0
    }
    .page-template-template-project .alternate-content .image-container .image {
        width: 250px;
        height: 250px;
        margin: auto
    }
    .page-template-template-project .alternate-content .image-container .image:before {
        height: 290px;
        width: 145px;
        border-top-left-radius: 145px;
        border-bottom-left-radius: 145px
    }
}

@media (max-width: 767px) {
    .page-template-template-project .intro:after {
        bottom: -20px
    }
    .page-template-template-project .alternate-content {
        padding: 70px 0 50px
    }
    .page-template-template-project .alternate-content h2 {
        font-size: 30px
    }
    .page-template-template-project .alternate-content strong {
        font-size: 13px
    }
    .page-template-template-project .alternate-content strong:before {
        top: -5px;
        bottom: -5px
    }
    .page-template-template-project .alternate-content p strong:first-child {
        margin-top: 5px
    }
    .page-template-template-project .alternate-content p strong:last-child {
        margin-bottom: 5px
    }
    .page-template-template-project .alternate-content .text {
        padding-top: 20px
    }
    .page-template-template-project .project-keyfacts-container h2 {
        font-size: 30px
    }
    .page-template-template-project .project-keyfacts-container .key-single {
        padding: 75px 0 40px;
        text-align: center
    }
    .page-template-template-project .project-keyfacts-container .key-single-icon {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
    .page-template-template-project .project-keyfacts-container .key-single-text h3 {
        padding-bottom: 20px
    }
    .page-template-template-project .project-keyfacts-container .text {
        margin-bottom: 43px
    }
}

.partners-container {
    text-align: center;
    padding-top: 320px;
    position: relative
}

.partners-container:before {
    content: '';
    position: absolute;
    top: 150px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 103px;
    height: 93px;
    background-image: url("images/ocean-reef-group_b.jpg");
    background-size: contain
}

.partners-container h2 {
    color: #58c1ee;
    font-size: 15px;
    padding-bottom: 20px
}

.partners-container .partner {
    padding-bottom: 70px
}

.underwater-content-container h2 {
    font-size: 40px;
    color: #7fb627;
    padding-bottom: 15px
}

.underwater-content-container .underwater-content:nth-child(even) {
    background-color: #f1f2f2
}

.underwater-content-container .underwater-content:nth-child(even) h2 {
    color: #58c1ee
}

.underwater-content-container .underwater-content:nth-child(even) strong {
    color: #58c1ee
}

.underwater-content-container .underwater-content:nth-child(even) strong:before {
    background-color: #58c1ee
}

.underwater-content-container .underwater-content {
    padding: 110px 0 60px
}

.underwater-content-container .underwater-content strong {
    font-weight: 500;
    font-size: 15px;
    padding-left: 32px;
    display: inline-block;
    color: #7fb627;
    position: relative
}

.underwater-content-container .underwater-content strong:first-child {
    padding-top: 25px
}

.underwater-content-container .underwater-content strong:last-child {
    padding-bottom: 25px
}

.underwater-content-container .underwater-content strong:before {
    content: '';
    width: 2px;
    background-color: #7fb627;
    position: absolute;
    left: 0;
    bottom: -10px;
    top: -10px
}

.underwater-content-container .underwater-content p strong:first-child {
    margin-top: 10px
}

.underwater-content-container .underwater-content p strong:last-child {
    margin-bottom: 10px
}

.underwater-content-container .underwater-content .image {
    margin-top: 20px
}

@media (max-width: 576px) {
    .page-template-template-underwater .intro h1 {
        padding: 0 20px
    }
    .underwater-content-container h2 {
        font-size: 29px
    }
    .underwater-content-container .underwater-content {
        padding: 40px 0 30px
    }
    .underwater-content-container .underwater-content strong {
        font-size: 12px
    }
    .underwater-content-container .underwater-content strong:last-child {
        padding-bottom: 5px
    }
    .underwater-content-container .underwater-content strong:first-child {
        padding-top: 5px
    }
    .underwater-content-container .underwater-content .image {
        padding-left: 0;
        padding-right: 0
    }
    .underwater-content-container .underwater-content .image img {
        width: 100vw;
        max-width: 100vw;
        position: relative;
        margin-left: -50vw;
        left: 50%
    }
}

.press-container {
    margin-top: -75px;
    margin-bottom: -105px
}

.press-container a:hover {
    text-decoration: none
}

.press-container.globe_bottom:before {
    z-index: 1
}

.press-single-container {
    padding: 0 15px;
    margin-bottom: 28px;
    -webkit-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    z-index: 1;
    position: relative
}

.press-single-container:hover {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    z-index: 2
}

.press-single-container .press-single {
    -webkit-box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.2)
}

.press-single-container .press-single .text {
    padding: 20px 30px 20px;
    background-color: #fff
}

.press-single-container .press-single .text .data {
    text-align: center;
    font-size: 9px;
    color: #58c1ee;
    padding-bottom: 7px
}

.press-single-container .press-single .text .title {
    font-size: 11px;
    color: #020649;
    line-height: 15px
}

.press-single-container .press-single .text .more {
    font-size: 9px;
    color: #58c1ee
}

.press-single-container .press-single .text .more:before {
    content: "» "
}

.press-single-container .press-single .text .link {
    padding-top: 20px;
    font-size: 9px;
    color: #020649
}

@media (max-width: 767px) {
    .press-container {
        margin-top: -241px;
        margin-bottom: -140px
    }
    .footer {
        padding-top: 135px
    }
}

@media (max-width: 576px) {
    .press-container {
        margin-top: -120px;
        margin-bottom: -155px
    }
}

.structure-container {
    background-color: #f1f2f2;
    padding: 70px 0 35px;
    font-size: 13px
}

.structure-container:before {
    bottom: -530px
}

.structure-container .text h2 {
    font-size: 40px;
    color: #58c1ee;
    padding-bottom: 10px
}

.read-more-container {
    position: relative;
    margin-top: 28px;
    margin-bottom: 40px
}

.read-more-container:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    margin-top: -1px;
    height: 2px;
    background-color: #58c1ee
}

.read-more-container .img {
    width: 159px;
    height: 159px;
    border-radius: 50%;
    z-index: 2;
    position: relative;
    overflow: hidden
}

.read-more-container .img img {
    width: 159px;
    height: 159px;
    border-radius: 50%;
    -webkit-transition: transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out;
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.read-more-container.active .btn .arrow:after {
    -webkit-transform: rotate(0deg);
    transform: rotate(-90deg)
}

.read-more-container.active .btn .less {
    display: inline-block
}

.read-more-container.active .btn .more {
    display: none
}

.read-more-container:hover img {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.read-more-container:hover:not(.active) .btn .arrow:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.read-more-container:hover .active .arrow:after {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.read-more-container:hover,
.read-more-container:focus {
    text-decoration: none;
    outline: 0
}

.read-more-container .btn {
    position: absolute;
    background-color: #f1f2f2;
    right: 0;
    padding-left: 15px;
    padding-right: 60px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: uppercase;
    color: #585857
}

.read-more-container .btn .less {
    display: none
}

.read-more-container .btn .arrow {
    position: absolute;
    top: 50%;
    right: 0;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background-color: #58c1ee;
    margin-top: -21px
}

.read-more-container .btn .arrow:after {
    content: '';
    position: absolute;
    background-image: url("images/more.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 12px;
    height: 18px;
    left: 50%;
    top: 50%;
    margin-left: -6px;
    margin-top: -9px;
    -webkit-transition: transform 0.5s ease;
    transition: transform 0.5s ease;
    -webkit-transform-origin: center;
    transform-origin: center
}

.more-text {
    position: relative;
    padding-right: 195px !important;
    padding-bottom: 5px
}

.more-text:last-child {
    padding-bottom: 22px
}

.more-text h3 {
    color: #58c1ee;
    font-size: 15px;
    text-transform: uppercase;
    padding-top: 40px;
    padding-bottom: 15px
}

.more-text .more-icon img {
    border-radius: 50%
}

@media (min-width: 576px) {
    .more-text .more-icon {
        position: absolute;
        right: 60px;
        top: 70px
    }
    .more-text .more-icon img {
        width: 105px;
        height: 105px;
        border-radius: 50%
    }
}

@media (max-width: 1199px) {
    .page-template-template-structure .intro:after {
        height: 517px
    }
}

@media (max-width: 767px) {
    .box.box-bg .box-testo {
        padding: 40px 30px
    }
    .more-text {
        padding-right: 125px !important
    }
    .more-text .more-icon {
        right: 0
    }
}

@media (max-width: 575px) {
    .box.box-bg .box-testo {
        font-size: 12px;
        padding: 20px 0
    }
    .box-structure {
        padding-bottom: 36px
    }
    .structure-container {
        text-align: center;
        font-size: 13px;
        line-height: 1.8em
    }
    .structure-container .text h2 {
        font-size: 30px
    }
    .read-more-container {
        text-align: left
    }
    .read-more-container img {
        width: 114px;
        height: 114px
    }
    .read-more-container .btn {
        padding-right: 33px
    }
    .read-more-container .btn .arrow {
        width: 28px;
        height: 28px;
        margin-top: -14px
    }
    .read-more-container .btn .arrow:after {
        width: 8px;
        height: 12px;
        margin-left: -4px;
        margin-top: -6px
    }
    .more-text {
        padding-right: 0 !important
    }
    .more-text h3 {
        font-size: 12px;
        padding-top: 18px
    }
    .more-text .more-icon {
        margin-top: 30px
    }
    .more-text .more-icon img {
        width: 90px;
        height: 90px;
        border-radius: 50%
    }
}

.carousel-home .carousel-inner.line {
    position: relative
}

.carousel-home .carousel-inner.line:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    height: 56px;
    background-color: #58c1ee
}

.carousel-home .carousel-item {
    background-size: cover;
    background-position: center;
    height: 100vh
}

.carousel-home .carousel-content {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.carousel-home .carousel-content h2 {
    font-size: 40px;
    color: #fff;
    margin-bottom: 30px
}

.carousel-home .carousel-content .button {
    background-color: #fff;
    color: #0e0749;
    border-color: #fff;
    padding: 0 32px
}

.carousel-home .carousel-content .button:hover {
    background-color: transparent;
    color: #fff
}

.carousel-home .carousel-content .icon {
    fill: #fff;
    width: 120px;
    height: 48px;
    margin-bottom: 53px
}

.carousel-home .carousel-control-next,
.carousel-home .carousel-control-prev {
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease
}

.carousel-home .carousel-control-next-icon,
.carousel-home .carousel-control-prev-icon {
    position: absolute;
    height: 18px;
    width: 18px;
    top: 50%;
    margin-top: -9px
}

.carousel-home .carousel-control-next-icon:before,
.carousel-home .carousel-control-prev-icon:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -21px;
    width: 42px;
    height: 42px;
    border: 1px solid #fff;
    border-radius: 50%
}

.carousel-home .carousel-control-prev-icon:before {
    margin-left: -20px
}

.carousel-home .carousel-control-next-icon:before {
    margin-left: -22px
}

.carousel-home .carousel-indicators {
    bottom: 70px
}

.carousel-home .carousel-indicators li {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #fff;
    cursor: pointer
}

.carousel-home .carousel-indicators li.active {
    width: 10px;
    height: 10px;
    margin-top: -2px
}

.parallax-hp {
    min-height: 100vh;
    background-attachment: fixed;
    background-size: cover;
    overflow: hidden
}

.parallax-single {
    height: 100vh;
    position: relative
}

.parallax-single:nth-child(2) .parallax-circle {
    font-size: 42px
}

.parallax-single .button {
    background-color: #fff;
    color: #0e0749;
    border-color: #fff;
    padding: 0 32px
}

.parallax-single .button:hover {
    background-color: transparent;
    color: #fff
}

.parallax-single .parallax-text {
    padding-right: 100px;
    position: absolute;
    left: 0;
    width: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    line-height: 2em
}

.parallax-single .parallax-text h3 {
    font-size: 40px;
    color: #fff;
    padding-bottom: 10px
}

.parallax-single .parallax-circle {
    position: absolute;
    font-family: 'Oswald', sans-serif;
    font-size: 56px;
    left: 50%;
    top: 50%;
    width: 126px;
    height: 126px;
    margin-left: -63px;
    margin-top: -63px;
    text-align: center;
    line-height: .7em;
    color: #fff
}

.parallax-single .parallax-circle p {
    margin: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.parallax-single .parallax-circle:before {
    content: '';
    border: 2px solid #52b8d3;
    border-radius: 50%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.parallax-single .parallax-circle em,
.parallax-single .parallax-circle i {
    font-size: 30px;
    font-style: normal;
    font-family: 'Poppins', sans-serif;
    display: inline-block
}

.parallax-single .parallax-side {
    padding-left: 100px;
    position: absolute;
    left: 50%;
    width: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    font-size: 30px;
    line-height: 1.5em
}

.parallax-circle-outer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    z-index: 100;
    pointer-events: none
}

.parallax-circle-outer:before,
.parallax-circle-outer:after {
    content: '';
    position: absolute;
    height: calc( 50vh - 95px);
    left: 50%;
    margin-left: -1px;
    width: 2px
}

.parallax-circle-outer:before {
    top: 0;
    background-color: #58c1ee
}

.parallax-circle-outer:after {
    top: calc( 50vh + 95px);
    background-image: url("images/dot.svg");
    background-size: 2px auto
}

.live-data-inner {
    position: relative;
    height: 100vh
}

.live-data-container,
.hp-video-outer {
    height: 100vh;
    background-size: cover;
    position: relative
}

.live-data-container:before,
.live-data-container:after,
.hp-video-outer:before,
.hp-video-outer:after {
    content: '';
    position: absolute;
    height: calc( 50vh);
    left: 50%;
    margin-left: -1px;
    width: 2px
}

.live-data-container:before,
.hp-video-outer:before {
    top: 0;
    background-color: #58c1ee
}

.live-data-container:after,
.hp-video-outer:after {
    top: calc( 50vh);
    background-image: url("images/dot.svg");
    background-size: 2px auto
}

.live-data-text {
    position: absolute;
    left: 0;
    width: 50%;
    top: 50%;
    padding-right: 70px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    line-height: 2em
}

.live-data-text h3 {
    font-size: 40px;
    padding-bottom: 10px
}

.live-data-text .carousel-indicators {
    position: relative;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 479px;
    margin: 30px 0 0;
    bottom: 0
}

.live-data-text .carousel-indicators a {
    text-transform: uppercase;
    margin-bottom: 15px;
    font-size: 15px;
    color: #0e0749;
    font-weight: 500;
    line-height: 42px;
    border-radius: 20px;
    padding: 0 30px;
    display: inline-block;
    text-align: center;
    width: 153px;
    margin-right: 10px;
    background-color: #fff;
    -webkit-transition: background-color 0.5s ease;
    transition: background-color 0.5s ease
}

.live-data-text .carousel-indicators a.active {
    background-color: #52b8d3
}

.live-data-text .carousel-indicators a:hover {
    text-decoration: none;
    background-color: #52b8d3
}

.live-data-text .carousel-indicators a:nth-child(3n) {
    margin-right: 0
}

.live-data-text .carousel-indicators a.disabled {
    opacity: .7;
    pointer-events: none
}

.live-data-carousel {
    position: absolute;
    left: calc( 50% + 70px);
    width: 50%;
    top: 50%;
    padding: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
    color: #fff
}

.live-data-carousel .carousel-item {
    text-align: left;
    padding: 0 100px;
    font-size: 11px;
    line-height: 13px
}

.live-data-carousel .carousel-item .icon {
    fill: #fff;
    position: absolute;
    left: 0;
    top: 0
}

.live-data-carousel .carousel-item .datas {
    position: relative;
    padding-left: 53px
}

.live-data-carousel .carousel-item .data {
    font-family: 'Oswald', sans-serif;
    font-size: 21px;
    line-height: 23px;
    display: block;
    padding-bottom: 3px
}

.live-data-carousel .carousel-item .data sub {
    font-family: 'Poppins', sans-serif;
    font-size: 10px;
    bottom: 0
}

.live-data-carousel .carousel-item strong {
    font-weight: 700;
    text-transform: uppercase;
    display: block
}

.live-data-carousel .carousel-control-next,
.live-data-carousel .carousel-control-prev {
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease
}

.live-data-carousel .carousel-control-next span,
.live-data-carousel .carousel-control-prev span {
    z-index: 1
}

.live-data-carousel .carousel-control-next:before,
.live-data-carousel .carousel-control-prev:before {
    content: '';
    background-color: #52b8d3;
    width: 42px;
    height: 42px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -21px;
    border-radius: 50%
}

.live-data-carousel .carousel-control-prev:before {
    margin-left: -20px
}

.live-data-carousel .carousel-control-next:before {
    margin-left: -22px
}

.live-data-carousel .carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%230e0749' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")
}

.live-data-carousel .carousel-control-next-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%230e0749' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")
}

.live-data-carousel .data-internal-temperature {
    padding-bottom: 35px;
    margin-top: 4px
}

.live-data-carousel .data-internal-temperature .icon {
    width: 18px;
    height: 42px;
    top: 5px
}

.live-data-carousel .data-internal-water-temperature {
    position: relative
}

.live-data-carousel .data-internal-water-temperature .icon {
    width: 33px;
    height: 43px;
    top: 8px
}

.live-data-carousel .data-internal-humidity {
    padding-bottom: 37px
}

.live-data-carousel .data-internal-humidity .icon {
    width: 27px;
    height: 44px;
    top: 3px
}

.live-data-carousel .data-internal-illumination .icon {
    width: 38px;
    height: 38px;
    top: 5px;
    left: -5px
}

.live-data-carousel .data-internal-oxygen .icon {
    width: 33px;
    height: 33px;
    top: 10px
}

.live-data-carousel .data-internal-carbon-dioxide {
    padding-bottom: 40px
}

.live-data-carousel .data-internal-carbon-dioxide .icon {
    width: 42px;
    height: 30px;
    left: -5px;
    top: 10px
}

.live-data-carousel .data-voltage {
    padding-bottom: 50px
}

.live-data-carousel .data-voltage:before {
    content: '';
    position: absolute;
    left: 24px;
    width: 3px;
    height: 5px;
    background-image: url("images/voltage-indicator.svg");
    background-size: contain;
    background-repeat: no-repeat
}

.live-data-carousel .data-voltage.voltage-10:before {
    top: 20px
}

.live-data-carousel .data-voltage.voltage-11:before {
    top: 14px
}

.live-data-carousel .data-voltage.voltage-12:before {
    top: 8px
}

.live-data-carousel .data-voltage.voltage-13:before {
    top: 1px
}

.live-data-carousel .data-voltage.voltage-14:before {
    top: 5px
}

.live-data-carousel .data-voltage .icon {
    width: 16px;
    height: 43px;
    top: -12px;
    left: 13px
}

.live-data-carousel .data-voltage strong {
    display: inline-block
}

.live-data-carousel .data-system {
    font-size: 12px;
    position: relative
}

.live-data-carousel .data-system.data-consumption {
    padding-top: 17px
}

.live-data-carousel .data-system:after {
    content: '';
    position: absolute;
    right: 30px;
    top: 50%;
    height: 320px;
    width: 1px;
    background-color: #fff;
    margin-top: -16px
}

.live-data-carousel .datas-system>span {
    display: block;
    position: relative
}

.live-data-carousel .datas-system>span span {
    display: inline-block
}

.live-data-carousel .datas-system .data {
    font-family: 'Oswald', sans-serif;
    font-size: 13px;
    padding-left: 45px
}

.live-data-carousel .datas-system .data-title {
    position: absolute;
    left: 0;
    font-size: 9px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 45px
}

.sr-only {
    display: none
}

.sponsor-text {
    padding-bottom: 70px
}

.invest-container {
    padding: 60px 20px
}

.live-container {
    min-height: 100vh;
    background-size: cover;
    background-position: center;
    position: relative
}

.live-container>.container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding-bottom: 50px
}

.live-video-container {
    padding-right: 40px
}

.live-video-container2 {
    padding-left: 40px
}

.live-video-container .youtube-video .play-button,
.live-video-container2 .youtube-video .play-button {
    -webkit-box-shadow: none;
    box-shadow: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #58c1ee;
    opacity: 1
}

.live-video-container .youtube-video .play-button:before,
.live-video-container2 .youtube-video .play-button:before {
    margin-left: 2px
}

.live-container-super {
    position: absolute;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.live-title {
    color: #fff;
    position: relative;
    font-size: 40px;
    padding-left: 50px;
    line-height: 40px;
    margin-bottom: 50px;
    padding-top: 60px
}

.live-title:before {
    content: '';
    position: absolute;
    left: 8px;
    width: 30px;
    height: 30px;
    top: 50%;
    margin-top: 15px;
    border-radius: 50%;
    background-color: #ffffff
}

.news-title {
    font-weight: 500;
    font-size: 40px;
    color: #52b8d3
}

.news-content {
    margin-top: 45px
}

.live-news-single {
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    color: #ffffff;
    padding: 25px 0;
    position: relative
}

.live-news-single:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background-color: #58c1ee
}

.live-news-single:first-child:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 2px;
    background-color: #58c1ee
}

.news-text {
    font-size: 12px;
    color: #52b8d3;
    padding-left: 265px;
    position: relative;
    padding-right: 20px
}

@media (max-width: 767px) {
    .live-title,
    .news-title {
        font-size: 30px
    }
    .live-title {
        margin-bottom: 20px
    }
    .news-content {
        margin-top: 20px
    }
    .live-news-single {
        font-size: 13px;
        line-height: 17px;
        padding: 15px 0
    }
    .live-news-outer {
        position: relative;
        left: 0;
        width: 100%
    }
}

.hp-video {
    position: relative;
    height: 100vh
}

.video-text,
.video-video {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1
}

.video-text {
    left: 0;
    padding-right: 70px !important;
    color: #fff
}

.video-text h3 {
    font-size: 40px;
    padding-bottom: 10px
}

.video-text .button,
.ocean-view .button {
    background-color: #fff;
    color: #0e0749;
    border-color: #fff;
    padding: 0 32px
}

.video-text .button:hover,
.ocean-view .button:hover {
    background-color: transparent;
    color: #fff
}

.video-video {
    left: 33.33333%
}

.feed-embed iframe {
    width: 100%;
    border: 0;
    height: 400px
}

.ocean-live,
.hp-press {
    text-align: center;
    color: #fff;
    position: relative
}

.ocean-live h3,
.hp-press h3 {
    font-size: 40px;
    padding-bottom: 10px
}

.ocean-live:after,
.hp-press:after {
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    background-color: #58c1ee
}

.ocean-live {
    padding-bottom: 150px
}

.ocean-live:after {
    display: none
}

.ocean-live-text {
    padding-bottom: 30px
}

.ocean-view {
    padding-bottom: 40px
}

.hp-press {
    padding-bottom: 30px
}

.hp-press h3 {
    padding-bottom: 45px;
    padding-top: 50px
}

.hp-press .title,
.hp-press .more {
    text-align: left
}

.ocean-live:after {
    bottom: -40px;
    height: 64px
}

.hp-press:after {
    top: 120px;
    height: 260px
}

@media (max-width: 1199px) {
    .live-data-text .carousel-indicators {
        width: auto
    }
    .live-data-text .carousel-indicators a {
        margin: 0 10px 15px !important
    }
    .live-data-carousel {
        left: calc( 50% + 15px)
    }
    .live-data-carousel .carousel-item {
        padding: 0 70px
    }
    .footer.footer-hp {
        background-position: center bottom
    }
}

@media (max-width: 991px) {
    .live-news-container {
        padding-top: 50px
    }
    .live-container>.container {
        position: relative;
        top: 0;
        left: 0;
        -webkit-transform: none;
        transform: none
    }
    .live-data-carousel {
        left: 0;
        width: 100%
    }
    .live-data-text {
        width: 100%;
        padding-right: 80px;
        padding-left: 80px;
        text-align: center
    }
    .live-data-carousel .carousel-item {
        height: 100vh
    }
    .biospheres {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        padding: 0 30px
    }
    .biospheres h4 {
        font-size: 30px;
        color: #58c1ee;
        width: 100%;
        text-transform: uppercase;
        padding-bottom: 60px;
        text-align: center;
        margin-left: -30px
    }
    .live-data-container:after {
        display: none
    }
    .live-data-container:before {
        height: 90px;
        top: auto;
        bottom: -75px
    }
    .live-data-carousel .data-system:after {
        height: 30px
    }
    .video-text,
    .video-video {
        position: static;
        -webkit-transform: none;
        transform: none
    }
    .hp-video-outer {
        padding-top: 25px
    }
    .video-text {
        text-align: center;
        margin-top: -50px;
        padding-right: 0 !important
    }
    .hp-video-outer:before {
        height: 90px;
        top: 0
    }
    .hp-video-outer:after {
        display: none
    }
}

@media (max-width: 767px) {
    .carousel-home .carousel-content h2 {
        font-size: 30px;
        padding: 0 15px
    }
    .carousel-home .carousel-content .button {
        font-size: 13px;
        line-height: 33px
    }
    .parallax-single .button {
        font-size: 13px;
        line-height: 33px
    }
    .parallax-single .parallax-text {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
        text-align: center;
        padding-right: 0;
        font-size: 13px
    }
    .parallax-single .parallax-text h3 {
        padding: 50px 0 40px;
        font-size: 30px
    }
    .parallax-single .parallax-circle {
        position: relative;
        font-size: 30px;
        left: 0;
        top: auto;
        width: 66px;
        height: 66px;
        margin: 110px auto 0;
        text-align: center
    }
    .parallax-circle-outer:before {
        height: 90px
    }
    .parallax-circle-outer:after {
        display: none
    }
    .parallax-single .parallax-side {
        padding-left: 0;
        position: relative;
        left: 0;
        width: 100%;
        top: 0;
        font-size: 15px;
        text-align: center;
        -webkit-transform: none;
        transform: none;
        padding-top: 185px
    }
    .parallax-single:nth-child(2) .parallax-circle {
        font-size: 20px
    }
    .parallax-single .parallax-circle em,
    .parallax-single .parallax-circle i {
        font-size: 13px
    }
    .parallax-side:after {
        content: '';
        position: absolute;
        height: 30px;
        left: 50%;
        margin-left: -1px;
        width: 2px;
        bottom: -40px;
        background-color: #58c1ee
    }
    .live-data-carousel .carousel-item,
    .live-data-text {
        padding: 0
    }
    .live-data-text {
        font-size: 13px
    }
    .live-data-text h3 {
        font-size: 30px
    }
    .live-data-text .carousel-indicators a {
        font-size: 13px;
        line-height: 30px;
        padding: 0 20px;
        width: auto
    }
    .biospheres {
        padding: 0
    }
    .biospheres h4 {
        margin-left: 0
    }
    .live-data-carousel .carousel-item .datas {
        -webkit-transform: scale(0.8);
        transform: scale(0.8)
    }
    .live-data-carousel .data-system {
        font-size: 7px
    }
    .live-data-carousel .data-system:after {
        top: 17px;
        margin-top: 0;
        right: 0
    }
    .live-data-carousel .datas-system {
        padding-left: 10px !important
    }
    .ocean-live,
    .hp-press,
    .video-text,
    .hp-press {
        font-size: 13px
    }
    .ocean-live h3,
    .hp-press h3,
    .video-text h3,
    .hp-press h3 {
        font-size: 30px
    }
    .ocean-live .button,
    .hp-press .button,
    .video-text .button,
    .hp-press .button {
        font-size: 13px;
        line-height: 33px
    }
}

.footer-separator {
    position: relative
}

.footer-separator:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 20px;
    width: 1px;
    background: white;
    right: 30px
}

.page-content-1 {
    padding-top: 170px;
    position: relative
}

.page-content-1.globe:before {
    content: '';
    position: absolute;
    background-image: url("images/globe.svg");
    background-size: contain;
    width: 340px;
    height: 679px;
    bottom: 0;
    right: 0;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    z-index: 1
}

.page-template-default.page-template-default .navbar {
    background-color: #020649
}

.page-content-1,
.page-content-2 {
    padding-bottom: 80px
}

.page-content-1 h1,
.page-content-1 h2,
.page-content-1 h3,
.page-content-1 h4,
.page-content-2 h1,
.page-content-2 h2,
.page-content-2 h3,
.page-content-2 h4 {
    color: #020649;
    margin-bottom: 20px;
    margin-top: 30px
}

.page-content-1 h1,
.page-content-2 h1 {
    font-size: 50px
}

.page-content-1 h2,
.page-content-2 h2 {
    font-size: 40px
}

.page-content-1 h3,
.page-content-2 h3 {
    font-size: 30px
}

.page-content-1 h4,
.page-content-2 h4 {
    font-size: 15px
}

.page-content-2 {
    padding-top: 50px;
    background-color: #f1f2f2
}

.parallax-single .hp-parallax-fixed {
    width: 100%;
    position: fixed;
    padding-right: 0
}

.parallax-single .hp-parallax-fixed .container-inner {
    width: 50%;
    padding-right: 100px
}

.parallax-single .parallax-text:not(.hp-parallax-fixed) .container {
    max-width: 100% !important;
    padding: 0 !important
}

.parallax-single .first-para {
    display: block !important
}

.animated {
    opacity: 1
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.fadeInRight,
.fadeInLeft,
.fadeInUp,
.fadeInDown {
    opacity: 0;
    -webkit-transform: translateX(400px);
    transform: translateX(400px)
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-400px)
    }
    50% {
        opacity: 0.3
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0)
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-400px);
        transform: translateX(-400px)
    }
    50% {
        opacity: 0.3
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInLeft {
    opacity: 0;
    -webkit-transform: translateX(-400px);
    transform: translateX(-400px)
}

.fadeInLeft.go {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(400px)
    }
    50% {
        opacity: 0.3
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0)
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(400px);
        transform: translateX(400px)
    }
    50% {
        opacity: 0.3
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInRight {
    opacity: 0;
    -webkit-transform: translateX(400px);
    transform: translateX(400px)
}

.fadeInRight.go {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

#cards .grid {
    padding: 10px;
    min-height: 900px
}

.light #cards .view-more-button {
    background-color: #fff !important;
    color: #0e0749;
    border: 1px solid #fff !important;
    padding: 0 32px;
    line-height: 41px;
    font-weight: 600;
    font-size: 15px;
    border-radius: 20px;
    outline: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease
}

.light #cards .view-more-button:hover {
    color: #fff !important;
    background-color: transparent !important
}

.footer-blue {
    padding-top: 20px;
    background-color: #020649
}

@media (max-width: 960px) {
    .video-text.col-12,
    .video-container.col-12 {
        width: 100% !important
    }
}

.live-data-external {
    position: relative;
    padding-left: 85px;
    color: #fff;
    font-size: 20px;
    margin-bottom: 50px
}

.live-data-external strong {
    font-weight: 700;
    text-transform: uppercase;
    display: block
}

.live-data-external .data {
    font-size: 40px;
    display: block;
    padding-bottom: 10px
}

.live-data-external .icon {
    fill: #fff;
    width: 66px;
    height: 80px;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media (max-width: 991px) {
    .live-data-external {
        text-align: left
    }
    .live-data-external .icon {
        -webkit-transform: none;
        transform: none
    }
    .live-video-container,
    .live-video-container2 {
        padding: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%
    }
    .live-video-container2 {
        margin-top: 20px
    }
    #cards .grid {
        min-height: 1100px
    }
}

@media (max-width: 767px) {
    #cards .grid {
        min-height: 2300px
    }
    .col-4.col-4-important {
        width: 33.33333% !important
    }
    .col-8.col-8-important {
        width: 66.66667% !important
    }
    .col-12.col-12-important {
        width: 100% !important
    }
    .live-data-external .icon {
        width: 33px;
        height: 40px
    }
    .live-data-external {
        padding-left: 45px;
        font-size: 12px;
        margin-bottom: 30px;
        line-height: 17px
    }
    .page-template-template-project .intro:after,
    .page-template-template-sponsors .intro:after {
        bottom: -85px;
        height: 255px
    }
}

.video-live {
    position: relative
}

.video-live .video-live-titolo {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 20px;
    color: #fff;
    font-size: 15px
}

#popupContainer {
    display: flex;
    opacity: 0;
    visibility: hidden;

    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 10000;

    transition-property: all;
    transition-duration: 1s;
}

#popupContainer.visible {
    display: flex;
    opacity: 1;

    transition-property: all;
    transition-duration: 1s;
}

#popupContainer .popup {
    position: relative;
    margin: auto;
    width: 80%;
    max-width: 1140px;
    padding: 80px 40px;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    font-size: large;
    text-align: center;
    text-shadow: 1px 1px 3px #ddd;
    color: #000;
    cursor: pointer;
}

#popupContainer .popup h3 {
    margin-bottom: 1em;
}

#popupContainer svg.closeButton {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 32px;
    height: 32px;
    
    cursor: pointer;
}

#popupContainer svg.closeButton:hover {
    background-color: #eee;
}

@media (min-width: 1200px) {
    #popupContainer .popup {
        margin: auto 3em 3em auto;
        width: auto;
    }
}
