.product-page-wrapper {
    max-width: 1440px;
    margin: 0 auto;
}

.product-content-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(350px, 1fr);
    column-gap: 72px;
    align-items: start;
}

.product-image-background {
    grid-column: 1;
    grid-row: 1;
}

.product-content {
    grid-column: 1;
    grid-row: 2;
}

.scroll-content {
    grid-column: 2;
    grid-row: 1 / 3; 
    position: sticky;
    top: 20px;
}

@media (max-width: 768px) {

    .product-content-wrapper {
        display: flex;
        flex-direction: column;
    }

    .product-image-background {
        order: 1;
    }

    .scroll-content {
        order: 2;
        position: static;
    }

    .product-content {
        order: 3;
    }

}


/*

.product-content-wrapper {
        
} 

@media (min-width: 747px) {
      
    .product-content-wrapper {
        display: flex;
        gap: 72px;
        padding-bottom: 72px;
    }

    .product-content {
        width: 65%;
    }

    .scroll-content {
        width: 35%;
    }

    .scroll-wrapper {
      position: -webkit-sticky;
      position: sticky;
      top: 0;
    }

}

*/

@media (min-width: 767px) {

    .scroll-wrapper {
        transition: padding-top 250ms ease;
    }

    .scroll-wrapper.is-sticky {
        padding-top: 120px;
    }

    .product-page-footer {
        margin-bottom: 120px;
    }

}




.content-loading {
    animation: contentLoading 2.3s infinite cubic-bezier(0.4, 0, 0.2, 1);
    text-indent: -9999px;
    overflow: hidden;
}

@keyframes contentLoading {
  0% {
    background-color: #EBEBEB;
  }
  50% {
    background-color: #e0e0e0; /* mid-point color */
  }
  100% {
    background-color: #EBEBEB;
  }
}

.content-loading.product-title {
    height: 54px;
    max-width: 530px;
    width: 100%;
    border-radius: 8px;
    margin-bottom: 12px;
}

.content-loading.headline {
    height: 36px;
    max-width: 530px;
    width: 100%;
    border-radius: 8px;
    margin-bottom: 12px;
}

.content-loading.text {
    height: 24px;
    max-width: 830px;
    width: 100%;
    border-radius: 6px;
    margin-bottom: 12px !important;
    margin-top: 0px !important;
}

.scroll-card {
    min-height: 350px;
}


.product-scroll-card .scroll-card-content {
    box-shadow: 0 6px 20px rgba(0,0,0,0.2);
    border-radius: 12px;
    padding: 48px 36px 36px;
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .product-scroll-card {
        border-bottom: 1px solid #dee2e6;
        border-radius: 0px;
        margin-bottom: 48px;
        padding-bottom: 24px;
    }
    .product-scroll-card .scroll-card-content  {
        box-shadow: none;
        padding: 0px;


    }
}

.scroll-card.content-loading {
    border-radius: 8px;
}

.card-section {
    margin-bottom: 24px;
}

.product-sku-wrapper {
    font-size: 12px;
}

.product-sku-wrapper .value {
    background: #222;
    color: #fff;
    border-radius: 2px;
    padding: 4px 8px;
    display: inline-flex;
}

.product-content-section {
    margin-bottom: 12px;
}

.product-content-section.section-gutter {
    padding: 24px 0px;
}


.product-content-btn {
    background: #fff;
    display: flex;
    justify-content: space-between;
    width: 100%;
    font-size: 27px;
    font-weight: 500;
    padding: 36px 0px;
    color: #222;
}

.product-content-btn:hover {
    background: #fff;
    cursor: pointer;
}

.product-content-btn:hover .label {
    text-decoration: underline;
}

.product-content-btn .icon {
    font-size: 44px;
}

.product-rrp-wrapper {
    color: #515151;
    font-weight: 400;
    font-size: 15px;
    margin-bottom: 12px;
}

.product-price {
    font-size: 36px;
    font-weight: 500;
    color: #222;
    line-height: 1;
    margin-bottom: 4px;
}

.price-explainer {
    font-size: 15px;
    color: #515151;
    margin-bottom: 24px;
}

.card-info-text {
    font-size: 15px;
    color: #515151;
    margin-bottom: 4px;
    font-weight: 300;
}

.card-info-text.edit {
    display: inline-flex;
    gap: 6px;
    border-bottom: 1px dotted;
}

.card-info-text.edit:hover {
    cursor: pointer;
}


