/* ==========================================================================
CUSTOM CSS
========================================================================== */

#pre-loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999999;
}

#status {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

body {
    padding-top: 70px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
}

header, section {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

/*header {
    padding-top: 8rem;
}*/

header.full-height-section, section.full-height-section {
    min-height: 100%;
    height: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
}

.section-title {
    font-family: museo-sans, sans-serif;
    font-weight: 700;
}

.section-sub-title {
    font-family: museo-sans, sans-serif;
    font-weight: 500;
}

.alert#cookie-consent {margin-bottom: 0px;}

.full-size-background {
    background: url(../img/default-hero-image.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/default-hero-image.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/default-hero-image.jpg', sizingMethod='scale')";
}

.web-header-background {
    background-color: #210a14;
    background: url(../img/web-header.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/web-header.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/web-header.jpg', sizingMethod='scale')";
}

.dark-background-image {
    background-color: #210a14;
    background: url(../img/dark-background-image.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/dark-background-image.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/dark-background-image.jpg', sizingMethod='scale')";
}

.web-header-background-left {
    background-color: #210a14;
    background: url(../img/web-header.jpg) no-repeat left center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/web-header.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../img/web-header.jpg', sizingMethod='scale')";
}

.font-museo-sans {
    font-family: museo-sans, sans-serif;
}

.font-weight-medium {
    font-weight: 500;
}

/* ==========================================================================
GENERAL STYLES
========================================================================== */

.content-separator-left {
    border-top: 4px solid #ffffff;
    width: 100%;
    margin: 1.6rem 0;
}

.content-separator-left-dark {
    border-top: 4px solid #212529;
    width: 100%;
    margin: 1.6rem 0;
}

.content-separator-thin {
    border-top-width: 1px;
}

.block-description {
    position: relative;
}

.block-page-link, .block-page-link:hover {
    text-decoration: none;
    color: initial;
}

.block-page-link:hover img {
    opacity: 0.8;
}

.block-description span {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 0.8rem;
    padding: 10px 25px;
}

.btn-style {
    border-radius: 0px;
    padding: 0.4rem 3rem;
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
}

.btn-style.btn-sm {
    padding: 0.3rem 2rem;
    font-size: 0.8rem;
}

h1 .no-wrap {
    white-space: wrap;
}

a {
    color: #ED1B2F;
}

a:hover {
    color: #ED1B2F;
}

.bg-red a {
    color: #ffffff;
}

.bg-red a:hover {
    color: #ffffff;
}

/* ==========================================================================
COLOURS
========================================================================== */

.bg-black {
    background-color: #000000;
}

.bg-nav-white {
    background-color: #ffffff;
}

.bg-light-grey {
    background-color: #eaeaea;
}

.bg-coal-black {
    background-color: #242424;
}

.bg-rich-black {
    background-color: #021522;
}

.bg-blue-green {
    background-color: #3B90B3;
}

.bg-brink-pink {
    background-color: #F9627D;
}

.bg-red {
    background-color: #ED1B2F;
}

.text-light-grey {
    color: #eeeeee;
}

.text-regular-grey {
    color: #cccccc;
}

.text-blue-green {
    color: #3B90B3;
}

.text-brink-pink {
    color: #F9627D;
}

.text-red {
    color: #ED1B2F;
}

.btn-rich-black {
    background-color: #021522;
    color: #ffffff;
}

.btn-rich-black:hover {
    background-color: #052236;
    color: #ffffff;
}

.btn-brink-pink {
    background-color: #F9627D;
    color: #ffffff;
}

.btn-brink-pink:hover {
    background-color: #db4560;
    color: #ffffff;
}

.btn-white {
    background-color: #ffffff;
    color: #021522;
}

.btn-white:hover {
    background-color: #f9f9f9;
    color: #021522;
}

.btn-red {
    background-color: #ED1B2F;
    color: #ffffff;
}

.btn-red:hover {
    background-color: #ce1627;
    color: #ffffff;
}

.btn-white {
    background-color: rgba(255, 255, 255, 1);
    color: #ED1B2F;
}

.btn-white:hover {
    background-color: rgba(255, 255, 255, 0.9);
    color: #ED1B2F;
}

.border-rich-black {
    border-color: #021522;
}

.border-blue-green {
    border-color: #3B90B3;
}

.border-brink-pink {
    border-color: #db4560;
}

.bg-gradient {
    background: linear-gradient(45deg, #021522, #3b90b3);
    background-size: 400% 400%;
    background-position: 0% 100%;
    -webkit-animation: gradient-animation 5s ease;
    -moz-animation: gradient-animation 5s ease;
    animation: gradient-animation 5s ease;
}
@-webkit-keyframes gradient-animation {
    0% {background-position: 100% 0%}
    100% {background-position: 0% 100%}
}
@-moz-keyframes gradient-animation {
    0% {background-position: 100% 0%}
    100% {background-position: 0% 100%}
}
@keyframes gradient-animation {
    0% {background-position: 100% 0%}
    100% {background-position: 0% 100%}
}

.bg-black-transparent {
    background-color: rgba(0, 0, 60, 0.6);
    -webkit-backdrop-filter: blur(30px);
    backdrop-filter: blur(30px);
}

/* ==========================================================================
HEADER
========================================================================== */

header h1, .registration-header h1 {
    font-size: 2.5rem;
    line-height: 2.5rem;
}

/* ==========================================================================
NAVIGATION
========================================================================== */

.dropdown-item.active, .dropdown-item:active {
    background-color: #3B90B3;
}

.nav-link {
    font-size: 0.8rem;
    text-align: center;
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
    color: #ED1B2F;
}

/* ==========================================================================
AGENDA
========================================================================== */

.table tbody tr td, .table tbody tr th, .table .thead-dark th {
    padding: 0.8rem 1.2rem;
    border: 0px;
}

.table tbody tr th:first-child {
    width: 25%;
}

.table tbody tr td:nth-child(4) {
    text-align: center;
}

.table .thead-dark th {
    background-color: #ED1B2F;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.14rem;
    border-color: transparent;
}

.table tbody tr:nth-of-type(even) {
    background-color: rgba(236, 27, 46, 0.2);
}

.table tbody tr td h4, .table tbody tr th:first-child {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0px;
}

.table tbody tr td ul {
    margin-top: 0.6rem;
    margin-bottom: 0px;
}

.table tbody tr td p {
    margin-bottom: 0.4rem;
}

/* ==========================================================================
SPEAKERS
========================================================================== */

.image-container {
    position: relative;
    overflow: hidden;
}

.image-container:hover .image-overlay {
    opacity: 1;
}

.image-overlay {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(2, 21, 34, 0.9);
    opacity: 0;
    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

/* ==========================================================================
CAROUSEL
========================================================================== */

.album-carousel .owl-stage-outer {
    min-height: 400px;
    padding: 3% 0;
}

.album-carousel-item {
    text-align: center;
}

.album-carousel-item img, .album-carousel-item video {
    margin: auto;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.4);
    margin-top: 0%;
    width: 75%!important;
    border: 8px solid #ffffff;
}

.album-carousel-item p {
    font-size: 0.8rem;
}

.album-carousel .carousel-control-prev {
    top: -7%;
    left: 5%;
    width: auto;
    text-decoration: none;
    opacity: 0.8;
    color: #292929;
}

.album-carousel .carousel-control-next {
    top: -7%;
    right: 5%;
    width: auto;
    text-decoration: none;
    opacity: 0.8;
    color: #292929;
}

.album-carousel .carousel-control-prev:hover, .album-carousel .carousel-control-next:hover {
    opacity: 1;
}

.carousel-control-next, .carousel-control-prev {

}

/* ==========================================================================
SPEAKERS
========================================================================== */

.redwheel-logo-icon {
    position: absolute;
    width: 200px;
    height: 200px;
    top: -10%;
    z-index: 900;
    display: none;
}

.redwheel-logo-icon.icon-left {
    left: -35%;
}

.redwheel-logo-icon.icon-right {
    right: -35%;
}

.speaker-img {
    position: relative;
    display: block;
    z-index: 999;
    width: 100%;
    max-width: 250px;
    margin: 0px auto;
}

h3.column-speaker-name {
    font-size: 1.2rem;
}

.job-title {
    display: block;
}

.job-title h5 {
    font-size: 0.9rem;
    margin-bottom: 2rem;
}

/* ==========================================================================
BOARDROOMS
========================================================================== */

.boardroom-synopsis {
    margin-top: 20px;
}

.boardroom-synopsis p {
    margin-bottom: 0px;
}

.boardroom-synopsis.collapse:not(.show) {
    height: 60px !important;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
}

.boardroom-synopsis.collapsing {
    min-height: 60px !important;
}

.btn-read-more {
    margin-top: 20px;
}

/* ==========================================================================
MAP
========================================================================== */

.map-container {
    position: relative;
    color: #222;
    background-attachment: scroll;
    background-image: url(../img/map-image.jpg);
    background-position: center center;
    background-repeat: none;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
    min-height: 500px;
}

#map {
    position:absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 0; /* Set z-index to 0 as it will be on a layer below the contact form */
}

/* ==========================================================================
FORM
========================================================================== */

/*.checkbox-btn input[type=checkbox] {
    position: absolute;
    clip: rect(0,0,0,0);
    pointer-events: none;
}

.rating-btn {
    background-color: #f8f9fa;
    color: #cccccc;
    border-color: #eeeeee;
    margin-right: 10px;
}

.rating-btn:hover {
    background-color: #0069d9;
    border-color: #0062cc;
    color: #ffffff;
}

.rating-btn:not(:disabled):not(.disabled).active, .rating-btn:not(:disabled):not(.disabled):active, .show>.rating-btn.dropdown-toggle {
    color: #ffffff;
    background-color: #007bff;
    border-color: #007bff;
}*/

.registration-form-container {
    padding: 5rem 3rem;
}

.form-control, .custom-select  {
    border-radius: 1rem;
    border: 0px;
    padding: .5rem 1rem;
}

.registration-header {
    margin: 20% 0;
}

/* ==========================================================================
FOOTER
========================================================================== */

footer {
    padding-top: 80px;
    padding-bottom: 80px;
}
