/* #featbody, */
html {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: 'Saira-Regular', 'Lato', sans-serif;
}

#map {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

@font-face {
    font-family: 'Saira-Regular';
    src: url('fonts/Saira-Regular.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'ManufakturBold';
    src: url('fonts/ManufakturBold.otf') format('opentype');
    font-weight: 400;
}

@font-face {
    font-family: 'ManufakturMedium';
    src: url('fonts/ManufakturMedium.otf') format('opentype');
    font-weight: 400;
}

/* For larger headings */
h1,
h2,
h3 {
    font-family: 'ManufakturBold', sans-serif;
    text-transform: uppercase;
}

/* For other headings */
h4,
h5,
h6 {
    font-family: 'ManufakturMedium', sans-serif;
    text-transform: uppercase;
}

p {
    font-family: 'Saira-Regular';
}

.poiPopup h3 {
    color: #fa0050;
    font-size: 1.7rem;
    font-weight: 400;
    margin-block-start: 7px;
    margin-block-end: 7px;
    line-height: 1em;
}

.poiPopup a {
    color: #52d2ff;
    text-decoration: underline;
}


.poiPopup p {
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 100;
}

.flytodropdownselect {
    font-family: 'Saira-Regular';
    font-size: 16px;
}

.mapboxgl-popup-content {
    background-color: #051c2c;
    border: 1px solid #8b8d9f;
    box-shadow: 1px 1px 6px 0px rgb(0 0 0 / 59%);
}

.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip {
    border-top-color: #8b8d9f;
    box-shadow: 1px 1px 6px 0px rgb(0 0 0 / 59%);
    /* border: 1px solid #8b8d9f; */
}

.mapboxgl-popup-close-button {
    color: #ffffff;
}


@media screen and (max-width: 768px) {

    .center-highlightsContainer {
        display: flex;
        justify-content: center;
        width: 100%;
        position: fixed;
        bottom: 29px;
        z-index: 100;
        left: 0;
    }

    .highlightsContainer {
        z-index: 200;
        position: relative;
        width: 95%;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        min-height: 183px;
    }

    .slide {
        height: 107px;
        border-radius: 5px;
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 10px;
        padding-bottom: 10px;
        margin-bottom: 10px;
        background-color: #051c2cd9;
        border: 1px solid #ffffff;
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
        margin: 0 5px 8px 5px;
        z-index: 99;
        overflow-y: clip;
        transition: height 0.3s ease-in-out;
        color: #ffffff;
        scrollbar-gutter: auto;
    }

    .slick-prev:before {
        /* content: "<"; */
        color: red;
        font-size: 25px;
    }

    .slick-next:before {
        /* content: ">"; */
        color: rgb(255, 255, 255);
        font-size: 25px;
    }
}

@media (min-width: 768px) {

    .highlightsContainer {
        z-index: 200;
        position: fixed;
        bottom: 39px;
        width: 276px;
        right: 30px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        min-height: 205px;
    }

    .slide {
        flex: none;
        /* width: 330px; */
        height: 125px;
        border-radius: 5px;
        padding-left: 15px;
        padding-right: 30px;
        padding-top: 10px;
        padding-bottom: 20px;
        margin-bottom: 10px;
        background-color: #051c2cd9;
        border: 1px solid #ffffff;
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
        /* margin: 5px; */
        /* scroll-snap-align: center; */
        z-index: 99;
        overflow-y: clip;
        transition: height 0.3s ease-in-out;
        color: #ffffff;
        scrollbar-gutter: auto;
    }

    .slick-prev:before {
        /* content: "<"; */
        color: #ffffff;
        font-size: 30px;
    }

    .slick-next:before {
        /* content: ">"; */
        color: #fa0050;
        font-size: 30px;
    }

    #toggleButtonContainer {
        position: static;
        padding: 0;
        margin-bottom: 10px;
    }
}


