/* NAVBAR */

.navbar-img, .navbar-img img {
    width: 100%;
    padding-top: 1vw;
}

.navbar-urls {
    position: absolute;
    bottom: 0.45vw;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: row;
}

.my-navbar-mobile {
    color: #2C387F;
    position: fixed;
    display: none;
    width: 100%;
    height: 117.74vw;
    z-index: 10;
    background-color: white;
}

#navbar-menu {
    display: none;
}

.navbar-urls-mobile {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    margin-top: 12.4vw;
    font-size: 5vw;
}

.close-button {
    position: absolute;
    cursor: pointer;
    bottom: -12.1vw;
    right: 4vw;
    width: 12.1vw;
}

.logos img {
    padding-top: 8vw;
    width: 8.54vw;
}

.navbar-urls-mobile>.item {
    border-bottom: blue 2px solid;
    width: 100%;
    text-align: center;
}

.navbar-urls-mobile .item {
    height: 12.4vw;
}

.navbar-urls-mobile a {
    font-weight: 700;
    color: #2C387F !important;
}

.hamburger {
    cursor: pointer;
    top: 4vw;
    right: 4vw;
    position: absolute;
    width: 12.1vw;
}

.navbar-urls .item {
    width: 13.56vw;
    font-size: 1.4vw;
    text-align: center;
    border-right: 1px white solid;
}

.navbar-item-border-left {
    border-left: 1px white solid;
}

.navbar-urls .text a {
    color: white !important;
    text-decoration: none;
}

.navbar-urls .text {
    transition: transform 0.2s ease-in-out;
}

.navbar-urls .text:hover {
    transform: scale(1.1);
}

/* MAIN */

.main .background {
    object-fit: cover;
    object-position: 50% 100%;
    width: 100%;

    min-height: 40vw;
}

.top-text {
    position: absolute;
    width: 57.93vw;
    top: 12.13vh;
    left: 16vw;
}

.facebook {
    position: absolute;
    width: 2.93vw;
    top: 1.37vw;
    right: 13.75vw;
}

.instagram {
    position: absolute;
    width: 2.93vw;
    top: 1.37vw;
    right: 10.06vw;
}

@media (max-width: 992px) {
    .main .background {
        height: 100vh;
    }
    .top-text {
        top: 19.03vh;
        left: 4.50vw;
        width: 85vw;
    }
}

@media (max-width: 992px) {
    .main .background {
        height: 100vh;
    }
}

/* ENTRY */

.entry-button {
    width: 77.4vw;
    margin-top: 0;
    margin-bottom: 3vw;
}

@media (min-width: 992px) {
    .entry-button {
        width: 32.43vw;
        margin-top: 0;
        margin-bottom: 1.12vw;
    }
}

.entry-title {
    font-size: 4.2vw;
    font-weight: 600;
    color: #E85C36
}

.entry-text {
    font-size: 4vw;
    margin-top: 6vw;
    width: 90vw;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    margin-bottom: 10vw;
}

@media (max-width: 992px) {
    .entry-text br {
        display: none;
    }
}

@media (min-width: 992px) {
    .entry-title {
        font-size: 1.8vw;
    }
    .entry-text {
        width: unset;
        text-align: center;
        font-size: 1.7vw;
        margin-bottom: 2.75vw;
        margin-top: 4.5vw;
    }
}

/* IMAGE DIV 1 */

.image-div-1 .image-text {
    position: absolute;
    top: 4.2vw;
    left: 4.2vw;
}

.image-div-1 {
    background: url("../img/pic_02_mobile.jpg");
    background-size: contain;
    padding-bottom: 60.05%;
}

@media (min-width: 992px) {
    .image-div-1 .image-text {
        top: 5vw;
        left: 16.08vw;
    }
    .image-div-1 {
        background: url("../img/pic_02.jpg");
        background-size: contain;
        padding-bottom: 50%;
    }
}

/* IMAGE DIV 2 */

.image-div-2 .image-text {
    position: absolute;
    bottom: 4.2vw;
    right: 4.2vw;
    text-align: right;
}

.image-div-2 {
    background: url("../img/pic_03_mobile.jpg");
    background-size: contain;
    padding-bottom: 60.05%;
}

@media (min-width: 992px) {
    .image-div-2 .image-text {
        top: 22.68vw;
        right: 17.81vw;
        left: unset;
        text-align: right;
    }
    .image-div-2 {
        background: url("../img/pic_03.jpg");
        background-size: contain;
        padding-bottom: 50%;
    }
}

/* IMAGE DIV 3 */

.image-div-3 .image-text {
    position: absolute;
    top: 4.2vw;
    left: 4.2vw;
}

.image-div-3 {
    background: url("../img/pic_04_mobile.jpg");
    background-size: contain;
    padding-bottom: 60.05%;
}

@media (min-width: 992px) {
    .image-div-3 .image-text {
        top: 5vw;
        left: 16.08vw;
    }
    .image-div-3 {
        background: url("../img/pic_04.jpg");
        background-size: cover;
        background-position: 50% 50%;
        padding-bottom: 50%;
    }
}

/* FLOATING TEXT */

.mobile-text {
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    width: 92vw;
    margin-top: 4.1vw;
    margin-bottom: 8.2vw;
}

.image-text>.title {
    margin-bottom: 1.87vw;
}

