#left-side-product-alert {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.08);
}

/* Product Image Hover */

.image-hover-effect {
    position: relative;
    overflow: hidden;
}

.product-hover-image {
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
}

.image-hover-effect:hover .product-hover-image {
    opacity: 1;
}

.live-circle-icon {
    animation: blink-1p5 1.5s infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

@keyframes blink-1p5 {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 1;
    }
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
    .blink {
        animation: none;
    }
}

.product-details-page .add-to-cart {
    transition: transform 0.3s ease-in-out;
}

.product-details-page .add-to-cart:hover {
    transform: scale(1.02, 1.1);
}

/* Image Gallery Viewer */


.img-zoom {
    cursor: grab;
}

.lightbox-modal {
    display: none;
    position: fixed;
    z-index: 1050;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    text-align: center;
    overflow: hidden;
}

.lightbox-modal[style*="display: block"],
.lightbox-modal[style*="display:block"] {
    display: block !important;
}

.lightbox-content,
.lightbox-modal img#lightboxImage {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: auto !important;
    height: auto !important;
    max-width: min(92vw, 1200px) !important;
    max-height: 82vh !important;
    margin: 0 !important;
    object-fit: contain !important;
    transform: translate(-50%, -50%) !important;
    transition: opacity 0.25s ease !important;
    cursor: default;
}

.main-slider .lightbox-source,
.main-slider .lightbox-item img {
    cursor: zoom-in !important;
}

.lightbox-toolbar button {
    font-size: 18px;
    padding: 5px 10px;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: white;
    border-radius: 5px;
}

.lightbox-close {
    font-size: 22px;
    background: rgba(0, 0, 0, 0.7);
}


.lightbox-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 32px;
    background: rgb(0 0 0 / 25%);
    color: white;
    border: none;
    cursor: pointer;
    border-radius: 50%;
    z-index: 1100;
    transition: background 0.3s ease;
}

.lightbox-arrow:hover {
    background: rgba(0, 0, 0, 0.8);
}

.lightbox-arrow.prev {
    left: 20px;
}

.lightbox-arrow.next {
    right: 20px;
}

.lightbox-toolbar {
    position: absolute;
    top: 10px;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    /* left + right */
    align-items: center;
    padding: 0 15px;
    z-index: 1100;
}

.toolbar-left {
    color: white;
    font-size: 16px;
    font-weight: bold;
}

.toolbar-right button {
    margin-left: 4px;
    font-size: 18px;
    padding: 5px 10px;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: white;
    border-radius: 5px;
    cursor: pointer;
}

.toolbar-right button:hover {
    background: rgba(0, 0, 0, 0.8);
}


.lightbox-modal img {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: auto !important;
    height: auto !important;
    max-width: min(92vw, 1200px) !important;
    max-height: 82vh !important;
    margin: 0 !important;
    object-fit: contain !important;
    transform: translate(-50%, -50%) !important;
    transition: opacity 0.25s ease !important;
}

/* Expand Icon */
.carousel-box {
    position: relative;
    overflow: visible;
}

/* Custom hober effect on btn */
.custom-hov-btn:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

.custom-hov-btn:active {
    transform: translateY(1px);
}

.border-radius-10px {
    border-radius: 10px;
}

.pb-26px {
    padding-bottom: 1.625rem;
}

.py-19px {
    padding-top: 1.1875rem;
    padding-bottom: 1.1875rem;
}

.py-32px {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.pt-32px {
    padding-top: 2rem;
}

.pb-32px {
    padding-bottom: 2rem;
}

.mb-32px {
    margin-bottom: 2rem;
}

.my-32px {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* Extra small devices (xs) <576px */
@media (max-width: 575.98px) {
    .pb-26px {
        padding-bottom: 1rem !important;
    }

    .py-19px {
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }

    .py-32px {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .pt-32px {
        padding-top: 1rem !important;
    }

    .pb-32px {
        padding-bottom: 1rem !important;
    }

    .mb-32px {
        margin-bottom: 1rem !important;
    }

    .my-32px {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
}

/* Small devices (sm) ≥576px */
@media (min-width: 576px) and (max-width: 767.98px) {
    .pb-26px {
        padding-bottom: 1.25rem !important;
    }

    .py-19px {
        padding-top: 0.875rem !important;
        padding-bottom: 0.875rem !important;
    }

    .py-32px {
        padding-top: 1.25rem !important;
        padding-bottom: 1.25rem !important;
    }

    .pt-32px {
        padding-top: 1.25rem !important;
    }

    .pb-32px {
        padding-bottom: 1.25rem !important;
    }

    .mb-32px {
        margin-bottom: 1.25rem !important;
    }

    .my-32px {
        margin-top: 1.25rem !important;
        margin-bottom: 1.25rem !important;
    }
}

/* Medium devices (md) ≥768px */
@media (min-width: 768px) and (max-width: 991.98px) {
    .pb-26px {
        padding-bottom: 1.5rem !important;
    }

    .py-19px {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-32px {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .pt-32px {
        padding-top: 1.5rem !important;
    }

    .pb-32px {
        padding-bottom: 1.5rem !important;
    }

    .mb-32px {
        margin-bottom: 1.5rem !important;
    }

    .my-32px {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
}

/* Large devices (lg) ≥992px */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .pb-26px {
        padding-bottom: 1.625rem !important;
    }

    .py-19px {
        padding-top: 1.1875rem !important;
        padding-bottom: 1.1875rem !important;
    }

    .py-32px {
        padding-top: 1.75rem !important;
        padding-bottom: 1.75rem !important;
    }

    .pt-32px {
        padding-top: 1.75rem !important;
    }

    .pb-32px {
        padding-bottom: 1.75rem !important;
    }

    .mb-32px {
        margin-bottom: 1.75rem !important;
    }

    .my-32px {
        margin-top: 1.75rem !important;
        margin-bottom: 1.75rem !important;
    }
}

/* Extra large devices (xl) ≥1200px */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .pb-26px {
        padding-bottom: 1.75rem !important;
    }

    .py-19px {
        padding-top: 1.25rem !important;
        padding-bottom: 1.25rem !important;
    }

    .py-32px {
        padding-top: 1.875rem !important;
        padding-bottom: 1.875rem !important;
    }

    .pt-32px {
        padding-top: 1.875rem !important;
    }

    .pb-32px {
        padding-bottom: 1.875rem !important;
    }

    .mb-32px {
        margin-bottom: 1.875rem !important;
    }

    .my-32px {
        margin-top: 1.875rem !important;
        margin-bottom: 1.875rem !important;
    }
}

/* Extra extra large devices (xxl) ≥1400px */
@media (min-width: 1400px) {
    .pb-26px {
        padding-bottom: 1.625rem !important;
    }

    .py-19px {
        padding-top: 1.1875rem !important;
        padding-bottom: 1.1875rem !important;
    }

    .py-32px {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    /* max 2rem */
    .pt-32px {
        padding-top: 2rem !important;
    }

    .pb-32px {
        padding-bottom: 2rem !important;
    }

    .mb-32px {
        margin-bottom: 2rem !important;
    }

    .my-32px {
        margin-top: 2rem !important;
        margin-bottom: 2rem !important;
    }
}



/*---All Product Card,Table Start---*/
.table-tabs-container {
    padding-top: 10px;
}



.add-new-btn {
    padding: 13px 40px 13px 32px;
}

.label-text {
    transition: color .4s ease;
    white-space: nowrap;
}

.plus-icon-container {
    transition: width .6s ease;
}

.add-new-btn:hover .plus-icon-container {
    width: 100%;
}

.add-new-btn:hover .label-text {
    color: var(--white) !important;
}

.add-new-btn:hover #plus-icon {
    right: 30px;
}

#plus-icon {
    position: absolute;
    right: 13px;
    transition: all .6s ease;
}

.add-new-btn:hover #filter-icon {
    right: 24px;
}

#filter-icon {
    position: absolute;
    right: 10px;
    transition: all .6s ease;
}


.table-nav-tabs {
    gap: 15px;
}

.table-tabs-container .nav-tabs .nav-item {
    margin-bottom: 0 !important;
}

.table-tabs-container .nav-tabs .nav-link {
    border: none !important;
    border-bottom: 2px solid transparent !important;
    color: var(--gray);
    margin-right: 32px;
    background-color: transparent;
    outline: none !important;
    box-shadow: none !important;
    transition: all .4s ease;
}

.table-tabs-container .nav-tabs .nav-link:hover {
    color: var(--blue);
}

.table-tabs-container {
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    scroll-behavior: smooth;
}

.table-tabs-container .nav-tabs {
    display: inline-flex;
    flex-wrap: nowrap;
}

.table-tabs-container::-webkit-scrollbar {
    height: 2px;
}

.table-tabs-container::-webkit-scrollbar-thumb {
    background-color: var(--light);
    border-radius: 10px;
}


.table-tabs-container .nav-tabs .nav-link.active {
    color: var(--blue);
    border: none !important;
    border-bottom: 2px solid var(--blue) !important;
    background-color: transparent;
    outline: none !important;
    box-shadow: none !important;
}

.tab-filter-bar .input-group {
    transition: all .4s ease;
}

.tab-filter-bar .input-group:hover {
    border: 1px solid color-mix(in srgb, var(--blue), transparent 70%) !important;
    background-color: var(--white) !important;
}

.tab-filter-bar .input-group:focus-within {
    border: 1px solid var(--blue) !important;
    background-color: var(--white) !important;
}

.tab-filter-bar .dropdown button {
    background-color: var(--light);
}

.tab-filter-bar .dropdown button:focus {
    border: 1px solid var(--blue);
}

.tab-filter-bar .dropdown-menu {
    border-radius: 4px;
    z-index: 3;
}

/* .filter-filter-tab-content .dropdown-menu .dropdown-item{
    border-bottom: 1px solid var(--light);
}
.filter-filter-tab-content .dropdown-menu .dropdown-item:last-child{
    border-bottom: none;
} */
.tab-filter-bar .dropdown-menu .dropdown-item:hover {
    color: var(--blue);
}

.tab-filter-bar.dropdown-menu .form-check {
    cursor: pointer;
    /* border-bottom: 1px solid var(--light); */
    transition: all .4s ease;
}

.tab-filter-bar .dropdown-menu .form-check .form-check-label {
    color: var(--gray);
    cursor: pointer;
}

.tab-filter-bar .dropdown-menu .form-check .input-check {
    width: 16px;
    height: 16px;
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    border: 1px solid var(--soft-white);
    border-radius: 4px;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
}

.tab-filter-bar .dropdown-menu .form-check:last-child {
    border-bottom: none;
}

.tab-filter-bar .dropdown-menu .form-check .input-check:checked {
    background-color: var(--dark);
    border-color: var(--dark);
}

.tab-filter-bar .dropdown-menu .form-check .input-check:checked::after {
    content: url('../img/dropdown-input-checkmark.svg');
    color: var(--white);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 3px;
    margin: auto;
    line-height: 13px;
}

.tab-filter-bar .dropdown-menu .input-check:checked[type="checkbox"]+label {
    color: var(--blue) !important;
}

.filter-filter-tab-content table tr td .rattings {
    gap: 6px;
}

.filter-filter-tab-content table tr td .stock-text:hover {
    color: var(--white);
}

.filter-filter-tab-content .table-options .hov-text-blue:hover span {
    transition: all .4s ease;
}

.filter-filter-tab-content .table-options .hov-text-blue:hover span {
    color: var(--blue) !important;
}

.filter-tab-content .table-options .hov-text-blue:hover span svg path {
    fill: var(--blue);
}

/* .filter-tab-content .table-options a{
    border-bottom: 1px solid var(--light);
}
.filter-tab-content .table-options a:last-child{
    border-bottom: none;
} */
.inner-select button {
    border: 1px solid var(--light) !important;
}

.inner-select .form-control:focus {
    background-color: transparent !important;
}

.filter-tab-content .table th {
    padding-right: 0;
    padding-left: 0;
}

.filter-tab-content .table td {
    padding-left: 0;
    padding-right: 0;
    border-top: 1px dashed #dee2e6;
}

.filter-tab-content .table td .td-see-more {
    transition: all .4s ease;
}

/* .filter-tab-content .table td .td-see-more:hover {
    text-decoration: underline;
} */

.filter-tab-content .table td .td-see-more {
    transition: all 2s ease;
    position: relative;
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
}

.filter-tab-content .table td .td-see-more::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 98%;
    height: 2px;
    background-color: var(--blue);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.3s ease;
}

.filter-tab-content .table td .td-see-more:hover::after {
    transform: scaleX(1);
    transform-origin: left;
}


/*---All Product Card,Table End---*/



/* Right Offcanvas wrapper Start */
#rightOffcanvas {
    box-shadow: rgba(50, 50, 93, 0.16) 0px 0px 40px;
    transition: right 0.4s ease;
    min-height: 100vh;
}

.right-offcanvas-sm {
    width: 240px;
    right: -240px;
}

.right-offcanvas-md {
    width: 450px;
    right: -450px;
}

.right-offcanvas-lg {
    width: 648px;
    right: -648px;
}

.body-no-scroll {
    overflow: hidden;
}

@media (min-width: 320px) and (max-width: 575px) {
    #rightOffcanvas {
        right: -90%;
        width: 90% !important;
    }
}

#closeRightOffcanvas:hover svg path {
    fill: var(--hov-primary);
}

#rightOffcanvas .right-offcanvas-body {
    /* padding-right: 12px; */
    padding-bottom: 120px;
    width: 100%;
    overflow-y: scroll;
}

#rightOffcanvas.active {
    right: 0;
}

#rightOffcanvasOverlay {
    background: rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(1px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 1040;
    cursor: url('../img/cursor-cross.svg') 16 16, crosshair;
}

#rightOffcanvasOverlay.active {
    opacity: 1;
    visibility: visible;
}

#rightOffcanvas .right-offcanvas-body .brand-categories {
    border-width: 3px !important;
}

#rightOffcanvas .right-offcanvas-body .right-offcanvas-table thead tr th {
    border-top: 0;
    border-bottom: 1px solid var(--soft-secondary);
    border-left: 0;
    border-right: 0;
}

#rightOffcanvas .right-offcanvas-body .right-offcanvas-table {
    margin-bottom: 150px;
}

#rightOffcanvas .right-offcanvas-body .right-offcanvas-table tbody tr td {
    border-top: 1px dashed var(--soft-secondary);
    border-bottom: 0;
    border-right: 0;
    border-left: 0;
}

#rightOffcanvas .right-offcanvas-body .right-offcanvas-table tbody {
    border-bottom: 1px solid var(--soft-secondary);
}

.stock-input {
    border: 1px solid var(--soft-secondary);
    max-width: 100px;
}

.stock-input:focus {
    border: 1px solid var(--hov-primary);
}

.right-offcavas-footer {
    border-top: 1px solid var(--light);
}

.right-offcavas-footer .footer-btn button {
    width: 100%;
    border-radius: 8px;
    border: 2px solid var(--soft-secondary);
    background-color: var(--white);
    transition: all .6s ease;
}

.right-offcavas-footer .footer-btn button.cancel {
    color: var(--red);
}

.right-offcavas-footer .footer-btn button.cancel:hover {
    background-color: var(--red);
    border-color: var(--red);
    color: white;
}

.right-offcavas-footer .footer-btn button.save {
    color: var(--teal);
}

.right-offcavas-footer .footer-btn button.save:hover {
    background-color: var(--green);
    border-color: var(--green);
    color: white;
}

/* Right Offcanvas wrapper End */



/* Delete Popup Modal Start */
#back-btn:hover {
    border-color: var(--green) !important;
    background-color: var(--green) !important;
    color: var(--white) !important;
}

#proceed-btn:hover {
    border-color: var(--red) !important;
    background-color: var(--red) !important;
    color: var(--white) !important;
}

#conform-yes-btn:hover {
    border-color: var(--red) !important;
    background-color: var(--red) !important;
    color: var(--white) !important;
}

#delete-link:hover {
    border-color: var(--red) !important;
    background-color: var(--red) !important;
    color: var(--white) !important;
}

.deleteModal {
    cursor: url('../img/cursor-cross.svg') 16 16, crosshair;
}

.deleteModal .modal-content {
    cursor: default;
}

.deleteModal .form-check .input-check {
    width: 16px;
    height: 16px;
    appearance: none;
    -webkit-appearance: none;
    background-color: var(--soft-light);
    border: 1px solid var(--soft-light);
    border-radius: 4px;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
}

.deleteModal .form-check .input-check:checked {
    background-color: var(--dark);
    border-color: var(--dark);
}

.deleteModal .form-check .input-check:checked::after {
    content: url('../img/dropdown-input-checkmark.svg');
    color: var(--white);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 3px;
    margin: auto;
    line-height: 13px;
}

.deleteModal .input-check:checked[type="checkbox"]+label {
    color: var(--blue) !important;
}

.deleteModal .input-check:checked[type="checkbox"]+label span {
    color: var(--green) !important;
}

.confirmDeleteModal .modal-content .modal-body p a {
    text-decoration: underline;
}

.confirmDeleteModal {
    cursor: url('../img/cursor-cross.svg') 16 16, crosshair;
}

.confirmDeleteModal .modal-content {
    cursor: default;
}

/* Delete Popup Modal End */


/* auction-bit_btn */
.custom-bit-btn {
    padding: 0.416rem 1rem;
    font-size: 0.8125rem;
}

@media (max-width: 575px) {
    .custom-bit-btn {
        padding: .25rem !important;
        font-size: .75rem;
    }
}

/* auction-bit_btn end */

.toggle-btn {
    color: var(--primary-color);
    font-size: var(--fs-12);
}

.footer-text-control {
    height: auto
}

@media (min-width: 320px) and (max-width: 1199.98px) {
    .footer-text-control {
        max-height: 80px;
        overflow: hidden;
        transition: max-height 0.7s ease;
    }

}


/*======  MY TABLE START =====*/
#aiz-data-table .toggle-plus-minus-btn {
    display: none;
    user-select: none;
    line-height: 17px;
    border-radius: 50%;
    width: 17px;
    height: 17px;
    cursor: pointer;
}

/*Hover & Focus */
.hsn-code:hover,
.gst-value:hover {
    border: 2px solid var(--light);
    background-color: transparent !important;
}

.hsn-code:focus-within,
.gst-value:focus-within {
    border: 2px solid var(--blue) !important;
}

.hsn-code,
.gst-value {
    width: 90%;
}

@media (max-width: 1399px) {

    .hsn-code,
    .gst-value {
        width: 100%;
    }
}

.hsn-code #pen-icon,
.gst-value #pen-icon,
.hsn-code button span,
.gst-value button span,
.hsn-message,
.gst-message {
    display: none;
}

/* Hover: Show pen */
.hsn-code:hover #pen-icon,
.gst-value:hover #pen-icon {
    display: block !important;
    margin-top: 3px;
}

/* Focus: Hide pen, show button & message */
.hsn-code:focus-within #pen-icon,
.gst-value:focus-within #pen-icon {
    display: none !important;
}

.hsn-code:focus-within button span,
.gst-value:focus-within button span,
.hsn-code:focus-within .hsn-message,
.gst-value:focus-within .gst-message {
    display: block !important;
}

/* hide-s */
@media (max-width: 375px) {
    .hide-s {
        display: none !important;
    }
}

/* hide-xs */
@media (max-width: 575px) {
    .hide-xs {
        display: none !important;
    }
}

/* hide-sm */
@media (max-width: 767px) {
    .hide-sm {
        display: none !important;
    }
}

/* hide-md */
@media (max-width: 991px) {
    .hide-md {
        display: none !important;
    }
}

/* hide-lg */
@media (max-width: 1199px) {
    .hide-lg {
        display: none !important;
    }
}

/* hide-xl */
@media (max-width: 1399px) {
    .hide-xl {
        display: none !important;
    }
}

/* hide-xxl */
@media (max-width: 1500px) {
    .hide-xxl {
        display: none !important;
    }
}

/* hide-6xl */
@media (max-width: 1550px) {
    .hide-6xl {
        display: none !important;
    }
}

/* hide-3xl */
@media (max-width: 1750px) {
    .hide-3xl {
        display: none !important;
    }
}

/* hide-4xl */
@media (max-width: 1900px) {
    .hide-4xl {
        display: none !important;
    }
}

/* hide-5xl */
@media (max-width: 2050px) {
    .hide-5xl {
        display: none !important;
    }
}

#aiz-data-table .data-row {
    border-top: 1px dashed var(--soft-light);
    border-bottom: 0 !important;
}

#aiz-data-table .data-row:last-of-type {
    border-bottom: 0 !important;
}

/* #aiz-data-table .data-row:first-of-type {
    border-bottom: 0 !important;
} */

#aiz-data-table .data-row td {
    border: 0 !important;
}