.card-section-label {
    font-size: 15px;
    color: #222;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}


.option-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #eeeeee;
    margin-bottom: 12px;
    padding-bottom: 24px;
}

.option-item .label-wrapper {
    font-size: 16px;
    font-weight: 500;
    color: #222;
}

.option-item .option-label {
    font-weight: 500;
    margin-bottom: 8px;
}

.option-item .option-value {
    font-weight: 300;
}

.option-item  .icon {
    font-size: 36px;
}

.options-wrapper {
    margin-top: 24px;
    margin-bottom: 24px;
}

.option-item:hover {
    cursor: pointer;
}

.option-item:hover .option-label {
    text-decoration: underline;
}

.product-content-title {
    font-size: 22px;
    color: #222;
    font-weight: 500;
    margin-bottom: 24px;
}

.product-subsidy-wrapper {
    display: flex;
    gap: 12px;
    align-items: center;
    /* border: 1px solid #222; */
    border-radius: 12px;
    margin-bottom: 24px;
    padding: 24px 24px;
    justify-content: space-between;
    width: 100%;
    color: #222;
    box-shadow: 0 6px 20px rgba(0,0,0,0.2);
}

.product-subsidy-text {
    display: flex;
    gap: 12px;
    align-items: center;
}

.selling-points-wrapper .selling-card {
    color: #222;
    display: flex;
    gap: 24px;
    margin-bottom: 24px;
}

.selling-card .label {
    font-weight: 500;
    font-size: 14px;
}

.selling-card .desc {
    font-weight: 300;
    font-size: 14px;
    color: #6a6a6a;
}


.recommendation-product-wrapper {
    display: flex;
    position: relative;
    border-bottom: 1px solid #dee2e6 !important;
    margin-bottom: 24px;
    padding-bottom: 12px;
    align-items: center;
}

.recommendation-product-wrapper .title {
    font-size: 18px;
    font-weight: 500;
    color: #222;
}

.recommendation-product-wrapper .price {
    font-size: 16px;
    font-weight: 300;
    color: #222;
}

.recommendation-item-image {
    min-width: 250px;
    min-height: 150px;
}

.products-modal-layout{
    width: 100%;
    max-width: 780px;
    margin: 0 auto;
}

.attribute-modal-layout,
.address-modal-layout {
    width: 100%;
    max-width: 568px;
    margin: 0 auto;
}

.insurance-modal-layout {
    width: 100%;
    max-width: 868px;
    margin: 0 auto;
}

.product-image-background {
    background: #f7f7f7;
    padding: 12px;
    border-radius: 12px;
    margin-bottom: 48px;
}

.featured-product-image {
    min-height: 550px;
    max-height: calc(60vh - 64px);
    height: 100%;
    position: relative;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
}

@media (max-width: 768px) {
    .product-image-background {
        width: 100%;
    }
    .featured-product-image {
        min-height: 350px;
    }
}

.subscription-image-background {
    border-radius: 12px;
    margin-bottom: 48px;
    width: 100%;
}



.product-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}

.product-image.cover {
    object-fit: cover;
}

.subscription-image-background .product-image  {
    object-fit: cover;
}

.product-page-banner {
     -ms-grid-rows: 1fr 8fr;
    -ms-grid-columns: 1fr 8fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 8fr;
    grid-column-gap: 24px;
    grid-template-rows: 1fr;
    padding: 12px 24px;
    border-radius: 12px;
}

.tp-banner {
    -ms-grid-rows: 2fr 5fr 2fr 2fr;
    -ms-grid-columns: 2fr 5fr 2fr 2fr;
    grid-template-columns: 2fr 5fr 2fr 2fr;
    grid-column-gap: 24px;
    background: #EDF5E6;
}

.product-page-banner .banner-icon span {
    font-size: 60px;
    color: #222;
    margin-bottom: 0px;
}

.banner-text-wrapper {
    display: flex;
    align-items: center;
}


.product-page-banner .headline {
    color: #222;
    font-size: 24px;
    margin-bottom: 0px;
    font-weight: 600;
    line-height: 1.23;
}

.product-page-banner .desc {
    color: #222;
    font-size: 16px;
    margin-bottom: 0px;
}


@media (max-width: 768px) {
    .product-page-banner {
        grid-column-gap: 12px;
        padding: 12px;
    }
    .product-page-banner .banner-icon span  {
        font-size: 40px;
    }
    .product-page-banner .desc {
        font-size: 14px;
    }
}


