.footer-consent {
    font-size: 12px;
    color: #525149;
}
.right-panel {
    padding-top: 92px !important;
}
/* Global smooth header show/hide */
.announcement-bar,
nav.navbar,
nav.navbar.bg-white,
.navbar.bg-white {
    transition: transform 0.35s ease, opacity 0.35s ease;
    will-change: transform;
}
/* Slightly reduce header side spacing */
nav.navbar .container-fluid {
    padding-left: 0.85rem !important;
    padding-right: 0.85rem !important;
}
/* Enable sticky behavior once page starts scrolling */
body.header-scroll-active .announcement-bar {
    position: fixed !important;
    top: 0 !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1300;
    display: none !important;
}
body.header-scroll-active nav.navbar,
body.header-scroll-active nav.navbar.bg-white,
body.header-scroll-active .navbar.bg-white {
    position: fixed !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1299;
}
@media (min-width: 601px) {
    body.header-scroll-active nav.navbar,
    body.header-scroll-active nav.navbar.bg-white,
    body.header-scroll-active .navbar.bg-white {
        top: 0 !important;
    }
}
@media (max-width: 600px) {
    body.header-scroll-active nav.navbar,
    body.header-scroll-active nav.navbar.bg-white,
    body.header-scroll-active .navbar.bg-white {
        top: 0 !important;
    }
}
/* Scrolling state: when header re-appears, show red background */
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar.bg-white,
body.header-scroll-active:not(.header-scroll-hidden) .navbar.bg-white {
    background-color: #959581 !important;
}
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .nav-link,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .desktop-mega-trigger,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .d-flex.align-items-center.gap-3 a,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .d-flex.align-items-center.gap-3 button,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .currency-dropdown .currency-toggle,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .position-absolute.badge,
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .dropdown-toggle {
    color: #fff !important;
    text-shadow: none !important;
}
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .navbar-toggler-icon {
    /*filter: brightness(0) invert(1) !important;*/
}
body.header-scroll-hidden .announcement-bar {
    transform: translateY(-110%) !important;
    opacity: 0 !important;
}
body.header-scroll-hidden nav.navbar,
body.header-scroll-hidden nav.navbar.bg-white,
body.header-scroll-hidden .navbar.bg-white {
    transform: translateY(-130%) !important;
    opacity: 0 !important;
}
/* Per-page header color override: keep index white, make selected pages black */
body.header-text-black .nav-link,
body.header-text-black .desktop-mega-trigger,
body.header-text-black .d-flex.align-items-center.gap-3 a,
body.header-text-black .d-flex.align-items-center.gap-3 button,
body.header-text-black .currency-dropdown .currency-toggle,
body.header-text-black .navbar .position-absolute.badge {
    color: #1f1c1d !important;
    text-shadow: none !important;
}
body.header-text-black .navbar .position-absolute.badge {
    border-color: #1f1c1d !important;
}
h1,
h2,
h3,
h4,
h5,
p,
.copperplate {
    font-family: "copperplate", "copperplate-light", serif !important;
    font-weight: 400;
    letter-spacing: 0.5px;
}
.mega-secondary-links a {
    font-size: 14px !important;
}
.footer-news-title {
    font-size: 11px;
    letter-spacing: 0.08em;
    line-height: 1.4;
}
.footer-news-input {
    max-width: 720px;
}
.footer-email {
    padding: 11px 14px;
    font-size: 13px;
    border: 0;
}
.footer-email:focus {
    box-shadow: none;
}
.footer-email::placeholder {
    color: #a39a96;
}
.footer-submit {
    letter-spacing: 0.08em;
}
.footer-consent .form-check-input {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border-color: #5e5754;
    border-width: 1.2px;
    margin-top: 0;
    background-color: transparent;
    background-image: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 13px 13px;
    cursor: pointer;
    flex-shrink: 0;
}
.footer-consent .form-check-input:checked {
    background-color: transparent;
    border-color: #5e5754;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 6.2L4.65 8.7L10 3.3' stroke='%23525149' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.footer-consent .form-check-input:focus {
    box-shadow: none;
}
.footer-nav-col ul.list-unstyled.small li {
    font-size: 12px;
    font-weight: 500;
}
.footer-nav-col ul.list-unstyled.small li a {
    color: inherit;
    text-decoration: none;
}
ul.list-unstyled.small li {
    line-height: 25px !important;
}
.footer-bottom-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}
.footer-bottom-btn {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
}
.footer-bottom-btn:hover,
.footer-bottom-btn:focus {
    color: inherit;
    text-decoration: none;
    box-shadow: none;
}
.col-12.text-center img.img-fluid.w-100 {
    width: 22% !important;
}
@media (max-width: 991.98px) {
    .raudha-site-footer .footer-top {
        border-bottom: 1px solid #d8ccca;
        margin-bottom: 2rem !important;
        padding-bottom: 2rem;
    }
    .raudha-site-footer .footer-newsletter {
        margin-top: 0 !important;
        margin-bottom: 2rem;
    }
    .raudha-site-footer .footer-news-title {
        font-size: 14px;
        margin-bottom: 2rem !important;
        text-align: center;
        line-height: 1.25;
    }
    .raudha-site-footer .footer-news-input-wrap {
        justify-content: center !important;
        margin-bottom: 1.5rem !important;
    }
    .raudha-site-footer .footer-news-input {
        max-width: 100%;
        min-height: 68px;
    }
    .raudha-site-footer .footer-email {
        font-size: 16px;
        padding: 0.95rem 1.25rem;
    }
    .raudha-site-footer .footer-submit {
        font-size: 16px;
        padding-left: 1.35rem;
        padding-right: 1.35rem;
        white-space: nowrap;
    }
    .raudha-site-footer .footer-consent {
        justify-content: flex-start !important;
        align-items: flex-start;
        text-align: left;
        font-size: 15px;
        line-height: 1.35;
    }
    .raudha-site-footer .footer-consent .form-check-label {
        margin-top: 0.1rem;
    }
    .raudha-site-footer .help-col {
        display: none;
    }
    .raudha-site-footer .shop-col,
    .raudha-site-footer .discover-col {
        flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 0 !important;
    }
    .raudha-site-footer .footer-nav-col h6 {
        font-size: 14px;
        margin-bottom: 1.5rem !important;
        letter-spacing: 0.08em;
    }
    .raudha-site-footer .footer-nav-col ul.list-unstyled.small li {
        font-size: 13px;
        line-height: 1.45;
    }
    .raudha-site-footer .footer-nav-col ul.list-unstyled.small li a {
        color: inherit;
        text-decoration: none;
    }
}
.d-flex.align-items-center.justify-content-center.mx-auto.mb-4 img {
    width: 15%;
}
h2.display-6.text-uppercase.fw-semibold {
    color: #956c06;
    font-size: 31px;
}
/* Raudha Brand Colors */
:root {
    --raudha-red: #959581;
    --raudha-red-deep: #7a1c2a;
}
nav.nav.flex-column.fs a {
    font-size: 12px;
    padding: 3px;
    margin-left: 19px !important;
}
/* Typography matching Raudha */
body {
    letter-spacing: 0.05em;
}
body.mega-menu-open {
    overflow: hidden !important;
    touch-action: none;
}
body.mega-menu-open .announcement-bar,
body.mega-menu-open nav.navbar {
    background-color: #959581 !important !important;
    border-bottom: 0 !important;
}
body.mega-menu-open .desktop-mega-trigger,
body.mega-menu-open .navbar .nav-link,
body.mega-menu-open .currency-dropdown .currency-toggle,
body.mega-menu-open nav.navbar .text-dark,
body.mega-menu-open nav.navbar .dropdown-toggle,
body.mega-menu-open .d-flex.align-items-center.gap-3 a,
body.mega-menu-open .d-flex.align-items-center.gap-3 button,
body.mega-menu-open nav.navbar button,
body.mega-menu-open nav.navbar a{
    color: #f9eeec !important;
    font-family: "copperplate", "copperplate-light", serif !important;
}
#desktopNav {
    font-family: "copperplate", "copperplate-light", serif !important;
}
body.mega-menu-open .navbar-toggler-icon {
    filter: brightness(0) invert(1);
}
body.search-modal-open .desktop-mega-trigger,
body.search-modal-open .navbar .nav-link,
body.search-modal-open .currency-dropdown .currency-toggle,
body.search-modal-open nav.navbar .text-dark,
body.search-modal-open nav.navbar .dropdown-toggle,
body.search-modal-open .d-flex.align-items-center.gap-3 a,
body.search-modal-open .d-flex.align-items-center.gap-3 button,
body.search-modal-open nav.navbar button,
body.search-modal-open nav.navbar a {
    color: #fff !important;
}
body.search-modal-open .navbar-toggler-icon {
    filter: brightness(0) invert(1);
}
span.d-flex.align-items-center.gap-2 {
    font-size: 17px;
    text-transform: uppercase;
}
/* Mobile Menu Styling - Exact match to image */
.mobile-menu-offcanvas {
    background-color: var(--raudha-red) !important;
    width: 75% !important;
    border: none !important;
}
.mobile-menu-offcanvas .offcanvas-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1rem 1.5rem;
}
.mobile-menu-offcanvas .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 1;
}
.mobile-menu-offcanvas .offcanvas-body {
    padding: 0;
    overflow-y: auto;
}
/* Menu Categories */
.menu-category {
    color: white !important;
    text-decoration: none;
    font-size: 14px;
    font-weight: 300;
    text-transform: uppercase;
    display: block;
    padding: 0.4rem 1.5rem;
    transition: opacity 0.2s;
}
.modal-content.bg-danger.text-white.mt-5.pt-4 {
    height: 50%;
}
#searchModal .modal-dialog {
    margin: 0 !important;
}
#searchModal {
    z-index: 1060 !important;
}
#searchModal .modal-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    height:100%;
}
#searchModal .btn-close,
#searchModal .btn-close-white {
    position: relative;
    z-index: 2;
}
/* Menu Links */
.mobile-nav-link {
    color: white !important;
    text-decoration: none;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    display: block;
    padding: 0.4rem 1.5rem;
    transition: opacity 0.2s;
}
.mobile-nav-link:hover {
    opacity: 0.7;
    color: white !important;
}
/* Divider */
.menu-divider {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    margin: 1rem 1.5rem;
}
/* Search link with icon */
.search-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.search-link i {
    font-size: 0.9rem;
}
/* Header styling */
.navbar {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.navbar-brand img {
    height: 40px;
}
/* Desktop dropdown styling */
.dropdown-menu {
    border: none;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.dropdown-item {
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    padding: 0.5rem 1rem;
}
.currency-dropdown .currency-toggle {
    border: 0;
    background: transparent;
    color: #1f1c1d;
    letter-spacing: 0.04em;
    font-weight: 400;
    text-transform: none !important;
    padding: 0.2rem 0;
}
.currency-dropdown .currency-toggle:focus,
.currency-dropdown .currency-toggle:active {
    border: 0;
    box-shadow: none;
}
.currency-dropdown .currency-toggle::after {
    margin-left: 0.45rem;
    vertical-align: 0.15em;
    border-top-width: 0.34em;
}
.currency-dropdown .currency-menu {
    min-width: 285px;
    border-radius: 0;
    border: 1px solid #d8d8d8;
    background: #f5f5f5;
    padding: 0.65rem 0;
    margin-top: 0.8rem;
    box-shadow: none;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
}
.currency-dropdown .currency-menu .currency-item {
    color: #000 !important;
    font-size: 1.05rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    padding: 0.65rem 1.8rem;
    background: transparent;
    text-transform: none;
    text-shadow: none !important;
}
.currency-dropdown .currency-menu .currency-item:hover,
.currency-dropdown .currency-menu .currency-item:focus {
    background: transparent;
    color: #000 !important;
}
.currency-dropdown .currency-menu .currency-item.active,
.currency-dropdown .currency-menu .currency-item:active {
    background: transparent;
    color: #000 !important;
    text-decoration: underline;
    text-underline-offset: 0.22em;
}
/* Force currency dropdown text black in normal state across header variants */
.currency-dropdown .currency-menu li a.currency-item,
.currency-dropdown .currency-menu li a.currency-item:visited {
    color: #000 !important;
    text-shadow: none !important;
}
.announcement-bar,
nav.navbar {
    position: relative;
    z-index: 1080;
}
@media (max-width: 991.98px) {
    .currency-dropdown {
        display: none !important;
    }
}
/* Desktop mega dropdown */
.desktop-mega-trigger {
    color: #222;
    opacity: 0.78;
    text-decoration: none;
    letter-spacing: 0.11em;
}
.desktop-mega-trigger:focus {
    box-shadow: none;
}
.desktop-mega-trigger.active,
.desktop-mega-trigger:hover {
    color: #222;
    opacity: 1;
}
.mega-menu-panel {
    background-color: #f4f4f1;
    overflow: hidden;
    height: 520px;
}
.mega-menu-panel .container-fluid {
    height: 100%;
}
.mega-menu-inner {
    min-height: 238px;
    height: 100%;
    padding: 0.35rem 0 1rem;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.28s ease, transform 0.28s ease;
    display: flex;
    flex-direction: column;
}
#megaMenuCollapse.show .mega-menu-inner {
    opacity: 1;
    transform: translateY(0);
}
.mega-secondary-links {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin: 0 0 0.85rem;
    padding: 0;
    list-style: none;
}
.mega-secondary-links a {
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Cinzel", serif;
    font-size: 2rem;
    letter-spacing: 0.03em;
    line-height: 1;
    white-space: nowrap;
}
.mega-secondary-links a:hover {
    color: #0000;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}
.mega-menu-list {
    margin-top: 0.2rem;
}
.mega-menu-grid {
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch !important;
}
.mega-menu-link {
    display: block;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Cinzel", serif;
    font-size: 26px;
    line-height: 1.6;
    letter-spacing: 0.04em;
    margin-bottom: 12px;
}
.mega-menu-link:hover,
.mega-menu-link:focus {
    color: #000;
    opacity: 0.88;
    text-decoration: underline;
}
.mega-close-btn {
    border: 0;
    background: transparent;
    padding: 0;
    line-height: 1;
    color: #fff;
}
.mega-close-btn:hover {
    opacity: 0.8;
}
.mega-close-icon {
    width: 24px;
    height: 24px;
    display: block;
}
.mega-image-stage {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
}
.mega-visual-col {
    display: flex;
    min-height: 0;
}
.mega-image-block {
    position: absolute;
    inset: 0;
    width: 0;
    opacity: 0;
    overflow: hidden;
    transition: width 0.6s ease, opacity 0.32s ease;
    pointer-events: none;
}
.mega-image-block.active {
    width: 100%;
    opacity: 1;
    pointer-events: auto;
    z-index: 2;
}
.mega-image-block img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
@media (max-width: 1199.98px) {
    .mega-menu-panel {
        height: 470px;
    }
    .mega-secondary-links {
        gap: 1rem;
        margin-bottom: 0.7rem;
    }
    .mega-secondary-links a {
        font-size: 1.5rem;
    }
    .mega-menu-link {
        font-size: 1.6rem;
    }
    .mega-menu-inner {
        min-height: 100%;
    }
    .mega-image-stage {
        min-height: 260px;
    }
}
@media (max-width: 991.98px) {
    #megaMenuCollapse {
        display: none !important;
    }
}
/* Cart drawer (tuned to match reference) */
.cart-drawer {
    --bs-offcanvas-width: 409px;
    background-color: #b21235;
    color: #fff;
    font-family: "Helvetica Neue", Arial, sans-serif;
    letter-spacing: 0;
}
.cart-drawer .offcanvas-header {
    padding: 1.5rem 1.35rem 0.75rem;color:black;
}
.cart-drawer .offcanvas-title {
    font-family: "Cinzel", serif;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
    text-transform: uppercase;
}
.cart-drawer .btn-close {
    filter: unset;
    opacity: 1;
    margin-right: 0.1rem;
    margin-top: 0.1rem;
}
.cart-drawer .offcanvas-body {
    padding: 0 1.35rem 1.2rem;
    display: flex;
    flex-direction: column;
}
.cart-shipping-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    text-align: center;
    font-size: 0.9rem;
    line-height: 1.2;
    margin: 1.15rem 0 1.95rem;
}
.cart-shipping-note i {
    font-size: 1rem;
    position: relative;
    top: -0.45rem;
}
.cart-item-row {
    display: grid;
    grid-template-columns: 128px 1fr auto;
    gap: 1.15rem;
    align-items: start;
}
.cart-item-thumb {
    width: 103px;
    height: 103px;
    object-fit: cover;
    margin-bottom: 22px;
}
.cart-item-name {
    display: inline-block;
    margin-bottom: 0.5rem;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Cinzel", serif;
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1.18;
}
.cart-item-name:hover {
    color: #fff;
    opacity: 0.9;
}
.cart-item-price {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.9rem;
    line-height: 1;
}
.cart-item-price del {
    opacity: 0.78;
    font-size: 0.92em;
}
.cart-item-actions {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding-top: 5.05rem;
}
.cart-item-actions .btn {
    color: #fff;
    font-size: 0.9rem;
    line-height: 1;
    padding: 0;
    text-decoration: none;
}
.cart-item-actions .btn:hover {
    color: #fff;
    opacity: 0.8;
}
.cart-item-qty {
    min-width: 1.4rem;
    text-align: center;
    font-size: 0.9rem;
    line-height: 1;
}
.cart-summary {
    margin-top: auto;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.cart-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.65rem;
}
.cart-total-label {
    font-family: "Cinzel", serif;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.9rem;
    line-height: 1.15;
}
.cart-total-amount {
    font-size: 0.9rem;
    line-height: 1;
}
.cart-total-note {
    margin-bottom: 1.25rem;
    font-size: 0.9rem;
    line-height: 1.3;
}
.cart-checkout-btn {
    width: 100%;
    border: 0;
    border-radius: 0;
    background: #ede2dc;
    color: #131313;
    text-transform: uppercase;
    text-align: center;
    font-family: "Cinzel", serif;
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0.12em;
    padding: 1rem 1.25rem;
}
.cart-checkout-btn:hover {
    background: #e7dcd6;
    color: #131313;
}
@media (max-width: 1199.98px) {
    .cart-drawer {
        --bs-offcanvas-width: 470px;
    }
    .cart-drawer .offcanvas-title {
        font-size: 2.4rem;
    }
    .cart-shipping-note {
        font-size: 2.1rem;
    }
    .cart-item-name {
        font-size: 2.05rem;
    }
    .cart-item-price {
        font-size: 1.9rem;
    }
    .cart-item-actions .btn {
        font-size: 1.85rem;
    }
    .cart-total-label {
        font-size: 1.8rem;
    }
    .cart-total-amount {
        font-size: 2.3rem;
    }
    .cart-total-note {
        font-size: 1.45rem;
    }
    .cart-checkout-btn {
        font-size: 1.6rem;
    }
}
@media (max-width: 991.98px) {
    .cart-drawer {
        --bs-offcanvas-width: 56vw;
    }
    .cart-drawer .offcanvas-header {
        padding: 1.25rem 1rem 0.65rem;
    }
    .cart-drawer .offcanvas-body {
        padding: 0 1rem 1rem;
    }
    .cart-drawer .offcanvas-title {
        font-size: 1.4rem;
    }
    .cart-shipping-note {
        font-size: 0.9rem;
        margin: 0.75rem 0 1.2rem;
    }
    .cart-item-row {
        grid-template-columns: 86px 1fr;
        gap: 0.9rem;
    }
    .cart-item-thumb {
        width: 80px;
        height: 78px;
    }
    .cart-item-name {
        font-size: 0.9rem;
        margin-bottom: 0.35rem;
    }
    .cart-item-price {
        font-size: 0.95rem;
    }
    .cart-item-actions {
        grid-column: 2;
        padding-top: 0.6rem;
        justify-content: flex-end;
    }
    .cart-item-actions .btn {
        font-size: 1.3rem;
    }
    .cart-item-qty {
        font-size: 1.05rem;
    }
    .cart-summary {
        padding-top: 1.2rem;
    }
    .cart-total-label {
        font-size: 1rem;
    }
    .cart-total-amount {
        font-size: 0.9rem;
    }
    .cart-total-note {
        font-size: 0.9rem;
        margin-bottom: 0.9rem;
    }
    .cart-checkout-btn {
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
    }
}
@media (max-width: 500px) {
    .cart-drawer,
    #cartDrawer {
        --bs-offcanvas-width: 80vw;
    }
}
:root {
    --color-bg: #f9eeec;
    /* Soft Pink/Beige Background */
    --color-text: #1a1a1a;
    --color-accent: #f4f4f1;
    /* Deep Red */
    --color-white: #ffffff;
    --font-serif: 'Playfair Display', serif;
    --font-sans: 'Inter', sans-serif;
}
body {
    background-color: var(--color-bg);
    color: var(--color-text);
    font-family: var(--font-sans);
    overflow-x: hidden;
}
/* Typography */
h1,
h2,
h3,
h4,
.font-serif {
    font-family: var(--font-serif);
}
.text-uppercase-wide {
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 600;
}
/* Navbar Customization */
.navbar {
    background-color: transparent !important;
    background-image: none !important;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    transition: all 0.3s ease;
}
.navbar.bg-white {
    background-color: transparent !important;
}
nav.navbar,
nav.navbar.bg-white {
    background-color: transparent !important;
    background-image: none !important;
}
.navbar-brand img {
    height: 40px;
}
.nav-link {
    color: #1a1a1a !important;
    font-size: 0.7rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 500;
    margin: 0 10px;
    position: relative;
}
.d-flex.align-items-center.gap-3 button,
.d-flex.align-items-center.gap-3 a {
    /*font-size: 0.8rem;*/
}
/* Announcement Bar */
.announcement-bar {
    background-color: #b70318;
    border-bottom: 0 !important;
    font-size: 0.7rem;
    letter-spacing: 0.05em;
    color: #fff;
    padding: 8px 0;
}
/* Product Cards */
.product-card {
    background: transparent;
    border: none;
    /*margin-bottom: 2rem;*/
    transition: transform 0.3s ease;
}
.product-card:hover {
    transform: translateY(-5px);
}
.product-image-wrapper {
    position: relative;
    overflow: hidden;
    background-color: #f0e0dc;
    /* Placeholder bg for images */
    border-radius: 4px;
    aspect-ratio: 4/5;
}
.product-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.product-card:hover .product-image-wrapper img {
    transform: scale(1.05);
}
.badge-custom {
    position: absolute;
    bottom: 15px;
    left: 15px;
    background-color: var(--color-accent);
    color: white;
    font-size: 0.65rem;
    padding: 5px 10px;
    border-radius: 2px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-weight: 600;
}
.card-body {
    padding: 1.5rem 0.5rem;
    text-align: center;
}
.product-card .card-body{
    text-transform: lowercase;
    font-family: 'copperplate';
}
.product-title {
    font-family: 'copperplate';
    font-size: 1rem !important;
    margin-bottom: 0.5rem;
    color: #483030;
    text-transform: lowercase;
    text-decoration: none;
    display: block;
}
.product-title:hover {
    text-decoration: underline;
}
.product-price {
    font-size: 0.9rem;
    color: #000;
}
.tax-text{
    color: #000;
}
.rating-stars {
    color: #1a1a1a;
    font-size: 0.6rem;
    margin-bottom: 0.5rem;
}
.review-count {
    font-size: 0.75rem;
    color: #777;
    margin-left: 5px;
}
/* Footer */
footer {
    background-color: #f4e6e2;
    padding: 60px 0 30px;
    margin-top: 60px;
}
/* Cart Drawer Customization */
.offcanvas {
    background-color: #f4f4f1;
    /* Red Drawer */
    color: white;
}
.offcanvas-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.cart-item-img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 4px;
}
.btn-checkout {
    background-color: white;
    color: #f4f4f1;
    border: none;
    padding: 15px;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    width: 100%;
    transition: opacity 0.2s;
}
.btn-checkout:hover {
    opacity: 0.9;
    background-color: #f0f0f0;
}
.progress-bar-custom {
    background-color: rgba(255, 255, 255, 0.3);
    height: 2px;
    margin: 20px 0;
    position: relative;
}
.progress-fill {
    background-color: white;
    height: 100%;
    width: 100%;
    /* Dynamic */
}
/* Mobile Menu Override */
@media (max-width: 991px) {
    body.mobile-menu-open .announcement-bar,
    body.mobile-menu-open nav.navbar,
    body.cart-drawer-open .announcement-bar,
    body.cart-drawer-open nav.navbar {
        display: none !important;
    }
    .navbar-collapse {
        background-color: var(--color-bg);
        padding: 20px;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        z-index: 1000;
        border-bottom: 1px solid #ddd;
    }
}
body.cart-drawer-open .announcement-bar,
body.cart-drawer-open nav.navbar {
    display: none !important;
}
/* Overlay Background */
.search-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background: #959581;
    /* red background */
    top: 0;
    left: 0;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    animation: fadeIn 0.4s ease;
}
/* Close Button */
.close-btn {
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 35px;
    color: white;
    cursor: pointer;
}
/* Search Box */
.search-box {
    width: 60%;
    display: flex;
    border-bottom: 2px solid white;
}
.search-box input {
    flex: 1;
    padding: 15px;
    font-size: 20px;
    border: none;
    outline: none;
    background: transparent;
    color: white;
}
.search-box input::placeholder {
    color: #f5c6cb;
}
.search-box button {
    background: none;
    border: none;
    font-size: 24px;
    color: white;
    cursor: pointer;
}
/* Animation */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.modal-content {
    background: #959581 !important;
    /* Custom red */
    border: 0 !important;
    box-shadow: none !important;
}
.form-control::placeholder {
    color: #f8d7da;
}
/* register page cc */
.container-box {
    width: 100%;
    max-width: 490px;
    padding: 20px;
    text-align: center;
}
.creat-us {
    font-weight: 600;
    letter-spacing: 5px;
    margin-bottom: 28px;
    color: black;
    text-transform: uppercase;
    font-size: 33px;
}
/* --- Custom Floating Effect without changing box size --- */
.input-group-custom {
    position: relative;
    margin-bottom: 18px;
}
.container-box .form-control {
    border: 1.5px solid #8b8787 !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    color: #555;
    /* Aapki original height aur padding */
    height: 44px !important;
    padding: 12px 16px 4px 16px !important;
    font-size: 1.1rem;
    transition: all 0.2s;
}
/* Placeholder Label */
.custom-label {
    position: absolute;
    top: 10px;
    left: 16px;
    color: #777;
    pointer-events: none;
    transition: all 0.2s ease;
    font-size: 1.1rem;
}
/* Focus State: Blue border and shadow */
.container-box .form-control:focus {
    border-color: #64a1ff !important;
    box-shadow: 0 0 0 2px rgba(100, 161, 255, 0.3) !important;
    outline: none;
}
/* Jab box focus ho ya text likha ho, tab label upar chala jaye */
.container-box .form-control:focus+.custom-label,
.container-box .form-control:not(:placeholder-shown)+.custom-label {
    top: 2px;
    font-size: 0.75rem;
    color: #555;
    opacity: 0.8;
}
.btn-create {
    background-color: #A61D2E;
    color: white;
    border: none;
    border-radius: 4px;
    padding: 12px 30px;
    font-weight: bold;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 0.9rem;
    margin-top: 10px;
    transition: 0.3s;
}
.btn-create:hover {
    background-color: #8a1826;
}
h1.display-5.fw-semibold.text-dark.m-0.text-uppercase {
    font-size: 35px;
}
.container-box {
    width: 100%;
    max-width: 470px;
    padding: 20px;
    text-align: center;
    margin-top: 135px;
}
/* login page css */
.login-container {
    width: 100%;
    max-width: 470px;
    padding: 20px;
    text-align: center;
    margin-top: 135px;
}
/* LOGIN Heading Style */
.login-title {
    font-weight: 500;
    letter-spacing: 4px;
    margin-bottom: 30px;
    color: black;
    font-size: 2.5rem;
}
/* Input Fields Styling */
.login-container .form-control {
    border: 2px solid #999;
    border-radius: 0;
    /* Square edges as per image */
    padding: 8px 12px;
    background-color: transparent;
    margin-bottom: 15px;
}
.login-container .form-control::placeholder {
    color: #666;
}
/* Links Styling */
.links {
    text-align: left;
    margin-bottom: 30px;
}
.links a {
    color: #333;
    text-decoration: underline;
    font-size: 0.9rem;
}
/* Sign In Button Style */
.btn-signin {
    background-color: #A61D2E;
    /* Reddish color from image */
    color: white;
    border: none;
    border-radius: 0;
    padding: 10px 40px;
    font-weight: bold;
    letter-spacing: 1px;
    text-transform: uppercase;
    width: auto;
    min-width: 150px;
}
.btn-signin:hover {
    background-color: #8a1826;
    color: white;
}
/* Create Account Link */
.create-acc {
    display: block;
    margin-top: 20px;
    color: #333;
    text-decoration: underline;
}
/* term and condetion page css */
:root {
    --bg-color: #f9efeb;
    --text-color: #333333;
}
/* ===== Scoped Terms Page ===== */
.terms-page {
    font-family: "copperplate";
}
.terms-container {
    /*max-width: 750px;*/
}
.terms-title {
    font-size: 2.7rem;
    font-weight: 600;
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 40px;
    margin-top: 90px;
}
.terms-updated {
    font-size: 15px;
    margin-bottom: -20px;
    font-weight: 300;
}
.terms-heading {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 1.4rem;
    letter-spacing: 1px;
    margin-top: 40px;
    margin-bottom: 25px;
}
.terms-text {
    font-size: 17px;
    font-weight: 300;
    margin-bottom: 20px;
    text-align: justify;
    color: #414040;
}
main.main-content.container.py-5 {
    margin-top: 90px;
}
.bold-text {
    font-weight: 600;
}
.terms-list {
    padding-left: 18px;
}
.terms-list li {
    font-size: 17.5px;
    font-weight: 300;
    margin-bottom: 6px;
}
@media (max-width: 768px) {
    .terms-title {
        font-size: 1.8rem;
        letter-spacing: 2px;
        margin-top: 135px;
        margin-bottom: 33px;
    }
    .card-body {
        padding: 2px 3px;
        text-align: center;
    }
    /* main.main-content.container.py-5 {
        margin-top: 45px;
    } */
    .login-title {
        font-size: 1.9rem
    }
    button.btn.btn-signin {
        font-size: 13px;
    }
    .login-container {
        margin-top: 110px;
    }
    ul.terms-list li {
        font-size: 13px !important;
        color: #3c3b3b;
    }
    .terms-text {
        font-size: 12.5px;
    }
    .d-flex.align-items-center.justify-content-center.mx-auto.mb-4 img {
        width: 16%;
    }
    .container-box {
        margin-top: 69px;
    }
    h1.creat-us {
        font-size: 24px !important;
    }
    .terms-container {
        margin-top: 40px;
        padding-left: 20px;
        padding-right: 20px;
    }
}
/* index page css */
:root {
    --brand-bg: #FAEEEA;
    --text-white: #FAEEEA;
    --overlay-color: #000000;
    --main-font: 'Cinzel', serif;
    /* Raudha style luxury font */
    --sans-font: 'Montserrat', sans-serif;
}
/* Full Screen Container */
.hold-entire-slide-block {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
/* Expanding Frame */
.frame-holder {
    position: relative;
    transition: all 2.5s cubic-bezier(0.25, 0.1, 0.25, 1);
    overflow: hidden;
    z-index: 1;
}
/* Frame overlay jaisa Raudha par hai */
/* Initial state for Desktop & Mobile */
.frame-initial {
    width: 85%;
    height: 80%;
}
/* Expansion logic */
.frame-active {
    width: 100% !important;
    height: 100% !important;
}
.frame-active::before {
    opacity: 0;
}
/* Slider & Media */
.splide,
.splide__track,
.splide__list,
.splide__slide {
    height: 100% !important;
}
.image-overlay-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}
/* Subtle Dark Tint */
.image-overlay-wrapper::after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: var(--overlay-color);
    opacity: 0.25;
    z-index: 2;
    pointer-events: none;
}
.hero-v {
    width: 100%;
    height: 100%;
    /*object-fit: cover;*/
    display: block;
}
/* Responsive Text Overlay */
.text-overlay {
    position: absolute;
    left: 8%;
    bottom: 12%;
    z-index: 10;
    color: var(--text-white);
    opacity: 0;
    transform: translateY(30px);
    transition: all 2s ease 2.2s;
    max-width: 85%;
}
.text-visible {
    opacity: 1;
    transform: translateY(0);
}
.label-text {
    font-family: var(--sans-font);
    font-size: clamp(10px, 2vw, 13px);
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 15px;
    font-weight: 400;
}
.main-title {
    font-family: var(--main-font);
    font-size: clamp(28px, 6vw, 55px);
    font-weight: 400;
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: 25px;
}
.shop-link {
    font-family: var(--sans-font);
    font-size: clamp(11px, 1.5vw, 13px);
    font-weight: 600;
    letter-spacing: 2px;
    text-decoration: none;
    color: var(--text-white);
    border-bottom: 1.5px solid var(--text-white);
    padding-bottom: 4px;
    transition: 0.3s;
    display: inline-block;
}
/* Pagination dots jaisa real site pe hai */
.splide__pagination {
    bottom: 5% !important;
    gap: 12px;
}
.splide__pagination__page {
    background: rgba(255, 255, 255, 0.4) !important;
    width: 8px !important;
    height: 8px !important;
}
.splide__pagination__page.is-active {
    background: #fff !important;
    transform: scale(1.3);
}
/* Mobile specific adjustments */
@media (max-width: 768px) {
    .frame-initial {
        width: 92%;
        height: 75%;
    }
    .text-overlay {
        left: 5%;
        bottom: 15%;
        text-align: left;
    }
    .main-title {
        margin-bottom: 20px;
    }
    .hold-entire-slide-block {
        height: 100%;
    }
    /* Mobile height optimization */
}
/* Modal styling */
.custom-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.95);
    z-index: 99999;
    align-items: center;
    justify-content: center;
}
.fragrance-section {
    position: relative;
    overflow: hidden;
    height: 100svh;
    min-height: 760px;
}
.fragrance-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 760px;
    object-position: center 24%;
}
/* soft warm overlay like original */
.fragrance-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
        rgba(0, 0, 0, 0.15),
        rgba(0, 0, 0, 0.25));
}
/* Desktop text */
.fragrance-content {
    position: absolute;
    top: 45%;
    right: 6%;
    transform: translateY(-50%);
    max-width: 361px;
    color: #fff;
    text-align: center;
}
/* MAIN TEXT ? luxury look */
.fragrance-content p {
    font-family: 'Inter', sans-serif;
    letter-spacing: 2.4px;
    font-size: 16px;
    line-height: 1.75;
    font-weight: 600;
    text-align: center;
}
/* Signature */
.signature {
    font-family: 'Great Vibes', cursive;
    font-size: 38px;
    line-height: 1;
    margin-bottom: 21px;
}
/* Link */
.story-link {
    font-family: 'Inter', sans-serif;
    color: #fff;
    text-decoration: underline;
    letter-spacing: 2px;
    font-size: 13px;
}
@media (max-width:768px) {
    .fragrance-section {
        height: 100svh;
        min-height: 100svh;
    }
    .fragrance-img {
        object-position: 21% 35%;
        object-fit: cover;
    }
    .fragrance-content {
        left: 50%;
        top: 50%;
        right: auto;
        transform: translate(-50%, -50%);
        text-align: center;
        width: 92%;
        max-width: 420px;
    }
}
.custom-split-section {
    height: 600px;
    max-height: 85vh;
}
/* LEFT VIDEO */
.video-container-left {
    height: 100%;
    background-color: #000;
    padding: 0;
    overflow: hidden;
}
.video-container-left video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* RIGHT SECTION */
.content-side-right {
    background-color: #F2ECE6;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 40px;
}
.sub-text {
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 3.5px;
    margin-bottom: 30px;
    color: #333;
}
.formula-main-title {
    font-size: 22px;
    line-height: 1.2;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    margin-bottom: 30px;
    max-width: 550px;
    color: #ffffff;
}
.cta-link {
    color: #000;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 2px;
    text-decoration: underline;
    text-underline-offset: 4px;
    margin-bottom: 45px;
}
.small-video-box {
    width: 240px;
    height: 300px;
    position: relative;
    overflow: hidden;
    background: #ceb983;
}
.small-video-box video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.shake-label {
    position: absolute;
    bottom: 20px;
    width: 100%;
    color: #fff;
    font-family: 'Brush Script MT', cursive;
    font-size: 32px;
    text-align: center;
    pointer-events: none;
}
/* ?? MOBILE + TABLET ONLY */
@media (max-width: 992px) {
    .custom-split-section {
        height: auto;
    }
    /* CONTENT STACK CONTROL */
    .content-side-right {
        justify-content: flex-start;
    }
    /* VIDEO UPAR */
    .small-video-box {
        order: -1;
        width: 100%;
        max-width: 320px;
        height: 380px;
        margin-bottom: 40px;
    }
    /* TEXT NICHE */
    .sub-text,
    .formula-main-title,
    .cta-link {
        order: 2;
    }
    .formula-main-title {
        font-size: 18px;
        letter-spacing: 1.6px;
    }
}
/* <=600px layout: reference-style split with overlap card */
@media (max-width: 600px) {
    .custom-split-section {
        display: block;
        position: relative;
        height: auto;
        max-height: none;
        background: #f4f4f1;
    }
    h2.display-6.text-uppercase.fw-semibold {
        font-size: 20px;
    }
    h1.display-5.fw-semibold.text-dark.m-0.text-uppercase {
        font-size: 17px;
    }
    .col-md-12.text-center {
        margin: 0 0 34px 0px;
    }
    .video-container-left {
        width: 100%;
        height: clamp(340px, 62vh, 470px);
        min-height: 340px;
        max-height: 470px;
        background: #000;
    }
    .video-container-left video {
        object-position: center 30%;
    }
    .text-overlay.text-visible {
        text-align: center !important;
    }
    .d-flex.align-items-center.gap-3.flex-wrap {
        text-align: center !important;
    }
    .content-side-right {
        width: 100%;
        min-height: 320px;
        padding: 168px 20px 28px;
        justify-content: flex-start;
        background: #f4f4f1;
    }
    .small-video-box {
        order: -1;
        width: clamp(170px, 45vw, 280px);
        height: clamp(235px, 64vw, 360px);
        margin: -220px auto 22px;
        box-shadow: 0 8px 28px rgba(0, 0, 0, 0.22);
    }
    span.carousel-control-prev-icon.bg-img {
        margin-bottom: 168px !important;
    }
    span.carousel-control-next-icon {
        margin-bottom: 162px !important;
    }
    .d-flex.justify-content-center.gap-4.flex-wrap.mt-4 {
        gap: 0.4rem !important;
    }
    .shake-label {
        font-size: 26px;
        bottom: 8px;
    }
    .sub-text {
        order: 2;
        margin: 0 0 10px;
        font-size: 9px;
        letter-spacing: 2.6px;
    }
    .formula-main-title {
        display: block;
        margin: 0 0 14px;
        color: #2f2928;
        font-size: 17px;
        line-height: 1.2;
        letter-spacing: 1.4px;
        max-width: 94%;
    }
    .cta-link {
        display: inline-block;
        margin: 0;
        color: #2f2928;
        font-size: 11px;
        letter-spacing: 1.7px;
        text-underline-offset: 3px;
    }
}
:root {
    --gold-bg: #ce973e;
}
body {
    background: #fff;
    margin: 0;
    font-family: serif;
    overflow-x: hidden;
}
.hero-container {
    position: relative;
    display: flex;
    height: 100vh;
    width: 100%;
}
/* --- DESKTOP VIEW (RESTORING ORIGINAL) --- */
.hero-left {
    background-color:#fff;
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 40px;
    transition: background-color 0.6s ease;
    position: relative;
    z-index: 5;
    order: 1;
}
.hero-right {
    width: 50%;
    height: 100vh;
    z-index: 1;
    order: 2;
    /* Desktop par Right hi rahega */
}
#main-hero .splide__slide img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
p.fs-4.text-dark {
    font-size: 14px !important;
    text-transform: uppercase;
    color: #5b4444d9 !important;
    font-weight: 100;
    letter-spacing: 3px;
}
/* Floating Bottle */
.bottle-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 15;
    width: 30vw;
    max-width: 300px;
    pointer-events: none;
}
#bottle-carousel img {
    width: 100%;
    /*filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.4));*/
}
/* Nav Buttons */
.nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: transparent !important;
    border: none;
    cursor: pointer;
    z-index: 25;
}
#prev-slide {
    left: 100px;
}
#next-slide {
    right: 124px;
}
.nav-btn svg {
    width: 30px;
    height: 30px;
    stroke: #2e2e2e;
    fill: none;
    stroke-width: 1px;
}
.content-box {
    width: 100%;
    max-width: 400px;
    z-index: 10;
}
.scent-hero-title {
    font-size: 2.5rem;
    letter-spacing: 4px;
    color: #2e2e2e;
    /*margin-bottom: 1rem;*/
}
.quote-img {
    width: 100%;
    max-width: 100%; 
}
.btn-shop {
    border-bottom: 1.5px solid #2e2e2e;
    padding: 5px 0;
    color: #2e2e2e;
    text-decoration: none;
    font-size: 20px;
    /* letter-spacing: 2px; */
    font-weight: 600;
    text-transform: uppercase;
}
/* --- MOBILE & TABLET (ONLY CHANGE HERE) --- */
@media (max-width: 991px) {
    .hero-container {
        flex-direction: column;
        height: auto;
    }
    /* Image Section UP */
    .hero-right {
        width: 100% !important;
        height: 50vh !important;
        order: 1 !important;
    }
    #main-hero .splide__slide img {
        height: 50vh;
    }
    /* Text Section DOWN */
    .hero-left {
        width: 100% !important;
        height: auto !important;
        order: 2 !important;
        background-color: #ffffff !important;
        padding: 80px 20px 60px;
    }
    .bottle-overlay {
        top: 43vh;
        width: 40vw;
        max-width: 185px;
        transform: translate(-50%, -50%);
    }
    .scent-hero-title {
        font-size: 1.4rem;
        margin-top: 14px;
    }
    .nav-btn {
        top: 75%;
    }
    #prev-slide {
        left: 3%;
        top: 108px;
    }
    #next-slide {
        left: 81%;
        top: 106px;
    }
}
#main-hero .splide__pagination {
    display: none !important;
}
/* First section dots (like reference): bottom-right */
#heroSlider .splide__pagination {
    position: absolute !important;
    right: 2.8rem !important;
    left: auto !important;
    bottom: 2.2rem !important;
    justify-content: flex-end !important;
    gap: 0.85rem !important;
    margin: 0 !important;
    z-index: 30;
}
#heroSlider .splide__pagination__page {
    width: 5px !important;
    height: 5px !important;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8) !important;
    opacity: 1 !important;
    transform: none !important;
}
#heroSlider .splide__pagination__page.is-active {
    background: #b18a3a !important;
    transform: none !important;
}
@media (max-width: 768px) {
    #heroSlider .splide__pagination {
        right: 1.15rem !important;
        bottom: 1.15rem !important;
        gap: 0.6rem !important;
    }
    #heroSlider .splide__pagination__page {
        width: 5px !important;
        height: 5px !important;
    }
    h2.display-5.fw-normal.text-uppercase {
        font-size: 16px;
        width: 100%;
    }
}
p.fs-4.text-muted {
    font-size: 17px !important;
}
.col-md-12.text-center img {
    width: 40%;
}
p.product-badge.mb-1 {
    font-size: 16px;
}
h3.display-6.fw-bold {
    font-size: 23px;
}
p.fs-5 {
    font-size: 14px !important;
}
.px-4 {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
}
/* 2nd section slider animation ( smooth reveal) */
#productCarousel.product-carousel {
    overflow: hidden;
}
#productCarousel.product-carousel .carousel-item {
    transition: opacity 0.2s ease-in-out;
}
#productCarousel.product-carousel .carousel-item .row {
    min-height: min(74vh, 760px);
}
#productCarousel.product-carousel .carousel-item img {
    opacity: 0;
    transform: translateY(22px) scale(0.96);
    filter: drop-shadow(0 24px 40px rgba(0, 0, 0, 0.18));
    transition: transform 0.2s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s ease;
}
#productCarousel.product-carousel .carousel-item .product-badge,
#productCarousel.product-carousel .carousel-item h3,
#productCarousel.product-carousel .carousel-item p.fs-5,
#productCarousel.product-carousel .carousel-item .btn-custom {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.22, 1, 0.36, 1);
}
#productCarousel.product-carousel .carousel-item.is-entering img {
    opacity: 1;
    transform: translateY(0) scale(1);
}
#productCarousel.product-carousel .carousel-item.active img {
    opacity: 1;
    transform: translateY(0) scale(1);
}
#productCarousel.product-carousel .carousel-item.is-entering .product-badge {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.2s;
    text-transform: uppercase;
    font-size: 17px !important;
    font-weight: 100;
    font-family: unset !important;
}
h3.display-6 {
    font-size: 24px;
    font-weight: 500;
}
#productCarousel.product-carousel .carousel-item.active .product-badge {
    opacity: 1;
    transform: translateY(0);
}
#productCarousel.product-carousel .carousel-item.is-entering h3 {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.3s;
}
#productCarousel.product-carousel .carousel-item.active h3 {
    opacity: 1;
    transform: translateY(0);
}
#productCarousel.product-carousel .carousel-item.is-entering p.fs-5 {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.4s;
    text-transform: uppercase;
    font-size: 17px !important;
    font-weight: 100;
    font-family: unset !important;
}
.col-md-12.text-center {
    margin-top: 35px;
    line-height: 30px;
}
#productCarousel.product-carousel .carousel-item.active p.fs-5 {
    opacity: 1;
    transform: translateY(0);
}
#productCarousel.product-carousel .carousel-item.is-entering .btn-custom {
    opacity: 1;
    transform: translateY(0);
    border-radius: 2px;
    transition-delay: 0.5s;
}
#productCarousel.product-carousel .carousel-item.active .btn-custom {
    opacity: 1;
    transform: translateY(0);
}
.index-scent-carousel .carousel-control-prev,
.index-scent-carousel .carousel-control-next {
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    opacity: 1;
    z-index: 8;
}
.index-scent-carousel .carousel-control-prev {
    left   : 20%;
    top: 300px;
}
.index-scent-carousel .carousel-control-next {
    right: 20%;
    top: 300px;
}
.index-scent-carousel .carousel-control-prev-icon,
.index-scent-carousel .carousel-control-next-icon {
    width: 30px;
    height: 30px;
    margin-bottom: 0 !important;
}
@media (max-width: 991.98px) {
    #productCarousel.product-carousel .carousel-item .row {
        min-height: auto;
    }
}
.index-scent-intro,
.index-scent-intro h2,
.index-scent-intro p,
.index-scent-intro span,
.index-scent-intro .text-muted {
    color: #584141 !important;
}
.index-scent-intro .bi-circle-fill {
    color: #fff !important;
}
.index-scent-carousel .product-badge,
.index-scent-carousel h3,
.index-scent-carousel p.fs-5 {
    color: #000 !important;
}
.index-scent-carousel .scent-visual-wrap {
    min-height: 355px;
    padding: 1.5rem 1rem;
    background-image: none !important;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
}
.index-scent-carousel .scent-bottle-img {
    width: min(78%, 540px);
    height: auto;
    filter: drop-shadow(0 18px 24px rgba(0, 0, 0, 0.22));
}
.index-scent-carousel .carousel-indicators {
    bottom: 1.3rem !important;
    margin-bottom: 0 !important;
    z-index: 6;
    gap: 20px;
}
.index-scent-carousel .carousel-control-prev-icon,
.index-scent-carousel .carousel-control-next-icon {
    filter: none;
}
.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22black%22%20viewBox%3D%220%200%2016%2016%22%3E%0A%20%20%3Cpath%20d%3D%22M11.354%201.646a.5.5%200%200%201%200%20.708L5.707%208l5.647%205.646a.5.5%200%200%201-.708.708l-6-6a.5.5%200%200%201%200-.708l6-6a.5.5%200%200%201%20.708%200z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") !important;
}
.carousel-control-next-icon {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22black%22%20viewBox%3D%220%200%2016%2016%22%3E%0A%20%20%3Cpath%20d%3D%22M11.354%201.646a.5.5%200%200%201%200%20.708L5.707%208l5.647%205.646a.5.5%200%200%201-.708.708l-6-6a.5.5%200%200%201%200-.708l6-6a.5.5%200%200%201%20.708%200z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") !important;
    transform: rotate(180deg);
}
.index-scent-carousel .carousel-indicators [data-bs-target] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    opacity: 1;
    border: 0;
    background-color: #2b2322;
}
.index-scent-carousel .carousel-indicators .active {
    background-color: #a5823f;
}
@media (max-width: 768px) {
    .index-scent-carousel .scent-visual-wrap {
        min-height: 240px;
        padding: 1rem 0.5rem;
    }
    .index-scent-carousel .scent-bottle-img {
        width: 86%;
    }
    .index-scent-carousel .carousel-indicators {
        bottom: 4.6rem !important;
    }
    button.btn.btn-create {
        font-size: 12px;
    }
    main.main-content {
        margin-top: 90px;
    }
    .col-6.col-md-4.col-lg-3.p-1 {
        margin-top: 0px !important;
    }
    .min-vh-100 {
        min-height: 58vh !important;
    }
}
/* <=600px: Raudha-like mobile scent backgrounds + non-overlapping dots */
@media (max-width: 600px) {
    .index-scent-carousel .carousel-control-prev,
    .index-scent-carousel .carousel-control-next {
        position: absolute;
        top: 34%;
        bottom: auto;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 1;
        z-index: 9;
        visibility: visible !important;
        pointer-events: auto;
    }
    .index-scent-carousel .carousel-control-prev {
        left: 12px !important;
        right: auto !important;
    }
    .index-scent-carousel .carousel-control-next {
        left: auto !important;
        right: 12px !important;
    }
    .index-scent-carousel .carousel-control-prev-icon,
    .index-scent-carousel .carousel-control-next-icon {
        display: none !important;
        background-image: none !important;
        margin-bottom: 0 !important;
    }
    .index-scent-carousel .carousel-control-prev::after,
    .index-scent-carousel .carousel-control-next::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 16px;
        height: 16px;
        border-top: 2px solid #ffffff;
        border-right: 2px solid #ffffff;
        display: block;
        opacity: 0.95;
    }
    .index-scent-carousel .carousel-control-prev::after {
        transform: translate(-50%, -50%) rotate(-135deg);
    }
    .index-scent-carousel .carousel-control-next::after {
        transform: translate(-50%, -50%) rotate(45deg);
    }
    .index-scent-carousel .scent-visual-wrap {
        min-height: 300px;
        padding: 0.75rem 0.35rem;
        background-position: center 35%;
        background-size: cover;
    }
    .index-scent-carousel .scent-bottle-img {
        width: 92%;
        max-height: none;
        object-fit: contain;
        margin-top: 0;
    }
    .index-scent-carousel .carousel-item .btn-custom {
        margin-top: 1.25rem;
        margin-bottom: 0.9rem;
        position: relative;
        z-index: 7;
    }
    .index-scent-carousel .carousel-indicators {
        position: static;
        left: auto;
        right: auto;
        bottom: auto;
        width: 100%;
        display: flex !important;
        margin-top: 0 !important;
        margin-bottom: 0.9rem;
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        justify-content: center;
        z-index: 8;
    }
    .index-scent-carousel .carousel-indicators [data-bs-target] {
        width: 11px;
        height: 11px;
    }
    .index-scent-carousel .carousel-item:nth-child(1) .scent-visual-wrap {
        background-image: url("../img/han.webp") !important;
    }
    .index-scent-carousel .carousel-item:nth-child(2) .scent-visual-wrap {
        background-image: url("../img/can.webp") !important;
    }
    .index-scent-carousel .carousel-item:nth-child(3) .scent-visual-wrap {
        background-image: url("../img/van.webp") !important;
    }
    .index-scent-carousel .carousel-item:nth-child(4) .scent-visual-wrap {
        background-image: url("../img/ggg.jpg") !important;
    }
    .index-scent-carousel .carousel-item:nth-child(5) .scent-visual-wrap {
        background-image: url("../img/helo.webp") !important;
    }
}
@media (max-width: 450px) {
    nav.navbar {
        background-color: transparent !important;
        padding-top: 0.55rem !important;
        padding-bottom: 0.55rem !important;
    }
    .navbar .container-fluid {
        position: relative;
        min-height: 58px;
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
    .navbar-toggler {
        position: absolute;
        left: 0.55rem;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1102;
        margin: 0;
        padding: 0.2rem 0.3rem;
    }
    .navbar-brand.position-absolute.start-50.translate-middle-x {
        left: 50% !important;
        top: 50%;
        transform: translate(-50%, -50%) !important;
        margin: 0;
        max-width: 44%;
        z-index: 1090;
    }
    .navbar-brand.position-absolute.start-50.translate-middle-x img {
        height: 42px;
        width: auto;
    }
    .navbar .d-flex.align-items-center.gap-3 {
        position: absolute;
        right: 0.6rem;
        top: 50%;
        transform: translateY(-50%);
        gap: 0.5rem !important;
        z-index: 1102;
    }
    .navbar .d-flex.align-items-center.gap-3 a,
    .navbar .d-flex.align-items-center.gap-3 button {
        /*font-size: 0.95rem;*/
        line-height: 1;
    }
    .navbar .d-flex.align-items-center.gap-3 .badge {
        font-size: 0.62rem !important;
        padding: 0.2rem 0.38rem !important;
    }
}
@media (max-width: 300px) {
    .navbar .container-fluid {
        position: relative;
        min-height: 68px;
        padding-left: 0.65rem !important;
        padding-right: 0.65rem !important;
    }
    .navbar-toggler {
        position: absolute;
        left: 0.55rem;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1101;
        margin: 0;
        padding: 0.2rem 0.3rem;
    }
    .navbar-brand.position-absolute.start-50.translate-middle-x {
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        top: 50%;
        margin: 0;
        max-width: 64%;
        z-index: 1090;
    }
    .navbar-brand.position-absolute.start-50.translate-middle-x img {
        height: 30px;
        width: auto;
    }
}
/* <=600px: fix gray band in fragrance section */
@media (max-width: 600px) {
    .fragrance-img {
        object-fit: cover;
        object-position: center 30%;
        width: 100%;
        height: 100%;
    }
}
/* fragrance picture wrapper support */
.fragrance-section>picture {
    display: block;
    width: 100%;
    height: 100%;
}
/* Match post-hero sections with footer background */
:root {
    --post-hero-footer-bg: #f4f4f1;
}
.raudha-site-footer,
body>.hero-container~section,
body>.hero-container~div,
body>.hero-container~footer {
    /*background-color: var(--post-hero-footer-bg) !important;*/
}
/* Remove white gap between Reveal section and footer */
body {
    background-color: #f4f4f1 !important;
}
.container-fluid.d-flex.flex-column.justify-content-between {
    background-color: #f4f4f1 !important;
    margin-bottom: 0 !important;
    padding-bottom: 1px;
}
.container-fluid.d-flex.flex-column.justify-content-between h2.display-6.text-uppercase.fw-semibold {
    margin-bottom: 0 !important;
}
.raudha-site-footer {
    margin-top: 0 !important;
    background-color: #f4f4f1 !important;
}
@media (max-width: 600px) {
    /* Isse indicators container top par shift ho jayega */
    .index-scent-carousel .carousel-indicators {
        position: absolute;
        /* Static se hata kar absolute kiya */
        top: 575px;
        /* Bilkul top se thoda niche */
        bottom: auto !important;
        left: 0;
        right: 0;
        margin: 0 auto !important;
        display: flex !important;
        justify-content: center;
        z-index: 10;
    }
    .fragrance-content p {
        font-size: 13px !important;
    }
    .carousel-item.is-entering::before {
        content: "";
        position: absolute;
        height: 209px !important;
        width: 100%;
        top: 84px;
        background-color: rgba(0, 0, 0, 0.55) !important;
    }
    #productCarousel.product-carousel .carousel-item.is-entering .product-badge,
    #productCarousel.product-carousel .carousel-item.is-entering p.fs-5 {
        font-size: 14px !important;
    }
    /* Taki content indicators ke peeche na chupe, thodi padding add kar di */
    .index-scent-carousel .scent-visual-wrap {
        padding-top: 40px !important;
        min-height: 210px;
    }
    /* Mobile par bhi dots slightly bigger rakhe hain */
    .index-scent-carousel .carousel-indicators [data-bs-target] {
        width: 10px;
        height: 10px;
        margin: 0 5px;
    }
}
@media (max-width:990px) {
    /* Slightly darker shade for newsletter block only */
    .footer-newsletter {
        background-color: #959581 !important;
    }
}
/* Footer input: keep single-line layout on small screens */
@media (max-width: 991.98px) {
    .raudha-site-footer .footer-news-input-wrap {
        width: 100%;
    }
    .raudha-site-footer .footer-news-input {
        width: 100% !important;
        max-width: 560px;
        min-height: auto;
        display: flex;
        flex-wrap: nowrap !important;
        align-items: center;
    }
    .raudha-site-footer .footer-email {
        flex: 1 1 auto;
        width: 1%;
        min-width: 0;
        margin: 0;
        font-size: 12px;
        padding: 0.95rem 1rem;
    }
    .raudha-site-footer .footer-submit {
        flex: 0 0 auto;
        width: auto;
        margin: 0;
        font-size: 12px;
        padding: 0.95rem 1rem;
        line-height: 1;
        white-space: nowrap;
    }
}
/* Footer input text: light black */
.footer-email {
    color: #5f5a58 !important;
}
.footer-email::placeholder {
    color: #8a8381 !important;
}
/* Transparent header */
.announcement-bar,
nav.navbar,
nav.navbar.bg-white,
.navbar.bg-white {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* Home mobile alignment (<=600px) */
@media (max-width: 600px) {
    .text-overlay {
        left: 50% !important;
        right: auto !important;
        bottom: 12% !important;
        transform: translateX(-50%) !important;
        width: min(92%, 420px);
        text-align: center !important;
    }
    .text-overlay h1,
    .text-overlay h2,
    .text-overlay p,
    .fragrance-content,
    .fragrance-content p,
    .content-side-right,
    .index-scent-intro,
    .index-scent-carousel .carousel-item .col-md-12.text-center,
    .hero-left,
    .content-box {
        text-align: center !important;
    }
    .shop-link,
    .story-link,
    .cta-link,
    .btn-shop,
    .index-scent-carousel .btn-custom,
    #openVideoBtn {
        display: inline-block;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .content-box {
        margin-left: auto;
        margin-right: auto;
    }
}
/* Header only transparent (keep announcement bar visible) */
nav.navbar,
nav.navbar.bg-white,
.navbar.bg-white {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
.announcement-bar {
    background-color: #959581 !important;
}
/* Mobile: make carousel arrows white */
@media (max-width: 600px) {
    .carousel-control-prev-icon,
    .carousel-control-prev-icon.bg-img {
        background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E") !important;
    }
    .carousel-control-next-icon {
        background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E") !important;
        transform: rotate(180deg);
    }
}
/* Header transparent overlay (mobile, final) */
@media (max-width: 600px) {
    nav.navbar,
    nav.navbar.bg-white,
    .navbar.bg-white {
        position: absolute !important;
        top: 30px;
        left: 0;
        width: 100%;
        z-index: 1200;
        background-color: #959581 !important;
        border: 0 !important;
        box-shadow: none !important;
    }
    section.intro {
        margin-top: 73px;
    }
    nav.navbar .container-fluid {
        /*background: #959581  !important;
        background-color: #959581  !important;*/
    }
    nav.navbar .nav-link,
    nav.navbar .text-dark,
    nav.navbar .d-flex.align-items-center.gap-3 a,
    nav.navbar .d-flex.align-items-center.gap-3 button {
        color: #fff !important;
    }
    .mob-acct{
        margin-right: 40px!important;
    }
    nav.navbar .navbar-toggler-icon {
        filter: brightness(0) invert(1) !important;
    }
}
@media (max-width: 600px) {
    /* Keep mobile header controls white even on pages using header-text-black */
    body.header-text-black nav.navbar .nav-link,
    body.header-text-black nav.navbar .desktop-mega-trigger,
    body.header-text-black nav.navbar .d-flex.align-items-center.gap-3 a,
    body.header-text-black nav.navbar .d-flex.align-items-center.gap-3 button,
    body.header-text-black nav.navbar .position-absolute.badge {
        color: #ffffff !important;
        border-color: #ffffff !important;
        text-shadow: none !important;
    }
}
/* Increase gap between announcement bar and header */
@media (max-width: 600px) {
    .prm-10{
        padding-right:40px;
    }
    .announcement-bar {
        padding: 8px 0 9px !important;
    }
    .announcement-bar .container {
        padding-left: 10px;
        padding-right: 10px;
    }
    .announcement-bar .container>span {
        display: inline-block;
        max-width: 320px;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.08em;
        line-height: 1.35;
        text-transform: uppercase;
    }
    .announcement-bar .container>span a {
        margin-left: 6px !important;
        display: inline-flex;
        align-items: center;
        vertical-align: middle;
    }
    nav.navbar,
    nav.navbar.bg-white,
    .navbar.bg-white {
        top: 0px !important;
    }
}
/* Mobile header: smaller menu and bag controls */
@media (max-width: 600px) {
    .navbar-toggler {
        padding: 0.1rem 0.22rem !important;
    }
    .navbar-toggler-icon {
        width: 2rem !important;
        height: 3rem !important;
        background-size: 24px 109px !important;
    }
    .navbar .d-flex.align-items-center.gap-3 button,
    .navbar .d-flex.align-items-center.gap-3 a {
        /*font-size: 0.82rem !important;*/
    }
    .navbar .d-flex.align-items-center.gap-3 .badge {
        font-size: 0.56rem !important;
        padding: 0.16rem 0.32rem !important;
    }
    .navbar .d-flex.align-items-center.gap-3 button[data-bs-target="#cartDrawer"] {
        color: #fff !important;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
        letter-spacing: 0 !important;
        text-align: right;
    }
    .navbar .d-flex.align-items-center.gap-3 button[data-bs-target="#cartDrawer"]::after {
        font-size: 1rem !important;
        line-height: 1;
        color: #fff !important;
    }
    .navbar .d-flex.align-items-center.gap-3 button[data-bs-target="#cartDrawer"] .badge {
        display: none !important;
    }
}
/* 5th section: show dots under button on mobile */
@media (max-width: 600px) {
    #dots-container {
        display: flex;
        justify-content: center;
        margin-top: 12px;
        min-height: 14px;
    }
    #dots-container .splide__pagination {
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 8px !important;
        display: flex !important;
    }
    p.fs-4.text-dark {
        font-size: 10px !important;
    }
    span.d-flex.align-items-center.gap-2 {
        font-size: 10px !important;
    }
}
/* 5th section custom dots */
#dots-container {
    margin-top: 90px;
    min-height: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 29px;
}
#dots-container .hero-dot {
    width: 8px;
    height: 8px;
    border: 0;
    border-radius: 50%;
    background: #bcb8b4;
    padding: 0;
    cursor: pointer;
}
#dots-container .hero-dot.is-active {
    background: #2e2e2e;
}
@media (max-width: 600px) {
    #dots-container {
        margin-top: 12px;
        min-height: 14px;
    }
    #dots-container .hero-dot {
        width: 7px;
        height: 7px;
    }
}
/* Global font family across full site */
body {
    font-family: 'Assistant', sans-serif !important;
    font-weight: 400;
}
.dummy-phone {
    font-family: 'Assistant', sans-serif !important;
    font-size: 18px;
    color: #333;
}
/* Hero slide text tuning to match reference */
@media (min-width: 601px) {
    #heroSlider .text-overlay {
        /*left: 32px;*/
        top: 75%;
        max-width: 440px;
    }
    #heroSlider .label-text {
        font-size: 13px;
        letter-spacing: 4px;
        margin-bottom: 14px;
    }
    #heroSlider .main-title {
        font-size: 40px;
        line-height: 0.95;
        margin-bottom: 18px;
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.42);
    }
    #heroSlider .shop-link {
        color: #ffffff !important;
        border-bottom: 1.5px solid #ffffff !important;
        font-size: 13px;
        font-family: "Cinzel", serif;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.5px;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
    }
    #heroSlider .shop-link:hover {
        color: #ffffff !important;
    }
    /* Hero video slide: watch film button at bottom-center (no border) */
    #heroSlider .splide__slide:nth-child(2) #openVideoBtn {
        position: absolute;
        left: 50%;
        bottom: 26px;
        transform: translateX(-50%);
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #ffffff !important;
        text-decoration: underline;
        text-underline-offset: 5px;
        font-family: "Cinzel", serif !important;
        font-size: 21px !important;
        letter-spacing: 0.4px !important;
        text-transform: lowercase;
        padding: 0 !important;
        line-height: 1;
        z-index: 12;
    }
    #heroSlider .splide__slide:nth-child(2) #openVideoBtn:hover,
    #heroSlider .splide__slide:nth-child(2) #openVideoBtn:focus {
        color: #ffffff !important;
        border: 0 !important;
        outline: none !important;
    }
    @media (max-width: 600px) {
        #heroSlider .splide__slide:nth-child(2) #openVideoBtn {
            font-size: 24px !important;
            bottom: 18px;
        }
    }
}
/* Global desktop header style (match official look across pages) */
@media (min-width: 601px) {
    .announcement-bar {
        background-color: #959581 !important;
        min-height: 34px;
        padding: 8px 0 !important;
        line-height: 1.2;
        border: 0 !important;
    }
    .announcement-bar .container {
        max-width: 100%;
        padding: 0 16px !important;
    }
    .announcement-bar .container>span {
        display: inline-block !important;
        color: #fff !important;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }
    nav.navbar,
    nav.navbar.bg-white,
    .navbar.bg-white {
        position: absolute !important;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 1200;
        background-color: #959581 !important;
        border: 0 !important;
        box-shadow: none !important;
        padding-top: 1.2rem;
        padding-bottom: 1.2rem;
    }
    .navbar-brand img {
        height: 56px;
        width: 91%;
    }
    .nav-link,
    .desktop-mega-trigger,
    .d-flex.align-items-center.gap-3 a,
    .d-flex.align-items-center.gap-3 button {
        /*font-size: 0.8rem;*/
        letter-spacing: 0.08em;
        font-weight: 600;
        opacity: 1 !important;
    }
    .desktop-mega-trigger {
        opacity: 1 !important;
    }
    .navbar .position-absolute.badge {
        position: static !important;
        transform: none !important;
        background: transparent !important;
        border: 0 !important;
        min-width: 0;
        min-height: 0;
        line-height: inherit;
        font-size: 0.84rem !important;
        padding: 0 !important;
        margin-left: 2px;
    }
    .navbar .position-absolute.badge::before {
        content: "(";
        }
        .navbar .position-absolute.badge::after {
            content: ")";
        }
    }
/* Mobile menu icon to black */
@media (max-width: 991.98px) {
    .navbar-toggler-icon {
        filter: none !important;
    }
}
/* collection page css */
:root {
    --wine: #a40f2c;
    --rose-bg: #f5eceb;
    --rose-card: #ead7d4;
    --ink: #221b19;
}
.intro {
    text-align: center;
    padding: 26px 0 30px;
    margin-top: 92px;
}
.intro-tags {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
    font-size: 14px;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 22px;
}
main.main-content.container {
    margin-top: 135px;
}
.intro-tags span::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #9f843f;
    margin-right: 12px;
    transform: translateY(-1px);
}
.intro-title {
    margin: 0;
    font-family: "Cinzel", serif;
    font-size: 85px;
    text-transform: uppercase;
    letter-spacing: 2px;
    line-height: 1.1;
    margin-bottom: 10px;
    font-weight: 600;
}
.intro-subtitle {
    margin: 0;
    font-family: "Cinzel", serif;
    font-size: 19px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-weight: 600;
}
.mosaic {
    width: 100%;
    margin: 0;
}
.row-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 530px;
}
.row-pair>.tile-image,
.row-pair>.tile-content {
    height: 530px;
}
.tile-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    min-height: 0;
}
.tile-content {
    background: var(--rose-card);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 44px 30px;
    transition: background-color 0.35s ease, color 0.35s ease;
    cursor: pointer;
}
.tile-content .tile-media {
    width: 200px;
    height: 313px;
    margin-bottom: 26px;
    object-fit: cover;
    display: block;
}
.tile-content h2 {
    margin: 0;
    font-size: 23px;
    font-family: "Cinzel", serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.tile-content p {
    margin: 10px 0 0;
    font-size: 12px;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}
.mosaic .shop-link {
    margin-top: 28px;
    color: var(--ink);
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    border-bottom: 1px solid #38302e;
    text-decoration: none;
    padding-bottom: 3px;
    transition: color 0.35s ease, border-color 0.35s ease;
}
.tile-content:hover {
    background: #c59a9a;
    color: #ffffff;
}
.row-pair.is-hovered .tile-content {
    background: #c59a9a;
    color: #ffffff;
}
.mosaic .tile-content:hover .shop-link {
    color: #ffffff;
    border-bottom-color: #ffffff;
}
.mosaic .row-pair.is-hovered .shop-link {
    color: #ffffff;
    border-bottom-color: #ffffff;
}
/* Vela section: each tile gets its own base + hover color */
.mosaic .row-pair:nth-of-type(1) .tile-content {
    background: #ead7d4;
}
.mosaic .row-pair:nth-of-type(2) .tile-content {
    background: #e4d8cf;
}
.mosaic .row-pair:nth-of-type(3) .tile-content {
    background: #ddd7e8;
}
.mosaic .row-pair:nth-of-type(4) .tile-content {
    background: #d8e3dd;
}
.mosaic .row-pair:nth-of-type(5) .tile-content {
    background: #eadfce;
}
.mosaic .row-pair:nth-of-type(1) .tile-content:hover,
.mosaic .row-pair:nth-of-type(1).is-hovered .tile-content {
    background: #b9868e;
}
.mosaic .row-pair:nth-of-type(2) .tile-content:hover,
.mosaic .row-pair:nth-of-type(2).is-hovered .tile-content {
    background: #9a7a63;
}
.mosaic .row-pair:nth-of-type(3) .tile-content:hover,
.mosaic .row-pair:nth-of-type(3).is-hovered .tile-content {
    background: #7c6a9b;
}
.mosaic .row-pair:nth-of-type(4) .tile-content:hover,
.mosaic .row-pair:nth-of-type(4).is-hovered .tile-content {
    background: #6d8f83;
}
.mosaic .row-pair:nth-of-type(5) .tile-content:hover,
.mosaic .row-pair:nth-of-type(5).is-hovered .tile-content {
    background: #b38755;
}
.feature-ribbon {
    background: var(--wine);
    color: #fff;
    text-align: center;
    padding: 44px 12px 50px;
}
.feature-ribbon h3 {
    margin: 0 0 26px;
    font-family: "Cinzel", serif;
    font-size: 25px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 600;
}
.feature-points {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0px 9px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 600;
}
.feature-points li {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}
.feature-points li::before {
    content: "�";
    color: #a58a3f;
    margin-right: 10px;
    font-size: 22px;
    line-height: 1;
}
.support-cards {
    width: min(1540px, 100%);
    margin: 24px auto 46px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    padding: 0 26px 26px;
}
.support-card {
    position: relative;
    min-height: 452px;
    overflow: hidden;
}
.support-card--formula {
    background-image: url("../img/Brora-1981.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.support-card--foundation .support-bg-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 0;
}
.support-copy {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 42px;
    color: #fff;
    z-index: 3;
    text-align: center;
}
.support-copy h4 {
    color:#000;
    margin: 0 0 16px;
    text-transform: uppercase;
    letter-spacing: 0.9px;
    font-size: 13px;
    font-weight: 500;
}
.support-copy h3 {
    margin: 0 0 18px;
    text-transform: uppercase;
    font-size: 22px;
    font-family: "Cinzel", serif;
    line-height: 1.12;
    letter-spacing: 0.7px;
    font-weight: 600;
    color:#000;
}
.support-copy a {
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    border-bottom: 1px solid #fff;
    font-size: 11px;
    letter-spacing: 0.8px;
    font-family: "Cinzel", serif;
    font-weight: 600;
}
.support-overlay-image {
    position: absolute;
    top: 72px;
    left: 50%;
    transform: translateX(-50%);
    width: clamp(260px, 44%, 390px);
    aspect-ratio: 16 / 10;
    object-fit: cover;
    z-index: 2;
    box-shadow: 0 18px 28px rgba(0, 0, 0, 0.28);
}
@media (max-width: 900px) {
    .row-pair,
    .support-cards {
        grid-template-columns: 1fr;
    }
    .row-pair {
        height: auto;
    }
    .row-pair>.tile-image,
    .row-pair>.tile-content {
        height: auto;
    }
    .row-pair>.tile-image {
        order: 1;
    }
    .row-pair>.tile-content {
        order: 2;
    }
    .tile-image img {
        min-height: 320px;
    }
    .tile-content .tile-media {
        width: 250px;
        height: 33 0px;
    }
    .feature-ribbon {
        padding: 26px 12px 30px;
    }
    .feature-ribbon h3 {
        font-size: 24px;
        margin-bottom: 14px;
    }
    .feature-points {
        font-size: 10px;
        gap: 0px 2px;
        line-height: 18px;
    }
    .intro-title {
        font-size: 49px;
    }
    .intro-tags {
        font-size: 11px;
        margin-bottom: 33px;
        gap: 1px;
        line-height: 19px;
    }
    .intro-subtitle {
        font-size: 15px;
    }
    .support-cards {
        gap: 10px;
        padding: 0 14px 14px;
    }
    .support-card {
        min-height: 412px;
    }
    .support-copy {
        bottom: 52px;
    }
    .support-copy h4 {
        font-size: 12px;
        margin-bottom: 12px;
        color:#000;
    }
    .support-copy h3 {
        font-size: 18px;
        margin-bottom: 27px;
    }
    .support-copy a {
        font-size: 13px;
    }
    .support-overlay-image {
        top: 38px;
        width: min(72vw, 380px);
    }
}
@media (max-width: 600px) {
    .intro-tags span::before {
        width: 6px;
        height: 6px;
        margin-right: 8px;
    }
    .tile-content:hover {
        background: var(--rose-card);
        color: var(--ink);
    }
    .tile-content:hover .shop-link {
        color: var(--ink);
        border-bottom-color: #38302e;
    }
}
/* about us page css  */
.equal-height-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* बैकग्राउंड कलर के लिए कस्टम क्लास (आपके दिए गए रंग के अनुसार) */
.bg-raudha-blush {
    background-color: #f2ded9;
}
/* टेक्स्ट कलर के लिए कस्टम क्लास */
.text-raudha-deep {
    color: #29201f !important;
}
/* बाईं ओर की हेडिंग के लिए थोड़ा अतिरिक्त स्टाइल (वैकल्पिक) */
.left-heading {
    font-size: 3rem;
    /* बड़ा आकार, आप अपनी पसंद से घटा-बढ़ा सकते हैं */
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 0;
    /* बूटस्ट्रैप के मार्जिन को हटाता है */
}
/* मोबाइल पर हेडिंग का आकार थोड़ा छोटा करने के लिए */
@media (max-width: 767.98px) {
    .left-heading {
        font-size: 2.5rem;
        text-align: center;
        /* मोबाइल पर सेंटर भी कर सकते हैं */
    }
}
/* ----- global overrides & variables ----- */
:root {
    --primary-red: #a6192f;
    --bg-cream: #faeeea;
    --bg-pale: #fdf7f5;
    --bg-light-pink: #f2ded9;
    --text-dark: #29201f;
    --text-muted: #4a4a4a;
    --border-light: rgba(0, 0, 0, 0.1);
}
body.about-page {
    font-family: "neue-haas-grotesk-display", sans-serif;
    font-weight: 400;
    letter-spacing: 0.5px;
    color: var(--text-dark);
    background-color: white;
    margin: 0;
    padding: 0;
}
body.about-page h1,
body.about-page h2,
body.about-page h3,
body.about-page h4,
body.about-page h5,
body.about-page .copperplate {
    font-family: "copperplate", "copperplate-light", serif;
    font-weight: 400;
    letter-spacing: 0.5px;
}
body.about-page p,
body.about-page span,
.announcement-bar {
    font-family: "copperplate", "copperplate-light", serif !important;
}
body.about-page a,
body.about-page li,
body.about-page label,
body.about-page input,
body.about-page button,
body.about-page textarea,
body.about-page select {
    font-family: "neue-haas-grotesk-display", sans-serif !important;
}
body.about-page .copperplate {
    font-family: "copperplate", "copperplate-light", serif !important;
}
.text-red {
    color: var(--primary-red) !important;
}
.bg-cream {
    background-color: var(--bg-cream) !important;
}
.bg-pale {
    background-color: var(--bg-pale) !important;
}
.bg-light-pink {
    background-color: var(--bg-light-pink) !important;
}
.bg-red {
    background-color: var(--primary-red) !important;
    color: #faeeea;
}
.border-red {
    border-color: var(--primary-red) !important;
}
/* header mimic */
.navbar-raudha {
    background-color: transparent;
    background-color: white;
    padding: 0.8rem 2rem;
    position: fixed;
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 1030;
    transition: all 0.3s ease;
}
.navbar-raudha.scrolled {
    background-color: white;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.navbar-raudha .nav-link {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--text-dark);
    padding: 0.5rem 1rem !important;
}
.navbar-raudha .nav-link.active {
    color: var(--primary-red);
}
/* Transparent state overrides */
.navbar-raudha:not(.scrolled) .nav-link {
    color: white !important;
}
.navbar-raudha:not(.scrolled) .logo-img {
    filter: brightness(0) invert(1);
}
.navbar-raudha:not(.scrolled) .navbar-toggler-icon {
    filter: invert(1);
}
.navbar-raudha .logo-img {
    height: 35px;
    width: auto;
}
.search-icon {
    width: 20px;
    margin-right: 5px;
}
/* section spacing */
.section-padding {
    padding: 5rem 2rem;
}
.section-padding-sm {
    padding: 2.5rem 2rem;
}
.full-width-image {
    width: 100%;
    height: auto;
    display: block;
}
.img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* video hero */
.video-hero {
    position: relative;
    width: 100%;
    aspect-ratio: auto;
    height: 39.375vw;
    /* 16:9 ka ~70% height */
    min-height: 360px;
    max-height: 760px;
    overflow: hidden;
    background: transparent;
}
.video-hero video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.video-hero {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.video-hero+.row.g-0 {
    margin-top: 0 !important;
}
.video-play-button {
    position: absolute;
    top: 90%;
    left: 60%;
    transform: translate(-50%, -50%);
    background: transparent;
    border: none;
    /* border-radius: 0; */
    padding: 0.8rem 2rem;
    color: #faeeea;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    gap: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-decoration: underline;
    font-size: 14px;
}
.video-play-button svg {
    width: 24px;
    height: 24px;
}
/* split content */
.split-content {
    padding: 4rem 4rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.split-content h2 {
    font-size: 1.7rem;
    line-height: 1.1;
    margin-bottom: 1.5rem;
}
h2.copperplate.display-5 {
    font-size: 27px !important;
}
h2.feature-banner-title {
    font-size: 28px;
}
.split-content p {
    font-size: 14px;
    line-height: 1.4;
    color: var(--text-dark);
    margin-top: 1rem;
    max-width: 500px;
    text-align: center;
}
/* about: designed with heart section height */
@media (min-width: 992px) {
    body.about-page .designed-heart-section>.col-md-6 {
        min-height: 500px !important;
    }
    body.about-page .designed-heart-section .img-cover {
        width: 100%;
        height: 500px !important;
        object-fit: cover;
    }
    body.about-page .designed-heart-section .split-content {
        padding: 2.1rem 2.4rem !important;
    }
}
@media (max-width: 991.98px) {
    body.about-page .designed-heart-section .img-cover {
        height: auto;
    }
}
h2.copperplate.display-6 {
    font-size: 1.81rem !important;
}
.quote-block {
    font-family: "copperplate", serif;
    font-size: 18px;
    line-height: 1.4;
    text-align: center;
    max-width: 500px;
    margin: 0 auto;
}
.quote-block span {
    display: block;
}
.signature-svg {
    margin-top: 2rem;
}
h2.copperplate.display-5 {
    font-size: 1.4rem !important;
}
/* feature banner (red) */
.feature-banner {
    background-color: #959581;
    color: #f6e6d4;
    padding: 72px 24px 64px;
    text-align: center;
}
.feature-banner-inner {
    max-width: 1850px;
    margin: 0 auto;
}
.feature-banner-title {
    margin: 0;
    font-family: "copperplate", "copperplate-light", serif;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    line-height: 1.1;
    font-size: 23px;
}
.feature-list {
    margin: 34px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 0 1.6rem;
}
.feature-list li {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    white-space: nowrap;
    font-family: "copperplate", "copperplate-light", serif;
    font-size: 16px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    line-height: 1.2;
}
.feature-list li::before,
.feature-list::after {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #fff7d6 0 22%, #c7ab5b 45%, #7b6026 100%);
    box-shadow: 0 0 0 1px rgba(126, 96, 33, 0.45);
    flex: 0 0 auto;
}
.feature-list::after {
    display: block;
}
@media (max-width: 1400px) {
    .feature-list {
        flex-wrap: wrap;
        row-gap: 0.95rem;
    }
}
@media (max-width: 992px) {
    .feature-banner {
        padding: 54px 20px 46px;
    }
    .feature-banner-title {
        font-size: clamp(1.6rem, 3.5vw, 2.3rem);
    }
    .feature-list {
        margin-top: 26px;
        gap: 0 1.15rem;
    }
    .feature-list li {
        font-size: clamp(0.95rem, 2vw, 1.25rem);
        gap: 0.65rem;
    }
}
/* third section: brand story */
.raudha-brand-story {
    background-color: #ddcdca;
    padding: 5px;
}
.raudha-brand-story-inner {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}
.raudha-brand-story-logo {
    width: min(207px, 68vw);
    height: auto;
    display: block;
    margin: 0 auto 44px;
}
.raudha-brand-story-copy {
    margin: 0 auto;
    max-width: 499px;
    font-size: 15px;
    line-height: 1.35;
    letter-spacing: 0;
    color: #1e2133;
}
@media (max-width: 992px) {
    .raudha-brand-story {
        padding: 56px 18px 64px;
    }
    .raudha-brand-story-logo {
        width: 34%;
        margin-bottom: 30px;
    }
    .raudha-brand-story-copy {
        max-width: 680px;
    }
}
@media (max-width: 576px) {
    .raudha-brand-story {
        padding: 1rem;
    }
    .raudha-brand-story-copy {
        font-size: 1.02rem;
        line-height: 1.55;
    }
}
/* 10th section: poem showcase */
.poem-showcase {
    background-color: #e6dedd;
    border-top: 0;
    padding: 18px 0 24px;
}
.poem-showcase-wrap {
    max-width: 1860px;
    margin: 0 auto;
    padding: 0 36px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 28px;
    min-height: 620px;
}
.poem-copy-col {
    display: flex;
    justify-content: center;
}
.poem-copy {
    position: relative;
    color: #121f38;
    font-family: "copperplate", "copperplate-light", serif;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1.13;
    font-size: clamp(1rem, 0.95vw, 1.52rem);
    max-width: 700px;
}
.poem-copy::before,
.poem-copy::after {
    position: absolute;
    content: "'";
    color: #ab8d41;
    font-size: clamp(1.6rem, 1.8vw, 2.8rem);
    line-height: 1;
    text-shadow: 0 0 0.4px #6f5822;
}
.poem-copy::before {
    top: -30px;
    left: 12%;
    transform: rotate(180deg);
}
.poem-copy::after {
    right: 10%;
    bottom: -40px;
}
.poem-stanza {
    margin: 0;
}
.poem-stanza+.poem-stanza {
    margin-top: 1.2em;
}
.poem-art-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 0;
}
.poem-art-shell {
    position: relative;
    width: min(100%, 920px);
    aspect-ratio: 1.48 / 1;
    overflow: hidden;
}
.poem-art {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.poem-art-frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
    z-index: 2;
}
@media (max-width: 1200px) {
    .poem-showcase-wrap {
        grid-template-columns: 1fr;
        min-height: auto;
        gap: 24px;
        padding: 14px 18px 24px;
    }
    .poem-copy {
        max-width: 760px;
        font-size: clamp(1rem, 2vw, 1.4rem);
    }
    .poem-copy::before {
        left: 10%;
        top: -24px;
    }
    .poem-copy::after {
        right: 8%;
        bottom: -28px;
    }
    .poem-art-shell {
        width: min(100%, 860px);
    }
}
/* 11th section: collection slider */
/* .collection-slider-section {
    background: #e7dfdc;
    padding: 32px 0 54px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
} */
.collection-slider-section {
    background: #e7dfdc;
    padding: 18px 0 40px;
}
.collection-section-title {
    margin: 0 0 50px;
    text-align: center;
    color: #121f38;
    font-family: "copperplate", "copperplate-light", serif;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    line-height: 1.08;
    font-size: 23px;
}
.collection-slider-wrap {
    position: relative;
    max-width: 100%;
    padding: 0 30px;
}
.collection-slider-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: clamp(300px, 36vw, 690px);
    gap: 34px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 30px;
    -ms-overflow-style: none;
    scrollbar-width: none;
    padding: 6px 0 10px;
}
.collection-slider-track::-webkit-scrollbar {
    display: none;
}
.collection-slide {
    position: relative;
    scroll-snap-align: start;
    aspect-ratio: 0.9 / 1;
    overflow: hidden;
    background: #121212;
    color: #f3ede3;
}
.collection-slide-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.collection-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.16) 8%, rgba(0, 0, 0, 0.06) 36%, rgba(0, 0, 0, 0.35) 100%);
    z-index: 1;
    pointer-events: none;
}
.collection-slide-bottle {
    position: absolute;
    left: 50%;
    top: 49%;
    width: min(54%, 390px);
    height: auto;
    transform: translate(-50%, -54%);
    z-index: 2;
    pointer-events: none;
    filter: drop-shadow(0 12px 22px rgba(0, 0, 0, 0.34));
    transition: transform 0.42s cubic-bezier(0.22, 0.61, 0.36, 1), filter 0.42s ease;
    will-change: transform;
}
.collection-slide:hover .collection-slide-bottle {
    transform: translate(-50%, -54%) scale(1.06);
    filter: drop-shadow(0 16px 26px rgba(0, 0, 0, 0.42));
}
.collection-slide-copy {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 42px 26px 40px;
    text-transform: uppercase;
    color: #f4eee4;
}
.collection-slide-title {
    margin: 0;
    font-family: "copperplate", "copperplate-light", serif;
    letter-spacing: 0.14em;
    font-size: 20px;
    line-height: 1.04;
}
.collection-slide-notes {
    margin: 0;
    font-family: "copperplate", "copperplate-light", serif;
    font-size: 14px;
    letter-spacing: 0.09em;
    line-height: 1.07;
}
.collection-slide-notes span {
    display: block;
    margin-top: 0.18em;
    font-family: "neue-haas-grotesk-display", sans-serif;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1.18;
    text-transform: uppercase;
}
.collection-slide-link {
    display: inline-block;
    margin-top: 1.15rem;
    color: #f3ede3;
    font-family: "copperplate", "copperplate-light", serif;
    letter-spacing: 0.12em;
    font-size: 15px;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}
