/* ==========================================================
   SKY-ONE TARIFFS V4.1
   DESKTOP + MOBILE CORRECTION
   ========================================================== */


/* ==========================================================
   COMMON
   ========================================================== */

.equipment-box.alltariffs {
    width: 100% !important;
    max-width: none !important;

    box-sizing: border-box !important;
}


.equipment-box.alltariffs
.h6 {
    box-sizing: border-box !important;
}


.equipment-box.alltariffs
.title.size2
.price::after,

.equipment-box.alltariffs
.tariff_line
.col4::after {
    content: none !important;
    display: none !important;
}


/* ==========================================================
   EQUIPMENT PRICE
   ========================================================== */

.equipment-box.alltariffs
.so-equipment-price {
    display: inline-flex;

    align-items: baseline;

    gap: 5px;

    white-space: nowrap;
}


.equipment-box.alltariffs
.so-equipment-price
.price {
    display: inline !important;

    white-space: nowrap !important;
}


.equipment-box.alltariffs
.so-ruble {
    flex: 0 0 auto;

    color: #e96700;

    font-size: .92em;

    line-height: 1;

    font-weight: 900;
}


/* ==========================================================
   EQUIPMENT SPEED
   ========================================================== */

.equipment-box.alltariffs
.title2.size3,

.equipment-box.alltariffs
.title2.size4 {
    display: grid !important;

    grid-template-columns:
        auto auto;

    grid-template-rows:
        auto auto;

    align-items: baseline;

    column-gap: 7px;
    row-gap: 4px;

    min-width: 0;

    padding: 12px 14px !important;

    border:
        1px solid #e3e3e4 !important;

    border-top:
        2px solid #ef7200 !important;

    border-radius: 8px;

    background:
        #f7f7f8 !important;

    box-shadow:
        none !important;
}


.equipment-box.alltariffs
.so-speed-label {
    grid-column:
        1 / -1;

    display: block !important;

    margin: 0 !important;

    color: #747074 !important;

    font-size: 9px !important;

    line-height: 1.15 !important;

    font-weight: 850 !important;

    letter-spacing: .055em;

    text-transform: uppercase;
}


.equipment-box.alltariffs
.so-speed-value {
    color: #e96700;

    font-size: 29px;

    line-height: .95;

    font-weight: 900;

    letter-spacing: -.035em;

    white-space: nowrap;
}


.equipment-box.alltariffs
.so-speed-prefix {
    margin-right: 3px;

    color: #555158;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 0;
}


.equipment-box.alltariffs
.so-speed-unit {
    color: #3d3b3f;

    font-size: 11px;

    line-height: 1;

    font-weight: 750;

    white-space: nowrap;
}


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

.equipment-box.alltariffs
.line_tar2 {
    width: 100% !important;

    box-sizing: border-box !important;

    margin:
        18px
        0
        10px !important;

    padding:
        12px
        17px !important;

    border-left:
        4px solid #e96800;

    border-radius:
        8px;

    background:
        linear-gradient(
            90deg,
            #222327,
            #292a2e
        ) !important;

    color:
        #fff !important;

    font-size:
        14px;

    line-height:
        1.35;

    font-weight:
        850;
}


/* ==========================================================
   DESKTOP TABLE
   TRUE 100% VISUAL DISTRIBUTION
   ========================================================== */

@media (min-width: 769px) {

    .equipment-box.alltariffs
    .one_row,

    .equipment-box.alltariffs
    .tariff_line {
        display: grid !important;

        grid-template-columns:
            21%
            13%
            13%
            17%
            17%
            19% !important;

        width: 100% !important;
        min-width: 100% !important;
        max-width: none !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;

        box-sizing: border-box !important;

        align-items: center;
    }


    .equipment-box.alltariffs
    .one_row
    .row_line,

    .equipment-box.alltariffs
    .tariff_line
    > .col:not(.mob) {
        display: flex !important;

        align-items: center;
        justify-content: center;

        float: none !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;

        height: 100%;

        box-sizing: border-box !important;

        text-align: center !important;
    }


    .equipment-box.alltariffs
    .one_row
    .row_line:first-child,

    .equipment-box.alltariffs
    .tariff_line
    > .col1 {
        justify-content: flex-start;

        padding-left: 22px !important;

        text-align: left !important;
    }


    .equipment-box.alltariffs
    .tariff_line
    > .mob {
        display: none !important;
    }
}


/* ==========================================================
   TARIFF SPEEDS / PRICE
   ========================================================== */

.equipment-box.alltariffs
.so-up-to {
    margin-right: 4px;

    color: #77737a;

    font-size: .70em;

    font-weight: 650;
}


.equipment-box.alltariffs
.so-tariff-price {
    display: inline-flex;

    align-items: baseline;

    justify-content: center;

    gap: 4px;

    white-space: nowrap !important;
}