.tp-score-wrapper,
.tp-review-count-wrapper {
    color: #222;
    justify-content: center;
    text-align: center;
}

.tp-count {
    font-size: 22px;
    color: #222;
    font-weight: 500;
}

.tp-stars {
    display: flex;
    align-items: center;
    justify-content: center;
}

.tp-text {
    font-size: 12px;
    color: #222;
}

.tp-text span {
    font-size: 14px;
    color: #222;
}

.ss-savings-banner {
    background: #f4f2ec;
}

.attribute-options-wrapper .attribute-label {
    display: flex;
}

.attribute-options-wrapper input:checked + .attribute-item {
    
    /*background: #f2f2f2;
    color: #222;
    font-weight: 500;*/

    filter: drop-shadow(rgba(0, 0, 0, 0.16) 0px 8px 12px);
    background: #fff;
    border: 2px solid #1C01FF;

}

.attribute-options-wrapper  label {
    width: 100%;
}

.attribute-options-wrapper .attribute-item {
    /*
    padding: 36px 24px;
    border-radius: 12px;
    border: 1px solid #222;
    width: 100%;
    color: #222;*/
    background: #f7f7f7;
    border-radius: 12px;
    padding: 36px 24px;
    width: 100%;
    border: 2px solid #f7f7f7;
    color: #222;
}

.attribute-options-wrapper .attribute-item .headline {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 0px;
}


.unavailable-option .attribute-item {
    border: none;
    border-radius: 12px;
    background: #f7f7f7;
}

.unavailable-option .redirect-btn {
    text-decoration: underline;
}

.modal-headline {
    font-size: 26px;
    font-weight: 600;
    color: #222;
    margin-bottom: 12px;
}

.insurance-select-grid {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 1fr 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 12px;
    position: relative;
    margin-bottom: 0px;
}

.insurance-card-content {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 48px 24px;
    height: 100%;
    border: 2px solid #f7f7f7;
}

.insurance-icon {
    color: #222;
    font-size: 26px;
}

.insurance-options input:checked + .insurance-card-content {
    filter: drop-shadow(rgba(0, 0, 0, 0.16) 0px 8px 12px);
    background: #fff;
    border: 2px solid #1C01FF;
}

.insurance-card-content .headline {
    font-size: 21px;
    color: #222;
    font-weight: 400;
    margin-bottom: 6px;
}

.insurance-card-content .desc {
    font-size: 15px;
    line-height: 1.4;
    color: #222;
    font-weight: 400;
    min-height: 150px;
    border-bottom: 1px solid rgba(17, 17, 13, 0.18);
    min-height: 220px;
}


.insurance-card-content .list {
    list-style: none;
    margin: 0px;
}

.insurance-card-content .list li {
    display: flex;
    gap: 12px;
    align-items: start;
    font-size: 15px;
    color: #222;
    margin-bottom: 12px;
    line-height: 1.3;
}

.insurance-card-content .list li .icon {
    font-size: 21px;
}