/* DROPDOWN */
.flyto-dropdown {

    /* position: fixed;
    bottom: 100px; */
    width: 276px;
    /* max-width: 140px; */
    min-height: 33px;
    /* padding: 3px; */
    /* background-color: rgba(26, 24, 24, 0.60); */
    z-index: 90;
    color: #1F323D;
    /* right: 28px; */
    /* border-radius: 3px 3px 3px 3px;
    display: flex;
    align-items: center;
    justify-content: center; */
}

/* .center-dropdown {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 198vh;
} */

.flytodropdownselect {
    width: 100%;
    height: 37px;
    padding-left: 10px;
    color: #ffffff;
    background-color: #00000094;
}

@media (max-width: 768px) {
    .flyto-dropdown {
        position: relative;
        width: 80%;
        min-height: 33px;
        z-index: 90;
    }

    .center-dropdown {
        display: flex;
        justify-content: center;
    }

    .flytodropdownselect {
        width: 100%;
        height: 30px;
        color: #ffffff;
        background-color: #000000b3;
    }

}

.slide h3 {
    color: #fa0050;
    font-size: 1.3rem;
    font-weight: 400;
    margin-top: 0px;
    margin-bottom: 0px;
}

.slide h4 {
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 400;
}

.slide p {
    /* color: #ffffff; */
    font-size: 1rem;
    font-weight: 100;
    margin-top: 0px;
}

/* .sponsorchapter.card h3 {
    color: #ffffff;
    font-weight: 700;
} */

/* .sponsorchapter.card h4 {
    color: #1a1818;
} */

.card-description {
    display: none;
    margin-top: 10px;
}

.card.expanded .card-description {
    display: block;
}

.card .content {
    display: none;
}

@media (min-width: 768px) {
    .card .content {
        display: block;
    }

    .card-description {
        display: none;
        margin-top: 10px;
    }

    .card.expanded .card-description {
        display: block;
    }
}


.readmore {
    font-weight: 800;
    font-size: 10px;
    text-decoration: underline;
}

#top-bar {
    height: 80px;
    z-index: 90;
    width: 100%;
    position: absolute;
    display: flex;
    justify-content: center;
    /* center items horizontally */
    align-items: center;
    /* padding: 0 20px;
    margin-top: 10px; */

}


.logo {
    display: flex;
    justify-content: center;
    /* center items inside the logo div */
    align-items: center;
    z-index: 99;
    position: fixed;
    touch-action: manipulation;
}

.logo img {
    height: 60px;
    filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.7));
}

@media (max-width: 768px) {
    .logo {
        display: flex;
        justify-content: center;
        /* center items inside the logo div */
        align-items: center;
        z-index: 99;
        /* position: fixed; */
        touch-action: manipulation;
    }

    .logo img {
        /* max-width: 120px; */
        /* adjust as needed */
        height: 35px;
        filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.7));
        /* adjust as needed */
    }
}


/* terranaut logo */
.fixed-logo {
    position: fixed;
    left: 50%;
    bottom: 0px;
    transform: translateX(-50%);
    z-index: 60;
}

.fixed-logo img {
    height: 29px;
    width: auto;
    opacity: 90%;
}

@media (max-width: 768px) {
    .fixed-logo {
        position: fixed;
        left: 50%;
        bottom: 0px;
        transform: translateX(-50%);
        z-index: 60;
    }

    .fixed-logo img {
        height: 22px;
        width: auto;
        opacity: 90%;
    }
}

.modal {
    display: none;
    position: fixed;
    z-index: 200;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
    align-items: center;
    justify-content: center;
}

.modal-content {
    background-color: rgb(0 0 0 / 90%);
    /*padding-top: 20px; */
    /* border: 1px solid #888; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 400px;
    height: 745px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border: 0.1px solid #ffffff99;
    border-radius: 0 0 0.3rem 0.3rem;
    padding-bottom: 5px;
}

@media (max-width: 768px) {
    .modal-content {
        background-color: rgb(0 0 0 / 90%);
        padding-top: 20px;
        /* border: 1px solid #888; */
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 300px;
        height: 610px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border: 0.1px solid #ffffff99;
        padding-bottom: 5px;
    }
}