.equipment-box.alltariffs
.so-tariff-price
strong {
    color: #e96700;

    font-weight: 900;

    white-space: nowrap;
}


.equipment-box.alltariffs
.so-price-period {
    color: #77737a;

    font-size: 10px;

    font-weight: 500;

    white-space: nowrap;
}


.equipment-box.alltariffs
.tariff_line
.col4 {
    white-space: nowrap !important;
}


/* ==========================================================
   HELP DETAILS
   ========================================================== */

.so-tariff-help {
    margin:
        12px
        0
        26px;

    overflow: hidden;

    border:
        1px solid #e3e0dd;

    border-radius:
        9px;

    background:
        #fbfaf9;
}


.so-tariff-help
summary {
    display: flex;

    align-items: center;

    gap: 9px;

    padding:
        12px
        14px;

    cursor: pointer;

    color:
        #343034;

    font-size:
        13px;

    line-height:
        1.3;

    font-weight:
        800;

    list-style:
        none;
}


.so-tariff-help
summary::-webkit-details-marker {
    display: none;
}


.so-tariff-help
summary::after {
    content: "+";

    margin-left: auto;

    color: #e96700;

    font-size: 20px;

    font-weight: 500;

    line-height: 1;
}


.so-tariff-help[open]
summary::after {
    content: "−";
}


.so-tariff-help-badge {
    display: grid;

    place-items: center;

    flex: 0 0 auto;

    width: 22px;
    height: 22px;

    border-radius: 50%;

    background: #e96700;

    color: #fff;

    font-size: 12px;

    font-weight: 900;
}


.so-tariff-help-grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap: 9px;

    padding:
        0
        12px
        12px;
}


.so-lte-box
.so-tariff-help-grid {
    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );
}


.so-tariff-help-card {
    min-width: 0;

    padding: 12px;

    border:
        1px solid #ebe7e3;

    border-radius:
        8px;

    background:
        #fff;
}


.so-tariff-term {
    display: inline-flex;

    margin-bottom: 7px;

    padding:
        4px
        7px;

    border-radius:
        999px;

    background:
        #fff0e3;

    color:
        #d75c00;

    font-size:
        10px;

    line-height:
        1;

    font-weight:
        900;
}


.so-tariff-help-card
> strong {
    display: block;

    margin-bottom: 5px;

    color:
        #292629;

    font-size:
        13px;

    line-height:
        1.3;
}


.so-tariff-help-card
p {
    margin: 0;

    color:
        #6d676c;

    font-size:
        12px;

    line-height:
        1.48;
}


.so-tariff-source-notes {
    display: grid;

    gap: 6px;

    margin:
        0
        12px
        12px;

    padding:
        11px
        12px;

    border-radius:
        7px;

    background:
        #f4f1ee;
}


.so-tariff-source-notes
.group_desc {
    position: relative;

    margin: 0 !important;

    padding:
        0
        0
        0
        14px !important;

    border: 0 !important;

    background:
        transparent !important;

    color:
        #615c60;

    font-size:
        12px;

    line-height:
        1.45;
}


.so-tariff-source-notes
.group_desc::before {
    content: "•";

    position: absolute;

    left: 1px;

    color: #e96700;

    font-weight: 900;
}


/* ==========================================================
   CTA
   ========================================================== */

.equipment-box.alltariffs
.so-order-cta {
    white-space: normal;

    text-align: center;

    line-height: 1.15;
}


/* ==========================================================
   AIR 4G — DESKTOP
   REMOVE HUGE ORANGE EMPTY BLOCK
   ========================================================== */

@media (min-width: 769px) {

    .equipment-box.alltariffs.so-lte-box
    .h6 {
        display: grid !important;

        grid-template-columns:
            minmax(290px, 1.45fr)
            minmax(210px, 1fr)
            minmax(165px, .78fr)
            minmax(165px, .78fr) !important;

        gap: 13px !important;

        align-items: stretch !important;

        width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;

        padding: 17px !important;

        box-sizing: border-box !important;

        border:
            1px solid #e2e2e3 !important;

        border-left:
            4px solid #e96700 !important;

        border-radius:
            8px !important;

        background:
            #fff !important;
    }


    .equipment-box.alltariffs.so-lte-box
    .h6
    > .title,

    .equipment-box.alltariffs.so-lte-box
    .h6
    > .title2 {
        position: static !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        float: none !important;

        width: auto !important;
        max-width: none !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;

        box-sizing: border-box !important;
    }


    .equipment-box.alltariffs.so-lte-box
    .title.size1 {
        display: flex !important;

        flex-direction: column;

        justify-content: center;

        padding:
            14px
            16px !important;

        border:
            1px solid #e6e6e7;

        border-radius:
            8px;

        background:
            #fafafa;
    }


    .equipment-box.alltariffs.so-lte-box
    .title.size2 {
        display: flex !important;

        flex-direction: column;

        justify-content: center;

        padding:
            14px
            16px !important;

        border:
            1px solid #e6e6e7 !important;

        border-radius:
            8px;

        background:
            #fafafa !important;
    }


    .equipment-box.alltariffs.so-lte-box
    .title2.size3,

    .equipment-box.alltariffs.so-lte-box
    .title2.size4 {
        justify-content: center;
    }
}


