/* ============ Raisha Cosmetics - Custom Design ============ */
:root {
    --rsh-pink: #E91E63;
    --rsh-pink-dark: #C2185B;
    --rsh-pink-light: #FCE4EC;
    --rsh-navy: #1A1A2E;
    --rsh-navy-light: #26264A;
    --rsh-white: #FFFFFF;
    --rsh-gray: #F7F7F9;
    --rsh-gray-2: #E8E8EF;
    --rsh-text: #3D3D4E;
    --rsh-green: #25D366;
    --rsh-yellow: #FFC107;
    --rsh-radius: 14px;
    --rsh-shadow: 0 6px 24px rgba(26, 26, 46, 0.08);
    --rsh-font: 'Poppins', 'Hind Siliguri', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Reset theme interference */
html, body { margin: 0 !important; padding: 0 !important; }
body {
    font-family: var(--rsh-font);
    color: var(--rsh-text);
    background: var(--rsh-white);
    overflow-x: hidden;
}
body .wp-site-blocks { padding: 0 !important; }
.wp-site-blocks > * { max-width: none !important; }
.editor-styles-wrapper { font-family: var(--rsh-font); }

.rsh-container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 16px; box-sizing: border-box; }
img { max-width: 100%; }
a { text-decoration: none; color: inherit; }

