/* use mobile-first approach since that's what Bootstrap 4 uses (especially its display utilities) */

/* START Bootstrap class overrides */



/* END Bootstrap class overrides */

/* START native element defaults */

/* Added global generic rule for achor tag that under p and li elements*/
main p a, main li a, .modal p a, .modal ol li a {
    text-decoration: underline;
}

.product-cards .modal p a {
    text-decoration: none;
}

    .product-cards .modal p a:focus, .product-cards .modal p a:hover {
        text-decoration: underline;
    }

#getting-started-accordion p a:focus, #getting-started-accordion p a:hover {
    text-decoration: underline;
}


/* Added global generic rule for achor tag that under p and li elements*/

/* Override global generic rule */
.more-ways-to-shop li a, .icon-text-list li a, main li .icon ~ * > a, main li .icon ~ a {
    text-decoration: none;
}

    main li .icon ~ * > a:hover, main li .icon ~ * > a:focus, main li .icon ~ a:hover, main li .icon ~ a:focus {
        text-decoration: underline
    }


/* Override global generic rule */
main {
    background: #fff
}

    main a,
    .txtUnderlineOnHover {
        align-items: center;
        color: #00549a;
        display: inline-flex;
    }

        /* for anchor tags inside main, focus only the element with the anchor-text class. to apply the same behavior to elements outside main, use the txtUnderlineOnHover class. */
        main a:not(.txtUnderline) .anchor-icon,
        .txtUnderlineOnHover:not(.txtUnderline),
        .txtUnderlineOnHover:not(.txtUnderline):hover,
        .txtUnderlineOnHover:not(.txtUnderline):focus,
        .txtUnderlineOnHover:not(.txtUnderline) .anchor-icon {
            text-decoration: none;
        }

            main a:hover > .anchor-text,
            main a:focus > .anchor-text,
            .txtUnderlineOnHover:hover > .anchor-text,
            .txtUnderlineOnHover:focus > .anchor-text,
            a:hover .deep-anchor-text,
            a:focus .deep-anchor-text {
                text-decoration: underline;
            }

.more-ways-to-shop .anchor-icon ~ .anchor-text {
    text-decoration: none
}

.more-ways-to-shop .btn-primary {
    color: #003778;
}

thead:not(.font-weight-bold) th {
    font-weight: 400;
}

thead th:not(:first-child),
thead td:not(:first-child) {
    box-shadow: inset 1px 0 0 0 #003778;
}

.graphical_ctrl input:checked ~ span {
    font-weight: bold;
    color: #003778;
}

.tooltip {
    font-family: Helvetica,Arial,sans-serif;
}

.tooltip-inner {
    padding: 25px;
    box-shadow: 0 14px 36px 0 rgba(0,0,0,0.3);
    -webkit-box-shadow: 0 14px 36px 0 rgba(0,0,0,0.3);
}

.tooltip.bs-tooltip-right .arrow::before, .tooltip.bs-tooltip-auto[x-placement^=right] .arrow::before {
    border-width: 15px 15px 15px 0;
}

.tooltip.bs-tooltip-right .arrow, .tooltip.bs-tooltip-auto[x-placement^=right] .arrow {
    margin-top: 0;
}

.tooltip.bs-tooltip-left .arrow::before, .tooltip.bs-tooltip-auto[x-placement^=left] .arrow::before {
    border-width: 15px 0 15px 15px;
}

.tooltip.bs-tooltip-left .arrow, .tooltip.bs-tooltip-auto[x-placement^=left] .arrow {
    margin-top: 0;
}

.tooltip.bs-tooltip-top .arrow::before, .tooltip.bs-tooltip-auto[x-placement^=top] .arrow::before {
    border-width: 15px 15px 0;
}

.tooltip.bs-tooltip-top .arrow, .tooltip.bs-tooltip-auto[x-placement^=top] .arrow {
    margin-left: -15px
}

.tooltip.bs-tooltip-bottom .arrow::before, .tooltip.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
    border-width: 0 15px 15px;
}

.tooltip.bs-tooltip-bottom .arrow, .tooltip.bs-tooltip-auto[x-placement^=bottom] .arrow {
    margin-left: -15px
}

.modal.modal-tooltip .modal-body {
    padding: 0 30px 30px 30px;
}


.modal.modal-tooltip button.close:focus {
    border: 0
}

[class*='tooltip-'].icon {
    color: #707070
}
/* END native element defaults */

/* START Override header-tab-control */
.header-tab-control a:focus:after, .tab-control .header-tab-control ul li a.active:after, .tab-control .header-tab-control ul li a:hover:after,
.tablist-underlined [role=tab].active:after, .tablist-underlined [role=tab]:focus:after, .tablist-underlined [role=tab]:hover:after,
.header-tab-control ul li a[aria-current="page"]:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-bottom: 4px solid #00549a;
    bottom: -15px;
    left: 0;
}

.tab-control .header-tab-control ul li a:focus, .tab-control .header-tab-control ul li a.active, .tab-control .header-tab-control ul li a:hover,
.tab-control .header-tab-control ul li a[aria-current]:not([aria-current=false]),
.tablist-underlined [role=tab].active, .tablist-underlined [role=tab]:focus,
.tablist-underlined [role=tab]:hover, .tablist-underlined [role=tab][aria-selected]:not([aria-selected=false]) {
    padding-bottom: 0;
    border-bottom: none;
}

.tab-control .header-tab-control ul li,
.tablist-underlined [role=tab] {
    position: relative;
}

.tab-control .header-tab-control ul,
.tablist-underlined {
    padding-bottom: 15px
}

/* END Override header-tab-control */

/* START generic helpers */
.box-vignette-round-before:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    box-shadow: inset 0 0 80px 30px rgba(0,0,0,.05);
    pointer-events: none;
    z-index: 1;
}

.box-shadow-hover:hover {
    box-shadow: 0 20px 25px 0 rgba(0,0,0,.2);
}

.column-spacer-15 {
    margin-left: -7.5px;
    margin-right: -7.5px
}

    .column-spacer-15 > div {
        padding-left: 7.5px;
        padding-right: 7.5px;
    }

.column-spacer-30 {
    margin: 0 -15px;
}

.default-line-height {
    line-height: 18px;
}

.inverted,
.inverted *, .inverted a:focus, .inverted a:hover {
    color: #fff;
}

.inverted-border,
.inverted-border * {
    border-color: #fff;
}

.responsive-border-light-grey {
    border-top: 1px solid #d4d4d4;
}

.border-l-light-grey {
    border-left: 1px solid #e1e1e1;
}

.border-b-light-grey {
    border-bottom: 1px solid #e1e1e1;
}

.border-t-light-grey,
.responsive-border-sm-light-grey,
.responsive-border-md-light-grey {
    border-top: 1px solid #e1e1e1;
}

.bg-bell-blue {
    background-color: #00549a;
}

.bg-bell-dark-blue {
    background-color: #002A4D;
}

.bg-bell-dark-cerulean {
    background-color: #003778;
}

.bg-very-light-grey {
    background-color: #f4f4f4;
}