/* ==========================================================
   MODAL — PURCHASE
   ========================================================== */

html.so-modal-open {
    overflow: hidden;
}


.so-order-form-wrap {
    position: fixed !important;

    z-index: 10050 !important;

    inset: 0 !important;

    display: none !important;

    grid-template-columns:
        minmax(260px, 320px)
        minmax(480px, 650px);

    justify-content: center;

    align-content: center;

    width: auto !important;
    max-width: none !important;

    min-height: 100vh;

    margin: 0 !important;

    padding: 28px !important;

    box-sizing: border-box;

    overflow-y: auto;

    border: 0 !important;

    border-radius: 0 !important;

    background:
        rgba(12,14,18,.73) !important;

    backdrop-filter:
        blur(5px);
}


.so-order-form-wrap.is-open {
    display: grid !important;
}


.so-order-form-wrap
.so-order-form-heading {
    align-self: stretch;

    margin: 0 !important;

    padding: 27px !important;

    box-sizing: border-box;

    border: 0 !important;

    border-radius:
        14px 0 0 14px !important;

    background:
        #222327 !important;

    color:
        #fff;
}


.so-order-form-wrap
.so-order-form-heading
h2 {
    color: #fff !important;
}


.so-order-form-wrap
.so-order-form-heading
p {
    color:
        rgba(255,255,255,.70) !important;
}


.so-order-form-wrap
.so-order-form {
    align-self: stretch;

    margin: 0 !important;

    padding: 27px !important;

    box-sizing: border-box;

    border: 0 !important;

    border-radius:
        0 14px 14px 0 !important;

    background: #fff !important;

    box-shadow:
        0 25px 75px
        rgba(0,0,0,.28);
}


.so-order-close {
    position: fixed;

    z-index: 10060;

    top: 17px;
    right: 19px;

    display: grid;

    place-items: center;

    width: 42px;
    height: 42px;

    padding: 0;

    border:
        1px solid
        rgba(255,255,255,.22);

    border-radius: 50%;

    background:
        rgba(15,15,17,.75);

    color: #fff;

    font:
        400 29px/1
        Arial,sans-serif;

    cursor: pointer;
}


.so-order-close:hover {
    border-color: #e96700;

    background: #e96700;
}


/* ==========================================================
   MOBILE <= 768
   ========================================================== */

@media (max-width: 768px) {

    /*
     * Equipment header:
     * less orange, more air.
     */
    .equipment-box.alltariffs
    .h6 {
        row-gap: 10px !important;

        column-gap: 9px !important;

        padding-top: 12px !important;
        padding-bottom: 14px !important;
    }


    .equipment-box.alltariffs
    .title.size2,

    .equipment-box.alltariffs
    .title2.size3,

    .equipment-box.alltariffs
    .title2.size4 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;

        border:
            1px solid #e1e1e2 !important;

        border-top:
            1px solid #e1e1e2 !important;

        border-radius:
            8px !important;

        background:
            #f7f7f8 !important;

        box-shadow:
            none !important;
    }


    .equipment-box.alltariffs
    .title.size2 {
        padding:
            11px
            12px !important;
    }


    .equipment-box.alltariffs
    .title2.size3,

    .equipment-box.alltariffs
    .title2.size4 {
        padding:
            11px
            12px !important;
    }


    .equipment-box.alltariffs
    .so-speed-value {
        font-size: 25px;
    }


    .equipment-box.alltariffs
    .so-speed-prefix {
        font-size: 11px;
    }


    .equipment-box.alltariffs
    .so-speed-unit {
        font-size: 10px;
    }


    /*
     * Tariff table becomes cards using legacy mobile layout,
     * but price stays one physical line.
     */
    .equipment-box.alltariffs
    .one_row {
        display: none !important;
    }


    .equipment-box.alltariffs
    .tariff_line {
        width: 100% !important;

        max-width: none !important;

        box-sizing: border-box !important;
    }


    .equipment-box.alltariffs
    .tariff_line
    .col4 {
        display: flex !important;

        align-items: baseline !important;

        flex-wrap: nowrap !important;

        gap: 4px !important;

        white-space: nowrap !important;
    }


    .equipment-box.alltariffs
    .so-tariff-price {
        display: inline-flex !important;

        flex-wrap: nowrap !important;

        align-items: baseline !important;

        gap: 4px !important;

        white-space: nowrap !important;
    }


    .equipment-box.alltariffs
    .so-price-period {
        white-space: nowrap !important;
    }


    .equipment-box.alltariffs
    .line_tar2 {
        margin-top: 15px !important;

        padding:
            11px
            13px !important;

        font-size: 12px;
    }


    .so-tariff-help {
        margin-bottom: 21px;
    }


    .so-tariff-help-grid,

    .so-lte-box
    .so-tariff-help-grid {
        grid-template-columns: 1fr;
    }


    .so-tariff-help
    summary {
        padding:
            11px
            12px;

        font-size:
            12px;
    }


    /*
     * Modal
     */
    .so-order-form-wrap {
        grid-template-columns:
            minmax(0,1fr);

        align-content: start;

        padding:
            57px
            13px
            18px !important;
    }


    .so-order-form-wrap
    .so-order-form-heading {
        padding: 20px !important;

        border-radius:
            12px 12px 0 0 !important;
    }


    .so-order-form-wrap
    .so-order-form {
        padding: 18px !important;

        border-radius:
            0 0 12px 12px !important;
    }


    .so-order-close {
        top: 9px;
        right: 11px;

        width: 38px;
        height: 38px;
    }
}