.salary-information {
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

@media (max-width: 768px) {
    .salary-information {
        display: block;
    }
}

.salary-information .floating-input .suffix {
    padding-left: 0px;
}

.product-calculation {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 24px;
}

.product-calculation .row {
    display: flex;
    justify-content: space-between;
    color: #717171;
    font-weight: 400;
    font-size: 15px;
    margin-left: 0px;
    margin-right: 0px;
}

.product-calculation .row.header {
    color: #222;
    font-weight: 600;
    margin-bottom: 12px;
}

.taxation-warning {
    font-size: 14px;
    line-height: 1.4;
    color: #222;
    border-radius: 12px;
    padding: 24px;
    box-shadow: rgb(176 176 176) 0px 0px 0px 1px inset;
    background: #f7f7f7;
    font-weight: 300;
}

.taxation-wrapper  .customCheckbox {
    gap: 12px;
}

.taxation-wrapper.taxation-warning  .customCheckbox {
    align-items: center;
}

.taxation-alert {
    display: inline-flex;
    gap: 12px;
    margin-bottom: 12px;
    color: #222;
    background: #f7f7f7;
    padding: 8px 24px 8px 12px;
    border-radius: 8px;
}

/* Basket confirmation */

.added-to-basket {
    background: linear-gradient(
        to bottom,
        #ffffff 0%,
        #fcfcfc 35%,
        #f7f7f7 100%
    );
    min-height: calc( 100vh - 80px);
}

@media (max-width: 768px) {
    .added-to-basket {
        min-height: 100vh;
        margin-bottom: 65px;
    }
}

.new-basket-item-wrapper {
    padding: 48px;
    /* background: #f7f7f7; */
    border-radius: 12px;
    margin-bottom: 48px;
    border-bottom: 1px solid rgba(0,0,0,0.06);
}

.new-basket-item-container {
    -ms-grid-rows: 1fr ;
    -ms-grid-columns: 3fr 1fr ;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 4fr 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 16px;
    grid-row-gap: 16px;

}

@media (max-width: 768px) {
    .new-basket-item-container {
        -ms-grid-columns: 1fr ;
        grid-template-columns: 1fr;
    }
    .new-basket-item-wrapper {
        padding: 48px 12px;
    }
    .new-basket-item-wrapper .new-basket-item-text {
        font-size: 18px !important;
    }
}

.new-basket-item-wrapper .item-wrapper {
    display: flex;
    align-items: center;
    gap: 24px;
}

.new-basket-item-wrapper .new-basket-item-text {
    font-size: 24px;
    color: #222;
    line-height: 1.2;
}

.item-image-wrapper {
    position: relative;
    background: #fff;
    height: 100px;
    width: 150px;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 2px, rgba(0, 0, 0, 0.05) 0px 4px 12px;
    border-radius: 8px;
}

.new-basket-item-icon {
    position: absolute;
    top: -12px;
    left: -12px;
    color: green;
    font-size: 32px;
}

/* Recommended products */

.recommended-products-container {
    display: flex;
    gap: 24px;
}

@media (min-width: 767px) {

    .recommended-products-container {
        -ms-grid-rows: 1fr 1fr 1fr ;
        -ms-grid-columns: 1fr 1fr 1fr ;
        display: -ms-grid;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr !important;
        grid-template-rows: 1fr;
        grid-column-gap: 16px;
        grid-row-gap: 16px;
    }

}

.recommended-products-header {
    margin-bottom: 48px;
}

.recommended-products-wrapper {
    padding-bottom: 48px;
}

.recommended-products-wrapper .section-title {
    font-size: 3em;
    color: #222;
    text-align: center;
    margin-bottom: 0px;
}

@media (max-width: 768px) {
    .recommended-products-wrapper .section-title {
        font-size: 2em;
    }
    .recommended-products-wrapper .desc-text {
        font-size: 16px !important;
    }
}

.recommended-products-wrapper .desc-text {
    text-align: center;
    font-size: 19px;
}

.recommended-product-image {
    height: 240px;
    margin-bottom: 12px;
    /* width: 324px; */
}

.recommended-product-title {
    padding: 0px 24px 12px;
    flex-grow: 1;
}

.recommended-product-price {
    padding: 0px 24px;
}

.recommended-product-action {
    padding: 24px;
}

.recommended-product {
    background: #fff;
    border-radius: 12px;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 2px, rgba(0, 0, 0, 0.05) 0px 4px 12px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    overflow: hidden;
}

@media (max-width: 768px) {
    .recommended-product {
        flex: 0 0 80%;
    }

    .recommended-products-container  {
        overflow-x: auto;

        overflow-y: hidden;

        flex-wrap: nowrap;

        gap: 15px;

        /* Makes it feel nicer when swiping */

        scroll-snap-type: x mandatory;

        -webkit-overflow-scrolling: touch;

        /* Hide scrollbar */

        scrollbar-width: none;
    }

}

.recommended-product-title {
    font-weight: 400;
    color: #222;
    font-size: 16px;
}

.recommended-product-price {
    font-weight: 400;
    font-size: 18px;
}

.recommended-product-price-explainer {
    font-size: 15px;
    color: #515151;
    font-weight: 300;
}

.recommended-products-divider {
    border-bottom: 1px solid #dee2e6;
    margin-bottom: 48px;
}


/* Gallery grid */

.product-gallery-grid {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 2fr 1fr !important;
    grid-template-rows: 1fr;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
}

.sub-gallery-images {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr !important;
    grid-template-rows: 1fr;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
}

.gallery-product-image {
    position: relative;
}

.subscription-gallery-background .product-image {
    object-fit: cover;
}

.product-gallery-background {
    background: #f7f7f7;
    padding: 12px;
    border-radius: 12px;
}

.product-gallery-background .gallery-product-image {
    background: #fff;
}

.product-gallery-grid .main-gallery-image {
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    overflow: hidden;
} 

.product-gallery-grid .sub-gallery-images .gallery-product-image:first-child {
    border-top-right-radius: 12px;
    overflow: hidden;
} 

.product-gallery-grid .sub-gallery-images .gallery-product-image:last-child {
    border-bottom-right-radius: 12px;
    overflow: hidden;
} 

/* CUSTOM ADDRESS */

.display-custom-address {
    margin: 0px;
    list-style: none;
}

.display-custom-address li {
    font-size: 16px;
    font-weight: 400;
    color: #222;
}

/* Insurance */

.insurance-wrapper {
    /*display: flex;
    gap: 24px;*/
    display: grid;
    grid-template-columns: 120px auto;
    -ms-grid-rows: 120px auto;
    -ms-grid-columns: 120px auto
    display: -ms-grid;
    display: grid;
    grid-column-gap: 24px;
}

.insurance-bagde {
    background: linear-gradient(
        135deg,
        #1C01FF 0%,
        #4A00FF 45%,
        #7A5FFF 100%
    );
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #fff;
    text-align: center;
}

.insurance-bagde-text {
    font-size: 15px;
    font-weight: 300;
    margin-top: 12px;
    margin-bottom: -19px;
    letter-spacing: 0.6px;
    color: #fff;
}

.insurance-logo {
    width: 100%;
    padding: 0px 12px;
}

.insurance-wrapper .headline {
    font-size: 16px;
    color: #222;
    font-weight: 400;
    margin-bottom: 6px;
}

.insurance-selling-points {
    margin: 0px;
    list-style: none;
}

.insurance-selling-points li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 3px;
    color: #222;
    font-size: 15px;
}


