/*
 * Natural Script Site global styles
 */

:root {
    /*Text font sizes are only being set on the UI */
    /* Heading 1 */
    --dxp-s-text-heading-extra-large-letter-spacing: -0.04em;
    --dxp-s-text-heading-extra-large-font-weight: 400;
    /* Heading 2 */
    --dxp-s-text-heading-large-letter-spacing: -0.04em;
    --dxp-s-text-heading-large-line-height: 60px;
    --dxp-s-text-heading-large-font-weight: 400;
    /* Heading 3 */
    --dxp-s-text-heading-medium-letter-spacing: -0.02em;
    --dxp-s-text-heading-medium-line-height: 3.125rem;
    /* Heading 4 */
    --dxp-s-text-heading-small-letter-spacing: -0.02em;
    --dxp-s-text-heading-small-font-weight: 300;
    /* Heading 5 */
    --dxp-s-text-heading-extra-small-letter-spacing: -0.02em;
    /* Heading 6 */
    --dxp-s-text-heading-extra-extra-small-letter-spacing: -0.02em;
    /* Paragraph 1 */
    --dxp-s-body-letter-spacing: -0.02em;
    --dxp-s-body-line-height: 1.75rem;
    /* Paragraph 2 */
    --dxp-s-body-small-letter-spacing: -0.02em;
    /* Toast Success */
    --dxp-g-success: #E7F8F2;
    /* Remove focus border from buttons */
    --slds-c-button-color-border-hover: transparent;
    --slds-c-button-color-background-hover: transparent;
    --sds-c-button-shadow-focus: transparent;
    
    /* NS Related List Table */
    --ns-related-list-table-border-color: #DDE0DE;
    
    /* NS Side Rich Text Column Width */
    --ns-side-rich-text-column-width: 480px;
} 

html,
body {
    height: 100%;
}

html {
    background: white;
    scroll-behavior: smooth;
}

body {
    margin: 0;
}

.slds-text-link {
    text-decoration: none;
    -webkit-transition: color 0.1s linear;
    transition: color 0.1s linear;
    color: var(--dxp-s-link-text-color);
}

.slds-text-link:hover {
    text-decoration: underline;
    color: var(--dxp-s-link-text-color-hover);
}

.dxp-text-heading-small,
.dxp-text-heading-xsmall,
.dxp-text-heading-xxsmall,
.dxp-text-body,
.dxp-text-body-small {
    line-height: 28px;
}

.ns-purple-button {
    background-color: #CEADFF;
    color: #062C17;
    border-color: transparent;
}

.ns-purple-button:hover {
    background-color: #B395FF;
}

.ns-footer-links {
    flex-wrap: wrap;    
}

.cb-outputRichText-container.ql-editor ol, .cb-outputRichText-container.ql-editor ul {
    padding-left: 1rem !important;
}

.ns-flexi-grid-2-column-section-gap > .region:first-of-type {
    padding-right: 1.5rem;
}

.ns-flexi-grid-2-column-section-gap > .region:nth-of-type(2) {
    padding-left: 1.5rem;
}

.ns-p-font-weight-500 p,
.ns-h4-font-weight-500 h4 {
    font-weight: 500 !important;    
}

.ns-banner-image-radius-top-bottom-right-no-mobile .dxp-block-image-host {
    border-top-right-radius: 0.375rem; /* 6px */;
    border-bottom-right-radius: 0.375rem; /* 6px */;
}

.ns-banner-image-radius-top-bottom-left-no-mobile .dxp-block-image-host {
    border-top-left-radius: 0.375rem; /* 6px */;
    border-bottom-left-radius: 0.375rem; /* 6px */;
}

.ns-our-commitment-to-giving-back .main-content-container { 
    padding-left: 9rem !important; 
    padding-right: 9rem !important; 
}

/* Start Liquid Herb Brands Desktop */    
.site-logo img {
    max-height: fit-content !important;
}

/*
    Rich Text fields coming from Salesforce SObjectFields have their own Style we should override
*/
/* Start Rich Text SObjectFields style override */
.override-internal-rich-text-field-style * {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: var(--dxp-s-body-font-size) !important;
}

.override-internal-rich-text-field-style strong { 
    font-weight: 500 !important;
}
/* End Rich Text SObjectFields style override */

.liquid-herb-brands-details-body .region-SaaSy {
    position: sticky !important;
    top: 0 !important;
    height: fit-content !important;
    overflow-y: auto !important;
}

/* html editor component is adding scrollbar to the content */
.liquid-herb-brands-details-body .cb-outputRichText-container {
    height: fit-content;
    min-height: 0 !important;
    overflow: visible !important;
    padding-bottom: 0.25rem;
}
/* End Liquid Herb Brands Desktop */

/* Start General Size Section Width */ 
.columns-content {
    max-width: 100% !important;
}
/* End General Size Section Width */ 

.ns-upcoming-webinars-item .dxp-text-heading-xlarge { 
    font-size: 2.25rem; 
    line-height: 1.25; 
}

.ns-brand-tile-short-description p {
    display: -webkit-box !important;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding: 0.5rem 2rem !important;
}

/* RECAPTCHA */ 
.grecaptcha-badge {
    z-index: 99;    
}