.modal-content-landscape {
    background-color: rgb(0 0 0 / 90%);
    /* padding-top: 20px; */
    /* border: 1px solid #888; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 54%;
    height: 57%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media (max-width: 768px) {
    .modal-content-landscape {
        background-color: rgb(0 0 0 / 90%);
        padding-top: 20px;
        /* border: 1px solid #888; */
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        /* height: auto; */
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    /* 16:9 Aspect Ratio */
    overflow: hidden;
}

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

.share-modal-content {
    background-color: rgb(0 0 0 / 70%);
    /* padding-top: 20px; */
    border: 0.5px solid #888;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;
    width: 45vw;
    height: 300px;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Saira-Regular', 'Lato', sans-serif;
    color: #FFFFFF;
    border-radius: 5px;
}

.share-modal-content-left {
    display: none;
    /* flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    padding-top: 15px; */
}

@media (min-width: 768px) {
    .share-modal-content-left {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        height: 100%;
        padding-top: 15px;
    }
}

.share-modal-content-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.share-modal-content-bottom {
    position: absolute;
    bottom: 0px;
    left: 0px;
    height: 17px;
    width: 100%;
    background: #4A785687;

    text-align: center;
    font-weight: 100;
    font-size: 10px;
}

.share-modal-content a {
    color: #ff6542;
}

.share-modal-content input {
    width: 90%;
    padding: 5px 5px;
    margin: 2px 0;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.4);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.451);
    border-radius: 3px;
    font-size: 12px;
}

.share-modal-content button {
    background-color: rgba(255, 255, 255, 0);
    color: white;
    border: 0px solid rgba(255, 255, 255, 0);
    border-radius: 3px;
    font-size: 10px;
    text-decoration: underline;
}

.input-button-container {
    display: flex;
    justify-content: center;
}

.input-button-container input {
    width: 90%;
}

.input-button-container button {
    width: 10%;
}

.shareclose {
    display: block;
    color: #ffffff;
    float: center;
    font-size: 15px;
    font-weight: 400;
    padding-top: 20px;
}

.shareclose:hover,
.shareclose:focus {
    color: #ff6542;
    cursor: pointer;
}

a {
    color: #4264AF;
    cursor: pointer;
}

a:hover {
    color: #ffffff;
    cursor: pointer;
    font-weight: 800;
}

.closey {
    color: #ffffff;
    /* float: right; */
    /* font-size: 20px; */
    height: 30px;
    /* z-index: 1000; */
    font-family: 'Saira-Regular', 'Lato', sans-serif;
    font-weight: 700;
    /* text-align: right; */
    /* margin-right: 10px; */
    padding-top: 3px;
}

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

.closemodal {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    width: 100%;
    align-items: center;
}

.closemodal-emoji {
    font-size: 10px;
}

.weather-report {
    flex: none;
    position: fixed;
    top: 25px;
    min-width: 100px;
    max-width: 140px;
    min-height: 33px;
    padding: 5px;
    background-color: #1a181899;
    z-index: 10;
    color: #ffffff;
    right: 0px;
    border-radius: 3px 0px 0px 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

@media (min-width: 768px) {
    .weather-report {
        flex: none;
        position: fixed;
        min-width: 100px;
        width: 276px;
        min-height: 33px;
        padding: 5px;
        margin-left: 11px;
        background-color: #0000004f;
        z-index: 2;
        color: #ffffff;
        right: 30px;
        top: 35px;
        /* bottom: 572px; */
        border-radius: 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }
}

.weather-report p {
    font-weight: 300;
    font-size: 10px;
    color: #ffffff;
    text-transform: capitalize;
    margin: 0;
}


.swipemodal {
    display: block;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
}

.swipemodal-content {
    position: absolute;
    bottom: 0;
    width: 100%;
    /* background-color: #fefefe; */
    margin: auto;
    padding: 20px;
    /* border: 1px solid #888; */
    text-align: center;
}

.swipeGif {
    width: 150px;
    height: 150px;
}

#swipeGifDesktop {
    display: none;
    /* Hidden by default. */
    /* Position it as you want for desktop */
}