.color-bell-spanish-gray {
    color: #949596;
}

.color-body-default,
.color-medium-grey {
    color: #555;
}

.color-bell-black {
    color: #111;
}

.color-bell-dim-gray {
    color: #6A6A6A;
}

.color-bell-blue,
.surtitle {
    color: #00549a;
}

.color-success {
    color: #378e42;
}

.non-interactive {
    pointer-events: none;
}

.custom-selected > select {
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    -webkit-appearance: none;
}

.custom-selected > select {
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    -webkit-appearance: none;
}

.custom-selected select:disabled {
    opacity: 0;
}

    .custom-selected select:disabled ~ button {
        background-color: #f4f4f4;
    }

.custom-selected select:focus ~ button {
    outline: 2px auto -webkit-focus-ring-color !important
}

.text-break {
    word-wrap: break-word;
}

main li a.anchor-text-internet {
    text-decoration: none;
}

    main li a.anchor-text-internet:hover, main li a.anchor-text-internet:focus {
        text-decoration: underline;
    }

.play-btn-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.modal-header {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.banner-title {
    font-family: "bellslim_font_black", Helvetica, Arial, sans-serif;
    font-size: 26px;
    font-weight: 400;
    letter-spacing: -.4px;
    line-height: 28px;
    color: #111;
}
/* mobile only */
@media (max-width: 767.98px) {
    table.compact-xs th,
    table.compact-xs td {
        padding: 12px 9px;
    }

    .subtitle-2-reg-2 {
        font-size: 14px;
        line-height: 18px;
        color: #555;
    }

    .title.banner-title {
        font-size: 24px;
        line-height: 26px;
    }

    .title.banner-title-xs {
        font-size: 22px;
        line-height: 24px;
    }
}


/* tablet only */
@media (max-width: 767.98px) {
    table.compact-xs th,
    table.compact-xs td {
        padding: 12px 9px;
    }
}

/* tablet and larger */
@media (min-width: 768px) {
    .modal-content {
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .responsive-border-sm-light-grey, .responsive-border-light-grey {
        border-top: 0;
        border-left: 1px solid #e1e1e1;
    }

    .responsive-border-light-grey {
        border-left: 1px solid #d4d4d4;
    }

    .channel-icon-modal .modal-dialog {
        margin-top: 30px;
        margin-bottom: 30px;
        max-height: unset;
        max-height: none;
    }

    .modal-open .modal.channel-icon-modal {
        overflow-y: auto;
    }

    /* Forcing the modal with channel-icon-modal to forcefully display all the contents without scrollable inside the modal body - This is to replicate the behavior on production modal */
    .modal.channel-icon-modal .modal-body {
        max-height: unset !important;
        max-height: none !important;
    }

    .banner-title {
        font-size: 32px;
        line-height: 38px;
        letter-spacing: -0.5px
    }
}

/* tablet only */
@media (min-width: 768px) and (max-width: 991.98px) {
    .height-8-sm {
        height: 66.6666666667%;
    }
}

/* desktop and larger */
@media (min-width: 992px) {

    .responsive-border-md-light-grey {
        border-top: 0;
        border-left: 1px solid #e1e1e1;
    }

    a .deep-anchor-text {
        text-decoration: none;
    }

    a.contact-link {
        pointer-events: none;
    }
}

/* END generic helpers */

/* START component styles and overrides */
.text-tag-positioned-center {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
}

.text-tag {
    text-transform: uppercase;
    background-color: #00549a;
    padding: 3px 8px;
    color: #fff;
    font-size: 10px;
    border-radius: 2px;
    line-height: 14px;
}

.checked-list,
.no-list-style,
.separator-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.checked-list,
.separator-list {
    margin-top: 15px;
}

    .checked-list li,
    .no-list-style li,
    .separator-list li {
        display: flex;
    }

        .checked-list li:not(:first-child),
        .default-list li:not(:first-child),
        .default-list li:not(:first-child) {
            margin-top: 10px;
        }

    .separator-list > li {
        justify-content: space-between;
    }

        .separator-list > li:not(:first-child) {
            border-top: 1px solid #e1e1e1;
            padding-top: 15px;
        }

        .separator-list > li:not(:last-child) {
            padding-bottom: 15px;
        }

.huge-offer .checked-list li [class*=" icon-check-light"],
section[class*="home-phone-package"] .checked-list li [class*=" icon-check-light"] {
    font-size: 9px;
    font-weight: bold;
    margin-right: 7px;
}


.column-spacer-30 {
    margin: 0 -15px;
}

.column-spacer-60 {
    margin: 0 -30px;
}

.secondary-offer .img-container {
    min-height: 190px;
    height: 190px;
}

table.striped tbody tr:nth-child(odd),
table.striped-reverse tbody tr:nth-child(even) {
    background: #fff;
}

table.striped tbody tr:nth-child(even),
table.striped-reverse tbody tr:nth-child(odd) {
    background: #f4f4f4;
}

.table-fixed {
    table-layout: fixed;
    width: 100%;
}

#session-modal-expiring .modal-body-icon-wrap .session-timeout-icon,
#session-modal-expired .modal-body-icon-wrap .session-timeout-icon {
    color: #C27F1F;
}



.inverted .btn-primary {
    border-color: #fff;
}

/* looks like a link on mobile and like a button on tablet and larger */

form.compact .form-group {
    margin-bottom: 15px;
    padding-right: 15px;
}

    form.compact .form-group label {
        margin-bottom: 5px;
    }

.form-control {
    color: #555;
    font-size: 14px;
    line-height: 18px;
}

    .form-control,
    .form-control:disabled,
    .form-control[readonly] {
        background-color: #f4f4f4;
    }

.form-required:before {
    color: inherit;
}

.form-control-select + span {
    height: auto;
    padding: 13px 10px;
    right: 0;
}

.form-group.quantity-select {
    width: 115px
}

select.colored-selected.has-selected,
select.colored-selected .selected:not(.no-value) {
    color: #00549a;
}

    select.colored-selected.has-selected::-ms-value {
        color: #00549a;
    }

select.colored-selected option:not(.selected) {
    color: #555;
}

.jumping-cta-form-group {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    position: relative;
}

.collapse-text-trigger[aria-expanded=false] .text-expand,
.collapse-text-trigger[aria-expanded=true] .text-collapse {
    display: inline;
}

.collapse-text-trigger[aria-expanded=true] .text-expand,
.collapse-text-trigger[aria-expanded=false] .text-collapse {
    display: none;
}

.partial-collapse {
    min-height: 240px;
    height: 240px;
    overflow: hidden;
}

    .partial-collapse.collapse:not(.show) {
        display: block;
    }

    .partial-collapse.partial-collapse-limit.collapse:not(.show) > li:nth-child(n+5) {
        display: none;
    }

    .partial-collapse.partial-collapse-limit.collapse.show > li:nth-child(n+5) {
        display: list-item;
    }

    .partial-collapse.partial-collapse-limit.collapse {
        height: auto;
        min-height: 0;
    }

    .partial-collapse.collapse.show {
        height: auto;
    }



.sim-card-dd-main .big-price {
    margin-bottom: 0 !important;
}





.big-price,
.small-price {
    color: #00549a;
    font-family: "bellslim_font_heavy", Helvetica, Arial, sans-serif;
    font-size: 40px;
    letter-spacing: -1px;
    line-height: 36px;
    white-space: nowrap;
}

.small-price {
    font-size: 30px;
    letter-spacing: -.75px;
    line-height: 22px !important;
    display: flex;
    align-items: flex-start;
}

    .big-price span,
    .small-price span {
        font-size: 18px;
        letter-spacing: -.45px;
        line-height: 22px;
        margin-right: 1px;
        position: relative;
        top: 2px;
        vertical-align: top;
    }

.big-price span {
    line-height: 22px;
}

html[lang='fr'] .big-price span,
html[lang='fr'] .small-price span {
    margin-right: 0;
}

.small-price span {
    font-size: 14px;
    letter-spacing: -.35px;
    top: -5px;
}

    .big-price span:last-of-type,
    .small-price span:last-of-type {
        margin-left: 2px;
    }

html[lang='fr'] .big-price span:last-of-type,
html[lang='fr'] .small-price span:last-of-type {
    margin-left: 0;
}

.sup-align-top-small {
    font-size: 0.65em;
    line-height: 0;
    position: relative;
    top: -.5em;
    vertical-align: baseline;
}

.hero-banner {
    display: flex;
    position: relative;
    width: 100%;
}

.hero-banner-responsive .image-banner {
    width: 300px;
    height: 340px;
}

.hero-banner-8, .standard-banner {
    height: 440px;
}

    .hero-banner-8 .image-banner {
        max-width: 790px;
    }

.hero-banner:not(.even-split) > div {
    height: 440px;
    overflow: hidden;
}

.hero-banner.even-split:not(.product-banner):not(.product-banner-2) > div {
    min-height: 440px;
}

.hero-banner .banner-image {
    overflow: hidden;
    position: relative;
}

.hero-banner:not(.even-split) .banner-image > img {
    width: 100%;
}

.hero-banner.even-split.product-banner-2.banner-img-middle .banner-image > img {
    align-self: center
}

.hero-banner.even-split .banner-image {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    padding: 30px 0;
}

.hero-banner .banner-image > img.lazy-loading {
    position: absolute;
    height: auto;
    width: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.hero-banner .banner-text {
    margin: 0;
    padding-top: 30px;
    padding-bottom: 30px;
    width: 100%;
}

    .hero-banner .banner-text .surtitle {
        margin-bottom: 10px;
    }

.hero-banner:not(.even-split) .banner-text .big-title + div:not(.big-price),
.hero-banner:not(.even-split) .banner-text .title + div:not(.big-price) {
    margin-top: 10px;
}

.hero-banner:not(.even-split) .banner-text .big-price {
    margin-top: 15px;
}

.hero-banner .banner-text .small-text {
    margin: 15px 0 0;
}

.sub-banner > div {
    display: block;
    padding: 0 30px;
}

.sub-banner .banner-text {
    padding-top: 30px;
    padding-bottom: 10px;
}

    .sub-banner .banner-text ul li {
        align-items: center;
    }

        .sub-banner .banner-text ul li:not(:first-child) {
            margin-top: -8px;
        }

.sub-banner .banner-image {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.product-card {
    border: 1px solid #e1e1e1;
    display: flex;
    flex-direction: column;
}

.product-cards .product-card:not(:last-child) {
    margin-bottom: 15px;
}

.product-card .card-details {
    display: flex;
    padding: 30px 15px 15px;
}

.product-card.tablet-change .card-details {
    padding-bottom: 30px;
}

.product-card .card-icon {
    margin-right: 30px;
    text-align: center;
    width: 150px;
}

    .product-card .card-icon img {
        width: 113px;
    }

.product-card .card-heading {
    display: block;
}

    .product-card .card-heading .small-title {
        margin-bottom: 15px;
    }

.product-card .card-features {
    align-items: center;
}

    .product-card .card-features > div:last-child {
        display: inline-block;
    }

.product-card .card-cta-block {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 30px 15px;
}

    .product-card .card-cta-block .card-price {
        display: flex;
        flex-direction: column;
        padding-bottom: 15px;
    }

.product-card.box-shadow-round .card-cta-block {
    border-radius: 0 0 10px 10px;
}

.product-card.tablet-change .card-cta-block .card-price {
    padding-bottom: 30px;
}

.product-card.tablet-change .card-cta-block > div:only-child .card-price {
    padding-bottom: 0;
}

    .product-card.tablet-change .card-cta-block > div:only-child .card-price .big-price {
        margin-bottom: 15px;
    }

.product-card .card-cta-block * + .card-price {
    margin-top: 10px;
}

.product-card .card-cta-block > div:last-child {
    align-items: center;
    display: flex;
}

.product-card .card-cta-block .small-text {
    margin-top: 15px;
}

.graphic-product-cards {
    display: flex;
    flex-direction: column;
}

.graphic-product-card {
    display: inline-block;
    margin-top: 66px;
    position: relative;
}

    .graphic-product-card > div {
        border: 1px solid #e1e1e1;
    }

    .graphic-product-card .card-heading,
    .graphic-product-card .card-details,
    .graphic-product-card .card-cta-block {
        padding: 30px;
    }

    .graphic-product-card .card-heading {
        box-shadow: inset 0 0 80px 30px rgba(0,0,0,.05);
        padding-top: 95px;
    }

        .graphic-product-card .card-heading img {
            height: 150px;
            left: 50%;
            position: absolute;
            top: -66px;
            transform: translateX(-50%);
        }

    .graphic-product-card .box-shadow-round .card-heading {
        border-radius: 10px 10px 0 0;
    }

    .graphic-product-card .card-cta-block {
        background-color: #f4f4f4;
        border-top: 1px solid #e1e1e1;
    }

    .graphic-product-card .box-shadow-round .card-cta-block {
        border-radius: 0 0 10px 10px;
    }

.secondary-offers {
    display: flex;
    flex-direction: column;
}

.secondary-offer {
    display: inline-block;
}

    .secondary-offer > div {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between;
    }

    .secondary-offer:not(.no-box) > div {
        padding: 0 30px;
    }

    .secondary-offer .offer-details {
        padding-bottom: 25px;
    }

    .secondary-offer:not(.no-box) .offer-details {
        padding-top: 15px;
    }

    .secondary-offer .offer-details .small-title {
        margin-bottom: 15px;
    }

    .secondary-offer .offer-image {
        align-items: center;
        display: flex;
        height: 190px;
        justify-content: center;
        margin-bottom: 20px;
    }

    .secondary-offer:not(.no-box) a {
        margin-bottom: 30px;
    }

.huge-offer-details > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 40px;
}

.huge-offer-details .title {
    margin-top: 30px;
}

.huge-offer-details > div > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 30px;
}

.huge-offer-details .offer-details-col > div:not(:first-child) {
    margin-top: 30px;
}

.huge-offer-details .offer-price-col .big-price {
    margin-top: 20px;
}

.huge-offer-details .offer-price-col .inline-price-text {
    color: #111;
    margin-top: 25px;
}

    .huge-offer-details .offer-price-col .inline-price-text > span {
        color: #00549a;
    }

.huge-offer-details .offer-price-col .small-text {
    margin-top: 10px;
}

.huge-offer-details .offer-price-col .details-trigger-block {
    margin-top: 30px;
    padding-bottom: 15px;
}

.huge-offer-details .offer-price-col .complementary-text {
    display: none;
    margin-top: 15px;
}

.huge-offer-details .offer-price-col .call-icon-block .anchor-text:not(:last-child) {
    display: inline;
}

.huge-offer-details .offer-price-col .call-icon-block .anchor-text:last-child {
    display: none;
}

.additional-details .accordion-heading {
    display: flex;
}

    .additional-details .accordion-heading .anchor-text {
        color: #00549a;
        font-size: 18px;
    }

.additional-details .accordion-body {
    padding-top: 10px;
    padding-left: 30px;
}

    .additional-details .accordion-body p a:focus {
        outline-offset: -1px !important;
    }

.same-height-wrap p a.undrl:focus {
    outline-offset: -1px !important;
}

.more-ways-to-shop {
    overflow: hidden;
}

    .more-ways-to-shop .container {
        padding-top: 30px;
        padding-bottom: 20px;
    }

    .more-ways-to-shop .anchor-text {
        font-weight: 400;
    }

.callout-default {
    background: #00549a;
    display: inline-block;
    color: white;
    padding: 3px 5px;
    border-radius: 3px;
}
/* Sliding Banner */
.sliding-banner {
    position: relative;
    background: #FFF;
}

    .sliding-banner .slick-list {
        transition: height .2s;
    }

    .sliding-banner .sliding-banner-slider-container {
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease;
        -webkit-transition: opacity 0.3s ease;
        max-height: 445px;
    }

        .sliding-banner .sliding-banner-slider-container.slick-initialized {
            visibility: visible;
            opacity: 1;
            max-height: initial;
        }

    .sliding-rotating-carousel-pause:hover,
    .sliding-banner :hover,
    .sliding-rotating-carousel-pause-bg:hover,
    .sliding-rotating-carousel-pause-bg::before:hover,
    .sliding-rotating-carousel-pause-bg::before:hover {
        cursor: pointer;
    }

    .sliding-banner .slick-track {
        display: table;
    }

    .sliding-banner .slick-slide {
        display: table-cell !important;
        vertical-align: top;
        float: none;
        position: relative;
    }

/*.sliding-rotating-carousel-list-left .sliding-rotating-carousel-buttons {
    bottom: 33px;
    right: auto;
    left: 15px;
}

.sliding-rotating-carousel-list-left.carousel-list-standard-position .sliding-rotating-carousel-buttons {
    bottom: 18px;
}

.sliding-rotating-carousel-list-right-md.carousel-list-standard-position .sliding-rotating-carousel-pause {
    bottom: 15px;
}*/

.sliding-rotating-carousel-buttons {
    position: absolute;
    bottom: 29px;
    left: 15px;
    height: 34px;
    border-radius: 16px;
    background-color: #fff;
    list-style: none;
    display: flex;
    flex-direction: row;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.2);
    margin: 0;
    padding: 4px 2px;
}