/* custom style */
/* Rich Text */
.cb-outputRichText-container strong {
    font-weight: 500 !important; /* 500 as figma is too strong */
}

.liquid-herb-brands .dxp-block-image-host {
    background-color: #FFFFFF;
    border-radius: 16px;
    border: 1px solid #F0E6D1;
    background-size: 62% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.ns-preview-case-study > div {
    display: flex;
}

.dxp-grid-item:nth-child(2n) .ns-preview-case-study > div {
    flex-direction: row-reverse !important;
}

.case-studies .dxp-text-heading-xlarge { 
    font-size: 2.25rem !important;
    font-weight: 100 !important;
}

.case-studies .dxp-block-image-host {
    border-radius: 0.375rem !important;
}

.ns-box-white-top-green {
    border-top: 11px solid #00D17A;
    border-radius: 6px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* Start Contact */
.ns-region-saasy-sticky-column > .region-SaaSy {
    position: sticky !important;
    top: 0 !important;
    height: fit-content !important;
    overflow-y: auto !important;
}

/* html editor component is adding scrollbar to the content */
.ns-region-saasy-sticky-column > .cb-outputRichText-container {
    height: fit-content;
    min-height: 0 !important;
    overflow: visible !important;
    padding-bottom: 0.25rem;
}

/* Start Pricing */
.ns-box-white-top-green .cb-outputRichText-container {
    white-space: unset;
    line-height: 0.75 !important;
}

.ns-box-white-top-green .dxp-text-heading-xlarge {
    line-height: 1;
}

.included-with-ns .component-wrapper-spacer {
    margin: 0 !important;
}

.included-with-ns .region-Astro {
    background: #025B4B;
    color: white !important;
    padding: 1.125rem 0;
}

.included-with-ns-header .region-Astro {
    border-top-left-radius: 1rem !important;
    border-top-right-radius: 1rem !important;
    padding: 1rem 0 2rem 0 !important;   
}

.included-with-ns-row .slds-grid, .included-with-ns-header .slds-grid {
    border-bottom: 1px solid #C0ECDC;
}

.included-with-ns-row .dxp-text-body {
    font-weight: 500 !important;
}

.ns-white-box-container {
    background: white;
    border-radius: 6px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    color: rgb(7,44, 23) !important;
}

.ns-white-box-container h1 {
    line-height: 1;
}

.ns-white-box-container .component-wrapper-spacer {
    margin: 0 !important;
}

.pricing-product-comparison hr {
    margin: 0.5rem 0 0.5rem 0 !important;
}

.pricing-product-comparison .slds-rich-text-editor__output td {
    padding: 0 !important;
}

.pricing-product-comparison .slds-rich-text-editor__textarea img {
    margin: 0 !important;
}

.pricing-product-comparison hr {
    border-color: #0A4826;
}

/* End Pricing */

/* Start Custom Branded Labels */
.custom-labels-review {
    max-height: 27.75rem !important;
}

.custom-labels-review .component-wrapper-spacer,
.custom-labels-review-section .component-wrapper-spacer,
.why-choose-practitioner-only-products .component-wrapper-spacer,
.ns-faq-item .component-wrapper-spacer,
.ns-header .component-wrapper-spacer {
    margin: 0 !important;
}

.custom-labels-review .custom-labels-review-name .dxp-text-body, .paragraph-500-weigth .dxp-text-body {
    font-weight: 500 !important;
}

/* End Custom Branded Labels */

/* Start Practitioner Brands / Products */
.why-choose-practitioner-only-products .region-Astro {
    background: #025B4B;
    color: white !important;
    padding: 1.125rem 0;
}

.why-choose-practitioner-only-products-header .region-Astro {
    border-top-left-radius: 1rem !important;
    border-top-right-radius: 1rem !important;
}

.why-choose-practitioner-only-products-row .slds-grid, .why-choose-practitioner-only-products-header .slds-grid {
    border-bottom: 1px solid #C0ECDC;
}

.why-choose-practitioner-only-products-row .dxp-text-body {
    font-weight: 500 !important;
}
/* End Practitioner Brands / Products*/

/* Start Custom Table 2 Columns with Flex-grid */ 
.ns-flex-grid-2-columns-table .region-SaaSy {
    width: 6%;
}

.ns-flex-grid-2-columns-table .component-wrapper-spacer {
    margin-bottom: 0 !important;
}
/* End Custom Table 2 Columns with Flex-grid */

.ns-display-card-group-depth-override lightning-formatted-rich-text span {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
}

.ns-display-card-group-depth-override lightning-formatted-rich-text strong {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
}

.ns-banner-image-radius .dxp-block-image-host {
    border-radius: 0.375rem; /* 6px */
}

.ns-icon-float-right {
    float: right;
}

.ns-icon-float-left {
    float: left;
}

.ns-contact-info-section {
    background-color: #FAF7F0;
    border-radius: 6px;
}

.ns-contact-form .columns-content {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 6px;
}

/* GLOBAL MOBILE OVERRIDE */
.slds-button {
    letter-spacing: -0.02rem !important;
}

.dxp-button-large {
    height: 3.375rem;
}

.ns-icon, .ns-icon .image-wrapper {
    width: 25px;
    width: 25px;
}

.dxp-text-heading-xlarge {
    line-height: 3.75rem;
}

.custom-labels-review-content .dxp-text-heading-xlarge {
    font-size: 2.25rem;
    line-height: 2.25rem;
}

.default-body-rich-text-section .cb-outputRichText-container p {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
}

.default-body-rich-text-section .cb-outputRichText-container span {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
}

.default-body-rich-text-section .cb-outputRichText-container strong {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
}

/* Webinar And Events Details */
.upcoming-events-header-list .dxp-text-heading-xlarge { 
    font-size: 1.5rem; 
    line-height: 1.2 !important; 
}

.upcoming-events-header-list .dxp-text-body-small {
    line-height: 1.1 !important;
}

.default-body-rich-text-section .cb-outputRichText-container {
    overflow: hidden !important;
}

.ns-grid-override-flex-to-start .dxp-block-flexible-layout { 
    justify-content: start !important; 
}

.ns-multi-level-navigation-menu c-tree-item[data-level="2"] button { 
    padding: 0 3.6px 0 0;
}

.ns-multi-level-navigation-menu c-tree-item[data-level="3"] .slds-tree__item {
    padding-left: 1.5rem !important;
}

.ns-flexi-grid-dual-1-gap { 
    gap: 1rem 
}

.ns-flexi-grid-dual-1-5-gap {
    gap: 1.5rem;
}

.ns-flexi-grid-dual-no-wrap {
    flex-wrap: nowrap !important;
}

.ns-flexi-grid-dual-4-gap {
    gap: 4rem;
}

.ns-flexi-grid-dual-no-wrap {
    flex-wrap: nowrap !important;
}

.ns-banner-image-gradient-shadow .dxp-block-image-host div[role="img"]{
    position: relative;
    /*width: 566px;
    height: 233px;*/
}

.ns-banner-image-gradient-shadow .dxp-block-image-host div[role="img"]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0) 40%,
        rgba(0, 0, 0, 0.4) 70%,
        rgba(0, 0, 0, 0.6) 100%
    );
    pointer-events: none;
}


