:root {
    /* Grid Item Counts */
    --grid-items-shop-products: 3;
}

/* Header Bar */

.header-bar .shop-submenus {
    align-items: stretch !important;
    height: 100%;
}

.header-bar .shop-submenus .line {
    border-left: 2px dotted #fff;
    opacity: .35;
    height: calc(100% - 24px);
    margin: auto;
}

.header-bar .shop-submenus > div {
    white-space: nowrap;
}

.header-bar .shop-submenus.is-loading > div {
    opacity: .24;
    pointer-events: none;
    user-select: none;
}

.header-bar .shop-submenus > div i,
.header-bar .phone i {
    color: #fff !important;
}

.header-bar .shop-submenus > div i.faded {
    margin-left: 12px;
    color: #fff;
}

.header-bar .shop-submenus > div a.mainlink.white,
.header-bar .shop-submenus > div span.mainlink-mask.white {
    color: inherit !important;
    user-select: none;
}

.header-bar [data-id="nav_basket_count_mnbav652"] small {
    display: inline;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

/* Search Autocomplete Box */

nav.header .aigm-shop-autocomplete {
    width: 100%;
    position: absolute;
    top: calc(var(--content-height) - 8px);
    left: 0;
    background: rgb(255 255 255 / 98%);
    border-radius: 0 0 8px 8px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    z-index: -1;
    overflow: hidden;
}

nav.header .aigm-shop-autocomplete .results {
    margin-top: 8px;
    padding: 16px 0;
    overflow: auto;
    max-height: 400px;
    max-height: min(400px, calc(100vh - var(--header-bar-height) - (var(--header-height) - (var(--content-height) / 2))));   
}

nav.header .aigm-shop-autocomplete .result {
    display: block;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: var(--para-line-height);
    cursor: pointer;
    text-decoration: none;
    color: #6B789B;
    padding: 8px 24px;
    font-family: "Open Sans", sans-serif;
}

nav.header .aigm-shop-autocomplete .result:hover {
    background: rgb(44 172 227 / 18%);
    color: #2CACE3;
    text-decoration: underline;
    text-underline-offset: 0px;
    text-underline-position: under;
    text-decoration-thickness: 1px;
}

nav.header .aigm-shop-autocomplete svg.spinning-loader-svg {
    display: block;
    width: 24px;
    height: 24px;
    margin: calc(8px + 16px) auto 16px auto;
}

nav.header .aigm-shop-autocomplete p {
    padding: 8px 16px;
    display: block;
    text-align: center;
    color: #BE8787;
    margin: 0 24px;
    background: #F8EAEA;
    border-radius: 8px;
    line-height: var(--para-line-height);
    font-family: "Open Sans", sans-serif;
}

/* Kits Overview (List) */

section.shopkitoverview1 img.bg {
    object-position: top;
    opacity: .46;
}

/* Public Shop Home */

section.shophome1 img.bg {
    object-position: top;
    opacity: .28;
}

section.shophome1 .title p {
    max-width: 700px;
    margin: 0 auto;
}

section.shophome2 .title strong {
    max-width: 820px;
    margin: 0 auto;
}

section.shophome2 .title p {
    max-width: 1200px;
    margin: 0 auto;
}

/* Shop Title Icon */

.shop-title-icon {
    margin-bottom: 24px;
}

.shop-title-icon svg {
    display: block;
    width: 64px;
    height: 64px;
    margin: 0 auto;
}

/* Product Cards */

.maincard--shopproduct {
    cursor: pointer;
    display: block;
    width: calc((100% - (var(--grid-items-shop-products) - 1) * var(--gap)) / var(--grid-items-shop-products));
    filter: drop-shadow(4px 8px 30px rgba(0, 0, 0, 0.15));
    background: #fff;
    text-decoration: none;
}

.maincard--shopproduct:hover {
    outline: var(--main-blue-outline-thick);
    outline-offset: 2px;
}

.maincard--shopproduct .middle {
    padding: 32px;
    height: 320px;
    background: #f1f5ff;
    display: flex;
}

.maincard--shopproduct img.product-pic {
    width: auto;
    max-width: 100%;
    max-height: 100%;
    pointer-events: none;
    user-select: none;
    margin: auto;
    border-radius: 8px;
}

.maincard--shopproduct .product-variations-label {
    position: absolute;
    display: block;
    right: 16px;
    bottom: 16px;
    padding: 8px 16px;
    line-height: 1;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    color: #fff;
    background: #3db455;
    font-size: 18px;
    border-radius: 500px;
    letter-spacing: -0.6px;
    box-shadow: 0 0 16px rgb(0 0 0 / 22%);
    border: 1px solid #0f8026;
}

.maincard--shopproduct .bottom {
    padding: 24px;
}

.maincard--shopproduct strong.product-name {
    display: block;
    color: #213567;
    font-size: 1.14rem;
    line-height: var(--para-line-height);
}

.maincard--shopproduct span.product-price {
    display: block;
    color: #213567;
    font-weight: 500;
    font-size: 1.084rem;
    line-height: var(--para-font-size);
    margin: 12px 0 0 0;
}

.maincard--shopproduct span.product-price small {
    color: #848EA7;
    display: inline;
}

.maincard--shopproduct .find-out-more {
    position: absolute;
    z-index: 1;
    top: 24px;
    left: 24px;
    display: flex;
    align-items: center;
    pointer-events: none;
    background: #fff;
    border-radius: 500px;
}

.maincard--shopproduct .find-out-more i {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: #213567;
    width: calc(32px + 16px);
    height: calc(32px + 16px);
    border-radius: 50%;
}

.maincard--shopproduct .find-out-more span {
    display: block;
    line-height: 1;
    padding: 0 24px 0 16px;
    position: absolute;
    opacity: 0;
    color: #213567;
    font-weight: 500;
}

.maincard--shopproduct:hover .find-out-more i {
    background: #213567;
    color: #fff;
}

.maincard--shopproduct:hover .find-out-more span {
    position: relative;
    opacity: 1;
}

.maincard--shopproduct .unavailable {
    display: block;
    font-size: 1.34rem;
    background: rgb(23 37 72 / 62%);
    line-height: 1;
    padding: 16px 24px;
    border-radius: 8px;
    z-index: 5;
    color: #fff;
    box-shadow: 0px 4px 8px rgb(0 0 0 / 45%);
    backdrop-filter: blur(10px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}

.maincard--shopproduct .bottom .buttons {
    margin-top: 24px;
    --gap: 16px;
}

/* Kit Cards */

.maincard--shopkit {
    background: #213567;
    width: 100%;
    box-shadow: 4px 8px 30px 10px rgba(0, 0, 0, 0.15);
}

.maincard--shopkit:hover {
    outline: var(--main-blue-outline-thick);
    outline-offset: 2px;
}

.maincard--shopkit .sides {
    --gap: 0px;
    overflow: hidden;
}

.maincard--shopkit .sides .side.info {
    padding: 32px;
    --width: 55%;
}

.maincard--shopkit a.package-name {
    --normal: #fff !important;
    --hover: #fff !important;
    font-size: 2.02rem;
    font-weight: 600;
    line-height: 1.38;
    margin-bottom: 16px;
    display: block;
}

.maincard--shopkit .line {
    height: 4px;
    background: #fff;
    margin: 24px 0 32px 0;
    display: none; /* temp? */
}

/*.maincard--shopkit img.full-pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .64;
    pointer-events: none;
    user-select: none;
}*/

.maincard--shopkit img.full-pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    opacity: .64;
    pointer-events: none;
    user-select: none;
    background: #fff;
}

.maincard--shopkit .sides .side.pic {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 16px;
    gap: 16px;
    --width: 45%;
}

.maincard--shopkit .sides .side.pic .buttons {
    --gap: 16px;
}

.maincard--shopkit .label,
.aigm-shop-label {
    --size: 24px;
    --bg: linear-gradient(45deg, #0b66c9, #29abe2);
    --text: #fff;

    background: var(--bg);
    clip-path: polygon(0 0, 100% 0, calc(100% - var(--size)) 50%, 100% 100%, 0 100%);
    margin-left: -32px;
    margin-bottom: 16px;
    line-height: 1;
    font-size: 1rem;
    font-weight: 500;
    color: var(--text);
    display: flex;
    align-items: stretch;
    z-index: 2;
    filter: drop-shadow(0 0 8px rgba(0, 0, 0, .25));
    height: calc(var(--size) * 2);
}

.label[data-label-type="Bronze Package"] { --bg: #DAC2A6; --text: #2D437D; }
.label[data-label-type="Silver Package"] { --bg: #DAD9D9; --text: #2D437D; }
.label[data-label-type="Gold Package"] { --bg: #E7DEB0; --text: #2D437D; }
.label[data-label-type="Platinum Package"] { --bg: linear-gradient(263deg, #DCDCDC 33.52%, #F1F1F1 50.47%, #D2D2D2 78.13%); --text: #2D437D; }
.label[data-label-type="Titanium Package"] { --bg: linear-gradient(263deg, #EBE7DD 33.52%, #FDFCF7 50.47%, #E7E4DC 78.13%); --text: #2D437D; }
.label[data-label-type="Upgrade Package"] { --bg: #5CA45A; --text: #fff; }

.maincard--shopkit .label span,
.aigm-shop-label span {
    padding: 0 calc(var(--size) * 2) 0 var(--size);
    display: flex;
    align-items: center;
}

.maincard--shopkit.stock-unavailable img.full-pic {
    filter: grayscale(1) opacity(.6);
}

.maincard--shopkit .side.pic .unavailable {
    display: block;
    font-size: 1.54rem;
    background: rgb(23 37 72 / 62%);
    line-height: 1;
    margin: auto;
    padding: 20px 32px;
    border-radius: 8px;
    z-index: 5;
    color: #fff;
    box-shadow: 0px 4px 8px rgb(0 0 0 / 45%);
    backdrop-filter: blur(10px);
    white-space: nowrap;
}

.maincard--shopkit .package-price {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 16px;
}

.maincard--shopkit .package-price::before,
.maincard--shopkit .package-price::after {
    content: "";
    flex: 1;
    height: 2px;
    background: #fff;
}

.maincard--shopkit .package-price::after {
    display: none;
}

.maincard--shopkit .package-price span {
    font-weight: 500;
    font-size: 1.34rem;
    color: #fff;
    display: block;
    flex-shrink: 0;
}

.maincard--shopkit .package-price small {
    color: #97A2BF;
    display: inline;
}

.maincard--shopkit .buttons-mobile-only,
.maincard--shopkit .label-mobile-only {
    display: none;
}

.maincard--shopkit .button.mini-view-package {
    font-size: .92rem !important;
    padding: 12px 24px !important;
    margin-top: 24px !important;
}

/* Brand Favicon (Small Icon) */

.maincard--shopkit img.brand-small-icon,
.maincard--shopproduct img.brand-small-icon {
    position: absolute;
    width: 32px;
    height: 32px;
    top: 16px;
    right: 16px;
    border-radius: 4px;
    z-index: 2;
}

/* Popup Info Summary Box */

.aigm-shop-popup-summary {
    padding: 32px;
    color: #213567;
}

.aigm-shop-popup-summary h2 {

}

.aigm-shop-popup-summary .aigm-rich-text {
    font-family: "Open Sans", sans-serif;
    font-size: var(--para-font-size);
    line-height: var(--para-line-height);
}

/* Sort Bars */

.shop-sort-bar {
    padding: 24px;
    background: #eaf2f6;
    display: flex;
    gap: 24px;
    justify-content: center;
    flex-wrap: wrap;
    border-radius: 16px;
    margin: -16px auto 0 auto;
}

.shop-sort-bar.no-margin { margin-top: 0; margin-bottom: 0; }

.shop-sort-bar .aigm-form-input {
    width: auto;
    max-width: 100%;
}

/* Shop Summary Box */

.shop-summary-box {
    box-shadow: 4px 8px 30px 10px rgba(0, 0, 0, 0.15);
    background: #fff;
}

.shop-summary-box .sides {
    --gap: 0px;
    --align: stretch;
}

.shop-summary-box .side.pics {
    display: flex;
    flex-direction: column;
    background: #c7c7c7;
}

.shop-summary-box .side.pics .bottom-bar {
    padding: 32px;
    background: rgb(255 255 255 / 12%);
    backdrop-filter: blur(20px);
}

.shop-summary-box .side.pics .bottom-bar .buttons {
    --gap: 24px;
}

.shop-summary-box .side.pics .bottom-bar .button {
    padding: 16px 24px;
}

.shop-summary-box .side.pics .blur-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    user-select: none;
}

.shop-summary-box .side.pics .blur-bg img.blur {
    filter: blur(10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .8;
}

.shop-summary-box .side.pics .sticky-image {
    flex: 1;
    padding: 32px;
}

.shop-summary-box .side.pics .sticky-image .picture {
    position: sticky;
    width: 100%;
    top: calc(32px + var(--header-height) + var(--header-bar-height));
    background: #fff; /*#213567;*/
    border-radius: 16px;
    box-shadow: 0px 8px 8px rgb(0 0 0 / 32%);
    overflow: hidden;
}

.shop-summary-box .side.pics .sticky-image .picture img {
    width: 100%;
    max-width: none;
    pointer-events: none;
    user-select: none;
}

.shop-summary-box .side.pics .sticky-image .picture video {
    width: 100%;
}

.shop-summary-box.stock-unavailable .side.pics .sticky-image .picture img,
.shop-summary-box.stock-unavailable .side.pics .sticky-image .picture video {
    filter: grayscale(1) opacity(.6);
}

.shop-summary-box .side.pics .sticky-image .picture .example {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    line-height: 1;
    font-size: 1rem;
    font-weight: 600;
    background: linear-gradient(45deg, #2a427f, #18235e);
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid rgb(255 255 255 / 21%);
    box-shadow: 0 0px 4px black;
    color: #bae7ff;
    font-family: 'Open Sans';
    letter-spacing: 0.25px;
    cursor: default;
    user-select: none;
}

.shop-summary-box.stock-unavailable .side.pics .sticky-image .picture .example {
    display: none;
}

.shop-summary-box .side.pics .unavailable {
    display: block;
    font-size: 1.54rem;
    background: rgb(23 37 72 / 62%);
    line-height: 1;
    padding: 20px 32px;
    border-radius: 8px;
    z-index: 5;
    color: #fff;
    box-shadow: 0px 4px 8px rgb(0 0 0 / 45%);
    backdrop-filter: blur(10px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}

.shop-summary-box .side.pics .unavailable-bar {
    text-align: center;
    padding: 8px;
    line-height: var(--para-line-height);
    border-radius: 8px;
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 5;
    width: calc(100% - 32px);
    color: #BE8787;
    background: #F8EAEA;
}

.shop-summary-box .top-area {
    background: #213567;
    padding: 32px 0 0 0;
}

.shop-summary-box .top-area .label {
    margin: 0 0 24px 0;
}

.shop-summary-box .top-area strong.top-name {
    display: block;
    width: 100%;
    padding: 0 32px;
    font-size: 1.78rem;
    line-height: var(--para-line-height);
    margin-bottom: 24px;
}

.shop-summary-box .content-area {
    padding: 32px;
}

.shop-summary-box .testimonial {
    background: #F0F5FA;
    color: #213567;
    padding: 32px;
    margin-top: 32px;
}

.shop-summary-box .testimonial i {
    position: absolute;
    top: 32px;
    right: 32px;
    color: #2CACE3;
}

.shop-summary-box .testimonial strong {
    font-size: 1.2rem;
    line-height: var(--para-line-height);
    margin-bottom: 8px;
    display: block;
}

.shop-summary-box .testimonial p {
    font-family: "Open Sans", sans-serif;
    line-height: var(--para-line-height);
}

.shop-summary-box .main-desc {
    color: #213567;
    line-height: var(--para-line-height);
    font-family: "Open Sans", sans-serif;
    font-size: var(--para-font-size);
}

.shop-summary-box .main-desc .aigm-form-label {
    font-weight: 600;
    font-size: inherit;
}

.shop-summary-box .product-variation-labels {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: start;
    align-items: start;
    line-height: var(--para-line-height);
    font-size: .928rem;
    font-weight: 500;
}

.shop-summary-box .product-variation-labels a {
    display: block;
    text-decoration: none;
    background: #F4F7FB;
    border: 1px solid #DEE3EA;
    border-radius: 4px;
    padding: 8px 16px;
    color: #5F71A0;
}

.shop-summary-box .product-variation-labels a:hover {
    background: #eef5ff;
    border-color: #a0c7ff;
}

.shop-summary-box .product-variation-labels a.current {
    background: #d9ecff;
    border-color: #2CACE3;
    color: #2cabe3;
}

.shop-summary-box [data-config-options] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 32px;
    padding-top: 32px;
    border-top: 1px dashed #b0b0b0;
}

.shop-summary-box .content-area .price {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 32px;
}

.shop-summary-box .content-area .price::before,
.shop-summary-box .content-area .price::after {
    content: "";
    flex: 1;
    height: 2px;
    background: #CCD8E4;
}

.shop-summary-box .content-area .price::after {
    display: none;
}

.shop-summary-box .content-area .price span {
    font-weight: 600;
    font-size: 1.34rem;
    color: #213567;
    display: block;
}

.shop-summary-box .content-area .price small {
    color: #90AFCE;
    display: inline;
    font-weight: 500;
}

.shop-summary-box .shoptabs {
    --bg-normal: #2B427C;
    --bg-hover: #385293;
    --bg-active: #fff;
    --text-active: #213567;
    justify-content: start;
    padding: 0 32px;
    --line: linear-gradient(88deg, #2CACE3 3.42%, #0456C3 100.06%);
    gap: 16px;
}

.shop-summary-box .shoptabs [data-tab] {
    border-radius: 0;
    padding: 16px 32px;
}

.shop-summary-box .shoptabs [data-tab]::after {
    height: 4px;
}

.shop-summary-box .content-area .buttons-mobile-only {
    display: none;
}

.shop-summary-box .content-area .buttons-mobile-only .button {
    padding: 16px 24px;
    text-align: left;
}

.shop-summary-box .content-area .buttons-mobile-only .button span {
    padding: 0;
}

/* Basket Page */

section.shopbasket2 .shop-sort-bar [data-aigm-filter="basket.current"] {
    max-width: 360px;
}

section.shopbasket2 .basket-items {

}

section.shopbasket2 .basket-items .maincards {
    flex-direction: column;
    --gap: 0px;
}

section.shopbasket2 .basket-item {
    width: 100%;
    padding: 32px;
    border: 1px solid #C2C2C2;
    border-bottom-width: 0;
    display: flex;
    align-items: start;
    gap: 32px;
    background: #fdfdfd;
    overflow: hidden;
}

section.shopbasket2 .basket-item:first-of-type {
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}

section.shopbasket2 .basket-item:last-of-type {
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
    border-bottom-width: 1px;
}

section.shopbasket2 .basket-item .image {
    display: block;
    width: 174px;
    height: 174px;
    flex-shrink: 0;
    overflow: hidden;
    background: #f1f5ff;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
}

section.shopbasket2 .basket-item .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    user-select: none;
    object-fit: contain;
    pointer-events: none;
}

section.shopbasket2 .basket-item .info {
    flex: 1;
}

section.shopbasket2 .basket-item .info .item-name {
    font-weight: 600;
    font-size: 1.28rem;
    line-height: var(--para-line-height);
    --normal: #213567;
}

section.shopbasket2 .basket-item .info .item-desc {
    margin: 8px 0 0 0;
    color: #213567;
    line-height: var(--para-line-height);
    font-family: var(--font-open-sans);
}

section.shopbasket2 .basket-item .info .item-labels {
    display: flex;
    justify-content: start;
    align-items: start;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 16px;
}

section.shopbasket2 .basket-item .info .item-labels span {
    color: #989DAA;
    display: block;
    line-height: 1;
    padding: 12px 16px 12px calc(16px + 8px + 4px + 8px);
    background: linear-gradient(45deg, #e8e8e8, #fefefe);
    font-weight: 600;
    border-radius: 8px;
    border: 1px solid rgb(0 0 0 / 10%);
    font-family: var(--font-open-sans);
    font-size: .94rem;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
}

section.shopbasket2 .basket-item .info .item-labels span::before {
    display: block;
    width: 8px;
    height: 8px;
    position: absolute;
    top: 50%;
    left: 16px;
    background: #fff;
    content: "";
    border-radius: 50%;
    transform: translateY(-50%);
    border: 1px solid rgb(0 0 0 / 20%);
}

section.shopbasket2 .basket-item .info .item-labels span[data-type="Package"] {
    background: linear-gradient(45deg, #35428a, #1989d6);
    color: #fff;
}

section.shopbasket2 .basket-item .info .item-labels span[data-type="Product"] {
    background: linear-gradient(45deg, #358a42, #19b7d6);
    color: #fff;
}

section.shopbasket2 .basket-item .info .item-labels span.expires {
    background: linear-gradient(45deg, orange, #ff8250);
    color: #fff;
}

section.shopbasket2 .basket-item .info .item-labels span.expires.expired {
    background: linear-gradient(45deg, #ff5555, #e13535);
    color: #fff;
    cursor: help;
}

section.shopbasket2 .basket-item .price {
    flex-shrink: 0;
    font-size: 1.2rem;
}

section.shopbasket2 .basket-item .price p strong {
    color: #213567;
}

section.shopbasket2 .basket-item .price p span {
    color: #989DAA;
}

section.shopbasket2 .basket-item .remove {
    display: flex;
    width: 56px;
    height: 56px;
    justify-content: center;
    align-items: center;
    background: #C3DAE3;
    color: #789EAC;
    position: absolute;
    bottom: 0;
    right: 0;
    cursor: pointer;
}

section.shopbasket2 .basket-item .remove i {
    font-size: 22px;
}

section.shopbasket2 .basket-item .remove:hover {
    background: #ea0000;
    color: #fff;
}

section.shopbasket2 .basket-item.removing {
    opacity: .2;
    pointer-events: none;
    user-select: none;
}

section.shopbasket2 .basket-items .empty-basket {
    padding: 48px;
    background: #fff;
    text-align: center;
    font-family: "Open Sans", sans-serif;
    max-width: 960px;
    margin: 0 auto;
}

section.shopbasket2 .basket-items .empty-basket img {
    width: 100%;
    margin: 0 auto;
    max-width: 280px;
}

section.shopbasket2 .basket-items .empty-basket strong {
    display: block;
    font-size: 1.4rem;
    color: #213567;
    margin-top: 24px;
}

section.shopbasket2 .basket-items .empty-basket p {
    display: block;
    color: #D1D1D1;
    font-weight: 500;
    font-size: var(--para-font-size);
}

section.shopbasket2 .basket-items .empty-basket .button {
    margin: 24px auto 0 auto;
}

section.shopbasket2 hr {
    margin: 48px 0;
    height: 2px;
    background: #213567;
}

section.shopbasket2 .basket-totals {
    --gap: 32px;
    color: #213567;
    --align: stretch;
}

section.shopbasket2 .basket-totals .labels {

}

section.shopbasket2 .basket-totals .amount {
    text-align: right;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

section.shopbasket2 .basket-totals strong {
    display: block;
    font-size: 2rem;
    line-height: var(--para-line-height);
}

section.shopbasket2 .basket-totals small {
    display: block;
    font-size: var(--para-font-size);
    line-height: var(--para-line-height);
}

section.shopbasket2 .basket-totals .amount strong span {
    font-weight: 400;
    color: #989DAA;
}

section.shopbasket2 small.basket-price-total-disclaimer {
    display: block;
    text-align: right;
    color: #526187;
    font-size: var(--para-font-size);
    line-height: var(--para-line-height);
}

/* Checkout Button Variant */

.aigm-ux .button.checkout {
    --bg: linear-gradient(45deg, #ff842a, #ff9a39);
    --bg-hover: linear-gradient(45deg, #ff9b52, #ffb56f);
    font-weight: 600;
    outline: 2px solid rgb(186 186 186 / 14%);
    outline-offset: 4px;
}

.aigm-ux .button.checkout.large {
    outline-width: 4px;
    font-size: 1.2rem;
}

/* FOC Accept Banner */

.foc-accept-banner {
    background: #fff;
    padding: 32px;
    text-align: center;
    width: 960px;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 24px;
    color: #213567;
    box-shadow: 0px 8px 16px 0px rgb(0 0 0 / 6%);
    border: 1px solid #d3d3d3;
}

.foc-accept-banner svg {
    display: block;
    width: 86px;
    height: 86px;
    margin: 0 auto 12px auto;
    fill: #29abe2;
}

.foc-accept-banner h3 {
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.38;
    margin: 0 0 8px 0;
}

.foc-accept-banner p {
    font-size: var(--para-font-size);
    line-height: var(--para-line-height);
    font-family: var(--font-open-sans);
}

.foc-accept-banner .button {
    margin: 24px auto 0 auto;
}

/* FOC Paid Options Banner */

.foc-paid-options-banner {
    margin-bottom: 32px;
}

/* Checkout Page */

.shopcheckout1 [data-aigm-order-animation-box] {
    transition: opacity 1s ease;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    width: 0;
    height: 0;
}

.shopcheckout1 [data-aigm-order-animation-box].shown {
    opacity: 1;
    pointer-events: auto;
    position: relative;
    width: auto;
    height: auto;
}

.shopcheckout1 [data-aigm-order-animation-box] .title {
    
}

.shopcheckout1 [data-aigm-order-animation-box] .title strong {
    color: #213567;
}

.shopcheckout1 [data-aigm-order-animation-box] .title p {
    color: #526187;
}

.shopcheckout1 [data-aigm-order-animation-box] img {
    max-width: 540px;
    margin: 32px auto 0 auto;
    width: 100%;
    pointer-events: none;
    user-select: none;
}

.shopcheckout1 [data-aigm-order-animation-box] .animation {
    display: block;
    max-width: 360px;
    margin: 32px auto 0 auto;
}

/* Basket Menu - Header */

.aigm-basket-menu-list {
    position: absolute;
    top: var(--header-bar-height);
    z-index: 9999;
    background: #fff;
    display: none !important;
    width: 420px;
    /*transform: translateX(-50%);
    left: 50%;*/
    right: calc(0px - 12px);
    max-width: 80vw;
    max-height: calc(100vh - var(--header-bar-height));
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
    box-shadow: 0 16px 16px rgb(0 0 0 / 21%);
    overflow: hidden;
    flex-direction: column;
    gap: 0 !important;
}

.aigm-basket-menu-list .scrolling-items {
    width: 100%;
    max-height: 320px;
    overflow: auto;
    padding: 16px 0;
    flex-direction: column;
    gap: 16px !important;
}

.aigm-basket-menu-list .scrolling-items .item {
    width: 100%;
    padding: 0 16px;
    gap: 16px;
}

.aigm-basket-menu-list .scrolling-items .item .info {
    display: block;
    flex: 1;
    /*line-height: var(--para-line-height);*/
    overflow: hidden;
}

.aigm-basket-menu-list .scrolling-items .item img {
    width: 64px;
    height: 64px;
    object-fit: contain;
    object-position: center;
    background: #f1f5ff;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    user-select: none;
    pointer-events: none;
}

.aigm-basket-menu-list .scrolling-items .item a.item-name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block;
    font-size: .92rem;
    --normal: #213567;
    --hover: #496abf;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
}

.aigm-basket-menu-list .scrolling-items .item p {
    color: #6B789B;
    display: block;
    font-weight: 500;
}

.aigm-basket-menu-list .scrolling-items .line {
    display: block;
    width: calc(100% - 32px);
    height: 2px;
    background: #CFD7DF;
    flex-shrink: 0;
    margin: 0 16px;
}

.aigm-basket-menu-list .scrolling-items .item .remove-item,
.aigm-shop-remove-mainlink-red {
    --normal: #ff6666 !important;
    --hover: #f10000 !important;
}

.aigm-basket-menu-list .bottom {
    border-top: 1px solid #CFD7DF;
    padding: 16px;
    justify-content: center;
    width: 100%;
    display: block !important;
}

.aigm-basket-menu-list .bottom .button {
    padding: 12px 16px;
    width: 100%;
}

.aigm-basket-menu-list .bottom a.continue-to-checkout {
    display: block;
    margin: 12px auto 0 auto;
    font-size: .86rem;
    line-height: var(--para-line-height);
}

.header-bar .shop-submenus [data-toggle-basket="shown"] {
    overflow: visible !important;
}

.header-bar .shop-submenus [data-hover-basket]:hover .aigm-basket-menu-list,
.header-bar .shop-submenus [data-hover-basket] .aigm-basket-menu-list:hover,
.header-bar .shop-submenus [data-toggle-basket="shown"] .aigm-basket-menu-list {
    display: flex !important;
}

.header-bar .shop-submenus [data-toggle-basket="shown"] i.faded::before {
    transform: rotate(180deg);
}

.header-bar .shop-submenus i.faded::before {
    display: block;
    transition: transform .2s ease;
    transform-origin: center;
}

.aigm-basket-menu-list .empty-basket {
    display: block !important;
    text-align: center;
    margin: 16px 16px;
    width: calc(100% - 32px);
}

.aigm-basket-menu-list .empty-basket img {
    width: 100%;
    margin: 0 auto;
    max-width: 164px;
}

.aigm-basket-menu-list .empty-basket strong {
    display: block;
    font-size: 1rem;
    color: #213567;
    margin-top: 16px;
}

.aigm-basket-menu-list .empty-basket p {
    display: block;
    color: #D1D1D1;
    font-weight: 500;
    font-size: .92rem;
}

/* User Dropdown - Header */

.aigm-basket-menu-list.aigm-user-menu-list {
    right: 0;
}

.aigm-user-menu-list {
    
}

.aigm-user-menu-list .hello {
    border-bottom: 1px solid #CFD7DF;
    padding: 24px;
    width: 100%;
    display: block !important;
    white-space: normal;
}

.aigm-user-menu-list .hello strong {
    font-family: 'Poppins', sans-serif;
    font-size: 1.12rem;
    color: #213567;
    line-height: var(--para-line-height);
    display: block;
}

.aigm-user-menu-list .hello p {
    display: block;
    line-height: var(--para-line-height);
    font-weight: normal;
    color: #526187;
    font-size: .92rem;
}

.aigm-user-menu-list .links {
    flex-direction: column;
    gap: 0px !important;
    width: 100%;
    text-align: left;
    align-items: start !important;
    padding: 16px 0;
}

.aigm-user-menu-list .links .link {
    display: flex;
    padding: 8px 24px;
    text-decoration: none;
    color: #213567;
    align-items: center;
    gap: 16px;
    font-size: .92rem;
    cursor: pointer;
    width: 100%;
}

.aigm-user-menu-list .links .link:hover,
.aigm-user-menu-list .links .link:focus {
    background: #eaf2f6;
}

.aigm-user-menu-list .links .link:hover span,
.aigm-user-menu-list .links .link:focus span {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-decoration-style: solid;
    text-underline-offset: 2px;
    text-underline-position: under;
    text-decoration-skip-ink: none;
}

.aigm-user-menu-list .links .link i {
    font-size: 16px;
    color: #213567 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgb(0 0 0 / 6%);
    border-radius: 4px;
}

.aigm-user-menu-list .links .link span {
    flex: 1;
    display: block;
}

.aigm-user-menu-list .links .link span small {
    display: inline-block;
    line-height: 1;
    font-size: 14px;
    vertical-align: text-bottom;
    margin-left: 12px;
    background: linear-gradient(-12deg, #2cace3, #5268dd);
    padding: 6px 8px;
    border-radius: 4px;
    color: #fff;
    font-family: 'Poppins', sans-serif;
}

/* Shop Select Boxes */

.aigm-shop-select-boxes {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
}

.aigm-shop-select-boxes .box {
    flex: 1;
    background: #eaf2f6;
    --padding: 24px;
    padding: calc(32px + var(--padding)) var(--padding) var(--padding) var(--padding);
    border-radius: 24px;
    cursor: pointer;
    user-select: none;
    border: 1px solid #ccc;
    line-height: var(--para-line-height);
    overflow: hidden;
}

.aigm-shop-select-boxes .box:hover {
    outline: var(--main-blue-outline-thick);
    outline-offset: 2px;
    outline-color: #ace0fa;
    z-index: 2;
}

.aigm-shop-select-boxes .box.selected {
    outline: var(--main-blue-outline-thick);
    outline-offset: 2px;
    z-index: 1;
}

.aigm-shop-select-boxes .box.disabled {
    opacity: .42;
    pointer-events: none;
    user-select: none;
}

.aigm-shop-select-boxes .box small {
    position: absolute;
    line-height: 1;
    height: 32px;
    background: #29abe2;
    width: 100%;
    color: #fff;
    font-weight: 600;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.aigm-shop-select-boxes .box i {
    display: block;
    color: #8b9abf;
    font-size: 42px;
    line-height: 1;
    margin-bottom: 16px;
    margin-top: 8px;
}

.aigm-shop-select-boxes .box strong {
    font-size: 1.14rem;
    color: #8b9abf;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
    text-underline-position: under;
    text-decoration-color: #ccc;
}

.aigm-shop-select-boxes .box p {
    color: #8b9abf;
    margin-top: 8px;
    font-size: .98rem;
}

.aigm-shop-select-boxes .box.warning {
    
}

.aigm-shop-select-boxes .box.warning small {
    background: #ff9b3b;
}

.aigm-shop-select-boxes.radio-style {
    flex-direction: column;
    gap: 0px;
}

.aigm-shop-select-boxes.radio-style .box {
    width: 100%;
    flex: unset;
    padding: 0;
    border-radius: 0;
    text-align: left;
    border-top-width: 0;
}

.aigm-shop-select-boxes.radio-style .box:not(.object--hidden):first-of-type {
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    border-top-width: 1px;
}

.aigm-shop-select-boxes.radio-style :nth-last-child(1 of .box:not(.object--hidden)) {
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.aigm-shop-select-boxes.radio-style .box .radio {
    --border: #8b9abf;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border: 2px solid var(--border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.aigm-shop-select-boxes.radio-style .box.selected .radio {
    --border: #1e8fd8;
}

.aigm-shop-select-boxes.radio-style .box.selected .radio::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Pro";
    line-height: 1;
    font-size: 16px;
    font-weight: 900;
    color: var(--border);
}

.aigm-shop-select-boxes.radio-style .box .content {
    flex: 1;
    padding: 0;
}

.aigm-shop-select-boxes.radio-style .box i {
    font-size: 32px;
    margin: 0;
}

.aigm-shop-select-boxes.radio-style .box strong {
    font-size: 1rem;
    text-decoration: none;
}

.aigm-shop-select-boxes.radio-style .box p {
    margin: 0;
}

.aigm-shop-select-boxes.radio-style .box .top-area {
    width: 100%;
    flex: unset;
    padding: 16px 24px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    text-align: left;
    flex-wrap: wrap;
}

.aigm-shop-select-boxes.radio-style .box .expanded-area {
    display: none;
    background: #fff;
    width: 100%;
    padding: 24px;
}

.aigm-shop-select-boxes.radio-style .box.selected .expanded-area {
    display: block;
    user-select: auto;
    pointer-events: all;
    cursor: default;
}

/* Express Checkout Buttons (Desktop + Mobile) */

.button.is-express-checkout {
    --bg: linear-gradient(88deg, #1ecc47 3.42%, #0ea253 100.06%) !important;
    --bg-hover: linear-gradient(88deg, #1ecf48 3.42%, #20cf72 100.06%) !important;
}

.button.is-express-checkout[data-is-express-desktop] i {
    border-right: 0 !important;
    line-height: var(--para-line-height);
    padding: 0 !important;
    font-size: 1rem !important;
    transform: scale(1.14);
    display: flex !important;
}

.button.is-express-checkout[data-is-express-mobile] {
    --bg: #000 !important;
    --bg-hover: #333 !important;
    display: none !important;
}

.button.is-express-checkout[data-is-express-mobile] i {
    padding: 0;
    border-right: 0;
    margin-right: 16px;
    font-size: inherit;
    transform: scale(1.34);
    display: flex !important;
}

.button.is-express-checkout.ajax-loading i {
    opacity: 0;
}

/* Basket Coupon Code Block */

.basket-coupon-code-block-option span {
    padding: 12px 20px;
    background: #eaf2f6;
    display: inline-block;
}

.basket-coupon-code-block {
    max-width: 460px;
    border-radius: 0;
    background: #eaf2f6;
    display: flex;
    align-items: stretch;
    gap: 24px;
    padding: 24px;
    margin: 0 auto;
}

.basket-coupon-code-block input {
    flex: 1;
}

.basket-coupon-code-block .button {
    flex-shrink: 0;
    height: auto;
    padding: 0 24px !important;
    white-space: nowrap;
    width: auto;
}

/* Shop Terms Scroller */

.shop-terms-scroller {
    max-height: 420px;
    overflow: auto;
    padding: 32px;
    scrollbar-color: #878787 transparent;
    background: #F0F5FA;
    border-top: 1px solid #E3E9F0;
    border-bottom: 1px solid #E3E9F0;
}

.shop-terms-scroller [data-post-content] {

}

/* Shop Payment Methods Promo Popup */

.aigm-iframe-overlay-box.shop-payment-methods-promo .title-bar {
    background: none;
}

.aigm-iframe-overlay-box.shop-payment-methods-promo img.payment-methods-image {
    width: 100%;
    cursor: pointer;
    user-select: none;
}

.aigm-iframe-overlay-box.shop-payment-methods-promo .scrolling-content {
    margin-top: -64px;
}

.aigm-iframe-overlay-box.shop-payment-methods-promo .middle-box {
    max-width: min(820px, calc(100% - 48px)) !important;
    max-height: min(100%, calc(100% - 48px)) !important;
}

@media only screen and (max-width: 768px) {
    .aigm-iframe-overlay-box.shop-payment-methods-promo img.payment-methods-image {
        
    }

    .aigm-iframe-overlay-box.shop-payment-methods-promo .scrolling-content {
        margin-top: -48px;
    }
}

/* Extra */

.aigm-iframe-overlay-box.shop-feedback-form .middle-box {
    max-height: min(640px, calc(100% - 48px));
}

.aigm-iframe-overlay-box.shop-magazine-notice strong.mag-confirm-title {
    font-size: 1.846rem !important;
}

.aigm-ux .to-top.is-live-chat-mode {
    bottom: calc(64px + 16px);
    right: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    padding: 14px;
    width: 54px;
    height: 54px;
}

html.aigm-ux .maincard--shopkit .button, 
html.aigm-ux .maincard--shopproduct button {
    padding: 16px 24px;
}

[data-payment-buttons-dynamic] .paypal-buttons-context-iframe {
    display: block !important;
    width: 400px !important;
    margin: 0 auto !important;
    max-width: 100% !important;
    transition: none !important;
    min-height: 54px !important;
    height: 54px !important;
}

[data-payment-buttons-dynamic] #paypal-buttons-container-x89ajHBA1 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

[data-payment-buttons-dynamic] #google-pay-button-container-xcfRT4AF,
[data-payment-buttons-dynamic] #apple-pay-button-container-nbva5rfa {
    width: 320px;
    max-width: 100%;
    margin: 0 auto;
}

.aigm-shop-debug-footer {
    padding: 24px 0;
    background: #e3e300;
    color: #262626;
    text-align: center;
    font-size: .9rem;
}

.aigm-shop-debug-footer .container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.aigm-shop-debug-footer a {
    background: #00000017;
    padding: 4px 10px;
    border-radius: 8px;
    color: inherit;
    font-weight: 500;
}

.aigm-shop-debug-footer a.main {
    background: #2099db;
    color: #fff;
}

/* Express Checkout Page Variant */

section.shopcheckout1 .express-checkout-notice {
    padding: 24px;
    border-bottom: 1px solid #E3E9F0;
}

section.shopcheckout1 span.express-checkout-return-step {
    display: block;
    margin-bottom: 16px;
    font-weight: 600;
    font-family: var(--font-open-sans);
}

section.shopcheckout1 .mobile-express-payment-option :is(
    .section-title,
    .aigm-shop-select-boxes,
    [data-select-payment-method-area] > .break
) {
    display: none !important;
}

/* Pay Via Invoice Banner */

.pay-via-invoice-available-banner {
    line-height: var(--para-line-height);
    font-size: 17.24px;
    color: #84878e;
    display: flex;
    gap: 16px;
    justify-content: start;
    text-align: left;
    padding: 16px;
    align-items: center;
    background: linear-gradient(45deg, #f7f7f7, #ffffff);
}

.pay-via-invoice-available-banner span.label {
    display: block;
    line-height: 1;
    padding: 8px 12px;
    background: #ff9b3b;
    color: #fff;
    font-weight: 500;
    font-size: 14.64px;
    flex-shrink: 0;
}

.pay-via-invoice-available-banner p.text {
    display: block;
    flex: 1;
    font-family: var(--font-open-sans);
}

/* Print Rules */
@media print {
    
}

/* Small Laptop: 1024px */
@media only screen and (max-width: 1024px) {
    :root {
        --grid-items-shop-products: 2;
    }

    .shop-sort-bar {
        padding: 0;
        border-radius: 0;
        background: none;
    }

    .maincard--shopkit .sides {
        --gap: 0px !important;
        flex-direction: column-reverse;
    }
    .maincard--shopkit .buttons-mobile-only,
    .maincard--shopkit .label-mobile-only {
        display: block;
    }
    .maincard--shopkit .sides .side.pic {
        padding: 0;
        gap: 0px;
        background: #f7f7f7;
    }
    .maincard--shopkit .sides .side.pic .buttons,
    .maincard--shopkit .sides .side.info .label {
        display: none;
    }
    .maincard--shopkit img.full-pic {
        position: relative;
        aspect-ratio: 16 / 9;
        opacity: 1;
        max-width: 520px;
        margin: 0 auto;
    }
    .maincard--shopkit .side.pic .unavailable {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .maincard--shopkit .sides .side.pic .label {
        margin: 0;
        position: absolute;
        top: 32px;
    }
    .maincard--shopkit .buttons-mobile-only .buttons {
        margin-top: 16px;
        justify-content: center !important;
    }
    .maincard--shopkit .buttons-mobile-only .buttons .button {
        width: calc(50% - (var(--gap) / 2));
        flex-grow: 1;
    }
    .maincard--shopkit .package-price::after {
        display: block;
    }
    .maincard--shopkit .package-price span {
        text-align: center;
    }
    .maincard--shopkit img.brand-small-icon {
        top: calc(0px - (16px + 32px));
    }
    .maincard--shopkit .button.mini-view-package {
        display: none;
    }

    .maincard--shopproduct .bottom {
        text-align: center;
    }
    .maincard--shopproduct .bottom .buttons {
        margin-top: 16px;
    }

    .shop-summary-box .content-area .price::after {
        display: block;
    }
    .shop-summary-box .content-area .price span {
        text-align: center;
    }
    .shop-summary-box .top-area strong.top-name {
        text-align: center;
    }
    .shop-summary-box .top-area .label {
        margin-top: -16px;
        clip-path: polygon(0 0, 100% 0, calc(100% - var(--size)) 50%, 100% 100%, 0 100%, 0 100%, calc(0% + var(--size)) 50%);
        text-align: center;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 16px;
    }
    .shop-summary-box .top-area .label span {
        padding: 0 calc(var(--size) * 2);
    }
    .shop-summary-box .main-desc {
        text-align: center;
    }
    .shop-summary-box .main-desc .aigm-form-label {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center;
    }
    .shop-summary-box .product-variation-labels {
        justify-content: center;
    }
    .shop-summary-box .shoptabs {
        gap: 32px;
        flex-direction: row;
    }
    .shop-summary-box .shoptabs [data-tab] {
        width: calc(50% - 16px);
    }
    .shop-summary-box .sides {
        --gap: 0px !important;
    }
    .shop-summary-box .content-area .buttons-mobile-only {
        display: flex;
        margin-top: 32px;
        flex-direction: column-reverse;
        gap: 16px;
    }
    .shop-summary-box .testimonial {
        text-align: center;
        padding: 24px;
    }
    .shop-summary-box .testimonial i {
        position: relative;
        top: unset;
        right: unset;
        margin-bottom: 12px;
    }
    .shop-summary-box .side.pics .bottom-bar,
    .shop-summary-box .side.pics .blur-bg {
        display: none;
    }
    .shop-summary-box .side.pics .sticky-image {
        padding: 0;
    }
    .shop-summary-box .side.pics .sticky-image .picture {
        position: relative;
        top: unset;
        border-radius: 0;
        box-shadow: none;
        background: #f7f7f7;
    }
    .shop-summary-box .side.pics .sticky-image .picture img {
        aspect-ratio: 16 / 9;
        max-width: 520px;
        margin: 0 auto;
        object-fit: contain;
    }
    .shop-summary-box .main-desc .mainlist li {
        text-align: center;
        justify-content: center;
    }
    .shop-summary-box .main-desc .mainlist li::before {
        display: none;
    }

    .maincard--shopkit .buttons-mobile-only .button.is-express-checkout[data-is-express-desktop],
    .maincard--shopproduct .button.is-express-checkout[data-is-express-desktop] {
        display: none;
    }

    .shop-summary-box .content-area .buttons-mobile-only .button.is-express-checkout[data-is-express-desktop] {
        display: none !important;
    }

    .shop-summary-box .content-area .buttons-mobile-only .button.is-express-checkout[data-is-express-mobile]:not(.object--hidden) {
        display: flex !important;
    }

    section.shopbasket2 .basket-totals {
        --gap: 12px;
        text-align: center;
        margin-top: 32px;
    }
    section.shopbasket2 .basket-totals .amount {
        justify-content: center;
        margin-bottom: -8px;
    }
    section.shopbasket2 .basket-totals .amount strong {
        font-size: 1.48rem;
    }
    section.shopbasket2 hr {
        display: none;
    }
    section.shopbasket2 .basket-item {
        flex-direction: column;
        text-align: center;
        align-items: center;
        gap: 16px;
        padding: 24px;
    }
    section.shopbasket2 .basket-item .image {
        width: 128px;
        height: 128px;
    }
    section.shopbasket2 .basket-item .info .item-labels {
        justify-content: center;
    }
    section.shopbasket2 small.basket-price-total-disclaimer {
        margin-top: 16px;
        text-align: center;
    }
    
    .basket-coupon-code-block {
        flex-direction: column;
    }
    .basket-coupon-code-block .button {
        padding: 16px 48px !important;
    }

    .aigm-basket-menu-list {
        position: fixed;
        right: var(--container-padding) !important;
        left: unset;
        max-width: calc(100vw - (var(--container-padding) * 2));
    }

    .header-bar .phone {
        /*min-width: 104px;*/
    }
    .header-bar .shop-submenus {
        align-items: center !important;
    }
    .header-bar .shop-submenus .line {
        display: none;
    }
    .header-bar .shop-submenus .basket {
        
    }
    html.aigm-ux .header-bar .shop-submenus > div .mainlink.white,
    html.aigm-ux .header-bar .shop-submenus > div .mainlink-mask.white {
        text-decoration: none !important;
        -webkit-tap-highlight-color: transparent;
    }
    .header-bar .shop-submenus .basket [data-id="nav_basket_count_mnbav652"] {

    }
    .header-bar .shop-submenus > div[data-toggle-basket="shown"] {
        background: rgb(151 193 231 / 46%);
    }
    .header-bar .shop-submenus > div {
        background: rgb(217 217 217 / 20%);
        border: 1px solid rgb(255 255 255 / 15%);
        border-radius: 6px;
        padding: 0 8px;
        font-size: 14px;
    }
    .header-bar .shop-submenus > div > span {
        align-self: stretch;
        padding: 4px 0;
    }
    .header-bar .shop-submenus > div i.faded {
        color: #fff;
        border-left: 1px solid rgb(255 255 255 / 15%);
        padding-left: 8px;
        align-self: stretch;
    }
    .aigm-basket-menu-list .scrolling-items .item img {
        border-radius: 4px;
        width: 56px;
        height: 56px;
    }

    /* Pay Via Invoice Banner */

    .pay-via-invoice-available-banner {
        text-align: center;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }
}

/* Tablet: 768px */
@media only screen and (max-width: 768px) {
    .maincard--shopkit .buttons-mobile-only .buttons .button {
        width: 100%;
    }

    nav.header:not(.mobile-search-open) .aigm-shop-autocomplete {
        display: none;
    }
    html.aigm-ux .header-bar .shop-submenus > div {
        gap: 8px;
    }
    html.aigm-ux .header-bar .shop-submenus > div .mainlink.white,
    html.aigm-ux .header-bar .shop-submenus > div .mainlink-mask.white {
        font-size: 0;
    }
    .header-bar .shop-submenus > div small,
    .header-bar .shop-submenus > div i.faded {
        font-size: 14px;
    }
    .header-bar .shop-submenus .basket [data-id="nav_basket_count_mnbav652"] small::before { content: "\0028"; }
    .header-bar .shop-submenus .basket [data-id="nav_basket_count_mnbav652"] small::after { content: "\0029"; }
}

/* Extra Shop Breakpoint: 692px */
@media only screen and (max-width: 692px) {
    :root {
        --grid-items-shop-products: 1;
    }

    .shop-summary-box .shoptabs {
        gap: 0px;
    }
    .shop-summary-box .shoptabs [data-tab] {
        width: 50%;
    }
    .aigm-shop-select-boxes {
        flex-direction: column;
        gap: 24px;
    }
    .aigm-shop-select-boxes .box {
        width: 100%;
        --padding: 16px;
    }
    .aigm-shop-select-boxes .box i {
        font-size: 28px;
    }
    .shop-terms-scroller {
        padding: 24px;
    }

    .maincard--shopproduct .middle {
        height: 260px;
    }

    .maincard--shopkit img.full-pic {
        max-width: 100%;
        height: 260px;
        width: auto;
    }
}

/* Mobile: 425px */
@media only screen and (max-width: 425px) {
    .shop-summary-box .top-area {
        padding-bottom: 32px;
    }
    .shop-summary-box .shoptabs {
        gap: 16px;
    }
    .shop-summary-box .shoptabs [data-tab] {
        width: 100%;
    }
}

/* Sales Team Mode */

.aigm-shop-test-mode.is-staff-mode {
    background: #e886e8;
    color: #681768;
}