@media (min-width: 992px) {
    .image-text>.text {
        line-height: 2.3em
    }
}

/* GALLERY DIV */

.gallery-div {
    padding-top: 2.25vw;
    background-color: #EEE9E5;
}

.gallery-title {
    display: flex;
    justify-content: center;
    color: #2C387F;
    font-size: 2.5vw;
    font-weight: 700;
    margin-bottom: 1.62vw;
}

.gallery-title span {
    align-self: flex-end;
}

.gallery-title img {
    align-self: flex-start;
    width: 4.37vw;
    margin-right: 2.25vw;
    margin-left: 2.25vw;
}

@media (max-width: 992px) {
    .gallery-title {
        font-size: 4.5vw;
    }
    .gallery-title img {
        width: 10.2vw;
        margin-right: 5.8vw;
        margin-left: 5.8vw;
    }
}

.gallery-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.gallery .arrow {
    cursor: pointer;
    position: absolute;
    width: 2.68vw;
    top: 50%;
    transform: translateY(-50%);
}

.left-arrow {
    left: -4.12vw;
}

.right-arrow {
    right: -4.12vw;
}

@media (max-width: 992px) {
    .gallery .arrow {
        width: 6.5vw;
    }
    .left-arrow {
        left: 0px;
    }
    .right-arrow {
        right: 0px;
    }
}

.gallery-container .main-img {
    border: solid 0.31vw white;
}

.main-img img {
    width: 100%;
}

@media (max-width: 992px) {
    .gallery-container {
        width: 92.5vw;
    }
    .gallery-container .main-img {
        border: solid 0.4vw white;
    }
}

@media (min-width: 992px) {
    .gallery-container {
        width: 58.56vw;
    }
}

.thumbnails {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2.68vw;
}

.thumbnails .active {
    outline: 0.18vw solid #2C387F;
}

.thumbnail {
    cursor: pointer;
    width: 5.87vw;
    height: 4.25vw;
    margin-right: 1.62vw;
    margin-bottom: 1.62vw;
}

@media (max-width: 992px) {
    .thumbnail {
        width: 20.4vw;
        height: 14.4vw;
        margin-right: 3.4vw;
        margin-bottom: 3.4vw;
    }
    .thumbnails .active {
        outline: 0.4vw solid #2C387F;
    }
}

.thumbnail>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* GUIDELINES */

.guidelines-section {
    display: flex;
    flex-direction: row;
    margin-left: 10vw;
    margin-top: 4.25vw;
}

.guidelines-div {
    width: 55vw;
    margin-right: 2.5vw;
}

@media (max-width: 992px) {
    .guidelines-section {
        margin-right: auto;
        margin-left: auto;
    }
    .guidelines-div {
        width: 92vw;
        margin-right: auto;
        margin-left: auto;
    }
}

.guidelines-div ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.guidelines-div li {
    padding-left: 1em;
    text-indent: -1em;
}

.guidelines-div li::before {
    content: "\25A0";
}

.guidelines-div>.title {
    border-bottom: 2px solid #34397F;
}

.side-banners {
    flex-direction: column;
    padding-left: 1.62vw;
    border-left: 1px solid #939498;
}

.side-banners img {
    align-self: flex-start;
    margin-bottom: 1.62vw;
    width: 20.87vw;
}

@media (max-width: 992px) {
    .side-banners {
        align-items: center;
        padding-left: unset;
    }
    .side-banners img {
        width: 92vw;
    }
}

.map {
    width: 78%;
    margin-top: 2.31vw;
    margin-bottom: 2.31vw;
    align-self: flex-start
}

.map-title {
    font-size: 4vw;
    color: black;
}

/* FOOTER */

.footer {
    background-color: #EDEDED;
}

.footer .logo {
	width: 7vw;
    	padding-top: 2vw;
    	padding-bottom: 2vw;
}

.footer-text{
	width: 26.25vw;
}

.footer-text-sm{
	width: 80vw;
}

/* MISC */

.relative {
    position: relative !important;
}

a {
    text-decoration: none !important;
}

/* MODAL */

#myImg {
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
}

#myImg:hover {
    opacity: 0.7;
}

/* The Modal (background) */

.modal {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Stay in place */
    z-index: 1;
    /* Sit on top */
    padding-top: 100px;
    /* Location of the box */
    left: 0;
    top: 0;
    width: 100%;
    /* Full width */
    height: 100%;
    /* Full height */
    overflow: auto;
    /* Enable scroll if needed */
    background-color: rgb(0, 0, 0);
    /* Fallback color */
    background-color: rgba(0, 0, 0, 0.9);
    /* Black w/ opacity */
}

/* Modal Content (image) */

.modal-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
}

/* Caption of Modal Image */

#caption {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
    text-align: center;
    color: #ccc;
    padding: 10px 0;
    height: 150px;
}

/* Add Animation */

.modal-content, #caption {
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
    from {
        -webkit-transform: scale(0)
    }
    to {
        -webkit-transform: scale(1)
    }
}

@keyframes zoom {
    from {
        transform: scale(0)
    }
    to {
        transform: scale(1)
    }
}

/* The Close Button */

.close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

.close:hover, .close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

/* 100% Image Width on Smaller Screens */

@media only screen and (max-width: 700px) {
    .modal-content {
        width: 100%;
    }
}