/* Details row */
#aiz-data-table .details-row {
    display: none;
}

#aiz-data-table .details-row td {
    background-color: var(--white);
    padding: 15px 0px !important;
}

#aiz-data-table .detail-item {
    border-bottom: 1px dashed var(--soft-light);
}

#aiz-data-table .detail-item:last-of-type {
    border-bottom: none !important;
}

#aiz-data-table thead th {
    border-bottom: 1px solid var(--soft-light);
    border-top: 0 !important;
}

/*======  MY TABLE END =====*/

#shippingTab .nav-item .nav-link.active {
    color: var(--dark) !important;
}



.choose-address {
    margin-top: -45px;
}

@media (max-width: 700px) {
    .choose-address {
        margin-top: 0 !important;
        justify-content: start !important;
    }
}

#bulk-action-modal {
    z-index: 1050 !important;
}


#request-pickup-btn {
    margin-top: 26px;
    border: 1px solid #ffc700;
}

/* ====================== Product Details Page Start ====================== */
.product-details .product-slider-wrapper {
    width: 100%;
}

.product-details .product-slider-wrapper .thumb-container {
    width: 100%;
    height: 100%;
    max-height: 100%;
}

@media (min-width: 768px) {

    .product-details .product-slider-wrapper .thumb-container,
    .pyloherb-pdp .thumb-container,
    .thumb-container {
        position: absolute !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 15px !important;
        right: 15px !important;
        width: calc(100% - 30px) !important;
        height: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
    }

    .thumb-slider {
        width: 100% !important;
        height: 100% !important;
    }

    .thumb-container.has-buttons .thumb-slider,
    .thumb-container:has(.thumb-slider-btn) .thumb-slider {
        height: calc(100% - 34px) !important;
    }
}

.thumb-slider .swiper-slide {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    max-height: unset !important;
    flex-shrink: 0;
    transition: all 0.4s ease;
}

.thumb-slider .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid var(--blue) !important;
}

.thumb-slider .swiper-slide img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover !important;
    object-position: center;
    transition: all 0.4s ease;
}

.thumb-slider .swiper-slide:hover img {
    transform: scale(1.03);
    opacity: 0.7;
}

.thumb-slider .swiper-slide:hover .la-play-circle {
    color: var(--dark) !important;
}

.thumb-btn-up,
.thumb-btn-down {
    flex: 1;
    height: 30px;
    z-index: 20;
    background-color: #f7f7f7 !important;
}

.thumb-btn-up:hover,
.thumb-btn-down:hover {
    background-color: #f1f1f1 !important;
}

.thumb-btn-up.disabled svg path,
.thumb-btn-down.disabled svg path {
    opacity: 0.6 !important;
}

.thumb-btn-up.disabled,
.thumb-btn-down.disabled {
    cursor: not-allowed !important;
}



/* .thumb-btn-up {
    border-bottom-left-radius: 8px;
}

.thumb-btn-down {
    border-bottom-right-radius: 8px;
} */

/*Product Main Slider*/
.main-slider {
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
}

.main-slider .swiper-wrapper {
    height: 100%;
}

.main-slider .swiper-slide {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
}

.main-slider .swiper-slide img {
    width: 100%;
    height: 100%;
    z-index: 2;
    object-fit: contain;
    object-position: center;
    cursor: zoom-in;
}


/* Swipper Button */
.main-slider .swiper-button-next,
.main-slider .swiper-button-prev {
    width: 48px;
    height: 48px;
    background: var(--white);
    border-radius: 50%;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
    color: var(--dark) !important;
    transition: all 0.4s ease;
}

.main-slider .swiper-button-next:hover,
.main-slider .swiper-button-prev:hover {
    background-color: var(--soft-light);
}

.main-slider .swiper-button-next:after,
.main-slider .swiper-button-prev:after {
    font-size: 15px;
    font-weight: 600;
}

.main-slider .swiper-button-next {
    right: -60px !important;
    transition: all .4s ease;
}

.main-slider:hover .swiper-button-next {
    right: 15px !important;
}

.main-slider .swiper-button-prev {
    left: -60px !important;
    transition: all .4s ease;
}

.main-slider:hover .swiper-button-prev {
    left: 15px !important;
}

.main-slider .swiper-button-next:after {
    margin-left: 2px;
}

.main-slider .swiper-button-prev:after {
    margin-right: 2px;
}

.main-slider .swiper-button-prev.swiper-button-disabled,
.main-slider .swiper-button-next.swiper-button-disabled {
    cursor: not-allowed !important;
    pointer-events: visible;
}

.product-details .right-side-cws button span.compare,
.product-details .right-side-cws button span.wishlist,
.product-details .right-side-cws button span.share {
    margin-top: 2px;
}

.product-details .rating {
    gap: 5px;
    margin-top: -3px;
}

.product-details .rating-card .rating {
    gap: 4px;
    margin-top: 2px !important;
}

.product-details .total-rating-count {
    margin-top: -5px;
}

.sku-copy-btn svg {
    transition: all 0.4s ease;
}

.sku-copy-btn:hover svg path {
    fill: var(--blue);
}

.people-view svg {
    width: 100%;
    height: 100%;
}

.people-view svg path {
    animation: bluePulse 2s infinite alternate;
}

.order-via-whatsapp a {
    color: var(--green) !important;
}



@keyframes bluePulse {
    0% {
        fill: #D1DBE5;
    }

    100% {
        fill: var(--blue);
    }
}

/* Flash Sale Box */
.flash-sale {
    background-color: var(--red);
    animation: blinkBg 2s infinite alternate;
    transition: opacity 2s ease, height 0.5s ease, padding 0.5s ease;
}

/* Blink animation */
@keyframes blinkBg {
    0% {
        background-color: var(--red);
    }

    25% {
        background-color: var(--orange);
    }

    50% {
        background-color: var(--red);
    }

    75% {
        background-color: var(--orange);
    }

    100% {
        background-color: var(--red);
    }
}

/* Hide flash sale when expired */
.flash-sale.expired {
    opacity: 0;
    pointer-events: none;
    height: 0;
    padding: 0;
    margin: 0 !important;
    overflow: hidden;
}

.discount-badge {
    background-color: var(--orange);
}

.dec-btn,
.inc-btn {
    border: 1px solid var(--light);
    background-color: var(--light);
    transition: all 0.4s ease;
}

.inc-btn:hover,
.dec-btn:hover {
    background-color: transparent !important;
}

.inc-btn:hover svg rect,
.dec-btn:hover svg rect {
    fill: var(--dark) !important;
}

.product-variant {
    height: auto;
    overflow: hidden;
    transition: height .35s ease;
}

.product-variant button .dot {
    transition: all .4s ease;
}

.product-variant .more-toggle-btn {
    background-color: #fafafc !important;
}

.product-variant .more-toggle-btn:hover {
    background-color: var(--light) !important;
}

.product-variant button:hover .dot {
    background-color: var(--blue) !important;
}

.product-variant.collapsed .variant-item {
    border-top: 1px dashed #DFDFE6 !important;
}

.product-variant.collapsed .variant-item-none {
    display: none;
    border-top: 1px dashed #DFDFE6 !important;
}

/* @keyframes variantIconBlink {
  0% {
    fill: var(--light-gray); 
  }
  50% {
    fill: var(--green); 
  }
  100% {
    fill: var(--light-gray);
  }
}

.selected-variant-icon .icon-fill {
  animation: variantIconBlink 1.5s ease-in-out infinite;
} */





/* .product-variant  .dot { display: inline-block; }
.product-variant  .dot.hidden { display: none; }
 */

.product-variant .variant-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
}

.product-variant .variant-wrapper .variant-item-select {
    transition: all 0.3s ease;
    user-select: none;
    padding-top: 4px;
    padding-bottom: 4px;
}

.product-variant .aiz-megabox .aiz-megabox-elem {
    outline: 1px solid transparent;
}

.product-variant .aiz-megabox>input:checked~.aiz-megabox-elem {
    outline-color: var(--blue);
}

.product-variant .aiz-megabox>input:checked~.aiz-megabox-elem,
.aiz-megabox>input:checked~.aiz-megabox-elem {
    border-width: 1px !important;
}

.bg-orange {
    background-color: var(--orange);
}

.bg-cyen {
    background-color: #027f9d;
}

.product-variant .variant-wrapper .variant-item-select input {
    display: none;
}

.product-variant .variant-wrapper .variant-item-select.active {
    border: 2px solid var(--blue) !important;
    border-width: 2px !important;
}

.warranty-section .yrs {
    margin-top: -6px;
}

.warranty-section ul li {
    line-height: 32px !important;
}

.warranty-section ul li span.warranty-text {
    margin-top: 2px;
}

#login_modal .modal-content {
    border-radius: 8px !important;
}

#warranty-note-modal .modal-content {
    border-radius: 8px !important;
}

#addToCart {
    z-index: 1050 !important;
}

#addToCart .modal-content {
    border-radius: 8px !important;
}

#refund-note-modal .modal-content {
    border-radius: 8px !important;
}

#chat_modal .modal-content {
    border-radius: 8px !important;
}

#social-share-modal .modal-content {
    border-radius: 8px !important;
}

#social-share-modal .modal-header .link-circle-box {
    margin-top: -50px;
}

#social-share-modal .modal-header .close {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

#social-share-modal .modal-body .copy-link-btn svg path {
    transition: all .4s ease;
}

#social-share-modal .modal-body .copy-link-btn:hover svg path {
    fill: var(--blue) !important;
}

#social-share-modal .modal-body .share-link {
    gap: 16px;
}

#social-share-modal .modal-body .share-link:hover span {
    color: var(--dark) !important;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 16px;
    column-gap: 24px;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares .jssocials-share {
    margin: 0 !important;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares .jssocials-share-link {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all .4s ease;
}

#bid_for_detail_product .modal-content {
    border-radius: 8px !important;
}

/*Product Details Nav Tabs*/
/* .product-details-nav-tab .nav-tab-header {
    position: sticky;
    top: 0;
    z-index: 1045;
} */

.product-details-nav-tab .nav-tab-header ul li:last-child {
    margin-right: 0 !important;
}

.product-details-nav-tab .nav-tab-header .tab-scroll-wrapper {
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
    border-bottom: 1px solid var(--light-gray);
}

.product-details-nav-tab .nav-tab-header .tab-scroll-wrapper::-webkit-scrollbar {
    display: none;
}

.product-details-nav-tab .nav-tab-header .tab-underline {
    position: absolute;
    bottom: 0;
    border: 2px solid var(--blue);
    transition: all 0.35s ease;
}

.product-details-nav-tab .container {
    gap: 32px;
}


/* Reviews & Ratings Section */
.reviews-ratings-container .ratings {
    gap: 5px;
}

.reviews-ratings-container button:hover {
    border-color: var(--orange) !important;
}

.reviews-ratings-container button {
    gap: 10px;
}

.reviews-ratings-container .filter-rating-wrapper {
    gap: 12px;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select {
    transition: all 0.3s ease;
    user-select: none;
    flex-shrink: 0;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select input {
    display: none;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select:hover {
    border: 1px solid var(--dark) !important;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select.active {
    background-color: var(--dark) !important;
    border: 1px solid var(--dark) !important;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select.active svg path {
    fill: var(--white) !important;
}

.reviews-ratings-container .filter-rating-wrapper .rating-point-select.active span {
    color: var(--white) !important;
}

.reviews-ratings-container .custom-select-wrapper select:focus {
    border: 1px solid var(--orange) !important;
}

.reviews-ratings-container .see-more-btn svg path {
    transition: all .4s ease;
}

.reviews-ratings-container .see-more-btn:hover svg path {
    fill: var(--white) !important;
}


.reviews-ratings-container .product-variation-wrapper {
    gap: 16px;
}

.reviews-ratings-container .rating-card-wrapper .review-item {
    border-bottom: 1px solid var(--light-gray) !important;
}

.reviews-ratings-container .rating-card-wrapper .review-item:last-child {
    border: none !important;
}

.reviews-ratings-container .product-variation-wrapper .product-variation-card:hover {
    border-color: var(--blue) !important;
}

.reviews-ratings-container button svg {
    transition: all 0.6s ease;
}

.reviews-ratings-container button.see-more:hover svg path {
    fill: var(--white) !important;
}

/*Product Queries*/
.product-queries-container .product-queries:focus-within {
    border-color: var(--orange) !important;
}

.product-queries-container .product-queries textarea::-webkit-resizer {
    background-color: var(--white) !important;
}

.product-queries-container .other-question {
    gap: 20px;
}

.product-queries-container .other-question:last-child {
    gap: 20px;
}

.product-queries-container .other-question .single-question {
    gap: 23px;
}

@media (max-width: 767px) {
    .thumb-container {
        height: 64px !important;
        margin-top: 10px;
    }

    .thumb-slider .swiper-slide {
        width: 64px !important;
        height: 64px !important;
        aspect-ratio: 1 / 1 !important;
        margin-right: 8px;
    }

    .thumb-btn-up,
    .thumb-btn-down {
        display: none !important;
    }

    .main-slider {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }

    .main-slider .swiper-button-next {
        right: 15px !important;
    }

    .main-slider .swiper-button-prev {
        left: 15px !important;
    }

}

@media (max-width: 991px) {
    .main-slider .swiper-button-next {
        right: 15px !important;
    }

    .main-slider .swiper-button-prev {
        left: 15px !important;
    }
}

@media (min-width: 992px) {
    .product-details>.container>.pt-30px>.row>.col-lg-6:first-child {
        position: static;
    }

    .product-slider-wrapper {
        position: static !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        z-index: auto;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .product-details .product-slider-wrapper .thumb-container {
        height: 100%;
    }

    .thumb-slider .swiper-slide {
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
    }

    .main-slider {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }

    .main-slider .swiper-button-next {
        right: 15px !important;
    }

    .main-slider .swiper-button-prev {
        left: 15px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1499px) {
    .thumb-slider .swiper-slide {
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
    }
}

/* ====================== Product Details Page End ====================== */


/* seller customer panel */

body.verification-lock {
    overflow: hidden;
}

body.verification-lock *:not(.modal):not(.modal *) {
    pointer-events: none;
    filter: blur(5px);
    user-select: none;
}

.customer-verification-form .custom-file-label::after,
.seller-verification-form .custom-file-label::after {
    display: none !important;
}



/* pos */

.custom-height-group .btn {
    height: 42.19px !important;
    line-height: 30px;
}

.btn-outline-yellow {
    color: #FCBA01;
    border: 1px solid #DFDFE6
}

.btn-outline-yellow:hover,
.btn-outline-yellow.active {
    background-color: #FCBA01;
    color: white;
}

.btn-outline-facebook {
    color: #003ABA;
    border: 1px solid #DFDFE6
}

.btn-outline-facebook:hover,
.btn-outline-facebook.active {
    background-color: #003ABA;
    color: white;
}

.btn-outline-whatsapp {
    color: #2EB942;
    border: 1px solid #DFDFE6
}

.btn-outline-whatsapp:hover,
.btn-outline-whatsapp.active {
    background-color: #2EB942;
    color: white;
}

.customer-toggle {
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}

.customer-toggle i {
    font-size: 1.5rem;
    line-height: 1;
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .fs-md-36 {
        font-size: 36px !important;
    }

    .fs-md-20 {
        font-size: 20px !important;
    }

    .fs-md-16 {
        font-size: 16px !important;
    }
}

.coupon-svg-height-mobile {
    height: 60px !important;
}

.pos-list {
    padding: .15rem .25rem !important;
}

#address_walkin::placeholder {
    font-size: .8125rem;
}

.margin-top {
    margin-top: 10px !important;
}

.pos-filter-section .bootstrap-select .filter-option-inner-inner,
.pos-filter-section .bootstrap-select .dropdown-menu.inner>li>a {
    font-size: 12px !important;
}

.pos-filter-section textarea::placeholder,
.pos-filter-section .form-control::placeholder {
    font-size: 12px !important;
}

.pos-filter-section .bootstrap-select.form-control {
    width: 95% !important;
    max-width: 95% !important;
}

.custom-plc-size .bootstrap-select .filter-option-inner-inner,
.custom-plc-size .bootstrap-select .dropdown-menu.inner>li>a {
    font-size: 12px !important;
    padding-top: 4px !important;
}

.custom-plc-size textarea::placeholder,
.custom-plc-size .form-control::placeholder {
    font-size: 12px !important;
}

@media (min-width: 768px) and (max-width: 1200px) {
    .cl-md-w {
        order: 2 !important;
        width: 100% !important;
        margin-top: 20px;
    }
}

.pos-up {
    padding-top: 1rem;
}


/* Social Share Modal */
#social-share-modal .modal-content {
    border-radius: 8px !important;
}

#social-share-modal .modal-header .link-circle-box {
    margin-top: -50px;
}

#social-share-modal .modal-header .close {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

#social-share-modal .modal-body .copy-link-btn svg path {
    transition: all .4s ease;
}

#social-share-modal .modal-body .copy-link-btn:hover svg path {
    fill: var(--blue) !important;
}

#social-share-modal .modal-body .share-link {
    gap: 16px;
}

#social-share-modal .modal-body .share-link:hover span {
    color: var(--dark) !important;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 16px;
    column-gap: 24px;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares .jssocials-share {
    margin: 0 !important;
}

#social-share-modal .modal-body .aiz-share .jssocials-shares .jssocials-share-link {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all .4s ease;
}

/* add to cart */

.adding {
    pointer-events: none;
    opacity: .7;
}

.added-success {
    background-color: #28a745 !important;
    color: #fff !important;
}

/* circle Arrow icon */
.view-more-slide-btn {
    overflow: hidden;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;
    transition: width 0.3s ease-in-out;
    width: 32px !important;
    height: 32px !important;
    white-space: nowrap;
    border-radius: 20px;
    background-color: #000;
    color: #fff;
    padding: 0;
}

.view-more-slide-btn .text {
    opacity: 0;
    overflow: hidden;
    transition: all 0.3s ease;
}

.view-more-slide-btn:hover .text {
    opacity: 1;
    margin-right: 0.1rem;
    display: inline-block;
}

.view-more-slide-btn:hover {
    width: 90px !important;
    justify-content: space-between;
    padding-left: 10px;
    padding-right: 10px;
}

.view-more-slide-btn:active .text {
    text-decoration: underline;
}

.view-more-slide-btn i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;
}

.view-more-slide-btn:hover i {
    left: 75%;
}

/* minimum height */
.min-h-200px {
    min-height: 200px;
}


.list-group-item {
    border-style: dashed !important;
}

.order-confirm-modal-left-side {
    max-height: 500px;
    overflow-y: auto;
}


.truck-icon-btn,
.truck-icon-btn:focus {
    box-shadow: none !important;
    outline: none !important;
}

.uploadModal {
    z-index: 1060 !important;
}