.sliding-rotating-carousel-button {
    position: relative;
    border-radius: 50%;
    border: none;
    height: 26px;
    width: 26px;
    background-color: #fff;
    color: #003778;
    font-size: 14px;
    line-height: 16px;
    text-align: center;
    margin: 0 2px;
    padding: 0;
}

    .sliding-rotating-carousel-button:hover {
        text-decoration: none;
        cursor: pointer;
    }

    .sliding-rotating-carousel-button > * {
        pointer-events: none;
    }

.sliding-rotating-carousel-buttons > li.slick-active > .sliding-rotating-carousel-button {
    color: #fff;
    background-color: #00549A;
}

.sliding-rotating-carousel-pause {
    height: 38px;
    width: 38px;
    border-radius: 50%;
    border: none;
    background-color: transparent;
    position: absolute;
    bottom: 26px;
    right: 15px;
    z-index: 10;
    padding: 0;
    cursor: pointer;
}

.sliding-rotating-carousel-pause-bg {
    height: 34px;
    width: 34px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    border-radius: 50%;
    background-color: #FFF;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.2);
    pointer-events: none;
}

svg.sliding-rotating-carousel-progress {
    overflow: visible;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    transform: rotate(-90deg);
}

    svg.sliding-rotating-carousel-progress circle.sliding-rotating-carousel-progress_initial {
        display: none;
    }

    svg.sliding-rotating-carousel-progress circle {
        stroke: #0075FF;
        stroke-width: 3px;
        stroke-dasharray: 125;
        stroke-dashoffset: 0;
        fill: rgba(225,255,255,0);
    }