.collection-slide-link:hover {
    color: #f3ede3;
}
.collection-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 70px;
    height: 70px;
    border: 0;
    background: transparent;
    color: #101010;
    font-size: 46px;
    line-height: 1;
    display: grid;
    place-items: center;
    z-index: 5;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease;
}
.collection-nav:hover {
    transform: translateY(-50%) scale(1.03);
}
.collection-nav:disabled {
    opacity: 0.3;
    cursor: default;
}
.collection-nav.prev {
    left: 30px;
}
.collection-nav.next {
    right: 30px;
    border: 0;
    background: transparent;
    font-size: 44px;
}
@media (max-width: 1200px) {
    .collection-slider-wrap {
        padding: 0 18px;
    }
    .collection-slider-track {
        grid-auto-columns: minmax(280px, 74vw);
        gap: 16px;
        scroll-padding-left: 18px;
    }
    .collection-slide-copy {
        padding: 26px 18px 24px;
    }
    .collection-nav {
        width: 46px;
        height: 46px;
        font-size: 34px;
    }
    .collection-nav.prev {
        left: 18px;
    }
    .collection-nav.next {
        right: 18px;
        border-width: 3px;
    }
}
@media (max-width: 767.98px) {
    .collection-slider-section {
        padding: 12px 0 26px;
    }
    .collection-section-title {
        margin-bottom: 24px;
        letter-spacing: 0.08em;
    }
    .collection-slider-wrap {
        padding: 0 12px;
    }
    .collection-slider-track {
        grid-auto-columns: 86vw;
        gap: 12px;
        scroll-padding-left: 12px;
    }
    .collection-slide {
        aspect-ratio: 1.02 / 1;
    }
    .collection-slide-copy {
        padding: 22px 16px 20px;
    }
    .collection-slide-title {
        letter-spacing: 0.1em;
    }
    .collection-slide-notes,
    .collection-slide-notes span,
    .collection-slide-link {
        letter-spacing: 0.08em;
    }
    .collection-nav {
        width: 42px;
        height: 42px;
        color: #fff;
    }
    .collection-nav.prev {
        left: 12px;
    }
    .collection-nav.next {
        right: 12px;
    }
    .bg-img {
        position: relative;
        background-image: url('../img/Ingredients.webp') !important;
        background-size: cover;
        background-position: center;
        min-height: 323px !important;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #faeeea;
        text-align: center;
    }
}
/* footer */
.footer-raudha {
    background: white;
    border-top: 1px solid #eee;
    padding: 3rem 2rem 1.5rem;
}
.footer-logo {
    width: 140px;
    margin-bottom: 2rem;
}
.footer-links {
    list-style: none;
    padding: 0;
    columns: 2;
    column-gap: 3rem;
}
.footer-links li {
    margin-bottom: 0.5rem;
}
.footer-links a {
    color: var(--text-dark);
    text-decoration: none;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.newsletter-input {
    border: 1px solid #ccc;
    padding: 0.8rem 1rem;
    width: 100%;
    background: transparent;
}
.newsletter-btn {
    background: transparent;
    border: 1px solid var(--text-dark);
    padding: 0.8rem 2rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.9rem;
}
/* responsive */
@media (max-width: 768px) {
    .split-content {
        padding: 2rem 1.5rem;
    }
    .navbar-raudha {
        padding: 0.5rem 1rem;
    }
    .video-hero {
        height: 420px;
        aspect-ratio: auto;
        min-height: 0;
    }
    .poem-copy {
        font-size: 13px;
    }
    h3.collection-slide-title {
        font-size: 13px;
    }
    p.collection-slide-notes span,
    p {
        font-size: 12px !important;
    }
    .split-content {
        padding-bottom: 5px;
        padding-top: 3px;
    }
    a.collection-slide-link {
        font-size: 12px;
    }
    img.poem-art {
        height: 100%;
        max-height: none;
        object-fit: cover;
    }
    img.full-width-image {
        height: 500px;
        object-fit: cover;
    }
    h2.copperplate.display-6 {
        font-size: 18px !important;
    }
    h2.feature-banner-title {
        font-size: 18px;
    }
    ul.feature-list li {
        font-size: 10px;
        line-height: 15px;
    }
    .bg-img {
        position: relative;
        background-image: url('../img/Ingredients.webp') !important;
        background-size: cover;
        background-position: center;
        min-height: 323px !important;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #faeeea;
        text-align: center;
    }
}
@media (max-width: 600px) {
    .video-play-button {
        white-space: nowrap;
        flex-wrap: nowrap;
        width: max-content;
        min-width: max-content;
        padding: 0.65rem 1rem;
        gap: 0.45rem;
        margin-left: 21px;
    }
    .video-play-button span {
        white-space: nowrap;
        font-size: 12px;
    }
    .video-play-button svg {
        width: 17px;
        height: 17px;
    }
    .quote-block {
        font-size: 12px;
    }
    p.raudha-brand-story-copy {
        font-size: 12px !important;
    }
    .split-content h2 {
        font-size: 18px;
        margin-bottom: 0px !important;
    }
    h2.copperplate.display-5 {
        font-size: 18px !important;
    }
    a.btn.btn.text-decoration-underline.rounded-0.px-4.py-2 {
        font-size: 13px;
    }
}
button.video-play-button svg {
    margin-right: -174px;
}
/* utility */
.border-top-red {
    border-top: 2px solid var(--primary-red);
}
/* review section css  */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
.accordion-block h4 {
    font-size: 14px;
}
body {
    background: #faf7f2;
    font-family: 'neue-haas-grotesk-display', 'Helvetica Neue', sans-serif;
    color: #29201f;
}
.container-custom {
    max-width: 1440px;
    margin: 0 auto;
}
/* typography */
h1 {
    font-size: 2.2rem;
    font-weight: 450;
    letter-spacing: -0.02em;
    margin-bottom: 0.2rem;
}
.metaLabelMeta {
    color: #A0483E;
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
}
/* rating stars (simple) */
.oke-stars {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    margin: 0;
}
.oke-stars .rating-value {
    color: #2d2b2b;
}
.oke-stars .rating-stars {
    color: #8e7b3f;
    letter-spacing: 0.08em;
    font-size: 22px;
}
.oke-sr-count {
    font-size: 0.7rem;
    color: #2d2b2b;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}
/* price area */
.price-large {
    font-size: 2.55rem;
    font-weight: 400;
    line-height: 1;
    color: #1f1f1f;
    letter-spacing: -0.02em;
}
.badge-sale-custom {
    background: #A0483E;
    color: #fff;
    padding: 0.2rem 0.8rem;
    border-radius: 30px;
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    display: inline-block;
    margin-bottom: 1rem;
}
.product-perks-custom {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.2rem 0.6rem;
    margin: 2rem 0 1.55rem;
    padding: 0;
    border: none;
}
.product-perks-custom div {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}
.product-perks-custom div::before {
    content: "�";
    color: #8e7b3f;
    font-size: 1rem;
    line-height: 1;
}
.perk-style-pdp {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-weight: 600;
    margin-left: 0;
    color: #2f2c2b;
}
.dot-extra {
    margin-right: 6px;
}
/* variant pills */
.variant-radios {
    display: flex;
    justify-content: center;
    gap: 0.7rem;
    flex-wrap: wrap;
    margin: 0.8rem 0 1.65rem;
}
.variant-label {
    min-width: 88px;
    text-align: center;
    border: 1px solid #d9d0cc;
    border-radius: 4px;
    padding: 0.2rem 0rem;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: 0.1s;
    color: #2e2b2a;
}
.variant-label.active,
input[type=radio]:checked+label {
    background: #A0483E !important;
    border-color: #A0483E;
    color: white;
}
input[type=radio] {
    display: none;
}
.disabled+label {
    opacity: 0.3;
    pointer-events: none;
}
/* add to cart block */
.button-block-with-price {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin-top: 0.5rem;
    width: 100%;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
}
.product-form__submit {
    background: #a84f45;
    border: none;
    color: white;
    font-weight: 600;
    letter-spacing: 0.09em;
    padding: 1rem 2rem;
    font-size: 0.85rem;
    flex: 2;
    border-radius: 0;
    text-transform: uppercase;
    transition: 0.1s;
}
.priceBlock-in-BTN {
    background: #a84f45;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-left: 1px solid rgba(255, 255, 255, 0.38);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 156px;
    padding: 0 1.2rem;
    font-size: 1.3rem;
    font-weight: 500;
    border-radius: 0;
}
.sale-pr-info {
    display: inline-block;
    background: #e5ddd8;
    color: #a0483e;
    font-size: 0.74rem;
    font-weight: 600;
    padding: 0.35rem 0.82rem;
    border-radius: 999px;
    margin-left: 0.8rem;
    letter-spacing: 0.02em;
}
/* PDP media column � matches official Eternal Roots layout */
.product__media-wrapper {
    position: sticky;
    padding-left: 0;
    padding-right: 0;
    width: 50%;
    margin: 0;
}
.er-media {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.er-thumb-slider-wrap {
    order: 2;
    width: min(100%, 920px);
    display: flex;
    align-items: center;
    gap: 10px;
}
.er-thumb-rail {
    position: static;
    display: flex;
    flex-direction: row;
    gap: 16px;
    width: 100%;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: center;
    padding: 14px 0 0;
    scrollbar-width: none;
    z-index: 3;
    scroll-snap-type: x mandatory;
}
.er-thumb-rail::-webkit-scrollbar {
    display: none;
}
.er-thumb {
    width: 134px;
    height: 134px;
    border: 1px solid transparent;
    border-radius: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    transition: transform 0.12s, box-shadow 0.12s;
    overflow: hidden;
    flex: 0 0 auto;
    scroll-snap-align: center;
}
.er-thumb.active {
    border-color: #2f2a2c;
    box-shadow: none;
    transform: none;
}
.er-thumb-nav {
    width: 34px;
    height: 34px;
    border: 0;
    background: rgba(38, 32, 35, 0.06);
    color: #2f2a2c;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    flex: 0 0 auto;
}
.er-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}
.er-hero {
    position: relative;
    width: min(100%, 980px);
    height: 90vh;
    min-height: 760px;
    border-radius: 0;
    overflow: hidden;
    background:
    linear-gradient(180deg, #f8cfc2 0%, #f3b0a1 36%, #ee9b89 100%),
    url('../img/tum.webp') center/cover;
    background-blend-mode: screen;
    box-shadow: none;
}
.er-hero-img,
.er-hero-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: none;
    transform-origin: center;
}
.er-hero-img.is-bottle {
}
.er-badge {
    position: absolute;
    top: 69px;
    right: 22px;
    background: #a7353d;
    color: #fff;
    padding: 7px 16px;
    border-radius: 999px;
    font-weight: 600;
    letter-spacing: 0.08em;
    font-size: 10px;
    text-transform: uppercase;
    box-shadow: 0 10px 22px rgba(167, 53, 61, 0.35);
    z-index: 2;
}
.er-arrow {
    display: flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border: 0;
    background: rgba(255, 255, 255, 0.6);
    color: #1f1b1c;
    font-size: 34px;
    line-height: 1;
    align-items: center;
    justify-content: center;
    z-index: 5;
    cursor: pointer;
    border-radius: 999px;
    backdrop-filter: blur(1px);
}
.er-prev {
    left: 14px;
}
.er-next {
    right: 14px;
}
.er-mobile-dots {
    display: none;
}
@media (max-width: 991px) {
    .product__media-wrapper {
        width: 100%;
    }
    .er-media {
        display: block;
    }
    .er-thumb-rail {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        max-height: none;
    }
    .er-thumb-slider-wrap {
        width: 100%;
    }
    .er-thumb {
        width: 70px;
        height: 102px;
    }
    .er-hero {
        min-height: 520px;
        height: 70vh;
    }
    .er-hero-img.is-bottle {
    }
}
/* accordion */
.product-meta-custom-accordion {
    margin-top: 2rem;
    border-top: 1px solid #ddd;
}
.accordionLabel-summary li {
    font-size: 12px;
}
.accordionLabel-summary.small,
.accordionLabel-summary {
    font-size: 12px;
}
.accordion-block {
    border-bottom: 1px solid #ddd;
    padding: 0.6rem 0rem 0.4rem 0rem;
}
.accordionLabel-type {
    display: flex;
    justify-content: space-between;
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #2b2b2b;
}
.accordionLabel-summary {
    margin-top: 0.8rem;
    color: #4f4f4f;
    line-height: 1.5;
    padding-right: 1rem;
    display: none;
}
.accordion-block.open .accordionLabel-summary {
    display: block;
}
.plusLabelAccprdion {
    font-size: 1.4rem;
    line-height: 1;
}
/* afterpay / payment block */
.afterpay-paragraph {
    font-size: 0.72rem;
    margin-top: 0.95rem;
    color: #2f2d2d;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}
.badge.sale-bdg-custom {
    background: #A0483E;
    color: white;
    padding: 0.3rem 1rem;
    border-radius: 30px;
    font-size: 0.7rem;
    font-weight: 600;
    display: inline-block;
    margin-bottom: 1rem;
}
/* helper */
.text-wood {
    color: #A0483E;
}
hr {
    opacity: 0.2;
}
.bg-soft {
    background-color: #fcf8f3;
}
.right-panel {
    background: #faeeea;
    padding: 2.2rem 2.5rem 1.5rem;
}
.right-panel>* {
    max-width: 394px;
    margin-left: auto;
    margin-right: auto;
}
.right-panel .product__title h1 {
    font-size: 1.75rem;
    letter-spacing: 0.06em;
    font-weight: 400;
    color: #4a4548;
    text-align: center;
    margin: 3.25rem 0 1.2rem;
}
.right-panel .meta-label-custom {
    text-align: center;
    margin-top: 0.65rem !important;
}
.right-panel .meta-label-custom h3 {
    color: #b47c6f !important;
    font-size: 0.85rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0;
    text-align: center;
}
.right-panel .d-flex.align-items-center {
    justify-content: center;
    font-size: 21px !important;
}
.right-panel .product__description {
    max-width: 560px;
    margin: 1.2rem auto 0 !important;
    text-align: center;
}
.right-panel .product__description p {
    margin: 0 auto;
    font-size: 0.86rem;
    line-height: 1.45;
    color: #3e3837;
    width: 100%;
    max-width: 470px;
    text-align: center;
}
.afterpay-paragraph {
    color: #333;
    font-size: 14px;
    line-height: 55px;
}
.travel-case-card {
    max-width: 620px;
    margin: 1rem auto 0;
    background: #959581;
    border-radius: 6px;
    padding: 1.25rem 1.35rem;
    display: flex;
    grid-template-columns: 120px 1fr;
    gap: 1rem;
    align-items: center;
    height:150px;
}
.travel-case-media {
    display: flex;
    align-items: center;
    justify-content: center;
}
.travel-case-media img {
    width: 88px;
    height: auto;
    display: block;
}
.travel-case-title {
    margin: 0;
    font-size: 14px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #2d2a2a;
    font-weight: 500;
}
.travel-case-content p {
    font-size: 11px;
}
.travel-case-desc {
    margin: 0.38rem 0 0;
    font-size: 0.44rem;
    line-height: 1.45;
    color: #2f2c2c;
}
.travel-case-note {
    margin: 0.08rem 0 0;
    font-size: 0.44rem;
    line-height: 1.4;
    color: #2f2c2c;
    font-weight: 700;
}
.travel-case-cta {
    margin-top: 0.65rem;
    display: inline-flex;
    border: 1px solid #383333;
    border-radius: 5px;
    overflow: hidden;
    background: transparent;
}
.travel-case-cta button,
.travel-case-cta span {
    border: none;
    background: transparent;
    color: #2d2a2a;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0px;
}
.travel-case-cta button {
    border-right: 1px solid #383333;
    min-width: 137px;
    min-height: 31px;
}
.travel-case-cta span {
    min-width: 86px;
    letter-spacing: 0.04em;
}
.reviews-section {
    background: #faeeea;
    padding: 3rem 2.8rem 2rem;
    border-top: 1px solid #ddd3cf;
}
.reviews-title {
    margin: 0 0 2rem;
    font-size: 1.5rem;
    letter-spacing: 0.12em;
    font-weight: 600;
    color: #0f1e34;
    text-transform: uppercase;
}
.reviews-summary {
    display: grid;
    grid-template-columns: 1fr 1.45fr;
    gap: 2.8rem;
    align-items: center;
    margin-left: 18px;
}
.reviews-score-line {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: #8e7b3f;
    margin-bottom: 0.8rem;
}
.reviews-score-line strong {
    font-size: 1.2rem;
    line-height: 1;
    color: #0c0f16;
    font-weight: 600;
}
.reviews-score-line .stars {
    font-size: 2rem;
    letter-spacing: 0.06em;
    margin-right: 13px;
}
.reviews-based {
    font-size: 0.82rem;
    color: #4d5a78;
}
.rating-bars {
    display: grid;
}
.rating-row {
    display: grid;
    grid-template-columns: 30px 259px 34px;
    align-items: center;
    column-gap: 0.65rem;
    font-size: 0.72rem;
    color: #1f2c40;
}
.rating-row .label {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 13px;
}
.rating-row .label span {
    color: #8e7b3f;
    font-size: 20px;
}
.rating-bar {
    height: 7px;
    border-radius: 99px;
    background: #e8e9ec;
    overflow: hidden;
}
.rating-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #959bb0;
}
.reviews-media-shell {
    position: relative;
    align-self: center;
    margin-top: 1.4rem;
    padding: 0 24px;
}
.reviews-media {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    gap: 6px;
    width: 100%;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.reviews-media::-webkit-scrollbar {
    display: none;
}
.reviews-media-nav {
    display: inline-flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    color: #2e2b2a;
    font-size: 20px;
    line-height: 1;
    align-items: center;
    justify-content: center;
    z-index: 2;
    cursor: pointer;
}
.reviews-media-prev {
    left: 0;
}
.reviews-media-next {
    right: 0;
}
span.sort-label b {
    font-size: 13px;
}
.review-media-item {
    position: relative;
    aspect-ratio: 1.25/1;
    overflow: hidden;
    background: #d8d7da;
    width: auto;
    height: auto;
    flex: 0 0 calc((100% - 18px) / 4);
    scroll-snap-align: start;
}
.reviews-media-nav:disabled {
    opacity: 0.35;
    cursor: default;
}
.review-media-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.review-media-item.video::after {
    content: "?";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.58);
    color: #fff;
    font-size: 22px;
    line-height: 52px;
    text-align: center;
}
.reviews-actions {
    margin-top: 2.1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}
.btn-reviews {
    border: 1px solid #b40f2e;
    color: #fff;
    background: #b40f2e;
    border-radius: 3px;
    font-size: 0.95rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 600;
    padding: 0.72rem 1.25rem;
    min-width: 180px;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 0.45rem;
}
.btn-reviews svg {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    stroke: currentColor;
    fill: none;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.reviews-count {
    margin-top: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #4d5a78;
    font-size: 0.9rem;
    border-bottom: 1px solid #817a79;
    padding-bottom: 0.7rem;
}
.reviews-count .sort-label {
    display: inline-flex;
    align-items: center;
    gap: 2rem;
    color: #121622;
}
.reviews-count .sort-label b {
    letter-spacing: 0.08em;
}
.sort-select-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.sort-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0;
    background: transparent;
    color: #121622;
    font: inherit;
    font-size: 1em;
    line-height: 1;
    padding: 0 1rem 0 0;
    cursor: pointer;
}
.sort-select:focus {
    outline: none;
    box-shadow: none;
}
.sort-select-wrap::after {
    content: "?";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75em;
    pointer-events: none;
    color: #121622;
}
.review-card {
    padding: 1.7rem 0;
    border-bottom: 1px solid #d6d0ce;
}
.review-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}
.review-user {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
}
.review-avatar {
    width: 39px;
    height: 39px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #d7d9df;
    color: #1f2c40;
    font-weight: 600;
    font-size: 0.8rem;
}
.review-name {
    font-size: 0.9rem;
    color: #0c0f16;
    font-weight: 600;
}
.review-name-wrap {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}
.review-verified {
    font-size: 0.95rem;
    color: #0b7d8a;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 0.32rem;
}
.review-verified .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0b7d8a;
    display: inline-block;
}
.review-date {
    color: #5b6b8b;
    font-size: 0.95rem;
}
.review-stars {
    color: #8e7b3f;
    font-size: 1.7rem;
    line-height: 41px;
    margin-bottom: 0.7rem;
}
.review-title {
    font-size: 0.9rem;
    margin: 0 0 0.5rem;
    color: #101526;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
}
.review-body {
    margin: 0.2rem 0 0;
    font-size: 0.85rem;
    color: #1b2231;
    line-height: 22px;
    max-width: 98%;
}
.review-help-row {
    margin-top: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.95rem;
    color: #2a3142;
    font-size: 0.75rem;
}
.review-help-row .vote {
    display: inline-flex;
    align-items: center;
    gap: 0.26rem;
    color: #8f8ea1;
    font-size: 0.95rem;
}
.review-help-row .vote svg {
    width: 16px;
    height: 16px;
    fill: #b0afbf;
    display: block;
}
.review-verified-shop {
    display: inline-block;
    margin-top: 0.75rem;
    background: #e7e8eb;
    color: #4c566f;
    border-radius: 6px;
    padding: 0.28rem 0.55rem;
    font-size: 0.7rem;
    font-weight: 600;
}
.right-panel .d-flex.align-items-center.mt-2 {
    justify-content: center;
    margin-top: 1.3rem !important;
}
.right-panel .sale-pr-info.ms-3 {
    margin-left: 0.8rem !important;
}
#variantRadios::before {
    content: "SELECT SIZE:";
    width: 100%;
    text-align: center;
    font-size: 0.8rem;
    letter-spacing: 0.07em;
    color: #3f3b3b;
    margin-bottom: 0.45rem;
}
@media (max-width: 1200px) {
    .right-panel {
        padding: 2rem 1.8rem 1.5rem;
    }
    .right-panel .product__title h1 {
        font-size: 2.8rem;
    }
    .price-large {
        font-size: 2.2rem;
    }
}
@media (max-width: 768px) {
    .container-custom {
        padding: 0;
    }
    .row.g-0 {
        margin: 0;
    }
    .product__media-wrapper {
        width: 100%;
        position: static;
        height: 505px;
    }
    .er-media {
        display: flex;
        flex-direction: column;
    }
    .er-hero {
        order: 1;
        min-height: 77vh;
        height: 62vh;
    }
    .er-hero-img.is-bottle {
    }
    .er-badge {
        top: 51px;
        right: 14px;
        font-size: 10px;
        padding: 7px 12px;
    }
    .er-thumb-rail {
        display: none;
    }
    .er-thumb-slider-wrap {
        display: none;
    }
    .er-arrow {
        display: flex;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 28px;
        border: none;
        background: transparent;
        color: rgba(255, 255, 255, 0.9);
        font-size: 28px;
        line-height: 1;
        align-items: center;
        justify-content: center;
        z-index: 4;
        box-shadow: none;
        cursor: pointer;
    }
    .er-prev {
        left: 6px;
    }
    .er-next {
        right: 6px;
    }
    .er-mobile-dots {
        display: flex;
        position: absolute;
        left: 50%;
        bottom: 14px;
        transform: translateX(-50%);
        gap: 8px;
        z-index: 4;
    }
    .er-mobile-dot {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        border: none;
        background: rgba(80, 76, 78, 0.28);
        padding: 0;
        cursor: pointer;
    }
    .er-mobile-dot.active {
        background: #6f6b70;
    }
    .right-panel {
        padding: 1.25rem 1rem 1.4rem;
    }
    .right-panel>* {
        max-width: 100%;
    }
    .right-panel .product__title h1 {
        font-size: 17px;
        margin: 1.25rem 0 0.8rem;
        letter-spacing: 0.04em;
    }
    .right-panel .d-flex.align-items-center {
        font-size: 15px !important;
        flex-wrap: wrap;
        row-gap: 6px;
    }
    .right-panel .meta-label-custom h3 {
        font-size: 0.78rem !important;
    }
    .right-panel .product__description p {
        font-size: 0.9rem;
        max-width: 100%;
    }
    .product-perks-custom {
        gap: 0.35rem 0.7rem;
        margin: 1.2rem 0 1.2rem;
    }
    .perk-style-pdp {
        font-size: 0.68rem;
    }
    #variantRadios::before {
        font-size: 0.72rem;
    }
    .variant-radios {
        gap: 0.5rem;
        margin-bottom: 1rem;
    }
    .variant-label {
        min-width: 78px;
        font-size: 0.82rem;
        padding: 0.42rem 0.72rem;
    }
    .button-block-with-price {
        max-width: 77%;
    }
    .product-form__submit {
        font-size: 10px;
        padding: 0.9rem 1rem;
    }
    .priceBlock-in-BTN {
        min-width: 84px;
        font-size: 1rem;
    }
    .afterpay-paragraph {
        font-size: 15px;
        line-height: 1.45;
        margin-top: 0.8rem;
        text-align: center;
    }
    .travel-case-card {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        padding: 1rem;
        margin-top: 0.9rem;
    }
    .travel-case-media {
        justify-content: flex-start;
    }
    .travel-case-cta {
        width: 100%;
    }
    .travel-case-cta button {
        min-width: 0;
        flex: 1;
        font-size: 8px;
    }
    .travel-case-cta span {
        min-width: 90px;
    }
    .product-meta-custom-accordion {
        margin-top: 1.2rem;
    }
    .accordionLabel-type {
        font-size: 0.8rem;
    }
    .reviews-section {
        padding: 1.5rem 1rem;
    }
    .reviews-title {
        font-size: 1.45rem;
        margin-bottom: 1.2rem;
    }
    .reviews-summary {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .reviews-score-line strong {
        font-size: 2rem;
    }
    .reviews-score-line .stars {
        font-size: 1.35rem;
    }
    .reviews-media {
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        gap: 4px;
        margin: 0;
        padding: 0 2px;
    }
    .reviews-media::-webkit-scrollbar {
        display: none;
    }
    .review-media-item {
        flex: 0 0 48%;
        scroll-snap-align: start;
    }
    .reviews-media-nav {
        display: inline-flex;
    }
    .reviews-actions {
        flex-direction: column;
        align-items: stretch;
    }
    .btn-reviews {
        width: 100%;
        min-width: 0;
    }
    .reviews-count {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.6rem;
    }
    .review-title,
    .review-body {
        font-size: 1.2rem;
    }
    .btn-reviews {
        font-size: 0.6rem;
    }
    span.review-avatar {
        font-size: 12px;
    }
    span.review-name {
        font-size: 11px;
    }
    .review-stars {
        font-size: 28px;
    }
    .reviews-count {
        font-size: 10px;
    }
    span.review-date {
        font-size: 10px;
    }
    h3.review-title {
        font-size: 11px;
    }
    p.review-body {
        font-size: 10px;
    }
    span.review-verified-shop {
        font-size: 8px;
    }
    .review-help-row {
        font-size: 10px;
    }
    span.review-verified {
        font-size: 10px;
    }
    span.review-verified-shop {
        font-size: 8px;
        margin: 0 56px 0 0px;
    }
    .reviews-based {
        font-size: 11px;
    }
    /* Remove gray blank gap between hero and right panel on mobile */
    .product__media-wrapper {
        height: auto !important;
        min-height: 0 !important;
    }
    .er-media {
        height: auto !important;
    }
    .er-hero {
        min-height: 62vh !important;
        height: 62vh !important;
        margin-bottom: 0 !important;
    }
}
@media (max-width: 480px) {
    .reviews-section {
        padding: 1.2rem 0.75rem;
    }
    .reviews-title {
        font-size: 0.95rem;
        letter-spacing: 0.12em;
        text-align: center;
        margin-bottom: 1rem;
    }
    .reviews-score-line {
        justify-content: center;
        gap: 0.6rem;
        margin-bottom: 0.45rem;
    }
    .reviews-score-line strong {
        font-size: 0.75rem;
    }
    .reviews-score-line .stars {
        font-size: 0.82rem;
    }
    .rating-row {
        grid-template-columns: 18px 1fr 26px;
        column-gap: 0.9rem;
    }
    .rating-bar {
        height: 7px;
    }
    .reviews-media {
        gap: 3px;
        margin-top: 0.65rem;
    }
    .review-media-item {
        flex-basis: 62%;
    }
    .review-media-item.video::after {
        width: 34px;
        height: 34px;
        font-size: 14px;
        line-height: 34px;
    }
    .reviews-actions {
        margin-top: 1rem;
        gap: 0.5rem;
    }
    .btn-reviews {
        padding: 0.45rem 0.55rem;
        border-radius: 2px;
        min-width: 0;
    }
    .btn-reviews svg {
        width: 10px;
        height: 10px;
        flex-basis: 10px;
    }
    .reviews-count {
        margin-top: 1.1rem;
        padding-bottom: 0.5rem;
    }
    .reviews-count .sort-label {
        width: 100%;
        justify-content: space-between;
        gap: 0.4rem;
    }
    .review-card {
        padding: 1rem 0;
    }
    .review-avatar {
        width: 34px;
        height: 34px;
        font-size: 0.35rem;
    }
    .review-name {
        font-size: 0.4rem;
    }
    .review-verified {
        font-size: 0.32rem;
    }
    .review-date {
        font-size: 0.35rem;
    }
    .review-stars {
        font-size: 0.75rem;
        margin-bottom: 0.3rem;
    }
    .review-title {
        font-size: 0.48rem;
        margin-bottom: 0.25rem;
    }
    .review-body {
        font-size: 0.38rem;
        line-height: 1.5;
    }
    .review-verified-shop {
        font-size: 0.28rem;
        padding: 0.2rem 0.38rem;
    }
    .review-help-row {
        margin-top: 0.55rem;
        justify-content: flex-start;
        gap: 0.55rem;
        flex-wrap: wrap;
    }
    .review-help-row .vote {
        font-size: 0.35rem;
    }
    .review-help-row .vote svg {
        width: 11px;
        height: 11px;
    }
}
@media (max-width: 360px) {
    .reviews-title {
        font-size: 0.86rem;
    }
    .reviews-score-line strong {
        font-size: 0.68rem;
    }
    .reviews-score-line .stars {
        font-size: 0.74rem;
    }
    .reviews-media {
        gap: 3px;
    }
    .review-media-item {
        flex-basis: 74%;
    }
}
@media (max-width: 300px) {
    .reviews-section {
        padding: 1rem 0.5rem;
    }
    .reviews-title {
        font-size: 18px;
    }
    .rating-row {
        grid-template-columns: 16px 1fr 22px;
        font-size: 0.24rem;
    }
    .review-media-item {
        flex-basis: 82%;
    }
    .rating-bar {
        height: 6px;
    }
    .btn-reviews {
        font-size: 0.52rem;
        padding: 0.4rem 0.45rem;
    }
    .review-body {
        font-size: 0.34rem;
    }
}
.product__title h1 {
    font-size: 2.5rem;
}
:root {
    --bar-bg: #9d4a41;
    --text-light: #f6f2ea;
    --dot: #a3a75e;
}
body {
    margin: 0;
    background: #000;
    font-family: "Times New Roman", Georgia, serif;
}
.notes-benefits-bar {
    background: var(--bar-bg);
    color: var(--text-light);
    padding: 1rem 0;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: clamp(0.62rem, 1.05vw, 0.95rem);
    position: relative;
    z-index: 5;
    line-height: 56px;
}
.notes-benefits {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.7rem 1.1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.notes-benefits li {
    display: inline-flex;
    align-items: center;
    color: var(--text-light);
    white-space: nowrap;
}
.notes-benefits li::before {
    content: "";
    width: 6px;
    height: 6px;
    margin-right: 1rem;
    border-radius: 50%;
    background: var(--dot);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18), 0 0 6px rgba(163, 167, 94, 0.5);
    flex-shrink: 0;
}
.notes-hero {
    position: relative;
    min-height: calc(100vh - 72px);
    overflow: hidden;
    isolation: isolate;
    background-image: url("");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.notes-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg,
        rgba(15, 8, 4, 0.54) 10%,
        rgba(22, 13, 6, 0.3) 42%,
        rgba(18, 12, 7, 0.22) 70%,
        rgba(12, 9, 5, 0.48) 100%);
    z-index: -1;
}
.notes-hero .container-fluid {
    min-height: inherit;
}
.notes-title {
    position: absolute;
    left: 54%;
    top: 17%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 700;
    font-size: 50px;
    text-align: center;
    margin: 0;
    text-shadow: 0 6px 24px rgba(0, 0, 0, 0.45);
}
.note-item {
    position: absolute;
    color: #fff;
    max-width: min(470px, 32vw);
    text-shadow: 0 3px 14px rgba(0, 0, 0, 0.45);
}
.note-item h3 {
    margin: 0 0 0.35rem;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-size: clamp(1.15rem, 1.55vw, 2rem);
}
.note-item p {
    margin: 0;
    font-family: Arial, sans-serif;
    font-weight: 400;
    line-height: 1.34;
    font-size: 13px;
}
.note-lychee {
    left: 16.5%;
    top: 73%;
    transform: translate(-50%, -50%);
    text-align: center;
    max-width: min(440px, 29vw);
}
.note-vetiver {
    left: 82.5%;
    top: 45%;
    transform: translate(-50%, -50%);
    text-align: center;
    max-width: min(430px, 28vw);
}
.note-papyrus {
    left: 79%;
    top: 87%;
    transform: translate(-50%, -50%);
    text-align: left;
    max-width: min(560px, 36vw);
}
@media (max-width: 991.98px) {
    .notes-hero {
        min-height: 90vh;
    }
    .notes-title {
        position: static;
        transform: none;
        margin-top: 2.1rem;
    }
    .note-item {
        position: static;
        max-width: 680px;
        margin: 1.1rem auto 0;
        text-align: center !important;
        padding-inline: 1rem;
        transform: none;
    }
}
@media (max-width: 575.98px) {
    .notes-benefits-bar {
        padding: 0.7rem 0;
    }
    .notes-benefits {
        gap: 0.5rem 0.85rem;
    }
    .notes-benefits li::before {
        margin-right: 0.7rem;
    }
    .nourish-shake {
        left: 1rem;
        bottom: 0.5rem;
    }
    .notes-hero {
        min-height: 88vh;
    }
}
.bella-inspiration {
    background: #e6dddd;
    padding: clamp(2.8rem, 5.8vw, 5.3rem) 1rem;
}
.bella-inspiration-wrap {
    max-width: 1340px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(290px, 0.95fr) minmax(360px, 1.18fr);
    align-items: center;
    gap: clamp(1.4rem, 3vw, 3.7rem);
}
.bella-inspiration-copy {
    text-align: center;
    color: #1a2338;
    padding: 0 0.4rem;
}
.bella-inspiration-copy h2 {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-size: clamp(1.2rem, 1.5vw, 2rem);
    font-weight: 500;
    line-height: 1.1;
}
.bella-inspiration-quote {
    margin: clamp(1.5rem, 2.9vw, 2.6rem) auto 0;
    width: 100%;
    max-width: 270px;
    height: auto;
    display: block;
}
.bella-signature {
    margin-top: clamp(1.4rem, 2.4vw, 2.2rem);
    font-family: "Segoe Script", "Brush Script MT", cursive;
    font-size: 22px;
    line-height: 1;
    color: #171717;
}
.bella-video-shell {
    position: relative;
    width: min(84%, 900px);
    margin-inline: auto;
    aspect-ratio: 1.42 / 1;
    border-radius: 12% 17% 14% 16% / 11% 16% 13% 18%;
    overflow: hidden;
    border: 2px solid #9b7a2d;
    box-shadow: inset 0 0 0 1px rgba(255, 240, 190, 0.36);
    background: #b7aba6;
}
h1.notes-title span {
    margin-left: 256px;
}
.bella-video-shell video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.bella-video-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(112, 84, 28, 0.35);
}
.magnet-section {
    background: #e7dedd;
    padding: clamp(1.6rem, 3vw, 2.2rem) 0 0;
}
.magnet-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: clamp(520px, 45vw, 760px);
    background: #e7dedd;
}
.magnet-copy {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
    padding: clamp(1.6rem, 3.2vw, 3.5rem) 1.2rem 1.4rem;
    color: #111d35;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.magnet-copy-inner {
    width: min(100%, 760px);
    margin-top: 110px;
}
.magnet-title {
    margin: 0;
    font-size: 19px;
    line-height: 1.1;
    font-weight: 500;
}
.magnet-poem {
    margin: clamp(2rem, 3.2vw, 3rem) 0 0;
    font-size: 19px;
    line-height: 1.3;
    white-space: pre-line;
}
.magnet-video-wrap {
    position: relative;
    height: clamp(520px, 56vw, 760px);
    background: #000;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.magnet-video-top {
    height: calc(100% - 120px);
    min-height: 0;
    overflow: hidden;
}
.magnet-video-top video {
    width: 100%;
    height: 88%;
    object-fit: cover;
    display: block;
}
.magnet-video-bottom {
    flex: 0 0 120px;
    height: 120px;
    min-height: 120px;
    max-height: 120px;
    background: #000;
}
.nourish-section {
    background: #a0483e;
    color: #faeeea;
    padding: clamp(2rem, 4vw, 3.2rem) 0 clamp(2.8rem, 5vw, 4.2rem);
    position: relative;
}
.nourish-wrap {
    width: min(100%, 1500px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(300px, 1fr) minmax(340px, 1.05fr);
    align-items: center;
    gap: clamp(1.5rem, 3vw, 3.8rem);
    padding: 0 clamp(1rem, 3vw, 2.8rem);
}
.nourish-video-box {
    width: min(100%, 700px);
    margin: 0 auto;
    aspect-ratio: 0.82 / 1;
    overflow: hidden;
    background: #a0483e;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nourish-video-box video {
    width: 73%;
    height: 73%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.nourish-content {
    text-align: center;
    max-width: 527px;
    margin: 0 auto;
    padding: 0.3rem 0.4rem 0;
}
.nourish-label {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 24px;
    font-weight: 400;
}
.nourish-title {
    margin: clamp(0.95rem, 1.8vw, 1.5rem) 0 0;
    text-transform: uppercase;
    letter-spacing: 0.13em;
    font-size: 29px;
    line-height: 1.04;
    font-weight: 600;
}
.nourish-body {
    margin: clamp(1.3rem, 2.2vw, 2rem) auto 0;
    max-width: 690px;
    font-family: Arial, sans-serif;
    font-size: clamp(1rem, 1.2vw, 2rem);
    line-height: 1.4;
}
.nourish-subtitle {
    margin: clamp(2rem, 3.5vw, 3.3rem) 0 0;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 29px;
    line-height: 1.04;
    font-weight: 600;
}
.nourish-block-title {
    margin: clamp(1.1rem, 2.2vw, 2rem) 0 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 14px;
    font-weight: 700;
}
.nourish-copy {
    margin: 0 auto;
    max-width: 760px;
    font-family: Arial, sans-serif;
    font-size: clamp(1rem, 1.1vw, 1.7rem);
    line-height: 1.45;
}
.nourish-plus {
    margin: clamp(0.8rem, 1.3vw, 1.2rem) 0;
    font-size: clamp(2.1rem, 2.5vw, 3.2rem);
    line-height: 1;
    font-weight: 600;
}
.nourish-shake {
    position: absolute;
    left: clamp(1rem, 2vw, 2rem);
    bottom: clamp(0.7rem, 1.6vw, 1.6rem);
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: clamp(2rem, 2.8vw, 3.6rem);
    line-height: 1;
    color: #faeeea;
    pointer-events: none;
}
@media (max-width: 991.98px) {
    .bella-inspiration-wrap {
        grid-template-columns: 1fr;
    }
    .bella-inspiration-copy {
        order: 2;
    }
    .bella-inspiration-video-wrap {
        order: 1;
    }
    .bella-video-shell {
        width: min(100%, 760px);
    }
    .magnet-wrap {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    .magnet-copy {
        order: 2;
        padding: 2rem 1rem 2.2rem;
    }
    .magnet-video-wrap {
        order: 1;
        height: 420px;
    }
    .magnet-video-top {
        height: calc(100% - 120px);
        min-height: 0;
    }
    .nourish-wrap {
        grid-template-columns: 1fr;
    }
    .nourish-video-box {
        width: min(100%, 620px);
    }
    .nourish-content {
        padding-bottom: 2.1rem;
    }
    .nourish-shake {
        left: 1rem;
        bottom: 0.5rem;
    }
}
@media (max-width: 767.98px) {
    h1.notes-title span {
        display: block;
        margin-left: 0;
    }
    .notes-title {
        font-size: clamp(2rem, 10vw, 3rem);
    }
    .bella-video-shell {
        width: min(100%, 540px);
    }
    .magnet-copy-inner {
        margin-top: 0;
    }
    .magnet-title {
        font-size: 1.1rem;
    }
    .magnet-poem {
        font-size: 1rem;
        line-height: 1.22;
    }
    .magnet-video-wrap {
        height: 360px;
    }
    .magnet-video-bottom {
        display: none;
    }
    .magnet-video-top {
        height: 100%;
    }
    .magnet-video-top video {
        height: 100%;
    }
    .nourish-wrap {
        padding: 0 0.9rem;
        gap: 1.2rem;
    }
    .nourish-video-box {
        width: min(100%, 520px);
    }
    .nourish-video-box video {
        width: 100%;
        height: 100%;
    }
    .nourish-content {
        max-width: 100%;
    }
    .nourish-label {
        font-size: 0.6rem;
    }
    .nourish-title, .nourish-subtitle {
        font-size: 0.9rem;
    }
    .nourish-body,
    .nourish-copy {
        font-size: 1rem;
    }
    .container-fluid.h-100.position-relative {
        display: flex;
        flex-direction: column;
        gap: 29px;
    }
    .bella-inspiration-copy h2 {
        font-size: 11px;
    }
    img.bella-inspiration-quote {
        width: 79%;
    }
}
@media (max-width: 479.98px) {
    .notes-benefits {
        justify-content: center;
        line-height: 9px;
    }
    .notes-benefits li {
        font-size: 0.64rem;
    }
}
/* add to cart page css */
:root {
    --brand-maroon: #f4f4f1;
    --brand-white: #ffffff;
}
.cart-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1040;
    display: none;
    backdrop-filter: blur(2px);
}
.cart-overlay.active {
    display: block;
}
.cart-drawer {
    position: fixed;
    top: 0;
    right: -100%;
    height: 100%;
    background-color: var(--brand-maroon);
    color: var(--brand-white);
    z-index: 1050;
    transition: right 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    overflow-y: auto;
}
@media (min-width: 769px) {
    .cart-drawer {
        width: 420px;
    }
}
@media (max-width: 768px) {
    .cart-drawer {
        width: 100%;
    }
}
.cart-drawer.active {
    right: 0;
}
.cart-header {
    padding: 15px 20px;
    position: relative;
}
.cart-title {
    font-size: 23px;
    font-weight: 600;
    margin: 0;
    text-transform: capitalize;
}
.close-btn {
    position: absolute;
    right: 40px;
    top: 31px;
    background: none;
    border: none;
    width: 0;
    height: 0;
    padding: 0;
    cursor: pointer;
}
.close-btn::before,
.close-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 21px;
    height: 1.6px;
    background: #fff;
    transform-origin: center;
}
.close-btn::before {
    transform: translate(-50%, -50%) rotate(45deg);
}
.close-btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.free-ship-bar {
    padding: 10px;
    font-size: 16px;
    text-align: center;
    letter-spacing: 0.3px;
}
.cart-content {
    padding: 20px;
}
.cart-product {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgb(32 27 27 / 23%);
    margin-bottom: 25px;
}
.product-img {
    width: 120px;
    height: 84px;
    object-fit: contain;
    border-radius: 0;
    margin-top: 2px;
}
.product-name-link {
    display: inline-block;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    line-height: 1.25;
    margin-bottom: 8px;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s ease;
}
.product-name-link:hover {
    color: #fff;
    border-bottom-color: #fff;
}
.total-box span{
    color:#000; 
}
.product-price {
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 7px;color:#000;
}
.product-size {
    font-size: 14px;
    line-height: 1.2;
    opacity: 0.95;color:#000;
    cursor: pointer;
}
.qty-control {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-top: -21px;
    font-size: 18px;
    margin-left: 113px;
}
.qty-btn {
    cursor: pointer;
    opacity: 0.8;
    transition: 0.2s;
    line-height: 1;
    color:#000;
}
.qty-btn:hover {
    opacity: 1;
    color:#959581;
}
.qty-count {
    font-size: 14px;
    color:#000;
}
.qty-trash {
    font-size: 19px;
    margin-left: 22px;
    color:#000;
    cursor: pointer;
    padding: 5px;
}
.upsell-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.upsell-title-head {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}
.upsell-nav {
    display: flex;
    align-items: center;
    gap: 6px;
}
.upsell-arrow {
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: #111;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
}
.upsell-slider {
    overflow: hidden;
}
.upsell-track {
    display: flex;
    transition: transform 0.28s ease;
}
.upsell-slide {
    min-width: 100%;
}
.upsell-item {
    background: white;
    color: #1a1a1a;
    border-radius: 8px;
    padding: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}
.upsell-item img {
    width: 45px;
    height: 45px;
    object-fit: cover;
    border-radius: 4px;
}
.upsell-info {
    flex: 1;
}
.upsell-name {
    font-size: 0.8rem;
    /* font-weight: 700; */
    text-transform: uppercase;
    margin: 0;
    color: #f4f4f1;
}
.upsell-price {
    font-size: 13px;
    font-weight: 500;
}
.add-btn {
    background: var(--brand-maroon);
    color: white;
    border: none;
    padding: 6px 15px;
    border-radius: 4px;
    font-size: 0.85rem;
    font-weight: 600;
}
.cart-footer {
    padding: 20px;
    background: var(--brand-maroon);
}
.total-box {
    display: flex;
    justify-content: space-between;
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 5px;
}
.tax-text {
    font-size: 12px;
    /* opacity: 0.8; */
    margin-bottom: 20px;
    line-height: 1.3;
    color: #000;
}
.checkout-btn {
    width: 100%;
    padding: 11px;
    background: #959581 ;
    color: black;
    border: 1px solid white;
    font-weight: 600;
    letter-spacing: 1.5px;
    transition: all 0.3s;
    font-size: 14px;
}
.checkout-btn:hover {
    background: #000;
    color:#fff;
}
@media (max-width: 480px) {
    .cart-product {
        gap: 12px;
    }
    .free-ship-bar {
        font-size: 16px;
    }
    .upsell-title-head {
        font-size: 15px;
    }
    .product-img {
        width: 72px;
        height: 72px;
    }
    .product-name-link {
        font-size: 15px;
        margin-bottom: 5px;
    }
    .product-price {
        font-size: 14px;
        margin-bottom: 5px;
    }
    .product-size {
        font-size: 14px;
    }
    .qty-control {
        font-size: 14px;
        gap: 13px;
        margin-left: 95px;
    }
    .qty-count {
        font-size: 13px;
    }
    .qty-trash {
        font-size: 17px;
        margin-left: 14px;
    }
    .cart-checkout-btn{
        width: 100% !important;
        margin-left: 0px !important;
    }
    .upsell-arrow {
        width: 28px;
        height: 28px;
        font-size: 22px;
    }
    .upsell-price {
        font-size: 12px;
    }
    .add-btn {
        background: var(--brand-maroon);
        color: white;
        border: none;
        padding: 3px 15px;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 600;
    }
    .total-box {
        font-size: 15px;color:#000;
    }
    .tax-text {
        font-size: 11px;
    }
    .checkout-btn {
        padding: 8px;
        font-size: 12px;
    }
    .upsell-name {
        font-size: 11px !important;
    }
    .cart-title {
        font-size: 21px;
    }
}
/* cart page css */
.container-custom {
    margin: 0 auto;
    margin-top: 81px;
}
/* TYPOGRAPHY & SPACING � exact match from the screenshot + source */
.cart-main-title {
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 0.02em;
    color: #000;
    margin: 0 0 1.8rem 0;
    line-height: 1.2;
}
.continue-shopping-link {
    font-size: 1.6rem;
    color: #3d3b3c;
    text-decoration: underline;
    display: inline-block;
    margin-bottom: 2rem;
}
/* cart item rows (table-like but flex) */
.cart-item-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 1.5rem 0;
    border-bottom: 1px solid #aeadad;
    margin: 0;
}
.cart-item-image-col {
    flex: 0 0 140px;
    max-width: 140px;
    padding-right: 1.2rem;
}
.cart-item-details-col {
    flex: 1 1 250px;
    padding-right: 1rem;
}
.cart-item-qty-col {
    flex: 0 0 180px;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
}
.cart-item-total-col {
    flex: 0 0 100px;
    text-align: right;
    font-weight: 400;
    font-size: 1rem;
}
/* product image */
.cart-img {
    width: 120px;
    height: 140px;
    object-fit: contain;
    background: #fafafa;
    border-radius: 0;
    display: block;
}
.product-name {
    font-size: 1rem;
    font-weight: 500;
    color: #000;
    margin-bottom: 0.2rem;
    letter-spacing: 0.01em;
}
.product-meta {
    font-size: 0.875rem;
    color: #666;
    margin-bottom: 0.25rem;
}
.price {
    font-size: 1rem;
    color: #121212;
    font-weight: 400;
}
.compare-price {
    font-size: 1rem;
    color: #999;
    text-decoration: line-through;
    margin-left: 0.5rem;
}
/* quantity control (exact from Raudha) */
.quantity-control {
    display: inline-flex;
    align-items: center;
    border: 1px solid #d0d0d0;
    border-radius: 3px;
    background: #fff;
    height: 38px;
}
.quantity-control button {
    background: transparent;
    border: none;
    width: 36px;
    height: 36px;
    font-size: 1.2rem;
    font-weight: 300;
    color: #2d2d2d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
    transition: 0.1s;
}
.quantity-control button:hover { background: #f5f5f5; }
.quantity-control input {
    width: 48px;
    height: 36px;
    border: none;
    border-left: 1px solid #d0d0d0;
    border-right: 1px solid #d0d0d0;
    text-align: center;
    font-size: 0.95rem;
    font-weight: 400;
    color: #121212;
    background: #fff;
    padding: 0;
}
.remove-link {
    background: none;
    border: none;
    color: #888;
    font-size: 0.85rem;
    text-decoration: underline;
    padding: 0.3rem 0.5rem;
    cursor: pointer;
    transition: color 0.1s;
}
.remove-link:hover { color: #f4f4f1; }
/* UPSELL block � exact red border & spacing */
.upsell-wrapper {
    background: #ffffff00;
    margin-top: 2.5rem;
    padding: 1.25rem 0 0.5rem;
}
.upsell-title {
    font-size: 1rem;
    font-weight: 600;
    color: #000;
    letter-spacing: 0.02em;
    margin-bottom: 1.2rem;
}
.upsell-card {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 1px solid #f4f4f1;
    border-radius: 8px;
    padding: 0.9rem 1rem;
    max-width: 420px;
    box-shadow: none;
}
.upsell-card-img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    margin-right: 1rem;
}
.upsell-card-info {
    flex: 1;
}
.upsell-card-info .product-name {
    font-size: 0.9rem;
    font-weight: 500;
    color: #f4f4f1;
    margin-bottom: 0.15rem;
    text-transform: uppercase;
}
.upsell-price {
    font-size: 0.9rem;
    color: #121212;
    font-weight: 400;
}
.upsell-add-btn {
    background: #f4f4f1;
    border: none;
    border-radius: 4px;
    color: #fff;
    font-size: 0.85rem;
    font-weight: 500;
    padding: 0.6rem 1.5rem;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: 0.1s;
    white-space: nowrap;
}
.upsell-add-btn:hover { background: #8a1526; }
/* totals & checkout */
.cart-totals {
    width: 100%;
    max-width: 520px;
    margin: 2rem 0 2.5rem auto;
    text-align: right;
    border-top: 0;
    padding-top: 0;
}
.total-top-row {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 51px;
}
.total-label {
    font-size: 0.9rem;
    font-weight: 400;
    color: #000;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.total-amount {
    font-size: 1.4rem;
    font-weight: 100;
    color: #797575;
    line-height: 1.2;
    margin: 0;
}
.tax-note {
    font-size: 0.85rem;
    color: #777;
    margin: 0.8rem 0 2rem;
    line-height: 1.3;
}
.cart-checkout-btn {
    background: #f4f4f1;
    border: none;
    border-radius: 4px;
    padding: 1rem;
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    cursor: pointer;
    transition: 0.1s;
    display: block;
    width: 88%;
    border: 0;
    text-transform: uppercase;
    height: 54px;
    margin-left: 64px;
}
.cart-checkout-btn:hover { background: #8a1526; }
.cart-express-row {
    display: flex;
    gap: 1.2rem;
    margin-top: 1.6rem;
    justify-content: flex-end;
}
.cart-express-btn {
    width: 137px;
    height: 53px;
    border: 0;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #fff;
    text-decoration: none;
}
.cart-express-shop {
    background: linear-gradient(90deg, #5f3bff, #4e33d9);
}
.cart-express-paypal {
    background: #ffc439;
    color: #003087;
    font-weight: 700;
    font-style: italic;
}
.cart-express-gpay {
    background: #000;
    font-weight: 500;
}
/* UNIVERSE BLOCK */
.cart-universe-block {
    text-align: center;
    margin: 10rem 0 6rem;
}
.cart-universe-title {
    font-size: 2.8rem;
    font-weight: 400;
    letter-spacing: 0.08em;
    color: #211b1f;
    margin-bottom: 2.4rem;
    text-transform: uppercase;
    font-family: "copperplate", "copperplate-light", serif;
}
.cart-social-circle {
    display: flex;
    justify-content: center;
    gap: 2.8rem;
    margin-bottom: 0;
}
.cart-social-circle a {
    color: #000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    text-decoration: none;
}
.mobile-brand-block {
    display: none;
}
/* FOOTER LINKS � exactly as in the spec */
.footer-links-section {
    border-top: 1px solid #ddd;
    padding-top: 2.8rem;
    margin-top: 2rem;
}
.footer-row {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem 3rem;
    margin-bottom: 2.5rem;
}
.footer-col {
    flex: 1 1 160px;
}
.footer-col h4 {
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #000;
    margin-bottom: 1.2rem;
    text-transform: uppercase;
}
.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-col li {
    margin-bottom: 0.7rem;
    font-size: 0.8rem;
}
.footer-col a {
    color: #444;
    text-decoration: none;
    font-weight: 400;
}
.footer-col a:hover { color: #f4f4f1; }
.copyright-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 0 2rem;
    font-size: 0.7rem;
    color: #777;
    border-top: 1px solid #eee;
}
.copyright-links {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
}
.copyright-links a, .copyright-links span {
    color: #777;
    text-decoration: none;
    cursor: pointer;
}
.copyright-links a:hover { color: #f4f4f1; }
/* mobile responsiveness */
@media (max-width: 767px) {
    .container-custom {
        padding: 1.6rem 1rem 1rem;
    }
    .cart-main-title {
        font-size: 1.8rem;
        margin-bottom: 1rem;
    }
    .continue-shopping-link {
        font-size: 1rem;
        margin-bottom: 2.2rem;
    }
    .cart-item-row {
        flex-direction: row;
        align-items: flex-start;
        gap: 1.2rem;
        padding: 1.6rem 0;
    }
    .cart-item-image-col {
        flex: 0 0 86px;
        max-width: 86px;
        padding-right: 0;
    }
    .cart-img {
        width: 74px;
        height: 74px;
    }
    .cart-item-details-col {
        width: calc(100% - 100px);
        padding-right: 0;
    }
    .product-name {
        font-size: 1.05rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }
    .product-meta {
        font-size: 0.95rem;
        margin-top: 0.6rem;
    }
    .price,
    .compare-price {
        font-size: 1rem;
    }
    .upsell-title {
        font-size: 1.2rem;
        color: #e8dfde;
    }
    .upsell-card {
        max-width: 100%;
        min-height: 170px;
        background: #efefef;
        border: 1px solid #f4f4f1;
        align-items: flex-start;
        padding: 1rem;
        position: relative;
    }
    .upsell-card > * {
        opacity: 0.15;
    }
    .cart-totals {
        max-width: 100%;
        margin-left: 0;
        margin-top: 2.4rem;
    }
    .total-top-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
    }
    .total-label { font-size: 1.15rem; }
    .total-amount { font-size: 1.05rem; }
    .tax-note { font-size: 0.92rem; }
    .cart-express-row {
        justify-content: stretch;
        flex-wrap: nowrap;
        flex-direction: column;
        gap: 1.1rem;
    }
    .cart-express-btn {
        width: 100%;
        height: 54px;
        font-size: 1.7rem;
    }
    .cart-express-paypal {
        display: none;
    }
    .cart-universe-block {
        display: none;
    }
    .mobile-brand-block {
        display: block;
        text-align: center;
        margin: 7rem 0 5rem;
    }
    .mobile-brand-handle {
        font-family: "copperplate", "copperplate-light", serif;
        font-size: 2.1rem;
        letter-spacing: 0.06em;
        margin-bottom: 1.2rem;
    }
    .mobile-brand-icons {
        display: flex;
        justify-content: center;
        gap: 1.4rem;
        margin-bottom: 1.8rem;
    }
    .mobile-brand-icons a {
        color: #000;
        font-size: 2.7rem;
        text-decoration: none;
    }
    .mobile-brand-divider {
        font-size: 1.1rem;
        color: #5d5857;
        margin-bottom: 1.8rem;
    }
    .mobile-brand-logo {
        width: 72px;
        height: auto;
        display: block;
        margin: 0 auto 1rem;
    }
    .mobile-brand-reveal {
        font-family: "copperplate", "copperplate-light", serif;
        font-size: 2rem;
        letter-spacing: 0.08em;
        color: #8a6b24;
    }
    .footer-top {
        margin-top: 2.5rem;
    }
    .announcement-bar span {
        font-size: 1rem;
    }
    .navbar .container-fluid {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    .navbar-brand img {
        width: 126px;
    }
    .d-flex.align-items-center.gap-3 .small {
        font-size: 1rem !important;
    }
    .cart-social-circle a {
        font-size: 1.8rem;
    }
}
/* additional fine tuning */
.fw-500 { font-weight: 500; }
.text-red { color: #f4f4f1; }
.bg-soft { background-color: #fff; }
/* product detail page css */
.right-panel {
    padding-top: 92px !important;
}
.right-panel .er-right-top {
    max-width: 620px;
    margin: 0 auto 14px;
    text-align: left;
}
.right-panel .product__title h1 {
    margin: 0 0 34px !important;
    text-align: left !important;
    color: #26252a !important;
    letter-spacing: 0.18em !important;
    font-size: 1.5rem !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    text-transform: uppercase;
}
.er-price-trust-row {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}
.er-price-line {
    font-size: 1.5rem;
    line-height: 1;
    color: #23212a;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.er-trust-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border-radius: 999px;
    padding: 8px 16px;
    background: #f4f3f3;
    color: #3d3b3f;
    font-size: 0.6rem;
    line-height: 1;
    white-space: nowrap;
}
.er-trust-pill .er-stars {
    color: #111;
    letter-spacing: 0.06em;
    font-size: 0.7rem;
    line-height: 1;
}
span#productPrice {
    font-size: 16px;
}
.er-review-row {
    margin: -8px 0 26px;
    color: #54535b;
    font-size: 0.95rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.er-size-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.er-size-title {
    color: #2f2d33;
    font-size: 1rem;
    line-height: 1;
    margin: 0;
    letter-spacing: 0.02em;
    text-transform: capitalize;
}
.er-size-guide {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.7rem;
    color: #242229;
    text-decoration: none;
    border-bottom: 1px solid #242229;
    padding-bottom: 3px;
    line-height: 1;
}
.er-size-guide i {
    font-size: 10px;
}
.right-panel .variant-radios {
    justify-content: flex-start !important;
    gap: 12px !important;
    margin: 0 0 30px !important;
}
.right-panel #variantRadios::before {
    content: none !important;
}
.right-panel .variant-label {
    min-width: 81px !important;
    height: 33px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #c8c8c8 !important;
    border-radius: 0 !important;
    color: #f7f7f7 !important;
    border:solid 1px #f7f7f7;
    font-size: 0.8rem !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    padding: 0 8px !important;
    text-transform: uppercase;
    font-weight: 400 !important;
}
.right-panel .variant-radios input:checked + .variant-label,
.right-panel .variant-label.active {
    background: #2f3034 !important;
    color: #fff !important;
    border-color: #2f3034 !important;
}
.right-panel .variant-label.disabled {
    background: #f2f2f2 !important;
    color: #c4c4c4 !important;
    border-color: #d8d8d8 !important;
}
.er-length-title {
    font-size: 0.9rem;
    line-height: 1.1;
    color: #2e2d31;
    margin: 0 0 16px;
    letter-spacing: 0.01em;
}
.er-length-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 42px;
}
.er-length-btn {
    width: 56px;
    height: 28px;
    border: 1px solid #cacaca;
    border-radius: 0;
    background: #f7f7f7;
    color: #7f7f83;
    font-size: 14px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.er-length-btn.active {
    background: #2f3034;
    border-color: #2f3034;
    color: #fff;
}
.er-qty-title {
    margin: 0 0 12px;
    font-size: 13px;
    letter-spacing: 0.08em;
    color: #1f1f22;
    line-height: 1;
    text-transform: uppercase;
}
.er-qty-stepper {
    width: 129px;
    height: 34px;
    border: 1.5px solid #2d2b2f;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    background: transparent;
    padding: 0 26px;
}
.er-qty-stepper button {
    border: 0;
    background: transparent;
    color: #2a282c;
    font-size: 16px;
    line-height: 1;
    width: 9px;
    padding: 0;
}
.er-qty-stepper span {
    font-size: 14px;
    line-height: 1;
    color: #2a282d;
    min-width: 26px;
    text-align: center;
}
.right-panel .button-block-with-price {
    max-width: 620px;
    margin: 22px auto 0;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: center;
}
.right-panel .product-form__submit {
    border: 1px solid #2d2b2f !important;
    background: transparent !important;
    color: #2d2b2f !important;
    border-radius: 8px !important;
    min-height: 50px;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 400 !important;
    padding: 0 18px !important;
}
.er-gpay-btn {
    border: 0;
    border-radius: 14px;
    min-height: 53px;
    background: #000;
    color: #fff;
    font-size: 15px;
    letter-spacing: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    line-height: 1;
}
.er-gpay-btn .gpay-word {
    font-weight: 500;
}
.er-gpay-btn .g-logo {
    font-weight: 700;
    background: linear-gradient(45deg, #4285f4 0 25%, #ea4335 25% 50%, #fbbc05 50% 75%, #34a853 75% 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin: 0 2px;
}
.afterpay-paragraph {
    max-width: 620px;
    margin: 10px auto 0 !important;
    text-align: right;
    font-size: 10px;
    line-height: 1.2 !important;
}
.afterpay-paragraph a {
    color: #4a474b;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.reviews-score-line .stars,
.rating-row .label span,
.review-stars {
    color: #b08d2f !important;
}
@media (max-width: 768px) {
    .right-panel .er-right-top {
        max-width: 100%;
    }
    .right-panel .product__title h1 {
        font-size: 20px !important;
        margin: 0 0 14px !important;
        letter-spacing: 0.1em !important;
    }
    .er-price-line {
        font-size: 16px;
    }
    .er-trust-pill {
        font-size: 12px;
        padding: 6px 11px;
    }
    .er-trust-pill .er-stars {
        font-size: 12px;
    }
    .er-review-row {
        margin: -6px 0 14px;
        font-size: 12px;
    }
    .er-size-title {
        font-size: 14px;
    }
    .er-size-guide {
        font-size: 12px;
    }
    .er-size-guide i {
        font-size: 12px;
    }
    .right-panel .variant-radios {
        gap: 8px !important;
        margin-bottom: 18px !important;
    }
    .right-panel .variant-label {
        min-width: 66px !important;
        height: 44px;
        font-size: 16px !important;
    }
    .er-length-title {
        font-size: 13px;
        margin-bottom: 10px;
    }
    .er-length-grid {
        gap: 8px;
        margin-bottom: 20px;
    }
    .er-length-btn {
        width: 52px;
        height: 42px;
        font-size: 14px;
    }
    .er-qty-title {
        font-size: 14px;
        margin-bottom: 8px;
    }
    .er-qty-stepper {
        width: 160px;
        height: 46px;
        border-radius: 12px;
        padding: 0 16px;
    }
    .er-qty-stepper button {
        font-size: 28px;
    }
    .er-qty-stepper span {
        font-size: 18px;
    }
    .right-panel .button-block-with-price {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .right-panel .product-form__submit,
    .er-gpay-btn {
        min-height: 50px;
        font-size: 1rem !important;
    }
    .afterpay-paragraph {
        text-align: center;
        font-size: 0.9rem !important;
    }
}
/* account  page css */
:root {
    --bg: #f5eeeb;
    --text: #231f20;
    --serif: "copperplate", "copperplate-light", serif;
    --sans: "neue-haas-grotesk-display", "Helvetica Neue", Arial, sans-serif;
}
* {
    box-sizing: border-box;
}
.account-page {
    padding: 70px 76px 90px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 60px;
    margin-top: 90px;
}
.account-title {
    margin: 0;
    font-family: var(--serif);
    font-size: 28px;
    letter-spacing: 1px;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 600;
}
.logout-link {
    margin-top: 18px;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: var(--text);
    text-decoration: none;
}
.logout-link svg {
    width: 26px;
    height: 26px;
    stroke: var(--text);
    fill: none;
    stroke-width: 1.5;
}
.logout-link em,
.details-link {
    font-style: normal;
    font-size: 16px;
    text-decoration: underline;
    text-underline-offset: 0.16em;
    text-decoration-thickness: 1px;
}
.content-grid {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: start;
    column-gap: clamp(140px, 27vw, 520px);
}
.section-title {
    margin: 0;
    font-family: var(--serif);
    font-size: 21px;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.08;
}
.order-copy,
.details-country {
    margin: 18px 0 0;
    font-size: 15px;
    line-height: 1.28;
    font-weight: 400;
}
.details {
    min-width: 540px;
    justify-self: end;
    text-align: left;
    padding-right: 18px;
}
.details-link {
    display: inline-block;
    margin-top: 30px;
    color: var(--text);
}
@media (max-width: 1024px) {
    .account-page {
        padding: 44px 28px 56px;
        gap: 72px;
    }
    .account-title {
        font-size: 25px;
    }
    .section-title {
        font-size: 20px;
    }
    .order-copy,
    .details-country {
        font-size: 14px;
    }
    .logout-link em,
    .details-link {
        font-size: 16px;
    }
    .content-grid {
        grid-template-columns: 1fr;
        gap: 58px;
    }
    .details {
        min-width: auto;
        justify-self: start;
        padding-right: 0;
    }
    .details-link {
        margin-top: 28px;
    }
    .logout-link {
        margin-top: 22px;
    }
}
/* Global white logo treatment */
img[src*='raudha-logo.png'] {
    filter: brightness(17) invert(1) !important;
}
a.navbar-brand.position-absolute.start-50.translate-middle-x img{
    filter: brightness(0) invert(1) !important;
}
.header_nav_bar *{
    color: #fff !important;
}
.font-size-increased button, .font-size-increased a {
    font-size: 13px !important;
    font-family: 'copperplate';
}
div#megaMenuCollapse {
    position: absolute;
    top: 70px;
    height: 100%;
    background: #f4f4f1 !important;
    width: 100%;
    z-index: 9;
}
div#desktopNav {
    padding-left: 14px;
    padding-right: 14px;
}
.mega_menu_padding {
    padding: 0 43px;
}
.raudha-site-footer a {
    font-size: 14px;
    text-transform: uppercase;
    padding: 4px 0px !important;
    display: block;
    font-family: 'copperplate';
}
footer.raudha-site-footer h6 {
    font-weight: bold !important;
    font-family: 'copperplate';
}
.footer-news-input {background: #fff;border: 1px solid #eee !important;border-radius: 10px;font-family: 'copperplate';overflow: hidden;display: flex;justify-content: space-between;}
.footer-news-input button {
    background: #cfcfcf;
    width: 100px;
    color: #fff;
    padding: 0 !important;
}
.footer-consent label.form-check-label.small {
    font-size: 14px;
    text-transform: capitalize;
    font-size: 13px;
}
div#cartDrawer {
    font-family: "copperplate", "copperplate-light", serif !important;
}
#cartDrawer img.product-img {
    background: #ffffff;
    border-radius: 9px;
    width: 87px;
    height: 86px;
    object-fit: cover;
}
.empty_space_area {
    height: 80px;
}
.border-color-custom {
    border-color: #0000001f !important;
}
.header_nav_bar.is_dark_text_nav * {
    color: #000 !important;
}
.password_parent_field {
    position: relative;
}
.eye_password {
    cursor: pointer;
    position: absolute;
    right: 16px;
    z-index: 9;
    top: 18px;
    fill: #d4d1d1;
}
.custom_input_design {
    font-family: "copperplate", "copperplate-light", serif !important;
    font-weight: 200;
    letter-spacing: 0;
    text-transform: lowercase;
}
.custom_input_design input.form-control {
    padding: 13px 17px;
    color: #000;
}
.custom_input_design input.form-control::placeholder {
    color: #000;
    text-transform: lowercase;
}
.user_account_menu li a {
    display: block;
    color: #000;
    position: relative;
    font-size: 15px;
    padding: 0px 16px;
    border-bottom: 1px solid #f5f6f7;
    text-transform: capitalize;
}
.user_account_menu li a {
    display: flex;
    align-items: center;
}
.user_account_menu li a i {
    font-size: 22px;
    color: #999999;
    margin-right: 5px;
}
.user_account_menu li a::after {
    content: "";
    position: absolute;
    border-top: 1px solid #e1e2e3;
    right: 20px;
    width: 10px;
    height: 10px;
    border-left: 1px solid #e1e2e3;
    transform: rotate(138deg);
    top: 16px;
}
.user_account_menu li a {
    display: flex;
    align-items: center;
    text-decoration: none;
    text-transform: lowercase;
}
.card-page-container {
    font-family: "copperplate", "copperplate-light", serif !important;
}
@media (max-width: 991px) {
    .raudha-site-footer .footer-submit {
        padding: 17px 14px !important;
    }
    .raudha-site-footer .footer-consent {
        display: flex;
        justify-content: center;
        align-items: center;
        justify-content: center !important;
    }
}
div#mobileMenu {
    font-family: 'copperplate';
}
.cust-qty-cls{
    border: 1px solid #2d2b2f !important;
    background: transparent !important;
    color: #2d2b2f !important;
    border-radius: 8px !important;
    min-height: 50px;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 400 !important;
    padding: 0 18px !important;
}
/*checkout jagat start */
.checkout-viewport {
    --checkout-bg: #f4f4f1;
    --checkout-border: #e0cdc9;
    --checkout-text: #000000;
    --checkout-text-subdued: rgba(0,0,0,0.56);
    --checkout-accent: #2a201f;
    --checkout-radius: 7px;
    --checkout-placeholder: #444444; 
    --checkout-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-family: var(--checkout-font);
    background-color: var(--checkout-bg);
    color: var(--checkout-text);
    font-size: 14px;
    line-height: 1.5;
    min-height: 100vh;
}
/* Typography */
.checkout-viewport h2.checkout-section-header {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 1.1rem;
}
/* Production Hardened Form Controls */
.checkout-viewport .form-control {
    background-color: transparent !important;
    border: 1px solid var(--checkout-border) !important;
    border-radius: var(--checkout-radius) !important;
    padding: 0.75rem 1rem !important;
    color: var(--checkout-text) !important;
}
.checkout-viewport .form-control::placeholder {
    color: var(--checkout-placeholder) !important;
    opacity: 1;
    font-weight: 500;
}
/* Selectable Payment UI */
.checkout-viewport .payment-card-group {
    border: 1px solid var(--checkout-border);
    border-radius: var(--checkout-radius);
    overflow: hidden;
}
.checkout-viewport .payment-option {
    padding: 1.25rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--checkout-border);
    transition: background 0.2s ease;
    margin-bottom: 0;
}
.checkout-viewport .payment-option:last-child { border-bottom: none; }
/* Visual Active State */
.checkout-viewport .payment-option.active-option {
    background-color: rgba(42, 32, 31, 0.05);
}
.checkout-viewport .custom-radio-ui {
    width: 18px;
    height: 18px;
    border: 1px solid var(--checkout-border);
    border-radius: 50%;
    margin-right: 12px;
    display: inline-block;
    background: #fff;
    transition: all 0.2s ease;
}
.checkout-viewport .active-option .custom-radio-ui {
    border: 5px solid var(--checkout-accent);
}
/* Layout & Utilities */
@media (min-width: 992px) {
    .checkout-viewport .checkout-main-row { position: relative; }
    .checkout-viewport .checkout-main-row::after {
        content: ""; position: absolute; top: 0; bottom: 0; left: 58.5%;
        width: 1px; background-color: var(--checkout-border);
    }
    .checkout-viewport .order-summary-sticky { position: sticky; top: 2rem; padding-left: 2rem; }
}
.checkout-viewport .order-item { display: flex; gap: 1.1rem; margin-bottom: 1.2rem; align-items: center; }
.checkout-viewport .order-item-media { width: 64px; height: 64px; position: relative; background: #fff; border-radius: 8px; border: 1px solid var(--checkout-border); }
.checkout-viewport .order-item-image { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.checkout-viewport .order-item-badge { position: absolute; top: -10px; right: -10px; width: 22px; height: 22px; border-radius: 50%; background: #666; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 11px; border: 1px solid #fff; }
.dropdown-menu {
    border-radius: 8px;
    padding: 10px 0;
    min-width: 160px;
}
.dropdown-item {
    padding: 8px 20px;
    font-weight: 500;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}
.dropdown-item:hover {
    background-color: #f8f9fa;
    color: #dc3545; /* Matches your danger theme */
}
.dropdown-toggle::after {
    vertical-align: middle;
    margin-left: 8px;
}
.navbar  .d-flex.align-items-center.gap-3{
    padding-left: 14px;
    padding-right: 14px;
}
.suggestion-container {
    position: absolute;
    top: 75px;
    width: 95%;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    z-index: 9999;
    max-height: 400px;
    overflow-y: auto;
}
.suggestion-item {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    text-decoration: none;
    border-bottom: 1px solid #eee;
    transition: background 0.2s;
}
.suggestion-item:hover {
    background-color: #f8f9fa;
}
.suggestion-item img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 4px;
    margin-right: 15px;
}
.suggestion-item .info {
    display: flex;
    flex-direction: column;
}
.suggestion-item .p-name {
    color: #333;
    font-weight: 600;
    font-size: 15px;
}
.suggestion-item .p-cat {
    color: #777;
    font-size: 12px;
}
.navbar-toggler {
    color: #000;
    /*background-color: #b70318;*/
}
.bg-transparent{
    background-color: transparent !important;
}
.section-title {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #4a4a4a;
    margin-bottom: 50px;
    font-weight: 400;
}
.collection-card {
    position: relative;
    overflow: hidden;
    border: none;
    /*background: #fff;*/
    border-radius: 0; /* Matches the sharp edges in the image */
    transition: transform 0.3s ease;
    /*background: linear-gradient(to top, rgba(0, 0, 0, var(--overlay-opacity, .55)) 0%, rgba(0, 0, 0, calc(var(--overlay-opacity, .55) * .22)) 45%, rgba(255, 255, 255, 1) 100%);*/
}
.collection-card:hover {
    transform: scale(1.02);
}
.collection-img {
    width: 100%;
    /*height: 600px;*/
    display: block;
    object-fit: contain;
    padding-bottom:65px;
}
/* Overlay text styling */
.collection-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
    /*background: #C2BCA9  */
}
.collection-title {
    color: #959581 ;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.1rem;
    margin: 0;
    letter-spacing: 1px;
}
/* Responsive spacing */
@media (max-width: 768px) {
    .collection-title {
        font-size: 1.2rem;
    }
}
.nav-item{
    color:#1a1a1a;
}
.header-scroll-active .nav-item{
    color:#000;
}
.nav-item{
    text-decoration: auto;
}
.mt-5 {
    margin-top: 5rem !important;
}
.product-price.text-white{
    color:#000 !important;
}
.text-danger {
    color:  #959581 !important; 
}
.btn-danger {
    background-color: #959581 !important; 
}
.shop-title {
    font-size: 25px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    color: #000000bd;
}
.filter-section {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}
.btn-orebella {
    color: #fff;
    border-radius: 20px;
    border: none;
    width: 60%;
    padding: 8px 0;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    box-shadow: 0 2px 8px #e6cfc7a8;
    margin: 0 auto;
    display: block;
    transition: background 0.3s, box-shadow 0.3s;
}
.btn-orebella:hover {
    background: #190f0e;
    color: #fff;
    box-shadow: 0 4px 16px #e6cfc7c0;
}
cursor: pointer;
padding-bottom: 10px;
}
.product-card {
    background: transparent;
    .pagination-container {
        margin-top: 50px;
        margin-bottom: 80px;
        font-size: 15px;
    }
    border: none;
    text-align: center;
    margin-bottom: 35px;
    transition: transform 0.3s ease;
}
.img-container {
    position: relative;
    /*background-color: #fff;*/
    /*aspect-ratio: 1 / 1.1;*/
    /*overflow: hidden;*/
    margin-bottom: 5px;
    .page-link-custom {
        text-decoration: none;
        color: #a31d37;
        margin: 0 15px;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: 500;
        padding-bottom: 2px;
        border-bottom: 2px solid transparent;
        transition: border 0.2s;
    }
    .page-link-custom:hover {
        border-bottom: 2px solid #a31d37;
    }
    .page-active {
        border-bottom: 2px solid #a31d37;
        font-weight: bold;
    }
}
.img-container img {
    width: 100%;
    max-height : 100%;
    /*object-fit: contain;*/
    /*mix-blend-mode: multiply;*/
}
.product-card {
    border-radius: 12px;
    padding-bottom: 10px;
}
.status-badge {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #a31d37;
    color: white;
    padding: 4px 12px;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.product-info h3 {
    font-size: 17px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom:0px;
    font-weight: 600;
    text-align:center;
    color: #959581;
    margin-bottom: 10px;
    margin-top: 15px;
}
.product-category {
    font-size: 14px;
    text-transform: uppercase;
    color: #666;
    margin-bottom: 3px;text-align:center;
}
.product-notes {
    font-size: 14px;
    font-style: italic;
    color: #444;
    margin-bottom: 10px;
}
.btn-orebella {
    background: #4B4139;
    color: white;
    border-radius: 0;
    border: none;
    width: 50%;
    padding: 8px 0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: background 0.3s ease;
}
.btn-orebella:hover {
    background-color: #30080d;
    color: white;
}
.pagination-container {
    margin-top: 50px;
    margin-bottom: 80px;
    font-size: 14px;
}
.page-link-custom {
    text-decoration: none;
    color: #212121;
    margin: 0 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.page-active {
    border-bottom: 1px solid #212121;
    font-weight: bold;
}
@media (max-width: 576px) {
    .shop-title { font-size: 1.5rem; }
    .product-info h3 { font-size: 11px; }
    .btn-orebella { width: 100%; font-size: 10px; }
    .col-custom-mobile {
        width: 50% !important;
    }
}
@media (max-width: 576px) {
    .shop-header {
        padding-left: 14px;
        padding-right: 14px;
    }
}
.filter-trigger {
    border: 0;
    background: transparent;
    padding: 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #26242a;
    cursor: pointer;
}
.filters-overlay {
    position: fixed;
    inset: 0;
    background: rgba(19, 16, 20, 0.25);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
    z-index: 1040;
}
.filters-overlay.is-open {
    opacity: 1;
    visibility: visible;
}
.filters-drawer {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: min(92vw, 380px);
    background: #e2d2cd;
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    box-shadow: 10px 0 26px rgba(0, 0, 0, 0.18);
}
.filters-drawer.is-open {
    transform: translateX(0);
}
.filters-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 37px;
    border-bottom: 1px solid rgba(52, 46, 49, 0.6);
}
.filters-drawer-header h2 {
    margin: 0;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #4f4a4d;
    font-weight: 600;
}
.filters-close {
    border: 0;
    background: transparent;
    color: #6c6668;
    font-size: 33px;
    line-height: 1;
    cursor: pointer;
}
.filters-group-list {
    padding: 0 30px;
}
.filters-group-item {
    border-bottom: 1px solid rgba(52, 46, 49, 0.6);
}
.filters-group {
    width: 100%;
    border: none;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0 0px;
    font-size: 15px;
    text-transform: uppercase;
    color: #4f4a4d;
    font-family: "Crimson Pro", serif;
    font-weight: 600;
    letter-spacing: 0.8px;
    cursor: pointer;
}
.filters-group-title {
    line-height: 1.2;
}
.filters-icon-box {
    width: 52px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 52px;
}
.filters-icon {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #4f4a4d;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform 0.25s ease;
}
.filters-group-item.is-open .filters-icon {
    transform: rotate(180deg);
}
.filters-options {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s ease;
}
.filter-option {
    width: 100%;
    border: 0;
    background: transparent;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 9px 0;
    color: #4f4a4d;
    font-size: 15px;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
}
.filter-check {
    width: 20px;
    height: 20px;
    border: 1px solid #928783;
    display: inline-block;
    flex: 0 0 20px;
}
.filter-option.is-selected .filter-check {
    background: #867a74;
    box-shadow: inset 0 0 0 3px #e2d2cd;
}
.filters-footer {
    margin-top: auto;
    padding: 24px 28px 18px;
}
.filters-view-items {
    width: 100%;
    border: 0;
    background: #e9dfda;
    color: #a31d37;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 14px;
    font-weight: 700;
    padding: 16px 14px;
    cursor: pointer;
}
.page-head{
    margin-top: 65px;
}
@media (max-width: 768px) {
    .page-head{
        margin-top: 50px;
    }
    .img-container img {
        /*max-height : 110px;*/
    }
    .filters-drawer {
        width: 100vw;
    }
    .filters-drawer-header h2 {
        font-size: 14px;
    }
    .filters-group {
        font-size: 14px;
    }
    .filters-view-items {
        font-size: 13px;
    }
    .filter-option {
        font-size: 13px;
    }
}
.mega-visual-col{
    display:none;
}
.right-panel {
    padding-top: 92px !important;
}
/* review section css  */
.accordion-block h4 {
    font-size: 14px;
}
.container-custom {
    max-width: 1440px;
    margin: 0 auto;
}
/* typography */
.metaLabelMeta {
    color: #A0483E;
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
}
/* rating stars (simple) */
.oke-stars {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    margin: 0;
}
.oke-stars .rating-value {
    color: #2d2b2b;
}
.oke-stars .rating-stars {
    color: #8e7b3f;
    letter-spacing: 0.08em;
    font-size: 22px;
}
.oke-sr-count {
    font-size: 0.7rem;
    color: #2d2b2b;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}
/* price area */
.price-large {
    font-size: 2.55rem;
    font-weight: 400;
    line-height: 1;
    color: #1f1f1f;
    letter-spacing: -0.02em;
}
.badge-sale-custom {
    background: #A0483E;
    color: #fff;
    padding: 0.2rem 0.8rem;
    border-radius: 30px;
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    display: inline-block;
    margin-bottom: 1rem;
}
.product-perks-custom {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.2rem 0.6rem;
    margin: 2rem 0 1.55rem;
    padding: 0;
    border: none;
}
.product-perks-custom div {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}
.product-perks-custom div::before {
    content: "�";
    color: #8e7b3f;
    font-size: 1rem;
    line-height: 1;
}
.perk-style-pdp {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-weight: 600;
    margin-left: 0;
    color: #2f2c2b;
}
.dot-extra {
    margin-right: 6px;
}
/* variant pills */
.variant-radios {
    display: flex;
    justify-content: center;
    gap: 0.7rem;
    flex-wrap: wrap;
    margin: 0.8rem 0 1.65rem;
}
.variant-label {
    min-width: 88px;
    text-align: center;
    background: #d9d0cc;
    border: 1px solid #d9d0cc;
    border-radius: 4px;
    padding: 0.2rem 0rem;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: 0.1s;
    color: #2e2b2a;
}
.variant-label.active,
input[type=radio]:checked+label {
    background: #A0483E !important;
    border-color: #A0483E;
    color: white;
}
input[type=radio] {
    display: none;
}
.disabled+label {
    opacity: 0.3;
    pointer-events: none;
}
/* add to cart block */
.button-block-with-price {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin-top: 0.5rem;
    width: 100%;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
}
.product-form__submit {
    background: #a84f45;
    border: none;
    color: white;
    font-weight: 600;
    letter-spacing: 0.09em;
    padding: 1rem 2rem;
    font-size: 0.85rem;
    flex: 2;
    border-radius: 0;
    text-transform: uppercase;
    transition: 0.1s;
}
.priceBlock-in-BTN {
    background: #a84f45;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-left: 1px solid rgba(255, 255, 255, 0.38);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 156px;
    padding: 0 1.2rem;
    font-size: 1.3rem;
    font-weight: 500;
    border-radius: 0;
}
.sale-pr-info {
    display: inline-block;
    background: #e5ddd8;
    color: #a0483e;
    font-size: 0.74rem;
    font-weight: 600;
    padding: 0.35rem 0.82rem;
    border-radius: 999px;
    margin-left: 0.8rem;
    letter-spacing: 0.02em;
}
/* PDP media column � matches official Eternal Roots layout */
.product__media-wrapper {
    position: sticky;
    padding-left: 0;
    padding-right: 0;
    width: 50%;
    margin: 0;
}
.er-media {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.er-thumb-slider-wrap {
    order: 2;
    width: min(100%, 920px);
    display: flex;
    align-items: center;
    gap: 10px;
}
.er-thumb-rail {
    position: static;
    display: flex;
    flex-direction: row;
    gap: 16px;
    width: 100%;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: center;
    padding: 14px 0 0;
    scrollbar-width: none;
    z-index: 3;
    scroll-snap-type: x mandatory;
}
.er-thumb-rail::-webkit-scrollbar {
    display: none;
}
.er-thumb {
    width: 134px;
    height: 134px;
    border: 1px solid transparent;
    border-radius: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    transition: transform 0.12s, box-shadow 0.12s;
    overflow: hidden;
    flex: 0 0 auto;
    scroll-snap-align: center;
}
.er-thumb.active {
    border-color: #2f2a2c;
    box-shadow: none;
    transform: none;
}
.er-thumb-nav {
    width: 34px;
    height: 34px;
    border: 0;
    background: rgba(38, 32, 35, 0.06);
    color: #2f2a2c;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    flex: 0 0 auto;
}
.er-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}
.er-hero {
    position: relative;
    width: min(100%, 980px);
    height: 90vh;
    min-height: 760px;
    border-radius: 0;
    overflow: hidden;
    background:
    linear-gradient(180deg, #f8cfc2 0%, #f3b0a1 36%, #ee9b89 100%),
    url(' ') center/cover;
    background-blend-mode: screen;
    box-shadow: none;
}
.er-hero-img,
.er-hero-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: none;
    transform-origin: center;
}
.er-hero-img.is-bottle {
}
.er-badge {
    position: absolute;
    top: 69px;
    right: 22px;
    background: #a7353d;
    color: #fff;
    padding: 7px 16px;
    border-radius: 999px;
    font-weight: 600;
    letter-spacing: 0.08em;
    font-size: 10px;
    text-transform: uppercase;
    box-shadow: 0 10px 22px rgba(167, 53, 61, 0.35);
    z-index: 2;
}
.er-arrow {
    display: flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border: 0;
    background: rgba(255, 255, 255, 0.6);
    color: #1f1b1c;
    font-size: 34px;
    line-height: 1;
    align-items: center;
    justify-content: center;
    z-index: 5;
    cursor: pointer;
    border-radius: 999px;
    backdrop-filter: blur(1px);
}
.er-prev {
    left: 14px;
}
.er-next {
    right: 14px;
}
.er-mobile-dots {
    display: none;
}
@media (max-width: 991px) {
    .product__media-wrapper {
        width: 100%;
    }
    .er-media {
        display: block;
    }
    .er-thumb-rail {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        max-height: none;
    }
    .er-thumb-slider-wrap {
        width: 100%;
    }
    .er-thumb {
        width: 70px;
        height: 102px;
    }
    .er-hero {
        min-height: 520px;
        height: 70vh;
    }
    .er-hero-img.is-bottle {
    }
}
/* accordion */
.product-meta-custom-accordion {
    margin-top: 2rem;
    border-top: 1px solid #ddd;
}
.accordionLabel-summary li {
    font-size: 12px;
}
.accordionLabel-summary.small,
.accordionLabel-summary {
    font-size: 12px;
}
.accordion-block {
    border-bottom: 1px solid #ddd;
    padding: 0.6rem 0rem 0.4rem 0rem;
}
.accordionLabel-type {
    display: flex;
    justify-content: space-between;
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #2b2b2b;
}
.accordionLabel-summary {
    margin-top: 0.8rem;
    color: #4f4f4f;
    line-height: 1.5;
    padding-right: 1rem;
    display: none;
}
.accordion-block.open .accordionLabel-summary {
    display: block;
}
.plusLabelAccprdion {
    display: inline-flex;
    width: 20px;
    height: 20px;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.plusLabelAccprdion svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: #756e6d;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform 0.2s ease;
}
.accordion-block.open .plusLabelAccprdion svg {
    transform: rotate(180deg);
}
/* afterpay / payment block */
.afterpay-paragraph {
    font-size: 0.72rem;
    margin-top: 0.95rem;
    color: #2f2d2d;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}
.badge.sale-bdg-custom {
    background: #A0483E;
    color: white;
    padding: 0.3rem 1rem;
    border-radius: 30px;
    font-size: 0.7rem;
    font-weight: 600;
    display: inline-block;
    margin-bottom: 1rem;
}
/* helper */
.text-wood {
    color: #A0483E;
}
hr {
    opacity: 0.2;
}
.bg-soft {
    background-color: #fcf8f3;
}
.right-panel {
    background: #faeeea;
    padding: 2.2rem 2.5rem 1.5rem;
}
.right-panel>* {
    max-width: 394px;
    margin-left: auto;
    margin-right: auto;
}
.right-panel .product__title h1 {
    font-size: 1.75rem;
    letter-spacing: 0.06em;
    font-weight: 400;
    color: #4a4548;
    text-align: center;
    margin: 3.25rem 0 1.2rem;
}
.right-panel .meta-label-custom {
    text-align: center;
    margin-top: 0.65rem !important;
}
.right-panel .meta-label-custom h3 {
    color: #b47c6f !important;
    font-size: 0.85rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0;
    text-align: center;
}
.right-panel .d-flex.align-items-center {
    justify-content: center;
    font-size: 21px !important;
}
.right-panel .product__description {
    max-width: 560px;
    margin: 0 auto 0 !important;
    text-align: center;
}
.right-panel .product__description p {
    margin: 0 auto;
    font-size: 0.86rem;
    line-height: 1.45;
    color: #3e3837;
    width: 100%;
    max-width: 470px;
    text-align: center;
}
.afterpay-paragraph {
    color: #333;
    font-size: 14px;
    line-height: 55px;
}
.travel-case-card {
    max-width: 620px;
    margin: 1rem auto 0;
    background: #95958;
    border-radius: 6px;
    padding: 1.25rem 1.35rem;
    display: flex;
    grid-template-columns: 120px 1fr;
    gap: 1rem;
    align-items: center;
}
.travel-case-media {
    display: flex;
    align-items: center;
    justify-content: center;
}
.travel-case-media img {
    width: 88px;
    height: auto;
    display: block;
}
.travel-case-title {
    margin: 0;
    font-size: 14px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #fff;
    font-weight: 500;
}
.travel-case-content p {
    font-size: 11px;
}
.travel-case-desc {
    margin: 0.38rem 0 0;
    font-size: 0.44rem;
    line-height: 1.45;
    color: #fff;
}
.travel-case-note {
    margin: 0.08rem 0 0;
    font-size: 0.44rem;
    line-height: 1.4;
    color: #fff;
    font-weight: 700;
}
.travel-case-cta {
    margin-top: 0.65rem;
    display: inline-flex;
    border: 1px solid #fff;
    border-radius: 5px;
    overflow: hidden;
    background: transparent;
}
.travel-case-cta button,
.travel-case-cta span {
    border: none;
    background: transparent;
    color: #fff;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0px;
}
.travel-case-cta button {
    border-right: 1px solid #fff;
    min-width: 137px;
    min-height: 31px;
}
.travel-case-cta span {
    min-width: 90px;
    letter-spacing: 0.04em;
}
.reviews-section {
    background: #faeeea;
    padding: 3rem 2.8rem 2rem;
    border-top: 1px solid #ddd3cf;
}
.reviews-title {
    margin: 0 0 2rem;
    font-size: 1.5rem;
    letter-spacing: 0.12em;
    font-weight: 600;
    color: #0f1e34;
    text-transform: uppercase;
}
.reviews-summary {
    display: grid;
    grid-template-columns: 1fr 1.45fr;
    gap: 2.8rem;
    align-items: center;
    margin-left: 18px;
}
.reviews-score-line {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: #8e7b3f;
    margin-bottom: 0.8rem;
}
.reviews-score-line strong {
    font-size: 1.2rem;
    line-height: 1;
    color: #0c0f16;
    font-weight: 600;
}
.reviews-score-line .stars {
    font-size: 2rem;
    letter-spacing: 0.06em;
    margin-right: 13px;
}
.reviews-based {
    font-size: 0.82rem;
    color: #4d5a78;
}
.rating-bars {
    display: grid;
}
.rating-row {
    display: grid;
    grid-template-columns: 30px 259px 34px;
    align-items: center;
    column-gap: 0.65rem;
    font-size: 0.72rem;
    color: #1f2c40;
}
.rating-row .label {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 13px;
}
.rating-row .label span {
    color: #8e7b3f;
    font-size: 20px;
}
.rating-bar {
    height: 7px;
    border-radius: 99px;
    background: #e8e9ec;
    overflow: hidden;
}
.rating-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #959bb0;
}
.reviews-media-shell {
    position: relative;
    align-self: center;
    margin-top: 1.4rem;
    padding: 0 24px;
}
.reviews-media {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    gap: 6px;
    width: 100%;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.reviews-media::-webkit-scrollbar {
    display: none;
}
.reviews-media-nav {
    display: inline-flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    color: #2e2b2a;
    font-size: 20px;
    line-height: 1;
    align-items: center;
    justify-content: center;
    z-index: 2;
    cursor: pointer;
}
.reviews-media-prev {
    left: 0;
}
.reviews-media-next {
    right: 0;
}
span.sort-label b {
    font-size: 13px;
}
.review-media-item {
    position: relative;
    aspect-ratio: 1.25/1;
    overflow: hidden;
    background: #d8d7da;
    width: auto;
    height: auto;
    flex: 0 0 calc((100% - 18px) / 4);
    scroll-snap-align: start;
}
.reviews-media-nav:disabled {
    opacity: 0.35;
    cursor: default;
}
.review-media-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.review-media-item.video::after {
    content: "?";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.58);
    color: #fff;
    font-size: 22px;
    line-height: 52px;
    text-align: center;
}
.reviews-actions {
    margin-top: 2.1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}
.btn-reviews {
    border: 1px solid #fff;
    color: black;
    background: #fff;
    border-radius: 3px;
    font-size: 0.95rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 600;
    padding: 0.72rem 1.25rem;
    min-width: 180px;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 0.45rem;
}
.btn-reviews svg {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    stroke: currentColor;
    fill: none;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.reviews-count {
    margin-top: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #4d5a78;
    font-size: 0.9rem;
    border-bottom: 1px solid #817a79;
    padding-bottom: 0.7rem;
}
.reviews-count .sort-label {
    display: inline-flex;
    align-items: center;
    gap: 2rem;
    color: #121622;
}
.reviews-count .sort-label b {
    letter-spacing: 0.08em;
}
.sort-select-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.sort-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0;
    background: transparent;
    color: #121622;
    font: inherit;
    font-size: 1em;
    line-height: 1;
    padding: 0 1rem 0 0;
    cursor: pointer;
}
.sort-select:focus {
    outline: none;
    box-shadow: none;
}
.sort-select-wrap::after {
    content: "?";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75em;
    pointer-events: none;
    color: #121622;
}
.review-card {
    padding: 1.7rem 0;
    border-bottom: 1px solid #d6d0ce;
}
.review-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}
.review-user {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
}
.review-avatar {
    width: 39px;
    height: 39px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #d7d9df;
    color: #1f2c40;
    font-weight: 600;
    font-size: 0.8rem;
}
.review-name {
    font-size: 0.9rem;
    color: #0c0f16;
    font-weight: 600;
}
.review-name-wrap {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}
.review-verified {
    font-size: 0.95rem;
    color: #0b7d8a;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 0.32rem;
}
.review-verified .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0b7d8a;
    display: inline-block;
}
.review-date {
    color: #5b6b8b;
    font-size: 0.95rem;
}
.review-stars {
    color: #8e7b3f;
    font-size: 1.7rem;
    line-height: 41px;
    margin-bottom: 0.7rem;
}
.review-title {
    font-size: 0.9rem;
    margin: 0 0 0.5rem;
    color: #101526;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
}
.review-body {
    margin: 0.2rem 0 0;
    font-size: 0.85rem;
    color: #1b2231;
    line-height: 22px;
    max-width: 98%;
}
.review-help-row {
    margin-top: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.95rem;
    color: #2a3142;
    font-size: 0.75rem;
}
.review-help-row .vote {
    display: inline-flex;
    align-items: center;
    gap: 0.26rem;
    color: #8f8ea1;
    font-size: 0.95rem;
}
.review-help-row .vote svg {
    width: 16px;
    height: 16px;
    fill: #b0afbf;
    display: block;
}
.review-verified-shop {
    display: inline-block;
    margin-top: 0.75rem;
    background: #e7e8eb;
    color: #4c566f;
    border-radius: 6px;
    padding: 0.28rem 0.55rem;
    font-size: 0.7rem;
    font-weight: 600;
}
.right-panel .d-flex.align-items-center.mt-2 {
    justify-content: center;
    margin-top: 1.3rem !important;
}
.right-panel .sale-pr-info.ms-3 {
    margin-left: 0.8rem !important;
}
#variantRadios::before {
    content: "SELECT SIZE:";
    width: 100%;
    text-align: center;
    font-size: 0.8rem;
    letter-spacing: 0.07em;
    color: #3f3b3b;
    margin-bottom: 0.45rem;
}
@media (max-width: 1200px) {
    .right-panel {
        padding: 2rem 1.8rem 1.5rem;
    }
    .right-panel .product__title h1 {
        font-size: 2.8rem;
    }
    .price-large {
        font-size: 2.2rem;
    }
}
@media (max-width: 768px) {
    .container-custom {
        padding: 0;
    }
    .row.g-0 {
        margin: 0;
    }
    .product__media-wrapper {
        width: 100%;
        position: static;
        height: 505px;
    }
    .er-media {
        display: flex;
        flex-direction: column;
    }
    .er-hero {
        order: 1;
        min-height: 77vh;
        height: 62vh;
    }
    .er-hero-img.is-bottle {
    }
    .er-badge {
        top: 51px;
        right: 14px;
        font-size: 10px;
        padding: 7px 12px;
    }
    .er-thumb-rail {
        display: none;
    }
    .er-thumb-slider-wrap {
        display: none;
    }
    .er-arrow {
        display: flex;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 28px;
        border: none;
        background: transparent;
        color: rgba(255, 255, 255, 0.9);
        font-size: 28px;
        line-height: 1;
        align-items: center;
        justify-content: center;
        z-index: 4;
        box-shadow: none;
        cursor: pointer;
    }
    .er-prev {
        left: 6px;
    }
    .er-next {
        right: 6px;
    }
    .er-mobile-dots {
        display: flex;
        position: absolute;
        left: 50%;
        bottom: 14px;
        transform: translateX(-50%);
        gap: 8px;
        z-index: 4;
    }
    .er-mobile-dot {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        border: none;
        background: rgba(80, 76, 78, 0.28);
        padding: 0;
        cursor: pointer;
    }
    .er-mobile-dot.active {
        background: #6f6b70;
    }
    .right-panel {
        padding: 1.25rem 1rem 1.4rem;
    }
    .right-panel>* {
        max-width: 100%;
    }
    .right-panel .product__title h1 {
        font-size: 17px;
        margin: 1.25rem 0 0.8rem;
        letter-spacing: 0.04em;
    }
    .right-panel .d-flex.align-items-center {
        font-size: 15px !important;
        flex-wrap: wrap;
        row-gap: 6px;
    }
    .right-panel .meta-label-custom h3 {
        font-size: 0.78rem !important;
    }
    .right-panel .product__description p {
        font-size: 0.9rem;
        max-width: 100%;
    }
    .product-perks-custom {
        gap: 0.35rem 0.7rem;
        margin: 1.2rem 0 1.2rem;
    }
    .perk-style-pdp {
        font-size: 0.68rem;
    }
    #variantRadios::before {
        font-size: 0.72rem;
    }
    .variant-radios {
        gap: 0.5rem;
        margin-bottom: 1rem;
    }
    .variant-label {
        min-width: 78px;
        font-size: 0.82rem;
        padding: 0.42rem 0.72rem;
    }
    .button-block-with-price {
        max-width: 77%;
    }
    .product-form__submit {
        font-size: 10px;
        padding: 0.9rem 1rem;
    }
    .priceBlock-in-BTN {
        min-width: 84px;
        font-size: 1rem;
    }
    .afterpay-paragraph {
        font-size: 15px;
        line-height: 1.45;
        margin-top: 0.8rem;
        text-align: center;
    }
    .travel-case-card {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        padding: 1rem;
        margin-top: 0.9rem;
    }
    .travel-case-media {
        justify-content: flex-start;
    }
    .travel-case-cta {
        width: 100%;
    }
    .travel-case-cta button {
        min-width: 0;
        flex: 1;
        font-size: 8px;
    }
    .travel-case-cta span {
        min-width: 90px;
    }
    .product-meta-custom-accordion {
        margin-top: 1.2rem;
    }
    .accordionLabel-type {
        font-size: 0.8rem;
    }
    .reviews-section {
        padding: 1.5rem 1rem;
    }
    .reviews-title {
        font-size: 1.45rem;
        margin-bottom: 1.2rem;
    }
    .reviews-summary {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .reviews-score-line strong {
        font-size: 2rem;
    }
    .reviews-score-line .stars {
        font-size: 1.35rem;
    }
    .reviews-media {
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        gap: 4px;
        margin: 0;
        padding: 0 2px;
    }
    .reviews-media::-webkit-scrollbar {
        display: none;
    }
    .review-media-item {
        flex: 0 0 48%;
        scroll-snap-align: start;
    }
    .reviews-media-nav {
        display: inline-flex;
    }
    .reviews-actions {
        flex-direction: column;
        align-items: stretch;
    }
    .btn-reviews {
        width: 100%;
        min-width: 0;
    }
    .reviews-count {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.6rem;
    }
    .review-title,
    .review-body {
        font-size: 1.2rem;
    }
    .btn-reviews {
        font-size: 0.6rem;
    }
    span.review-avatar {
        font-size: 12px;
    }
    span.review-name {
        font-size: 11px;
    }
    .review-stars {
        font-size: 28px;
    }
    .reviews-count {
        font-size: 10px;
    }
    span.review-date {
        font-size: 10px;
    }
    h3.review-title {
        font-size: 11px;
    }
    p.review-body {
        font-size: 10px;
    }
    span.review-verified-shop {
        font-size: 8px;
    }
    .review-help-row {
        font-size: 10px;
    }
    span.review-verified {
        font-size: 10px;
    }
    span.review-verified-shop {
        font-size: 8px;
        margin: 0 56px 0 0px;
    }
    .reviews-based {
        font-size: 11px;
    }
    /* Remove gray blank gap between hero and right panel on mobile */
    .product__media-wrapper {
        height: auto !important;
        min-height: 0 !important;
    }
    .er-media {
        height: auto !important;
    }
    .er-hero {
        min-height: 62vh !important;
        height: 62vh !important;
        margin-bottom: 0 !important;
    }
}
@media (max-width: 480px) {
    .reviews-section {
        padding: 1.2rem 0.75rem;
    }
    .reviews-title {
        font-size: 0.95rem;
        letter-spacing: 0.12em;
        text-align: center;
        margin-bottom: 1rem;
    }
    .reviews-score-line {
        justify-content: center;
        gap: 0.6rem;
        margin-bottom: 0.45rem;
    }
    .reviews-score-line strong {
        font-size: 0.75rem;
    }
    .reviews-score-line .stars {
        font-size: 0.82rem;
    }
    .rating-row {
        grid-template-columns: 18px 1fr 26px;
        column-gap: 0.9rem;
    }
    .rating-bar {
        height: 7px;
    }
    .reviews-media {
        gap: 3px;
        margin-top: 0.65rem;
    }
    .review-media-item {
        flex-basis: 62%;
    }
    .review-media-item.video::after {
        width: 34px;
        height: 34px;
        font-size: 14px;
        line-height: 34px;
    }
    .reviews-actions {
        margin-top: 1rem;
        gap: 0.5rem;
    }
    .btn-reviews {
        padding: 0.45rem 0.55rem;
        border-radius: 2px;
        min-width: 0;
    }
    .btn-reviews svg {
        width: 10px;
        height: 10px;
        flex-basis: 10px;
    }
    .reviews-count {
        margin-top: 1.1rem;
        padding-bottom: 0.5rem;
    }
    .reviews-count .sort-label {
        width: 100%;
        justify-content: space-between;
        gap: 0.4rem;
    }
    .review-card {
        padding: 1rem 0;
    }
    .review-avatar {
        width: 34px;
        height: 34px;
        font-size: 0.35rem;
    }
    .review-name {
        font-size: 0.4rem;
    }
    .review-verified {
        font-size: 0.32rem;
    }
    .review-date {
        font-size: 0.35rem;
    }
    .review-stars {
        font-size: 0.75rem;
        margin-bottom: 0.3rem;
    }
    .review-title {
        font-size: 0.48rem;
        margin-bottom: 0.25rem;
    }
    .review-body {
        font-size: 0.38rem;
        line-height: 1.5;
    }
    .review-verified-shop {
        font-size: 0.28rem;
        padding: 0.2rem 0.38rem;
    }
    .review-help-row {
        margin-top: 0.55rem;
        justify-content: flex-start;
        gap: 0.55rem;
        flex-wrap: wrap;
    }
    .review-help-row .vote {
        font-size: 0.35rem;
    }
    .review-help-row .vote svg {
        width: 11px;
        height: 11px;
    }
}
@media (max-width: 360px) {
    .reviews-title {
        font-size: 0.86rem;
    }
    .reviews-score-line strong {
        font-size: 0.68rem;
    }
    .reviews-score-line .stars {
        font-size: 0.74rem;
    }
    .reviews-media {
        gap: 3px;
    }
    .review-media-item {
        flex-basis: 74%;
    }
}
@media (max-width: 300px) {
    .reviews-section {
        padding: 1rem 0.5rem;
    }
    .reviews-title {
        font-size: 18px;
    }
    .rating-row {
        grid-template-columns: 16px 1fr 22px;
        font-size: 0.24rem;
    }
    .review-media-item {
        flex-basis: 82%;
    }
    .rating-bar {
        height: 6px;
    }
    .btn-reviews {
        font-size: 0.52rem;
        padding: 0.4rem 0.45rem;
    }
    .review-body {
        font-size: 0.34rem;
    }
}
.product__title h1 {
    font-size: 2.5rem;
}
:root {
    --bar-bg: #9d4a41;
    --text-light: #f6f2ea;
    --dot: #a3a75e;
}
body {
    margin: 0;
    font-family: "Times New Roman", Georgia, serif;
}
.notes-benefits-bar {
    background: var(--bar-bg);
    color: var(--text-light);
    padding: 1rem 0;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: clamp(0.62rem, 1.05vw, 0.95rem);
    position: relative;
    z-index: 5;
    line-height: 56px;
}
.notes-benefits {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.7rem 1.1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.notes-benefits li {
    display: inline-flex;
    align-items: center;
    color: var(--text-light);
    white-space: nowrap;
}
.notes-benefits li::before {
    content: "";
    width: 6px;
    height: 6px;
    margin-right: 1rem;
    border-radius: 50%;
    background: var(--dot);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18), 0 0 6px rgba(163, 167, 94, 0.5);
    flex-shrink: 0;
}
.notes-hero {
    position: relative;
    min-height: calc(100vh - 72px);
    overflow: hidden;
    isolation: isolate;
    background-image: url("");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.notes-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg,
        rgba(15, 8, 4, 0.54) 10%,
        rgba(22, 13, 6, 0.3) 42%,
        rgba(18, 12, 7, 0.22) 70%,
        rgba(12, 9, 5, 0.48) 100%);
    z-index: -1;
}
.notes-hero .container-fluid {
    min-height: inherit;
}
.notes-title {
    position: absolute;
    left: 54%;
    top: 17%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 700;
    font-size: 50px;
    text-align: center;
    margin: 0;
    text-shadow: 0 6px 24px rgba(0, 0, 0, 0.45);
}
.note-item {
    position: absolute;
    color: #fff;
    max-width: min(470px, 32vw);
    text-shadow: 0 3px 14px rgba(0, 0, 0, 0.45);
}
.note-item h3 {
    margin: 0 0 0.35rem;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-size: clamp(1.15rem, 1.55vw, 2rem);
}
.note-item p {
    margin: 0;
    font-family: Arial, sans-serif;
    font-weight: 400;
    line-height: 1.34;
    font-size: 13px;
}
.note-lychee {
    left: 16.5%;
    top: 73%;
    transform: translate(-50%, -50%);
    text-align: center;
    max-width: min(440px, 29vw);
}
.note-vetiver {
    left: 82.5%;
    top: 45%;
    transform: translate(-50%, -50%);
    text-align: center;
    max-width: min(430px, 28vw);
}
.note-papyrus {
    left: 79%;
    top: 87%;
    transform: translate(-50%, -50%);
    text-align: left;
    max-width: min(560px, 36vw);
}
@media (max-width: 991.98px) {
    .notes-hero {
        min-height: 90vh;
    }
    .notes-title {
        position: static;
        transform: none;
        margin-top: 2.1rem;
    }
    .note-item {
        position: static;
        max-width: 680px;
        margin: 1.1rem auto 0;
        text-align: center !important;
        padding-inline: 1rem;
        transform: none;
    }
}
@media (max-width: 575.98px) {
    .notes-benefits-bar {
        padding: 0.7rem 0;
    }
    .notes-benefits {
        gap: 0.5rem 0.85rem;
    }
    .notes-benefits li::before {
        margin-right: 0.7rem;
    }
    .nourish-shake {
        left: 1rem;
        bottom: 0.5rem;
    }
    .notes-hero {
        min-height: 88vh;
    }
}
.bella-inspiration {
    background: #e6dddd;
    padding: clamp(2.8rem, 5.8vw, 5.3rem) 1rem;
}
.bella-inspiration-wrap {
    max-width: 1340px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(290px, 0.95fr) minmax(360px, 1.18fr);
    align-items: center;
    gap: clamp(1.4rem, 3vw, 3.7rem);
}
.bella-inspiration-copy {
    text-align: center;
    color: #1a2338;
    padding: 0 0.4rem;
}
.bella-inspiration-copy h2 {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-size: clamp(1.2rem, 1.5vw, 2rem);
    font-weight: 500;
    line-height: 1.1;
}
.bella-inspiration-quote {
    margin: clamp(1.5rem, 2.9vw, 2.6rem) auto 0;
    width: 100%;
    max-width: 270px;
    height: auto;
    display: block;
}
.bella-signature {
    margin-top: clamp(1.4rem, 2.4vw, 2.2rem);
    font-family: "Segoe Script", "Brush Script MT", cursive;
    font-size: 22px;
    line-height: 1;
    color: #171717;
}
.bella-video-shell {
    position: relative;
    width: min(84%, 900px);
    margin-inline: auto;
    aspect-ratio: 1.42 / 1;
    border-radius: 12% 17% 14% 16% / 11% 16% 13% 18%;
    overflow: hidden;
    border: 2px solid #9b7a2d;
    box-shadow: inset 0 0 0 1px rgba(255, 240, 190, 0.36);
    background: #b7aba6;
}
h1.notes-title span {
    margin-left: 256px;
}
.bella-video-shell video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.bella-video-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(112, 84, 28, 0.35);
}
.magnet-section {
    background: #e7dedd;
    padding: clamp(1.6rem, 3vw, 2.2rem) 0 0;
}
.magnet-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: clamp(520px, 45vw, 760px);
    background: #e7dedd;
}
.magnet-copy {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
    padding: clamp(1.6rem, 3.2vw, 3.5rem) 1.2rem 1.4rem;
    color: #111d35;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.magnet-copy-inner {
    width: min(100%, 760px);
    margin-top: 110px;
}
.magnet-title {
    margin: 0;
    font-size: 19px;
    line-height: 1.1;
    font-weight: 500;
}
.magnet-poem {
    margin: clamp(2rem, 3.2vw, 3rem) 0 0;
    font-size: 19px;
    line-height: 1.3;
    white-space: pre-line;
}
.magnet-video-wrap {
    position: relative;
    height: clamp(520px, 56vw, 760px);
    background: #000;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.magnet-video-top {
    height: calc(100% - 120px);
    min-height: 0;
    overflow: hidden;
}
.magnet-video-top video {
    width: 100%;
    height: 88%;
    object-fit: cover;
    display: block;
}
.magnet-video-bottom {
    flex: 0 0 120px;
    height: 120px;
    min-height: 120px;
    max-height: 120px;
    background: #000;
}
.nourish-section {
    background: #a0483e;
    color: #faeeea;
    padding: clamp(2rem, 4vw, 3.2rem) 0 clamp(2.8rem, 5vw, 4.2rem);
    position: relative;
}
.nourish-wrap {
    width: min(100%, 1500px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(300px, 1fr) minmax(340px, 1.05fr);
    align-items: center;
    gap: clamp(1.5rem, 3vw, 3.8rem);
    padding: 0 clamp(1rem, 3vw, 2.8rem);
}
.nourish-video-box {
    width: min(100%, 700px);
    margin: 0 auto;
    aspect-ratio: 0.82 / 1;
    overflow: hidden;
    background: #a0483e;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nourish-video-box video {
    width: 73%;
    height: 73%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.nourish-content {
    text-align: center;
    max-width: 527px;
    margin: 0 auto;
    padding: 0.3rem 0.4rem 0;
}
.nourish-label {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 24px;
    font-weight: 400;
}
.nourish-title {
    margin: clamp(0.95rem, 1.8vw, 1.5rem) 0 0;
    text-transform: uppercase;
    letter-spacing: 0.13em;
    font-size: 29px;
    line-height: 1.04;
    font-weight: 600;
}
.nourish-body {
    margin: clamp(1.3rem, 2.2vw, 2rem) auto 0;
    max-width: 690px;
    font-family: Arial, sans-serif;
    font-size: clamp(1rem, 1.2vw, 2rem);
    line-height: 1.4;
}
.nourish-subtitle {
    margin: clamp(2rem, 3.5vw, 3.3rem) 0 0;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 29px;
    line-height: 1.04;
    font-weight: 600;
}
.nourish-block-title {
    margin: clamp(1.1rem, 2.2vw, 2rem) 0 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 14px;
    font-weight: 700;
}
.nourish-copy {
    margin: 0 auto;
    max-width: 760px;
    font-family: Arial, sans-serif;
    font-size: clamp(1rem, 1.1vw, 1.7rem);
    line-height: 1.45;
}
.nourish-plus {
    margin: clamp(0.8rem, 1.3vw, 1.2rem) 0;
    font-size: clamp(2.1rem, 2.5vw, 3.2rem);
    line-height: 1;
    font-weight: 600;
}
.nourish-shake {
    position: absolute;
    left: clamp(1rem, 2vw, 2rem);
    bottom: clamp(0.7rem, 1.6vw, 1.6rem);
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: clamp(2rem, 2.8vw, 3.6rem);
    line-height: 1;
    color: #faeeea;
    pointer-events: none;
}
.orb-editorial {
    background: #efd8d2;
    margin-top: 0;
}
.orb-editorial-panel {
    position: relative;
    overflow: hidden;
}
.orb-editorial .orb-editorial-panel:first-child {
    border-top: 0;
}
.orb-hero-panel {
    height: 63vh;
    min-height: 0;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orb-hero-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 26%;
    z-index: 0;
}
.orb-hero-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(52, 66, 89, 0.38), rgba(23, 31, 42, 0.12) 45%, rgba(18, 24, 32, 0.3));
    z-index: 1;
}
.orb-manifesto {
    position: relative;
    z-index: 2;
    height: 100%;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 4rem 1.5rem;
    box-sizing: border-box;
    color: #f4ece7;
}
.orb-manifesto-copy {
    max-width: 640px;
}
.orb-manifesto-copy p {
    margin: 0;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 24px;
    line-height: 1.2;
    text-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);
}
.orb-signature {
    margin-top: 1rem;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 26px;
    line-height: 1;
    color: #fffaf5;
    text-shadow: 0 12px 30px rgba(0, 0, 0, 0.24);
}
.orb-keynotes {
    min-height: 600px;
    background:
    linear-gradient(180deg, rgba(16, 64, 76, 0.2), rgba(14, 58, 69, 0.66)),
    url("") center/cover no-repeat;
    color: #fff7f0;
    padding: clamp(3rem, 5vw, 4.8rem) 2rem;
}
.orb-keynotes-inner {
    max-width: 1360px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr minmax(220px, 320px) 1fr;
    grid-template-areas:
    "title title title"
    "left bottle right"
    "bottom bottle right";
    gap: 1.5rem clamp(1.2rem, 4vw, 5rem);
    align-items: center;
}
.orb-keynotes-title {
    grid-area: title;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 700;
}
.orb-note-card {
    text-align: center;
    max-width: 300px;
    text-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}