@media (max-width: 768px) {
   .insurance-selling-points li {
        align-items: start;
        margin-bottom: 6px;
    }
    .insurance-selling-points li span:first-child {
        margin-top: 1px;
    }

}

/* Delivery time */
.deliver-time-wrapper,
.shop-information-banner {
    background: #f8f8f8;
    border-radius: 6px;
    color: #222;
    display: flex;
    gap: 12px;
    padding: 10px 12px;
    font-weight: 300;
    font-size: 12px;
    justify-content: center;
    align-items: center;
    line-height: 1;
    margin-bottom: 12px;
}

.shop-information-banner {
    margin-bottom: 0px;
    margin-top: 12px;
}



.delivery-time-indicator span,
.shop-open-indicator span {
    width: 12px;
    height: 12px;
    border-radius: 12px;
    display: block;
}

.delivery-time-indicator span.green,
.shop-open-indicator span.green {
    background-color: rgb(0, 138, 5);
}

.delivery-time-indicator span.yellow,
.shop-open-indicator span.yellow {
    background-color: #ffba09;
}

.delivery-time-indicator span.red,
.shop-open-indicator span.red {
    background-color: rgb(240, 58, 62);
}

/* Price match tag */

.price-match-tag {
    display: inline-flex;
    padding: 4px 12px;
    line-height: 1;
    border-radius: 6px;
    /* background-color: #e7f0fe; */
    background: #d1dbf5;
    color: #222;
    font-size: 16px;
    margin-bottom: 12px;
    justify-content: center;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

.price-match-tag  .icon {
    font-size: 20px;
}

/* Price match card */

.product-card {
    padding: 80px 0px;
    border-radius: 16px;
    display: flex;
    justify-content: center;
    margin-bottom: 48px;
}

.price-match-card {
    -ms-grid-rows: 1fr 1fr;
    -ms-grid-columns: 1fr 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 48px;
    grid-template-rows: 1fr;
    border-bottom: 1px solid #dee2e6 !important;
    border-top: 1px solid #dee2e6 !important;
    border-radius: 0px;
}

@media (max-width: 768px) {
    .price-match-card {
        -ms-grid-rows: 1fr;
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-row-gap: 48px;
    }
}

.price-match-card .outtone-btn {
    display: inline-flex;
}

.product-card .card-title {
    font-size: 44px;
    font-weight: 500;
    color: #222;
    line-height: 1.3;
    margin-bottom: 6px;
}

.card-title.price-match-tag {
    font-size: 44px;
    font-weight: 500;
    color: #222 !important;
}

@media (max-width: 768px) {
    .card-title {
        font-size: 36px !important;
    }
}

.card-title.price-match-tag .icon {
    font-size: 41px;
}

.product-card-text-content {
    max-width: 400px;
    justify-content: center;
}

.product-card .card-text p {
    margin-bottom: 6px;
    color: #222;
    font-weight: 300;
}

/* partner card */

.partner-logo {
    max-width: 250px;
    margin-bottom: 24px;
}

.partner-logo img {
    width: 100%;
}

/** ITM8 */
.partner-11012-card {
    background: linear-gradient(to bottom, rgba(51, 22, 90, 1), rgba(95, 37, 159, 1));
}

.partner-11012-card .card-title,
.partner-11012-card .card-text {
    color: #fff !important;
}

.partner-11012-card .product-card-text-content {
    max-width: 600px;
}

/** MARKIT */
.partner-14984-card {
    background-color: #e11931;
}

.partner-14984-card  .card-title,
.partner-14984-card  .card-text {
    color: #fff !important;
    text-align: center;
}

.partner-14984-card  .partner-logo {
    margin: 0 auto;
    margin-bottom: 24px;
}


/* Support card */

.product-support-card {
    -ms-grid-rows: 1fr 1fr;
    -ms-grid-columns: 1fr 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 48px;
    grid-template-rows: 1fr;
}

@media (max-width: 768px) {
    .product-support-card {
        -ms-grid-rows: 1fr;
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-row-gap: 48px;
    }
}

.support-info-wrapper {
    padding: 24px 48px;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.02), 0px 8px 24px 0px rgba(0, 0, 0, 0.10);
    margin-bottom: 36px;
}