.stack-container {
    position: relative;
    max-width: 600px;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* The Card Wrapper (Allows X to overflow) */
.card-wrapper {
    position: absolute;
    width: 100%;
    height: 560px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 991px) {
    .card-wrapper {
        width: 90% !important;
    }
}

/* The actual card with the content */
.mirror-card {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    background: white;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Stacking Logic - Showing sections behind */
.card-pos-0 {
    z-index: 50;
    transform: translateY(0) scale(1);
    opacity: 1;
}

.card-pos-1 {
    z-index: 45;
    transform: translateY(-30px) scale(0.94);
    opacity: 0.9;
}

.card-pos-2 {
    z-index: 40;
    transform: translateY(-60px) scale(0.88);
    opacity: 0.8;
}

.card-pos-3 {
    z-index: 35;
    transform: translateY(-90px) scale(0.82);
    opacity: 0.7;
}

.card-pos-4 {
    z-index: 30;
    transform: translateY(-120px) scale(0.76);
    opacity: 0.6;
}

.card-pos-5 {
    z-index: 25;
    transform: translateY(-150px) scale(0.7);
    opacity: 0.5;
}

.card-pos-6 {
    z-index: 20;
    transform: translateY(-180px) scale(0.64);
    opacity: 0.4;
}

.card-pos-7 {
    z-index: 15;
    transform: translateY(-210px) scale(0.58);
    opacity: 0.3;
}

.card-pos-8 {
    z-index: 10;
    transform: translateY(-240px) scale(0.52);
    opacity: 0.2;
}

.card-pos-9 {
    z-index: 5;
    transform: translateY(-270px) scale(0.46);
    opacity: 0.1;
}

.card-pos-10 {
    z-index: 0;
    transform: translateY(-300px) scale(0.4);
    opacity: 0;
}

/* Exit effect */
.exit-now {
    transform: translateY(150px) scale(0.9) !important;
    opacity: 0 !important;
    pointer-events: none;
}

.card-img {
    width: 100%;
    height: 300px;
    object-fit: contain;
}

/* X Button - Positioned relative to card-wrapper to ignore overflow:hidden */
.btn-close-stack {
    position: absolute;
    top: -12px;
    right: -12px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    cursor: pointer;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    color: #333;
    outline: none !important;
}

.btn-close-stack i {
    font-size: 18px;
    font-weight: bold;
}

/* Progress Bar (Loader) */
.loader-container {
    width: 100%;
    height: 4px;
    background: var(--white);
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;

}

.loader-fill {
    height: 100%;
    width: 0%;
    background: #007bff;
    transition: width 0.05s linear;
}

.vote-btn {
    background: #000;
    color: #fff;
    font-size: 14px;
    padding: 10px;
    border-radius: 5px;
    width: 100%;
    border: none;
}

.pos-selected-tr {
    background-color: #007bff26;
}

.customer-form.collapse.pos-filter-section {
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(2px);
}

.customer-form.collapsing.pos-filter-section {
    background-color: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(2px) !important;
}



/* Smooth Alert Transitions CSS  Start*/
.aiz-custom-alert {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    /* matches mb-3 class */
    transition: all 0.6s ease-in-out;
    position: fixed;
    z-index: 9999;
    max-width: 350px;
    width: 100%;
}

.aiz-custom-alert.top-left {
    top: 20px;
    left: 20px;
}

.aiz-custom-alert.top-right {
    top: 20px;
    right: 20px;
}

.aiz-custom-alert.bottom-left {
    bottom: 20px;
    left: 20px;
}

.aiz-custom-alert.bottom-right {
    bottom: 20px;
    right: 20px;
}

.aiz-custom-alert>div {
    transition: all 0.6s ease-in-out !important;
    overflow: hidden;
    margin-bottom: 0 !important;
    /* Override mb-3 */
    opacity: 1;
    transform: translateY(0);
    max-height: 500px;
}

.aiz-custom-alert>div.removing {
    opacity: 0;
    transform: translateY(-100px);
    margin-bottom: 0 !important;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    border-width: 0;
}

/* For bottom positions, slide down instead of up */
.aiz-custom-alert.bottom-left>div.removing,
.aiz-custom-alert.bottom-right>div.removing {
    transition: all 0.6s ease-in-out !important;
    transform: translateY(100px);
}

/* Ensure images and content scale properly during transition */
.aiz-custom-alert>div.removing img,
.aiz-custom-alert>div.removing .p-3,
.aiz-custom-alert>div.removing .p-2rem {
    opacity: 0;
}



.aiz-custom-alert .alert.removing {
    opacity: 0;
    transform: translateY(-100px);
    margin-bottom: 0 !important;
    max-height: 0;
    padding: 0 !important;
    border: none;
}

/* Smooth Alert Transitions CSS  End */



/* Fix for the whats app transparent space issue */
div[id^="gb-widget-"] {
    display: block !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none !important;
}

div[id^="gb-widget-"] .sc-q8c6tt-1,
div[id^="gb-widget-"] a[href*="wa.me"] {
    pointer-events: auto !important;
    display: inline-block !important;
}

div[id^="gb-widget-"] .sc-q8c6tt-3 {
    position: relative !important;
    z-index: 16000162 !important;
}

div[id^="gb-widget-"]>div:not(.sc-q8c6tt-3) {
    display: none !important;
}



/*border hover dark */
.hover-border-dark:hover {
    border-color: #0b0b0c !important;
    transition: ease-in-out 0.3;
}

.review-sort-by-images {
    margin-top: 30px;
}



/*  Google Analytics Dashboard Start
-------------------------------------------*/
@media (min-width: 992px) {

    .h-lg-510px,
    .size-lg-510px {
        height: 510px;
    }
}

.g-analytics-card .card-body {
    overflow-y: auto;
    overflow-x: hidden;
}

.g-analytics-card .card-header {
    min-height: 20px !important;
}

.g-analytics-card .card-body table thead th {
    border: none !important;
}

.g-analytics-card .card-body table tbody tr td {
    border: none !important;
}

.g-analytics-card .card-body table tbody tr {
    border-top: 1px dashed #ebedf2 !important;
}

.g-analytics-card .card-body table tbody tr:first-child {
    border-top: 1px solid #ebedf2 !important;
}

/*  Google Analytics Dashboard End
-------------------------------------------*/




/*  Add Product Page Content Start
-------------------------------------------*/

.gutters-4 {
    margin-right: -4px;
    margin-left: -4px;
}

.gutters-4>.col,
.gutters-4>[class*="col-"] {
    padding-right: 4px;
    padding-left: 4px;
}

.gutters-4 {
    margin-right: -4px;
    margin-left: -4px;
}

.gutters-4>.col,
.gutters-4>[class*="col-"] {
    padding-right: 4px;
    padding-left: 4px;
}

.generate-gradient-text {
    background: linear-gradient(90deg,
            #ff4d4d,
            #f9cb28,
            #4cd137,
            #00a8ff,
            #9c88ff,
            #ff4d4d);

    background-size: 300% 300%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    animation: textGradientMove 4s linear infinite;
}

@keyframes textGradientMove {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 100% 50%;
    }
}


.animated-gradient-border {
    position: relative;
    background: #fff;
    border-radius: 8px;

    z-index: 1;
}

.animated-gradient-border.border {
    border: none !important;
}

.animated-gradient-border::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    z-index: -1;
    background: linear-gradient(90deg,
            #ff4d4d, #f9cb28, #4cd137, #00a8ff, #9c88ff, #ff4d4d);
    background-size: 300% 300%;
    border-radius: 11px;
    animation: animatedGradientBorder 2s linear infinite;
}

@keyframes animatedGradientBorder {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

.text-decoration-underline {
    text-decoration: underline !important;
}


.add-product-page-content .img-upload-container {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: start;
}

.add-product-page-content .img-upload-container>[data-toggle="aizuploader"] {
    width: 120px;
    height: 120px;
    order: 999;
}

.add-product-page-content .img-upload-container .file-preview {
    display: contents;
}

.add-product-page-content .file-preview-item {
    width: 120px !important;
    height: 120px !important;
}

.add-product-page-content .img-upload-container .file-preview-item {
    margin: 0 !important;
}

.add-product-page-content .img-upload-container .file-preview-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
}


.add-product-page-content .img-upload-container .file-preview:empty {
    display: none !important;
}

.add-product-page-content .file-upload-input {
    transition: all 0.4s ease;
}

.add-product-page-content .file-upload-input:hover {
    border-color: #007bff !important;
}

.add-product-page-content .file-upload-input .form-control img {
    transition: all 0.4s ease;
}

.add-product-page-content .file-upload-input:hover .form-control img {
    filter: brightness(0) saturate(100%) invert(34%) sepia(94%) saturate(1873%) hue-rotate(198deg) brightness(96%) contrast(101%);
}

.add-product-page-content .refundable-notes .aiz-carousel .carousel-box .refund-notes:hover,
.add-product-page-content .warranty-notes .aiz-carousel .carousel-box .single-warranty-notes:hover,
.add-product-page-content .shipping-notes .aiz-carousel .carousel-box .shp-notes:hover,
.add-product-page-content .cash-on-delivery-notes .aiz-carousel .carousel-box .delivery-notes:hover {
    border-color: var(--blue) !important;
}

.add-product-page-content .club-point-container {
    border: 1px solid #FFF4D6;
    background-color: #FFF4D6;
}


.add-product-page-content .tagify__tag>div {
    border-radius: 999px !important;
}

.add-product-page-content .tagify__tag__removeBtn:hover {
    background: transparent;
    color: #dc3545;
}

/*  Add Product Page Content End
-------------------------------------------*/

/* new image uploader  */

.bypass-img-upload-container {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: start;
}

.bypass-img-upload-container .direct-uploader {
    width: 120px;
    height: 120px;
    order: 999;
    border: 1px dashed #cbd5e0;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    margin-left: -8px;
}

.direct-uploader input {
    display: none;
}

.direct-uploader .upload-icon {
    width: 40px;
    height: 40px;
}

.bypass-img-upload-container .direct-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    display: contents;
}

.direct-file-preview-item {
    width: 120px !important;
    height: 120px !important;
    border: 1px solid #ebedf2;
    border-radius: 6px;
    padding: 4px;
    position: relative;
    display: flex;
    flex-direction: column;
}

.direct-file-preview-item .thumb {
    width: 100%;
    height: 80px;
    background: #f1f2f4;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border-radius: 4px;
}

.direct-file-preview-item img,
.direct-file-preview-item video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.direct-file-preview-item .body {
    margin-top: 4px;
    flex: 1;
}

.direct-file-preview-item .body h6 {
    font-size: 12px;
    margin: 0;
}

.direct-file-preview-item .body p {
    font-size: 10px;
    color: #6c757d;
    margin: 0;
}

.direct-file-preview-item .remove {
    position: absolute;
    top: -6px;
    right: -6px;
}

.direct-file-preview-item .remove .btn {
    padding: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #eaeaea;
    text-align: center;
    line-height: 22px;
}

/* new image uploader end  */


.refund-days-code:hover {
    border: 2px solid var(--light);
    background-color: transparent !important;
}

.refund-days-code:focus-within {
    border: 2px solid var(--blue) !important;
}

.refund-days-code {
    width: 90%;
}

@media (max-width: 1399px) {
    .refund-days-code {
        width: 100%;
    }
}

.refund-days-code #pen-icon,
.refund-days-code button span,
.refund-days-message {
    display: none;
}

/* Hover: Show pen */
.refund-days-code:hover #pen-icon {
    display: block !important;
    margin-top: 3px;
}

/* Focus: Hide pen, show button & message */
.refund-days-code:focus-within #pen-icon {
    display: none !important;
}

.refund-days-code:focus-within button span,
.refund-days-code:focus-within .refund-days-message {
    display: block !important;
}

.refund-reason-code:hover {
    border: 2px solid var(--light);
    background-color: transparent !important;
}

.refund-reason-code:focus-within {
    border: 2px solid var(--blue) !important;
}

.refund-reason-code {
    width: 100%;
}

@media (max-width: 1399px) {
    .refund-reason-code {
        width: 100%;
    }
}

.refund-reason-code #pen-icon,
.refund-reason-code button span,
.refund-reason-message {
    display: none;
}

/* Hover: Show pen */
.refund-reason-code:hover #pen-icon {
    display: block !important;
    margin-top: 3px;
}

/* Focus: Hide pen, show button & message */
.refund-reason-code:focus-within #pen-icon {
    display: none !important;
}

.refund-reason-code:focus-within button span,
.refund-reason-code:focus-within .refund-reason-message {
    display: block !important;
}

body::-webkit-scrollbar {
    /* width: 5px!important; */
    display: none !important;
}

/*-------------------- Custom Input with Pen and Clear Field Start --------------*/
/*Hover & Focus */
.custom-input-pen-clear-field:hover {
    border: 2px solid var(--light);
    background-color: transparent !important;
}

.custom-input-pen-clear-field:focus-within {
    border: 2px solid var(--blue) !important;
}


.custom-input-pen-clear-field #pen-icon,
.custom-input-pen-clear-field button span,
.input-field-message {
    display: none;
}

/* Hover: Show pen */
.custom-input-pen-clear-field:hover #pen-icon {
    display: block !important;
    margin-top: 3px;
}

/* Focus: Hide pen, show button & message */
.custom-input-pen-clear-field:focus-within #pen-icon {
    display: none !important;
}

.custom-input-pen-clear-field:focus-within button span,
.custom-input-pen-clear-field:focus-within .input-field-message {
    display: block !important;
    z-index: 1000 !important;
}

/*-------------------- Custom Input with Pen and Clear Field End --------------*/


/*-------------------- Aiz Table border (Left Right borderless Start --------------*/
@media (min-width: 991.98px) {

    .aiz-table.aiz-border-rl-borderless-table td:first-child,
    .aiz-table.aiz-border-rl-borderless-table th:first-child,
    .aiz-border-rl-borderless-table {
        border-left: 0 !important;
    }

    [dir="rtl"] .aiz-table.aiz-border-rl-borderless-table td:first-child,
    .aiz-table.aiz-border-rl-borderless-table th:first-child,
    .aiz-border-rl-borderless-table {
        border-right: 0 !important;
    }

    .aiz-table.aiz-border-rl-borderless-table td:last-child,
    .aiz-table.aiz-border-rl-borderless-table th:last-child,
    .aiz-border-rl-borderless-table {
        border-right: 0 !important;
    }

    [dir="rtl"] .aiz-table.aiz-border-rl-borderless-table td:last-child,
    .aiz-table.aiz-border-rl-borderless-table th:last-child,
    .aiz-border-rl-borderless-table {
        border-left: 0 !important;
    }

}

/*-------------------- Aiz Table border (Left Right borderless End --------------*/


/*-------------------- Promotion & Offers Start --------------*/

