/**
 * Legacy Styles
 * Consolidated from qwery-child theme CSS files.
 * Source files: style.css, style2.css, style3.css, stores.css
 *
 * Excluded: Gravity Forms, Quiz progress bars, quiz page-specific rules.
 */

/* ==========================================================================
   1. Typography & Global
   ========================================================================== */

h1,
h2,
h3 {
    -webkit-hyphens: manual !important;
    hyphens: manual !important;
}

table td {
    font-size: 16px;
}

.current-section {
    border-bottom: 1px solid #000 !important;
}

.anchorbefore {
    position: relative;
    top: -100px;
}

/* ==========================================================================
   2. Iubenda & Scroll to Top
   ========================================================================== */

.iubenda-tp-btn {
    display: none !important;
}

body .iubenda-tp-btn.iubenda-cs-preferences-link {
    display: none !important;
}

.trx_addons_scroll_to_top.show {
    bottom: 12em !important;
    right: 40px !important;
}

@media only screen and (max-width: 648px) {
    .trx_addons_scroll_to_top.show {
        bottom: 1em !important;
        right: 20px !important;
    }
}

/* ==========================================================================
   3. Routine Products
   ========================================================================== */

.c-routine-products {
    text-align: center;
}

.c-routine-products .c-routine-product {
    width: 20%;
    margin: 0 0 20px -4px;
    padding: 10px;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
}

.c-routine-products.c-routine-products-type-essential .c-routine-product {
    width: 25%;
}

.c-routine-products .c-routine-product > div {
    min-height: 100px;
}

.c-routine-products .dce-button-open-modal {
    display: none !important;
}

.c-routine-placeholder div {
    background: #efefef;
}

.c-routine-products .c-routine-product.c-routine-placeholder {
    position: relative;
    top: 28px;
}

.reserved_product_step {
    display: inline-block;
    color: #fff;
    border-radius: 100%;
    line-height: 45px;
    width: 45px;
    border: 1px solid #fff;
}

#product_step_num h2 {
    width: 24px;
    text-align: center;
}

.c-product-popup-step-num > div {
    display: inline-block;
    color: #fff;
    border-radius: 100%;
    line-height: 45px;
    width: 45px;
    border: 1px solid #fff;
    text-align: center;
}

/* Routine product step colors */
.product-type-1 .dce-modal .modal-content,
body.product_step_1 #product_step_num .elementor-widget-container,
body.product_step_1 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-1:hover .reserver_product_step_dsk,
.c-routine-product-1 .reserver_product_step_dsk_btm,
.reserved_product_step_1 {
    background: #366A9B;
}

.product-type-2 .dce-modal .modal-content,
body.product_step_2 #product_step_num .elementor-widget-container,
body.product_step_2 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-2:hover .reserver_product_step_dsk,
.c-routine-product-2 .reserver_product_step_dsk_btm,
.reserved_product_step_2 {
    background: #387CA0;
}

.product-type-3 .dce-modal .modal-content,
body.product_step_3 #product_step_num .elementor-widget-container,
body.product_step_3 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-3:hover .reserver_product_step_dsk,
.c-routine-product-3 .reserver_product_step_dsk_btm,
.reserved_product_step_3 {
    background: #6593A3;
}

.product-type-4 .dce-modal .modal-content,
body.product_step_4 #product_step_num .elementor-widget-container,
body.product_step_4 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-4:hover .reserver_product_step_dsk,
.c-routine-product-4 .reserver_product_step_dsk_btm,
.reserved_product_step_4 {
    background: #5A949D;
}

.product-type-5 .dce-modal .modal-content,
body.product_step_5 #product_step_num .elementor-widget-container,
body.product_step_5 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-5:hover .reserver_product_step_dsk,
.c-routine-product-5 .reserver_product_step_dsk_btm,
.reserved_product_step_5 {
    background: #6D905F;
}

.product-type-6 .dce-modal .modal-content,
body.product_step_6 #product_step_num .elementor-widget-container,
body.product_step_6 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-6:hover .reserver_product_step_dsk,
.c-routine-product-6 .reserver_product_step_dsk_btm,
.reserved_product_step_6 {
    background: #A8A06C;
}

.product-type-7 .dce-modal .modal-content,
body.product_step_7 #product_step_num .elementor-widget-container,
body.product_step_7 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-7:hover .reserver_product_step_dsk,
.c-routine-product-7 .reserver_product_step_dsk_btm,
.reserved_product_step_7 {
    background: #B97850;
}

.product-type-8 .dce-modal .modal-content,
body.product_step_8 #product_step_num .elementor-widget-container,
body.product_step_8 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-8:hover .reserver_product_step_dsk,
.c-routine-product-8 .reserver_product_step_dsk_btm,
.reserved_product_step_8 {
    background: #AB6B60;
}