/* ==========================================================
   MOBILE <= 390
   ========================================================== */

@media (max-width: 390px) {

    .equipment-box.alltariffs
    .h6 {
        row-gap:
            8px !important;

        column-gap:
            7px !important;
    }


    .equipment-box.alltariffs
    .title.size2,

    .equipment-box.alltariffs
    .title2.size3,

    .equipment-box.alltariffs
    .title2.size4 {
        padding:
            10px !important;
    }


    .equipment-box.alltariffs
    .so-speed-value {
        font-size: 23px;
    }


    .equipment-box.alltariffs
    .so-equipment-price {
        gap: 3px;
    }


    .equipment-box.alltariffs
    .so-tariff-price {
        font-size: 14px;
    }


    .equipment-box.alltariffs
    .so-price-period {
        font-size: 9px;
    }


    .so-order-form-wrap {
        padding:
            53px
            8px
            11px !important;
    }


    .so-order-form-wrap
    .so-order-form-heading {
        padding:
            17px !important;
    }


    .so-order-form-wrap
    .so-order-form {
        padding:
            15px !important;
    }
}


/* ==========================================================
   SKY-ONE ORDER MODAL V4.1.1
   FINAL GEOMETRY / RESPONSIVE OVERRIDE
   ========================================================== */


/* ----------------------------------------------------------
   DESKTOP MODAL SHELL
   ---------------------------------------------------------- */

#order-form.so-order-form-wrap {

    box-sizing:
        border-box !important;

    position:
        fixed !important;

    top:
        50% !important;

    left:
        50% !important;

    right:
        auto !important;

    bottom:
        auto !important;

    width:
        min(
            1180px,
            calc(100vw - 40px)
        ) !important;

    max-width:
        1180px !important;

    height:
        auto !important;

    min-height:
        0 !important;

    max-height:
        calc(100vh - 40px) !important;

    margin:
        0 !important;

    padding:
        0 !important;

    display:
        grid !important;

    grid-template-columns:
        340px
        minmax(0, 1fr) !important;

    align-items:
        stretch !important;

    overflow:
        auto !important;

    border:
        0 !important;

    border-radius:
        18px !important;

    background:
        #fff !important;

    box-shadow:
        0 30px 90px
        rgba(0, 0, 0, .28) !important;

    transform:
        translate(
            -50%,
            -50%
        ) !important;
}


#order-form.so-order-form-wrap.is-open {

    transform:
        translate(
            -50%,
            -50%
        ) !important;
}


/* ----------------------------------------------------------
   LEFT SIDE
   IMPORTANT:
   kill the old inner two-column grid.
   ---------------------------------------------------------- */

#order-form
.so-order-form-heading {

    box-sizing:
        border-box !important;

    width:
        100% !important;

    min-width:
        0 !important;

    height:
        100% !important;

    min-height:
        470px !important;

    margin:
        0 !important;

    padding:
        38px 30px 30px !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    align-items:
        stretch !important;

    justify-content:
        flex-start !important;

    gap:
        0 !important;

    background:
        linear-gradient(
            145deg,
            #202126 0%,
            #18191d 100%
        ) !important;

    color:
        #fff !important;
}