.orb-note-card h3 {
    margin: 0 0 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: clamp(1.5rem, 2vw, 2.2rem);
    font-weight: 700;
}
.orb-note-card p {
    margin: 0;
    font-family: Arial, sans-serif;
    font-size: clamp(0.98rem, 1.18vw, 1.15rem);
    line-height: 1.55;
}
.orb-note-jasmine {
    grid-area: left;
    justify-self: start;
    align-self: start;
    margin-top: 4.5rem;
}
.orb-note-musks {
    grid-area: bottom;
    justify-self: start;
    align-self: end;
    margin-left: 2.2rem;
}
.orb-note-lotus {
    grid-area: right;
    justify-self: end;
    align-self: center;
}
.orb-keynotes-bottle {
    grid-area: bottle;
    justify-self: center;
    align-self: center;
    width: min(100%, 310px);
    filter: drop-shadow(0 26px 28px rgba(0, 0, 0, 0.25));
}
.orb-story-grid,
.orb-poem-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.orb-story-media {
    min-height: 690px;
    position: relative;
    overflow: hidden;
}
.orb-story-video,
.orb-poem-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.orb-story-video {
    position: absolute;
    top: 0;
    left: 0;
}
.orb-story-videoo,
.orb-poem-imagee {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.orb-story-videoo {
    position: absolute;
    inset: 0;
}
.orb-story-copy,
.orb-poem-copy {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: clamp(2.5rem, 4vw, 4rem) clamp(1.4rem, 4vw, 3.5rem);
}
.orb-story-copy {
    background: #8f9cab;
    color: #fff7f0;
}
.orb-story-copy-inner,
.orb-poem-copy-inner {
    max-width: 560px;
}
.orb-story-kicker,
.orb-poem-title {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.orb-story-kicker {
    font-size: clamp(1rem, 1.25vw, 1.15rem);
    font-weight: 500;
}
.orb-story-title {
    margin: 1rem 0 0;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 19px;
    line-height: 1.12;
}
.orb-story-body,
.orb-story-block p {
    margin: 1.2rem 0 0;
    font-family: Arial, sans-serif;
    font-size:14px;
    line-height: 1.7;
}
.orb-story-power {
    margin: 2rem 0 0;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 19px;
    line-height: 1.14;
}
.orb-story-block h4 {
    margin: 1.7rem 0 0;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    font-weight: 700;
}
.orb-story-plus {
    margin: 1.5rem 0;
    font-size: clamp(1.8rem, 2.5vw, 2.7rem);
    line-height: 1;
}
.orb-story-shake {
    margin-top: 1.8rem;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 21px;
    line-height: 1;
}
.orb-poem-copy {
    background: #95a2b2;
    color: #fff7f0;
}
.orb-poem-title {
    font-size: clamp(1.6rem, 2vw, 2.2rem);
    font-weight: 500;
    line-height: 1.15;
}
.orb-poem-text {
    margin: 1.8rem 0 0;
    white-space: pre-line;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1.55;
    font-size: clamp(1rem, 1.28vw, 1.28rem);
}
.orb-poem-image {
    position: relative;
    overflow: hidden;
    min-height: 620px;
    background-position: center 18%;
}
@media (max-width: 991.98px) {
    .bella-inspiration-wrap {
        grid-template-columns: 1fr;
    }
    .bella-inspiration-copy {
        order: 2;
    }
    .bella-inspiration-video-wrap {
        order: 1;
    }
    .bella-video-shell {
        width: min(100%, 760px);
    }
    .magnet-wrap {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    .magnet-copy {
        order: 2;
        padding: 2rem 1rem 2.2rem;
    }
    .magnet-video-wrap {
        order: 1;
        height: 420px;
    }
    .magnet-video-top {
        height: calc(100% - 120px);
        min-height: 0;
    }
    .nourish-wrap {
        grid-template-columns: 1fr;
    }
    .nourish-video-box {
        width: min(100%, 620px);
    }
    .nourish-content {
        padding-bottom: 2.1rem;
    }
    .nourish-shake {
        left: 1rem;
        bottom: 0.5rem;
    }
    .orb-hero-panel,
    .orb-manifesto {
        min-height: 0;
    }
    .orb-keynotes {
        min-height: auto;
    }
    .orb-keynotes-inner {
        grid-template-columns: 1fr;
        grid-template-areas:
        "title"
        "bottle"
        "left"
        "right"
        "bottom";
        justify-items: center;
        text-align: center;
    }
    .orb-note-jasmine,
    .orb-note-musks,
    .orb-note-lotus {
        justify-self: center;
        align-self: center;
        margin: 0;
    }
    .orb-story-grid,
    .orb-poem-grid {
        grid-template-columns: 1fr;
    }
    .orb-story-media {
        min-height: 520px;
    }
    .orb-poem-copy {
        order: 2;
    }
    .orb-poem-image {
        order: 1;
        min-height: 460px;
    }
}
@media (max-width: 767.98px) {
    h1.notes-title span {
        display: block;
        margin-left: 0;
    }
    .orb-story-videoo, .orb-poem-imagee {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block;
    }
    .orb-story-videoo {
        position: absolute;
        inset: 0;
    }
    .notes-title {
        font-size: clamp(2rem, 10vw, 3rem);
    }
    .bella-video-shell {
        width: min(100%, 540px);
    }
    .magnet-copy-inner {
        margin-top: 0;
    }
    .magnet-title {
        font-size: 1.1rem;
    }
    .magnet-poem {
        font-size: 1rem;
        line-height: 1.22;
    }
    .magnet-video-wrap {
        height: 360px;
    }
    .magnet-video-bottom {
        display: none;
    }
    .magnet-video-top {
        height: 100%;
    }
    .magnet-video-top video {
        height: 100%;
    }
    .nourish-wrap {
        padding: 0 0.9rem;
        gap: 1.2rem;
    }
    .nourish-video-box {
        width: min(100%, 520px);
    }
    .nourish-video-box video {
        width: 100%;
        height: 100%;
    }
    .nourish-content {
        max-width: 100%;
    }
    .nourish-label {
        font-size: 0.6rem;
    }
    .nourish-title, .nourish-subtitle {
        font-size: 0.9rem;
    }
    .nourish-body,
    .nourish-copy {
        font-size: 1rem;
    }
    .container-fluid.h-100.position-relative {
        display: flex;
        flex-direction: column;
        gap: 29px;
    }
    .bella-inspiration-copy h2 {
        font-size: 11px;
    }
    img.bella-inspiration-quote {
        width: 79%;
    }
    .orb-editorial-panel {
        border-top-width: 8px;
    }
    .orb-manifesto-copy p {
        font-size: 17px;
    }
    .orb-signature {
        font-size: 20px;
    }
    .orb-keynotes {
        padding-inline: 1rem;
    }
    .orb-keynotes-title {
        font-size: 20px;
    }
    .orb-note-card h3 {
        font-size: 1.4rem;
    }
    .orb-story-media {
        min-height: 420px;
    }
    .orb-story-copy,
    .orb-poem-copy {
        padding-inline: 1rem;
    }
    .orb-story-title,
    .orb-story-power,
    .orb-poem-title {
        letter-spacing: 0.06em;
    }
    .orb-story-body,
    .orb-story-block p,
    .orb-poem-text {
        font-size: 0.95rem;
    }
    .orb-poem-image {
        min-height: 360px;
    }
}
@media (max-width: 479.98px) {
    .notes-benefits {
        justify-content: center;
        line-height: 9px;
    }
    .notes-benefits li {
        font-size: 0.64rem;
    }
}
/* product detail page css */
.jasmine-product-page {
    max-width: 1320px;
    padding: 28px 20px 0;
}
.jasmine-product-shell {
    align-items: flex-start;
}
.jb-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: #8a7f79;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-family: 'copperplate';
}
.jb-breadcrumbs a,
.jb-breadcrumbs strong {
    color: #4d494a;
    text-decoration: none;
}
.jb-media-layout {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}
.jasmine-media-col {
    padding-right: 18px;
}
.product__media-wrapper {
    width: 100%;
    margin: 0;
}
.er-media {
    position: relative;
    display: block;
}
.er-thumb-slider-wrap {
    width: 58px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
.er-thumb-rail {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-height: 492px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 2px;
    scrollbar-width: none;
}
.er-thumb-rail::-webkit-scrollbar {
    display: none;
}
.er-thumb {
    width: 100%;
    height: 58px;
    border: 1px solid transparent;
    padding: 0;
    background: transparent;
    cursor: pointer;
    overflow: hidden;
    flex: 0 0 auto;
}
.er-thumb.active {
    border-color: #4a474a;
}
.er-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: fill;
}
.er-thumb-nav {
    width: 28px;
    height: 28px;
    border: 0;
    background: rgba(79, 72, 68, 0.08);
    color: #534d4b;
    font-size: 13px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.er-hero {
    position: relative;
    min-height: 660px;
    background: #d8ccc5;
    overflow: hidden;
}
.er-hero-img,
.er-hero-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.er-hero-img.is-bottle,
.er-hero-video.is-bottle {
    background:#f4f4f1 !important;
}
.jb-badge-stack {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    z-index: 2;
    padding: 4px;
}
.jb-badge {
    background: #be1e2d;
    color: #fff;
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.er-mobile-dots {
    display: none;
}
.jasmine-info-panel {
    background: #f3dfd9;
    padding: 24px 18px 0 0;
}
.jb-info-card {
    max-width: 578px;
    margin: 0 auto;
    padding: 8px 0 0;
}
.right-panel .product__title h1 {
    margin: 0 0 14px !important;
    color: #2e405a !important;
    font-family: "Times New Roman", Georgia, serif;
    font-size: 2rem !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    letter-spacing: 0.02em !important;
    text-align: left !important;
    text-transform: uppercase;
}
.jb-rating-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 12px;
}
.jb-stars {
    color: #9e8441;
    font-size: 28px;
    letter-spacing: 0.04em;
    line-height: 1;
}
.oke-sr-count {
    color: #414141;
    font-size: 15px;
    letter-spacing: 0;
    text-transform: none;
}
.jb-family,
.jb-notes {
    margin: 0;
    text-transform: uppercase;
}
.jb-family {
    color: #7b93a7;
    font-family: "Times New Roman", Georgia, serif;
    font-size: 18px;
    letter-spacing: 0.04em;
}
.jb-notes {
    margin-top: 18px;
    color: #7b93a7;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.03em;
}
.jb-description {
    margin-top: 12px;
}
.right-panel .product__description p {
    margin: 0;
    max-width: none;
    color: #353231;
    font-size: 16px;
    line-height: 1.45;
    text-align: left;
}
.jb-limited-note {
    margin-top: 10px;
    text-align: center;
}
.jb-limited-note h3 {
    margin: 0 0 8px;
    color: #c51d2f;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}
.jb-limited-note p {
    margin: 0;
    color: #4a4443;
    font-size: 15px;
    line-height: 1.5;
}
.jb-benefits {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin: 18px 0 16px;
    padding: 0;
    list-style: none;
}
.jb-benefits li {
    position: relative;
    color: #53464a;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    padding-left: 16px;
}
.jb-benefits li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #9e8441;
    transform: translateY(-50%);
}
.jb-size-area {
    text-align: center;
}
.jb-size-label {
    margin: 0 0 10px;
    color: #463f3f;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}
.right-panel .variant-radios {
    justify-content: center !important;
    gap: 0 !important;
    margin: 0 !important;
}
.right-panel .variant-label {
    min-width: 90px !important;
    height: 40px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 18px !important;
    border: 0 !important;
    color: #f7f7f7 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase;
}
.right-panel .variant-radios input:checked + .variant-label,
.right-panel .variant-label.active {
    background: #959581 !important;
    color: #fff !important;
    border-color: transparent !important;
}
.jb-cart-wrap {
    width: 100%;
    max-width: none;
    margin: 30px 0 22px;
}
.right-panel .product-form__submit {
    width: 100%;
    min-height: 50px;
    border: 0 !important;
    background: #959581 !important;
    color: #fff !important;
    font-size: 15px;
    font-weight: 700 !important;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    padding: 0 20px !important;
}
.right-panel .product-form__submit span {
    color: inherit;
    font: inherit;
}
.jb-accordion {
    margin-top: 0;
    border-top: 0;
}
.accordion-block {
    border-bottom: 1px solid rgba(69, 63, 64, 0.55);
    padding: 0;
}
.accordionLabel-type {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    padding: 18px 0;
    color: #2f3f5a;
    font-family: "Times New Roman", Georgia, serif;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.01em;
    text-transform: none;
    cursor: pointer;
}
.accordionLabel-summary {
    display: none;
    padding: 0 0 18px;
    color: #4a4444;
    font-size: 14px;
    line-height: 1.5;
}
.plusLabelAccprdion {
    width: 20px;
    height: 20px;
}
.jb-addons {
    padding: 26px 0 8px;
}
.jb-addons-title {
    margin: 0 0 14px;
    color: #443c3c;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
}
.jb-addon-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 180px));
    gap: 18px;
}
.jb-addon-card {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 8px;
    color: #3b3a3a;
    text-align: center;
    cursor: pointer;
}
.jb-addon-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.jb-addon-check {
    position: absolute;
    top: 12px;
    left: 12px;
    width: 16px;
    height: 16px;
    border: 1px solid #7f7572;
    background: rgba(255, 255, 255, 0.35);
    z-index: 1;
}
.jb-addon-card input:checked + .jb-addon-check {
    background: #959581;
    border-color: #959581;
}
.jb-addon-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    background: rgba(255, 255, 255, 0.55);
}
.jb-addon-name {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}
.jb-addon-price {
    color: #746a67;
    font-size: 15px;
}
.reviews-score-line .stars,
.rating-row .label span,
.review-stars {
    color: #b08d2f !important;
}
@media (max-width: 991px) {
    .jasmine-product-page {
        padding: 20px 16px 0;
    }
    .jb-media-layout {
        grid-template-columns: 1fr;
    }
    .er-thumb-slider-wrap {
        order: 2;
        width: 100%;
        flex-direction: row;
    }
    .er-thumb-rail {
        flex-direction: row;
        max-height: none;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
    }
    .er-thumb {
        width: 64px;
        height: 64px;
    }
    .jasmine-media-col {
        padding-right: 0;
    }
    .er-hero {
        min-height: 480px;
    }
    .jasmine-info-panel {
        padding: 22px 0 0;
    }
    .jb-info-card {
        max-width: none;
    }
}
@media (max-width: 767px) {
    .jb-breadcrumbs {
        flex-wrap: wrap;
        font-size: 11px;
    }
    .right-panel .product__title h1 {
        font-size: 1.15rem !important;
    }
    .jb-stars {
        font-size: 18px;
    }
    .oke-sr-count,
    .right-panel .product__description p,
    .jb-limited-note p {
        font-size: 12px;
    }
    .jb-family {
        font-size: 14px;
    }
    .jb-notes,
    .jb-benefits li,
    .jb-addon-name {
        font-size: 11px;
    }
    .jb-addon-grid {
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }
    .accordionLabel-type {
        font-size: 16px;
    }
    .right-panel .product-form__submit {
        font-size: 14px;
    }
}
/* jasmine product hard overrides */
.jasmine-product-page.container-custom {
    max-width: 1316px !important;
    width: 100% !important;
    margin-top: 68px !important;
    margin: 0 auto !important;
    padding: 22px 20px 0 !important;
    margin-top: 68px !important;
}
.jasmine-feature-strip {
    width: 100%;
    margin: 0 0 0;
    background: #93a2af;
}
.jasmine-feature-list {
    list-style: none;
    gap: 10px 18px;
    padding: 10px 18px;
}
.jasmine-feature-list li {
    position: relative;
    color: #f6eee6;
    font-family: 'copperplate';
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}
.jasmine-feature-list li::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #9b7720;
    margin-right: 12px;
    vertical-align: middle;
    box-shadow: 0 0 0 1px rgba(85, 62, 16, 0.55);
}
.jasmine-product-page .jasmine-product-shell {
    display: grid !important;
    grid-template-columns: minmax(0, 728px) minmax(0, 578px) !important;
    align-items: start !important;
    justify-content: space-between !important;
    --bs-gutter-x: 0 !important;
}
.jasmine-product-page .jasmine-media-col {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-right: 0 !important;
    display: block !important;
    justify-self: start !important;
}
.jasmine-product-page .jasmine-info-panel {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    background: transparent !important;
    padding: 8px 0 0 0 !important;
    display: block !important;
    justify-self: stretch !important;
}
.jasmine-product-page .jb-media-layout {
    display: flex !important;
    flex-direction: row-reverse !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 728px !important;
    align-items: start !important;
    margin-left: 0 !important;
}
.jasmine-product-page .product__media-wrapper,
.jasmine-product-page .er-media,
.jasmine-product-page .jb-media-layout,
.jasmine-product-page .er-hero,
.jasmine-product-page .right-panel {
    min-width: 0 !important;
}
.jasmine-product-page .product__media-wrapper,
.jasmine-product-page .er-media {
    width: 100% !important;
    max-width: none !important;
    display: block !important;
    flex: none !important;
}
.jasmine-product-page .er-thumb-slider-wrap {
    flex: 0 0 50px !important;
    width: 50px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    align-items: stretch !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.jasmine-product-page .er-thumb-rail {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    width: 50px !important;
    max-height: 596px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}
.jasmine-product-page .er-thumb {
    width: 50px !important;
    height: 100% !important;
    border: 0 !important;
    outline: 1px solid transparent !important;
    outline-offset: 0 !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.jasmine-product-page .er-thumb.active {
    outline-color: #474244 !important;
}
.jasmine-product-page .er-thumb-nav {
    display: none !important;
}
.jasmine-product-page .er-hero {
    display: block !important;
    flex: 1 1 auto !important;
    background: #f4f4f1  !important;
    overflow: hidden !important;
    position: relative !important;
}
.jasmine-product-page .er-hero-img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
}
.jasmine-product-page .er-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 46px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    /*background: rgba(252, 236, 232, 0.92) !important;*/
    color: #4b4343 !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    z-index: 4 !important;
    opacity: 1 !important;
    box-shadow: 0 10px 24px rgba(84, 70, 70, 0.08) !important;
}
.jasmine-product-page .er-prev {
    left: 14px !important;
}
.jasmine-product-page .er-next {
    right: 14px !important;
}
.jasmine-product-page .jb-info-card {
    max-width: 578px !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-top: 0 !important;
}
.jasmine-product-page .right-panel .product__title h1 {
    font-size: 30px !important;
    line-height: 0.96 !important;
    margin-bottom: 12px !important;
    letter-spacing: 0.01em !important;
    color: #2f405b !important;
}
.jasmine-product-page .jb-rating-row {
    gap: 10px !important;
    margin-bottom: 10px !important;
}
.jasmine-product-page .jb-stars {
    font-size: 25px !important;
    letter-spacing: 0.08em !important;
}
.jasmine-product-page .oke-sr-count {
    font-size: 13px !important;
}
.jasmine-product-page .jb-family {
    margin-bottom: 18px !important;
    font-size: 17px !important;
    color: #7e96ac !important;
}
.jasmine-product-page .jb-notes {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    font-size: 16px !important;
    color: #7e96ac !important;
}
.jasmine-product-page .right-panel .product__description p {
    font-size: 15px !important;
    line-height: 1.45 !important;
    color: #343030 !important;
}
.jasmine-product-page .jb-limited-note {
    margin-top: 10px !important;
}
.jasmine-product-page .jb-limited-note h3 {
    margin-bottom: 10px !important;
    font-size: 15px !important;
}
.jasmine-product-page .jb-limited-note p {
    max-width: 500px !important;
    margin: 0 auto !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}