/* Media query for desktop viewports */
@media screen and (min-width: 1024px) {
    #swipeGifMobile {
        display: none;
        /* Hide mobile gif in desktop viewports */
    }

    #swipeGifDesktop {
        display: block;
        /* Show desktop gif in desktop viewports */
    }
}

/* SHARE TAB (USED TO BE CUSTOM CONTROLS) */

#share {
    transform: rotate(-90deg);
    /* The next two lines ensure that the transformation's origin is at the center, which can help maintain the visual appeal of the rotation. */
    transform-origin: center center;
    display: inline-block;
    color: #ffffff;
    font-weight: 600;
    cursor: pointer;
    /* This is necessary for the rotation to work correctly on inline elements like text. */
}

/* CSS media query for mobile devices */
@media screen and (max-width: 768px) {

    /* #fullscreen {
        display: none;
    } */
    .custom-controls {
        position: fixed;
        /* or adjust as needed */
        /* other properties for mobile */
    }
}

.custom-controls.fullscreen {
    position: fixed;
    z-index: 1;
}

.custom-controls {
    position: fixed;
    right: 0px;
    bottom: 235px;
    z-index: 1;
}

.controls-container {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    width: 30px;
    height: 90px;
    background: #fe0a4fdf;
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.391);
    border-radius: 5px 0 0 5px;
    touch-action: manipulation;
}

.control-icon {
    display: block;
    width: 25px;
    height: 25px;
    cursor: pointer;
    padding: 8px;
}


@media (min-width: 768px) {
    .custom-controls {
        /* position: fixed; */
        /* width: 0px; */
        /* height: 48px; */
        right: -1px;
        bottom: 356px;
        z-index: 1;
    }

    .controls-container {
        position: relative;
        display: flex;
        flex-direction: row;
        width: 32px;
        height: 114px;
        bottom: 35px;
        background: #051c2cd5;
        border: 1px solid #ffffff;
        box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.391);
        border-radius: 5px 0 0 5px;
        padding-top: 8px;
        padding-bottom: 8px;
        align-content: stretch;
        justify-content: center;
        align-items: center;
    }

    .control-icon {
        display: block;
        width: 35px;
        height: 35px;
        cursor: pointer;
        padding: 5px;
    }
}



/* 
.map-key-container {
    position: absolute;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: baseline;
    width: 100%;
    height: 60px;
    background: rgba(26, 24, 24, 0.60);
    border-radius: 0 3px 3px 0;
}

.key-text {
    font-family: 'Saira-Regular', 'lato';
    font-style: normal;
    font-weight: 100;
    font-size: 0.7em;
    color: #ffffff;
}

.map-key-container ul {
    list-style-type: none;
    padding-left: 0px;
    line-height: 0.9;
    margin-bottom: 0;
    margin-top: 6px;
}

@media (min-width: 768px) {
    .map-key {
        position: absolute;
        width: 138px;
        height: 60px;
        left: 30px;
        top: 20px;
        z-index: 1;
    }

    .map-key-container {
        position: absolute;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: baseline;
        width: 100%;
        height: 60px;
        background: rgba(26, 24, 24, 0.60);
        border-radius: 5px;
    }

    .key-text {
        font-family: 'Saira-Regular', 'lato';
        font-style: normal;
        font-weight: 300;
        font-size: 12px;
        color: #ffffff;
    }

    .map-key-container ul {
        list-style-type: none;
        padding-left: 0px;
        line-height: 0.9;
        margin-bottom: 0;
        margin-top: 6px;
    }
} */

