/* ============================================================
   Night Out! Dental Stain Concealer — React page styles.
   1:1 copy of the inline <style> block from
   single-product-stain-concealer.php (v1) so the React variant
   uses the exact same classes, plus the [members_logos]
   shortcode CSS (the shortcode is rendered by React here).
   Shared classes (product-selection-box, background-graphic,
   the-process-*, btn-*, etc.) come from the global stylesheets
   loaded by header.php on every page.
   ============================================================ */

/* WCAG 2.2 - Ensure focused elements are not obscured by sticky header */
html {
  scroll-padding-top: 130px;
}

:target {
  scroll-margin-top: 130px;
}

/* Ensure all focusable elements have proper scroll margin */
*:focus {
  scroll-margin-top: 130px;
}

/* Enhanced focus visibility for keyboard navigation */
a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus,
[tabindex]:focus {
  scroll-margin-top: 130px;
  outline-offset: 2px;
}

/* Ensure focus outline is visible even when overlapping */
*:focus-visible {
  scroll-margin-top: 130px;
  outline: 2px solid #3c98cc;
  outline-offset: 2px;
  position: relative;
  z-index: 1;
}
/* for new price styles */
.price-content{display:flex;justify-content:center;padding:20px 0}
p.percent-off-text{font-size:25px;color:#9e1e82;font-family:'Montserrat';font-weight:300;margin-bottom:0;line-height:33px}
.price-content .real-price{margin-bottom:0;font-size:29px;line-height:30px;font-family:'Open Sans';font-weight:700;color:#2d2e2f;padding-left:5px}
.price-content p.orignal-price{font-size:29px;margin-bottom:0;line-height:29px;color:#2d2e2f;font-family:'Open Sans';font-weight: 700;}
.real-price sup{font-size:12px;color:#565759;font-weight:500;position:relative;top:-10px;font-family:'Montserrat'}
p.cut-off-price{font-size:12px;font-family:'Montserrat';font-weight:500;position:relative;color:#555759;text-align:center;margin-bottom:0}
p.cut-off-price:after{content:'';max-width:48px;height:1px;background-color:#9e1e82;position:absolute;top:8.5px;left:50%;transform:translateX(-50%);width:100%}
.price-content ~ .subscription-tagline{margin-top:-13px;margin-bottom: 15px;}

    .body-stain-concealer .btn-primary-teal,
    .body-stain-concealer #product-selection-night-guards .btn-primary-blue,
    .btn-primary-blue,
    div#wcContent .btn-primary-blue,
    .btn-lg,
    .btn-group-lg>.btn,
    .body-stain-concealer .btn {
        border-radius: 8px;
        text-transform: none;
    }

    .full-width-row {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .column,
    .columns {
        /* -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px; */
        padding-right: .9375rem;
        padding-left: .9375rem;
        min-width: 0;
    }

    @media print,
    screen and (min-width: 64em) {

        .column,
        .columns {
            padding-right: 1.25rem;
            padding-left: 1.25rem;
        }
    }

    div#product-image-section-banner {
        padding-bottom: 35px;
    }

    .body-stain-concealer .section-header-teal {
        font-size: 20px;
    }

    section.loading-content {
        opacity: 0;
        transform: translateY(100px);
        transition: opacity 0.6s ease, transform 0.6s ease;
    }

    section.loading-content.visible {
        opacity: 1;
        transform: translateY(0);
    }

    .row-full {
        width: 100%;
    }

    .body-stain-concealer .logos-container-mbt h2 {
        margin-bottom: 30px;
    }

    #product-image-section-banner {
        background-color: #faf5f4;
    }

    #light-color-with-text-image-section {
        padding-top: 40px !important;
    }

    #product-image-section-banner p {
        color: #3a3a3a;
        line-height: 20px;
        font-size: 14px;
    }

    #product-image-section-banner .plaque-right-column .sbr_wrapper {
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }

    .body-stain-concealer .product-selection-price-wrap {
        border-radius: 8px;
    }

    .section-purple-logoes {
        background-color: #432F7C;
        margin-top: 35px;
    }

    .body-stain-concealer .text-description-body-parent .sbr_column-inner,
    .body-stain-concealer .before-after-image-wrapper .sbr_column-inner {
        display: flex;
        align-items: center;
        min-height: 100%;


    }

    .opposite-purple-sec .purple-is-the-opposite-of-yellow-inner-content>.sbr_column-inner {
        padding: 3rem;
        border: 2px solid #ddddde;
        margin-top: 5rem;
        text-align: center;

    }

    .section-warranty {
        text-align: center;
        border-top: 1px solid #555759;
        margin-top: 3rem;
    }

    .warrabty-text-container {
        max-width: 74%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;

    }

    .the-process-container-mbt {
        padding-top: 60px;
    }

    .the-process-container-mbt .heading-content-mbt {
        margin-bottom: 80px;
    }

    .order-the-system-cnt {
        text-align: center;
        margin-top: 20px;
    }

    .body-stain-concealer .product-plaque-highlighters-adults-contianer h5 {
        font-size: 24px;
        margin-bottom: 34px;
    }

    div#sbrthb-image {
        margin-top: 50px;
        margin-bottom: 25px;
    }

    div#the-adult-process-image-2 {
        text-align: center;
    }

    .year-wrannanty-container {
        padding-bottom: 70px;
    }

    .body-stain-concealer .product-section .btn {
        min-width: 100%;
        font-size: 18px;
        font-weight: 300;
        letter-spacing: 0;
    }

    .body-stain-concealer div#light-color-with-text-image-section {
        background: rgb(103, 45, 145);
        background: linear-gradient(180deg, rgba(103, 45, 145, 1) 0%, rgba(174, 102, 142, 1) 35%, rgba(226, 143, 139, 1) 100%) !important;
    }

    .section-our-members {

        margin-left: auto;
        margin-right: auto;
    }

    .body-stain-concealer .product-selection-box {
        border-radius: 8px;
    }

    .product-selection-price-wrap button {
        margin-top: 15px;
    }
    span.product-selection-price-text del:before{
    right: 0;
    width: 81px;
    margin-left: auto;
    margin-right: 0px;
    left: 0;
    margin-right: auto;
    }
    span.product-selection-price-text del .woocommerce-Price-currencySymbol {
        position: relative;
        left: 4px;
    }
    span.woocommerce-Price-currencySymbol{
        font-size: 16px;
    }
    #product-plaque-highlighters-adults .product-selection-description {
        display: none;
    }


    @media (min-width: 1200px) {
        .product-selection-image-wrap {
            min-height: 233px;
        }
    }

    @media only screen and (max-width: 1300px) {
        .body-stain-concealer h2.product-header-sub {
            font-size: 72px;
        }

        .body-stain-concealer .sectionLeft60 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 56%;
            flex: 0 0 56%;
            max-width: 56%;
        }
    }

    @media only screen and (max-width: 991px) {
        .probiotics-page-top-left {
            display: block;
        }

        .body-stain-concealer .product-plaque-highlighters-adults-contianer h5 {
            font-size: 18px;
        }

        .product-selection-price-text {
            font-size: 2rem;
        }

        .fa-dollar.product-selection-price-dollar-symbol {
            font-size: 18px;
        }

        .body-stain-concealer .purple-is-the-opposite-of-yellow-inner-content h2,
        .body-stain-concealer .the-process-container-mbt .heading-content-mbt h2 {
            font-size: 30px;
        }

        .body-stain-concealer .description-subheading p {
            font-size: 18px;
        }

        .opposite-purple-sec .purple-is-the-opposite-of-yellow-inner-content>.sbr_column-inner {
            padding: 2rem;
        }

        .body-stain-concealer .the-process-title {
            font-size: 22px;
        }

        .warrabty-text-container {
            max-width: 100%;
        }
    }

    @media only screen and (max-width: 767px) {
        .body-stain-concealer .sectionLeft60 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
        }

        .body-stain-concealer .logos-container-mbt h2 {

            font-size: 34px;
        }
        span.product-selection-price-text del:before{
            top: 21px;
        }


    }

    @media only screen and (max-device-width: 932px) and (orientation: landscape) {

        .product-selection-image-wrap img {
            max-width: 180px;
        }

        .product-selection-image-wrap {
            min-height: 158px;
        }
    }



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




    .row.max_width.plaque-page-product-section {
        padding-left: 0;
        padding-right: 0;
    }


    .plaque-left-column.probiotics-page-top-left.sectionLeft60.columns.medium-6.small-12 {
        display: flex;
        align-items: center;
    }
    .body-stain-concealer .logos-container-mbt h2{
        font-size: 28px;
    }

    .body-stain-concealer .plaque-right-column h2.product-header-sub {
        margin-top: 0rem;
            margin-top: 0 !important;
    }

     .body-stain-concealer p {
        font-size: 18px;
    }
    .opposite-purple-sec div#sbrthb-image {
        margin-top: 20px;
        margin-bottom: 20px;
        max-width: 50%;
        margin-left: auto;
        margin-right: auto;
    }
    .sbr_raw_code button,.order-the-system-cntt button
    , .body-stain-concealer .btn
     {
        max-width: 300px;        width: 100%;
        min-width:inherit;
    }
    .opposite-purple-sec .purple-is-the-opposite-of-yellow-inner-content>.sbr_column-inner{
        margin-top: 3rem;
            border: 0px solid #ddddde;
    }
    .body-stain-concealer .the-process-container-mbt .heading-content-mbt h2

    {
            margin-bottom: 30px;
    }
 }