.jasmine-product-page .jb-benefits {
    max-width: 440px !important;
    margin: 18px auto 16px !important;
    gap: 8px 16px !important;
}
.jasmine-product-page .jb-benefits li {
    font-size: 14px !important;
    letter-spacing: 0.01em !important;
}
.jasmine-product-page .jb-size-label {
    margin-bottom: 10px !important;
    font-size: 10px !important;
}
.jasmine-product-page .right-panel .variant-label {
    min-width: 90px !important;
    height: 39px !important;
    border:solid 1px  #959581!important ;
    font-size: 12px !important;
    background: #f4f4f1;
    color: #959581 !important;
}
.jasmine-product-page .jb-cart-wrap {
    margin: 30px 0 40px !important;
}
.jasmine-product-page .right-panel .product-form__submit {
    min-height: 50px !important;
    background: #959581 !important;
    font-size: 14px !important;
    letter-spacing: 0.02em !important;
}
.jasmine-product-page #variantRadios::before {
    content: none !important;
    display: none !important;
}
.jasmine-product-page .jb-accordion .accordionLabel-type {
    padding: 16px 0 15px !important;
    font-size: 17px !important;
    color: #2e405b !important;
}
.jasmine-product-page .jb-accordion .accordion-block {
    border-bottom: 1px solid rgba(83, 75, 75, 0.55) !important;
}
.jasmine-product-page .jb-accordion .plusLabelAccprdion {
    width: 20px !important;
    height: 20px !important;
    transform: translateY(-1px) !important;
}
.jasmine-product-page .jb-addon-grid {
    grid-template-columns: repeat(2, minmax(0, 180px)) !important;
    gap: 18px !important;
    justify-content: start !important;
}
.jasmine-product-page .jb-addon-card img {
    width: 180px !important;
    height: 180px !important;
    background: rgba(255, 255, 255, 0.75) !important;
}
.jasmine-product-page .jb-addon-card {
    justify-items: center !important;
    gap: 6px !important;
}
.jasmine-product-page .jb-addons {
    padding-top: 26px !important;
}
.jasmine-product-page .jb-addons-title {
    margin-bottom: 12px !important;
    font-size: 14px !important;
}
.jasmine-product-page .jb-addon-name {
    font-size: 13px !important;
    line-height: 1.2 !important;
}
.jasmine-product-page .jb-addon-price {
    font-size: 14px !important;
}
@media (max-width: 991px) {
    .jasmine-feature-list {
        gap: 8px 14px;
        padding: 10px 14px;
    }
    .jasmine-feature-list li {
        font-size: 13px;
    }
    .jasmine-product-page.container-custom {
        max-width: 100% !important;
        padding: 18px 16px 0 !important;
    }
    .jasmine-product-page .jasmine-product-shell {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }
    .jasmine-product-page .jasmine-media-col,
    .jasmine-product-page .jasmine-info-panel {
        width: 100% !important;
        max-width: 100% !important;
    }
    .jasmine-product-page .jasmine-info-panel {
        padding: 8px 0 0 !important;
    }
    .jasmine-product-page .jb-media-layout {
        display: flex !important;
        flex-direction: column !important;
        max-width: 100% !important;
    }
    .jasmine-product-page .er-thumb-slider-wrap {
        order: 2 !important;
        width: 100% !important;
        flex: none !important;
        display: flex !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        overflow: hidden !important;
    }
    .jasmine-product-page .er-thumb-rail {
        flex-direction: row !important;
        width: 100% !important;
        max-height: none !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        gap: 12px !important;
        padding-bottom: 4px !important;
        display: none!important;
    }
    .jasmine-product-page .er-thumb {
        width: 56px !important;
        height: 56px !important;
        flex: 0 0 auto !important;
    }
    .jasmine-product-page .er-hero {
        height: 100% !important;
        border-radius: 0 !important;
    }
    .jasmine-product-page .er-arrow {
        width: 38px !important;
        height: 42px !important;
        font-size: 17px !important;
    }
    .jasmine-product-page .jb-info-card {
        max-width: 100% !important;
    }
    .jasmine-product-page .right-panel .product__title h1 {
        font-size: 1.95rem !important;
        line-height: 1.02 !important;
        margin-bottom: 10px !important;
    }
    .jasmine-product-page .jb-rating-row {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .jasmine-product-page .jb-family {
        font-size: 14px !important;
        margin-bottom: 14px !important;
    }
    .jasmine-product-page .jb-notes {
        font-size: 12px !important;
        margin-bottom: 10px !important;
    }
    .jasmine-product-page .right-panel .product__description p {
        font-size: 12px !important;
        line-height: 1.55 !important;
    }
    .jasmine-product-page .jb-benefits {
        max-width: 100% !important;
        gap: 8px 14px !important;
        margin: 16px auto 14px !important;
    }
    .jasmine-product-page .jb-cart-wrap {
        margin: 22px 0 26px !important;
    }
    .jasmine-product-page .right-panel .product-form__submit {
        min-height: 48px !important;
        font-size: 13px !important;
    }
    .jasmine-product-page .jb-accordion .accordionLabel-type {
        font-size: 15px !important;
        padding: 14px 0 !important;
    }
    .jasmine-product-page .jb-addon-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
    .jasmine-product-page .jb-addon-card img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }
    .reviews-section {
        padding: 2rem 1.2rem 1.5rem !important;
    }
    .reviews-summary {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
        margin-left: 0 !important;
    }
    .reviews-actions {
        flex-wrap: wrap !important;
        gap: 10px !important;
    }
    .reviews-count {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
}
@media (max-width: 767px) {
    .col-md-12.text-center img 
    {
        width: 100%;
    }
    .jasmine-feature-strip {
        margin-top: 0;
    }
    .jasmine-feature-list {
        justify-content: flex-start !important;
        gap: 6px 12px;
        padding: 10px 12px;
    }
    .jasmine-feature-list li {
        font-size: 11px;
        white-space: normal;
    }
    .jasmine-feature-list li::before {
        margin-right: 8px;
        width: 6px;
        height: 6px;
    }
    .jasmine-product-page.container-custom {
        padding: 14px 12px 0 !important;
    }
    .jasmine-product-page .jb-breadcrumbs {
        gap: 6px !important;
        margin-bottom: 5px !important;
        font-size: 10px !important;
    }
    .jasmine-product-page .jb-badge-stack {
        gap: 3px !important;
        padding: 3px !important;
    }
    .jasmine-product-page .jb-badge {
        padding: 6px 12px !important;
        font-size: 11px !important;
    }
    .jasmine-product-page .er-hero {
        height: 100% !important;
    }
    .jasmine-product-page .er-arrow {
        width: 34px !important;
        height: 38px !important;
        font-size: 16px !important;
    }
    .jasmine-product-page .er-thumb {
        width: 48px !important;
        height: 48px !important;
    }
    .jasmine-product-page .right-panel .product__title h1 {
        font-size: 1.45rem !important;
    }
    .jasmine-product-page .jb-stars {
        font-size: 22px !important;
    }
    .jasmine-product-page .oke-sr-count {
        font-size: 16px !important;
    }
    .jasmine-product-page .jb-family {
        font-size: 15px !important;
    }
    .jasmine-product-page .jb-notes,
    .jasmine-product-page .right-panel .product__description p,
    .jasmine-product-page .jb-limited-note p {
        font-size: 13px !important;
    }
    .jasmine-product-page .jb-limited-note h3,
    .jasmine-product-page .jb-benefits li {
        font-size: 14px !important;
    }
    .jasmine-product-page .jb-benefits {
        justify-content: center !important;
    }
    .jasmine-product-page .jb-size-label {
        font-size: 10px !important;
    }
    .jasmine-product-page .right-panel .variant-label {
        min-width: 82px !important;
        height: 36px !important;
        font-size: 11px !important;
    }
    .jasmine-product-page .right-panel .product-form__submit {
        min-height: 44px !important;
        font-size: 12px !important;
    }
    .jasmine-product-page .jb-accordion .accordionLabel-type {
        font-size: 14px !important;
    }
    .jasmine-product-page .jb-addon-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 12px !important;
    }
    .jasmine-product-page .jb-addon-check {
        top: 8px !important;
        left: 8px !important;
    }
    .jasmine-product-page .jb-addon-name,
    .jasmine-product-page .jb-addon-price {
        font-size: 11px !important;
    }
    .reviews-title {
        font-size: 1.15rem !important;
    }
    .rating-row {
        grid-template-columns: 26px minmax(0, 1fr) 28px !important;
    }
    .reviews-media-shell {
        padding: 0 8px !important;
    }
    .review-card {
        padding: 1rem !important;
    }
}
@media (max-width: 480px) {
    .jasmine-feature-list {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        align-items: start;
    }
    .jasmine-feature-list li {
        font-size: 10px;
    }
    body {
        overflow-x: hidden !important;
    }
    .jasmine-product-page.container-custom {
        padding: 12px 10px 0 !important;
    }
    .jasmine-product-page .er-hero {
        height: 100% !important;
    }
    .jasmine-product-page .jb-benefits {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 6px !important;
    }
    .jasmine-product-page .jb-addon-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
    .jasmine-product-page .right-panel .product__title h1 {
        font-size: 25px !important;
    }
    .reviews-section {
        padding: 1.5rem 0.9rem 1.25rem !important;
    }
}
.jasmine-product-page .jasmine-info-panel {
    padding-left: 22px !important;
}
.jasmine-product-page .jb-cart-wrap {
    margin: 30px 0 40px !important;
    display: block !important;
    font-family: 'copperplate';
}
.jb-addon-grid {
    font-family: 'copperplate';
}
@media (max-width: 991px) {
    .jasmine-product-page .jasmine-info-panel {
        padding-left: 0px !important;
    }
}
.cat-2 .img-container img ,.cat-4 .img-container img{
    max-height: 400px !important;
}
/* Hide the left and right navigation arrows */
.carousel-control-prev,
#productCarousel .carousel-control-next {
    /*display: none !important;*/
}
/* Hide the bottom dot indicators */
#productCarousel .carousel-indicators {
    /*display: none !important;*/
}
.splide__pagination__page {
    display: none !important;
}
@media (max-width: 700px) {
    .raudha-site-footer a {
        font-size: 11px;
    }
}
.mb-bottom{margin-top: 100%;}
@media (max-width: 700px) {
    .raudha-site-footer .shop-col {
        width: 40%;
        max-width: 40%;
    }
    .raudha-site-footer .discover-col {
        width: 60%;
        max-width: 60%;; padding:0px;
    }
}
.index-scent-intro h2,.index-scent-intro p,.index-scent-intro span{
    color:#fff !important;
}
.home nav.navbar {
    background-color: transparent !important;
}
.mr-60{
    margin-right:40px;
}
.header-pass{
    margin-top: 76px !important;
}
/* Container sizing frame */
.addon-carousel-container {
    position: relative;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 20px;
}
/* Hidden container window boundary */
.addon-carousel-viewport {
    width: 100%;
    overflow: hidden;
    border-radius: 4px; /* Matches card frame structure */
}
/* Continuous strip holding elements side-by-side */
.addon-carousel-slider-track {
    display: flex;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    width: 100%;
}
/* Individual slide containing exactly 1 card */
.addon-carousel-slide-item {
    min-width: 100%;
    width: 100%;
    flex-shrink: 0;
    box-sizing: border-box;
}
/* Absolute navigation positions overlayed relative to the track window boundary */
.addon-arrow-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.6);
    color: #0b1a30;
    border: 1px solid #eaeaea;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: all 0.2s ease;
}
.addon-arrow-btn:hover {
    background: #0b1a30;
    color: #ffffff;
    border-color: #0b1a30;
}
.addon-arrow-left {
    left: -16px;
}
.addon-arrow-right {
    right: -16px;
}
.img-zoom-modal {
    position: fixed;
    z-index: 99999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95);
    display: flex;
    align-items: center;
    justify-content: center;
}
.img-zoom-close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
    z-index: 100000;
}
.img-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: auto;
}
.img-zoom-element {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform 0.2s ease;
    transform-origin: center center;
}
/* ==========================================================================
   Home Page Hero Slider Pagination Fix
   ========================================================================== */