.shepherd-arrow:before {
    background: #fa0050;
    content: "";
    transform: rotate(45deg);
}

.shepherd-footer {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: flex;
    justify-content: center;
    padding: 0 0.75rem 0.75rem;
}

/* Change the font of the text, title, and buttons */

.shepherd-text {
    font-family: 'Saira-Regular';
    font-weight: 600;
    font-size: 23px;
    color: #ffffff;
    text-align: center;
}

/* Change the background color of the step */
.shepherd-element {
    background-color: #fa0050;
}

/* Change the border radius of the modal */
.shepherd-modal-overlay-container {
    border-radius: 5px;
}

.shepherd-enabled.shepherd-element {
    width: fit-content;
    max-width: 276px;
}

.shepherd-has-title .shepherd-content .shepherd-header {
    background: #4A7856;
    padding: 0.5em;
}

.shepherd-title {
    color: #FAFAEF;
    font-weight: 700;
    text-align: center;
}


.shepherd-button {
    background: #ffffff;
    color: #FA0050;
    font-weight: 800;
    font-family: 'Saira-Regular';
    align-self: center;
}

.shepherd-arrow:before{
    background: #FA0050;
    color: #FA0050;
}

.shepherd-footer{
    justify-content: center;
}

@media (max-width: 768px) {
    .shepherd-tour-desktop {
        display: none
    }
}

@media (min-width: 768px) {
    .shepherd-tour-mobile {
        display: none
    }
}

#terranautlogo {
    position: absolute;
    bottom: 42px;
    right: 21px;
    max-width: 40px;
    /* Adjust the width of the logo as needed */
    z-index: 1000;
}

/* LEFT RIGHT CARD SCROLL FOR MOBILE */

@media (max-width: 768px) {
    .scroll-button-updown {
        display: none;
    }

    .scroll-button {
        position: fixed;
        bottom: 88px;
        width: 40px;
        height: 40px;
        right: 10px;
        transform: translateY(-50%);
        background: #616161;
        z-index: 100;
        /* border: 1px solid #ffffff70; */
        box-shadow: 0px 0px 20px rgb(148 148 148 / 60%);
        border-radius: 107px;
        display: flex;
        flex-direction: row;
        justify-content: center;
        touch-action: manipulation;
    }

    #left-button {
        left: 10px;
        background: #00000000;
        border: 0px;
    }

    #right-button {
        right: 10px;
        background: #00000000;
        border: 0px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}

/* UP DOWN CARD SCROLL FOR DESKTOP */

@media (min-width: 768px) {

    .scroll-button {
        display: none;
    }

    .scroll-button-container-updown {
        position: relative;
    }

    .scroll-button-updown {
        right: 275px;
        transform: translateX(-50%);
        position: fixed;
        bottom: 163px;
        width: 37px;
        height: 80px;
        background: #ffffffcc;
        z-index: 100;
        box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.391);
        border-radius: 34px;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        border: 3px solid #ffffff;
    }

    #up-button {
        left: 10px;
        background: #00000000;
        border: 0px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #down-button {
        right: 10px;
        background: #00000000;
        border: 0px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}

.desktop-only {
    display: none;
    /* By default, the element is hidden */
}

/* This media query will apply only for screens that are wider than 1024 pixels (typically desktop screens) */
@media (min-width: 768px) {
    .desktop-only {
        display: block;
        /* The element is displayed on desktop screens */
    }
}

.mobile-only {
    display: none;
    /* By default, the element is hidden */
}

/* This media query will apply only for screens that are wider than 1024 pixels (typically desktop screens) */
@media (max-width: 768px) {
    .mobile-only {
        display: block;
        /* The element is displayed on desktop screens */
    }
}

.viewportinfobox {
    position: fixed;
    top: 16px;
    left: 46px;
    background: white;
    padding: 5px;
    z-index: 100;
    width: 200px;
    height: 73px;
    font-size: 10px;
}