.sliding-rotating-carousel-pause[data-pressed="false"] .sliding-rotating-carousel-pause-bg:before, .sliding-rotating-carousel-pause[data-pressed="false"] .sliding-rotating-carousel-pause-bg:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 3px);
    transform: translate(-50%,-50%);
    height: 10px;
    width: 0;
    border: 1px solid #003778;
    z-index: 1;
    background-color: #003778;
}

.sliding-rotating-carousel-pause[data-pressed="false"] .sliding-rotating-carousel-pause-bg:before {
    left: calc(50% + 3px);
}

.sliding-rotating-carousel-pause[data-pressed="true"] .sliding-rotating-carousel-pause-bg:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% + 1px);
    transform: translate(-50%,-50%);
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 11px solid #003777;
    z-index: 1;
}

/* Sliding Banner */

/* Standard Banner */
.standard-banner {
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
}

    .standard-banner > div:first-child {
        padding-top: 30px;
        padding-bottom: 15px;
    }

    .standard-banner > div:last-child {
        margin-left: auto;
        margin-right: auto;
    }

    .standard-banner.stand-alone > div:last-child > div {
        height: 100%;
    }

    .standard-banner:not(.stand-alone) > div:last-child {
        max-width: 100%;
    }

    .standard-banner > div > div {
        margin-left: auto;
        margin-right: auto;
    }

    .standard-banner > div:last-child > div {
        width: 100%;
    }
/* Standard Banner */