.dashboard-content-wrapper {
    background: linear-gradient(180deg, #F2DCEB 0%, #ffffff 30%);
    margin-top: -20px;
    margin-left: -30px;
    margin-right: -30px;

}

@media (max-width: 1200px) {
    .dashboard-content-wrapper {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media (max-width: 1400px) {
    .dashboard-content-wrapper {
        margin-left: -25px;
        margin-right: -25px;
    }
}

.dashboard-content-wrapper .gap-12 {
    gap: 12px;
}

.dashboard-content-wrapper .gap-16 {
    gap: 16px;
}

.dashboard-content-wrapper .mt-m-6px {
    margin-top: -6px;
}

.dashboard-content-wrapper .min-w-0 {
    min-width: 0;
}

.coming-soon-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
}

.dashboard-content-wrapper .card {
    transition: all 0.6s ease;
    min-height: 218px;
}

.dashboard-content-wrapper .card .sub-title {
    min-height: 34px;
}

.dashboard-content-wrapper .card:hover {
    border-color: var(--blue) !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12) !important;
}

.dashboard-content-wrapper .card .la-arrow-right {
    opacity: 0;
    transform: translateX(-10px);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.dashboard-content-wrapper .card:hover .la-arrow-right {
    opacity: 1 !important;
    transform: translateX(0);
}


@media (min-width: 768px) and (max-width: 991px) {
    .todays-deals-number-box {
        height: 188px;
    }
}


@media (min-width: 767px) {
    .fs-md-30 {
        font-size: 30px !important;
    }
}



/*BOGO Start*/
.bogo-card-input {
    display: none;
}

.bogo-card {
    transition: all 0.3s ease;
}

.bogo-card-input:checked+.bogo-card {
    border-color: var(--blue) !important;
    background-color: #f8f9ff !important;
}

.bogo-card-input:checked+.bogo-card .radio-circle {
    border-color: var(--blue) !important;
}

.bogo-card-input:checked+.bogo-card .radio-circle::after {
    content: '';
    width: 12px;
    height: 12px;
    background: var(--blue) !important;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Tab Content Animation */
.custom-tab-pane {
    display: none;
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.custom-tab-pane.d-show {
    display: block;
}

.custom-tab-pane.animate-in {
    opacity: 1;
    transform: translateY(0);
}


/*-------------------- Promotion & Offers End --------------*/




/*-------------------- Business Setttings Start --------------*/

.business-setting-wrapper {
    background: linear-gradient(180deg, #daeeff 0%, #ffffff 30%);
    margin-top: -20px;
    margin-left: -30px;
    margin-right: -30px;

}

@media (max-width: 1200px) {
    .business-setting-wrapper {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media (max-width: 1400px) {
    .business-setting-wrapper {
        margin-left: -25px;
        margin-right: -25px;
    }
}

.business-setting-wrapper .card .card-body span {
    min-height: 34px;
}

.business-setting-wrapper a:hover .card {
    border-color: var(--blue) !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12) !important;
}

.bg-soft-sky-blue {
    background-color: #ECF9FA;
}

.bg-soft-lime {
    background-color: #F3FBEE;
}

.bg-soft-purple {
    background-color: #F5EEFD;
}

/*-------------------- Business Setttings End --------------*/



/*-------------------- aiz-border-bottom-dashed-table Start (tr only bottom border-dashed) Start --------------*/

.aiz-border-bottom-dashed-table td {
    border: 0 !important;
}

.aiz-border-bottom-dashed-table tr {
    border-bottom: 1px dashed #dee2e6 !important;
}

.aiz-border-bottom-dashed-table tr:last-child {
    border-bottom: 0 !important;
}

/*-------------------- aiz-border-bottom-dashed-table Start (tr only bottom border-dashed) End --------------*/

/* manage order modal dropdown */
select.form-control.mo-custom-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("../img/icons/keyboard-arrow-down.svg") !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 15px) center !important;
    background-size: 24px !important;
    padding-right: 40px !important;
}

/* PyLoHerb footer styles live in pyloherb.css (dark forest strip). */

/* PyLoHerb header — mockup sitewide */
.pyloherb-header-wrap {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1020;
    background: #fcfaf5;
    transition: background 0.25s ease, box-shadow 0.25s ease, backdrop-filter 0.25s ease;
}

/* Fixed header1–6 shell (admin header) */
.pylo-site-header.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1020;
    background: #fff;
    overflow: visible;
    /* Collapse BOM/whitespace text nodes that inflate shell height */
    font-size: 0;
    line-height: 0;
}

.pylo-site-header.is-fixed>* {
    font-size: 1rem;
    line-height: normal;
}

.pylo-site-header.is-fixed.is-scrolled {
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
}

.pylo-site-header.is-fixed .sticky-top,
.pylo-site-header.is-fixed .stikcy-header-visibility {
    position: relative !important;
    top: auto !important;
    overflow: visible;
}

/* Top bar must be positioned or z-index is ignored — middle header was covering Notifications */
.pylo-site-header .top-navbar {
    position: relative;
    z-index: 1035;
    overflow: visible;
}

.pylo-site-header .top-navbar .dropdown,
.pylo-site-header .top-navbar .dropdown-menu {
    z-index: 1040;
}

.pylo-site-header .hover-user-top-menu {
    z-index: 1060 !important;
    overflow: visible;
    top: 100% !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Anchor under Admin/avatar — same proximity as cart dropdown */
.pylo-nav-user-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.pylo-nav-user-wrap .hover-user-top-menu {
    position: absolute !important;
    top: calc(100% + 2px) !important;
    right: 0 !important;
    left: auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pylo-nav-user-wrap .hover-user-top-menu::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: -10px;
    height: 10px;
}

.hover-user-top-menu.active {
    display: block !important;
    animation: pylo-user-menu-in 0.2s ease-out !important;
}

@keyframes pylo-user-menu-in {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Compact user dropdown — flush under header like cart */
.pylo-site-header .aiz-user-top-menu {
    width: 168px !important;
    max-width: 168px;
    border-radius: 6px !important;
    border: 1px solid #e8ebe9 !important;
    box-shadow: 0 8px 20px rgba(16, 24, 40, 0.1) !important;
}

.pylo-site-header .aiz-user-top-menu .user-top-nav-element>a {
    padding: 8px 12px !important;
    min-height: 0;
    line-height: 1.25;
}

.pylo-site-header .aiz-user-top-menu .user-top-menu-name {
    margin-left: 8px !important;
    font-size: 13px;
}

.pylo-site-header .logo-bar-area {
    overflow: visible;
}

.pylo-site-header-spacer {
    width: 100%;
    flex-shrink: 0;
    pointer-events: none;
}

.aiz-main-wrapper:has(.pyloherb-header-wrap) {
    padding-top: var(--pylo-header-offset, 88px);
}

.pyloherb-header-wrap.is-scrolled {
    background: rgba(252, 250, 245, 0.82);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.pyloherb-header__topbar {
    height: 3px;
    background: #0a0a0a;
    width: 100%;
}

.pyloherb-header {
    background: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.pyloherb-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 1.25rem;
    min-height: 78px;
    padding: 0.5rem 0;
    transition: min-height 0.25s ease, padding 0.25s ease;
}

.pyloherb-header-wrap.is-scrolled .pyloherb-header__inner {
    min-height: 54px;
    padding: 0.2rem 0;
}

.pyloherb-header-wrap.is-scrolled .pyloherb-header__logo-img {
    height: 36px !important;
}

.pyloherb-header__start {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 0 0 auto;
}

.pyloherb-header__logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    line-height: 0;
    flex-shrink: 0;
}

.pyloherb-header__logo-img {
    height: 48px !important;
    width: auto !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

.pyloherb-header__nav {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: center;
    overflow: visible;
}

.pyloherb-header__nav-list {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 0 1.1rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.pyloherb-header__nav-item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.pyloherb-header__nav-link {
    display: inline-block;
    padding: 0.25rem 0.1rem 0.5rem;
    font-family: var(--pylo-sans);
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.3;
    color: #3a3a3a;
    text-align: center;
    text-decoration: none;
    position: relative;
    transition: color 0.2s ease;
    white-space: nowrap;
}

.pyloherb-header__nav-link:hover {
    color: #1a1a1a;
    text-decoration: none;
}

.pyloherb-header__nav-link.is-active {
    color: #1a1a1a;
    font-weight: 700;
}

.pyloherb-header__nav-link.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: #1a1a1a;
}

.pyloherb-header__nav-item--products,
.header-product-menu {
    position: relative;
}

.header-menus-container .hor-swipe {
    overflow: visible;
}

.header-menus-container .dropdown {
    position: relative;
}

.header-menus-container .header-drop.dropdown-menu {
    top: 100% !important;
    left: 0;
    right: auto;
    margin-top: 0;
    transform: none !important;
}

.pyloherb-header-settings {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    position: relative;
}

.pyloherb-header-settings .gear-toggle {
    width: 30px;
    height: 30px;
    color: inherit;
}

/* Drop flush under gear — static positioning (no Popper offset) */
.pyloherb-header-settings>.dropdown-menu,
.pyloherb-header-settings>.dropdown-menu.header-drop,
.pyloherb-header-settings__menu {
    position: absolute !important;
    z-index: 1080 !important;
    top: 100% !important;
    bottom: auto !important;
    left: auto !important;
    right: 0 !important;
    margin: 0 !important;
    margin-top: 2px !important;
    transform: none !important;
    float: none !important;
    will-change: auto !important;
    min-width: 148px !important;
    width: max-content !important;
    max-width: 180px !important;
    padding: 2px 0 !important;
    overflow: visible !important;
    border: 1px solid #e8ebe9;
    border-radius: 6px;
    box-shadow: 0 8px 20px rgba(16, 24, 40, 0.1);
}

.pyloherb-header-settings>.dropdown-menu.show,
.pyloherb-header-settings__menu.show {
    display: block !important;
}

.pyloherb-header-settings a.dropdown-item,
.pyloherb-header-settings__lang,
.pyloherb-header-settings .child-dropdown a {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 10px !important;
    font-size: 12.5px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    color: #1f2933 !important;
    background: transparent !important;
}

.pyloherb-header-settings__lang:hover,
.pyloherb-header-settings__lang.active,
.pyloherb-header-settings a.dropdown-item:hover {
    background: #f3f5f4 !important;
    color: #1f2933 !important;
}

.pyloherb-header-settings img,
.pyloherb-header-settings__lang img,
.pyloherb-header-settings .child-dropdown img {
    width: 16px !important;
    height: 11px !important;
    max-width: 16px !important;
    max-height: 11px !important;
    margin: 0 !important;
    object-fit: cover !important;
    display: inline-block !important;
    flex: 0 0 16px !important;
}

.header-menus-container--mega {
    /* Let mega panel position against .logo-bar-area > .container */
    position: static !important;
}

.logo-bar-area>.container {
    position: relative;
}

.pyloherb-header__mega-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 1050;
    display: none;
    grid-template-columns: minmax(240px, 0.85fr) minmax(420px, 1.5fr);
    width: min(780px, calc(100vw - 32px));
    padding: 24px;
    background: #fff;
    border: 1px solid #e8e8e8;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.12);
    transform: translateX(-50%);
}

/* Invisible bridge so cursor can move from trigger → panel without closing */
.pyloherb-header__mega-menu::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: -20px;
    height: 20px;
}

.pyloherb-header__nav-item--products:hover .pyloherb-header__mega-menu,
.pyloherb-header__nav-item--products:focus-within .pyloherb-header__mega-menu,
.header-product-menu:hover .pyloherb-header__mega-menu,
.header-product-menu:focus-within .pyloherb-header__mega-menu {
    display: grid;
}

.pyloherb-header__mega-categories {
    padding-right: 24px;
    border-right: 1px solid #e8e8e8;
}

.pyloherb-header__mega-title {
    margin: 0 0 14px;
    color: #1a1a1a;
    font-family: var(--pylo-sans);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
}

.pyloherb-header__mega-category-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 18px;
}

.pyloherb-header__mega-category-link {
    padding: 9px 0;
    color: #555;
    border-bottom: 1px solid #f0f0f0;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
}

.pyloherb-header__mega-category-link:hover,
.pyloherb-header__mega-product-link:hover {
    color: var(--pylo-green);
    text-decoration: none;
}

.pyloherb-header__mega-product-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.pyloherb-header__mega-product-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: #3a3a3a;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
}

.pyloherb-header__mega-product-link img {
    flex: 0 0 72px;
    width: 72px;
    height: 72px;
    object-fit: contain;
}

.pyloherb-header__mega-product-link span {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.header-menus-container--mega .header-product-menu {
    position: static;
    /* Extend hit-area down so cursor can reach the panel */
    padding-bottom: 40px;
    margin-bottom: -40px;
}

.header-menus-container--mega .pyloherb-header__mega-menu--catalog {
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    display: none;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 20px 16px;
    padding: 22px 15px;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: min(420px, calc(100vh - 96px));
    border: 1px solid #e9e9e9;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 14px 28px rgba(15, 38, 28, 0.12);
    transform: none;
}

.header-menus-container--mega .header-product-menu:hover,
.header-menus-container--mega .header-product-menu:focus-within {
    z-index: 1050;
}

.header-menus-container--mega .header-product-menu:hover .pyloherb-header__mega-menu--catalog,
.header-menus-container--mega .header-product-menu:focus-within .pyloherb-header__mega-menu--catalog {
    display: grid;
}

.header-menus-container--mega .pyloherb-header__mega-column {
    min-width: 0;
    padding: 0 10px;
}

.header-menus-container--mega .pyloherb-header__mega-title {
    min-height: 38px;
    margin-bottom: 10px;
    font-size: 14px;
    text-transform: uppercase;
}

.header-menus-container--mega .pyloherb-header__mega-title a {
    display: block;
    overflow: hidden;
    color: #111;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-menus-container--mega .pyloherb-header__mega-product-list {
    display: block;
}

.header-menus-container--mega .pyloherb-header__mega-product-link {
    display: block;
    padding: 10px 0;
    overflow: hidden;
    color: #666;
    border-top: 1px solid #eeeeee;
    font-size: 14px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-menus-container--mega .pyloherb-header__mega-product-link:hover,
.header-menus-container--mega .pyloherb-header__mega-title a:hover {
    color: var(--pylo-green);
}

.header-menus-container--mega .pyloherb-header__mega-product-link:hover {
    background: #f2f6f3;
    box-shadow: inset 3px 0 0 var(--pylo-green);
    padding-left: 10px;
    padding-right: 10px;
}

.header-menus-container--mega .pyloherb-header__mega-column--all {
    display: flex;
    align-items: flex-end;
}

.header-menus-container--mega .pyloherb-header__mega-all-link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    padding: 12px 0;
    color: var(--pylo-green);
    border-top: 1px solid rgba(26, 61, 46, 0.2);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: none;
}

.header-menus-container--mega .pyloherb-header__mega-all-link i {
    font-size: 18px;
    transition: transform 0.2s ease;
}

.header-menus-container--mega .pyloherb-header__mega-all-link:hover {
    color: var(--pylo-green-dark);
}

.header-menus-container--mega .pyloherb-header__mega-all-link:hover i {
    transform: translateX(4px);
}

/* Tap-open mega menu (tablet / touch) — complements desktop hover */
.header-product-menu.is-open>.pyloherb-header__mega-menu,
.header-menus-container--mega .header-product-menu.is-open>.pyloherb-header__mega-menu--catalog {
    display: grid;
}

/* Mobile drawer: Sản phẩm — label goes to search, chevron opens submenu */
.pylo-mobile-product-menu__row {
    display: flex;
    align-items: stretch;
}

.pylo-mobile-product-menu__link {
    flex: 1 1 auto;
    min-width: 0;
    width: auto !important;
}

.pylo-mobile-product-menu__toggle {
    appearance: none;
    flex: 0 0 48px;
    width: 48px;
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: inherit;
}

.pylo-mobile-product-menu__chevron {
    font-size: 16px;
    line-height: 1;
    transition: transform 0.2s ease;
    color: #91919b;
}

.pylo-mobile-product-menu.is-open .pylo-mobile-product-menu__chevron {
    transform: rotate(180deg);
    color: var(--pylo-green, #1a3d2e);
}

.pylo-mobile-product-menu__panel {
    padding: 0 12px 10px 18px;
}

.pylo-mobile-product-menu__panel[hidden] {
    display: none !important;
}

.pylo-mobile-product-menu__group {
    padding: 6px 0 10px;
    border-bottom: 1px solid #f0ebe4;
}

.pylo-mobile-product-menu__group:last-of-type {
    border-bottom: 0;
}

.pylo-mobile-product-menu__category {
    display: block;
    padding: 8px 0 4px;
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
}

.pylo-mobile-product-menu__product {
    display: block;
    padding: 7px 0 7px 10px;
    color: #666;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
    border-top: 1px solid #f3f3f3;
}

.pylo-mobile-product-menu__category:hover,
.pylo-mobile-product-menu__product:hover,
.pylo-mobile-product-menu__all:hover {
    color: var(--pylo-green, #1a3d2e);
    text-decoration: none;
}

.pylo-mobile-product-menu__all {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 4px;
    padding: 12px 0;
    color: var(--pylo-green, #1a3d2e);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    border-top: 1px solid #ebe4db;
}

/* Mobile dropdown submenus (Về PyLoHerb, etc.) */
.pylo-mobile-dropdown-toggle {
    appearance: none;
    flex: 0 0 44px;
    width: 44px;
    height: auto;
    min-height: 44px;
    padding: 0 !important;
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #91919b;
}

.pylo-mobile-dropdown-toggle i {
    font-size: 16px;
    line-height: 1;
    transition: transform 0.2s ease, color 0.2s ease;
}

.pylo-mobile-dropdown-toggle[aria-expanded="true"] i,
.pylo-mobile-dropdown-toggle:not(.collapsed) i {
    transform: rotate(180deg);
    color: var(--pylo-green, #1a3d2e);
}

.pylo-mobile-submenu {
    padding: 0 16px 6px 28px !important;
}

.aiz-top-menu-sidebar .pylo-mobile-sublist,
.pyloherb-top-menu-sidebar .pylo-mobile-sublist,
.pylo-mobile-submenu ul {
    padding: 2px 0 2px 10px !important;
    margin: 0 !important;
    border-left: 2px solid #e2ded8 !important;
    list-style: none !important;
}

.aiz-top-menu-sidebar .pylo-mobile-subitem,
.pyloherb-top-menu-sidebar .pylo-mobile-subitem,
.pylo-mobile-submenu ul li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.aiz-top-menu-sidebar .pylo-mobile-sublink,
.pyloherb-top-menu-sidebar .pylo-mobile-sublink,
.pylo-mobile-submenu ul li a {
    display: block !important;
    padding: 5px 8px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: #5c5c5c !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    transition: color 0.15s ease, background 0.15s ease;
}

.aiz-top-menu-sidebar .pylo-mobile-sublink:hover,
.aiz-top-menu-sidebar .pylo-mobile-sublink.active,
.pyloherb-top-menu-sidebar .pylo-mobile-sublink:hover,
.pyloherb-top-menu-sidebar .pylo-mobile-sublink.active {
    color: var(--pylo-green, #1a3d2e) !important;
    background: rgba(26, 61, 46, 0.06) !important;
    font-weight: 600 !important;
}

/* Prevent any nested ul in sidebar from inheriting 24px bottom padding */
.aiz-top-menu-sidebar ul ul,
.pyloherb-top-menu-sidebar ul ul {
    padding: 0 !important;
    margin: 0 !important;
}

.pyloherb-header__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 1rem;
    flex: 0 0 auto;
}

.pyloherb-header__search {
    position: relative;
    flex: 0 0 auto;
}

.pyloherb-header__search.front-header-search {
    background-color: transparent !important;
    border-radius: 0 !important;
}

.pyloherb-header__search-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #4a3f35;
    cursor: pointer;
    line-height: 0;
}

.pyloherb-header__search-trigger:hover,
.pyloherb-header__search.is-open .pyloherb-header__search-trigger {
    color: #5d3a1a;
}

.pyloherb-header__search-popover {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 1060;
    width: min(320px, calc(100vw - 32px));
    padding: 14px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.pyloherb-header__search:hover .pyloherb-header__search-popover,
.pyloherb-header__search:focus-within .pyloherb-header__search-popover,
.pyloherb-header__search.is-open .pyloherb-header__search-popover {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    display: block !important;
}

.pyloherb-header__search-popover::before {
    content: "";
    position: absolute;
    top: -7px;
    right: 8px;
    width: 12px;
    height: 12px;
    background: #fff;
    border-left: 1px solid rgba(0, 0, 0, 0.08);
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    transform: rotate(45deg);
}

.pyloherb-header__search-wrap {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 42px;
    background: #fff !important;
    border: 1px solid #c9b9a5 !important;
    border-radius: 999px;
    padding: 0 0.5rem 0 0.9rem !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    color: #8a8680;
}

.pyloherb-header__search-input {
    border: 0;
    background: transparent;
    outline: none;
    font-family: var(--pylo-sans);
    font-size: 0.875rem;
    line-height: 1.4;
    width: 100%;
    min-width: 0;
    opacity: 1;
    color: #2a2a2a;
    padding: 0;
    pointer-events: auto;
    flex: 1 1 auto;
}

.pyloherb-header__search-input::placeholder {
    color: #9a9690;
}

.pyloherb-header__search-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #333;
    cursor: pointer;
    flex-shrink: 0;
    line-height: 0;
}

/* Menu drawer: keep panel above dark overlay (aiz-core lowers .collapse-sidebar z-index) */
.pyloherb-top-menu-sidebar .collapse-sidebar,
.aiz-top-menu-sidebar.pyloherb-top-menu-sidebar .collapse-sidebar {
    z-index: 1082 !important;
}

.aiz-top-menu-sidebar:not(.active) .collapse-sidebar,
.aiz-top-menu-sidebar:not(.active) .overlay,
.pyloherb-top-menu-sidebar:not(.active) .collapse-sidebar,
.pyloherb-top-menu-sidebar:not(.active) .overlay {
    pointer-events: none !important;
}

.aiz-top-menu-sidebar.active .collapse-sidebar,
.pyloherb-top-menu-sidebar.active .collapse-sidebar {
    pointer-events: auto !important;
}

.pyloherb-top-menu-sidebar .overlay,
.aiz-top-menu-sidebar.pyloherb-top-menu-sidebar .overlay {
    z-index: 1081 !important;
}

.pyloherb-top-menu-sidebar.pyloherb-top-menu-sidebar,
.aiz-top-menu-sidebar.pyloherb-top-menu-sidebar {
    z-index: 1080 !important;
}

/* Inactive drawer must not sit above fixed header and steal taps (search/hamburger). */
.aiz-top-menu-sidebar:not(.active),
.pyloherb-top-menu-sidebar:not(.active) {
    pointer-events: none !important;
    visibility: hidden !important;
    z-index: -1 !important;
}

.aiz-top-menu-sidebar.active,
.pyloherb-top-menu-sidebar.active {
    pointer-events: auto !important;
    visibility: visible !important;
    z-index: 1080 !important;
}

/* header5 mobile: menu + search stay tappable */
.pylo-site-header.is-fixed {
    z-index: 1090;
}

.pylo-site-header .logo-bar-area .btn[data-target=".aiz-top-menu-sidebar"],
.pylo-site-header .logo-bar-area .search-icon-mobile-hide,
.pylo-site-header .logo-bar-area .search-icon-mobile {
    position: relative;
    z-index: 5;
    pointer-events: auto !important;
}

@media (max-width: 991.98px) {
    .desktop-search-container.d-none {
        display: none !important;
        pointer-events: none !important;
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
        z-index: -1 !important;
    }

    .desktop-search-container:not(.d-none) {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 1100 !important;
        pointer-events: auto !important;
        background: #fff;
    }

    /* Mobile header5: hamburger left, logo centered, actions right */
    .pylo-site-header .logo-bar-area>.container>.d-flex {
        width: 100%;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        position: relative;
    }

    /* Keep logo-group as normal flex element so hamburger stays left */
    .pylo-site-header #header-logo-group {
        position: static !important;
        transform: none !important;
        margin: 0 !important;
        z-index: 1;
    }

    /* Center only the logo link (not the hamburger) */
    .pylo-site-header #header-logo-group > a.d-block {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        margin: 0 !important;
        z-index: 1;
    }

    /* Push right actions to the end */
    .pylo-site-header #header-right-actions {
        margin-left: auto !important;
        z-index: 2;
    }

    /* Old markup had search as a sibling with its own ml-auto (that centered it) */
    .pylo-site-header .logo-bar-area>.container>.d-flex>.search-icon-mobile-hide {
        margin-left: auto !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        order: 20;
        flex-shrink: 0;
    }

    .pylo-site-header .logo-bar-area>.container>.d-flex>.search-icon-mobile-hide~.d-flex.ml-auto {
        margin-left: 0 !important;
        order: 21;
        flex-shrink: 0;
    }
}

.pyloherb-header__icon-btn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    min-width: 52px;
    color: #4a3f35;
    text-decoration: none;
    border: 0;
    background: transparent;
    padding: 0;
    line-height: 1;
}

.pyloherb-header__icon-btn:hover {
    color: #2d241c;
    text-decoration: none;
}

.pyloherb-header__icon-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    line-height: 0;
}

.pyloherb-header__icon-label {
    font-family: var(--pylo-sans);
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.pyloherb-header__cart-wrap {
    position: relative;
}

.pyloherb-header__cart-wrap .dropdown-toggle.no-arrow::after,
.pyloherb-header__icon-btn.dropdown-toggle.no-arrow::after {
    display: none !important;
    content: none;
}

.pyloherb-header__cart-badge {
    position: absolute;
    top: -5px;
    right: -7px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background: #5d3a1a;
    color: #fff;
    font-size: 0.5625rem;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
    z-index: 1;
}

.pyloherb-header__toggle {
    border: 0;
    background: transparent;
    color: #3d3d3d;
    padding: 0;
    line-height: 0;
}

@media (min-width: 1200px) {
    .pyloherb-header__nav-list {
        gap: 0 1.35rem;
    }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    .pyloherb-header__inner {
        gap: 0.75rem;
    }

    .pyloherb-header__nav-list {
        gap: 0 0.65rem;
    }

    .pyloherb-header__nav-link {
        font-size: 0.75rem;
    }

    .pyloherb-header__actions {
        gap: 0.65rem;
    }

    .pyloherb-header__icon-btn {
        min-width: 46px;
    }

    /* Keep logo full-size when viewport shrinks */
    .pyloherb-header__logo-img {
        height: 48px !important;
        width: auto !important;
        max-width: none !important;
    }
}

@media (max-width: 991.98px) {
    .pyloherb-header__inner {
        min-height: 68px;
        gap: 0.75rem;
        grid-template-columns: 44px 1fr auto;
        grid-template-areas: "menu logo actions";
    }

    .pyloherb-header__logo-img {
        height: 42px;
        max-width: 140px;
    }

    .pyloherb-header__actions {
        gap: 0.25rem;
        grid-area: actions;
    }

    .pyloherb-header__search {
        display: block !important;
    }

    .pyloherb-header__search-trigger {
        width: 44px;
        height: 44px;
    }
}

/* PyLoHerb homepage — follow Appearance button colors */
:root {
    --pylo-green: var(--primary, #1b3022);
    --pylo-green-light: var(--hov-primary, #2d4a38);
    --pylo-beige: #f5f3ee;
    --pylo-brown: var(--secondary-base, #5d3a1a);
}

.aiz-pyloherb .aiz-main-wrapper {
    background: #fff;
}

.aiz-pyloherb .pyloherb-hero {
    position: relative;
    min-height: var(--pylo-banner-height, calc(100vw * 705 / 1930));
    height: var(--pylo-banner-height, calc(100vw * 705 / 1930));
    max-height: var(--pylo-banner-height, calc(100vw * 705 / 1930));
    aspect-ratio: var(--pylo-banner-ratio, 1930 / 705);
    display: flex;
    align-items: center;
    margin-top: 0;
    padding-top: 0;
}

.pyloherb-hero__bg {
    position: absolute;
    inset: 0;
    background-size: contain;
    background-position: center;
}

.pyloherb-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.85)) 0%,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.45)) 55%,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.2)) 100%);
}

.pyloherb-hero__content {
    position: relative;
    z-index: 2;
    max-width: 560px;
    padding: var(--pylo-banner-d-pad-top, 48px) 0 var(--pylo-banner-d-pad-bottom, 64px);
    color: #fff;
}

.pyloherb-hero__eyebrow,
.pyloherb-eyebrow {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 1rem;
}

.pyloherb-section .pyloherb-eyebrow {
    color: var(--pylo-brown);
}