@media only screen
  and (min-width: 768px)
  and (max-width: 1024px)
  and (orientation: portrait),

only screen
  and (device-width: 744px)
  and (device-height: 1133px)
  and (orientation: portrait) {

    .sbr_wrapper button {
        width: 100%;
        min-width: inherit !important;
    }
    .body-stain-concealer .row.pageSectionSecond{
            padding: 0;
    }
    .body-stain-concealer ul.background-graphic li{
        line-height: 1.3;
        padding-left: 72px;
            min-height: 60px;    font-size: 22px;
    }

    .body-stain-concealer .product-plaque-highlighters-adults-contianer h5 {
        margin-bottom: 10px;
    }

    .product-selection-image-wrap {
        min-height: 185px;
    }
    .price-content{
        padding-top:0;
    }
    .body-stain-concealer .sectionHeading{
        font-size: 6rem;
    }

       div#product-image-section-banner {
        padding-top: 35px;
    }
    .with-color-science-technology-description{
        margin-bottom: 1rem;
    }


    .sbr_raw_code button, .order-the-system-cntt button, .body-stain-concealer .btn {
        max-width: 300px;
        }


  }

/* ============================================================
   [members_logos] shortcode CSS (inc/shortcodes-logos.php) —
   the shortcode is rendered by React on this page, so its
   inline <style> block is carried over here verbatim.
   ============================================================ */
.section-our-members {
  padding: 35px 0;
position: relative;
  z-index: 1;
  max-height: 110px;
  overflow: hidden;
}
.section-our-members .logo{text-align: center;}

.section-our-members .logo:not(.cnt-logo) img{ max-height: 38px;margin-left: auto;margin-right: auto;}

.section-our-members  .client-logos img{
    max-height: 67px;
}
.section-our-members .logo.cnt-logo img{
    max-height: 67px;
    margin-left: auto;
    margin-right: auto;
}
.slick-slide {
    margin: 0 15px;
  }


  .slick-list {
    margin: 0 -15px;
  }