.dxp-text-heading-xlarge,
.dxp-text-heading-large {
    letter-spacing: -0.04rem;
}

.dxp-text-heading-medium,
.dxp-text-heading-small,
.dxp-text-heading-xsmall,
.dxp-text-heading-xxsmall,
.dxp-text-body,
.dxp-text-body-small {
    letter-spacing: -0.02rem;
}

.ns-banner-card-section .main-content-container {
    padding: 1.5rem !important;
}

/* Using > so the padding is applied only one level avoiding padding on nested flex-grids */
.ns-flex-grid-region-space-gutter>.region+.region {
    padding-left: var(--dxp-s-column-spacer-size);
}

.ns-flex-grid-border-radius .interactions-region,
.ns-flex-grid-border-radius dxp_layout-columns {
    border-radius: var(--dxp-s-form-element-radius-border);
    overflow: hidden;
}

.ns-custom-overlap-review [data-fqn="dxp_base/button"] {
    display: none !important;
}

.dxp-button-large {
    padding-top: var(--dxp-s-button-large-padding);
}

.ns-header-logo {
    width: 36%;
}

.ns-multi-level-navigation-menu-margin {
    margin-top: 1.8rem !important;
}

.ns-home-hero-banner-wrapper {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.ns-home-hero-banner {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: -1;
}

.ns-site-search-bar input::placeholder {
    font-family: var(--dxp-s-level-font-family);
    font-style: var(--dxp-s-level-font-style);
    font-weight: var(--dxp-s-level-font-weigth);
    color: var(--dxp-s-body-text-color) !important;
}

.ns-site-search-bar .input-container {
    height: 2.7rem !important;
}

.ns-site-search-bar svg {
    fill: var(--dxp-s-body-text-color) !important;
}

.ns-header-flexi-grid {
    background: var(--dxp-g-root);
}

.ns-header-literata {
    font-family: "Literata", serif;
}

.ns-header-rethink-sans {
    font-family: "Rethink Sans", sans-serif;
}

.ns-footer {
    padding: 3rem 2rem 3rem 2rem;
}

.ns-footer-links-container {
    display: block;
    padding-top: 1.8rem;
    padding-right: 0.75rem;
}

.ns-menu-header .ccnavmenu-hamburger-button,
.ns-menu-header .slds-tree_container-vertical,
.ns-menu-header [class^="vertical-groupDiv-"] {
    background-color: var(--ccnavmenus-navContainer-background-color, transparent) !important;
}

/*Card Seashell Styling*/
.ns-card-section {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem;
}

/*Benefits Table*/
.ns-benefits-table {
    width: 100%;
    table-layout: fixed;
    /* required for truncation + fixed columns */
    border-collapse: collapse;
    /* single, crisp borders */
}

.ns-benefits-table td {
    padding: 20px;
    vertical-align: top;
}

/* Horizontal separators: only BETWEEN rows (avoid double top line) */
.ns-benefits-table td {
    border-top: 1px solid #1a4a33;
}

/* Middle vertical line between the two columns */
.ns-benefits-table td+td {
    border-left: 1px solid #1a4a33;
}

/* COLUMN SIZING */
.ns-benefit-title {
    display: flex;
    align-items: center;
}

.ns-benefit-title span {
    margin-left: 10px;
}

.ns-benefit-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-right: 0.75rem
}