.product-type-9 .dce-modal .modal-content,
body.product_step_9 #product_step_num .elementor-widget-container,
body.product_step_9 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-9:hover .reserver_product_step_dsk,
.c-routine-product-9 .reserver_product_step_dsk_btm,
.reserved_product_step_9 {
    background: #B47485;
}

.product-type-10 .dce-modal .modal-content,
body.product_step_10 #product_step_num .elementor-widget-container,
body.product_step_10 #product_added_ingredient .elementor-widget-wrap,
.c-routine-product-10:hover .reserver_product_step_dsk,
.c-routine-product-10 .reserver_product_step_dsk_btm,
.reserved_product_step_10 {
    background: #7D7198;
}

/* Client routine indicators */
.client_routine_els > span {
    width: 21px;
    height: 10px;
    display: inline-block;
    background: #63656A;
    border-radius: 2px;
}

.client_routine_els > .client_routine_el_full,
.client_routine_leg > .client_routine_el_full {
    background: #63656A;
}

.client_routine_els > .client_routine_el_medium,
.client_routine_leg > .client_routine_el_medium {
    background: #5D5FEF;
}

.client_routine_els > .client_routine_el_minimum,
.client_routine_leg > .client_routine_el_minimum {
    background: #F178B6;
}

.client_routine_els > .client_routine_el_gem,
.client_routine_leg > .client_routine_el_gem {
    background: #A8A06C;
}

.client_routine_leg {
    margin-top: 20px;
}

.client_routine_leg > span {
    border-radius: 2px;
    width: 170px;
    display: block;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    color: #fff;
    margin-top: 10px;
}

@media (max-width: 1279px) {
    .c-routine-placeholder {
        display: none;
    }

    .c-routine-products .c-routine-product {
        width: 50%;
        min-height: 140px;
        margin-bottom: 0;
        padding: 5px 10px;
    }

    .c-routine-products .c-routine-product > div {
        min-height: auto !important;
    }

    div.c-routine-product {
        padding: 10px 3px !important;
    }
}

@media screen and (max-width: 767px) {
    .c-routine-products .c-routine-product,
    .c-routine-products.c-routine-products-type-essential .c-routine-product {
        width: auto;
    }

    .c-routine-placeholder {
        display: none;
    }

    .c-routine-products .c-routine-product {
        width: 100%;
    }

    .reserved_product_step {
        line-height: 30px;
        width: 30px;
        font-size: 70%;
    }
}

/* ==========================================================================
   4. Product Popup & Details
   ========================================================================== */

.c_product_typeforbg .dce-modal .modal-body {
    box-sizing: border-box;
}

.c_product_typeforbg .dce-modal .modal-content {
    overflow-x: hidden;
}

.c_product_typeforbg .popup-routine-product-image img {
    max-height: 30vh;
    width: auto;
}

.c_product_typeforbg .dce-modal .dce-close {
    right: 10%;
    top: 10%;
}

.c_product_typeforbg .dce-modal .dce-close span {
    background: transparent;
    border: 1px solid #fff;
}

.c_product_typeforbg .dce-modal .dce-close span:before,
.c_product_typeforbg .dce-modal .dce-close span:after {
    background-color: #fff;
}

body.c_product_typeforbg {
    z-index: 10000001;
}

.dce-popup-container-4d5b060.dce-popup-button.c_product_typeforbg .dce-modal .modal-content {
    height: 60%;
    margin: 10%;
    position: relative;
}

.dce-popup-container-4d5b060.dce-popup-button.c_product_typeforbg .dce-modal .dce-close {
    top: 0px;
    right: 0px;
}

.dce-popup-container-4d5b060.dce-popup-button.c_product_typeforbg .dce-modal .dce-close .dce-quit-ics {
    top: 20px;
    right: 20px;
}

.dce-popup-3c721d4.dce-modal .elementor-element-6ed954f .elementor-element-populated {
    overflow-y: auto;
    max-height: 65vh;
}

.popup-prod-col-left {
    background-size: contain;
    background-repeat: no-repeat;
}

.product-gem-img {
    display: none;
}

.product_benefits_wrap {
    padding-left: 20px;
}

.product_benefits {
    margin-left: 0px;
    display: inline-block;
    font-size: 10px;
    list-style-type: decimal;
    width: 100%;
    column-count: 1;
    column-gap: 30px;
}

.product_benefits li {
    width: 100%;
    font-size: 24px;
    line-height: 38px;
}

.product_add_cart {
    text-align: center;
}

.product_add_cart .cart {
    display: inline-block !important;
    margin: 0 auto !important;
}