/* SUBSCRIBE TO ALERTS POPUP AND BUTTON STYLING */

@media (min-width: 768px) {
    .mapalert_signupBtn {
        z-index: 999;
        position: absolute;
        bottom: 252px;
        right: 31px;
    }
}

button#show-popup-btn {
    background: #fa0050;
    color: #ffffff;
    height: 30px;
    width: 170px;
    font-family: 'Saira-Regular';
    border: 1px solid #ffffff;
    border-radius: 3px;
}

@media (max-width: 768px) {
    .mapalert_signupBtn {
        z-index: 999;
        position: relative;
        top: 23px;
        left: 0px;
    }

    button#show-popup-btn {
        background: #051c2cd9;
        color: #fa0050;
        height: 30px;
        width: 140px;
        font-family: 'Saira-Regular';
        font-weight: 900;
        border: 1px solid #ffffff;
        border-radius: 3px;
    }

    .mapAlert-container {
        position: fixed;
        top: 25px;
        min-height: 33px;
        padding: 5px;
        /* background-color: rgba(26, 24, 24, 0.60); */
        z-index: 10;
        /* color: #ffffff; */
        left: 0px;
        border-radius: 0px 3px 3px 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }
}

.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.337);
    z-index: 1000;
}

.popup-content {
    background: #051c2cd9;
    width: 300px;
    margin: 10% auto;
    padding: 20px;
    position: relative;
    border-radius: 3px;
    border: 1px solid #ffffff;
    color: #ffffff;
}

.close-btn {
    position: absolute;
    top: 5px;
    right: 10px;
    cursor: pointer;
}

form {
    margin-bottom: 0px;
    width: 90%;
}

form input {
    font-family: 'Saira-Regular';
    width: 100%;
    border: 1px solid #ffffff;
    border-radius: 3px;
}

p.button input {
    background: #fa0050;
    color: #ffffff;
    height: 30px;
    width: 50%
}

.response {
    width: 100%;
    font-size: 13px;
    color: #fa0050;
}

/* Map controls */

button.mapboxgl-ctrl-fullscreen {
    bottom: 100px;
}

.map-rotate-controls {
    display: flex;
    flex-direction: column;
    /* Stack children vertically */
    align-items: flex-start;
    /* Align children to the start (left) of the container */
    background-color: rgba(0, 0, 0, 0.6);
    /* semi-transparent dark background */
    border-radius: 4px;
    /* rounded edges */
    padding: 1px;
    position: absolute;
    bottom: 37px;
    left: 50px;
    z-index: 999;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}

/* Style for each control row */
.map-rotate-controls .control-row {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    margin: 5px 11px 5px 0px;
}

/* Label styling */
.map-rotate-controls label {
    color: white;
    /* white text for visibility */
    margin: 0 2px 0 5px;
    font-size: 15px;
}

/* Input range track styling */
.map-rotate-controls input[type="range"] {
    width: 120px;
    appearance: none;
    height: 7px;
    background: #fa0050d1;
    border-radius: 2px;
    margin: 5px 5px;
}

/* Input range thumb styling */
.map-rotate-controls input[type="range"]::-webkit-slider-thumb {
    appearance: none;
    width: 15px;
    height: 15px;
    background-color: white;
    /* white thumb */
    border: 1px solid #aaa;
    /* border around thumb */
    border-radius: 50%;
    /* circular thumb */
    cursor: pointer;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
    /* slight shadow for depth */
}

.map-rotate-controls input[type="range"]::-moz-range-thumb {
    width: 15px;
    height: 15px;
    background-color: white;
    border: 1px solid #aaa;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
}

.larger-arrow {
    font-size: 1.5em;
}

.gradient-control {
    position: absolute;
    bottom: 70px;
    left: 10px;
    z-index: 100;
}

.gradientbtn {
    width: 29px;
    height: 29px;
}