#order-form
.so-order-form-copy {

    display:
        block !important;

    width:
        100% !important;

    min-width:
        0 !important;

    max-width:
        none !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


#order-form
.so-order-kicker {

    display:
        block !important;

    margin:
        0 0 12px !important;

    color:
        #ff7c00 !important;

    font-size:
        11px !important;

    line-height:
        1.1 !important;

    font-weight:
        800 !important;

    letter-spacing:
        .13em !important;

    text-transform:
        uppercase !important;
}


#order-form
.so-order-form-heading
h2 {

    width:
        100% !important;

    max-width:
        none !important;

    margin:
        0 0 18px !important;

    padding:
        0 !important;

    color:
        #fff !important;

    font-size:
        31px !important;

    line-height:
        1.08 !important;

    font-weight:
        750 !important;

    letter-spacing:
        -.025em !important;

    overflow-wrap:
        normal !important;

    word-break:
        normal !important;
}


#order-form
.so-order-form-heading
p {

    width:
        100% !important;

    max-width:
        270px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #bfc1c7 !important;

    font-size:
        13px !important;

    line-height:
        1.62 !important;

    overflow-wrap:
        normal !important;

    word-break:
        normal !important;
}


/* Selected equipment now lives BELOW the description */

#order-form
.so-order-selected-box {

    box-sizing:
        border-box !important;

    width:
        100% !important;

    max-width:
        none !important;

    margin:
        auto 0 0 !important;

    padding:
        17px 18px !important;

    border:
        1px solid
        rgba(
            255,
            255,
            255,
            .17
        ) !important;

    border-radius:
        10px !important;

    background:
        rgba(
            255,
            255,
            255,
            .055
        ) !important;
}


#order-form
.so-order-selected-box
span {

    display:
        block !important;

    margin:
        0 0 8px !important;

    color:
        #9da0a7 !important;

    font-size:
        10px !important;

    line-height:
        1 !important;

    font-weight:
        750 !important;

    letter-spacing:
        .08em !important;

    text-transform:
        uppercase !important;
}


#order-form
.so-order-selected-box
strong {

    display:
        block !important;

    margin:
        0 !important;

    color:
        #fff !important;

    font-size:
        17px !important;

    line-height:
        1.3 !important;

    font-weight:
        750 !important;

    overflow-wrap:
        break-word !important;
}


/* ----------------------------------------------------------
   RIGHT FORM
   No artificial vertical stretching.
   ---------------------------------------------------------- */

#order-form
.so-order-form {

    box-sizing:
        border-box !important;

    position:
        relative !important;

    width:
        100% !important;

    height:
        auto !important;

    min-height:
        470px !important;

    margin:
        0 !important;

    padding:
        38px 40px 30px !important;

    display:
        grid !important;

    grid-template-columns:
        repeat(
            6,
            minmax(
                0,
                1fr
            )
        ) !important;

    grid-auto-rows:
        max-content !important;

    column-gap:
        18px !important;

    row-gap:
        22px !important;

    align-content:
        start !important;

    align-items:
        start !important;

    background:
        #fff !important;
}


/* Name / phone / email */

#order-form
.so-order-form
> .so-order-field:nth-of-type(1),

#order-form
.so-order-form
> .so-order-field:nth-of-type(2),

#order-form
.so-order-form
> .so-order-field:nth-of-type(3) {

    grid-column:
        span 2 !important;

    align-self:
        start !important;
}


/* Region / district */

#order-form
.so-order-form
> .so-order-field:nth-of-type(4),

#order-form
.so-order-form
> .so-order-field:nth-of-type(5) {

    grid-column:
        span 3 !important;

    align-self:
        start !important;
}


#order-form
.so-order-field {

    box-sizing:
        border-box !important;

    width:
        100% !important;

    min-width:
        0 !important;

    height:
        auto !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


#order-form
.so-order-field
label {

    display:
        block !important;

    margin:
        0 0 8px !important;

    color:
        #51545b !important;

    font-size:
        11px !important;

    line-height:
        1 !important;

    font-weight:
        750 !important;

    letter-spacing:
        .035em !important;

    text-transform:
        uppercase !important;
}


#order-form
.so-order-field
input {

    box-sizing:
        border-box !important;

    display:
        block !important;

    width:
        100% !important;

    height:
        48px !important;

    min-height:
        48px !important;

    margin:
        0 !important;

    padding:
        0 14px !important;

    border:
        1px solid #d7d9de !important;

    border-radius:
        8px !important;

    outline:
        0 !important;

    background:
        #f8f8fa !important;

    color:
        #202126 !important;

    font-size:
        14px !important;

    line-height:
        48px !important;

    box-shadow:
        none !important;
}


#order-form
.so-order-field
input:focus {

    border-color:
        #ff7c00 !important;

    background:
        #fff !important;

    box-shadow:
        0 0 0 3px
        rgba(
            255,
            124,
            0,
            .10
        ) !important;
}


/* ----------------------------------------------------------
   SUBMIT
   directly after fields, not at bottom of viewport.
   ---------------------------------------------------------- */

#order-form
.so-order-submit-row {

    box-sizing:
        border-box !important;

    grid-column:
        1 / -1 !important;

    width:
        100% !important;

    margin:
        4px 0 0 !important;

    padding:
        22px 0 0 !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        flex-start !important;

    gap:
        20px !important;

    border-top:
        1px solid #e3e5e8 !important;
}


#order-form
.so-order-submit {

    box-sizing:
        border-box !important;

    flex:
        0 0 auto !important;

    width:
        auto !important;

    min-width:
        250px !important;

    height:
        50px !important;

    min-height:
        50px !important;

    margin:
        0 !important;

    padding:
        0 26px !important;

    border:
        0 !important;

    border-radius:
        8px !important;

    background:
        #ff7c00 !important;

    color:
        #fff !important;

    font-size:
        12px !important;

    line-height:
        50px !important;

    font-weight:
        800 !important;

    letter-spacing:
        .05em !important;

    text-align:
        center !important;
}


#order-form
.so-order-privacy {

    flex:
        1 1 auto !important;

    max-width:
        390px !important;

    margin:
        0 !important;

    color:
        #8b8e95 !important;

    font-size:
        11px !important;

    line-height:
        1.5 !important;
}


#order-form
.so-order-status {

    grid-column:
        1 / -1 !important;

    min-height:
        0 !important;

    margin:
        -4px 0 0 !important;

    padding:
        0 !important;

    font-size:
        12px !important;

    line-height:
        1.45 !important;
}


/* ----------------------------------------------------------
   CLOSE BUTTON
   ---------------------------------------------------------- */

#order-form
.so-order-close {

    position:
        absolute !important;

    z-index:
        20 !important;

    top:
        13px !important;

    right:
        13px !important;

    left:
        auto !important;

    bottom:
        auto !important;

    width:
        36px !important;

    height:
        36px !important;

    min-width:
        36px !important;

    min-height:
        36px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    border-radius:
        50% !important;

    background:
        #f1f2f4 !important;

    color:
        #50545b !important;

    font-size:
        24px !important;

    line-height:
        34px !important;

    text-align:
        center !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media only screen
and (min-width: 769px)
and (max-width: 980px) {

    #order-form.so-order-form-wrap {

        width:
            calc(100vw - 24px) !important;

        grid-template-columns:
            285px
            minmax(0, 1fr) !important;
    }


    #order-form
    .so-order-form-heading {

        padding:
            30px 24px 24px !important;
    }


    #order-form
    .so-order-form-heading
    h2 {

        font-size:
            27px !important;
    }


    #order-form
    .so-order-form {

        padding:
            30px 28px 26px !important;

        column-gap:
            12px !important;

        row-gap:
            18px !important;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

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

    #order-form.so-order-form-wrap {

        top:
            0 !important;

        left:
            0 !important;

        right:
            auto !important;

        bottom:
            auto !important;

        width:
            100vw !important;

        max-width:
            100vw !important;

        height:
            100dvh !important;

        min-height:
            100vh !important;

        max-height:
            100dvh !important;

        margin:
            0 !important;

        display:
            block !important;

        overflow-y:
            auto !important;

        border-radius:
            0 !important;

        transform:
            none !important;
    }


    #order-form.so-order-form-wrap.is-open {

        transform:
            none !important;
    }


    #order-form
    .so-order-form-heading {

        width:
            100% !important;

        height:
            auto !important;

        min-height:
            0 !important;

        padding:
            26px 20px 22px !important;
    }


    #order-form
    .so-order-form-heading
    h2 {

        padding-right:
            42px !important;

        font-size:
            27px !important;
    }


    #order-form
    .so-order-form-heading
    p {

        max-width:
            none !important;

        font-size:
            13px !important;
    }


    #order-form
    .so-order-selected-box {

        margin:
            22px 0 0 !important;
    }


    #order-form
    .so-order-form {

        width:
            100% !important;

        height:
            auto !important;

        min-height:
            0 !important;

        padding:
            22px 16px 26px !important;

        grid-template-columns:
            1fr !important;

        column-gap:
            0 !important;

        row-gap:
            16px !important;
    }


    #order-form
    .so-order-form
    > .so-order-field:nth-of-type(1),

    #order-form
    .so-order-form
    > .so-order-field:nth-of-type(2),

    #order-form
    .so-order-form
    > .so-order-field:nth-of-type(3),

    #order-form
    .so-order-form
    > .so-order-field:nth-of-type(4),

    #order-form
    .so-order-form
    > .so-order-field:nth-of-type(5) {

        grid-column:
            1 !important;
    }


    #order-form
    .so-order-submit-row {

        grid-column:
            1 !important;

        display:
            flex !important;

        flex-direction:
            column !important;

        align-items:
            stretch !important;

        gap:
            12px !important;

        margin:
            2px 0 0 !important;

        padding-top:
            18px !important;
    }


    #order-form
    .so-order-submit {

        width:
            100% !important;

        min-width:
            0 !important;
    }


    #order-form
    .so-order-privacy {

        max-width:
            none !important;
    }


    #order-form
    .so-order-close {

        top:
            12px !important;

        right:
            12px !important;

        background:
            rgba(
                255,
                255,
                255,
                .10
            ) !important;

        color:
            #fff !important;
    }

}


/* ==========================================================
   SKY-ONE ORDER MODAL V4.1.2
   VISIBILITY CONTRACT
   ========================================================== */

/*
 * IMPORTANT:
 * Modal exists in DOM on /tariffs/,
 * but MUST NOT be visible until JS adds .is-open.
 */

#order-form.so-order-form-wrap:not(.is-open) {

    display:
        none !important;
}