.woocommerce div.product .product_add_cart form.cart div.quantity input[type="number"] {
    border: 1px solid var(--e-global-color-primary) !important;
    border-width: 1px !important;
    color: var(--e-global-color-primary);
}

.woocommerce div.product .product_add_cart form.cart .button.single_add_to_cart_button {
    background: transparent !important;
    border: 1px solid var(--e-global-color-primary) !important;
    border-width: 1px !important;
    color: var(--e-global-color-primary);
}

/* Product "complete with" feature */
.index-wrap.has-complete-with {
    height: auto;
    position: absolute;
    left: 30px;
    top: 30px;
    width: calc(100% - 60px);
    display: flex;
}

.product-thumb .index.has-complete-with {
    position: static;
}

.product-thumb .index {
    float: left;
}

.product-thumb .complete-with {
    float: left;
    width: calc(100% - 85px);
    margin-left: 5px;
    padding: 6px;
    opacity: 0.7;
}

.product-thumb .complete-with:hover {
    opacity: 1;
}

.product-thumb .complete-with a {
    text-decoration: none;
    color: #fff;
}

.product-thumb .complete-with strong {
    display: block;
    text-transform: uppercase;
    font-size: 75%;
    font-weight: 200;
}

.product-thumb .complete-with span {
    font-size: 70%;
    letter-spacing: 0px;
    line-height: 120% !important;
    font-family: "brandon_grotesque", sans-serif;
    font-weight: 200;
    display: block;
}

