/* Normalise the cta button sizing */

.main-container a.btn.btn-primary,
.main-container button.btn.btn-primary {
    font-size: 12px;
}

@media screen and (min-width: 1200px) {

    .main-container a.btn.btn-primary,
    .main-container button.btn.btn-primary {
        font-size: 15px;
    }
}

/* iPhone Models Selection */
.model-container {
    background-color: #fff;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
    border-radius: 15px;
    border: 3px solid transparent;
    transition: 0.15s ease-in-out;
    cursor: pointer;
}

.model-container:hover {
    border-color: #40c806;
}

.model-container a.btn.btn-primary {
    padding: 15px 0;
}

.phone-img img {
    width: 100%;
    max-width: 90%;
}

@media screen and (min-width: 1200px) {
    .phone-img img {
        max-width: 60%;
    }
}

.plan-card-img{
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 10pc;
    border-radius: 1rem 1rem 0 0;
}

.plan-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.model-container .cta-arrow-green a.btn span {
    font-size: 13px;
}

.model-container .cta-arrow-green a.btn:hover span {
    border-bottom-color: transparent;
}

.phone-title {
    font-family: "maxisbold", sans-serif;
}

@media screen and (min-width: 1200px) {
    .phone-title {
        font-size: 18px;
    }
}

.btn-priceplan {
    text-transform: uppercase;
    color: #3e4a56;
    padding: 18px 20px;
    background: transparent;
    font-family: 'maxisbold', sans-serif;
    letter-spacing: 1.5px;
    font-size: 14px;
    border: 1px solid #3e4a56;
    border-radius: 8px;
    margin: 0 5px;
    cursor: pointer;
    width: 100%;
}

.btn-priceplan.coming-soon {
    box-sizing: border-box;
    border: none;
    border-radius: 0;
    text-transform: uppercase;
    color: #3e4a56;
    padding: 30px 20px 5px;
    background: transparent;
    font-family: 'maxisbold', sans-serif;
    letter-spacing: 1.5px;
    font-size: 14px;
    margin: 0 5px;
    cursor: pointer;
    width: max-content;
}

@media screen and (max-width: 768px) {
    .btn-priceplan {
        width: auto;
        text-wrap: nowrap;
        padding: 10px 40px;
    }
    .btn-priceplan.coming-soon {
        width: auto;
        text-wrap: nowrap;
        padding: 20px 20px 5px;
    }
}

.btn-priceplan:hover {
    border-width: 2px;
    border-color: #40c706
}

.btn-priceplan.coming-soon:hover {
    cursor: pointer;
}

.recommended-sticker {
    text-transform: uppercase;
}

@media screen and (max-width: 540px) {
    .plans-table td.colheader {}
}

.preorder-section .cta-button .btn {
    padding: 15px;
}

/**
 * Handling Modal
 */
/* body.modal-open {
    height: 100vh;
    overflow-y: hidden;
} */

html:has(body.modal-open) {
  overflow-y: clip;
}

#compareModal .modal-dialog.modal-full {
    border-radius: 14px;
}

#compareModal .modal-dialog .close {
    display: inline-block;
    width: 20px;
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    outline: none;
}

#compareModal .modal-dialog .modal-content {
    border-radius: 14px;
    overflow-y: hidden;
}

#compareModal .modal-dialog .modal-content .content-wrap {
    height: calc(100vh - 286px);
    /* height: 80vh; */
    overflow-y: scroll;
    overflow: -moz-scrollbars-vertical;
    scrollbar-width: thin;
    /* scrollbar-color: transparent #115e67;Firefox */
    padding-top: 20px;
}

#compareModal .modal-dialog .modal-content .content-wrap::-webkit-scrollbar {
    width: 6px;
}

#compareModal .modal-dialog .modal-content .content-wrap::-webkit-scrollbar-track {
    background-color: transparent;
    margin-right: 10px;
}

#compareModal .modal-dialog .modal-content .content-wrap::-webkit-scrollbar-thumb {
    background-color: #115e67;
    border-radius: 20px;
    /* margin-right: 10px; */
}

.model-selection {
    /* display: flex;
  justify-content: space-evenly; */
    width: 100%;
    margin: auto;
}

@media (min-width: 576px) {
    #compareModal .modal-dialog.modal-full {
        max-width: 460px;
    }


    .model-selection {
        max-width: 576px;
    }
}

@media (min-width: 736px) {
    #compareModal .modal-dialog.modal-full {
        max-width: 100%;
        margin-left: 1rem;
        margin-right: 1rem;
    }

    #compareModal .modal-dialog .modal-content .content-wrap {
        height: calc(100vh - 180px);
    }
}

@media (min-width: 768px) {
    .model-selection {
        /* max-width: 768px; */
    }
}

@media (min-width: 992px) {
    #compareModal .modal-dialog.modal-full {
        max-width: 960px;
        margin-right: auto;
        margin-left: auto;
    }

    #compareModal .modal-dialog .modal-content .content-wrap {
        height: calc(100vh - 345px);
    }
}

@media (min-width: 1069px) {
    #compareModal .modal-dialog.modal-full {
        max-width: 1029px;
    }

    #compareModal .modal-dialog .modal-content .content-wrap {
        height: calc(100vh - 365px);
    }
}

@media (min-width: 1200px) {
    #compareModal .modal-dialog.modal-full {
        max-width: 1160px;
    }

    #compareModal .modal-dialog .modal-content .content-wrap {
        height: calc(100vh - 250px);
    }
}

.herobanner-wrapper .herobanner a[href="#"]{
    cursor: default;
}