/* ============ Top bar ============ */
.rsh-topbar-wrap {
    background: var(--rsh-navy);
    color: #fff;
    font-size: 13px;
    padding: 7px 0;
}
.rsh-topbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.rsh-marquee { color: #FFD8E4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rsh-marquee strong { color: var(--rsh-yellow); }
.rsh-topbar-right { display: flex; gap: 18px; align-items: center; white-space: nowrap; }
.rsh-topbar-right a { color: #fff; transition: color .2s; }
.rsh-topbar-right a:hover { color: var(--rsh-pink); }

/* ============ Header ============ */
.rsh-header {
    background: var(--rsh-white);
    box-shadow: 0 2px 14px rgba(26, 26, 46, 0.07);
    position: sticky;
    top: 0;
    z-index: 999;
}
.rsh-header-inner { display: flex; align-items: center; gap: 18px; padding: 12px 16px; }
.rsh-logo a { display: flex; align-items: center; gap: 10px; }
.rsh-logo-img { height: 46px; width: auto; }
.rsh-logo-text { font-size: 24px; font-weight: 800; color: var(--rsh-navy); letter-spacing: -.5px; }
.rsh-logo-text span { color: var(--rsh-pink); }
.rsh-search { flex: 1; min-width: 200px; }
.rsh-search-form {
    display: flex;
    border: 2px solid var(--rsh-pink);
    border-radius: 999px;
    overflow: hidden;
    background: var(--rsh-white);
}
.rsh-search-form input[type="search"] {
    flex: 1;
    border: none;
    outline: none;
    padding: 10px 18px;
    font-size: 14px;
    font-family: var(--rsh-font);
    background: transparent;
}
.rsh-search-form button {
    background: var(--rsh-pink);
    color: #fff;
    border: none;
    padding: 0 20px;
    cursor: pointer;
    font-size: 15px;
}
.rsh-search-form button:hover { background: var(--rsh-pink-dark); }

.rsh-header-actions { display: flex; align-items: center; gap: 10px; }
.rsh-btn-offer {
    background: var(--rsh-pink);
    color: #fff;
    padding: 9px 16px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
}
.rsh-btn-offer:hover { background: var(--rsh-pink-dark); }
.rsh-btn-wa {
    background: var(--rsh-green);
    color: #fff;
    padding: 9px 16px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 13px;
    display: inline-block;
}
.rsh-btn-wa:hover { filter: brightness(.95); }
.rsh-icon-link { position: relative; display: flex; align-items: center; gap: 6px; color: var(--rsh-navy); font-weight: 600; }
.rsh-icon-link .rsh-ico { font-size: 22px; }
.rsh-cart-count {
    position: absolute;
    top: -6px;
    right: -8px;
    background: var(--rsh-pink);
    color: #fff;
    font-size: 11px;
    min-width: 17px;
    height: 17px;
    line-height: 17px;
    text-align: center;
    border-radius: 999px;
    padding: 0 4px;
}
.rsh-cart-total { font-size: 13px; color: var(--rsh-pink-dark); }

.rsh-burger { display: none; background: none; border: none; cursor: pointer; padding: 8px; }
.rsh-burger span { display: block; width: 24px; height: 3px; background: var(--rsh-navy); margin: 5px 0; border-radius: 3px; }

/* ============ Nav ============ */
.rsh-nav {
    background: var(--rsh-pink);
    color: #fff;
    border-top: 3px solid var(--rsh-navy);
}
.rsh-nav-inner { display: flex; align-items: stretch; min-height: 46px; }
.rsh-cat-dropdown { position: relative; }
.rsh-cat-trigger {
    background: var(--rsh-navy);
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    padding: 0 24px;
    height: 46px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.rsh-cat-trigger:hover { background: var(--rsh-navy-light); }
.rsh-cat-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: var(--rsh-white);
    min-width: 260px;
    box-shadow: var(--rsh-shadow);
    border-radius: 0 0 12px 12px;
    padding: 8px 0;
    z-index: 998;
    border-top: 3px solid var(--rsh-pink);
    list-style: none;
    margin: 0;
}
.rsh-cat-dropdown:hover .rsh-cat-menu,
.rsh-cat-dropdown.open .rsh-cat-menu { display: block; }
.rsh-cat-menu li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 18px;
    color: var(--rsh-navy);
    font-size: 14px;
    font-weight: 500;
}
.rsh-cat-menu li a:hover { background: var(--rsh-pink-light); color: var(--rsh-pink-dark); }
.rsh-cat-ico { font-size: 20px; }

.rsh-nav-links {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}
.rsh-nav-links li a {
    display: block;
    color: #fff;
    padding: 12px 22px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.rsh-nav-links li a:hover, .rsh-nav-links li.current-menu-item a { background: var(--rsh-pink-dark); }
.rsh-close-nav { display: none; }

/* ============ Hero ============ */
.rsh-hero {
    background: linear-gradient(120deg, var(--rsh-pink-light) 0%, #FDF2F6 45%, var(--rsh-white) 100%);
    padding: 56px 0;
}
.rsh-hero-inner { display: flex; align-items: center; gap: 40px; }
.rsh-hero-text { flex: 1; }
.rsh-hero-text h1 {
    font-size: 46px;
    line-height: 1.15;
    color: var(--rsh-navy);
    margin: 0 0 16px;
    font-weight: 800;
}
.rsh-hero-text h1 span { color: var(--rsh-pink); }
.rsh-hero-text p { font-size: 17px; color: var(--rsh-text); margin: 0 0 26px; }
.rsh-hero-btns { display: flex; gap: 14px; flex-wrap: wrap; }
.rsh-btn { display: inline-block; padding: 13px 30px; border-radius: 999px; font-weight: 700; font-size: 14px; }
.rsh-btn-pink { background: var(--rsh-pink); color: #fff; }
.rsh-btn-pink:hover { background: var(--rsh-pink-dark); }
.rsh-btn-outline { border: 2px solid var(--rsh-navy); color: var(--rsh-navy); }
.rsh-btn-outline:hover { background: var(--rsh-navy); color: #fff; }
.rsh-btn-white { background: #fff; color: var(--rsh-pink-dark); }
.rsh-btn-white:hover { background: var(--rsh-navy); color: #fff; }
.rsh-hero-img { flex: 1; display: flex; justify-content: center; }
.rsh-hero-img > img { border-radius: var(--rsh-radius); box-shadow: var(--rsh-shadow); max-height: 420px; object-fit: cover; }
.rsh-hero-blob { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.rsh-blob-item {
    width: 170px;
    height: 200px;
    border-radius: 38% 62% 58% 42% / 45% 40% 60% 55%;
    box-shadow: var(--rsh-shadow);
}
.rsh-blob-item:nth-child(2) { border-radius: 62% 38% 42% 58% / 40% 60% 40% 60%; margin-top: 24px; }
.rsh-blob-item:nth-child(3) { border-radius: 50% 50% 45% 55% / 60% 40% 60% 40%; }
.rsh-blob-item:nth-child(4) { border-radius: 40% 60% 55% 45% / 45% 55% 45% 55%; margin-top: -24px; }

/* ============ Sections ============ */
.rsh-cats-section { padding: 50px 0 20px; }
.rsh-products-section { padding: 30px 0 50px; }
.rsh-section-title {
    text-align: center;
    font-size: 28px;
    font-weight: 800;
    color: var(--rsh-navy);
    margin: 0 0 8px;
    position: relative;
}
.rsh-section-title::after {
    content: '';
    display: block;
    width: 70px;
    height: 4px;
    border-radius: 4px;
    background: var(--rsh-pink);
    margin: 12px auto 0;
}
.rsh-sec-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.rsh-sec-head .rsh-section-title { text-align: left; }
.rsh-sec-head .rsh-section-title::after { margin: 10px 0 0; }
.rsh-view-all { color: var(--rsh-pink-dark); font-weight: 600; font-size: 14px; }

/* ============ Categories ============ */
.rsh-cats-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 18px; margin-top: 28px; }
.rsh-cat-card { text-align: center; }
.rsh-cat-img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 120px;
    margin: 0 auto 12px;
    border-radius: 50%;
    background: var(--rsh-gray);
    border: 4px solid var(--rsh-pink-light);
    overflow: hidden;
    transition: transform .25s, border-color .25s, box-shadow .25s;
    box-sizing: border-box;
}
.rsh-cat-card:hover .rsh-cat-img { transform: translateY(-6px); border-color: var(--rsh-pink); box-shadow: var(--rsh-shadow); }
.rsh-cat-thumb { width: 100%; height: 100%; object-fit: cover; }
.rsh-cat-emoji { font-size: 48px; }
.rsh-cat-name { font-size: 14px; font-weight: 600; color: var(--rsh-navy); }

/* ============ Product grid ============ */
.rsh-prod-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.rsh-prod-card {
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    overflow: hidden;
    transition: transform .25s, box-shadow .25s, border-color .25s;
    display: flex;
    flex-direction: column;
}
.rsh-prod-card:hover { transform: translateY(-6px); box-shadow: var(--rsh-shadow); border-color: var(--rsh-pink-light); }
.rsh-prod-img { position: relative; display: block; padding: 12px; background: var(--rsh-gray); text-align: center; }
.rsh-prod-img img { width: 100%; height: auto; border-radius: 10px; }
.rsh-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    background: var(--rsh-pink);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
}
.rsh-prod-body { padding: 14px; display: flex; flex-direction: column; flex: 1; }
.rsh-prod-title {
    display: block;
    color: var(--rsh-navy);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    min-height: 44px;
    margin-bottom: 8px;
}
.rsh-prod-title:hover { color: var(--rsh-pink-dark); }
.rsh-prod-price { display: flex; align-items: baseline; gap: 8px; margin-bottom: 12px; }
.rsh-price-old { color: #999; text-decoration: line-through; font-size: 13px; }
.rsh-price-now { color: var(--rsh-pink); font-weight: 800; font-size: 18px; }
.rsh-price-now .woocommerce-Price-currencySymbol { font-size: 14px; }
.rsh-prod-actions { display: flex; align-items: center; gap: 8px; margin-top: auto; }
.rsh-add-cart {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--rsh-pink-light);
    color: var(--rsh-pink-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
}
.rsh-add-cart:hover { background: var(--rsh-pink); color: #fff; }
.rsh-buy-now {
    flex: 1;
    text-align: center;
    background: var(--rsh-navy);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-size: 14px;
    font-weight: 700;
    font-family: var(--rsh-font);
    cursor: pointer;
}
.rsh-buy-now:hover { background: var(--rsh-pink); }

/* ============ Promo ============ */
.rsh-promo {
    background: linear-gradient(120deg, var(--rsh-pink), #F06292);
    margin: 40px 0;
}
.rsh-promo-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 34px 16px;
}
.rsh-promo h3 { color: #fff; margin: 0 0 6px; font-size: 24px; }
.rsh-promo p { color: var(--rsh-pink-light); margin: 0; font-size: 14px; }

/* ============ Floating buttons ============ */
.rsh-float-btns { position: fixed; right: 18px; bottom: 18px; z-index: 990; display: flex; flex-direction: column; gap: 12px; }
.rsh-float-wa, .rsh-float-cart {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 18px rgba(0,0,0,.22);
    transition: transform .25s;
}
.rsh-float-wa { background: var(--rsh-green); }
.rsh-float-cart { background: var(--rsh-pink); color: #fff; font-size: 24px; }
.rsh-float-wa:hover, .rsh-float-cart:hover { transform: scale(1.08); }
.rsh-float-wa svg { fill: #fff; }

/* ============ Footer ============ */
.rsh-footer { background: var(--rsh-navy); color: #D6D6E4; margin-top: 60px; }
.rsh-footer-cols {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
    gap: 38px;
    padding: 56px 0 40px;
}
.rsh-footer-col h4 { color: #fff; font-size: 17px; margin: 0 0 16px; }
.rsh-f-logo { font-size: 24px; font-weight: 800; }
.rsh-f-logo span { color: var(--rsh-pink); }
.rsh-footer-col p { font-size: 14px; line-height: 1.75; margin: 0 0 10px; }
.rsh-footer-col ul { list-style: none; margin: 0; padding: 0; }
.rsh-footer-col ul li { margin-bottom: 10px; }
.rsh-footer-col ul li a { color: #D6D6E4; font-size: 14px; }
.rsh-footer-col ul li a:hover { color: var(--rsh-pink); }
.rsh-social { display: flex; gap: 10px; margin-top: 14px; }
.rsh-social a {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--rsh-navy-light);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}
.rsh-social a:hover { background: var(--rsh-pink); }
.rsh-pay-note { color: #9A9AB0; font-size: 13px; }
.rsh-copyright {
    background: #12121F;
    color: #9A9AB0;
    text-align: center;
    font-size: 13px;
    padding: 18px 0;
}

/* ============ Features ============ */
.rsh-features { padding: 40px 0 20px; }
.rsh-feat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 30px; }
.rsh-feat {
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    padding: 24px 18px;
    text-align: center;
    transition: transform .25s, box-shadow .25s;
}
.rsh-feat:hover { transform: translateY(-5px); box-shadow: var(--rsh-shadow); }
.rsh-feat-ico { font-size: 34px; display: block; margin-bottom: 10px; }
.rsh-feat h4 { margin: 0 0 6px; color: var(--rsh-navy); font-size: 16px; }
.rsh-feat p { margin: 0; color: var(--rsh-text); font-size: 13px; line-height: 1.6; }

/* ============ WooCommerce pages (shop, single, cart, checkout) ============ */
.woocommerce, .woocommerce-page {
    font-family: var(--rsh-font);
    color: var(--rsh-text);
}
.woocommerce .woocommerce-breadcrumb { color: #999; font-size: 13px; margin: 10px 0 18px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--rsh-pink-dark); }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin: 0; padding: 0; list-style: none; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 100% !important;
    float: none;
    position: relative;
    transition: transform .25s, box-shadow .25s;
}
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: var(--rsh-shadow); }
.woocommerce ul.products li.product a img {
    width: 100%;
    height: auto;
    margin: 0;
    border-radius: 10px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--rsh-navy);
    padding: 10px 14px 0;
    min-height: 44px;
    line-height: 1.45;
}
.woocommerce ul.products li.product .price {
    color: var(--rsh-pink) !important;
    font-weight: 800;
    font-size: 18px;
    padding: 4px 14px 12px;
}
.woocommerce ul.products li.product .price del { color: #999; font-weight: 400; font-size: 13px; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button {
    background: var(--rsh-navy);
    color: #fff !important;
    border-radius: 10px;
    font-weight: 700;
    font-size: 13px;
    padding: 10px 16px;
    margin: 0 14px 14px;
}
.woocommerce ul.products li.product .button:hover { background: var(--rsh-pink); }
.woocommerce ul.products li.product .added_to_cart { display: none; }
.woocommerce ul.products li.product .onsale {
    position: absolute;
    top: 12px; left: 12px;
    background: var(--rsh-pink);
    color: #fff;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 10px;
    line-height: 1.2;
    min-height: auto;
    margin: 0;
}

/* Single product */
.woocommerce div.product .product_title { color: var(--rsh-navy); font-size: 26px; }
.woocommerce div.product p.price, .woocommerce div.product span.price {
    color: var(--rsh-pink) !important;
    font-size: 24px;
    font-weight: 800;
}
.woocommerce div.product p.price del, .woocommerce div.product span.price del { color: #999; font-size: 16px; }
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins { text-decoration: none; }
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce button.button.alt {
    background: var(--rsh-pink);
    color: #fff !important;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    padding: 12px 24px;
}
.woocommerce div.product form.cart .button:hover,
.woocommerce button.button.alt:hover { background: var(--rsh-pink-dark) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--rsh-navy); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--rsh-pink-dark); }

/* Cart & checkout tables/buttons */
.woocommerce table.shop_table {
    border: 1px solid var(--rsh-gray-2);
    border-radius: 12px;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
}
.woocommerce table.shop_table th { background: var(--rsh-navy); color: #fff; font-size: 13px; }
.woocommerce table.shop_table td { border-top: 1px solid var(--rsh-gray-2); }
.woocommerce table.shop_table .product-remove a.remove { color: var(--rsh-pink) !important; }
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt { background: var(--rsh-pink); color: #fff !important; border-radius: 10px; }
.woocommerce a.button.alt:hover { background: var(--rsh-pink-dark) !important; }
.woocommerce .checkout h3 { color: var(--rsh-navy); }
.woocommerce .cart_totals h2, .woocommerce .woocommerce-column--billing-address h3, .woocommerce .woocommerce-column--shipping-address h3 { color: var(--rsh-navy); }
.woocommerce .woocommerce-form-login .button, .woocommerce form.checkout_coupon .button { background: var(--rsh-pink); color: #fff; border-radius: 10px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
    border: 1px solid var(--rsh-gray-2);
    border-radius: 10px;
    padding: 10px 12px;
    font-family: var(--rsh-font);
}
.woocommerce form .form-row input.input-text:focus { border-color: var(--rsh-pink); outline: none; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
    border: 1px solid transparent;
    border-radius: 10px;
    color: var(--rsh-navy);
    background: var(--rsh-pink-light);
}
.woocommerce-message { border-color: #c8e6c9; background: #f1f8f2; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { color: var(--rsh-pink); }
.woocommerce-message .button, .woocommerce-info .button { background: var(--rsh-pink); color: #fff !important; border-radius: 8px; }

/* Payment method radio labels */
.woocommerce .wc_payment_method label { font-weight: 600; color: var(--rsh-navy); }
.woocommerce .payment_method_bacs .payment_box, .woocommerce .payment_method_raisha_bkash .payment_box { background: var(--rsh-pink-light); }
.payment_method_raisha_bkash .payment_box p { font-size: 13px; line-height: 1.7; }

/* Responsive woo */
@media (max-width: 1024px) {
    .woocommerce ul.products { grid-template-columns: repeat(3, 1fr); }
    .rsh-feat-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 420px) {
    .woocommerce ul.products { grid-template-columns: 1fr; }
    .rsh-feat-grid { grid-template-columns: 1fr; }
}

/* ============ Responsive ============ */
@media (max-width: 1024px) {
    .rsh-hero-text h1 { font-size: 36px; }
    .rsh-prod-grid { grid-template-columns: repeat(3, 1fr); }
    .rsh-cats-grid { grid-template-columns: repeat(4, 1fr); }
    .rsh-footer-cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
    .rsh-topbar { justify-content: center; }
    .rsh-topbar-right { display: none; }
    .rsh-search { order: 3; flex-basis: 100%; }
    .rsh-header-inner { flex-wrap: wrap; justify-content: space-between; }
    .rsh-burger { display: block; }
    .rsh-nav { display: none; position: fixed; top: 0; left: 0; width: 82%; max-width: 340px; height: 100%; background: var(--rsh-white); z-index: 9999; overflow-y: auto; box-shadow: 4px 0 30px rgba(0,0,0,.2); }
    .rsh-nav.open { display: block; }
    .rsh-nav-inner { flex-direction: column; }
    .rsh-cat-trigger { height: 50px; padding: 0 18px; }
    .rsh-cat-menu { position: static; display: none; box-shadow: none; border-top: none; border-radius: 0; background: var(--rsh-gray); }
    .rsh-cat-dropdown.open .rsh-cat-menu { display: block; }
    .rsh-nav-links { flex-direction: column; }
    .rsh-nav-links li a { color: var(--rsh-navy); padding: 14px 20px; }
    .rsh-nav-links li a:hover, .rsh-nav-links li.current-menu-item a { background: var(--rsh-pink-light); color: var(--rsh-pink-dark); }
    .rsh-close-nav { display: block; background: none; border: none; font-size: 20px; color: var(--rsh-navy); margin-left: auto; padding: 14px; cursor: pointer; }
    .rsh-hero-inner { flex-direction: column; }
    .rsh-hero-text h1 { font-size: 30px; }
    .rsh-blob-item { width: 130px; height: 150px; }
    .rsh-prod-grid { grid-template-columns: repeat(2, 1fr); }
    .rsh-cats-grid { grid-template-columns: repeat(3, 1fr); }
    .rsh-cat-img { width: 90px; height: 90px; }
    .rsh-footer-cols { grid-template-columns: 1fr; gap: 26px; padding: 40px 0 24px; }
    .rsh-promo-inner { flex-direction: column; text-align: center; }
    .rsh-header-actions .rsh-btn-offer, .rsh-header-actions .rsh-btn-wa { display: none; }
}
@media (max-width: 420px) {
    .rsh-prod-grid { grid-template-columns: 1fr; }
}

/* ============ Track Order ============ */
.rsh-track-wrap { max-width: 560px; margin: 30px auto; padding: 0 16px; }
.rsh-track-form, .rsh-track-result {
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    box-shadow: var(--rsh-shadow);
    padding: 28px;
}
.rsh-track-form h2, .rsh-contact-form h2 { color: var(--rsh-navy); margin: 0 0 6px; font-size: 22px; }
.rsh-track-form p { color: #777; margin: 0 0 16px; font-size: 14px; }
.rsh-track-form label, .rsh-contact-form label { display: block; font-weight: 600; color: var(--rsh-navy); margin: 12px 0 6px; font-size: 14px; }
.rsh-track-form input, .rsh-track-form button, .rsh-contact-form input, .rsh-contact-form textarea, .rsh-contact-form button {
    width: 100%;
    box-sizing: border-box;
}
.rsh-track-form input, .rsh-contact-form input, .rsh-contact-form textarea {
    border: 1.5px solid var(--rsh-gray-2);
    border-radius: 10px;
    padding: 12px 14px;
    font-family: var(--rsh-font);
    font-size: 15px;
    color: var(--rsh-text);
    background: var(--rsh-gray);
    outline: none;
}
.rsh-track-form input:focus, .rsh-contact-form input:focus, .rsh-contact-form textarea:focus { border-color: var(--rsh-pink); background: #fff; }
.rsh-contact-form textarea { resize: vertical; min-height: 110px; }
.rsh-track-form button, .rsh-contact-form button { margin-top: 20px; border: none; cursor: pointer; }
.rsh-track-error { color: #b91c1c; background: #fef2f2; border: 1px solid #fecaca; border-radius: 10px; padding: 12px 16px; margin-bottom: 16px; font-size: 14px; }
.rsh-track-result h3 { color: var(--rsh-navy); margin: 0 0 10px; font-size: 20px; }
.rsh-status-line { font-weight: 600; font-size: 15px; }
.rsh-status-badge {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    background: #6b7280;
}
.rsh-status-badge.pending { background: #f59e0b; }
.rsh-status-badge.onhold { background: #94a3b8; }
.rsh-status-badge.confirmed { background: #10b981; }
.rsh-status-badge.shipped { background: #3b82f6; }
.rsh-status-badge.delivered { background: #16a34a; }
.rsh-status-badge.cancelled, .rsh-status-badge.failed { background: #dc2626; }
.rsh-status-badge.refunded { background: #8b5cf6; }
.rsh-order-meta { color: #555; font-size: 14px; margin: 6px 0; }
.rsh-track-items { list-style: none; margin: 6px 0 10px; padding: 0; }
.rsh-track-items li { background: var(--rsh-gray); border-radius: 8px; padding: 10px 14px; margin: 6px 0; font-size: 14px; }
.rsh-contact-hint { margin-top: 14px; font-size: 14px; color: var(--rsh-navy); }
.rsh-contact-hint a { color: var(--rsh-pink); font-weight: 700; text-decoration: none; }

/* ============ Contact form ============ */
.rsh-contact-form, .rsh-cf-success {
    max-width: 560px;
    margin: 30px auto;
    padding: 28px;
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    box-shadow: var(--rsh-shadow);
}
.rsh-cf-success { text-align: center; }
.rsh-cf-ok { font-size: 15px; color: #15803d; background: #f0fdf4; border: 1px solid #bbf7d0; padding: 12px 16px; border-radius: 10px; }
.rsh-cf-success .rsh-btn { display: inline-block; text-decoration: none; margin-top: 6px; }

/* ============ Buy Now buttons ============ */
.rsh-buy-now-single {
    display: inline-block;
    margin-left: 8px;
    vertical-align: middle;
}
.rsh-prod-actions .rsh-buy-now {
    background: var(--rsh-pink);
    color: #fff;
}
.rsh-prod-actions .rsh-buy-now:hover { background: var(--rsh-pink-dark); }

@media (max-width: 768px) {
    .rsh-buy-now-single { display: block; margin: 12px 0 0; width: 100%; }
}

/* ============ Quick Checkout ============ */
.rsh-qc-wrap { max-width: 620px; margin: 30px auto; padding: 0 16px; }
.rsh-qc-title { color: var(--rsh-navy); font-size: 26px; margin: 0 0 4px; }
.rsh-qc-sub { color: #777; margin: 0 0 20px; font-size: 14px; }
.rsh-qc-summary {
    background: var(--rsh-gray);
    border: 1px solid var(--rsh-gray-2);
    border-radius: var(--rsh-radius);
    padding: 20px 22px;
    margin-bottom: 22px;
}
.rsh-qc-summary h3 { margin: 0 0 10px; font-size: 16px; color: var(--rsh-navy); }
.rsh-qc-items { list-style: none; margin: 0 0 10px; padding: 0; }
.rsh-qc-items li { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px dashed var(--rsh-gray-2); font-size: 14px; }
.rsh-qc-item-name { color: var(--rsh-navy); font-weight: 500; }
.rsh-qc-item-meta { color: #999; white-space: nowrap; }
.rsh-qc-item-price { color: var(--rsh-pink-dark); font-weight: 600; white-space: nowrap; }
.rsh-qc-total { display: flex; justify-content: space-between; padding: 6px 0; font-size: 14px; color: #555; }
.rsh-qc-grand { border-top: 2px solid var(--rsh-navy); margin-top: 6px; padding-top: 12px; font-size: 17px; font-weight: 700; color: var(--rsh-navy); }
.rsh-qc-form { background: var(--rsh-white); border: 1px solid var(--rsh-gray-2); border-radius: var(--rsh-radius); box-shadow: var(--rsh-shadow); padding: 26px 28px; }
.rsh-qc-form label { display: block; font-weight: 600; color: var(--rsh-navy); margin: 16px 0 6px; font-size: 15px; }
.rsh-qc-form label small { font-weight: 400; color: #999; font-size: 12.5px; }
.rsh-qc-form input[type="text"], .rsh-qc-form input[type="tel"], .rsh-qc-form input[type="email"], .rsh-qc-form textarea {
    width: 100%; box-sizing: border-box;
    border: 1.5px solid var(--rsh-gray-2);
    border-radius: 10px;
    padding: 13px 14px;
    font-family: var(--rsh-font);
    font-size: 15px;
    background: var(--rsh-gray);
    outline: none;
    color: var(--rsh-text);
}
.rsh-qc-form input:focus, .rsh-qc-form textarea:focus { border-color: var(--rsh-pink); background: #fff; }
.rsh-qc-form textarea { resize: vertical; min-height: 96px; }
.rsh-qc-pay-title { margin-top: 18px !important; }
.rsh-qc-pay { display: grid; gap: 12px; margin-top: 8px; }
.rsh-pay-opt {
    display: flex; align-items: flex-start; gap: 12px;
    border: 1.5px solid var(--rsh-gray-2);
    border-radius: 12px;
    padding: 14px 16px;
    cursor: pointer;
    background: var(--rsh-gray);
}
.rsh-pay-opt:has(input:checked) { border-color: var(--rsh-pink); background: var(--rsh-pink-light); }
.rsh-pay-opt input { margin-top: 3px; accent-color: var(--rsh-pink); }
.rsh-pay-opt strong { display: block; font-size: 15px; color: var(--rsh-navy); }
.rsh-pay-opt small { display: block; margin-top: 2px; font-size: 12.5px; color: #777; font-weight: 400; }
.rsh-qc-submit { width: 100%; margin-top: 24px; border: none; cursor: pointer; font-size: 16px; padding: 15px; }
.rsh-qc-note { font-size: 12.5px; color: #999; text-align: center; margin-top: 14px; }
.rsh-qc-empty { max-width: 480px; margin: 40px auto; text-align: center; padding: 30px; background: var(--rsh-white); border: 1px solid var(--rsh-gray-2); border-radius: var(--rsh-radius); box-shadow: var(--rsh-shadow); }
.rsh-qc-empty h2 { color: var(--rsh-navy); }
.rsh-qc-empty .rsh-btn { display: inline-block; text-decoration: none; margin-top: 8px; }

/* ============ Thank you (order received) page ============ */
.rsh-thanks-wrap { max-width: 640px; margin: 30px auto; padding: 0 16px; }
.rsh-thanks-card { background: var(--rsh-white); border: 1px solid var(--rsh-gray-2); border-radius: var(--rsh-radius); box-shadow: var(--rsh-shadow); padding: 34px 30px; text-align: center; }
.rsh-thanks-icon { font-size: 56px; line-height: 1; }
.rsh-thanks-card h2 { color: var(--rsh-navy); font-size: 24px; margin: 14px 0 6px; }
.rsh-thanks-sub { color: #777; margin: 0 0 18px; font-size: 14px; }
.rsh-thanks-no, .rsh-thanks-date, .rsh-thanks-pay { color: #444; font-size: 15px; margin: 5px 0; }
.rsh-thanks-note { background: var(--rsh-pink-light); border: 1px solid #f8bbd0; border-radius: 10px; padding: 12px 16px; font-size: 14px; color: #7c1d3c; margin: 14px 0; text-align: left; }
.rsh-thanks-note a { color: var(--rsh-pink-dark); font-weight: 700; text-decoration: none; }
.rsh-thanks-card h3 { color: var(--rsh-navy); font-size: 17px; margin: 24px 0 10px; text-align: left; }
.rsh-thanks-table { width: 100%; border-collapse: collapse; font-size: 14px; text-align: left; }
.rsh-thanks-table th { background: var(--rsh-navy); color: #fff; padding: 10px 12px; }
.rsh-thanks-table th:first-child { border-radius: 8px 0 0 0; }
.rsh-thanks-table th:last-child { border-radius: 0 8px 0 0; text-align: right; }
.rsh-thanks-table td { padding: 10px 12px; border-bottom: 1px solid var(--rsh-gray-2); color: var(--rsh-text); }
.rsh-thanks-table td:last-child { text-align: right; }
.rsh-thanks-table .rsh-thanks-grand td { font-weight: 700; color: var(--rsh-navy); background: var(--rsh-gray); font-size: 16px; border-radius: 0 0 8px 8px; }
.rsh-thanks-addr { color: #555; font-size: 14px; margin: 4px 0; text-align: left; }
.rsh-thanks-actions { margin-top: 28px; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.rsh-thanks-actions .rsh-btn { text-decoration: none; }


/* ================================================================
   J2 — Professional product description (পণ্যের প্রফেশনাল বিবরণ)
   ================================================================ */
.rsh-prof-desc {
    margin: 26px 0 10px;
    border-top: 2px dashed var(--rsh-pink-light);
    padding-top: 22px;
}
.rsh-prof-desc-title {
    margin: 0 0 6px;
    font-size: 22px;
    font-weight: 800;
    color: var(--rsh-navy);
    letter-spacing: -.3px;
}
.rsh-prof-cols {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 14px;
    margin-top: 8px;
}
.rsh-prof-card {
    background: var(--rsh-white);
    border: 1px solid var(--rsh-gray-2);
    border-radius: 16px;
    padding: 18px 18px 14px;
    box-shadow: 0 6px 22px rgba(26, 26, 73, .06);
    display: flex;
    flex-direction: column;
}
.rsh-prof-benefits   { border-top: 4px solid var(--rsh-pink); }
.rsh-prof-usage      { border-top: 4px solid var(--rsh-green, #22c55e); }
.rsh-prof-ingredients{ border-top: 4px solid var(--rsh-purple, #8b5cf6); }
.rsh-prof-ico {
    align-self: flex-start;
    display: flex; align-items: center; justify-content: center;
    width: 40px; height: 40px;
    border-radius: 12px;
    background: var(--rsh-pink-light);
    font-size: 21px;
}
.rsh-prof-card h4 { margin: 12px 0 4px; font-size: 16px; font-weight: 800; color: var(--rsh-navy); }
.rsh-prof-card ul, .rsh-prof-card ol { margin: 4px 0 0; padding: 0; }
.rsh-prof-card ul { list-style: none; }
.rsh-prof-card ul li, .rsh-prof-card ol li {
    padding-left: 22px; position: relative;
    font-size: 14px; line-height: 1.7; color: var(--rsh-text);
    margin-bottom: 6px;
}
.rsh-prof-benefits ul li::before { content: "✔"; position: absolute; left: 2px; top: 0; color: var(--rsh-pink); font-weight: 800; }
.rsh-prof-usage ol { list-style: none; counter-reset: rsh-step; }
.rsh-prof-usage ol li { counter-increment: rsh-step; }
.rsh-prof-usage ol li::before {
    content: counter(rsh-step);
    position: absolute; left: 0; top: 6px;
    width: 17px; height: 17px; line-height: 17px; text-align: center;
    border-radius: 50%; background: var(--rsh-navy); color: #fff;
    font-size: 11px; font-weight: 700;
}
.rsh-prof-ingredients ul li::before { content: "🧴"; position: absolute; left: 0; top: 1px; }
.rsh-prof-desc-foot {
    display: flex; flex-wrap: wrap; gap: 8px 18px;
    margin-top: 16px; padding-top: 14px;
    border-top: 1px solid var(--rsh-gray-2);
    font-size: 13px; font-weight: 600; color: #666;
}

/* ================================================================
   J3 — Mobile header: clean 2-row (লোগো+কার্ট / সার্চ), no cram
   ================================================================ */
@media (max-width: 767px) {
    .rsh-topbar { justify-content: flex-start; }
    .rsh-header-inner { flex-wrap: wrap; }
    .rsh-secondary, .rsh-header-actions .rsh-btn-offer,
    .rsh-header-actions .rsh-btn-wa { display: none; }
    .rsh-search { order: 3; flex-basis: 100%; min-width: 100%; margin-top: 10px; }
    .rsh-header-actions { order: 2; margin-left: auto; }
    .rsh-cart-total { display: none; }
    .rsh-cart-count { position: static; margin-left: 4px; }
    .rsh-logo { order: 1; }
    .rsh-burger { order: 4; margin-left: 6px; }
}
@media (max-width: 400px) {
    .rsh-header-actions { gap: 6px; }
    .rsh-logo-text { font-size: 20px; }
}

/* ============================================================
   J4 — Inline one-page quick order (raisha.css)
   ============================================================ */
.rsh-inline-order {
    margin: 16px 0 6px;
    padding: 16px;
    background: #fff;
    border: 1px solid #f4e3ea;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(214, 51, 108, .07);
}
.rsh-inline-order-title {
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #d6336c;
    margin-bottom: 12px;
}
.rsh-inline-order-title span {
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #b3959f;
    margin-top: 2px;
}
.rsh-inline-pack, .rsh-inline-area {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 10px 0;
}
.rsh-inline-lbl {
    display: block;
    font-weight: 600;
    font-size: 13.5px;
    color: #444;
    margin: 14px 0 8px;
}
.rsh-inline-opt, .rsh-inline-area-opt {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-height: 56px;
    padding: 13px 14px;
    border: 1.5px solid #efe0e7;
    border-radius: 12px;
    cursor: pointer;
    background: #fdf9fb;
    transition: border-color .16s, box-shadow .16s, background .16s;
}
.rsh-inline-opt-active, .rsh-inline-area-opt-active {
    border-color: #d6336c;
    background: #fff4f8;
    box-shadow: 0 0 0 3px rgba(214, 51, 108, .10);
}
.rsh-inline-opt input[type="radio"],
.rsh-inline-area-opt input[type="radio"] {
    flex: none;
    margin-top: 2px;
    width: 17px;
    height: 17px;
    accent-color: #d6336c;
}
.rsh-inline-opt .rsh-inline-opt-t,
.rsh-inline-area-opt .rsh-inline-area-t {
    min-width: 0;
    flex: 1;
    overflow-wrap: anywhere;
}
.rsh-inline-opt-active::after,
.rsh-inline-area-opt-active::after,
.rsh-inline-opt:has(input[type="radio"]:checked)::after,
.rsh-inline-area-opt:has(input[type="radio"]:checked)::after {
    content: "";
    position: absolute;
    top: 8px;
    right: 10px;
    width: 16px;
    height: 16px;
    border: 2px solid #d6336c;
    border-radius: 50%;
    background: #fff;
    box-shadow: inset 0 0 0 4px #d6336c;
}
.rsh-inline-opt-active .rsh-inline-opt-t,
.rsh-inline-area-opt-active .rsh-inline-area-t,
.rsh-inline-opt:has(input[type="radio"]:checked) .rsh-inline-opt-t,
.rsh-inline-area-opt:has(input[type="radio"]:checked) .rsh-inline-area-t {
    padding-right: 24px;
}
.rsh-inline-opt-t strong {
    display: block;
    font-weight: 700;
    font-size: 13.5px;
    color: #222;
}
.rsh-inline-opt-t small {
    display: block;
    font-size: 11.5px;
    color: #b3a0a8;
    font-weight: 400;
    margin-top: 2px;
}
.rsh-inline-area-t strong {
    display: block;
    font-weight: 600;
    font-size: 12.5px;
    color: #333;
}
.rsh-inline-area-t small {
    display: block;
    font-size: 11px;
    color: #b3a0a8;
    font-weight: 400;
    margin-top: 2px;
}
.rsh-inline-form {
    margin-top: 6px;
}
.rsh-inline-input {
    width: 100%;
    box-sizing: border-box;
    margin: 8px 0;
    padding: 11px 13px;
    border: 1.5px solid #eee2e8;
    border-radius: 9px;
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    font-size: 14px;
    color: #333;
    background: #fff;
}
.rsh-inline-input:focus {
    outline: none;
    border-color: #d6336c;
    box-shadow: 0 0 0 3px rgba(214, 51, 108, .08);
}
.rsh-inline-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin: 12px 0 14px;
    padding: 12px 14px;
    background: #fff5f9;
    border: 1px dashed #f1c4d5;
    border-radius: 10px;
}
.rsh-inline-total-num {
    font-weight: 800;
    font-size: 21px;
    color: #d6336c;
    letter-spacing: .2px;
}
.rsh-inline-ship-num {
    font-weight: 500;
    font-size: 12.5px;
    color: #b3a0a8;
    white-space: nowrap;
}
.rsh-inline-submit {
    width: 100%;
    padding: 15px 16px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #ff7aa6, #d6336c);
    color: #fff;
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: .2px;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(214, 51, 108, .25);
    transition: opacity .15s, transform .12s;
}
.rsh-inline-submit:hover { opacity: .94; }
.rsh-inline-submit:active { transform: translateY(1px); }
.rsh-inline-submit:disabled { opacity: .55; cursor: wait; }
.rsh-inline-msg {
    min-height: 20px;
    margin-top: 10px;
    padding: 0 2px;
    font-size: 13px;
    line-height: 1.5;
    font-family: 'Hind Siliguri','Poppins',sans-serif;
}
.rsh-inline-msg.rsh-err { color: #d33; }
.rsh-inline-msg.rsh-ok  { color: #2e7d32; }
.rsh-inline-success { display: block; text-align: center; padding: 6px 2px 2px; }
.rsh-js-hide { display: none !important; }
.rsh-inline-success h4 { margin: 8px 0 6px; font-family: 'Hind Siliguri'; font-size: 15px; color: #2e7d32; }
.rsh-inline-success p { margin: 4px 0; font-size: 13px; color: #666; }
.rsh-inline-success strong { color: #d6336c; }
.rsh-inline-success-note { font-size: 11.5px; color: #b3a0a8 !important; }

/* STAGE-3: 3-day offer countdown (free-delivery product panel) */
.rsh-offer-cd-wrap { margin: 0 0 14px; }
.rsh-offer-cd {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 12px;
    border: 1px dashed #f1c4d5;
    border-radius: 12px;
    background: linear-gradient(180deg, #fff7fa, #fff);
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    text-align: center;
}
.rsh-offer-cd-head {
    font-weight: 700;
    font-size: 14px;
    color: #d6336c;
    letter-spacing: .2px;
}
.rsh-offer-cd-boxes { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.rsh-offer-cd-box {
    min-width: 58px;
    padding: 8px 6px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #f1c4d5;
    box-shadow: 0 2px 6px rgba(214, 51, 108, .08);
}
.rsh-offer-cd-box b {
    display: block;
    font-size: 20px;
    font-weight: 800;
    color: #15314d;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}
.rsh-offer-cd-box i {
    font-style: normal;
    font-size: 11px;
    color: #b3a0a8;
}
.rsh-offer-cd-expired { display: none; font-weight: 700; font-size: 14.5px; color: #2e7d32; }
.rsh-offer-cd.rsh-offer-cd-done .rsh-offer-cd-expired { display: block; }

@media (max-width: 480px) {
    .rsh-offer-cd-box { min-width: 52px; padding: 7px 4px; }
    .rsh-offer-cd-box b { font-size: 17px; }
}

/* Sticky bottom order bar */
.rsh-sticky-order {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99995;
    display: none;
    padding: 11px 14px;
    background: rgba(255,255,255,.98);
    border-top: 1px solid #f3e0e8;
    box-shadow: 0 -6px 20px rgba(214, 51, 108, .12);
}
.rsh-sticky-order.show { display: block; }
.rsh-sticky-order-in {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
}
.rsh-sticky-order-info { flex: 1; min-width: 0; }
.rsh-sticky-order-name {
    display: block;
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    font-size: 13px;
    color: #333;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.rsh-sticky-order-price {
    display: block;
    font-size: 13px;
    color: #b3a0a8;
}
.rsh-sticky-order-cta {
    flex: none;
    padding: 11px 20px;
    border: 0;
    border-radius: 9px;
    background: linear-gradient(135deg, #ff7aa6, #d6336c);
    color: #fff;
    font-family: 'Hind Siliguri','Poppins',sans-serif;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(214, 51, 108, .25);
}
.rsh-sticky-order-cta:hover { opacity: .94; }
@media (max-width: 575px) {
    .rsh-inline-pack, .rsh-inline-area { grid-template-columns: 1fr; }
    .rsh-inline-opt, .rsh-inline-area-opt { min-height: 50px; }
    .rsh-inline-order { padding: 14px; }
    .rsh-inline-submit { padding: 15px 16px; font-size: 16.5px; }
    .rsh-inline-order { margin-bottom: 8px; }
    .rsh-sticky-order-in { gap: 8px; }
    .rsh-sticky-order-cta { padding: 11px 14px; font-size: 14px; white-space: nowrap; }
    .rsh-sticky-order { padding-bottom: calc(11px + env(safe-area-inset-bottom, 0px)); }
}
@media (min-width: 901px) {
    .rsh-inline-order { padding: 20px; }
    .rsh-inline-opt, .rsh-inline-area-opt { min-height: 60px; }
}

/* RAISHA MOBILE RESPONSIVE FIX - START */
@media (max-width: 768px) {
  .rsh-topbar-left,
  .rsh-marquee {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .rsh-marquee {
    display: block !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
  }
  .rsh-topbar {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }
  .rsh-topbar-wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .rsh-topbar-right {
    flex-shrink: 1 !important;
    min-width: 0 !important;
    flex-wrap: wrap;
    row-gap: 4px;
  }
  .rsh-logo a {
    flex-wrap: wrap !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .rsh-logo-text {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere;
    overflow: hidden;
  }
  .rsh-buy-now-single,
  .woocommerce div.product form.cart .rsh-buy-now-single {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin: 12px 0 0 0 !important;
    text-align: center !important;
    overflow: hidden !important;
  }
  .woocommerce-product-gallery,
  .woocommerce div.product div.images {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .woocommerce div.product div.images .woocommerce-product-gallery__image {
    overflow: hidden !important;
    max-width: 100% !important;
  }
  .woocommerce div.product form.cart {
    max-width: 100% !important;
    box-sizing: border-box !important;
    flex-wrap: wrap !important;
  }
  .rsh-container,
  .rsh-header-inner,
  .rsh-nav-inner,
  .rsh-hero-inner,
  .rsh-promo-inner,
  .rsh-footer-cols {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }
  .rsh-header-inner {
    flex-wrap: wrap !important;
  }
  .rsh-search {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .rsh-search-form input[type="search"] {
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .rsh-hero-blob {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-items: center !important;
  }
  .rsh-blob-item {
    width: clamp(110px, 40vw, 150px) !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 17 / 20 !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .rsh-cats-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .rsh-cats-grid > * {
    min-width: 0 !important;
  }
  .rsh-cat-img {
    width: min(100%, 120px) !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    box-sizing: border-box !important;
  }
  .rsh-prod-grid,
  .rsh-feat-grid,
  .rsh-footer-cols,
  .woocommerce ul.products {
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .rsh-prod-grid > *,
  .rsh-feat-grid > *,
  .woocommerce ul.products > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .rsh-prod-card,
  .woocommerce ul.products li.product {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .rsh-prod-actions {
    flex-wrap: wrap !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .rsh-promo-inner {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .rsh-prod-img img,
  .woocommerce ul.products li.product a img,
  .woocommerce-product-gallery img,
  .woocommerce-product-gallery__image img,
  .rsh-cat-thumb {
    max-width: 100% !important;
    height: auto !important;
  }
  .rsh-buy-now-single,
  .woocommerce div.product form.cart .rsh-buy-now-single {
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal;
  }
  .woocommerce div.product form.cart,
  form.cart {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    gap: 12px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  form.cart .quantity {
    flex: 1 1 150px;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  form.cart .quantity .qty,
  form.cart .qty {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  form.cart button.single_add_to_cart_button {
    flex: 1 1 130px;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  form.cart .rsh-buy-now-single,
  .woocommerce div.product form.cart .rsh-buy-now-single {
    flex: 1 1 100%;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  table.shop_table,
  .woocommerce-cart-form__contents,
  .cart-collaterals,
  .cart_totals {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  table.shop_table {
    table-layout: fixed !important;
  }
  table.shop_table th,
  table.shop_table td {
    overflow-wrap: anywhere;
    word-break: break-word;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  table.shop_table td img,
  table.shop_table .product-thumbnail img {
    max-width: 100% !important;
    height: auto !important;
  }
  .woocommerce-cart-form .qty,
  .product-quantity .qty,
  .cart .qty {
    max-width: 100% !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .woocommerce-cart-form .coupon {
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 8px;
  }
  .woocommerce-cart-form .coupon #coupon_code,
  .woocommerce-cart-form .coupon input.input-text {
    min-width: 0 !important;
    flex: 1 1 120px !important;
    width: auto !important;
    box-sizing: border-box !important;
  }
}
@media (max-width: 420px) {
  .rsh-prod-body {
    padding: 12px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .rsh-prod-title {
    font-size: clamp(13px, 3.5vw, 14px) !important;
    min-height: auto !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere;
  }
  .rsh-prod-price {
    margin-bottom: 10px !important;
    flex-wrap: wrap !important;
  }
  .rsh-prod-actions .rsh-add-cart {
    flex-shrink: 0 !important;
  }
  .rsh-buy-now {
    min-width: 0 !important;
    overflow-wrap: anywhere;
  }
  .rsh-logo-img {
    max-width: 100% !important;
    height: 46px !important;
    width: auto !important;
  }
}
/* RAISHA MOBILE RESPONSIVE FIX - END */


/* RAISHA SINGLE PRODUCT PAGE CLEANUP - START
   Scope  : single product pages only (body.single-product).
   Purpose: hide the WooCommerce "Related products" collection block so the
            product page stays short and clean. Shop / category product grids
            and homepage product sections are NOT affected.
   NOTE   : this is a separate block — the mobile responsive fix above is untouched. */
body.single-product .wp-block-woocommerce-product-collection {
    display: none !important;
}
/* RAISHA SINGLE PRODUCT PAGE CLEANUP - END */

/* ==================================================================
   RAISHA PRODUCT-PAGE POLISH  (appended) 
   1) kill theme global heading background (was pink #F4C2C2 on every h1-h6)
   2) product gallery: big main image + horizontal thumbnails (flexslider css)
   3) single product title (22-26px) + price + delivery badge
   4) description summary/expandable
   5) sticky order bar always available + safe-area + bottom padding
   6) no floating buttons on product pages
   7) compact mobile header + expandable search
   ================================================================== */

/* 1) heading backgrounds */
h1, h2, h3, h4, h5, h6 { background-color: transparent !important; }

/* 2) gallery */
.woocommerce-product-gallery { opacity: 1 !important; }
.woocommerce-product-gallery .flex-viewport { overflow: hidden; }
.woocommerce-product-gallery__image { overflow: hidden; border-radius: 12px; }
.woocommerce-product-gallery__image > a { display: block; }
.woocommerce-product-gallery__image a > img:not(.zoomImg) { width: 100% !important; height: auto !important; display: block; margin: 0 !important; border-radius: 12px; }
.woocommerce-product-gallery .flex-control-nav,
.woocommerce-product-gallery ol.flex-control-thumbs { display: flex !important; flex-wrap: nowrap; gap: 8px; margin: 12px 0 0 !important; padding: 0 !important; list-style: none !important; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.woocommerce-product-gallery ol.flex-control-thumbs::-webkit-scrollbar { display: none; }
.woocommerce-product-gallery .flex-control-thumbs li { flex: 0 0 auto; width: 68px !important; min-width: 68px !important; float: none !important; margin: 0 !important; list-style: none !important; }
.woocommerce-product-gallery .flex-control-thumbs li img { width: 100% !important; height: auto !important; display: block !important; border-radius: 8px; border: 2px solid transparent; opacity: .72; cursor: pointer; transition: opacity .18s, border-color .18s; }
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li img:hover { opacity: 1; border-color: var(--rsh-pink); }

/* 3) single product title + price */
body.single-product .wp-block-post-title { font-size: clamp(22px, 3.6vw, 26px) !important; line-height: 1.35 !important; font-weight: 800 !important; color: var(--rsh-navy) !important; background: transparent !important; margin: 0 0 10px !important; }
body.single-product .wp-block-woocommerce-product-price { font-size: 26px; margin: 0 0 8px; }
body.single-product .wp-block-woocommerce-product-price .woocommerce-Price-amount { color: var(--rsh-pink) !important; font-weight: 800 !important; }
body.single-product .wp-block-woocommerce-product-price del { font-size: .6em; }
body.single-product .wp-block-woocommerce-product-price del .woocommerce-Price-amount { color: #9a9aa8 !important; font-weight: 400 !important; }
body.single-product .wp-block-woocommerce-product-price ins { text-decoration: none; }
.rsh-delivery-badge { display: inline-flex; align-items: center; gap: 8px; background: var(--rsh-pink-light); color: var(--rsh-pink-dark); border: 1px solid #f6cadb; border-radius: 999px; padding: 6px 14px; font-size: 13px; font-weight: 700; margin: 2px 0 14px; }

/* 4) description */
.rsh-prof-summary { list-style: none; margin: 4px 0 0; padding: 0; }
.rsh-prof-summary li { position: relative; padding-left: 24px; font-size: 14.5px; line-height: 1.75; color: var(--rsh-text); margin-bottom: 6px; }
.rsh-prof-summary li::before { content: "\2714"; position: absolute; left: 2px; top: 1px; color: var(--rsh-pink); font-weight: 800; }
.rsh-prof-more { margin-top: 16px; background: #fff; border: 1px solid var(--rsh-gray-2); border-radius: 12px; padding: 0 16px; }
.rsh-prof-more > summary { cursor: pointer; list-style: none; padding: 14px 0; font-weight: 700; color: var(--rsh-navy); font-size: 15px; }
.rsh-prof-more > summary::-webkit-details-marker { display: none; }
.rsh-prof-more > summary::before { content: "\25B8  "; color: var(--rsh-pink); }
.rsh-prof-more[open] > summary::before { content: "\25BE  "; }
.rsh-prof-more[open] > summary { border-bottom: 1px solid var(--rsh-gray-2); margin-bottom: 12px; }
.rsh-prof-more .rsh-prof-card { border: 0 !important; box-shadow: none; padding: 0 0 10px; background: transparent; }

/* 5) sticky order bar */
body.single-product .rsh-sticky-order { display: block; }
.rsh-sticky-order { padding-bottom: calc(11px + env(safe-area-inset-bottom, 0px)); }
body.single-product { padding-bottom: calc(74px + env(safe-area-inset-bottom, 0px)); }
.rsh-sticky-order-wa { flex: none; width: 42px; height: 42px; border-radius: 50%; background: var(--rsh-green); color: #fff; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(37,211,102,.3); }
.rsh-sticky-order-wa svg { width: 22px; height: 22px; fill: #fff; }

/* 6) no floating buttons on product pages */
body.single-product .rsh-float-btns { display: none !important; }

/* 7) mobile header + expandable search */
.rsh-search-toggle { display: none; background: none; border: none; cursor: pointer; font-size: 20px; line-height: 1; padding: 6px; color: var(--rsh-navy); }
@media (max-width: 767px) {
  html { scroll-padding-top: 72px; }
  .rsh-header-inner { padding: 8px 12px !important; gap: 8px !important; align-items: center; }
  .rsh-logo-img { height: 38px !important; }
  .rsh-logo-text { font-size: 19px !important; }
  .rsh-header-actions { order: 2; margin-left: auto; gap: 8px !important; }
  .rsh-search-toggle { display: inline-flex; order: 3; }
  .rsh-search { order: 5; flex-basis: 100%; display: none; margin-top: 8px; }
  .rsh-search.open { display: block; }
  .rsh-burger { order: 4; margin-left: 2px; }
}


/* ===== RAISHA polish fixes v2 ===== */
body.single-product { padding-bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important; }
@media (max-width: 767px) {
  .rsh-header-inner { flex-wrap: nowrap !important; gap: 6px !important; padding: 8px 12px !important; }
  .rsh-logo { flex: 1 1 auto; min-width: 0; overflow: hidden; }
  .rsh-logo a { flex-wrap: nowrap !important; gap: 8px !important; min-width: 0; }
  .rsh-logo-img { height: 34px !important; width: auto; }
  .rsh-logo-text { font-size: 16px !important; line-height: 1.2 !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .rsh-header-actions { order: 2; margin-left: 0 !important; gap: 6px !important; flex: none; }
  .rsh-header-actions .rsh-ico { font-size: 19px !important; }
  .rsh-icon-link { gap: 4px !important; }
  .rsh-search-toggle { display: inline-flex !important; order: 3; flex: none; padding: 4px !important; font-size: 18px !important; }
  .rsh-burger { order: 4; margin-left: 0 !important; flex: none; padding: 5px !important; }
  .rsh-search { order: 5; display: none; }
  .rsh-search.open { display: block; position: absolute; left: 0; right: 0; top: 100%; margin: 0; padding: 10px 12px; background: var(--rsh-white); box-shadow: 0 10px 20px rgba(26,26,46,.12); border-top: 1px solid var(--rsh-gray-2); z-index: 1000; }
}