/* 1. Prevent the core style sheet or container limits from hiding the dots row */
#heroSlider.splide:not(.is-overflow) .splide__pagination,
#heroSlider .splide__pagination {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}
/* 2. Absolute layout mapping inside your hero block with bottom padding */
#heroSlider .splide__pagination {
    position: absolute !important;
    bottom: 30px !important; /* Adjust this value to raise or lower the dots inside the banner */
    left: 9% !important;
    transform: translateX(-50%) !important;
    z-index: 99 !important; /* Ensures dots float safely above video/image stack tracks */
    pointer-events: auto !important; /* RESTORES CLICKS so navigation works */
    margin: 0 !important;
    padding: 0 5px !important;
    width: auto !important;
    gap: 12px !important; /* Space between dots */
}
/* 3. Ensure the list items behave well on mobile layouts */
#heroSlider .splide__pagination li {
    display: inline-block !important;
    pointer-events: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}
/* 4. Dots design and color background visibility definitions */
#heroSlider .splide__pagination__page {
    background: rgba(255, 255, 255, 0.4) !important; /* Semi-transparent white for crisp contrast over imagery */
    border: none !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: block !important;
    height: 5px !important;
    width: 5px !important;
    opacity: 1 !important;
    padding: 0 !important;
    transition: transform 0.25s ease, background-color 0.25s ease !important;
}
/* 5. Highlight state when slide is active */
#heroSlider .splide__pagination__page.is-active {
    background: #ffffff !important; /* Solid bright white */
    transform: scale(1.35) !important; /* Grows smoothly when selected */
    opacity: 1 !important;
}
@media (max-width: 700px) {
    #heroSlider .splide__pagination {
        left: 24% !important;
    }
}
.account-font{
    font-size: 1rem !important;
}
.fragrance-content p,.fragrance-content a{
    text-decoration: none !important;
    color:#fff !important;
    margin-bottom: 149px;
}
.btn- {
    color: #fff !important;
    background: #7e7e6a;
    padding: 5px 15px;
    border-radius: 5px;
}
.btn-:hover {
    color:#959581 !important;
}
.sub-cat-font{
    font-size: 13px !important;
}
.welcome-modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(15, 23, 42, 0.75); /* Rich Slate-900 tint for perfect readability */
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 999999;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
    visibility 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