/*
 * Desktop / tablet:
 * preserve V4.1.1 two-column modal layout.
 */

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

    #order-form.so-order-form-wrap.is-open {

        display:
            grid !important;
    }

}


/*
 * Mobile:
 * preserve V4.1.1 one-column full-screen layout.
 */

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

    #order-form.so-order-form-wrap.is-open {

        display:
            block !important;
    }

}


/* ==========================================================
   SKY-ONE AIR BUY V4.1.3
   Purchase CTA for secondary LTE equipment.
   ========================================================== */


/*
 * Base button.
 * Existing global .so-order-cta design is inherited.
 */

#set-6 .so-order-cta {

    box-sizing:
        border-box;

    cursor:
        pointer;
}


/*
 * Tablet.
 * Match existing satellite equipment CTA geometry.
 */

@media only screen
and (min-width: 769px)
and (max-width: 1100px) {

    .equipment-box.alltariffs
    #set-6 {

        grid-template-columns:
            138px
            minmax(155px, 1.05fr)
            repeat(
                3,
                minmax(78px, .62fr)
            )
            110px;

        gap:
            9px;
    }


    .equipment-box.alltariffs
    #set-6
    .so-order-cta {

        min-height:
            82px;

        padding:
            9px 6px;

        font-size:
            10px;
    }

}