.pyloherb-hero__title {
    font-family: var(--pylo-serif);
    font-size: var(--pylo-banner-d-title-size, var(--pylo-fs-h1));
    font-weight: 700;
    line-height: var(--pylo-banner-d-title-lh, 1.15);
    margin-bottom: var(--pylo-banner-d-title-mb, 20px);
}

.pyloherb-hero__desc {
    font-size: var(--pylo-banner-d-desc-size, var(--pylo-fs-base));
    line-height: var(--pylo-banner-d-desc-lh, 1.65);
    opacity: 0.92;
    margin-bottom: var(--pylo-space-md, 24px);
}

.pyloherb-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.pyloherb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 1.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-decoration: none;
    border-radius: 2px;
    transition: all 0.2s ease;
    border: 2px solid transparent;
}

.pyloherb-btn--primary {
    background: var(--primary, var(--pylo-green));
    color: #fff;
    border-color: var(--primary, var(--pylo-green));
}

.pyloherb-btn--primary:hover {
    background: var(--hov-primary, var(--pylo-green-light));
    border-color: var(--hov-primary, var(--pylo-green-light));
    color: #fff;
    text-decoration: none;
}

.pyloherb-btn--outline {
    background: transparent;
    color: #fff;
    border-color: #fff;
}

.pyloherb-btn--outline:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    text-decoration: none;
}

.pyloherb-btn--white {
    background: #fff;
    color: var(--primary, var(--pylo-green));
    border-color: #fff;
}

.pyloherb-btn--white:hover {
    background: var(--pylo-beige);
    color: var(--hov-primary, var(--pylo-green));
    text-decoration: none;
}

.pyloherb-section {
    padding: var(--pylo-space-sm, clamp(16px, 1.2vw, 20px)) 0;
}

.pyloherb-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: var(--pylo-space-md, 24px);
    gap: var(--pylo-space-xs, 16px);
}

.pyloherb-section__head--center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.pyloherb-section__head--center>div {
    width: 100%;
    text-align: center;
}

.pyloherb-section__head--center .pyloherb-section__title,
.pyloherb-section__head--center .pyloherb-section__subtitle {
    text-align: center !important;
}

.pyloherb-section__title {
    font-family: var(--pylo-serif);
    font-size: var(--pylo-fs-h2);
    font-weight: 700;
    color: var(--section-title-color, var(--pylo-green));
    margin: 0;
}

.pyloherb-section__subtitle {
    color: var(--section-desc-color, #6b6b6b);
    font-size: var(--pylo-section-desc-size, 15px);
    line-height: var(--pylo-section-desc-lh, 1.7);
    margin-top: 0.5rem;
}

.pyloherb-categories {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto auto;
    gap: 1rem;
    min-height: 0;
    align-items: stretch;
}

.pyloherb-cat-card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 4px;
    text-decoration: none;
    min-height: 0;
    height: 100%;
}

.pyloherb-cat-card img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.pyloherb-cat-card:hover img {
    transform: scale(1.05);
}

.pyloherb-cat-card__label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem 1.25rem;
    background: linear-gradient(transparent, rgba(27, 48, 34, 0.85));
    color: #fff;
    font-family: var(--pylo-serif);
    font-size: 1.125rem;
    font-weight: 600;
}

.pyloherb-products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.pyloherb-product-card {
    background: #ffffff;
    border: 1px solid rgba(15, 38, 28, 0.06);
    box-shadow: 0 2px 14px rgba(15, 38, 28, 0.05);
    transition: box-shadow 0.2s ease;
}

.pyloherb-product-card:hover {
    box-shadow: 0 8px 24px rgba(15, 38, 28, 0.08);
}

.pyloherb-product-card__img-wrap {
    display: block;
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    background: #ffffff;
}

.pyloherb-product-card__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pyloherb-product-card__badge {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 7px 12px;
    letter-spacing: 0.06em;
    border-radius: 0 0 10px 0;
}

.pyloherb-product-card__badge--hot {
    background: #132b1f;
}

.pyloherb-product-card__badge--sale {
    background: #c0392b !important;
}

.pyloherb-product-card__body {
    padding: 16px 16px 18px;
    text-align: left;
    background: #ffffff;
}

.pyloherb-product-card__title {
    font-family: var(--pylo-sans);
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 10px;
    line-height: 1.35;
}

.pyloherb-product-card__title a {
    color: var(--card-text, #1c1c1c);
    text-decoration: none;
}

.pyloherb-product-card__price {
    font-size: 14px;
    color: inherit;
    font-weight: 700;
    margin: 0;
    margin-bottom: 0;
}

.pyloherb-product-card__price del {
    color: #999;
    font-weight: 400;
    margin-left: 8px;
}

.pyloherb-countdown {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.pyloherb-countdown__item {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 0.75rem 1rem;
    min-width: 72px;
    text-align: center;
}

.pyloherb-countdown__num {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.pyloherb-countdown__lbl {
    font-size: 0.6875rem;
    opacity: 0.85;
    margin-top: 0.25rem;
    display: block;
}

/* about — chi tiết ở block v3 bên dưới */

.pyloherb-text {
    color: #4a4a4a;
    font-size: var(--pylo-section-desc-size, 15px);
    line-height: var(--pylo-section-desc-lh, 1.7);
    margin-bottom: var(--pylo-section-desc-gap, 1em);
    text-align: left;
}

@media (max-width: 991.98px) {
    .aiz-pyloherb .pyloherb-hero {
        min-height: var(--pylo-banner-height-tablet, calc(100vw * 705 / 1930));
        height: var(--pylo-banner-height-tablet, calc(100vw * 705 / 1930));
        max-height: var(--pylo-banner-height-tablet, calc(100vw * 705 / 1930));
        margin-top: 0;
        padding-top: 0;
    }

    .aiz-pyloherb .pyloherb-lab__inner {
        padding: 2rem 1.25rem;
    }

    .pyloherb-products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .pyloherb-categories {
        grid-template-columns: 2fr 1fr;
        grid-template-rows: auto auto;
        gap: var(--pylo-space-xs, 16px);
        min-height: 0;
        align-items: stretch;
    }

    .pyloherb-cat-card {
        aspect-ratio: auto;
        min-height: 0;
        height: auto;
        align-self: stretch;
    }

    .pyloherb-cat-card--large {
        grid-column: 1;
        grid-row: 1 / span 2;
        aspect-ratio: unset;
        height: 100%;
        align-self: stretch;
    }

    .pyloherb-cat-card:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
        aspect-ratio: 1 / 1;
    }

    .pyloherb-cat-card:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
        aspect-ratio: 1 / 1;
    }

    .pyloherb-cat-card__content {
        padding: 10px 12px;
    }

    .pyloherb-cat-card--large .pyloherb-cat-card__content {
        padding: 12px 14px;
    }

    .pyloherb-cat-card__title {
        font-size: 14px;
        margin-bottom: 4px;
    }

    .pyloherb-cat-card--large .pyloherb-cat-card__title {
        font-size: 16px;
    }

    .pyloherb-cat-card__desc {
        font-size: 11px;
        line-height: 1.4;
        margin-bottom: 6px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .pyloherb-cat-card__cta {
        font-size: 11px;
    }

    .pyloherb-promo__content {
        padding: var(--pylo-space-md, 24px);
    }

}

@media (max-width: 575.98px) {
    .aiz-pyloherb .pyloherb-hero {
        min-height: var(--pylo-banner-height-mobile, calc(100vw * 705 / 1930));
        height: var(--pylo-banner-height-mobile, calc(100vw * 705 / 1930));
        max-height: var(--pylo-banner-height-mobile, calc(100vw * 705 / 1930));
    }

    .pyloherb-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
}

/* PyLoHerb homepage v2 — detailed mockup */
:root {
    --pylo-green: var(--primary, #1b3022);
    --pylo-green-promo: var(--primary, #1b2a1e);
    --pylo-cream: #fdfbf7;
    --pylo-cream-2: #f9f7f2;
    --pylo-lab-bg: #f5f4ef;
    --pylo-brown: var(--secondary-base, #8b7355);
    --pylo-badge-tan: #d4c4a8;
    --pylo-badge-dark: #3d2e24;
}

.pyloherb-hero__overlay {
    background: linear-gradient(105deg,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.78)) 0%,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.45)) 45%,
            rgba(var(--hero-overlay-rgb, 0, 0, 0), calc(var(--hero-overlay-on, 0) * 0.15)) 100%);
}

.pyloherb-btn--hero-primary {
    background: var(--primary, #0f1a14);
    color: #fff;
    border-color: var(--primary, #0f1a14);
    padding: 0.85rem 2rem;
}

.pyloherb-btn--hero-primary:hover {
    background: var(--hov-primary, #1b3022);
    border-color: var(--hov-primary, #1b3022);
    color: #fff;
    text-decoration: none;
}

.pyloherb-btn--hero-outline {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
}

.pyloherb-btn--hero-outline:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    text-decoration: none;
}

.pyloherb-label {
    font-size: 0.6875rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--pylo-brown);
    margin-bottom: 0.5rem;
}

.pyloherb-label--brown {
    color: #9a7b5a;
}

.pyloherb-section--cream {
    background: var(--pylo-cream);
}

.pyloherb-section--story {
    background: var(--pylo-cream);
}

.pyloherb-section--products {
    background: var(--pylo-cream-2);
    padding: var(--pylo-space-sm, clamp(16px, 1.2vw, 20px)) 0;
}

.pyloherb-section__head--stacked {
    align-items: flex-end;
    justify-content: space-between;
    text-align: left;
}

.pyloherb-section__head--stacked .pyloherb-section__title,
.pyloherb-section__head--stacked .pyloherb-section__subtitle {
    text-align: left;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
}

.pyloherb-link-underline {
    font-size: 0.8125rem;
    color: #4a4a4a;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.pyloherb-link-underline:hover {
    color: var(--pylo-green);
}

.pyloherb-link-story {
    font-family: var(--pylo-serif);
    font-size: 0.9375rem;
    font-style: italic;
    color: #3d3d3d;
    text-decoration: underline;
    text-underline-offset: 4px;
    gap: 0.35rem;
    align-items: center;
}

.pyloherb-about__row {
    gap: 0;
}

.pyloherb-lab__title {
    font-family: var(--pylo-serif);
    font-size: var(--pylo-fs-h2);
    font-weight: 700;
    color: var(--section-title-color, var(--pylo-green));
    margin: 0;
}

.pyloherb-lab__copy .pyloherb-text {
    font-family: var(--pylo-sans);
}

.pyloherb-stat-card__label {
    font-family: var(--pylo-sans);
}

.pyloherb-link-story:hover {
    color: var(--pylo-green);
    text-decoration: underline;
}

/* Category bento */
.aiz-pyloherb .pyloherb-categories {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto auto;
    min-height: 0;
    gap: 1.25rem;
    align-items: stretch;
}

.aiz-pyloherb .pyloherb-cat-card {
    min-height: 0;
    height: auto;
    aspect-ratio: auto;
    align-self: stretch;
}

.pyloherb-cat-card--large,
.pyloherb-cat-card.pyloherb-cat-card--large {
    grid-column: 1;
    grid-row: 1 / span 2;
    aspect-ratio: unset;
    height: 100%;
    min-height: 0;
    align-self: stretch;
}

.pyloherb-cat-card:nth-child(2),
.pyloherb-cat-card:nth-child(3) {
    aspect-ratio: 1 / 1;
    height: auto;
}

.pyloherb-cat-card__content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1.5rem 1.75rem;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.75));
    color: #fff;
}

.pyloherb-cat-card__title {
    font-family: var(--pylo-serif);
    font-size: 1.375rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
    color: #fff;
}

.pyloherb-cat-card--large .pyloherb-cat-card__title {
    font-size: 1.75rem;
}

.pyloherb-cat-card__desc {
    font-size: 0.875rem;
    line-height: 1.55;
    opacity: 0.92;
    margin: 0 0 0.75rem;
    max-width: 320px;
}

.pyloherb-cat-card__cta {
    font-size: 0.8125rem;
    text-decoration: underline;
    text-underline-offset: 3px;
    opacity: 0.95;
}

.pyloherb-cat-card__label {
    display: none;
}

/* Products — white card + fixed CTAs */
.aiz-pyloherb .pyloherb-product-card {
    background: #ffffff;
    border: 1px solid rgba(15, 38, 28, 0.06);
    box-shadow: 0 2px 14px rgba(15, 38, 28, 0.05);
}

.aiz-pyloherb .pyloherb-product-card:hover {
    box-shadow: 0 8px 24px rgba(15, 38, 28, 0.08);
}

.aiz-pyloherb .pyloherb-product-card__img-wrap {
    background: #fff;
    border: none;
    padding: 12px;
}

.aiz-pyloherb .pyloherb-product-card__badge--hot {
    background: var(--pylo-green);
    color: #fff;
    font-size: 10px;
    letter-spacing: 0.06em;
}

.aiz-pyloherb .pyloherb-product-card__badge--sale {
    background: #c0392b !important;
    color: #fff !important;
}

.aiz-pyloherb .pyloherb-product-card__body {
    text-align: left;
    padding: 16px 16px 18px;
    background: #ffffff;
}

.aiz-pyloherb .pyloherb-product-card__title {
    font-size: 14px;
    margin-bottom: 10px;
}