.ns-benefit-text {
    width: 70%;
}

/* BULLETS (kept tight so borders align visually) */
.ns-bullet-list {
    margin: 0;
    padding-left: 1.25em;
    list-style-image: url("/naturalscriptsite/sfsites/c/cms/delivery/media/MCOGNJGPLZRNGDFH7GMSEX6HCRII")
}

/* Page Setting: Compounding / Personalised Medicine */
.ns-box-seashell-top-purple {
    background-color: #FAF7F0;
    border-top: 11px solid #CEADFF;
    border-radius: 6px;
}

.white-background-card {
    background-color: white;
    border-radius: calc(var(--dxp-s-button-radius-border)/8);
    color: black;
}

.slds-rich-text-editor__output h4 {
    font-size: var(--dxp-s-text-heading-small-font-size);
    line-height: var(--dxp-s-text-heading-small-line-height);
    font-weight: var(--dxp-s-text-heading-small-font-weight);
}

/* Page Setting: Compounding / Compounding with Natural Scripts */
.why-compounding-image {
    max-height: 566px;
    max-width: 561px;
}

.ns-column-max-width-text {
    max-width: 483px;
}

/* Page Setting: About / About Natural Script */
.ns-font-family-rethink-sans {
    font-family: var(--dxp-s-text-heading-large-font-family) !important;
    letter-spacing: var(--dxp-s-text-heading-large-letter-spacing) !important;
}

.ns-font-family-rethink-sans .dxp-text-heading-medium {
    font-family: var(--dxp-s-text-heading-large-font-family) !important;
    letter-spacing: var(--dxp-s-text-heading-large-letter-spacing) !important;
}

.ns-round-borders {
    border-radius: 6px;
}

.ns-styled-heading-number {
    font-family: "";
}

.ns-purple-button {
    background-color: #CEADFF;
    color: #062C17;
    border-color: transparent;
}

.ns-purple-button:hover {
    background-color: #B395FF;
}

.why-choose-practitioner-only-products-image {
    height: 100%;
}

.ns-out-commitment-to-quality-bottom .slds-grid {
    border-bottom: 1px solid #C0ECDC;
}

.about-natural-script-header-text {
    font-size: 40px;
    font-family: var(--dxp-s-text-heading-large-font-family);
    text-align: center;
}