/*
 * Mobile.
 * Button becomes a full-width bottom row,
 * same behaviour as satellite equipment.
 */

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

    .equipment-box.alltariffs
    #set-6
    .so-order-cta {

        grid-column:
            1 / -1;

        grid-row:
            5;

        width:
            100%;

        min-height:
            44px;

        margin-top:
            4px;

        padding:
            0 12px;

        font-size:
            11px;
    }

}


/* ==========================================================
   SKY-ONE AIR CTA V4.1.4
   Proper commercial CTA for LTE equipment
   ========================================================== */


/* ----------------------------------------------------------
   DESKTOP — AIR has NO equipment image.
   Correct structure:
   name | price | down | up | buy
   ---------------------------------------------------------- */

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

    .equipment-box.alltariffs
    #set-6 {

        display:
            grid !important;

        grid-template-columns:
            minmax(250px, 1.55fr)
            minmax(155px, .85fr)
            minmax(155px, .85fr)
            minmax(155px, .85fr)
            150px !important;

        gap:
            14px !important;

        align-items:
            stretch !important;
    }

}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */

@media only screen
and (min-width: 769px)
and (max-width: 1100px) {

    .equipment-box.alltariffs
    #set-6 {

        display:
            grid !important;

        grid-template-columns:
            minmax(190px, 1.35fr)
            repeat(
                3,
                minmax(100px, .8fr)
            )
            112px !important;

        gap:
            9px !important;

        align-items:
            stretch !important;
    }

}


/* ----------------------------------------------------------
   AIR BUY BUTTON
   Match the orange satellite equipment CTA.
   ---------------------------------------------------------- */

.equipment-box.alltariffs
#set-6
.so-order-cta {

    box-sizing:
        border-box !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    align-self:
        stretch !important;

    width:
        100% !important;

    min-width:
        0 !important;

    min-height:
        82px !important;

    margin:
        0 !important;

    padding:
        12px 10px !important;

    border:
        0 !important;

    border-radius:
        5px !important;

    background:
        #ff7c00 !important;

    color:
        #ffffff !important;

    cursor:
        pointer !important;

    font-family:
        inherit !important;

    font-size:
        11px !important;

    line-height:
        1.18 !important;

    font-weight:
        800 !important;

    letter-spacing:
        .025em !important;

    text-align:
        center !important;

    text-decoration:
        none !important;

    text-transform:
        uppercase !important;

    box-shadow:
        0 7px 18px
        rgba(
            255,
            124,
            0,
            .18
        ) !important;

    transition:
        background .14s ease,
        transform .14s ease,
        box-shadow .14s ease !important;
}


