.cbt-banner h4,
.cbt-banner p {
    text-transform: uppercase;
    margin: 0;
}

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

.cbt-banner,
.cbt-banner * {
    box-sizing: border-box;
}

.cbt-banner {
    border-radius: 24px;
    height: auto;
    display: flex;
    font-family: sans-serif;
    max-width: 851px;
    max-height: 300px;
    width: 100%;
    /* Ensure it takes full width up to max-width */
    margin: 0 auto;
    /* Center the banner itself */
}

.cbt-banner__text-container {
    background: #1C397E url("img/map.png") no-repeat;
    background-size: contain;
    background-position: center;
    width: 45%;
    height: auto;
    color: white;
    padding: 30px 40px;
    /* Increased padding */
    border-radius: 24px 0 0 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /* Distribute vertical space */
    position: relative;
}

.cbt-destination {
    width: 100%;
    margin-bottom: 15px;
    /* Add spacing between destinations */
}

.cbt-destination:last-child {
    margin-bottom: 0;
}

.cbt-destination-text {
    display: flex;
    width: 100%;
    /* Spread text across full width */
    align-items: center;
    font-weight: 700;
    font-size: 1.5rem;
    /* Slightly adjusted for better fit */
    text-transform: uppercase;
    line-height: 1.2;
}

.cbt-destination-text img {
    height: 18px;
    /* Fixed height for arrow */
    width: auto;
    margin: 0 10px;
}

.cbt-frequency-text-container {
    display: flex;
    align-items: baseline;
}

.cbt-banner__img-container {
    width: 45%;
    height: auto;
    background-color: white;
    display: flex;
}

.cbt-banner__img-container-1 {
    width: 80%;
    display: flex;
    flex-direction: column;
    position: relative;
}

.cbt-logo-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    padding: 20px;
    display: flex;
    align-items: flex-start;
}

.cbt-plane-img-container {
    position: absolute;
    top: 50%;
    left: -20%;
    /* Overflow to the left */
    right: auto;
    height: 85%;
    /* Make bigger */
    width: 135%;
    /* Allow width to exceed container */
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    z-index: 10;
    /* Ensure it's above other elements if needed */
    animation: floatPlane 3s ease-in-out infinite;
}

@keyframes floatPlane {
    0% {
        transform: translateY(-50%);
    }

    50% {
        transform: translateY(-55%);
    }

    100% {
        transform: translateY(-50%);
    }
}

.cbt-plane-img-container img {
    height: 100%;
    object-fit: contain;
}

.cbt-banner__img-container-2 {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 14px 24px 13px 0;
}

.cbt-barcode-img-container {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cbt-barcode-img-container img {
    height: 100%;
    width: auto;
    object-fit: contain;
}

.cbt-price-container {
    border-radius: 40px;
    border: none;
    max-width: 100px;
    /* Increased max-width */
    text-align: center;
    padding: 8px 16px;
    /* Increased padding */
    background: #F46125;
    background: linear-gradient(180deg, rgba(244, 97, 37, 1) 0%, rgba(255, 126, 73, 1) 50%);
    margin-left: 10px;
    margin-top: 5px;
    font-weight: bold;
}

.cbt-banner__close-container {
    border-radius: 0 24px 24px 0;
    background-color: #1C397E;
    width: 6%;
    display: flex;
    align-items: flex-start;
    /* Align to top */
    justify-content: center;
    cursor: pointer;
    padding-top: 20px;
    /* Add some spacing from top */
}

.cbt-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    /* Dimmed background */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    /* Ensure it's on top */
}

.cbt-banner__img-container-2-mobile {
    display: none;
}

.cbt-banner__close-mobile {
    display: none;
}

@media (max-width: 600px) {
    .cbt-banner {
        max-width: 100%;
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        max-height: 100%;
        margin: 0 15px;
        /* Add margin for spacing */
    }

    .cbt-banner__text-container {
        border-radius: 24px 24px 0 0;
        width: 100%;
        position: relative;
        /* For absolute positioning of close button */
    }

    .cbt-banner__close-mobile {
        position: absolute;
        top: 15px;
        right: 15px;
        cursor: pointer;
        display: block;
        z-index: 20;
        width: 24px;
        height: 24px;
    }

    .cbt-banner__close-mobile img {
        width: 100%;
        height: 100%;
    }

    .cbt-banner__img-container {
        border-radius: 0 0 24px 24px;
        width: 100%;
        display: flex;
        flex-direction: column;
    }

    .cbt-banner__close-container {
        display: none;
    }

    .cbt-destination {
        width: 100%;
        text-align: center;
    }

    .cbt-destination-text {
        justify-content: center;
        align-items: center;
        text-align: center;
        margin: 0 auto;
        justify-content: center;
    }

    .cbt-price-container {
        margin: 10px auto;
    }

    .cbt-banner__img-container-1 {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
    }

    .cbt-logo-container {
        display: none;
    }

    .cbt-banner__img-container-2 {
        display: none;
    }

    .cbt-banner__img-container-2-mobile {
        display: flex;
        height: 300px;
        width: 100%;
        background-color: white;
        border-radius: 0 0 24px 24px;
        padding: 14px 24px;
        flex-direction: column;
        align-items: center;
        justify-content: end;
    }


    .cbt-plane-img-container {
        width: 100%;
        height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 40px;
        left: 0;
        transform: translate(-50%, -50%);
    }


}