.aiz-pyloherb .pyloherb-product-card__title a {
    color: var(--card-text, #1c1c1c);
}

.aiz-pyloherb .pyloherb-product-card__price {
    display: flex;
    margin: 0;
    margin-bottom: 0;
    font-weight: 700;
    color: inherit;
    font-size: 14px;
}

.aiz-pyloherb .pyloherb-product-card__price-current {
    font-weight: 700;
    color: var(--card-accent, #132b1f);
}

.aiz-pyloherb .pyloherb-product-card__price-old {
    font-size: 12px;
    color: #9a9a9a;
    margin-left: 0;
    display: block;
}

/* Promo + About — trong .container */
.aiz-pyloherb .pyloherb-promo,
.pyloherb-promo {
    padding: 0 0 4.5rem;
    background: var(--pylo-cream-2, #f9f7f2);
}

.aiz-pyloherb .pyloherb-promo__grid,
.pyloherb-promo__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: 100%;
    min-height: 360px;
    border-radius: 4px;
    background: #193023;
}

@media (min-width: 992px) {

    .aiz-pyloherb .pyloherb-promo__grid,
    .pyloherb-promo__grid {
        aspect-ratio: 2.15 / 1;
        max-height: 550px;
        overflow: hidden;
    }
}

.aiz-pyloherb .pyloherb-promo__content,
.pyloherb-promo__content {
    background: #193023;
    color: #fff;
    padding: var(--pylo-space-lg, clamp(24px, 2vw, 32px)) var(--pylo-space-md, 24px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    min-height: 0;
    gap: 20px;
}

.aiz-pyloherb .pyloherb-promo__eyebrow,
.pyloherb-promo__eyebrow {
    font-size: 0.6875rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    opacity: 0.9;
}

.aiz-pyloherb .pyloherb-promo__title,
.pyloherb-promo__title {
    font-family: var(--pylo-serif);
    font-size: clamp(1.5rem, 2.5vw, 2.25rem);
    font-weight: 700;
    line-height: 1.15;
    color: var(--section-title-color, #fff);
}

.aiz-pyloherb .pyloherb-promo__desc,
.pyloherb-promo__desc {
    font-size: var(--pylo-section-desc-size, 15px);
    line-height: var(--pylo-section-desc-lh, 1.7);
    opacity: 0.92;
    max-width: 28rem;
    color: var(--section-desc-color, inherit);
    text-align: left;
}

.aiz-pyloherb .pyloherb-promo__media,
.pyloherb-promo__media {
    min-height: 0;
    min-width: 0;
    background-size: contain;
    background-position: center;
    margin: 0;
}

.aiz-pyloherb .pyloherb-btn--promo,
.pyloherb-btn--promo {
    align-self: flex-start;
    padding: 0.75rem 2rem;
    font-size: 0.75rem;
    letter-spacing: 0.08em;
}

.aiz-pyloherb .pyloherb-section--story,
.pyloherb-section--story {
    padding: var(--pylo-space-sm, clamp(16px, 1.2vw, 20px)) 0;
    background: var(--pylo-cream, #fdfbf7);
}

.aiz-pyloherb .pyloherb-about__grid,
.pyloherb-about__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    gap: var(--pylo-space-lg, clamp(24px, 2vw, 32px));
    align-items: center;
    width: 100%;
}

.aiz-pyloherb .pyloherb-about__media,
.pyloherb-about__media {
    position: relative;
    min-width: 0;
    width: 100%;
}

.aiz-pyloherb .pyloherb-about__img,
.pyloherb-about__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    max-height: none;
    border-radius: 4px;
    object-fit: contain;
    object-position: center;
}

.aiz-pyloherb .pyloherb-about__copy,
.pyloherb-about__copy {
    min-width: 0;
    width: 100%;
    padding: 0;
}

.aiz-pyloherb .pyloherb-about__title,
.pyloherb-about__title {
    font-family: var(--pylo-serif);
    font-size: var(--pylo-fs-h2);
    font-weight: 700;
    line-height: var(--pylo-lh-tight);
    color: var(--section-title-color, var(--pylo-green, #1b3022));
    margin: 0 0 var(--pylo-space-xs, 16px);
}

.aiz-pyloherb .pyloherb-about__copy .pyloherb-text,
.pyloherb-about__copy .pyloherb-text {
    font-size: var(--pylo-section-desc-size, 15px);
    line-height: var(--pylo-section-desc-lh, 1.7);
    margin-bottom: var(--pylo-section-desc-gap, 1em);
    color: var(--section-desc-color, var(--pylo-muted));
    text-align: left;
}

.aiz-pyloherb .pyloherb-about__copy .pyloherb-text:last-child,
.pyloherb-about__copy .pyloherb-text:last-child {
    margin-bottom: 0;
}

.pyloherb-countdown__item {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.2);
    min-width: 76px;
    padding: 1rem 0.75rem;
}

.pyloherb-countdown__lbl {
    font-size: 0.625rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.pyloherb-btn--promo {
    background: #fff;
    color: #1a1a1a;
    border: none;
    padding: 0.9rem 2.5rem;
    font-weight: 600;
}

.pyloherb-btn--promo:hover {
    background: var(--pylo-cream);
    color: #1a1a1a;
    text-decoration: none;
}

.aiz-pyloherb .pyloherb-about__badge,
.pyloherb-about__badge {
    background: #d2c4b0;
    position: absolute;
    right: -0.75rem;
    bottom: 1.25rem;
    padding: 1.35rem 1.5rem;
    max-width: 188px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.aiz-pyloherb .pyloherb-about__badge-num,
.pyloherb-about__badge-num {
    font-family: var(--pylo-serif);
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--pylo-green);
    line-height: 1;
    display: block;
}

.aiz-pyloherb .pyloherb-about__badge-text,
.pyloherb-about__badge-text {
    font-size: 0.75rem;
    color: var(--pylo-green);
    line-height: 1.4;
    display: block;
    margin-top: 0.35rem;
}

/* Lab section — cùng max-width với .container */
.aiz-pyloherb .pyloherb-section--lab {
    padding: var(--pylo-space-sm, clamp(16px, 1.2vw, 20px)) 0;
    background: var(--pylo-cream);
}

.aiz-pyloherb .pyloherb-lab__inner {
    background: var(--pylo-lab-bg);
    padding: var(--pylo-space-lg, clamp(24px, 2vw, 32px));
    border-radius: 4px;
}

.pyloherb-stat-card {
    background: #fff;
    padding: var(--pylo-space-md, 24px) var(--pylo-space-sm, 20px);
    min-height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pyloherb-stat-card__label {
    font-size: 0.8125rem;
    color: #7a7a7a;
    margin-bottom: 0.75rem;
    display: block;
}

.pyloherb-stat-card__value {
    font-family: var(--pylo-serif);
    font-size: 2rem;
    font-weight: 700;
    color: var(--pylo-green);
    line-height: 1.1;
}

.pyloherb-stat-card__value small {
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    color: #6b6b6b;
}

@media (max-width: 991.98px) {
    .aiz-pyloherb .pyloherb-categories {
        grid-template-columns: 2fr 1fr;
        grid-template-rows: auto auto;
        gap: 10px;
        min-height: 0;
        align-items: stretch;
    }

    .aiz-pyloherb .pyloherb-cat-card,
    .aiz-pyloherb .pyloherb-cat-card--large {
        grid-row: auto;
        aspect-ratio: auto;
        min-height: 0;
        height: auto;
        align-self: stretch;
    }

    .aiz-pyloherb .pyloherb-cat-card--large {
        grid-column: 1;
        grid-row: 1 / span 2;
        aspect-ratio: unset;
    }

    .aiz-pyloherb .pyloherb-cat-card--large img {
        object-fit: contain;
        object-position: center center;
    }

    .aiz-pyloherb .pyloherb-cat-card:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
        aspect-ratio: 1 / 1;
    }

    .aiz-pyloherb .pyloherb-cat-card:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
        aspect-ratio: 1 / 1;
    }

    .pyloherb-cat-card__content {
        padding: 10px 12px;
    }

    .pyloherb-cat-card--large .pyloherb-cat-card__content {
        padding: 12px 14px;
    }

    .pyloherb-cat-card__title {
        font-size: 11px;
        line-height: 1.2;
        margin-bottom: 4px;
        display: -webkit-box;
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .pyloherb-cat-card--large .pyloherb-cat-card__title {
        font-size: 12px;
    }

    .pyloherb-cat-card__desc {
        font-size: 10px;
        line-height: 1.4;
        margin-bottom: 6px;
        display: -webkit-box;
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .pyloherb-cat-card__cta {
        font-size: 10px;
    }

    .aiz-pyloherb .pyloherb-promo__grid,
    .pyloherb-promo__grid {
        grid-template-columns: 1fr;
        aspect-ratio: unset;
        min-height: 0;
        max-height: none;
        overflow: visible;
        background: #193023;
    }

    .aiz-pyloherb .pyloherb-promo__content,
    .pyloherb-promo__content {
        padding: 2.25rem 1.5rem;
        min-height: 0;
        gap: 16px;
    }

    .aiz-pyloherb .pyloherb-promo__media,
    .pyloherb-promo__media {
        min-height: 240px;
        height: auto;
        margin: 0;
        aspect-ratio: 4 / 3;
        border-radius: 12px;
    }

    .aiz-pyloherb .pyloherb-about__grid,
    .pyloherb-about__grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .aiz-pyloherb .pyloherb-about__img,
    .pyloherb-about__img {
        aspect-ratio: 16 / 11;
        max-height: none;
    }

    .aiz-pyloherb .pyloherb-about__badge,
    .pyloherb-about__badge {
        right: 0.5rem;
        bottom: 1rem;
    }
}

/* header5 compact: pull logo-bar flush to bottom border */
.pylo-site-header .top-navbar {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.pylo-site-header .top-navbar .col-6 {
    margin-top: 0 !important;
    padding-top: 0.15rem !important;
    padding-bottom: 0.15rem !important;
}

@media (max-width: 767.98px) {
    .pylo-site-header .logo-bar-area {
        padding-top: 2px !important;
        padding-bottom: 2px !important;
    }

    .pylo-site-header .logo-bar-area>.container>.d-flex {
        min-height: 50px !important;
        align-items: center !important;
        padding-top: 2px !important;
        padding-bottom: 2px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .pylo-site-header .logo-bar-area {
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }
    .pylo-site-header .logo-bar-area>.container>.d-flex {
        min-height: 64px !important;
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }
}

.pylo-site-header .logo-bar-area a.d-block {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.pylo-site-header .logo-bar-area a.d-block>#header-logo-preview,
.pylo-site-header .logo-bar-area a.d-block>img.h-md-40px,
.pylo-site-header .logo-bar-area>.container>.d-flex>a.d-block img {
    height: auto !important;
    max-height: 80px !important;
    width: 80px !important;
    max-width: 80px !important;
    object-fit: contain !important;
}

@media (min-width: 768px) {

    .pylo-site-header .logo-bar-area a.d-block>#header-logo-preview,
    .pylo-site-header .logo-bar-area a.d-block>img.h-md-40px,
    .pylo-site-header .logo-bar-area>.container>.d-flex>a.d-block img {
        height: auto !important;
        max-height: 100px !important;
        width: 100px !important;
        max-width: 100px !important;
        object-fit: contain !important;
    }
}

@media (min-width: 992px) {

    .pylo-site-header .logo-bar-area a.d-block>#header-logo-preview,
    .pylo-site-header .logo-bar-area a.d-block>img.h-md-40px,
    .pylo-site-header .logo-bar-area>.container>.d-flex>a.d-block img {
        height: 87px !important;
        max-height: 87px !important;
        width: 100px !important;
        max-width: 100px !important;
    }
}

.pylo-site-header .header-menus-container,
.pylo-site-header .header-menus-container .d-flex {
    height: auto !important;
    min-height: 0 !important;
}

.pylo-site-header .header_menu_links {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    line-height: 1.2 !important;
}

.pylo-site-header .search-icon-desktop,
.pylo-site-header .pyloherb-header-settings .gear-toggle {
    width: 30px !important;
    height: 30px !important;
}

.pylo-site-header #cart_items>.btn,
.pylo-site-header #nav-user-slot .nav-box-link,
.pylo-site-header .nav-search-box .nav-box-link {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.2 !important;
}

.pylo-site-header .nav-user-info {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0;
    line-height: 1 !important;
    vertical-align: middle;
}

.pylo-site-header .nav-user-info .nav-user-img,
.pylo-site-header .nav-user-info .size-40px {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    line-height: 0 !important;
    flex: 0 0 28px !important;
    margin: 0 !important;
    align-self: center !important;
}

.pylo-site-header .nav-user-info .nav-user-img img,
.pylo-site-header .nav-user-info .size-40px img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
}

.pylo-site-header .nav-user-info a {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.2 !important;
}

.pylo-site-header .nav-user-info h4,
.pylo-site-header .nav-user-info .h5,
.pylo-site-header .nav-user-info .fs-14 {
    font-size: 13px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    align-self: center !important;
}

/* Product variant options that are out of stock — fade only */
.variant-option--oos,
label.aiz-megabox.variant-option--oos {
    opacity: 0.38;
    filter: grayscale(0.35);
}

.variant-option--oos input:checked+.aiz-megabox-elem,
.variant-option--oos input:checked+.variant-item-select {
    opacity: 0.85;
}

/* PyLoHerb Mockup Footer Stylesheet */
.pylo-mockup-footer {
    background-color: var(--pylo-footer-bg, #FAF3EC) !important;
    color: var(--pylo-footer-text, #8C6246) !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    font-size: 14.5px;
    line-height: 1.6;
    padding-bottom: 30px;
    border-top: 1px solid var(--pylo-footer-border, #EAD7C5);
}

/* Footer Service Highlights Band */
.pylo-footer-services {
    padding-top: 26px;
    padding-bottom: 26px;
    margin-bottom: 26px;
    border-bottom: 1px solid var(--pylo-footer-border, #EAD7C5);
    background: var(--footer-hl-bg, transparent);
}

/* Tracks hug their content so the leftover space is shared evenly between the
   items instead of piling up after the last (usually shortest) one. */
.pylo-footer-services__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, max-content));
    justify-content: space-between;
    gap: 18px 26px;
}

.pylo-footer-service {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    max-width: 340px;
    color: var(--pylo-footer-text, #8C6246);
}

.pylo-footer-service__icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
}

.pylo-footer-service__icon .pylo-hl-icon {
    width: 100%;
    height: 100%;
    display: block;
}

.pylo-footer-service__body {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.pylo-footer-service__title {
    color: var(--footer-hl-title, var(--pylo-footer-title, #8C6246));
    font-weight: 800;
    font-size: 13.5px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    line-height: 1.35;
}

.pylo-footer-service__subtitle {
    font-size: 13px;
    line-height: 1.4;
    opacity: 0.85;
    color: var(--footer-hl-desc, var(--pylo-footer-text, #8C6246));
}

@media (max-width: 991.98px) {
    .pylo-footer-services {
        padding-top: 18px;
        padding-bottom: 18px;
        margin-bottom: 18px;
    }

    .pylo-footer-services__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-content: stretch;
        gap: 14px 12px;
    }

    .pylo-footer-service {
        max-width: none;
        gap: 8px;
        align-items: flex-start;
    }

    .pylo-footer-service__icon {
        width: 34px;
        height: 34px;
    }

    .pylo-footer-service__title {
        font-size: 10px;
        letter-spacing: 0.2px;
        line-height: 1.3;
    }

    .pylo-footer-service__subtitle {
        font-size: 10px;
        line-height: 1.35;
    }
}

/* Footer Top Row - Flex Layout */
/* Columns hug their content so the leftover space is shared evenly between them
   and the last column ends flush with the right edge, same as the service band. */
.pylo-footer-top-row {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 20px;
}

.pylo-footer-company-col {
    flex: 0 1 auto;
    max-width: 45%;
}

.pylo-footer-link-col {
    flex: 0 1 auto;
    min-width: 0;
}

@media (max-width: 991.98px) {
    .pylo-footer-top-row {
        flex-wrap: wrap;
    }

    .pylo-footer-company-col {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 24px;
    }

    .pylo-footer-link-col {
        flex: 1 1 0;
        max-width: none;
        min-width: 0;
        margin-bottom: 0;
    }
}

@media (max-width: 575.98px) {
    .pylo-footer-top-row {
        gap: 12px;
    }

    .pylo-footer-link-col {
        flex: 1 1 0;
        max-width: none;
        min-width: 0;
    }

    .pylo-mockup-footer .pylo-mockup-heading {
        font-size: 11px;
        letter-spacing: 0.3px;
        margin-bottom: 8px;
        line-height: 1.3;
    }

    .pylo-footer-links-list li {
        margin-bottom: 4px;
    }

    .pylo-footer-links-list li a {
        font-size: 11px;
        line-height: 1.35;
    }
}

.pylo-mockup-footer a:not(.pylo-social-btn) {
    color: var(--pylo-footer-link, #8C6246) !important;
    text-decoration: none;
}

.pylo-mockup-footer a.pylo-underline,
.pylo-mockup-footer .pylo-underline a {
    text-decoration: underline !important;
}

.pylo-mockup-footer a:not(.pylo-social-btn):hover {
    color: var(--pylo-footer-hover, #A86F4C) !important;
}

.pylo-mockup-heading {
    color: var(--pylo-footer-title, #8C6246) !important;
    font-weight: 800;
    font-size: 15px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.pylo-company-info p {
    margin-bottom: 5px;
    font-size: 14px;
    color: var(--pylo-footer-text, #8C6246);
}

.pylo-company-info p strong {
    font-weight: 700;
}

.pylo-footer-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.pylo-footer-links-list li {
    margin-bottom: 6px;
}

.pylo-footer-links-list li a {
    text-decoration: underline !important;
    font-size: 14px;
}

/* Horizontal Dividers */
.pylo-footer-hr {
    border: 0;
    border-top: 1px solid var(--pylo-footer-border, #EAD7C5);
    margin: 22px 0;
    opacity: 1;
}

/* Middle Section */
.pylo-newsletter-title-text {
    color: var(--pylo-footer-title, #8C6246) !important;
    font-weight: 800;
    font-size: 17px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.pylo-phone-input-field {
    border: 1px solid var(--pylo-footer-title, #8C6246);
    background-color: #ffffff;
    border-radius: 2px;
    padding: 8px 14px;
    font-size: 14px;
    width: 320px;
    max-width: 100%;
    outline: none;
    color: #333333;
}

.pylo-phone-input-field::placeholder {
    color: #888888;
    font-style: normal;
}

.pylo-social-icons-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
}

.pylo-social-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #ffffff;
    color: inherit;
    border: 2px solid transparent;
    transition: transform 0.15s ease, opacity 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.pylo-social-btn svg {
    width: 18px;
    height: 18px;
    display: block;
    fill: currentColor;
}

.pylo-social-btn:hover {
    transform: translateY(-2px);
    opacity: 0.95;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.14);
}

.pylo-social-btn--facebook {
    color: #1877F2;
    border-color: #1877F2;
}

.pylo-social-btn--zalo {
    color: #0068FF;
    border-color: #0068FF;
}

.pylo-social-btn--tiktok {
    color: #000000;
    border-color: #000000;
}

.pylo-social-btn--shopee {
    color: #EE4D2D;
    border-color: #EE4D2D;
}

.pylo-social-btn--youtube {
    color: #FF0000;
    border-color: #FF0000;
}

/* Bottom Section */
.pylo-bottom-legal {
    font-size: 13px;
    color: var(--pylo-footer-text, #8C6246);
}

.pylo-bottom-legal p {
    margin-bottom: 4px;
}

.pylo-bottom-legal p:last-child {
    margin-bottom: 0;
}

.pylo-bottom-legal a {
    text-decoration: underline !important;
}

/* ═══════════════════════════════════════════════════════════
   Admin Appearance button theme (base_color / base_hov_color)
   Ensures clickable primary CTAs follow Website → Appearance.
   ═══════════════════════════════════════════════════════════ */
.btn-primary,
.btn-primary:not(:disabled):not(.disabled),
.aiz-megabox>input:checked~span.btn-primary,
.pyloherb-btn--primary,
.pyloherb-btn--dark,
.pyloherb-btn--hero-primary,
.pyloherb-btn--checkout,
.pyloherb-btn--checkout-figma,
.pyloherb-bs__btn--primary,
.pyloherb-bs__play-btn,
.pyloherb-combo-detail__cta,
.pyloherb-cart__sticky-checkout-btn,
.pyloherb-order-confirm__btn--primary,
.pyloherb-order-detail__btn--primary,
.pyloherb-order-detail__pay-btn,
.pyloherb-account__logout,
.pyloherb-club-point__btn--apply,
.pyloherb-blog__search-field button,
.pylo-store-card.is-active .pylo-store-card__directions,
.pylo-store-newsletter__btn,
.pylo-notif__empty-cta,
.pylo-btn,
.pylo-reserve__submit,
.pylo-reserve-modal__btn--primary,
.pyloherb-listing .aiz-card-box .cart-btn,
.product-details .product-buybox__actions .buy-now,
button.pyloherb-product-card__cart--solid,
.pyloherb-product-card__cart--solid,
a.pyloherb-product-card__cart--solid {
    background-color: var(--primary) !important;
    background-image: none !important;
    border-color: var(--primary) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):hover,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle,
.pyloherb-btn--primary:hover,
.pyloherb-btn--dark:hover,
.pyloherb-btn--hero-primary:hover,
.pyloherb-btn--checkout:hover:not(:disabled),
.pyloherb-btn--checkout-figma:hover,
.pyloherb-bs__btn--primary:hover,
.pyloherb-bs__play-btn:hover,
.pyloherb-combo-detail__cta:hover,
.pyloherb-cart__sticky-checkout-btn:hover,
.pyloherb-order-confirm__btn--primary:hover,
.pyloherb-order-detail__btn--primary:hover,
.pyloherb-order-detail__pay-btn:hover,
.pyloherb-account__logout:hover,
.pyloherb-club-point__btn--apply:hover,
.pyloherb-blog__search-field button:hover,
.pylo-store-card.is-active .pylo-store-card__directions:hover,
.pylo-store-newsletter__btn:hover,
.pylo-notif__empty-cta:hover,
.pylo-btn:hover,
.pylo-reserve__submit:hover,
.pylo-reserve-modal__btn--primary:hover:not(:disabled),
.pyloherb-listing .aiz-card-box .cart-btn:hover,
.product-details .product-buybox__actions .buy-now:hover,
button.pyloherb-product-card__cart--solid:hover,
.pyloherb-product-card__cart--solid:hover,
a.pyloherb-product-card__cart--solid:hover {
    background-color: var(--hov-primary) !important;
    background-image: none !important;
    border-color: var(--hov-primary) !important;
}

.btn-secondary-base,
.btn-secondary-base:not(:disabled):not(.disabled) {
    background-color: var(--secondary-base) !important;
    background-image: none !important;
    border-color: var(--secondary-base) !important;
}

.btn-secondary-base:hover,
.btn-secondary-base:focus,
.btn-secondary-base:active,
.btn-secondary-base:not(:disabled):not(.disabled):hover {
    background-color: var(--hov-secondary-base) !important;
    background-image: none !important;
    border-color: var(--hov-secondary-base) !important;
}

/* Pagination active / hover */
.pagination .page-item.active .page-link,
.pagination .active .page-link,
.pyloherb-listing__pagination .page-item.active .page-link {
    background-color: var(--primary) !important;
    background-image: none !important;
    border-color: var(--primary) !important;
    color: #fff !important;
}

.pagination .page-item.active .page-link:hover,
.pagination .active .page-link:hover,
.pyloherb-listing__pagination .page-item.active .page-link:hover {
    background-color: var(--hov-primary) !important;
    border-color: var(--hov-primary) !important;
    color: #fff !important;
}

.pagination .page-link:hover,
.pyloherb-listing__pagination .page-link:hover {
    color: var(--primary);
}

/* Journey intro description — rich text from aiz-text-editor */
.pylo-cms-richtext {
    font-size: inherit;
    line-height: inherit;
}

/* Ignore tiny inline sizes pasted from the editor */
.pylo-cms-richtext font,
.pylo-cms-richtext span[style*="font-size"],
.pylo-cms-richtext p[style*="font-size"] {
    font-size: inherit !important;
}

.pylo-cms-richtext>*:first-child {
    margin-top: 0;
}

.pylo-cms-richtext>*:last-child {
    margin-bottom: 0;
}

.pylo-cms-richtext p {
    margin: 0 0 var(--pylo-section-desc-gap, 1em);
}

.pylo-cms-richtext p:last-child {
    margin-bottom: 0;
}

.pylo-cms-richtext strong,
.pylo-cms-richtext b {
    font-weight: 700;
}

.pylo-cms-richtext em,
.pylo-cms-richtext i {
    font-style: italic;
}

.pylo-cms-richtext u {
    text-decoration: underline;
}

.pylo-cms-richtext ul,
.pylo-cms-richtext ol {
    margin: 0 0 0.85em;
    padding-left: 1.25em;
}

.pylo-cms-richtext a {
    color: inherit;
    text-decoration: underline;
}

/* Summernote: tame pasted layout HTML without breaking editor chrome / cursor */
.note-editor .note-editable {
    line-height: 1.65 !important;
    overflow: auto !important;
    min-height: 280px;
    position: relative !important;
    cursor: text !important;
    caret-color: #000000 !important;
    color: #1c1c1c;
    background-color: #fff !important;
}

/* Caret (thanh nháy khi gõ) — luôn đen */
.note-editor .note-editable,
.note-editor .note-editable * {
    caret-color: #000000 !important;
}

/* Only neutralize Bootstrap-like layout wrappers — never absolute/fixed (breaks handles → white cursor overlay). */
.note-editor .note-editable .row,
.note-editor .note-editable [class*="col-"],
.note-editor .note-editable [class*="d-flex"],
.note-editor .note-editable [class*="grid"],
.note-editor .note-editable [class*="footer"] {
    position: static !important;
    float: none !important;
    transform: none !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    flex: none !important;
    grid-template-columns: none !important;
}

.note-editor .note-editable img,
.note-editor .note-editable video,
.note-editor .note-editable iframe {
    max-width: 100% !important;
    height: auto !important;
}

.note-editor .note-editable table {
    max-width: 100% !important;
    border-collapse: collapse !important;
    width: 100%;
}

.note-editor .note-editable td,
.note-editor .note-editable th {
    cursor: text !important;
    caret-color: #000000 !important;
    word-break: break-word;
}

/* Keep Summernote resize/selection UI usable */
.note-editor .note-control-selection,
.note-editor .note-control-selection *,
.note-editor .note-handle,
.note-editor .note-handle * {
    cursor: move !important;
}

.note-editor .note-toolbar,
.note-editor .note-toolbar *,
.note-editor .note-statusbar,
.note-editor .note-statusbar * {
    cursor: pointer !important;
    caret-color: auto !important;
}

.note-editor .note-editable h1,
.note-editor .note-editable h2,
.note-editor .note-editable h3,
.note-editor .note-editable h4,
.note-editor .note-editable p,
.note-editor .note-editable li,
.note-editor .note-editable ul,
.note-editor .note-editable ol {
    margin-top: 0.35em !important;
    margin-bottom: 0.65em !important;
    line-height: 1.65;
}

/* Custom page admin: WYSIWYG editor canvas matching user frontend page container (1140px) */
.pylo-page-content-editor {
    background: #eef1f5;
    padding: 16px;
    border-radius: 8px;
    border: 1px solid #dfe5ec;
}

.pylo-page-content-editor .note-editor.note-frame {
    width: 100%;
    max-width: 100%;
    border: 1px solid #d0d7de !important;
    border-radius: 8px !important;
    background: #e9ecef !important;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.pylo-page-content-editor .note-editor .note-toolbar {
    position: sticky;
    top: 0;
    z-index: 10;
    background: #ffffff !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 8px 12px !important;
}

/* Document sheet: 100% full width matching user page layout */
.pylo-page-content-editor .note-editor .note-editing-area {
    background: #ffffff !important;
    padding: 0 !important;
}

.pylo-page-content-editor .note-editor .note-editable {
    min-height: 580px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 24px 20px !important;
    background-color: #ffffff !important;
    border: none !important;
    font-family: var(--pylo-sans, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif) !important;
    font-size: 16px;
    line-height: 1.75;
    color: #212529;
    box-sizing: border-box !important;
}

.pylo-page-content-editor .note-editor .note-editable h1:not([style*="line-height"]) {
    font-size: 2.2rem;
    font-weight: 700;
    margin-top: 1rem;
    margin-bottom: 0.75rem;
    line-height: 1.35;
}

.pylo-page-content-editor .note-editor .note-editable h2:not([style*="line-height"]) {
    font-size: 1.75rem;
    font-weight: 700;
    margin-top: 0.9rem;
    margin-bottom: 0.65rem;
    line-height: 1.4;
}

.pylo-page-content-editor .note-editor .note-editable h3:not([style*="line-height"]) {
    font-size: 1.4rem;
    font-weight: 600;
    margin-top: 0.8rem;
    margin-bottom: 0.55rem;
    line-height: 1.45;
}

.pylo-page-content-editor .note-editor .note-editable p:not([style*="line-height"]) {
    margin-bottom: 1rem;
    line-height: 1.75;
}

.pylo-page-content-editor .note-editor .note-editable img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 6px;
    margin: 8px 0;
}

.pylo-page-content-editor .note-editor .note-editable table {
    width: 100% !important;
    margin-bottom: 1rem;
    border-collapse: collapse;
}

.pylo-page-content-editor .note-editor .note-editable table th,
.pylo-page-content-editor .note-editor .note-editable table td {
    padding: 8px 12px;
    border: 1px solid #dee2e6;
    font-size: 15px;
}

/* Summernote font family & font size dropdown enhancements (Word-like rich editor) */
.note-editor .note-toolbar .note-btn-group {
    margin-right: 4px;
    margin-bottom: 4px;
}
.note-editor .note-toolbar .dropdown-menu {
    max-height: 320px;
    overflow-y: auto;
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(0, 0, 0, 0.08);
    background-color: #ffffff !important;
    min-width: 170px;
    padding: 6px 0;
}
.note-editor .note-toolbar .dropdown-menu .dropdown-item {
    display: flex !important;
    align-items: center;
    padding: 7px 14px !important;
    font-size: 13px !important;
    color: #212529 !important;
    background-color: transparent;
    transition: background 0.15s ease, color 0.15s ease;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.4;
    white-space: nowrap;
}
.note-editor .note-toolbar .dropdown-menu .dropdown-item:hover,
.note-editor .note-toolbar .dropdown-menu .dropdown-item:focus {
    background-color: #f0fdf4 !important;
    color: #1a3d2e !important;
}
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item {
    display: flex !important;
    align-items: center !important;
}
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item i.note-icon-menu-check {
    display: inline-block !important;
    width: 18px !important;
    font-size: 12px !important;
    margin-right: 8px !important;
    flex-shrink: 0;
    color: #1a3d2e;
    font-style: normal !important;
}
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item:not(.checked) i.note-icon-menu-check:before {
    visibility: hidden !important;
    opacity: 0 !important;
    content: "" !important;
}
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item.checked i.note-icon-menu-check:before {
    visibility: visible !important;
    opacity: 1 !important;
    content: "\ea21" !important;
    font-family: summernote !important;
    color: #1a3d2e !important;
}
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item span,
.note-editor .note-toolbar .dropdown-menu.note-check .dropdown-item i span {
    color: #212529 !important;
    display: inline-block !important;
    font-style: normal !important;
    font-size: 13px !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.note-editor .note-current-fontname,
.note-editor .note-current-fontsize {
    font-weight: 600;
    min-width: 28px;
    display: inline-block;
    color: #212529;
}

/* ── Section “Mô tả”: one size + line rhythm ── */
.aiz-pyloherb .pyloherb-section__subtitle,
.aiz-pyloherb .pyloherb-text,
.aiz-pyloherb .pyloherb-about__copy .pyloherb-text,
.aiz-pyloherb .pyloherb-lab__copy .pyloherb-text,
.aiz-pyloherb .pyloherb-promo__desc,
.aiz-pyloherb .pyloherb-home-cta__desc,
.aiz-pyloherb .pyloherb-whychoose__desc,
.aiz-pyloherb .pyloherb-offers-combo__desc,
.aiz-pyloherb .pyloherb-offers-program__desc,
.aiz-pyloherb .pyloherb-fd-detail-products__desc,
.aiz-pyloherb .pyloherb-all-cats__desc,
.aiz-pyloherb .pyloherb-prose,
.aiz-pyloherb .pyloherb-prose p,
.aiz-pyloherb .pylo-cms-richtext,
.aiz-pyloherb .pylo-cms-richtext p,
.pyloherb-section__subtitle,
.pyloherb-text,
.pyloherb-promo__desc,
.pyloherb-home-cta__desc,
.pyloherb-whychoose__desc,
.pyloherb-offers-combo__desc,
.pyloherb-offers-program__desc,
.pyloherb-fd-detail-products__desc,
.pyloherb-all-cats__desc,
.pyloherb-prose,
.pyloherb-prose p,
.pylo-cms-richtext,
.pylo-cms-richtext p {
    font-size: var(--pylo-section-desc-size, 15px) !important;
    line-height: var(--pylo-section-desc-lh, 1.7) !important;
}

.aiz-pyloherb .pyloherb-text,
.aiz-pyloherb .pyloherb-about__copy .pyloherb-text,
.aiz-pyloherb .pyloherb-prose p,
.aiz-pyloherb .pylo-cms-richtext p,
.pyloherb-text,
.pyloherb-prose p,
.pylo-cms-richtext p {
    margin-bottom: var(--pylo-section-desc-gap, 1em) !important;
}

.aiz-pyloherb .pyloherb-text:last-child,
.aiz-pyloherb .pyloherb-about__copy .pyloherb-text:last-child,
.aiz-pyloherb .pyloherb-prose p:last-child,
.aiz-pyloherb .pylo-cms-richtext p:last-child,
.pyloherb-text:last-child,
.pyloherb-prose p:last-child,
.pylo-cms-richtext p:last-child {
    margin-bottom: 0 !important;
}

/* Keep centered mô tả centered */
.aiz-pyloherb .pyloherb-section__head--center .pyloherb-section__subtitle,
.aiz-pyloherb .pyloherb-related-products .pyloherb-section__subtitle,
.aiz-pyloherb .pyloherb-last-viewed .pyloherb-section__subtitle,
.pyloherb-section__head--center .pyloherb-section__subtitle,
.pyloherb-related-products .pyloherb-section__subtitle,
.pyloherb-last-viewed .pyloherb-section__subtitle {
    text-align: center !important;
}

/* Left-aligned mô tả: mobile left, desktop justify */
.aiz-pyloherb .pyloherb-section__head--stacked .pyloherb-section__subtitle,
.aiz-pyloherb .pyloherb-text,
.aiz-pyloherb .pyloherb-about__copy .pyloherb-text,
.aiz-pyloherb .pyloherb-lab__copy .pyloherb-text,
.aiz-pyloherb .pyloherb-promo__desc,
.aiz-pyloherb .pyloherb-home-cta__desc,
.aiz-pyloherb .pyloherb-whychoose__desc,
.aiz-pyloherb .pyloherb-offers-combo__desc,
.aiz-pyloherb .pyloherb-offers-program__desc,
.aiz-pyloherb .pyloherb-fd-detail-products__desc,
.aiz-pyloherb .pyloherb-all-cats__desc,
.aiz-pyloherb .pyloherb-prose p,
.aiz-pyloherb .pylo-cms-richtext p,
.pyloherb-section__head--stacked .pyloherb-section__subtitle,
.pyloherb-text,
.pyloherb-promo__desc,
.pyloherb-home-cta__desc,
.pyloherb-whychoose__desc,
.pyloherb-offers-combo__desc,
.pyloherb-offers-program__desc,
.pyloherb-fd-detail-products__desc,
.pyloherb-all-cats__desc,
.pyloherb-prose p,
.pylo-cms-richtext p {
    text-align: left !important;
}

@media (min-width: 768px) {

    .aiz-pyloherb .pyloherb-section__head--stacked .pyloherb-section__subtitle,
    .aiz-pyloherb .pyloherb-text,
    .aiz-pyloherb .pyloherb-about__copy .pyloherb-text,
    .aiz-pyloherb .pyloherb-lab__copy .pyloherb-text,
    .aiz-pyloherb .pyloherb-promo__desc,
    .aiz-pyloherb .pyloherb-home-cta__desc,
    .aiz-pyloherb .pyloherb-whychoose__desc,
    .aiz-pyloherb .pyloherb-offers-combo__desc,
    .aiz-pyloherb .pyloherb-offers-program__desc,
    .aiz-pyloherb .pyloherb-fd-detail-products__desc,
    .aiz-pyloherb .pyloherb-all-cats__desc,
    .aiz-pyloherb .pyloherb-prose p,
    .aiz-pyloherb .pylo-cms-richtext p,
    .pyloherb-section__head--stacked .pyloherb-section__subtitle,
    .pyloherb-text,
    .pyloherb-promo__desc,
    .pyloherb-home-cta__desc,
    .pyloherb-whychoose__desc,
    .pyloherb-offers-combo__desc,
    .pyloherb-offers-program__desc,
    .pyloherb-fd-detail-products__desc,
    .pyloherb-all-cats__desc,
    .pyloherb-prose p,
    .pylo-cms-richtext p {
        text-align: justify !important;
        text-justify: inter-word;
    }
}

/* ── User-facing images (incl. banners): never crop ── */
.aiz-main-wrapper img,
.pyloherb-header-wrap img,
.pylo-site-header img,
.pyloherb-footer img,
.pyloherb-product-card__img-wrap img,
.pyloherb-cat-card img,
.pyloherb-blog-card__media img,
.aiz-main-wrapper .img-fit,
.aiz-main-wrapper .img {
    object-fit: contain !important;
}

.aiz-main-wrapper .pyloherb-hero__bg-img,
.aiz-main-wrapper .pylo-hero img,
.aiz-main-wrapper .pyloherb-bs__hero-img,
.pyloherb-hero__bg-img,
.pylo-hero img,
.pyloherb-bs__hero-img {
    object-fit: cover !important;
    object-position: center !important;
}

.pyloherb-hero,
.pyloherb-hero__bg,
.pyloherb-listing-hero,
.pyloherb-listing-hero.pyloherb-listing-hero--search,
.pylo-hero,
.pyloherb-bs__hero,
.pyloherb-fd-detail-hero__bg,
.pyloherb-offers-hero__bg {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.pyloherb-bs__vcard-media,
.pyloherb-bs__commitment-bg,
.pyloherb-promo__media {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* Page banners: 1930×705, full-bleed, no side gutters */
.pyloherb-hero,
.pyloherb-listing-hero,
.pyloherb-listing-hero.pyloherb-listing-hero--search,
.pylo-hero,
.pyloherb-bs__hero,
.pyloherb-offers-hero,
.pyloherb-fd-detail-hero {
    aspect-ratio: 1930 / 705 !important;
    width: 100% !important;
    height: var(--pylo-banner-height, calc(100vw * 705 / 1930)) !important;
    min-height: var(--pylo-banner-height, calc(100vw * 705 / 1930)) !important;
    max-height: var(--pylo-banner-height, calc(100vw * 705 / 1930)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 0 !important;
    background-color: #fff !important;
}

/* Avatars / tiny flags stay filled */
.pylo-site-header .nav-user-img img,
.pylo-site-header .nav-user-info .size-40px img,
.pyloherb-top-menu-sidebar .nav-user-img img,
.aiz-main-wrapper img[src*="/flags/"] {
    object-fit: cover !important;
}

/* =========================================================================
   Mobile typography — cascade-final (loads after pyloherb / aiz-core)
   ========================================================================= */
@media (max-width: 767.98px) {
    :root {
        --pylo-fs-xs: 10px;
        --pylo-fs-sm: 12px;
        --pylo-fs-base: 14px;
        --pylo-fs-md: 15px;
        --pylo-fs-lg: 16px;
        --pylo-fs-h1: clamp(1.4rem, 5.5vw, 1.75rem);
        --pylo-fs-h2: clamp(1.25rem, 4.8vw, 1.5rem);
        --pylo-fs-h3: clamp(1.1rem, 4.2vw, 1.3rem);
        --pylo-fs-h4: 1.05rem;
        --pylo-lh-tight: 1.25;
        --pylo-lh-body: 1.55;
    }

    html {
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body,
    .aiz-main-wrapper {
        font-size: var(--pylo-fs-base) !important;
        line-height: var(--pylo-lh-body) !important;
    }

    h1,
    .h1 {
        font-size: var(--pylo-fs-h1) !important;
        line-height: var(--pylo-lh-tight) !important;
    }

    h2,
    .h2 {
        font-size: var(--pylo-fs-h2) !important;
        line-height: var(--pylo-lh-tight) !important;
    }

    h3,
    .h3 {
        font-size: var(--pylo-fs-h3) !important;
        line-height: var(--pylo-lh-tight) !important;
    }

    h4,
    .h4 {
        font-size: var(--pylo-fs-h4) !important;
        line-height: var(--pylo-lh-tight) !important;
    }

    h5,
    .h5,
    h6,
    .h6 {
        font-size: var(--pylo-fs-md) !important;
    }

    p,
    li,
    td,
    th,
    label,
    .form-control {
        font-size: var(--pylo-fs-base) !important;
        line-height: var(--pylo-lh-body) !important;
    }

    .btn,
    button.btn {
        font-size: var(--pylo-fs-sm) !important;
    }

    .fs-10,
    .fs-11,
    .fs-12,
    .fs-13 {
        font-size: var(--pylo-fs-sm) !important;
    }

    .fs-14,
    .fs-15,
    .fs-16 {
        font-size: var(--pylo-fs-base) !important;
    }

    .fs-18,
    .fs-20 {
        font-size: var(--pylo-fs-lg) !important;
    }

    .fs-24,
    .fs-30,
    .fs-36 {
        font-size: var(--pylo-fs-h2) !important;
    }

    .pyloherb-cat-card h3.pyloherb-cat-card__title,
    .pyloherb-cat-card .pyloherb-cat-card__title {
        font-size: 11px !important;
        line-height: 1.25 !important;
        margin-bottom: 2px !important;
    }

    .pyloherb-cat-card--large h3.pyloherb-cat-card__title,
    .pyloherb-cat-card--large .pyloherb-cat-card__title {
        font-size: 12px !important;
    }

    .pyloherb-cat-card p.pyloherb-cat-card__desc,
    .pyloherb-cat-card .pyloherb-cat-card__desc {
        font-size: 10px !important;
        line-height: 1.35 !important;
        margin-bottom: 4px !important;
    }
}

/* ── Featured Categories Bento Grid (1 Large Left + 2 Small Right) ── */
.aiz-pyloherb .pyloherb-categories,
.pyloherb-categories {
    display: grid !important;
    grid-template-columns: 2fr 1fr !important;
    grid-template-rows: 1fr 1fr !important;
    gap: 16px !important;
    align-items: stretch !important;
    min-height: 0 !important;
}

.aiz-pyloherb .pyloherb-cat-card,
.pyloherb-cat-card {
    position: relative !important;
    display: block !important;
    height: 100% !important;
    min-height: 0 !important;
    width: 100% !important;
    align-self: stretch !important;
    overflow: hidden !important;
    border-radius: 8px !important;
}

.aiz-pyloherb .pyloherb-cat-card:nth-child(2),
.pyloherb-cat-card:nth-child(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    aspect-ratio: 1 / 1 !important;
}

.aiz-pyloherb .pyloherb-cat-card:nth-child(3),
.pyloherb-cat-card:nth-child(3) {
    grid-column: 2 !important;
    grid-row: 2 !important;
    aspect-ratio: 1 / 1 !important;
}

.aiz-pyloherb .pyloherb-cat-card--large,
.pyloherb-cat-card--large {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    aspect-ratio: unset !important;
    height: 100% !important;
    min-height: 100% !important;
    align-self: stretch !important;
}

.aiz-pyloherb .pyloherb-cat-card img,
.pyloherb-cat-card img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

@media (max-width: 991.98px) {
    .aiz-pyloherb .pyloherb-categories,
    .pyloherb-categories {
        display: grid !important;
        grid-template-columns: 2fr 1fr !important;
        grid-template-rows: 1fr 1fr !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    .aiz-pyloherb .pyloherb-cat-card h3.pyloherb-cat-card__title,
    .pyloherb-cat-card h3.pyloherb-cat-card__title {
        font-size: 11px !important;
        line-height: 1.25 !important;
    }

    .aiz-pyloherb .pyloherb-cat-card--large h3.pyloherb-cat-card__title,
    .pyloherb-cat-card--large h3.pyloherb-cat-card__title {
        font-size: 12.5px !important;
    }
}

/* Home CTA + Why Choose — mobile scale (loads after global h2/h3 rules) */
@media (max-width: 767.98px) {

    .pyloherb-home-cta h2.pyloherb-home-cta__title,
    .pyloherb-home-cta__title {
        font-size: 1.15rem !important;
        line-height: 1.25 !important;
        margin-bottom: 10px !important;
    }

    .pyloherb-home-cta p.pyloherb-home-cta__desc,
    .pyloherb-home-cta__desc {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .pyloherb-home-cta__path-name {
        font-size: 1rem !important;
        line-height: 1.2 !important;
    }

    .pyloherb-whychoose__icon {
        width: 40px !important;
        height: 40px !important;
    }
}

/* Featured categories: large tile always matches 2 small squares + gap */
.aiz-pyloherb .pyloherb-categories,
.pyloherb-categories {
    grid-template-rows: 1fr 1fr;
    align-items: stretch;
}

.aiz-pyloherb .pyloherb-cat-card--large,
.pyloherb-cat-card--large {
    grid-row: 1 / span 2;
    aspect-ratio: unset !important;
    height: 100% !important;
    align-self: stretch !important;
}

/* Storefront rhythm — unified 22px padding for sections (44px gap between sections) and 20px title margin */
@media (max-width: 767.98px) {

    .pyloherb-section,
    .pyloherb-section--products,
    .pyloherb-section--story,
    .pyloherb-section--lab,
    .pyloherb-promo.pyloherb-section,
    .aiz-pyloherb .pyloherb-section--story,
    .aiz-pyloherb .pyloherb-section--lab {
        padding-top: 22px !important;
        padding-bottom: 22px !important;
    }

    .pyloherb-section__head {
        margin-bottom: 20px !important;
    }

    .pyloherb-blog,
    .pyloherb-page,
    .pyloherb-checkout,
    .pyloherb-checkout--figma {
        padding-top: 22px !important;
        padding-bottom: 22px !important;
    }
}

/* ── PDP Spacing Rules (Header -> Breadcrumb -> Product Block -> Tabs) ── */
.product-details,
.pyloherb-pdp {
    padding-top: 28px !important;
    padding-bottom: 0 !important;
}

.product-details>.container>.pt-30px,
.product-details .pt-30px,
.product-details>.container>.pt-30px.pb-6 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.product-details .product-slider-wrapper {
    margin-bottom: 0 !important;
}

.product-details #option-choice-form {
    margin-bottom: 0 !important;
}

.product-details .breadcrumb,
.pyloherb-pdp__breadcrumb {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 22px !important;
    font: 12px / 1.4 var(--pylo-sans, sans-serif);
}

.pyloherb-pdp-tabs,
.product-details-nav-tab {
    margin-top: 24px !important;
    margin-bottom: 48px !important;
}

@media (max-width: 991.98px) {

    .pyloherb-pdp-tabs,
    .product-details-nav-tab {
        margin-top: 40px !important;
        margin-bottom: 36px !important;
    }
}

@media (max-width: 767.98px) {

    .product-details,
    .pyloherb-pdp {
        padding-top: 10px !important;
        padding-bottom: 0 !important;
    }

    .product-details>.container>.pt-30px.pb-6,
    .product-details .pt-30px {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .product-details .breadcrumb,
    .pyloherb-pdp__breadcrumb {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

    .pyloherb-pdp-tabs,
    .product-details-nav-tab {
        margin-top: 8px !important;
        margin-bottom: 28px !important;
    }

    .product-details #option-choice-form>.bg-light.rounded-2 {
        padding: 8px 12px !important;
    }

    .product-details .product-buybox {
        padding: 12px !important;
        margin-top: 8px !important;
        margin-bottom: 6px !important;
    }

    .product-details .product-buybox__row-qty {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
    }

    .product-details .product-buybox__stock {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
    }

    .product-details .product-buybox__chip {
        font-size: 11px !important;
        padding: 3px 6px !important;
        border-radius: 5px !important;
    }

    .product-details .product-buybox__qty {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        margin-left: auto !important;
    }

    .product-details .product-buybox .aiz-plus-minus {
        min-height: 32px !important;
        height: 32px !important;
        border-radius: 8px !important;
    }

    .product-details .product-buybox .aiz-plus-minus .inc-btn,
    .product-details .product-buybox .aiz-plus-minus .dec-btn {
        width: 28px !important;
        height: 28px !important;
    }

    .product-details .product-buybox .aiz-plus-minus .input-number {
        font-size: 13px !important;
        width: 28px !important;
        height: 28px !important;
    }

    .product-details .product-buybox__actions.d-none,
    .product-details .product-buybox__actions .buy-now.d-none,
    .product-details .product-buybox__actions .add-to-cart.d-none,
    .product-details .product-buybox__oos.d-none,
    .product-details .product-buybox__oos .out-of-stock.d-none {
        display: none !important;
    }

    .product-details .product-buybox__actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px !important;
        margin-top: 10px !important;
    }

    .product-details .product-buybox__actions .buy-now:not(.d-none),
    .product-details .product-buybox__actions .add-to-cart:not(.d-none) {
        padding: 11px 10px !important;
        border-radius: 8px !important;
        min-height: 44px !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    .product-details .product-buybox__oos {
        margin-top: 10px !important;
    }

    .product-details .product-buybox__oos .out-of-stock:not(.d-none) {
        margin-top: 10px !important;
        border-radius: 8px !important;
        min-height: 44px !important;
        padding: 11px 10px !important;
        font-size: 13px !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
}

@media (min-width: 768px) {

    .product-details .product-buybox__actions .buy-now:not(.d-none),
    .product-details .product-buybox__actions .add-to-cart:not(.d-none),
    .product-details .product-buybox__oos .out-of-stock:not(.d-none) {
        min-height: 44px !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
}

/* ── Product Subtitle & Highlights ── */
.product-subtitle h2 {
    color: #9d4915 !important;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.01em;
}

.pyloherb-pdp-highlights {
    border-top: 1px dashed rgba(0, 0, 0, 0.08);
    padding-top: 10px;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content {
    color: #111111;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content p {
    margin-bottom: 4px;
    line-height: 1.5;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content strong,
.pyloherb-pdp-highlights .pyloherb-highlights-content b {
    font-weight: 700;
    display: inline-block;
    margin-bottom: 4px;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content ul {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 0;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content ol {
    list-style: decimal;
    padding-left: 20px;
    margin-bottom: 0;
}

.pyloherb-pdp-highlights .pyloherb-highlights-content ul li,
.pyloherb-pdp-highlights .pyloherb-highlights-content ol li {
    margin-bottom: 4px;
    line-height: 1.45;
}

/* ── Unified Container Alignment: Header & Sections ── */
.pylo-site-header .logo-bar-area > .container,
.pyloherb-header .container,
.pyloherb-section > .container,
.aiz-main-wrapper .container,
.pyloherb-bs .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
}

@media (min-width: 576px) {
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        max-width: 540px !important;
    }
}

@media (min-width: 768px) {
    .pylo-site-header .logo-bar-area > .container,
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pyloherb-bs .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

@media (max-width: 991.98px) {
    .pylo-site-header .logo-bar-area > .container {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

@media (min-width: 992px) {
    .pylo-site-header .logo-bar-area > .container,
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pyloherb-bs .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .pylo-site-header .header_menu_links {
        padding-left: 8px !important;
        padding-right: 8px !important;
        font-size: 13.5px !important;
    }
}

@media (min-width: 1200px) {
    .pylo-site-header .logo-bar-area > .container,
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pyloherb-bs .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .pylo-site-header .header_menu_links {
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 15px !important;
    }
}

@media (min-width: 1400px) {
    .pylo-site-header .logo-bar-area > .container,
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pyloherb-bs .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

@media (max-width: 575.98px) {
    .pylo-site-header .logo-bar-area > .container,
    .pyloherb-header .container,
    .pyloherb-section > .container,
    .aiz-main-wrapper .container,
    .pyloherb-bs .container,
    .pylo-recruit__wrap,
    .pylo-recruit-apply__wrap {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* ── Pylo Header More Dropdown ── */
.pylo-more-dropdown {
    position: relative !important;
}

.pylo-more-dropdown > a {
    cursor: pointer !important;
}

.pylo-more-dropdown .dropdown-menu {
    position: absolute !important;
    top: 100% !important;
    left: auto !important;
    right: 0 !important;
    min-width: 190px !important;
    max-width: 260px !important;
    z-index: 1070 !important;
    margin-top: 4px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
    border-radius: 4px !important;
    display: none;
}

.pylo-more-dropdown .dropdown-menu.show,
.pylo-more-dropdown.show > .dropdown-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#pylo-header-main-row {
    width: 100% !important;
    max-width: 100% !important;
}

#header-menus-wrapper {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    overflow: visible !important;
}

#pylo-header-menu-list {
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
}

/* Khoảng cách giữa logo và list đề mục ở header màn Desktop là 6px */
@media (min-width: 992px) {
    .pylo-site-header #header-logo-group,
    #header-logo-group {
        margin-right: 0 !important;
        padding-right: 0 !important;
    }

    .pylo-site-header #header-logo-group > a.d-block,
    #header-logo-group > a.d-block,
    #header-logo-group > a {
        margin-right: 6px !important;
        padding-right: 0 !important;
    }

    .pylo-site-header #header-menus-wrapper,
    #header-menus-wrapper {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    .pylo-site-header #pylo-header-menu-list,
    #pylo-header-menu-list {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    .pylo-site-header #pylo-header-menu-list > li:first-child > a,
    #pylo-header-menu-list > li:first-child > a {
        padding-left: 0 !important;
    }
}

@media (max-width: 1280px) and (min-width: 992px) {
    .pylo-site-header .header_menu_links {
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 15px !important;
    }
}

/* ── Pylo Product Rail Navigation Arrows & Universal Expandable Rail ── */
.pyloherb-products-rail-container {
    position: relative;
    width: 100%;
}

.pyloherb-rail-nav {
    position: absolute;
    top: 42%;
    transform: translateY(-50%);
    z-index: 10;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    color: var(--primary, var(--primary-color, #1a3d2e));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    opacity: 0.95;
    padding: 0;
}

.pyloherb-rail-nav:hover {
    background: var(--primary, var(--primary-color, #1a3d2e));
    color: #ffffff;
    border-color: var(--primary, var(--primary-color, #1a3d2e));
    opacity: 1;
    transform: translateY(-50%) scale(1.08);
    box-shadow: 0 6px 16px color-mix(in srgb, var(--primary, #1a3d2e) 28%, transparent);
}

.pyloherb-rail-nav--prev {
    left: -18px;
}

.pyloherb-rail-nav--next {
    right: -18px;
}

@media (max-width: 767.98px) {
    .pyloherb-rail-nav {
        width: 32px;
        height: 32px;
        top: 40%;
        opacity: 0.92;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    .pyloherb-rail-nav svg {
        width: 14px;
        height: 14px;
    }

    .pyloherb-rail-nav--prev {
        left: -6px;
    }

    .pyloherb-rail-nav--next {
        right: -6px;
    }
}

/* When rail is expanded (grid mode), hide navigation arrows and switch rail to grid */
.pyloherb-products-rail-wrap.is-expanded .pyloherb-rail-nav {
    display: none !important;
}

.pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail {
    overflow: visible !important;
    scroll-snap-type: none !important;
    cursor: default !important;
}

.pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail__track {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 16px 20px !important;
}

.pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail__item {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    scroll-snap-align: unset !important;
}

.pyloherb-products-rail-wrap:not(.is-expanded) .pyloherb-products-rail__item.is-extra {
    display: none !important;
}

@media (min-width: 768px) {
    .pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail__track {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 992px) {
    .pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail__track {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

.pyloherb-products-rail-wrap .pyloherb-bs__rail-actions,
.pyloherb-bs__rail-actions {
    display: flex !important;
    justify-content: center !important;
    margin-top: 28px !important;
}

.pyloherb-products-rail-wrap .pyloherb-bs__rail-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    padding: 10px 24px;
    border: 1.5px solid var(--primary, var(--primary-color, #1a3d2e));
    border-radius: 4px;
    background: transparent;
    color: var(--primary, var(--primary-color, #1a3d2e));
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    cursor: pointer;
    transition: all 0.2s ease;
}

.pyloherb-products-rail-wrap .pyloherb-bs__rail-toggle:hover,
.pyloherb-products-rail-wrap .pyloherb-bs__rail-toggle:focus-visible {
    background: var(--primary, var(--primary-color, #1a3d2e));
    border-color: var(--primary, var(--primary-color, #1a3d2e));
    color: #ffffff;
    outline: none;
    box-shadow: 0 4px 14px color-mix(in srgb, var(--primary, #1a3d2e) 24%, transparent);
}

/* ── About Us (/about-us) Unified Spacing ── */
.pyloherb-about section,
.pyloherb-about .pyloherb-about-section,
.pyloherb-about .pyloherb-bs__about,
.pyloherb-about .pyloherb-about__story,
.pyloherb-about .pyloherb-about__vision,
.pyloherb-about .pyloherb-about__mission,
.pyloherb-about .pyloherb-about__production,
.pyloherb-about .pyloherb-about__standardization {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
}

.pyloherb-about .pyloherb-about__production-intro {
    margin-bottom: 20px !important;
}

.pyloherb-about .pyloherb-about__production-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-bottom: 0 !important;
}

.pyloherb-about .pyloherb-about__production-item,
.pyloherb-about .pyloherb-about__production-grid figure {
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    aspect-ratio: 4 / 3 !important;
}

.pyloherb-about .pyloherb-about__production-item img,
.pyloherb-about .pyloherb-about__production-grid figure img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (min-width: 768px) {
    .pyloherb-about .pyloherb-about__production-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 20px !important;
    }
}

@media (max-width: 767.98px) {
    .pyloherb-about .pyloherb-about__production-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

.pyloherb-about .pyloherb-about__standardization + .pyloherb-about__standardization {
    padding-top: 0 !important;
}

.pyloherb-about .pyloherb-about__standardization-intro {
    margin-bottom: 20px !important;
}

.pyloherb-about .pyloherb-about__standardization-title {
    margin-bottom: 12px !important;
}

.pyloherb-about .pyloherb-about__standardization-figure {
    margin-top: 14px !important;
}

.pyloherb-about .pyloherb-about__production {
    padding-bottom: 8px !important;
}

.pyloherb-about .pyloherb-about__production + .pyloherb-about__standardization {
    padding-top: 12px !important;
}

@media (max-width: 767.98px) {
    .pyloherb-about .pyloherb-about__production {
        padding-bottom: 6px !important;
    }

    .pyloherb-about .pyloherb-about__production + .pyloherb-about__standardization {
        padding-top: 10px !important;
    }
}

/* ── Unified Mobile Bottom Navigation Bar ── */
.aiz-mobile-bottom-nav {
    z-index: 1040 !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.08) !important;
}

.aiz-mobile-bottom-nav .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-wrap: nowrap !important;
    justify-content: space-around !important;
}

.aiz-mobile-bottom-nav .col,
.aiz-mobile-bottom-nav .col-auto {
    flex: 1 1 0 !important;
    max-width: 25% !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
    text-align: center !important;
}

.aiz-mobile-bottom-nav a {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.aiz-mobile-bottom-nav a svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    margin: 0 auto !important;
}

.aiz-mobile-bottom-nav a span {
    font-size: 11px !important;
    line-height: 1.2 !important;
    margin-top: 3px !important;
    white-space: nowrap !important;
}

/* ═══════════════════════════════════════════════════════════════
   PyLoHerb Mobile Product Card & Layout Standards (Mobile Only < 768px)
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 767.98px) {
    /* 1. Giữ tất cả ảnh theo tỷ lệ 1:1, dùng object-fit: cover cho thẻ sản phẩm ở màn mobile */
    .pyloherb-product-card__img-wrap,
    .pyloherb-listing .pyloherb-product-card__img-wrap,
    .pyloherb-products-rail .pyloherb-product-card__img-wrap {
        aspect-ratio: 1 / 1 !important;
        width: 100% !important;
        overflow: hidden !important;
        background: #f8f8f8 !important;
        position: relative !important;
        display: block !important;
    }

    .pyloherb-product-card__img-frame {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
    }

    .pyloherb-product-card__img-wrap img,
    .pyloherb-listing .pyloherb-product-card__img-wrap img,
    .pyloherb-products-rail .pyloherb-product-card__img-wrap img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }

    /* 8. Căn hai thẻ trong cùng hàng có chiều cao bằng nhau */
    .pyloherb-products-grid,
    .pyloherb-listing__grid,
    .pyloherb-products-rail-wrap.is-expanded .pyloherb-products-rail__track {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .pyloherb-product-card,
    .pyloherb-listing .pyloherb-product-card,
    .pyloherb-products-rail__item .pyloherb-product-card {
        display: flex !important;
        flex-direction: column !important;
        height: 100% !important;
        background: #ffffff !important;
    }

    .pyloherb-product-card__body,
    .aiz-pyloherb .pyloherb-product-card__body,
    .pyloherb-listing .pyloherb-product-card__body {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 10px 8px 10px !important;
    }

    /* Giữ 1 kích thước cố định cho dòng danh mục (dù có hay không có danh mục) */
    .pyloherb-product-card__category {
        margin: 0 0 4px !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        height: 1.3em !important;
        min-height: 1.3em !important;
        max-height: 1.3em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }

    /* 2. Tên sản phẩm chỉ hiển thị tối đa 2 dòng; nếu dài thì dùng dấu "…" */
    .pyloherb-product-card__title,
    .aiz-pyloherb .pyloherb-product-card__title,
    .pyloherb-listing .pyloherb-product-card__title {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        line-height: 1.35 !important;
        font-size: 13px !important;
        height: 2.7em !important;
        min-height: 2.7em !important;
        max-height: 2.7em !important;
        margin: 0 !important;
        word-break: break-word !important;
    }

    /* 3. Giảm khoảng trắng giữa tên sản phẩm và đường phân cách xuống còn 10–12 px */
    /* 5. Đưa giá sát nút mua hơn, khoảng cách 8–10 px */
    .pyloherb-product-card__footer,
    .pyloherb-listing .pyloherb-product-card__footer {
        margin-top: auto !important;
        padding-top: 10px !important;
        border-top: 1px solid var(--card-line, #ececec) !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
    }

    .pyloherb-product-card__price,
    .pyloherb-listing .pyloherb-product-card__price {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        align-self: stretch !important;
    }

    .pyloherb-product-card__price-current {
        font-size: 13px !important;
        line-height: 1.2 !important;
    }

    /* 4. Nút "Thêm vào giỏ" cao khoảng 44 px, không cần cao hơn */
    .pyloherb-product-card__cart,
    button.pyloherb-product-card__cart,
    a.pyloherb-product-card__cart,
    span.pyloherb-product-card__cart,
    .pyloherb-listing .pyloherb-product-card__cart {
        width: 100% !important;
        max-width: none !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        padding: 0 10px !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        border-radius: 6px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        line-height: 1.2 !important;
    }

    /* 6. Giảm khoảng cách từ cuối thẻ sản phẩm đến nút "Xem thêm" còn chính xác 28px */
    .pyloherb-products-rail,
    .pyloherb-products-rail-container {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    .pyloherb-products-rail-wrap .pyloherb-bs__rail-actions,
    .pyloherb-bs__rail-actions {
        display: flex !important;
        justify-content: center !important;
        margin-top: 28px !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
    }

    /* 7. Điều chỉnh khoảng cách footer đến thanh menu dưới vừa phải, sát đẹp không bị hở khoảng trắng lớn */
    body,
    .aiz-main-wrapper {
        padding-bottom: 0 !important;
    }

    .pylo-mockup-footer {
        padding-bottom: 68px !important;
    }
}

/* ── Mobile responsive font-size scaling for custom CMS content & pages ── */
@media (max-width: 767.98px) {
    .pyloherb-page__content,
    .aiz-editor-data {
        overflow-wrap: break-word !important;
        word-break: break-word !important;
    }

    /* Universal dynamic scaling for custom font-sizes using --fs-desktop */
    .pyloherb-page__content [style*="--fs-desktop"],
    .aiz-editor-data [style*="--fs-desktop"] {
        font-size: clamp(16px, calc(var(--fs-desktop) * 0.52), 34px) !important;
        line-height: 1.3 !important;
    }

    /* Direct scale fallbacks for Summernote inline font-sizes */
    .pyloherb-page__content [style*="font-size: 72px"],
    .pyloherb-page__content [style*="font-size:72px"],
    .aiz-editor-data [style*="font-size: 72px"],
    .aiz-editor-data [style*="font-size:72px"] {
        font-size: clamp(28px, 8vw, 36px) !important;
        line-height: 1.25 !important;
    }

    .pyloherb-page__content [style*="font-size: 64px"],
    .pyloherb-page__content [style*="font-size:64px"],
    .aiz-editor-data [style*="font-size: 64px"],
    .aiz-editor-data [style*="font-size:64px"] {
        font-size: clamp(26px, 7.5vw, 32px) !important;
        line-height: 1.25 !important;
    }

    .pyloherb-page__content [style*="font-size: 48px"],
    .pyloherb-page__content [style*="font-size:48px"],
    .aiz-editor-data [style*="font-size: 48px"],
    .aiz-editor-data [style*="font-size:48px"] {
        font-size: clamp(22px, 6.5vw, 26px) !important;
        line-height: 1.3 !important;
    }

    .pyloherb-page__content [style*="font-size: 40px"],
    .pyloherb-page__content [style*="font-size:40px"],
    .aiz-editor-data [style*="font-size: 40px"],
    .aiz-editor-data [style*="font-size:40px"] {
        font-size: clamp(20px, 5.8vw, 24px) !important;
        line-height: 1.35 !important;
    }

    .pyloherb-page__content [style*="font-size: 36px"],
    .pyloherb-page__content [style*="font-size:36px"],
    .aiz-editor-data [style*="font-size: 36px"],
    .aiz-editor-data [style*="font-size:36px"] {
        font-size: clamp(19px, 5.2vw, 22px) !important;
        line-height: 1.35 !important;
    }

    .pyloherb-page__content [style*="font-size: 32px"],
    .pyloherb-page__content [style*="font-size:32px"],
    .aiz-editor-data [style*="font-size: 32px"],
    .aiz-editor-data [style*="font-size:32px"] {
        font-size: clamp(18px, 4.8vw, 20px) !important;
        line-height: 1.4 !important;
    }

    .pyloherb-page__content [style*="font-size: 28px"],
    .pyloherb-page__content [style*="font-size:28px"],
    .aiz-editor-data [style*="font-size: 28px"],
    .aiz-editor-data [style*="font-size:28px"] {
        font-size: clamp(17px, 4.4vw, 19px) !important;
        line-height: 1.4 !important;
    }

    .pyloherb-page__content [style*="font-size: 24px"],
    .pyloherb-page__content [style*="font-size:24px"],
    .aiz-editor-data [style*="font-size: 24px"],
    .aiz-editor-data [style*="font-size:24px"] {
        font-size: clamp(16px, 4vw, 18px) !important;
        line-height: 1.45 !important;
    }

    /* Headings proportional scaling on mobile */
    .pyloherb-page__content h1,
    .aiz-editor-data h1 {
        font-size: clamp(1.65rem, 6.5vw, 2rem) !important;
        line-height: 1.3 !important;
    }
    .pyloherb-page__content h2,
    .aiz-editor-data h2 {
        font-size: clamp(1.4rem, 5.5vw, 1.65rem) !important;
        line-height: 1.35 !important;
    }
    .pyloherb-page__content h3,
    .aiz-editor-data h3 {
        font-size: clamp(1.2rem, 4.5vw, 1.4rem) !important;
        line-height: 1.4 !important;
    }
    .pyloherb-page__content h4,
    .aiz-editor-data h4 {
        font-size: clamp(1.1rem, 4vw, 1.25rem) !important;
    }
}

@media (max-width: 480px) {
    .pyloherb-page__content [style*="--fs-desktop"],
    .aiz-editor-data [style*="--fs-desktop"] {
        font-size: clamp(15px, calc(var(--fs-desktop) * 0.46), 28px) !important;
        line-height: 1.25 !important;
    }
    .pyloherb-page__content [style*="font-size: 64px"],
    .pyloherb-page__content [style*="font-size:64px"],
    .aiz-editor-data [style*="font-size: 64px"],
    .aiz-editor-data [style*="font-size:64px"] {
        font-size: 28px !important;
        line-height: 1.25 !important;
    }
    .pyloherb-page__content [style*="font-size: 48px"],
    .pyloherb-page__content [style*="font-size:48px"],
    .aiz-editor-data [style*="font-size: 48px"],
    .aiz-editor-data [style*="font-size:48px"] {
        font-size: 23px !important;
        line-height: 1.3 !important;
    }
}