/* Luxury Floating Glass Card container */
.welcome-modal-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 24px;
    padding: 3.5rem 2.5rem;
    max-width: 480px;
    width: 90%;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.6) !important;
    transform: scale(1);
    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
/* Decorative Top Accent Circle */
.welcome-icon-wrapper {
    width: 64px;
    height: 64px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}
/* Elegant Text Styling */
.modal-title-text {
    font-size: 2.25rem;
    letter-spacing: -0.025em;
    font-weight: 800 !important;
}
.modal-subtitle-text {
    color: #94a3b8; /* Calming silver-gray slate text */
    font-size: 1rem;
    line-height: 1.5;
}
.separator-line {
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #38bdf8, #ec4899); /* Sleek blue-to-pink gradient track */
    border-radius: 2px;
}
/* High-Contrast Interactive Buttons */
.btn-gender-select {
    min-width: 160px;
    font-weight: 600;
    font-size: 1.05rem;
    color: #ffffff !important;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.05);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
/* Male Interaction Styling */
.btn-male-select {
    border-color: rgba(56, 189, 248, 0.4); /* Sky blue tint */
    box-shadow: inset 0 0 12px rgba(56, 189, 248, 0.1);
}
.btn-male-select:hover {
    background-color: #959581 !important; /* Rich solid blue highlight */
    border-color: #959581;
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(14, 165, 233, 0.4);
}
/* Female Interaction Styling */
.btn-female-select {
    border-color: rgba(244, 114, 182, 0.4); /* Rose pink tint */
    box-shadow: inset 0 0 12px rgba(244, 114, 182, 0.1);
}
.btn-female-select:hover {
    background-color: #db2777 !important; /* Rich solid pink highlight */
    border-color: #db2777;
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(219, 39, 119, 0.4);
}
/* Premium Out-Animation Effects via Utilities */
.popup-hidden {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
.popup-hidden .welcome-modal-card {
    transform: scale(0.9) translateY(15px);
}
:root {
    --primary: #9b1c2c;
}
.nav-top {
    background: #fff;
    padding:  0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-bottom: 1px solid #ddd;
    text-align: center;
}
.nav-top a {
    margin: 0 15px;
    color: #333;
    text-decoration: none;
}
.nav-top a.active {
    font-weight: 600;
    color: var(--primary);
}
.hero-top {
    width: 100%;
    height: 700px;
    object-fit: cover;
}
.bella-title {
    font-family: 'Playfair Display', serif;
    font-size: 3.2rem;
    text-align: center;
    margin: 10px 0 10px;
    font-weight: 500;
}
.main-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 15px;
}
.story-content {
    display: grid;
    grid-template-columns: 240px 1fr 240px;
    gap: 40px;
}
.side-column {
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.side-image {
    width: 150px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}
/* Staggered / Random Look */
.left-column .side-image:nth-child(2) { margin-top: 70px; }
.left-column .side-image:nth-child(3) { margin-top: 40px; }
.right-column .side-image:nth-child(1) { margin-top: 50px; }
.right-column .side-image:nth-child(2) { margin-top: 30px; }
.right-column .side-image:nth-child(3) { margin-top: 60px; }
.center-text {
    font-size: 1.05rem;
}
.center-text p {
    margin-bottom: 1.6rem;
}
.signature {
    font-family: 'Playfair Display', serif;
    font-size: 2.6rem;
    text-align: center;
    margin: 20px 0 20px;
    color: #222;
}
/* Bottom Slider */
.bottom-section {
    /*padding: 40px 0 70px;*/
}
.slider-container {
    position: relative;
}
.bottom-slider {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 10px 0;
    scrollbar-width: none;
}
.bottom-slider::-webkit-scrollbar { display: none; }
.slider-item {
    flex: 0 0 280px;
    height: 280px;
    /*border-radius: 12px;*/
    overflow: hidden;
    /*box-shadow: 0 8px 25px rgba(0,0,0,0.12);*/
}
.slider-item img {
    width: 100%;
    /*height: 100%;*/
    object-fit: contain;
    /*transition: transform 0.4s ease;*/
}
.slider-item:hover img {
    /*transform: scale(1.06);*/
}
.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.95);
    border: none;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 5px 15px rgba(0,0,0,0.15);
}
.slider-arrow.left { left: 10px; }
.slider-arrow.right { right: 10px; }
.footer-red {
    background: var(--primary);
    color: white;
    padding: 60px 20px 40px;
    text-align: center;
}
/* Responsive */
@media (max-width: 992px) {
    .story-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .side-column {
        flex-direction: row;
        gap: 15px;
        overflow-x: auto;
    }
    .left-column .side-image, .right-column .side-image {
        margin-top: 0 !important;
        flex: 0 0 280px;
    }
    .bella-title { font-size: 2.6rem; }
}
@media (max-width: 576px) {
    .hero-top { height: 100%; }
    .slider-item { flex: 0 0 240px; height: 240px; }
}
/* Fullscreen Media Modal Styles */
.media-modal {
    position: fixed;
    z-index: 99999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 1);
    transition: background-color 0.3s ease; /* For swipe-to-close fade */
    overflow: hidden;
    touch-action: none; /* CRITICAL: Stops browser from interfering with gestures */
}
.media-close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #fff;
    font-size: 45px;
    font-weight: bold;
    cursor: pointer;
    z-index: 100000;
    transition: 0.2s;
}
.media-close:hover {
    color: #ccc;
}
.media-content-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
/* Added dynamically via JS for smooth snapping back into place */
.smooth-snap {
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
#mediaZoomImg, #mediaZoomVid {
    max-width: 95%;
    max-height: 95%;
    transform-origin: center center;
    will-change: transform; /* Hardware acceleration */
}
.accordion-item {
    margin-bottom: 10px;
}
.menu-category {
    cursor: pointer;
    position: relative;
    padding-right: 20px;
}
/* Optional: Adds a little indicator arrow that rotates */
.menu-category::after {
    content: '+';
    position: absolute;
    right: 20px;
    transition: transform 0.2s ease;
}
.accordion-item.active .menu-category::after {
    transform: rotate(180deg);
}
/* Hides content by default and handles smooth transition */
.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}
.accordion-item.active .accordion-content {
    max-height: 500px; /* Adjust if you have a massive list of categories */
}
.banner-btn-home{
 width: 75% !important;
 background: #959581bd !important;
 color: #fff !important;
 font-weight: 600 !important;
 text-transform: uppercase;
 padding: 3px 0 !important;
 margin-bottom: 25px;
 font-size: 12px;
}
.pagination-container {
    margin-top: 50px;
    margin-bottom: 80px;
    font-size: 14px;
}
.page-link-custom {
    text-decoration: none;
    color: #212121;
    margin: 0 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.page-active {
    border-bottom: 1px solid #212121;
    font-weight: bold;
}
.filter-section {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 30px;
}
.filter-trigger {
    border: 0;
    background: transparent;
    padding: 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #26242a;
    cursor: pointer;
}
.filters-overlay {
    position: fixed;
    inset: 0;
    background: rgba(19, 16, 20, 0.25);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
    z-index: 1040;
}
.filters-overlay.is-open {
    opacity: 1;
    visibility: visible;
}
.filters-drawer {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: min(92vw, 380px);
    background: #e2d2cd;
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    box-shadow: 10px 0 26px rgba(0, 0, 0, 0.18);
}
.filters-drawer.is-open {
    transform: translateX(0);
}
.filters-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 37px;
    border-bottom: 1px solid rgba(52, 46, 49, 0.6);
}
.filters-drawer-header h2 {
    margin: 0;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #4f4a4d;
    font-weight: 600;
}
.filters-close {
    border: 0;
    background: transparent;
    color: #6c6668;
    font-size: 33px;
    line-height: 1;
    cursor: pointer;
}
.filters-group-list {
    padding: 0 30px;
}
.filters-group-item {
    border-bottom: 1px solid rgba(52, 46, 49, 0.6);
}
.filters-group {
    width: 100%;
    border: none;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0 0px;
    font-size: 15px;
    text-transform: uppercase;
    color: #4f4a4d;
    font-family: "Crimson Pro", serif;
    font-weight: 600;
    letter-spacing: 0.8px;
    cursor: pointer;
}
.filters-group-title {
    line-height: 1.2;
}
.filters-icon-box {
    width: 52px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 52px;
}
.filters-icon {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #4f4a4d;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform 0.25s ease;
}
.filters-group-item.is-open .filters-icon {
    transform: rotate(180deg);
}
.filters-options {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s ease;
}
.filter-option {
    width: 100%;
    border: 0;
    background: transparent;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 9px 0;
    color: #4f4a4d;
    font-size: 15px;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
}
.filter-check {
    width: 20px;
    height: 20px;
    border: 1px solid #928783;
    display: inline-block;
    flex: 0 0 20px;
}
.filter-option.is-selected .filter-check {
    background: #867a74;
    box-shadow: inset 0 0 0 3px #e2d2cd;
}
.filters-footer {
    margin-top: auto;
    padding: 24px 28px 18px;
}
.filters-view-items {
    width: 100%;
    border: 0;
    background: #e9dfda;
    color: #a31d37;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 14px;
    font-weight: 700;
    padding: 16px 14px;
    cursor: pointer;
}
@media (max-width: 768px) {
    .filters-drawer {
        width: 100vw;
    }
    .filters-drawer-header h2 {
        font-size: 14px;
    }
    .filters-group {
        font-size: 14px;
    }
    .filters-view-items {
        font-size: 13px;
    }
    .filter-option {
        font-size: 13px;
    }
}
#scrollToTopBtn {
    display: none; /* Hidden by default, shown via JS on scroll */
    position: fixed;
    bottom: 70px;
    right: 40px;
    z-index: 999;
    border: none;
    outline: none;
    background-color: #959581; /* Color matched to your reference image */
    color: white;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 50%; /* Makes the button a perfect circle */
    font-size: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
    transition: background-color 0.3s, transform 0.2s, opacity 0.3s;
    opacity: 0; /* Starts transparent for fade-in effect */
}
/* Hover effect */
#scrollToTopBtn:hover {
    background-color: #9c6c51; /* Slightly darker shade on hover */
    transform: scale(1.05); /* Slight pop effect */
}
/* Class added by JS to fade in */
#scrollToTopBtn.show {
    display: flex;
    opacity: 1;
}
.product-card .bi::before, .product-card [class^="bi-"]::before, .product-card [class*=" bi-"]::before {
    vertical-align: -0.225em !important;
}
#scrollToTopBtn {
    bottom: 20px;
    right: 40px;
}
/* Floating Action Button */
.chat-widget-btn {
    position: fixed;
    bottom: 85px;
    right: 40px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #949480; /* Primary Bootstrap Blue */
    color: white;
    border: none;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 999;
    transition: transform 0.2s ease, background-color 0.2s ease;
}
.chat-widget-btn:hover {
    transform: scale(1.05);
    background-color: #6c6c5e;
}
/* Popup Chat Box */
.chat-widget-popup {
    position: fixed;
    bottom: 140px;
    right: 40px;
    width: 380px;
    max-height: 400px;
    height: calc(100vh - 120px);
    background: white;
    border-radius: 16px;
    overflow: hidden;
    z-index: 999;
    display: flex;
    flex-direction: column;
    opacity: 0;
    transform: translateY(20px) scale(0.95);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
}
/* Active State for Popup */
.chat-widget-popup.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}
/* Chat Body Scroll Area */
.chat-widget-body {
    flex-grow: 1;
    overflow-y: auto;
    background-color: #f8f9fa;
    padding: 15px;
    scroll-behavior: smooth;
}
/* Custom Scrollbar for a clean look */
.chat-widget-body::-webkit-scrollbar {
    width: 6px;
}
.chat-widget-body::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2);
    border-radius: 10px;
}
/* Mobile Responsiveness */
@media (max-width: 576px) {
    #scrollToTopBtn {
        bottom: 40px;
        right: 20px;
    }
    .chat-widget-popup {
       width: 100%;
       height: 85%;
       bottom: 0;
       right: 0px;
       border-radius: 0;
       max-height: 100vh;
   }
   .chat-widget-btn {
      bottom: 110px;
      right: 20px;
  }
}
#category-slider{
    overflow: hidden;
}
.bg-primary,.btn-primary  {
    background-color: #92927e !important;
}
/* Target the placeholder text in all inputs and textareas */
input::placeholder, 
textarea::placeholder {
    color: #000000a3 !important;
    opacity: 1 !important; /* Overrides Bootstrap's default transparent placeholders */
}
/*video css will start from here*/
/* Smooth transitions for the video zoom gestures */
#videoHeroWrapper video {
    transition: transform 0.1s ease-out; 
    transform-origin: center center;
}
/* Close Button Styling */
#closeVideoBtn {
    position: absolute;
    top: 25px;
    right: 25px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: none; /* Hidden by default until fullscreen is active */
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 2147483647; /* Keep it on the very top layer */
    transition: background 0.3s ease;
}
#closeVideoBtn:hover {
    background: rgba(255, 255, 255, 0.4);
}
/* Pure Black Absolute Fullscreen Window */
#videoHeroWrapper.is-fullscreen {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2147483647 !important; /* Maximum browser depth value to clear all site menus */
    background: #000000 !important; /* Pure black backdrop */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