.support-image {
    width: 120px;
    height: 120px;
    border-radius: 100px;
    overflow: hidden;
    margin-bottom: 12px;
}

.support-image img {
    object-fit: cover;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.supporter-label {
    font-size: 24px;
    color: #222;
    font-weight: 500;
    text-align: center;
}

.support-bullet-point {
    color: #222;
    margin-bottom: 12px;
}

@media (max-width: 768px) {

    .support-bullet-points {
        display: flex;
        gap: 24px;
    }

}

/* datasheet */

.product-specifications-wrapper .loader {
    display: flex;
    justify-content: center;
}

.datasheet-title {
    font-size: 44px;
    font-weight: 500;
    color: #222;
    line-height: 1.3;
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .datasheet-title {
        font-size: 36px;
    }
}

.datasheet-section {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 4fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 4fr;
    grid-column-gap: 48px;
    grid-template-rows: 1fr;
    margin-bottom: 48px;
    padding-bottom: 48px;
    border-bottom: 1px solid #dee2e6;
}

@media (max-width: 768px) {
    .datasheet-section {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}

.datasheet-section:last-child {
    border: none;
}

.datasheet-section .group-attr-row {
    gap: 12px;
    margin-bottom: 12px;
}

.datasheet-section .group-attr-name {
    color: #222;
    font-weight: 400;
}

.datasheet-section .group-attr-value {
    font-weight: 300;
    color: #6a6a6a;
    word-break: break-word;
}

.datasheet-alert {
    display: inline-flex;
    gap: 12px;
    margin-bottom: 12px;
    color: #222;
    background: #f7f7f7;
    padding: 8px 24px 8px 12px;
    border-radius: 8px;
    max-width: 700px;
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .datasheet-alert {
        font-size: 15px;
        line-height: 1.3;
    }
}

.classicCollapse .card-header {
    padding: 24px 0px !important;
}

.classicCollapse .card-btn {
    display: flex;
    justify-content: space-between;  
    font-size: 1.125em;
    color: #222;
    font-weight: 400;
} 

.classicCollapse .card-btn:hover {
    cursor: pointer;
}

.classicCollapse  .divder {
    border-bottom: 1px solid #dee2e6 !important;
}

.classicCollapse  .card:last-child .divder{
    border-bottom: none !important;
}

.classicCollapse .content  {
    padding-bottom: 24px;
    padding-right: 48px;
}

.classicCollapse .collapse-text  {
    color: #6c6c6c;
    line-height: 1.4em;
    font-size: 1em;
    white-space: pre-line;
    font-weight: 400;
}

.scroll-card-foot-note {
    font-weight: 300;
    color: #6e6a66;
    font-size: 13px;
    padding: 0px 24px;
    line-height: 1.4;
    text-align: center;
}