/* mobile only */
@media (max-width: 767.98px) {
    .subtitle-2-reg-2 {
        font-size: 14px;
        line-height: 18px;
        color: #555;
    }
    /* Update height of the header of the modal for shop */
    .modal-header {
        padding: 10px 20px 10px 15px
    }

    .hero-banner-responsive .image-banner {
        width: 210px;
        height: 220px;
    }

    .product-card .card-features {
        width: 100%;
        display: inline-flex
    }

        .product-card .card-features div:nth-child(2) {
            max-width: 75%;
        }


    .hero-banner > div {
        display: flex;
        flex-direction: column;
    }

    .hero-banner:not(.even-split) > div {
        align-items: center;
        text-align: center;
    }

    .hero-banner.even-split .banner-text {
        padding-bottom: 0;
    }

    .hero-banner .banner-image {
        flex: 1;
        position: relative;
        width: 100%;
    }

        .hero-banner .banner-image > img {
            max-width: 374px;
        }

    .hero-banner:not(.even-split) .banner-text {
        max-width: 280px;
    }

    .hero-banner.even-split .banner-image {
        height: 222px;
        min-height: 222px;
    }

        .hero-banner.even-split .banner-image > img:not(.lazy-loading) {
            height: 100%;
        }

    .hero-banner.even-split.product-banner .banner-image > img:not(.lazy-loading) {
        height: 161px;
    }

    .hero-banner.even-split.product-banner-2 .banner-image > img:not(.lazy-loading) {
        height: 179px;
    }

    .sub-banner .banner-image > img {
        position: relative;
        height: 131px;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }

        .sub-banner .banner-image > img.lazy-loading {
            position: relative;
            height: auto;
            width: auto;
            margin-top: 25px;
            margin-bottom: 35px;
        }

    .product-card .card-icon {
        display: none;
    }

    .product-card .card-heading {
        margin-bottom: 10px;
    }

    .product-card .card-cta-block.collapse:not(.show) {
        display: none;
    }

    .graphic-product-cards > div:not(:last-child) {
        margin-bottom: 30px;
    }

    .secondary-offer:first-child {
        margin-bottom: 15px;
    }

    .huge-offer-details h2 {
        align-self: flex-start;
    }

    .huge-offer-details .offer-details-col {
        padding-bottom: 30px;
    }

    .huge-offer-details .offer-price-col {
        padding-top: 30px;
    }

    .more-ways-to-shop h2 {
        padding-left: 15px;
        margin-bottom: 20px;
    }

    .more-ways-to-shop .content-ways-to-shop {
        padding-left: 5px;
    }

        .more-ways-to-shop .content-ways-to-shop li {
            width: 100%;
        }

        .more-ways-to-shop .content-ways-to-shop > li > a .anchor-text {
            margin-left: 15px;
        }

    .more-ways-to-shop .anchor-icon ~ .anchor-text {
        margin-left: 15px;
    }

    .hero-banner-8 {
        height: 210px;
    }

    .border-none-xs {
        border: none;
    }

    .border-t-light-grey-xs {
        border-top: 1px solid #E1E1E1;
    }

    /* start new banner */
    /* TODO translate to mobile first */
    .sliding-banner .sliding-rotating-carousel-buttons {
        bottom: 18px;
    }

    .sliding-banner .sliding-rotating-carousel-pause {
        bottom: 15px;
    }
    /* end new banner */
}