/* CRITICAL: Hide EVERYTHING inside the hero section 
  EXCEPT the video element and the close button 
*/
#videoHeroWrapper.is-fullscreen > *:not(video):not(#closeVideoBtn) {
    display: none !important;
}
/* Force show the close button when active */
#videoHeroWrapper.is-fullscreen #closeVideoBtn {
    display: flex !important;
}
/* Constrain the video layout to the viewport container cleanly */
#videoHeroWrapper.is-fullscreen video {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important; /* letterboxes the video cleanly without cropping or stretching */
}
/* Ensure Bootstrap carousel images are uniform and clickable */
.slider-img {
    height: 400px; /* Adjust this to fit your design */
    object-fit: cover;
    cursor: pointer;
}
/* Fullscreen Lightbox Container */
.lightbox-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: #000000 !important;
    z-index: 2147483647 !important; /* Covers absolutely everything */
    display: none; 
    justify-content: center;
    align-items: center;
    overflow: hidden;
    touch-action: none; /* Stops browser pull-to-refresh or native scrolling */
}
/* When JS adds this class, the lightbox appears */
.lightbox-overlay.is-active {
    display: flex !important;
}
/* Lightbox Image styling & zoom transition */
.lightbox-overlay img {
    max-width: 100vw;
    max-height: 100vh;
    object-fit: contain;
    transition: transform 0.1s ease-out;
    transform-origin: center center;
}
/* Close Button */
.lightbox-close {
    position: absolute;
    top: 25px;
    right: 25px;
    background: rgba(255, 255, 255, 0.15);
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    z-index: 2147483648;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background 0.3s ease;
}
.lightbox-close:hover {
    background: rgba(255, 255, 255, 0.3);
}
@media (max-width: 600px) {
    .bottom-section span.carousel-control-next-icon {
        margin-bottom: 0px !important;
    }
}
.peek-slider-wrapper {
    position: relative;
    overflow: hidden; /* Hides the arrows from breaking the layout */
}
/* The Scrolling Container */
.peek-slider {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 15px; /* Space between images */
    padding-right: 15%; /* Ensures you can scroll fully to the last image */
    scrollbar-width: none; /* Hides scrollbar in Firefox */
    scroll-behavior: smooth;
}
/* Hides scrollbar in Chrome/Safari/Edge */
.peek-slider::-webkit-scrollbar {
    display: none; 
}
/* Individual Slide */
.peek-item {
    /* THIS IS THE MAGIC: 85% width creates the peek effect */
    flex: 0 0 100%; 
    scroll-snap-align: start; /* Snaps perfectly into place */
}
.peek-item img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 8px; /* Optional: rounds the corners slightly for a modern look */
    cursor: pointer;
}
/* Custom Navigation Arrows */
.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.8);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}
.arrow-left { left: 10px; }
.arrow-right { right: 10px; } 
/* Modern Checkout CSS Variables */
:root {
    --chk-primary: #000000;
    --chk-border: #dee2e6;
    --chk-bg: #f8f9fa;
    --chk-text-main: #212529;
    --chk-text-muted: #6c757d;
    --chk-radius: 12px;
}
.checkout-main-row {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: var(--chk-text-main);
}
/* Section Headers */
.checkout-section-header {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
    letter-spacing: -0.02em;
}
/* Form Inputs */
.form-control, .form-select {
    border-radius: 8px;
    border: 1px solid var(--chk-border);
    padding: 0.875rem 1rem;
    font-size: 0.95rem;
    box-shadow: none;
    transition: all 0.2s ease-in-out;
}
.form-control:focus, .form-select:focus {
    border-color: var(--chk-primary);
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
}
.form-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--chk-text-main);
    margin-bottom: 0.4rem;
}
/* Right Sidebar Sticky Container */
.checkout-sidebar {
    background-color: var(--chk-bg);
    padding: 2rem;
    border-radius: var(--chk-radius);
    position: sticky;
    top: 2rem;
    border: 1px solid var(--chk-border);
}
/* Stacked Payment Method Cards */
.payment-method-card {
    display: flex;
    align-items: center;
    padding: 1rem 1.25rem;
    border: 1px solid var(--chk-border);
    border-radius: 8px;
    margin-bottom: 0.75rem;
    background: #ffffff;
    cursor: pointer;
    transition: all 0.2s ease;
}
.payment-method-card:hover {
    border-color: #adb5bd;
}
/* Hide default radio, use CSS accent or custom */
.payment-method-card input[type="radio"] {
    width: 18px;
    height: 18px;
    margin-right: 1rem;
    accent-color: var(--chk-primary);
    cursor: pointer;
}
/* Active Card State */
.payment-method-card:has(input[type="radio"]:checked) {
    border-color: var(--chk-primary);
    background-color: #f0f4f8; /* Very subtle highlight */
    box-shadow: inset 0 0 0 1px var(--chk-primary);
}
.payment-title {
    font-size: 0.95rem;
    font-weight: 700;
    display: block;
    margin-bottom: 0.1rem;
}
.payment-subtitle {
    font-size: 0.75rem;
    color: var(--chk-text-muted);
    display: block;
}
/* Order Summary Item Styles */
.order-item {
    display: flex;
    gap: 1.25rem;
    margin-bottom: 1.5rem;
    align-items: center;
}
.order-item-media {
    position: relative;
    width: 64px;
    height: 64px;
    flex-shrink: 0;
}
.order-item-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0.1);
    background: #fff;
}
.order-item-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    background: rgba(114, 114, 114, 0.9);
    color: white;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
}
.border-checkout {
    border-top: 1px solid var(--chk-border);
    margin: 1.5rem 0;
}
/* Primary Button */
.btn-checkout-primary {
    background-color: var(--chk-primary);
    color: #ffffff;
    border-radius: 8px;
    transition: transform 0.2s, box-shadow 0.2s;
    font-size: 1.05rem;
    letter-spacing: 0.5px;
}
.btn-checkout-primary:hover {
    background-color: #333333;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    color: #ffffff;
}
.search-width{
    width:60%;
}
@media (max-width: 600px) {
    .search-width{
        width:100%;
    }
    .signature {
        /*margin-top: 300px !important;*/
    }
}
@media (min-width: 800px) and (max-width: 1500px) {
    .hideOnScreen{display:none;}
    .nav-link {
        margin: 0px 1px; 
    }  
}
#search-input::placeholder {
  color: white !important   ;
  opacity: 1;  
}
.slick-dotted.slick-slider {
    margin-bottom:  0px !important; 
}
body.header-scroll-active:not(.header-scroll-hidden) nav.navbar .d-flex.align-items-center.gap-3 a{
    color: #000 !important;
}


.slick-dots li button 
 {
    display: none !important;
 }