.equipment-box.alltariffs
#set-6
.so-order-cta:hover {

    background:
        #e87000 !important;

    color:
        #ffffff !important;

    text-decoration:
        none !important;

    transform:
        translateY(-1px) !important;

    box-shadow:
        0 10px 22px
        rgba(
            255,
            124,
            0,
            .25
        ) !important;
}


.equipment-box.alltariffs
#set-6
.so-order-cta:focus-visible {

    outline:
        3px solid
        rgba(
            255,
            124,
            0,
            .28
        ) !important;

    outline-offset:
        2px !important;
}


.equipment-box.alltariffs
#set-6
.so-order-cta.is-selected {

    background:
        #202025 !important;

    color:
        #fff !important;
}


/* ----------------------------------------------------------
   MOBILE
   CTA = full-width orange bottom row.
   ---------------------------------------------------------- */

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

    .equipment-box.alltariffs
    #set-6
    .so-order-cta {

        grid-column:
            1 / -1 !important;

        grid-row:
            auto !important;

        width:
            100% !important;

        min-height:
            48px !important;

        margin:
            8px 0 0 !important;

        padding:
            0 14px !important;

        border-radius:
            5px !important;

        font-size:
            11px !important;
    }

}


/* ==========================================================
   SKY-ONE AIR CARD V4.1.5
   IMAGE + SATELLITE-LIKE PRODUCT HEADER
   ========================================================== */


/* ----------------------------------------------------------
   AIR PRODUCT IMAGE
   ---------------------------------------------------------- */

.equipment-box.alltariffs
#set-6
.so-air-equipment-media {

    box-sizing:
        border-box !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    min-width:
        0 !important;

    overflow:
        hidden !important;

    border:
        1px solid #ececef !important;

    border-radius:
        6px !important;

    background:
        #f7f7f8 !important;
}


.equipment-box.alltariffs
#set-6
.so-air-equipment-media
img {

    display:
        block !important;

    width:
        100% !important;

    height:
        100% !important;

    max-width:
        100% !important;

    max-height:
        100% !important;

    object-fit:
        contain !important;

    object-position:
        center !important;
}


/* ----------------------------------------------------------
   DESKTOP:
   IMAGE | KIT | PRICE | DOWN | UP | BUY
   ---------------------------------------------------------- */

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

    .equipment-box.alltariffs
    #set-6 {

        display:
            grid !important;

        grid-template-columns:
            126px
            minmax(220px, 1.35fr)
            minmax(135px, .82fr)
            minmax(135px, .82fr)
            minmax(135px, .82fr)
            150px !important;

        gap:
            12px !important;

        align-items:
            stretch !important;
    }


    .equipment-box.alltariffs
    #set-6
    .so-air-equipment-media {

        min-height:
            112px !important;
    }

}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */

@media only screen
and (min-width: 769px)
and (max-width: 1100px) {

    .equipment-box.alltariffs
    #set-6 {

        display:
            grid !important;

        grid-template-columns:
            100px
            minmax(160px, 1.15fr)
            repeat(
                3,
                minmax(86px, .72fr)
            )
            110px !important;

        gap:
            8px !important;

        align-items:
            stretch !important;
    }


    .equipment-box.alltariffs
    #set-6
    .so-air-equipment-media {

        min-height:
            96px !important;
    }

}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

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

    .equipment-box.alltariffs
    #set-6 {

        display:
            grid !important;

        grid-template-columns:
            94px
            minmax(0, 1fr) !important;

        gap:
            10px !important;

        align-items:
            stretch !important;
    }


    .equipment-box.alltariffs
    #set-6
    .so-air-equipment-media {

        grid-column:
            1 !important;

        grid-row:
            1 / span 2 !important;

        min-height:
            94px !important;
    }


    .equipment-box.alltariffs
    #set-6
    .title.size1 {

        grid-column:
            2 !important;

        grid-row:
            1 !important;
    }


    .equipment-box.alltariffs
    #set-6
    .title.size2 {

        grid-column:
            2 !important;

        grid-row:
            2 !important;
    }


    .equipment-box.alltariffs
    #set-6
    .title2.size3 {

        grid-column:
            1 !important;

        grid-row:
            3 !important;
    }


    .equipment-box.alltariffs
    #set-6
    .title2.size4 {

        grid-column:
            2 !important;

        grid-row:
            3 !important;
    }


    .equipment-box.alltariffs
    #set-6
    .so-order-cta {

        grid-column:
            1 / -1 !important;

        grid-row:
            4 !important;

        width:
            100% !important;

        min-height:
            48px !important;

        margin:
            2px 0 0 !important;
    }

}