/* Page Setting: For Practitioners / Getting Started with Natural Script*/
.getting-started-section-half-background {
    background: linear-gradient(to top, #FAF7F0 75%, transparent 25%);
}

.getting-started-section-steps-header .dxp-text-heading-medium {
    font-family: var(--dxp-s-text-heading-large-font-family);
}

.ns-region-astro-sticky-column .region-Astro {
    position: sticky !important;
    top: 5rem !important;
    height: fit-content !important;
    overflow-y: auto !important;
}

.ns-region-astro-sticky-column .cb-outputRichText-container {
    height: fit-content;
    min-height: 0 !important;
    overflow: visible !important;
    padding-bottom: 0.25rem;
}

.ns-getting-started-faq {
    border-bottom-style: solid;
    border-bottom-color: #000000;
    border-bottom-width: 1px;
}

/*Page Setting: Support / FAQs*/
.ns-faq-setting {
    max-width: 1120px;
}

/*Page Setting: Resources / Clinical Insights*/
.ns-clinical-insights-item .dxp-block-image-host {
    border-radius: 6px;
}

.ns-clinical-insights-item .component-wrapper-spacer {
    margin: 0 !important;
}

dxp_base-text-block.ns-clinical-insights-item-header > h4,
dxp_base-text-block.ns-clinical-insights-item-header > p {
    font-weight: 500 !important;
}

/* Start Related List */
.ns-default-related-list .slds-table_header-fixed_container {
    padding-top: 3rem !important;
    background: transparent !important;
}

.ns-default-related-list .slds-table thead tr th:last-child div,
.ns-default-related-list .slds-table thead tr th:last-child .slds-th__action:hover {
    background: #F9F9FC !important;
}

.ns-default-related-list .slds-button:focus {
    box-shadow: none !important;
}

.ns-default-related-list thead th .slds-th__action {
    min-height: 3rem !important;
}

.ns-default-related-list .slds-table tbody th,
.ns-default-related-list .slds-table tbody td {
    box-shadow: none !important;
}

.ns-default-related-list tbody tr {
    min-height: 3rem !important;
}

.ns-default-related-list thead th lightning-menu-item .slds-dropdown__item a {
    padding: 0 0.25rem !important;
}

.ns-default-related-list .slds-table_header-fixed_container:before {
    border: none !important;    
}

.ns-default-related-list article {
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ns-default-related-list c-lwc-navigation-generic-related-list-custom-type a {
    font-family: var(--dxp-s-body-font-family) !important;
    font-size: 1rem !important;
}

.ns-default-related-list thead th a {
    font-family: var(--dxp-s-body-font-family) !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
    background: #F9F9FC !important;
    box-shadow: none !important;
}

.ns-default-related-list table tbody td, 
.ns-default-related-list c-ns-related-list table tbody th {
    background-color: transparent !important;
}

.ns-default-related-list thead th a:hover, 
.ns-default-related-list c-ns-related-list table tbody tr:hover {
    background: #F9F9FC !important;
}

.ns-default-related-list thead th a:hover, 
.ns-default-related-list c-ns-related-list table tbody tr:hover th,
.ns-default-related-list thead th a:hover, 
.ns-default-related-list c-ns-related-list table tbody tr:hover td {
    box-shadow: none !important;
}

.ns-default-related-list thead th lightning-button-menu lightning-primitive-icon svg {
    width: 0.9rem !important;
    height: 0.9rem !important;
}

.ns-default-related-list thead th lightning-button-menu lightning-primitive-icon svg path,
.ns-default-related-list thead th a lightning-primitive-icon svg path {
    stroke: transparent !important;
    stroke-width: 1px !important;
    fill: #809289 !important;
}

.ns-default-related-list .slds-table_header-fixed_container > .slds-scrollable_y:before {
    border-color: var(--ns-related-list-table-border-color) !important;
}

.ns-default-related-list .slds-table tbody td { 
    border-left: 1px solid var(--ns-related-list-table-border-color) !important;
    position: relative !important;
    left: -1px;
}

.ns-default-related-list .slds-table { 
    border: none;
    border-bottom: 1px solid var(--ns-related-list-table-border-color) !important;
}

.ns-default-related-list thead th lightning-primitive-resize-handler .slds-resizable__divider:before {
    background-color: var(--ns-related-list-table-border-color);
}

.ns-default-related-list thead th lightning-primitive-resize-handler .slds-resizable__divider:hover:before {
    background-color: var(--dxp-s-link-text-color-hover) !important;
}

.ns-default-related-list thead th lightning-primitive-resize-handler .slds-resizable__divider:after {
    background: var(--dxp-s-link-text-color-hover) !important;
}
/* End Related List */ 

/* Start Datatable to Card */
.ns-datatable-rows-2-cards table tbody, table thead {
    display: grid !important;
}

.ns-datatable-rows-2-cards table td {
    display: flex !important;
    align-items: center !important;
}

.ns-datatable-rows-2-cards table tbody {
    display: grid !important;
    gap: 2rem;
    grid-template-columns: repeat(4, 1fr) !important;
}

.ns-datatable-rows-2-cards td::before {
    content: attr(data-label) ": " !important;
    font-weight: bold !important;
}

.ns-datatable-rows-2-cards td::before {
    flex: 0 0 25% !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
}

.ns-datatable-rows-2-cards lightning-primitive-cell-factory {
    flex: 0 0 75% !important;
}

.ns-datatable-rows-2-cards tr th {
    display: flex;
    text-align: center;
    background: transparent !important;
}

.ns-datatable-rows-2-cards tr th lightning-primitive-cell-factory {
    flex: 0 0 100% !important;
}

/*
    Start Workaround for images - SObject must have a field Label Card Image
*/
.ns-datatable-rows-2-cards td[data-label="Card Image"]::before, td[data-label="Card Image"]::before {
    display: none !important;
}

.ns-datatable-rows-2-cards lightning-primitive-cell-factory[data-label="Card Image"] {
    flex: 0 0 100% !important;
}

.ns-datatable-rows-2-cards lightning-primitive-cell-factory[data-label="Card Image"] img {
    max-width: 100% !important;
    height: 10rem;
}
/*
    End Workaround for images - SObject must have a field Label Card Image
*/

/* Start Hide Product From Brand Products Card */
.ns-datatable-rows-2-cards td[data-label="Product Name"]::before { 
    display: none !important;
}

.ns-datatable-rows-2-cards lightning-primitive-cell-factory[data-label="Product Name"] {
    flex: 0 0 100% !important;
    text-align: center !important;
}

.ns-datatable-rows-2-cards td[data-label="Product Name"] a { 
    display: inline-block;
    line-height: 1rem;
    margin-top: 1rem;
    margin-left: 0.75rem;
    margin-right: 0.75rem;
}

.ns-datatable-rows-2-cards thead {
    display: none !important;
}

.ns-datatable-rows-2-cards tbody, 
.ns-datatable-rows-2-cards .slds-table_header-fixed_container > .slds-scrollable_y:before {
    border: none !important;
}

.ns-datatable-rows-2-cards tbody tr {
    padding: 1rem;
    border: 1px solid var(--ns-related-list-table-border-color) !important;;
    border-radius: 6px;
    background: var(--ns-related-list-card-background) !important;
}

.ns-datatable-rows-2-cards .slds-table tbody td,
.ns-datatable-rows-2-cards .slds-table tbody tr th {
    border: none !important;
}

.ns-datatable-rows-2-cards .slds-table tbody tr {
    cursor: pointer !important;
}

.ns-datatable-rows-2-cards .slds-table tbody tr * {
    pointer-events: none !important;
}

.ns-datatable-rows-2-cards .slds-table tbody tr:focus {
    box-shadow: none !important;
}

.ns-datatable-rows-2-cards .slds-table {
    border: none !important;
    background: none !important;
}

.ns-datatable-rows-2-cards thead th a:hover, .ns-datatable-rows-2-cards c-ns-related-list table tbody tr:hover {
    background: transparent !important;
}

.ns-datatable-rows-2-cards .slds-table_header-fixed_container {
    padding: 0 !important;
}

/* Override Internal Rich Text */
.override-internal-rich-text-field-style h2 {
    font-size: var(--dxp-s-text-heading-medium-font-size) !important;
    font-weight: var(--dxp-s-text-heading-medium-font-weight) !important;
}

/* Build page: Resource / Clinical Insight / Article */
.ns-article-image-section {
    background: linear-gradient(to bottom, transparent 50%, #FAF7F0 50%);
}

.ns-article-image-container .image-container .image {
    width: 100%;
    height: 535px; /* adjust this to your desired fixed height */
    overflow: hidden;
    position: relative;
}

.ns-article-image-container .image-container .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Page Setting: For Practitioners / Why Use an Online Dispensary? */
.ns-text-column-width {
    max-width: 500px;
}

.ns-text-column-width .region-Astro {
    max-width: 500px;
}

.ns-round-border-section {
    border-radius: 6px;
}

.ns-section-detail-padding {
    padding-left: 9rem;
    padding-block: 4rem;
}

.ns-banner-text-white-color {
    color: #FFFFFF;
}

community_builder-seo-assistant {
    margin: 0px !important;
}

@media (max-width: 1024px) {
    .ns-flexi-grid-2-column-section-gap > .region:first-of-type {
        padding-right: 1rem;
    }

    .ns-flexi-grid-2-column-section-gap > .region:nth-of-type(2) {
        padding-left: 1rem;
    }
    
    .ns-brand-tile-short-description p {
        padding: 0.2rem 1rem !important;
    }
    
    .site-logo {
        margin-left: 0 !important;
    }
    
    .ns-icon, .ns-icon .image-wrapper {
        width: 22px;
        width: 22px;
    }
    
    /* GLOBAL MOBILE OVERRIDE */
    .dxp-text-heading-xlarge, .dxp-text-heading-large {
        line-height: 1.2
    }
    
    .default-body-rich-text-section .cb-outputRichText-container {
        font-size: 1rem;
        line-height: 1.2 !important;
    }
    
    .default-body-rich-text-section .cb-outputRichText-container p,
    .default-body-rich-text-section .cb-outputRichText-container span,
    .default-body-rich-text-section .cb-outputRichText-container a,
    .default-body-rich-text-section .cb-outputRichText-container li {
        font-family: var(--dxp-s-body-font-family) !important;
        font-size: 1rem !important;
    }

    .default-body-rich-text-section .cb-outputRichText-container strong {
        font-family: var(--dxp-s-body-font-family) !important;
        font-size: 1rem !important;
        font-weight: 500 !important;
    }

    /* Heading 1 */
    .dxp-text-heading-xlarge {
        font-size: 2rem;
    }

    /* Heading 2 */
    .dxp-text-heading-large {
        font-size: 1.6rem;
    }
    
    /* Header 3 */
    .dxp-text-heading-medium { 
        font-size: 1.4rem 
    } 
    
    /* Header 4 */
    .dxp-text-heading-small { 
        font-size: 1.25rem 
    }

    /* Heading 5 */
    .dxp-text-heading-xsmall {
        font-size: 1.275rem;
    }

    /* Heading 6 */
    .dxp-text-heading-xxsmall {
        font-size: 1rem;
    }

    /* Paragraph 1 */
    .dxp-text-body {
        font-size: 1rem;
    }

    /* Paragraph 2 */
    .dxp-text-body-small {
        font-size: 0.875rem;
    }

    .dxp-text-heading-medium {
        line-height: 30px;
    }

    .dxp-text-heading-small,
    .dxp-text-heading-xsmall,
    .dxp-text-heading-xxsmall,
    .dxp-text-body,
    .dxp-text-body-small {
        line-height: 20px;
    }

    /* Button Small */
    .dxp-button-small {
        height: 2rem;
    }
    
    .ns-header .component-wrapper-spacer {
        margin-bottom: 0 !important;
    }

    .ns-header-logo {
        width: 70%;
    }

    .ns-body-section {
        padding: 1rem 3rem;
    }

    .ns-body-section dxp_layout-column-spacer {
        padding: var(--dxp-s-column-spacer-size) !important;
    }

    .ns-footer {
        padding: 1rem;
    }

    .ns-footer-links-table-second-row {
        display: block;
        padding-top: 2.5rem;
        padding-right: 0.75rem;
    }

    .ns-datatable-rows-2-cards table tbody {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
    }

    /* Start Liquid Herb Brands Tablet */
        .liquid-herb-brands-details-body .component-wrapper-spacer,
        .liquid-herb-brands-details-body community_builder-rich-text-editor {
            margin: 0 !important;
        }

        .liquid-herb-brands-details-body .cb-outputRichText-container {
            padding: 0 !important;
        }
        
        /*
            Rich Text fields coming from Salesforce SObjectFields have their own Style we should override
        */	
        /* Start Rich Text SObjectFields style override */
        .override-internal-rich-text-field-style * {
            line-height: 1.25rem !important;
            font-size: 1rem !important;
        }
        /* End Rich Text SObjectFields style override */
        
        .liquid-herb-brands-details-body dxp_base-horizontal-line { 
            margin: 1rem 0 0.5rem 0 !important;
        }
    /* End Liquid Herb Brands Tablet */
}

@media (max-width: 480px) {
    .ns-flexi-grid-2-column-section-gap > .region:first-of-type {
        padding-right: 0;
    }

    .ns-flexi-grid-2-column-section-gap > .region:nth-of-type(2) {
        padding-left: 0;
    }
    
    .ns-multi-level-navigation-menu c-tree-item[data-level="2"] .slds-tree__item {
        padding-left: 2.2rem !important;
    }
    
    .ns-multi-level-navigation-menu c-tree-item[data-level="3"] .slds-tree__item {
        padding-left: 5rem !important;
    }
    
    .ns-banner-image-radius-top-bottom-right-no-mobile .dxp-block-image-host {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .ns-banner-image-radius-top-bottom-left-no-mobile .dxp-block-image-host {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .ns-foundation-formula-tiles .dxp-block-flexible-container {
        min-height: 200px !important;    
    }
    
    li.groupMenuItem[c-treeItem_treeItem] > c-tree-item[c-treeItem_treeItem] > div[role="ccnavMenu-treeItemCSS"][c-treeItem_treeItem] {
        padding-left: 0 !important;
    }
    
    .ns-our-commitment-to-giving-back .main-content-container { 
        padding-left: 3rem !important; 
        padding-right: 3rem !important; 
    }
    
    .ns-header .component-wrapper-spacer {
        margin-bottom: 0 !important;
    }
    
    /* Multi Level Navigation */
    div[role="ccnavMenu-treeItemCSS"] > div[data-is-leaf="true"] {
        padding-left: 2.25rem !important;
    }
    
    /* Start Contact */
    .ns-support-contact-icon .image {
        width: 2rem;
    }
    .ns-global-header {
        margin-right: 1.75rem !important;    
    }
    
    .ns-global-header dxp_base-button .dxp-button-small {
        padding: 8px !important;  
    }
    
    .ns-multi-level-navigation-menu .ccnavmenu-hamburger-button, .ns-multi-level-navigation-menu .ccnavmenu-hamburger-button svg {
        height: 2.5rem !important;
        width: 2.5rem !important;
        margin-left: 0.15rem !important;
    }
    
    .ns-multi-level-navigation-menu button:focus  {
        outline: none !important;
    }
    
    .hamburgerMenuContainer {
        width: 100vw !important;
        top: 3.0rem !important;
    }
    
    .ns-site-search-bar .input-container input {
        background: none !important;
        background-color: none !important;
    }
    
    /* Start Custom Branded Labels */
    .custom-labels-review {
        max-height: 100% !important;
    }
    /* End Custom Branded Labels */
    
    .ns-display-card-group-depth-override lightning-formatted-rich-text p,
    .ns-display-card-group-depth-override lightning-formatted-rich-text li,
    .ns-display-card-group-depth-override lightning-formatted-rich-text span,
    .ns-display-card-group-depth-override lightning-formatted-rich-text a {
        font-family: var(--dxp-s-body-font-family) !important;
        font-size: 1rem !important;
    }
    
    .ns-display-card-group-depth-override lightning-formatted-rich-text span {
        font-family: var(--dxp-s-body-font-family) !important;
        font-size: 1rem !important;
    }
    
    .ns-display-card-group-depth-override lightning-formatted-rich-text strong {
        font-weight: 500 !important;
        font-size: 1rem !important;
    }
    
    /* Start Foundation Formula */
    .default-body-rich-text-section .cb-outputRichText-container {
        font-size: 1rem;
        line-height: 1.375rem !important;
    }
    /* End Foundation Formula */
    
    .ns-grid-no-padding .dxp-grid-item {
        padding-left: 0;
        padding-right: 0;
        padding-top: 0;
    }
    
    .included-with-ns-row .slds-grid {
        display: flex;
        align-items: stretch;
    }
    
    .ns-grid-item .dxp-grid-item {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* GLOBAL MOBILE OVERRIDE */
    .dxp-text-heading-medium {
        font-size: 1.375rem;
        line-height: 1.5rem;
    }
    
    .dxp-text-heading-small {
        font-size: 1.125rem;
        line-height: 1.5rem;
    }
    
    .dxp-text-heading-large {
        line-height: 2rem;
    }
    .ns-icon, .ns-icon .image-wrapper {
        width: 18px;
        height: 18px;
    }
    
    .dxp-text-heading-xlarge {
        line-height: 2.5rem;
    }
    
    .dxp-button-small {
        padding: 0.5rem 1rem !important; 
        height: auto;
    }
    
    .ns-banner-image-radius-top-right .dxp-block-image-host {
        border-top-right-radius: 0.375rem; /* 6px */
    }

    .ns-banner-image-radius-top-left .dxp-block-image-host {
        border-top-left-radius: 0.375rem; /* 6px */
    }

    .ns-banner-image-radius-bottom-right .dxp-block-image-host {
        border-bottom-right-radius: 0.375rem; /* 6px */
    }

    .ns-banner-image-radius-bottom-left .dxp-block-image-host {
        border-bottom-left-radius: 0.375rem; /* 6px */
    }

    /* Heading 1 */
    .dxp-text-heading-xlarge {
        font-size: 1.8rem;
    }

    /* Heading 2 */
    .dxp-text-heading-large {
        font-size: 1.7rem;
    }

    /* Heading 3 */
    .dxp-text-heading-medium {
        font-size: 1.475rem;
    }

    /* Heading 4 */
    .dxp-text-heading-small {
        font-size: 1.375rem;
    }

    /* Heading 5 */
    .dxp-text-heading-xsmall {
        font-size: 1.275rem;
    }

    /* Heading 6 */
    .dxp-text-heading-xxsmall {
        font-size: 1rem;
    }

    /* Paragraph 1 */
    .dxp-text-body {
        font-size: 1rem;
    }

    /* Paragraph 2 */
    .dxp-text-body-small {
        font-size: 0.875rem;
    }

    .dxp-text-heading-xlarge,
    .dxp-text-heading-large {
        line-height: 40px;
    }

    .dxp-text-heading-medium {
        line-height: 30px;
    }

    .dxp-text-heading-small,
    .dxp-text-heading-xsmall,
    .dxp-text-heading-xxsmall,
    .dxp-text-body,
    .dxp-text-body-small {
        line-height: 20px;
    }

    /* Button Small */
    .dxp-button-small {
        height: 2rem;
    }

    /* Using > so the padding is applied only one level avoiding padding on nested flex-grids */
    .ns-flex-grid-region-space-gutter-top>.region+.region {
        padding-top: var(--dxp-s-component-wrapper-spacer-size-mobile);
    }

    /* Using > so the padding is applied only one level avoiding padding on nested flex-grids */
    .ns-flex-grid-region-space-gutter-no-left>.region+.region {
        padding-left: 0px;
    }

    .ns-flex-grid-region-space-gutter .flexi-grid-custom-bottle-options-region-Codey .region-Codey {
        padding-left: 0px;
    }

    .ns-site-search-bar {
        background: transparent !important;
    }

    .ns-header-logo {
        width: 26%;
    }

    .ns-body-section {
        padding: 0 0.5rem;
    }

    .ns-body-section dxp_layout-column-spacer {
        padding: var(--dxp-s-column-spacer-size) !important;
    }

    .ns-footer {
        padding: 0.5rem;
    }

    .ns-footer-links-mobile-second-row {
        display: block;
        padding-top: 2.5rem;
        padding-right: 0.75rem;
    }

    .ns-site-search-bar .input-container {
        padding: 0 0.75rem;
    }

    .ns-menu-header .ccnavmenu-hamburger-button,
    .ns-menu-header .slds-tree_container-vertical,
    .ns-menu-header [class^="vertical-groupDiv-"] {
        background-color: #FFFFFF !important;
    }

    .ns-menu-header .slds-tree_container {
        padding: 0px;
    }

    .ns-flexi-grid-2-columns-mobile-section .region-SaaSy {
        padding-bottom: var(--dxp-s-section-content-spacing-block-end);
    }

    /* Table */
    .ns-benefits-table,
    .ns-benefits-table tr,
    .ns-benefits-table td {
        display: block;
        width: 100%;
    }

    .ns-benefits-table {
        border: none;
        /* remove outer table borders on mobile */
    }

    .ns-benefits-table tr {
        margin-bottom: 20px;
        border: 1px solid #1a4a33;
        border-radius: 12px;
        padding: 16px;
    }

    .ns-benefits-table td {
        border: none;
        /* remove inner cell borders */
        padding: 10px 0;
    }

    .ns-benefit-title {
        margin-bottom: 10px;
        font-size: 16px;
    }

    .ns-benefit-text li {
        white-space: normal;
        /* allow wrapping on mobile */
    }

    .ns-site-logo img {
        max-height: none !important;
    }

    .ns-site-search-bar input::placeholder {
        font-size: 0.975rem;
    }

    .ns-site-search-bar .input-container {
        height: 2.5rem !important;
    }

    .about-natural-script-header-text {
        font-size: 23px;    
    }

    body {
        font-family: var(--dxp-s-html-font-size-mobile);
        line-height: var(--dxp-s-body-line-height);
    }
    
    .ns-region-astro-sticky-column .region-Astro {
        position: static !important;
        top: 0 !important;
        height: fit-content !important;
        overflow-y: auto !important;
    }

    .ns-region-astro-sticky-column .cb-outputRichText-container {
        height: fit-content;
        min-height: 0 !important;
        overflow: visible !important;
        padding-bottom: 0.25rem;
    }

    .ns-datatable-rows-2-cards table tbody {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
    }
    
    .ns-datatable-rows-2-cards tbody tr {
        /*margin: 0.5rem 0 !important; */
    }
    
    .ns-datatable-rows-2-cards lightning-primitive-cell-factory[data-label="Card Image"] img {
        max-width: 100% !important;
        height: 7rem;
    }
    
    .ns-cms-bullet-list-advanced li {
        line-height: 1.2 !important;
    }
}