.col-6:nth-child(2) .product-thumb .complete-with  { background-color: #4775a7; }
.col-6:nth-child(3) .product-thumb .complete-with  { background-color: #4886ab; }
.col-6:nth-child(4) .product-thumb .complete-with  { background-color: #709ead; }
.col-6:nth-child(5) .product-thumb .complete-with  { background-color: #63a0a8; }
.col-6:nth-child(6) .product-thumb .complete-with  { background-color: #719c67; }
.col-6:nth-child(7) .product-thumb .complete-with  { background-color: #aaa973; }
.col-6:nth-child(8) .product-thumb .complete-with  { background-color: #bc8356; }
.col-6:nth-child(9) .product-thumb .complete-with  { background-color: #B17467; }
.col-6:nth-child(10) .product-thumb .complete-with { background-color: #c9778e; }
.col-6:nth-child(11) .product-thumb .complete-with { background-color: #8b7ca3; }

@media screen and (max-width: 767px) {
    .product-gem-img {
        display: block;
    }

    .popup-prod-col-right,
    .popup-prod-col-left {
        width: 100% !important;
    }

    .product-gem-col-left,
    .product-gem-col-right {
        width: 100% !important;
    }

    .col-popup-prod-bottom {
        width: 100% !important;
        margin: 20px 0;
    }

    .col-popup-prod-bottom * {
        text-align: center;
    }

    .col-popup-prod-bottom .pp-buttons-halign-right .pp-buttons-group {
        justify-content: center;
    }

    body .elementor-18527 .elementor-element.elementor-element-6dede2a > .elementor-element-populated {
        border-width: 0px 0px 0px 0px;
    }

    .c_product_typeforbg .dce-modal .modal-body {
        padding-left: 10px;
        padding-right: 10px;
    }

    .dce-modal.modal-center.modal-middle {
        max-height: 100%;
        overflow: scroll;
    }

    .dce-popup-container-4d5b060.dce-popup-button.c_product_typeforbg .dce-modal .modal-content {
        margin: 2%;
    }

    .popup-prod-col-left {
        background-position: center;
    }

    .index-wrap.has-complete-with {
        position: static;
        width: 100%;
    }

    .product-thumb .complete-with {
        width: 100%;
    }
}

@media (max-width: 568px) {
    .index-wrap.has-complete-with {
        position: static;
        width: 100%;
    }

    .product-thumb .complete-with {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .mfp-inline-holder div.mfp-content,
    .mfp-ajax-holder div.mfp-content {
        max-width: 95%;
        max-height: 95%;
    }

    .trx_addons_popup {
        width: 100% !important;
        height: auto;
    }
}

/* ==========================================================================
   5. WooCommerce
   ========================================================================== */

.button.wc-backward {
    display: none !important;
}

.woocommerce a.button.btn-empty-cart {
    margin: 0 5px;
    box-shadow: none !important;
    background-color: var(--theme-color-alter_bg_color) !important;
    color: var(--theme-color-text_dark) !important;
}

.woo-actions-inner {
    float: right;
}

.woo-actions-inner > * {
    width: auto !important;
    padding: 0 20px !important;
}

.btn-empty-cart {
    width: auto !important;
    float: right !important;
    margin-bottom: 10px !important;
}

/* Cart widget */
body .sc_layouts_cart_widget,
body .sc_layouts_cart .sc_layouts_cart_widget .quantity,
body .sc_layouts_cart .sc_layouts_cart_widget * {
    color: #888 !important;
}

.sc_layouts_cart .sc_layouts_cart_widget ul.cart_list li a,
.sc_layouts_cart .sc_layouts_cart_widget .total,
.sc_layouts_cart .sc_layouts_cart_widget .total *,
.sc_layouts_cart .sc_layouts_cart_widget .quantity,
.sc_layouts_cart .sc_layouts_cart_widget .quantity * {
    color: #888 !important;
}

body .sc_layouts_cart .sc_layouts_cart_widget ul.cart_list li a {
    color: #1f140b !important;
}

.sc_layouts_cart .sc_layouts_cart_widget .widget_shopping_cart_content .buttons a.checkout {
    border-color: #888 !important;
    color: #888 !important;
}

body header .sc_layouts_column .elementor-widget-trx_sc_layouts_cart.sc_layouts_item:not(.elementor-widget-divider):not(.elementor-widget-spacer) {
    display: none;
}

body .sc_layouts_cart:not(.modern) .sc_layouts_cart_widget .widget_shopping_cart .buttons a {
    display: block;
    width: 100%;
    margin-bottom: 10px !important;
}

/* Cart & checkout visibility */
body.woocommerce-cart .cart-subtotal,
body.woocommerce-cart .woocommerce-shipping-totals {
    display: none !important;
}

body form.woocommerce-checkout {
    overflow: visible;
}

.woocommerce-order-received .custom-fields,
.woocommerce-order-received .woocommerce-customer-details {
    display: none;
}

#shipping_here_field .optional {
    display: none;
}

.additional-s-help {
    display: block;
}

/* Pharmacy user (not acting as user) */
body.logged_pharmacy_not_as_user header .sc_layouts_column .elementor-widget-trx_sc_layouts_cart.sc_layouts_item:not(.elementor-widget-divider):not(.elementor-widget-spacer) {
    display: none !important;
}

body.logged_pharmacy_not_as_user .elementor-element-08f68eb,
body.logged_pharmacy .elementor-element-08f68eb {
    display: none !important;
}

/* Pharmacy user (acting as user) */
body.logged_pharmacy_as_user.woocommerce-cart #shipping_method,
body.logged_pharmacy_as_user.woocommerce-cart .woocommerce-shipping-calculator {
    display: none;
}

body.logged_pharmacy_as_user.woocommerce-cart .cart-subtotal,
body.logged_pharmacy_as_user.woocommerce-cart .woocommerce-shipping-totals {
    display: none !important;
}

body.logged_pharmacy_as_user.woocommerce-checkout .shop_table_in tr.shipping th {
    display: none !important;
}

body.logged_pharmacy_as_user.woocommerce-checkout #ship-to-different-address label span {
    display: none;
}

body.logged_pharmacy_as_user.woocommerce-checkout #ship-to-different-address h3 {
    font-size: 28px;
    line-height: 1.1em;
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 10px;
}

body.logged_pharmacy_as_user header .elementor-nav-menu > li {
    font-size: 95%;
}

body.logged_pharmacy_as_user header .elementor-nav-menu > li:not(:last-child) {
    margin-right: 20px !important;
}

/* Pharmacy checkout shipping */
body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping th {
    display: block !important;
    font-weight: bold;
    padding-bottom: 5px;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping tr,
body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping td {
    display: block;
    text-align: left;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping td {
    padding-left: 0;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping td li div {
    padding-left: 31px;
    padding-bottom: 0px;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping td li div label {
    padding-bottom: 0px;
    display: block !important;
    margin-bottom: 20px;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tr.shipping td li {
    padding-bottom: 10px;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in .woocommerce-shipping-totals {
    border-bottom: 1px solid #000;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in tbody:nth-child(2) tr:first-child p {
    padding-top: 10px;
}

body.logged_pharmacy.woocommerce-checkout #shipping_method {
    padding-bottom: 10px;
}

body.logged_pharmacy.woocommerce-checkout .shop_table_in input[type="radio"] + label:before,
body.logged_pharmacy.woocommerce-checkout .shop_table_in input[type="checkbox"] + label:before {
    position: relative;
    top: -3px;
}

/* Specialist user */
body.logged_specialist header .sc_layouts_column .elementor-widget-trx_sc_layouts_cart.sc_layouts_item:not(.elementor-widget-divider):not(.elementor-widget-spacer) {
    display: none !important;
}

body.logged_specialist .elementor-element-08f68eb {
    display: none !important;
}

/* ==========================================================================
   6. Reserved Area
   ========================================================================== */

.areablock {
    display: block;
    border-bottom: 1px solid #ccc;
    padding: 30px 0;
}

.areablock:after {
    content: "";
    display: block;
    clear: both;
}

.areablock table thead tr {
    border-bottom: 1px solid #E2E2E2;
}

.areablock .reserved_product_step {
    text-align: center;
}

.areablock .link-go-btn-redo {
    background: #63649E;
}

.areablock .link-go-btn-unlock-pdf,
.areablock .link-go-btn-send-cart {
    background: #AF43D4;
}

.leftarea {
    float: left;
    width: 240px;
    font-weight: 500;
    text-transform: uppercase;
    color: #1D1D1B;
}

.leftarea.leftareatitle {
    color: #63656A;
    font-size: 22px;
}

.rightarea {
    float: left;
    width: calc(100% - 240px);
}

.rightarea.rightareatitle {
    font-weight: 500;
    color: #1D1D1B;
}

.rightarea input[type=number]::-webkit-inner-spin-button,
.rightarea input[type=number]::-webkit-outer-spin-button {
    opacity: 1;
}

.rightarea-showpdf {
    line-height: 84px;
    text-transform: uppercase;
}

.rightarea-showpdf input[type="submit"] {
    display: none;
}

.rightarea-showpdf .show-pdf img {
    width: 65px;
    margin-right: 10px;
}

.rightarea-col {
    float: left;
}

.rightarea-col3 .rightarea-col {
    width: 33.3%;
}

.rightarea-table-products {
    width: 100%;
}

.rightarea-table-products tr td {
    text-align: center;
}

.unlock_report-label {
    line-height: 120%;
}

.unlock_report-label input {
    margin-right: 10px !important;
    width: 20px !important;
    height: 20px !important;
}

.unlock_report-label span {
    padding-left: 8px;
    max-width: 120px;
    display: inline-block;
    position: relative;
    top: 5px;
}

/* Cart total area */
.cart-total-area-wrap {
    width: 50%;
    float: right;
    margin: 20px 0;
    min-width: 400px;
}

.cart-total-area-wrap .cart-total-name {
    font-weight: bold;
    width: 40%;
    float: left;
}

.cart-total-area-wrap #specialist_cart_total {
    font-weight: bold;
}

.cart-total-area-wrap .cart-total-al {
    margin-left: 40%;
    max-width: 200px;
    line-height: 120%;
}

.sp_cart_product_el {
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    width: 86px;
    text-align: center;
    padding: 5px !important;
}

/* Form fields */
#form-field-email,
#form-field-code {
    padding-left: 10px;
    padding-right: 10px;
}

/* Reserved area table */
.reserved-area-table {
    border-collapse: separate;
    border-spacing: 0px;
    width: 100%;
}

.reserved-area-table thead {
    border-bottom: 1px solid #E2E2E2;
    margin-bottom: 20px;
}

.reserved-area-table thead td:last-child {
    padding-right: 0 !important;
}

.reserved-area-table thead form {
    position: relative;
}

.reserved-area-table thead form:before {
    font-family: "trx_addons_icons";
    content: '\e898';
    display: block;
    position: absolute;
    top: 10px;
    left: 8px;
    z-index: 1;
}

.reserved-area-table thead input[type="text"] {
    border: 1px solid #63656A;
    width: 100%;
    border-radius: 5px;
    padding: 10px 10px 10px 30px;
}

.reserved-area-table thead .reset_btn {
    height: 46px;
    padding-top: 14px;
    float: right;
}

.reserved-area-table thead .is-searching input[type="text"] {
    width: calc(100% - 128px);
}

.reserved-area-table tbody:before {
    content: "@";
    display: block;
    line-height: 10px;
    text-indent: -99999px;
}

.reserved-area-table tbody tr {
    border-radius: 5px;
    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 1) 0%,
        rgba(255, 255, 255, 1) 5%,
        rgba(242, 242, 242, 1) 5%,
        rgba(242, 242, 242, 1) 95%,
        rgba(255, 255, 255, 1) 95%,
        rgba(255, 255, 255, 1) 100%
    );
}

.reserved-area-table tbody tr td {
    padding: 20px 10px !important;
    background: none !important;
}

.reserved-area-table tbody tr.expandable-row,
.reserved-area-table tbody tr.expandable-row tr {
    background: transparent;
}

.reserved-area-table tbody tr.expandable-row table {
    width: 100%;
}

.reserved-area-table tbody tr.expandable-row tr {
    border-top: 1px solid #E2E2E2;
}

.reserved-area-table tbody tr.expandable-row > td {
    padding: 0 !important;
}

.reserved-area-table tbody tr.expandable-row tr:first-child {
    border: 0;
}

.reserved-area-table > tbody > tr > td:first-child {
    padding-left: 20px !important;
}

.reserved-area-table > tbody > tr:not(.expandable-row):hover {
    position: relative;
    border-radius: 5px;
    background: linear-gradient(
        to top,
        rgba(255, 255, 255, 1) 0%,
        rgba(242, 242, 242, 1) 5%,
        rgba(255, 255, 255, 1) 5%,
        rgba(255, 255, 255, 1) 95%,
        rgba(242, 242, 242, 1) 95%,
        rgba(255, 255, 255, 1) 100%
    );
}

.reserved-area-table > tbody > tr:not(.expandable-row):hover:after {
    content: "";
    display: block;
    position: absolute;
    height: 90%;
    top: 5%;
    width: 10px;
    left: 0;
    background: #AF43D4;
    border-radius: 5px 0px 0px 5px;
}

.reserved-area-table tr td:first-child {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.reserved-area-table tr td:last-child {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

/* Links & buttons */
.link-go,
.link-go-btn {
    padding: 10px 20px;
    white-space: nowrap;
}

.link-go svg,
.link-go-btn svg {
    margin-left: 5px;
}

.link-go-btn,
.link-go-btn:hover {
    background: #63656A;
    border-radius: 5px;
    color: #fff;
}

.link-go:hover,
.link-go-btn:hover {
    text-decoration: underline;
}

.row-open,
.row-close {
    cursor: pointer;
}

/* Pagination */
.customer-area-pagination {
    margin: 50px 0;
}

.customer-area-pagination > * {
    padding: 15px;
    width: 50px;
    height: 50px;
    text-align: center;
    display: inline-block;
    line-height: 20px;
    border: 1px solid #E2E2E2;
    border-radius: 100%;
    margin-right: 5px;
}

.customer-area-pagination > .current {
    background: #63656A;
    color: #fff;
}

.customer-area-pagination > .next {
    text-indent: -20000px;
    position: relative;
}

.customer-area-pagination > .next:after {
    font-family: "trx_addons_icons";
    content: '\e911';
    display: block;
    z-index: 1;
    position: absolute;
    color: #333;
    width: 20px;
    height: 20px;
    text-indent: 0px;
    top: 15px;
}

.customer-area-pagination > .prev {
    text-indent: -20000px;
    position: relative;
}

.customer-area-pagination > .prev:after {
    font-family: "trx_addons_icons";
    content: '\e910';
    display: block;
    z-index: 1;
    position: absolute;
    color: #333;
    width: 20px;
    height: 20px;
    text-indent: 0px;
    top: 15px;
}

/* Reserved area search (style2 variant) */
.reserved-area-table-search {
    position: relative;
}

.reserved-area-table-search:before {
    font-family: "trx_addons_icons";
    content: '\e898';
    display: block;
    position: absolute;
    top: 10px;
    left: 8px;
    z-index: 1;
}

.reserved-area-table-search input[type="text"] {
    border: 1px solid #63656A;
    width: 100%;
    border-radius: 5px;
    padding: 10px 10px 10px 30px;
}

.reserved-area-table-search .reset_btn {
    height: 46px;
    padding-top: 14px;
    float: right;
}

.reserved-area-table-search.is-searching input[type="text"] {
    width: calc(100% - 128px);
}

/* Reserved area top title */
.reserved-area-top-title {
    margin: 0 0 5px;
    padding: 0 0 15px;
    border-bottom: 1px solid #ccc;
}

.reserved-area-top-title:after {
    display: block;
    content: "";
    clear: both;
}

.reserved-area-top-title h2 {
    float: left;
    margin: 0;
    font-weight: 400;
    color: #63656A;
}

.reserved-area-top-title form {
    float: right;
    width: 300px;
}

/* Auto mail */
.auto-mail-example hr {
    margin: 10px 0 20px !important;
}

@media screen and (min-width: 768px) {
    .rightarea.rightareatitle > div {
        float: left;
        padding-right: 30px;
    }

    .rightarea.rightareatitle > a {
        float: right;
    }
}

@media screen and (max-width: 1024px) {
    .leftarea {
        width: 130px;
        padding-right: 10px;
    }

    .rightarea {
        width: calc(100% - 140px);
    }

    .client_routine_leg > span {
        width: 108px;
    }
}

@media screen and (max-width: 767px) {
    .leftarea {
        float: none;
        width: auto;
        clear: both;
        margin: 20px 0 10px 0px;
    }

    .rightarea {
        float: none;
        width: auto;
        clear: both;
        margin: 10px 0 20px 0px;
    }

    .client_routine_leg > span {
        width: 180px;
    }

    .rightarea-table-products-w {
        overflow: visible;
    }

    .areablock .link-go-btn-redo {
        margin: 10px 0;
        display: inline-block;
    }
}

/* Section 7 (Store Locator) removed — styles loaded by store_locator/stores.css via shortcode */

/* ==========================================================================
   8. Login Popup
   ========================================================================== */

.trx_addons_popup button.mfp-close {
    border: 0;
    background: none !important;
    color: #000;
}

.trx_addons_popup button.mfp-close span {
    font-size: 18px;
}

.trx_addons_popup .custom-logo-link {
    text-align: center;
    display: block;
}

.trx_addons_popup .custom-logo-link img {
    max-width: 70%;
}

.trx_addons_login_content > p {
    text-align: center;
    margin: 10px 0 25px;
    font-size: 90%;
    line-height: 130%;
}

.trx_addons_login_content .sc_form_field {
    border: 1px solid #ccc;
    border-radius: 10px;
}

.trx_addons_login_content .sc_form_field input {
    border: 0;
}

.trx_addons_popup_form_field_remember {
    display: block;
    clear: both;
}

.trx_addons_popup_form_field_remember > a {
    display: block;
    text-align: right;
}

.trx_addons_popup_form_field_remember label {
    text-align: center;
    display: inline-block;
}

.trx_addons_popup_form_field_remember input[type="checkbox"] + label:before {
    top: -2px;
}

.trx_addons_popup_form_field_submit input {
    background: #63656A !important;
    border-radius: 5px;
    color: #fff !important;
    display: block !important;
    width: 100%;
}

.trx_addons_popup_form_field_submit input:hover {
    text-decoration: underline;
}

#trx_addons_login_popup .trx_addons_tabs_title {
    visibility: hidden;
}

body.logged-in .top_panel .elementor-widget-trx_sc_layouts_login {
    display: none !important;
}

.not-registered-skincare {
    background: #000;
    color: #fff;
    padding: 20px;
    font-size: 90%;
    line-height: 130%;
    margin: 20px 0 0 0;
}

.not-registered-skincare a {
    color: #fff;
}

.not-registered-skincare p {
    margin: 0;
}

/* ==========================================================================
   9. Navigation & Menu
   ========================================================================== */

.dce-nav-menu .sub-arrow:before {
    content: "";
    position: absolute;
    border: solid transparent;
    border-top-color: white;
    border-width: 11px;
    margin-left: 20px;
    top: 25px;
    z-index: 1;
}

.dce-nav-menu .highlighted .sub-arrow:before {
    border: solid transparent;
    border-bottom-color: white;
    border-width: 11px;
    top: 14px;
}

body .animatedoffcanvasmenu .dce-nav .dce-menu-aocm {
    z-index: 15000;
}

body #animatedoffcanvasmenu-2a39cb4 .dce-menu-aocm .dce-close {
    left: 0;
    top: 30px;
    right: 30px;
}

body #animatedoffcanvasmenu-2a39cb4 .dce-menu-aocm .dce-close .dce-quit-ics {
    top: 0;
    right: 0;
}

body #animatedoffcanvasmenu-2a39cb4 .dce-nav-menu {
    margin-top: 150px;
    padding: 1.5em;
}

.pharma_cart_menu {
    position: relative;
    top: -10px;
}

body.page-id-18471 header .sc_layouts_row_fixed_on {
    visibility: hidden;
    opacity: 0;
}

@media (min-width: 1280px) {
    .outlinemenu > a {
        border: 1px solid #63656A;
        padding: 10px 15px !important;
        position: relative !important;
        margin-top: -8px;
        border-radius: 5px;
    }
}

/* Mobile bottom menu */
@media (max-width: 767px) {
    .bottom-menu-for-mobile:not(.bottom-menu-for-mobile-open) > div {
        margin: 0px 0px 5px 0px !important;
    }

    .bottom-menu-for-mobile:not(.bottom-menu-for-mobile-open) .elementor-widget-wrap > *:nth-child(2),
    .bottom-menu-for-mobile:not(.bottom-menu-for-mobile-open) .elementor-widget-wrap > *:nth-child(3) {
        display: none;
    }

    .bottom-menu-for-mobile:before {
        content: "";
        position: absolute;
        border: solid transparent;
        border-top-color: white;
        border-width: 8px;
        margin-left: 20px;
        top: 15px;
        right: 25px;
        z-index: 1;
    }

    .bottom-menu-for-mobile.bottom-menu-for-mobile-open:before {
        border: solid transparent;
        border-bottom-color: white;
        border-width: 8px;
        top: 8px;
    }

    .elementor-element-bde2e21 > div > .elementor-column {
        width: 100% !important;
        float: none !important;
        clear: both !important;
    }
}

@media screen and (min-width: 1280px) and (max-width: 1320px) {
    .elementor-17862 .elementor-element.elementor-element-81f4f0a .elementor-nav-menu--main .elementor-item {
        margin-left: 10px;
        margin-right: 10px;
    }

    .elementor-element-81f4f0a {
        margin-left: 15px !important;
    }
}

/* ==========================================================================
   10. Newsletter Form
   ========================================================================== */

input.sib-COGNOME-area,
input.sib-NOME-area,
input.sib-email-area {
    width: 100%;
}

input.sib-default-btn[type="submit"] {
    border-width: 1px !important;
    margin-top: 30px;
    padding: 12px 15px;
}

.sib-email-area {
    margin-bottom: 15px;
}

#form-field-email {
    padding-left: 16px;
}

/* ==========================================================================
   11. Elementor Overrides
   ========================================================================== */

.elementor-tab-title {
    text-transform: uppercase;
    font-weight: 300 !important;
    border: 1px solid #ccc !important;
    font-size: 30px;
    min-width: 33.32%;
    text-align: center;
}

.elementor-tab-title.elementor-active {
    background: #F2F2F2;
}

body .elementor-19174 .elementor-element.elementor-element-8c390df {
    z-index: 800;
}

.elementor-element-76bf763 textarea {
    width: 230px;
    padding: 5px;
    border: 1px solid #ccc;
    margin: 8px 0 3px;
}

.sc_layouts_27177 .elementor-element-3a6e5ba .updated {
    display: none;
}

.sc_layouts_27177 .updated {
    background: #3f3f3f;
    color: #fff;
    font-weight: bold;
    padding: 20px;
    line-height: 20px;
    border-radius: 20px;
    margin-bottom: 20px;
}

.sc_layouts_27177 .updated p {
    margin: 0;
}

/* Badge show/hide */
.elementor-element.elementor-element-f82d5bd {
    display: none !important;
}

.elementor-element.elementor-element-f82d5bd.show {
    display: block !important;
}

@media (max-width: 1024px) {
    body:not(.rtl) .elementor-23827 .elementor-element.elementor-element-f82d5bd {
        display: none !important;
    }

    .sc_layouts_item .elementor-18527 .elementor-element.elementor-element-3bc611a {
        bottom: 0px !important;
    }

    .product_title.entry-title.elementor-heading-title.elementor-size-default {
        font-size: 21px !important;
    }

    .elementor-18697 .elementor-element.elementor-element-a2bcd7f > .elementor-widget-container,
    .elementor-18697 .elementor-element.elementor-element-047de04 > .elementor-widget-container,
    .elementor-18697 .elementor-element.elementor-element-dc3f8de > .elementor-widget-container {
        margin: 5px !important;
    }

    .elementor-18697 .elementor-element.elementor-element-fe039f9 > .elementor-element-populated.elementor-widget-wrap {
        padding: 20px 0px 20px 0px !important;
    }
}

@media screen and (max-width: 767px) {
    .sc_layouts_item .elementor-18527 .elementor-element.elementor-element-3bc611a {
        bottom: 10px !important;
    }

    .product_title.entry-title.elementor-heading-title.elementor-size-default {
        font-size: 20px !important;
    }

    .elementor-18697 .elementor-element.elementor-element-fe039f9 > .elementor-element-populated.elementor-widget-wrap {
        padding: 20px 0px 20px 0px !important;
    }

    .elementor-18697 .elementor-element.elementor-element-5246fec {
        height: 200px;
    }

    body:not(.rtl) .elementor-23827 .elementor-element.elementor-element-f82d5bd {
        display: none !important;
    }

    .elementor-18697 .elementor-element.elementor-element-a2bcd7f > .elementor-widget-container,
    .elementor-18697 .elementor-element.elementor-element-dc3f8de > .elementor-widget-container,
    .elementor-18697 .elementor-element.elementor-element-047de04 > .elementor-widget-container {
        margin: 8px !important;
    }
}

@media screen and (max-width: 462px) {
    .elementor-18514 .elementor-element.elementor-element-cd503d4 {
        margin-bottom: 0px !important;
    }
}

/* ==========================================================================
   12. Miscellaneous
   ========================================================================== */

.custom-alert-message {
    border: 1px solid #ccc;
    background: #fefefe;
    margin: 20px;
    padding: 20px;
    text-align: center;
    font-size: 150%;
    font-weight: 400;
}

.c_immediate_choose_error {
    color: red;
}