/* tablet and larger */
@media (min-width: 768px) {
    html:not([lang=fr]) .jumping-cta {
        position: absolute;
        right: 0;
        top: 2px;
    }

    html[lang=fr] .jumping-cta {
        margin-top: 15px;
    }

    /* Standard Banner */
    .standard-banner.banner-reverse {
        flex-direction: row-reverse;
    }

    .standard-banner {
        padding-left: 0;
        padding-right: 0;
        text-align: left;
        display: flex;
    }

        .standard-banner > div {
            width: 50%;
            padding: 0 15px;
        }

            .standard-banner > div:first-child {
                padding-top: 0;
                padding-bottom: 0;
            }

        .standard-banner.banner-40-60 > div:first-child, .standard-banner.banner-60-40 > div:last-child, .standard-banner.banner-60-40.banner-reverse > div:last-child {
            width: 40%;
        }

        .standard-banner.banner-40-60 > div:first-child,
        .standard-banner.banner-60-40.banner-reverse > div:last-child,
        .standard-banner.banner-60-40.stand-alone.banner-reverse > div:last-child {
            padding-right: 10px;
            padding-left: 15px;
        }

        .standard-banner.banner-60-40:not(.stand-alone) > div:last-child {
            padding-top: 130px;
        }

        .standard-banner.banner-60-40 > div:last-child {
            padding-left: 10px;
        }

        .standard-banner.banner-40-60 > div:last-child, .standard-banner.banner-60-40 > div:first-child, .standard-banner.banner-60-40.banner-reverse > div:first-child {
            width: 60%;
        }

        .standard-banner.banner-40-60 > div:last-child, .standard-banner.banner-60-40.banner-reverse > div:first-child {
            padding-right: 15px;
            padding-left: 20px;
        }

        .standard-banner.banner-60-40 > div:first-child, .standard-banner.banner-40-60.banner-reverse > div:last-child {
            padding-right: 20px;
            padding-left: 15px
        }

        .standard-banner.banner-40-60.banner-reverse > div:first-child {
            padding-left: 10px;
            padding-right: 15px;
        }

        .standard-banner:not(.stand-alone) > div:last-child {
            padding-top: 100px;
        }

        .standard-banner.stand-alone > div:last-child {
            padding-bottom: 0;
            display: flex;
        }

            .standard-banner.stand-alone > div:last-child > div {
                height: auto;
                align-self: center;
            }

        .standard-banner:not(.stand-alone) > div:last-child > div {
            max-width: 100%;
        }


        .standard-banner:not([class*='banner-tablet-version']) > div:first-child {
            align-self: center;
        }
    /* Standard Banner */

    .partial-collapse {
        min-height: 200px;
        height: 200px;
        overflow: hidden;
    }



    .hero-banner img {
        top: 90px;
    }

    .hero-banner-5 img {
        max-height: 300px;
    }

    .hero-banner > div {
        align-items: center;
        display: flex;
        flex-direction: row;
        position: relative;
    }

    .hero-banner .banner-text {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: center;
        padding-bottom: 45px;
        padding-top: 45px;
        margin-right: 30px;
        width: 40%;
    }

    .hero-banner .banner-image + .banner-text {
        margin-right: 0;
    }

    .hero-banner .banner-text .surtitle {
        margin-bottom: 15px;
        width: 100%;
    }

    .hero-banner:not(.even-split) .banner-text .big-price {
        margin-top: 20px;
    }

    .hero-banner .banner-image {
        align-self: flex-end;
        height: 100%;
        width: 60%;
    }

    .hero-banner:not(.even-split) .banner-image > img:not(.lazy-loading) {
        position: relative;
        top: 92px;
    }

    /* the long-copy modifier class changes the width ratio for text and image from 40:60 to 60:40. it also increases the top offset of the image to accommodate the smaller height of the image (smaller width = smaller height due to aspect ratio lock) */
    .hero-banner.long-copy .banner-text {
        width: 60%;
    }

    .hero-banner.long-copy .banner-image {
        width: 40%;
    }

        .hero-banner.long-copy .banner-image > img {
            top: 167px;
        }

    /* the even-split modifier class changes the width ratio for text and image to 50:50 */
    .hero-banner.even-split .banner-text,
    .hero-banner.even-split .banner-image {
        width: 50%;
    }

    .hero-banner.even-split .banner-text {
        padding-left: 15px;
    }

    .hero-banner.even-split .banner-image {
        padding-bottom: 45px;
        padding-right: 15px;
        padding-top: 45px;
    }

    .hero-banner.even-split.product-banner .banner-image img {
        height: 302px;
    }

    .hero-banner.even-split.product-banner .banner-text {
        padding-right: 0;
    }

    .hero-banner.even-split.product-banner-2 .banner-image {
        /*padding-top: 90px;*/
    }

        .hero-banner.even-split.product-banner-2 .banner-image img {
            height: 209px;
        }

    .hero-banner.even-split.product-banner-2 .banner-text p {
        /*width: 330px;*/
    }

    .sub-banner > div {
        display: flex;
    }

    .sub-banner .banner-text {
        order: 2;
        padding-left: 15px;
        padding-top: 65px;
        padding-bottom: 60px;
    }

        .sub-banner .banner-text ul li > span:last-child {
            color: #111;
            font-size: 18px;
            line-height: 22px;
        }

    .sub-banner .banner-image {
        order: 1;
    }

        .sub-banner .banner-image > img.lazy-loading {
            position: absolute;
            height: auto;
            width: auto;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

    .product-card.tablet-change {
        flex-direction: row;
    }

    .product-card .card-details {
        padding-bottom: 30px;
        padding-left: 30px;
        padding-right: 30px;
    }

    .product-card .card-cta-block {
        padding-left: 30px;
        padding-right: 30px;
    }

    .product-card.tablet-change.box-shadow-round .card-cta-block {
        border-radius: 0 10px 10px 0;
    }

    .product-card.tablet-change .card-cta-block > div:only-child .card-price .big-price {
        margin-bottom: 30px;
    }

    .product-card:not(.tablet-change) .card-heading {
        display: flex;
        justify-content: space-between;
        margin-bottom: 15px;
    }

        .product-card:not(.tablet-change) .card-heading .small-title {
            margin-bottom: 0;
        }

        .product-card:not(.tablet-change) .card-heading a {
            align-self: flex-end;
        }

    .product-card:not(.tablet-change) .card-features {
        display: inline-block;
        margin-right: 50px;
        width: 175px;
    }

        .product-card:not(.tablet-change) .card-features > div:last-child {
            display: block;
        }

    .product-card:not(.tablet-change) .card-cta-block {
        flex-direction: row;
    }

        .product-card:not(.tablet-change) .card-cta-block .card-price {
            padding-bottom: 0;
        }

    .graphic-product-cards {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .graphic-product-card {
        margin-top: 75px;
    }

    .graphic-product-cards > div:nth-child(odd) {
        padding-right: 15px;
    }

    .graphic-product-cards > div:nth-child(even) {
        padding-left: 15px;
    }

    .graphic-product-card .card-heading {
        padding-top: 115px;
    }

        .graphic-product-card .card-heading img {
            height: 190px;
            top: -75px;
        }

    .secondary-offers {
        flex-direction: row;
    }

        .secondary-offers .secondary-offer:first-child {
            padding-right: 15px;
        }

        .secondary-offers .secondary-offer:last-child:not(:first-child) {
            padding-left: 15px;
        }

    .secondary-offer.no-box:first-child {
        padding-left: 25px;
    }

    .secondary-offer.no-box:last-child {
        padding-right: 25px;
    }

    .secondary-offer:not(.no-box) a {
        margin-bottom: 45px;
    }

    .huge-offer-details h2 {
        margin-top: 30px;
    }

    .huge-offer-details > div > div {
        margin-top: 60px;
    }

    .huge-offer-details .offer-details-col {
        padding-right: 40px;
    }

    .huge-offer-details .offer-price-col {
        padding-left: 40px;
    }

    .more-ways-to-shop .content-ways-to-shop > li {
        flex: 1;
        justify-content: center;
        max-width: 215px;
        flex-basis: 100%;
    }

        .more-ways-to-shop .content-ways-to-shop > li:not(:first-child) {
            margin-left: 30px;
        }

        .more-ways-to-shop .content-ways-to-shop > li > a {
            display: block;
        }


            .more-ways-to-shop .content-ways-to-shop > li > a .anchor-text {
                margin-left: 0;
            }

    .more-ways-to-shop .anchor-icon ~ .anchor-text {
        margin-left: 0;
    }

    /* START new banner */

    .sliding-rotating-carousel-buttons {
        bottom: 28px;
        right: 85px;
        left: auto;
    }

    .sliding-rotating-carousel-pause {
        bottom: 25px;
        right: 30px;
    }

    /* END new banner */
}

/* tablet only */
@media (min-width: 768px) and (max-width: 991.98px) {
    /* Standard Banner */
    .standard-banner[class*='banner-tablet-version'] {
        text-align: center;
        display: block;
    }

    .standard-banner.stand-alone[class*='banner-tablet-version'] > div:last-child > div {
        height: 100%;
    }

    .standard-banner[class*='banner-tablet-version'][class*='banner'] > div {
        width: 100%;
        padding: 0;
    }

        .standard-banner[class*='banner-tablet-version'][class*='banner'] > div:first-child {
            padding: 30px 0;
            max-width: 460px;
            margin-right: auto;
            margin-left: auto;
        }

    .standard-banner[class*='banner-tablet-version'] > div:last-child {
        padding-top: 0;
    }

    .standard-banner[class*='banner-tablet-version']:not(.stand-alone) > div:last-child {
        max-width: 350px;
        padding-left: 0;
        padding-right: 0;
        padding-top: 0;
    }
    /* Standard Banner */

    .hero-banner .banner-text {
        padding-right: 10px;
    }

    .hero-banner .banner-image + .banner-text {
        padding-right: 0;
    }

    .sub-banner .banner-image > img {
        position: absolute;
        height: 89%;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }

    .product-card:not(.tablet-change) .card-cta-block .card-price {
        flex-direction: row;
    }

    .product-card:not(.tablet-change) .card-cta-block .big-price {
        margin-right: 40px;
    }

    .product-card:not(.tablet-change) .card-cta-block .small-text {
        margin-top: 5px;
    }

    .huge-offer-details > div {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .more-ways-to-shop .container {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .more-ways-to-shop h2 {
        margin-bottom: 30px;
    }

    .hero-banner-responsive .image-banner {
        height: 385px;
    }

    .hero-banner-4 img {
        height: 210px;
    }

    .hero-banner-8 {
        height: 300px;
    }

    .scrollableContainerShadow-table.shadow-xs:after {
        background: none;
    }
}

/* mobile and tablet only */
@media (max-width: 991.98px) {
    /* Use this class together with .subtitle-2-reg to achieve 14px font size on xs - sm and 18px on md */
    .subtitle-2-reg-3 {
        font-size: 14px;
        line-height: 18px;
        color: #555;
    }

        .subtitle-2-reg-3.inverted {
            color: #fff;
        }

    .column-spacer-sm-30 {
        margin: 0 -15px;
    }

    .huge-offer-details img {
        width: 297px;
    }

    .hero-banner-8 .image-banner {
        max-width: 610px;
    }

    .hero-banner-9 {
        max-height: 440px;
    }

        .hero-banner-9 .image-banner {
            max-width: 410px;
        }

    .left.scrollableContainerShadow-table:before {
        width: 46px;
        -webkit-transition: width .5s;
        transition: width .5s;
    }

    .scrollableContainerShadow-table:before {
        width: 0;
        pointer-events: none;
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        background: -moz-linear-gradient(90deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        background: -webkit-linear-gradient(90deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        background: linear-gradient(90deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        -webkit-transition: width .1s;
        transition: width .1s;
    }

    .right.scrollableContainerShadow-table:after {
        width: 46px;
        -webkit-transition: width .5s;
        transition: width .5s;
    }

    .scrollableContainerShadow-table:after {
        width: 0;
        pointer-events: none;
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        z-index: 1;
        background: -moz-linear-gradient(270deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        background: -webkit-linear-gradient(270deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        background: linear-gradient(270deg,rgba(0,0,0,0.29) 0%,rgba(0,0,0,0) 100%);
        -webkit-transition: width .1s;
        transition: width .1s;
    }
}

/* desktop and larger */
@media (min-width: 992px) {
    /* Standard Banner */
    .standard-banner {
        padding-left: 15px;
        padding-right: 15px;
    }

        .standard-banner > div:first-child {
            padding-right: 15px;
            padding-left: 30px;
            max-width: 100%;
            margin-right: auto;
            margin-left: auto;
            text-align: left;
            align-self: center;
        }

        .standard-banner > div:last-child {
            padding-right: 30px;
        }

        .standard-banner:not(.stand-alone) > div:last-child {
            padding: 0 30px 0 15px;
        }

        .standard-banner.banner-reverse > div:first-child,
        .standard-banner.banner-60-40.banner-reverse > div:first-child,
        .standard-banner.banner-60-40.stand-alone.banner-reverse > div:first-child,
        .standard-banner.banner-40-60.banner-reverse > div:first-child,
        .standard-banner.banner-40-60 > div:last-child,
        .standard-banner.banner-60-40 > div:last-child {
            padding-right: 30px;
            padding-left: 15px;
        }

        .standard-banner.banner-reverse > div:last-child,
        .standard-banner.banner-60-40.banner-reverse > div:last-child,
        .standard-banner.banner-60-40.stand-alone.banner-reverse > div:last-child,
        .standard-banner.banner-40-60.banner-reverse > div:last-child,
        .standard-banner.banner-40-60 > div:first-child,
        .standard-banner.banner-60-40 > div:first-child {
            padding-right: 15px;
            padding-left: 30px;
        }

        .standard-banner:not(.stand-alone) > div:last-child {
            padding-top: 60px;
        }

        .standard-banner.banner-60-40:not(.stand-alone) > div:last-child {
            padding-top: 100px;
        }

        .standard-banner.banner-60-40.stand-alone > div:last-child {
            padding-left: 15px;
        }

        .standard-banner.banner-60-40.stand-alone > div:first-child {
            padding-right: 15px;
        }

    /* Standard Banner */

    .partial-collapse {
        min-height: 170px;
        height: 170px;
    }

    .hero-banner .banner-text {
        padding-bottom: 60px;
        padding-left: 44px;
        padding-top: 60px;
    }

    .hero-banner .banner-image {
        padding-right: 44px;
    }

    .hero-banner.even-split .banner-image {
        padding-bottom: 60px;
        padding-top: 60px;
    }

    .hero-banner.long-copy .banner-image > img {
        top: 153px;
    }

    .hero-banner.even-split.product-banner-2 .banner-image {
        /*padding-top: 75px;*/
    }

        .hero-banner.even-split.product-banner-2 .banner-image img {
            height: 271px;
        }

    .sub-banner .banner-text {
        padding-top: 60px;
    }

    .sub-banner .banner-image > img {
        position: absolute;
        height: 89%;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }

        .sub-banner .banner-image > img.lazy-loading {
            position: absolute;
            height: auto;
            width: auto;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

    .product-card {
        flex-direction: row;
    }

        .product-card.tablet-change .card-details,
        .product-card:not(.tablet-change) .card-details {
            padding-bottom: 30px;
        }

        .product-card.tablet-change .card-cta-block,
        .product-card:not(.tablet-change) .card-cta-block {
            border-radius: 0 10px 10px 0;
            flex-direction: column;
        }

            .product-card.tablet-change .card-cta-block .card-price,
            .product-card:not(.tablet-change) .card-cta-block .card-price {
                padding-bottom: 35px;
            }

    .graphic-product-card {
        margin-top: 135px;
    }

        .graphic-product-card .card-heading {
            padding-top: 95px;
        }

            .graphic-product-card .card-heading img {
                height: 230px;
                top: -135px;
            }

    .secondary-offer.no-box:first-child {
        padding-left: 35px;
        padding-right: 45px;
    }

    .secondary-offer.no-box:last-child {
        padding-left: 45px;
        padding-right: 35px;
    }

    .huge-offer-details > div {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .huge-offer-details .title {
        margin-top: 20px;
    }

    .huge-offer-details > div > div {
        flex: auto;
        padding-left: 15px;
        padding-right: 15px;
        margin-top: 45px;
    }

    .huge-offer-details .offer-price-col .complementary-text {
        display: block;
    }

    .additional-details .accordion-wrap {
        padding-left: 15px;
        padding-right: 15px;
    }

    .more-ways-to-shop .container {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .more-ways-to-shop h2 {
        margin-bottom: 45px;
    }

    .more-ways-to-shop .anchor-text {
        font-size: 14px;
        line-height: 18px;
    }

    /* START new banner */
    .sliding-rotating-carousel-pause {
        right: 16px;
    }

    .sliding-rotating-carousel-buttons {
        right: 71px;
    }
    /* END new banner */
}

@media (min-width: 1240px) {
    /* Standard Banner */
    .standard-banner {
        padding: 0;
    }

        .standard-banner:not(.stand-alone) > div:last-child {
            padding-top: 45px;
        }

        .standard-banner > div:first-child,
        .standard-banner.banner-reverse > div:last-child {
            padding-left: 0;
            padding-right: 30px;
        }

        .standard-banner > div:last-child,
        .standard-banner.banner-reverse > div:first-child,
        .standard-banner:not(.stand-alone) > div:last-child {
            padding-right: 0;
            padding-left: 30px;
        }

        .standard-banner.banner-40-60:not(.stand-alone) > div:last-child {
            padding-top: 30px;
        }

        .standard-banner.banner-40-60 > div:first-child,
        .standard-banner.banner-60-40.banner-reverse > div:last-child,
        .standard-banner.banner-60-40.stand-alone.banner-reverse > div:last-child {
            padding-left: 0;
            padding-right: 25px;
        }

        .standard-banner.banner-40-60 > div:last-child,
        .standard-banner.banner-60-40.banner-reverse > div:first-child,
        .standard-banner.banner-60-40.stand-alone.banner-reverse > div:first-child {
            padding-right: 0;
            padding-left: 35px;
        }

        .standard-banner.banner-40-60.banner-reverse > div:first-child, .standard-banner.banner-60-40 > div:last-child, .standard-banner.banner-60-40.stand-alone > div:last-child {
            padding-left: 25px;
            padding-right: 0;
        }

        .standard-banner.banner-40-60.banner-reverse > div:last-child,
        .standard-banner.banner-60-40 > div:first-child,
        .standard-banner.banner-60-40.stand-alone > div:first-child {
            padding-left: 0;
            padding-right: 35px;
        }

        .standard-banner.banner-60-40:not(.stand-alone) > div:last-child, .standard-banner.banner-60-40.banner-reverse:not(.stand-alone) > div:last-child {
            padding-top: 90px;
        }

        .standard-banner.stand-alone.banner-40-60 > div:last-child > div {
            height: 100%
        }

        .standard-banner.stand-alone > div:last-child > div img {
            max-height: 100%
        }
    /* Standard Banner */
    /* start new banner */
    .sliding-rotating-carousel-buttons {
        transform: translateX(600px);
        right: calc(50% + 55px);
        left: auto;
    }
    /*.sliding-rotating-carousel-list-right-lg .sliding-rotating-carousel-buttons {
        transform: translateX(600px);
        right: calc(50% + 55px);
        left: auto;
    }*/
    .sliding-rotating-carousel-pause {
        transform: translateX(600px);
        right: 50%;
        left: auto;
    }
    /* end new banner */
    .banner-title {
        font-size: 40px;
        line-height: 46px;
        letter-spacing: -0.7px;
    }
}

/* extra large desktop and larger */
@media (min-width: 1440px) {
    .hero-banner .banner-text {
        margin-right: 60px;
    }
}



/* END component styles and overrides */

/* DO NOT merge the temporary styles below this comment with the ones above */

/* START the header/nav and footer were not completely rewritten yet but several styles were added to make them look as close to the mockups as possible. these can be removed once those have been updated already */

footer .btn-site-feedback.btn-primary:not(:disabled):not(.disabled):focus {
    background-color: #ccd7e4;
}

/* mobile and tablet */
@media (max-width: 991.98px) {
    .global-navigation .aliant-home .bellSlimSemibold-Nav {
        font-size: 14px;
    }

    .sub-nav-header {
        color: #fff;
        font-size: 12px;
        padding: 12px 50px 12px 30px;
        margin: 0;
    }
}

/* desktop and larger */
@media (min-width: 992px) {
    .global-navigation .connector .connector-brand.aliant a {
        font-size: 26px;
        top: 0;
    }

    .global-navigation .connector .menu-flyout-visible .sub-nav-group.has-two-columns {
        width: 180%;
    }

    .nav-links-two-columns {
        column-count: 2;
        column-gap: 30px;
        column-fill: auto;
    }

        .nav-links-two-columns li {
            display: inline-block;
            vertical-align: top;
        }

    .global-navigation .connector .menu-flyout-visible .sub-nav-item .sub-nav-level4.nav-links-two-columns {
        padding-right: 30px;
    }

        .global-navigation .connector .menu-flyout-visible .sub-nav-item .sub-nav-level4.nav-links-two-columns li > a {
            padding-right: 20px;
        }

    .global-navigation .connector .menu-flyout-visible .sub-nav-group.sub-nav-large {
        width: 400%;
    }

    .global-navigation .connector .menu-flyout-visible .menu-flyout-root {
        min-height: 300px;
    }

    .sub-nav-item {
        overflow-y: hidden;
    }
}

/* END header and/or footer styles */

/* START helper classes used by header and/or footer only. these can be removed once those have been updated already */

.margin-top-n8 {
    margin-top: -8px;
}

.borderRadiusAll20 {
    border-radius: 20px;
}

.txtSize34 {
    font-size: 34px;
}

.line-height-14 {
    line-height: 14px;
}

.line-height-22 {
    line-height: 22px;
}
/*modal override*/

.modal-open .modal:not(.modal-tooltip) {
    overflow-y: auto;
}

@media (min-width: 768px) {
    .modal-dialog {
        max-height: unset;
        max-height: none;
        margin-top: 30px;
        margin-bottom: 30px;
    }
    /*Important is needed since brf has js code that added an inline max-height in the modal-content*/
    .modal .modal-body:not(.allViewScroll) {
        max-height: unset !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .modal.show .modal-dialog.modal-dialog-fullscreen {
        top: 0;
        transform: none;
    }

    .modal-tooltip .modal-dialog {
        overflow: visible;
    }
}


/*Overriding modal style since tooltip needs to be flow outside the modal*/
.modal-tooltip .modal-dialog .modal-content {
    border-radius: 10px
}

.modal-tooltip .modal-dialog .modal-header {
    border-radius: 10px 10px 0 0
}

/*modal override*/

/* mobile only */
@media (max-width: 767.98px) {
    .btn-smaller-xs {
        padding: 7px 35px !important;
        line-height: 17px;
    }

    .hero-banner img, .hero-banner-10 .image-banner {
        max-width: 375px;
    }

    .hero-banner-2 .banner-image, .hero-banner-5 .banner-image {
        height: 220px;
        min-height: 220px;
    }

    .hero-banner-2 img, .hero-banner-5 img {
        height: 100%;
    }

    .hero-banner-4 img {
        height: 180px;
    }


    .position-r-5-xs {
        left: auto;
        transform: none;
        right: 5px;
    }
}

/* tablet and larger */
@media (min-width: 768px) {
    .btn-small-sm-up {
        padding: 7px 28px !important;
        line-height: 18px;
    }
}

/* END helper classes used by header and/or footer only */


/**/
.sticky-element.scrollTrue {
    padding-bottom: 17px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .sticky-element.scrollTrue {
        padding-bottom: 8px;
    }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .sticky-element.scrollTrue {
        padding-bottom: 17px;
    }
}

@-moz-document url-prefix() {
    .sticky-element.scrollTrue {
        padding-bottom: 17px;
    }
}

@supports (-ms-ime-align:auto) {
    .sticky-element.scrollTrue {
        padding-bottom: 17px;
    }
}

/* Custom for Modal */
.page-code_fibetv-packages.modal-open {
    overflow-y: auto;
}

/* Custom Tooltip */
.page-code_prsshp-as-relevant-features-ios a.link-tooltip span.link-tooltip {
    display: none;
}

.page-code_prsshp-as-relevant-features-ios a.link-tooltip:focus span.link-tooltip, .page-code_prsshp-as-relevant-features-ios a.link-tooltip:hover span.link-tooltip {
    display: block;
    position: absolute;
    margin-top: 5px;
    color: #626562;
    background-color: #ffffe7;
    font-family: Helvetica,Arial,sans-serif;
    font-size: 12px;
    z-index: 24;
    padding: 2px 5px 2px 5px;
    white-space: pre;
    line-height: 18px;
    border: 1px solid #626562;
    font-weight: normal;
}
/**/
