:root {
    --brand-dark: #02534D;
    --brand-orange: #C0562F;
    --brand-orange-hover: #A04625;
    --brand-bg: #dfdbd1;
    --brand-bg-alt: #F3EFE8;
    --brand-card: #F6F6F6;
    --brand-text: #1F1F1F;
    --brand-text-secondary: #0B1E3D;
    --brand-muted: #6B7280;
    --brand-border: #E5E7EB;
    --brand-green-light: #E8F5E9;
    --brand-green-accent: #2E7D32;
}

* {margin: 0;padding: 0;box-sizing: border-box;}
/*body {font-family: 'DM Sans', sans-serif;color: var(--brand-text);background-color: var(--brand-bg);overflow-x: hidden;}*/

html, body {overflow-x: clip;}
body {font-family: 'DM Sans', sans-serif;color: var(--brand-text);background-color: var(--brand-bg);}

/* ==========================================
   MAIN NAVBAR
========================================== */

.site-header {position: sticky;top: 0;z-index: 1050;}
.navbar-main {position: relative;z-index: 2;background: #02534D;padding: 12px 0;box-shadow: 0 2px 12px rgba(0,0,0,0.08);}
/* Logo */
.navbar-main .navbar-brand img {width: 150px;display: block;}
/* Right side */
.main-nav-actions {display: flex;align-items: center;gap: 8px;}
/* User */
.user-btn, .cart-nav-btn {padding: 8px 10px;font-size: 20px; background:var(--brand-bg);border: none;color:var(--brand-dark); position: relative;display: inline-flex;align-items: center;justify-content: center;width: 42px;height: 42px;text-decoration: none;border-radius: 50%;transition: all .2s ease; }
.user-btn:hover, .cart-nav-btn:hover {background: var(--brand-dark);color: #fff;}
/* ==========================================
   MENU STRIP
========================================== */
.menu-strip {position: relative;z-index: 1;background: #E9F7F3;border-bottom: 1px solid rgba(2,83,77,0.12);box-shadow: 0 2px 8px rgba(0,0,0,0.04);}
.main-menu {display: flex;align-items: start;gap: 8px;margin: 0;padding: 8px 0;list-style: none;}
.main-menu li a {display: inline-flex;align-items: start;gap: 5px;padding: 8px 16px;color: #02534D;text-decoration: none;font-size: 15px;font-weight: 600;border-radius: 7px;transition: all .2s ease;}
.main-menu li a:hover {background: #D4F0E9;color: #02534D;}
.main-menu .b2b-menu-item {margin-left: 8px; }
.main-menu .b2b-menu-item a {background: var(--brand-orange) ;color: #fff;padding: 8px 18px;border-radius: 22px;font-weight: 700;box-shadow: 0 3px 10px rgba(47,211,174,.22);}
.main-menu .b2b-menu-item a:hover {background: #02534D;color: #fff;}

.mobile-menu-bar,
.mobile-menu-dropdown { display: none;}

.nav-icons{display: flex;align-items: center;}
.nav-icons .btn {width: 42px;height: 42px;border-radius: 50%;display: inline-flex;align-items: center;justify-content: center;background: var(--brand-card);border: none;color: var(--brand-text);font-size: 18px;transition: all 0.2s;position: relative;}
.nav-icons .btn:hover {background: var(--brand-dark);color: #fff;}
.cart-badge {position: absolute;top: -2px;right: -2px;background: var(--brand-orange);color: #fff;font-size: 10px;font-weight: 700;width: 18px;height: 18px;border-radius: 50%;display: flex;align-items: center;justify-content: center;border: 2px solid #fff;}
.navbar-toggler-icon {filter: brightness(0) invert(1);}

/* ── User Button ───────────────────────────────── */
.user-btn-wrap { position: relative; }


/* Logged-in state: dark circle with initials */
.user-btn.logged-in {font-size: 13px; font-weight: 700;font-family: 'DM Sans', sans-serif; letter-spacing: .04em;}
.user-btn.logged-in:hover { background: var(--brand-dark); color: #fff; }

/* Green online dot */
.user-online-dot {position: absolute; bottom: 1px; right: 1px;width: 11px; height: 11px; border-radius: 50%;background: #22c55e; border: 2px solid #fff;}

/* ── Dropdown ──────────────────────────────────── */
.user-dropdown {position: absolute; top: calc(100% + 10px); right: 0;width: 230px; background: #fff; border-radius: 16px;box-shadow: 0 16px 48px rgba(0,0,0,.13);border: 1px solid var(--brand-border); z-index: 9999;opacity: 0; visibility: hidden; pointer-events: none;transform: translateY(-10px);transition: opacity .22s ease, transform .22s ease, visibility .22s;}
.user-dropdown.open {opacity: 1; visibility: visible;pointer-events: all; transform: translateY(0);}
/* Header block */
.ud-header {display: flex; align-items: center; gap: 12px;padding: 16px 18px 14px; border-bottom: 1px solid var(--brand-border);}
.ud-avatar {width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0;background: var(--brand-dark); color: #fff;display: flex; align-items: center; justify-content: center;font-size: 15px; font-weight: 700;font-family: 'DM Sans', sans-serif; letter-spacing: .04em;}
.ud-name   { font-size: 14px; font-weight: 700; color: var(--brand-dark); display: block; line-height: 1.2; }
.ud-mobile { font-size: 11px; color: var(--brand-muted); display: block; margin-top: 3px; }

/* Menu links */
.ud-menu { padding: 8px 0; }
.ud-menu a,
.ud-menu button {display: flex; align-items: center; gap: 10px;padding: 10px 18px; font-size: 14px; font-weight: 500;color: var(--brand-text); text-decoration: none;transition: background .15s, color .15s;width: 100%; text-align: left; background: none;border: none; cursor: pointer; font-family: 'DM Sans', sans-serif;}
.ud-menu a:hover,
.ud-menu button:hover { background: var(--brand-bg); color: var(--brand-orange); }
.ud-menu i { font-size: 16px; color: var(--brand-muted); flex-shrink: 0; transition: color .15s; }
.ud-menu a:hover i,
.ud-menu button:hover i { color: var(--brand-orange); }

/* Logout is red */
.ud-menu .logout-btn       { color: #dc2626; }
.ud-menu .logout-btn i     { color: #dc2626; }
.ud-menu .logout-btn:hover { background: #fee2e2; color: #dc2626; }
.ud-menu .logout-btn:hover i { color: #dc2626; }

.ud-divider { border: none; border-top: 1px solid var(--brand-border); margin: 6px 0; }

/* Guest state */
.ud-guest { padding: 22px 18px; text-align: center; }
.ud-guest > i { font-size: 42px; color: var(--brand-dark); opacity: .15; display: block; margin-bottom: 12px; }
.ud-guest > span { font-size: 13px; color: var(--brand-muted); line-height: 1.6; display: block; margin-bottom: 16px; }
.btn-login-now {display: inline-flex; align-items: center; gap: 7px;background: var(--brand-dark); color: #fff; border-radius: 10px;padding: 10px 20px; font-size: 13px; font-weight: 700;text-decoration: none; transition: background .2s;}
.btn-login-now:hover { background: var(--brand-orange); color: #fff; }

/* ── Search expand wrapper ── */
.search-expand-wrap {display: flex;align-items: center;position: relative;}
.search-toggle-btn {width: 42px; height: 42px; border-radius: 50%;border: none; background: var(--brand-card);display: flex; align-items: center; justify-content: center;font-size: 18px; color: var(--brand-text);cursor: pointer; transition: all .2s; flex-shrink: 0;}
.search-toggle-btn:hover { background: var(--brand-dark); color: #fff; }
.search-expand-wrap.open .search-toggle-btn {opacity: 0;pointer-events: none;width: 0;overflow: hidden;}
.search-expand-inner {display: flex;align-items: center;max-width: 0;overflow: hidden;border-radius: 50px;background: var(--brand-card);border: none; transition: max-width .38s cubic-bezier(.4, 0, .2, 1), box-shadow .2s ease;}
.search-expand-wrap.open .search-expand-inner {max-width: 300px;border: 1.5px solid var(--brand-border); box-shadow: 0 4px 16px rgba(0,0,0,.08);}
.search-inner-icon {padding-left: 14px;font-size: 14px;color: var(--brand-muted);flex-shrink: 0;}
.search-expand-input {flex: 1;border: none;background: transparent;padding: 10px 8px;font-size: 14px;font-family: 'DM Sans', sans-serif;color: var(--brand-text);min-width: 0;width: 200px;outline: none;opacity: 0;transition: opacity .15s ease .2s; }
.search-expand-wrap.open .search-expand-input { opacity: 1; }
.search-expand-input::placeholder { color: var(--brand-muted); }

/* Close × button inside the input */
.search-close-btn {width: 32px; height: 32px; flex-shrink: 0;border: none; background: none; cursor: pointer;color: var(--brand-muted); border-radius: 50%;display: flex; align-items: center; justify-content: center;font-size: 13px; margin-right: 5px;transition: background .15s, color .15s;opacity: 0;pointer-events: none;}
.search-expand-wrap.open .search-close-btn {opacity: 1;pointer-events: all;}
.search-close-btn:hover { background: rgba(0,0,0,.08); color: var(--brand-text); }

/* Mobile — cap the width so it doesn't overflow the navbar */
@media (max-width: 575px) {
    .search-expand-wrap.open .search-expand-inner {
        max-width: calc(100vw - 130px); /* leaves room for logo + cart */
    }
    .search-expand-input { width: 100%; }
}

/* ── Footer ── */
.footer {background: var(--brand-dark);color: rgba(255,255,255,0.7);padding: 60px 0 30px;}
.footer h6 {color: #fff;font-weight: 600;font-size: 15px;margin-bottom: 20px;}
.footer ul {list-style: none;padding: 0;margin: 0;}
.footer ul li {margin-bottom: 10px;}
.footer ul li a {color: rgba(255,255,255,0.55);text-decoration: none;font-size: 14px;transition: color 0.2s;}
.footer ul li a:hover {color: var(--brand-orange);}
.footer-brand {font-family: 'Playfair Display', serif;font-weight: 700;font-size: 22px;color: #fff;margin-bottom: 12px;}
.footer-brand span {color: var(--brand-orange);}
.footer-desc {font-size: 14px;line-height: 1.7;max-width: 300px;}
.footer-social a {width: 40px;height: 40px;border-radius: 10px;background: rgba(255,255,255,0.08);display: inline-flex;align-items: center;justify-content: center;color: rgba(255,255,255,0.6);font-size: 18px;margin-right: 8px;transition: all 0.2s;text-decoration: none;}
.footer-social a:hover {background: var(--brand-orange);color: #fff;}
.footer-bottom {border-top: 1px solid rgba(255,255,255,0.08);margin-top: 40px;padding-top: 24px;font-size: 13px;color: rgba(255,255,255,0.4);}

.footer-credit {font-size: 0.85rem;}
.footer-credit a {color: #ccc;text-decoration: none;font-weight: 500;}
.footer-credit a:hover {color: #fff;}

/* ── Toast Notification ── */
.toast-container {position: fixed;bottom: 24px;right: 24px;z-index: 9999;}
.custom-toast {background: var(--brand-dark);color: #fff;border-radius: 14px;padding: 16px 24px;display: flex;align-items: center;gap: 12px;box-shadow: 0 12px 40px rgba(0,0,0,0.2);transform: translateY(120%);opacity: 0;transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);margin-top: 8px;font-size: 14px;font-weight: 500;min-width: 280px;}
.custom-toast.show {transform: translateY(0);opacity: 1;}
.custom-toast .toast-icon {width: 36px;height: 36px;border-radius: 10px;background: var(--brand-green-accent);display: flex;align-items: center;justify-content: center;font-size: 18px;flex-shrink: 0;}

/* ── Scroll to top ── */
.scroll-top {position: fixed;bottom: 24px;left: 24px;width: 44px;height: 44px;border-radius: 12px;background: var(--brand-dark);color: #fff;border: none;display: flex;align-items: center;justify-content: center;font-size: 20px;cursor: pointer;opacity: 0;transform: translateY(20px);transition: all 0.3s;z-index: 999;box-shadow: 0 4px 16px rgba(0,0,0,0.15);}
.scroll-top.visible {opacity: 1;transform: translateY(0);}
.scroll-top:hover {background: var(--brand-orange);}

/* ── Animations ── */
.fade-up {opacity: 0;transform: translateY(30px);transition: opacity 0.7s ease, transform 0.7s ease;}
.fade-up.visible {opacity: 1;transform: translateY(0);}


/* ── Hero ── */
.hero-section {background: var(--brand-bg);padding: 60px 0 40px;position: relative;overflow: hidden;}
.hero-section::before {content: '';position: absolute;top: -100px;right: -100px;width: 500px;height: 500px;background: radial-gradient(circle, rgba(192,86,47,0.08) 0%, transparent 70%);border-radius: 50%;}
.hero-section::after {content: '';position: absolute;bottom: -150px;left: -100px;width: 400px;height: 400px;background: radial-gradient(circle, rgba(26,60,52,0.08) 0%, transparent 70%);border-radius: 50%;}
.hero-tag {display: inline-flex;align-items: center;gap: 6px;background: var(--brand-green-light);color: var(--brand-green-accent);font-size: 13px;font-weight: 600;padding: 6px 16px;border-radius: 50px;margin-bottom: 20px;letter-spacing: 0.02em;}
.hero-title {font-family: 'Playfair Display', serif; font-weight: 700;font-size: clamp(36px, 5vw, 64px); line-height: 1.1;color: var(--brand-dark); margin-bottom: 20px; letter-spacing: -0.02em;}
.hero-title span { color: var(--brand-orange); font-style: italic; }
.hero-desc {font-size: 17px; color: var(--brand-muted);line-height: 1.7; max-width: 520px; margin-bottom: 30px;}
.page-hero p.hero-desc { font-size: 15px; color: var(--brand-muted); line-height: 1.7; max-width: 560px; margin-bottom: 18px; }
.hero-img-wrapper {position: relative;border-radius: 24px;overflow: hidden;box-shadow: 0 25px 60px rgba(0,0,0,0.12);}
.hero-img-wrapper img {width: 100%;height: 500px;object-fit: cover;filter: saturate(0.9);}
.hero-img-overlay {position: absolute;bottom: 0;left: 0;right: 0;padding: 30px;background: linear-gradient(to top, rgba(26,60,52,0.85), transparent);color: #fff;}
.hero-img-overlay h5 {font-family: 'Playfair Display', serif;font-weight: 600;margin-bottom: 4px;}
.hero-img-overlay p {font-size: 13px;opacity: 0.85;margin: 0;}

.hero-badge    { display:inline-flex; align-items:center; gap:7px; background:var(--brand-dark); border:1px solid rgba(255,255,255,.2); border-radius:50px; padding:7px 18px; font-size:13px; font-weight:600; color:rgba(255,255,255,.9); margin-bottom:20px; }
.hero-badge i  { color:var(--brand-orange); }

/* ── Trust Badges ── */
.trust-bar {padding: 30px 0;border-bottom: 1px solid var(--brand-border);background: #fff;}
.trust-item {display: flex;align-items: center;gap: 12px;}
.trust-icon {width: 48px;height: 48px;background: var(--brand-green-light);border-radius: 12px;display: flex;align-items: center;justify-content: center;font-size: 22px;color: var(--brand-green-accent);flex-shrink: 0;}
.trust-item h6 {font-size: 14px;font-weight: 600;margin-bottom: 2px;}
.trust-item p {font-size: 12px;color: var(--brand-muted);margin: 0;}


/* ── Section Heading ── */
.section-heading {text-align: center;margin-bottom: 50px;}
.section-heading .overline {font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.15em;color: var(--brand-orange);margin-bottom: 10px;}
.section-heading h2 {font-family: 'Playfair Display', serif;font-weight: 700;font-size: clamp(28px, 3.5vw, 42px);color: var(--brand-dark);margin-bottom: 12px;}
.section-heading p {font-size: 16px;color: var(--brand-muted);max-width: 560px;margin: 0 auto;}

/*Product Cards*/
.products-section {padding: 80px 0;background: var(--brand-bg);}
.product-card {background: #fff;border-radius: 16px;overflow: hidden;border: 1px solid var(--brand-border);transition: all 0.3s ease;height: 100%;display: flex;flex-direction: column;}
.product-card:hover {transform: translateY(-6px);box-shadow: 0 20px 40px rgba(0,0,0,0.1);border-color: transparent;}
.product-card-img {position: relative;overflow: hidden;background: var(--brand-bg-alt);height: 300px;}
.product-card-img img {width: 100%;height: 100%;object-fit: cover;transition: transform 0.5s ease;}
.product-card:hover .product-card-img img {transform: scale(1.06);}
.product-badge {position: absolute;top: 12px;left: 12px;font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.05em;padding: 4px 12px;border-radius: 50px;background: var(--brand-dark);color: #fff;}
.product-badge.hot {background: var(--brand-orange);}
.product-badge.new {background: var(--brand-green-accent);}
.product-card-body {padding: 20px;flex: 1;display: flex;flex-direction: column;}
.product-category {font-size: 11px;font-weight: 600;text-transform: uppercase;letter-spacing: 0.1em;color: var(--brand-orange);margin-bottom: 6px;}
.product-card-body h5 {font-family: 'DM Sans', sans-serif;font-weight: 600;font-size: 16px;color: var(--brand-dark);margin-bottom: 6px;line-height: 1.35;}
.product-spec {font-size: 13px;color: var(--brand-muted);margin-bottom: 16px;flex: 1;}
.product-price-row {display: flex;align-items: center;gap: 10px;margin-bottom: 12px;}
.offer-price {font-size: 1.3rem;font-weight: 700;color: #28a745;}
.mrp-price {font-size: 1rem;color: #888;text-decoration: line-through;}
.discount-badge {background: #dc3545;color: #fff;font-size: 11px;font-weight: 600;padding: 2px 6px;border-radius: 4px;}
.product-price {font-size: 22px;font-weight: 700;color: var(--brand-dark);}
.product-price small {font-size: 13px;font-weight: 400;color: var(--brand-muted);}
.product-rating {display: flex;align-items: center;gap: 4px;font-size: 13px;color: var(--brand-muted);}
.product-rating i {color: #F59E0B;font-size: 12px;}
.btn-add-cart {width: 100%;background: var(--brand-orange);color: #fff;border: 2px solid var(--brand-orange);border-radius: 12px;padding: 12px 20px;font-weight: 600;font-size: 14px;display: flex;align-items: center;justify-content: center;gap: 8px;transition: all 0.25s ease;cursor: pointer;}
.btn-add-cart:hover {background: var(--brand-orange);border-color: var(--brand-orange);color: #fff;transform: translateY(-1px);box-shadow: 0 6px 20px rgba(192,86,47,0.3);}
.btn-add-cart.added {background: var(--brand-green-accent);border-color: var(--brand-green-accent);}

/* ── Category Filter ── */
.filter-pills {display: flex;flex-wrap: wrap;justify-content: center; gap: 8px;margin-bottom: 40px;}
.filter-pill {padding: 8px 20px;border-radius: 50px;border: 1.5px solid var(--brand-border);background: #fff;font-size: 13px;font-weight: 500;color: var(--brand-muted);cursor: pointer;transition: all 0.2s;}
.filter-pill:hover, .filter-pill.active {background: var(--brand-dark);border-color: var(--brand-dark);color: #fff;}

/* ── Features ── */
.features-section {padding: 80px 0;background: var(--brand-dark);color: #fff;}
.features-section .section-heading .overline {color: var(--brand-orange);}
.features-section .section-heading h2 {color: #fff;}
.features-section .section-heading p {color: rgba(255,255,255,0.6);}

.expert-section{padding: 80px 0;background:var(--brand-bg-alt);}
.expert-photo{border-radius:18px;border:8px solid #fff;max-width:360px;}
.expert-tag{display:inline-block;background:var(--brand-green-light);color:var(--brand-green-accent);padding:8px 18px;border-radius:30px;font-size:.9rem;font-weight:600;}
.expert-section h2{color:var(--brand-text-secondary);font-weight:700;}
.expert-section h2 span{color:var(--brand-orange);}
.expert-section p{color:var(--brand-muted);line-height:1.8;}
.expert-card{background:#fff;border-radius:12px;padding:22px;margin-bottom:20px;height:100%;border:1px solid var(--brand-border);}
.expert-card h5{color:var(--brand-dark);margin-bottom:15px;font-weight:700;}
.expert-card ul{margin:0;padding-left:18px;}
.expert-card li{margin-bottom:10px;color:var(--brand-muted);}
.product-tags{display:flex;flex-wrap:wrap;gap:10px;}
.product-tags span{background:var(--brand-dark);color:#fff;padding:8px 15px;border-radius:30px;font-size:.9rem;}
.btn-brand{background:var(--brand-orange);color:#fff;padding:12px 30px;border-radius:40px;font-weight:600;}
.btn-brand:hover{background:var(--brand-orange-hover);color:#fff;}

/* ══ Experts Page ══ */
.expert-about {padding:90px 0;background:#fff;}
.expert-profile-wrap {position:relative;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.1);}
.expert-profile-wrap img {width:100%;height:520px;object-fit:cover;}
.expert-profile-badge {position:absolute;bottom:24px;left:24px;background:#fff;border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 12px 30px rgba(0,0,0,.12);}
.expert-profile-badge .eb-icon {width:44px;height:44px;border-radius:12px;background:var(--brand-dark);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.expert-profile-badge h6 {font-size:14px;font-weight:700;margin-bottom:2px;color:var(--brand-dark);}
.expert-profile-badge p {font-size:12px;color:var(--brand-muted);margin:0;}
.expert-cred-list {list-style:none;padding:0;margin:24px 0 0;}
.expert-cred-list li {display:flex;align-items:flex-start;gap:12px;font-size:15px;color:var(--brand-text);line-height:1.65;margin-bottom:12px;}
.expert-cred-list li i {font-size:18px;color:var(--brand-green-accent);flex-shrink:0;margin-top:2px;}
.expert-cred-list li strong {color:var(--brand-dark);}
.expert-focus {padding:80px 0;background:var(--brand-bg-alt);}
.expert-botanicals {padding:80px 0;background:var(--brand-bg);}
.expert-botanicals .product-tags {justify-content:center;max-width:720px;margin:0 auto;}
.expert-botanicals .lead {text-align:center;font-size:15px;color:var(--brand-muted);max-width:640px;margin:28px auto 0;line-height:1.7;}

/* ══ Home Expert Info Block ══ */
.expert-info-block {padding:80px 0;background:var(--brand-bg);}
.expert-info-card {background:linear-gradient(135deg,var(--brand-dark) 0%,#2a5c50 100%);border-radius:24px;padding:56px 52px;color:#fff;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.16);}
.expert-info-card::before {content:'';position:absolute;top:-60px;right:-60px;width:320px;height:320px;background:radial-gradient(circle,rgba(192,86,47,.25),transparent 70%);border-radius:50%;}
.expert-info-card::after {content:'';position:absolute;bottom:-80px;left:-40px;width:260px;height:260px;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 70%);border-radius:50%;}
.expert-info-card > .row {position:relative;z-index:1;}
.expert-info-badge {display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:50px;padding:7px 18px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-bottom:18px;}
.expert-info-badge i {color:var(--brand-orange);}
.expert-info-card h3 {font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(24px,3vw,34px);margin-bottom:14px;line-height:1.2;}
.expert-info-card p {font-size:15px;color:rgba(255,255,255,.75);line-height:1.75;margin-bottom:18px;max-width:520px;}
.expert-info-points {display:flex;flex-wrap:wrap;gap:10px 18px;}
.expert-info-points span {display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:rgba(255,255,255,.9);}
.expert-info-points span i {color:#81C784;font-size:15px;}
.expert-facts-card {background:#fff;border-radius:18px;padding:28px;box-shadow:0 18px 44px rgba(0,0,0,.14);}
.ef-item {display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--brand-border);}
.ef-item:last-child {border-bottom:none;padding-bottom:0;}
.ef-item i {width:44px;height:44px;border-radius:12px;background:var(--brand-bg-alt);color:var(--brand-dark);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.ef-item strong {display:block;font-size:14px;font-weight:700;color:var(--brand-dark);}
.ef-item span {font-size:12px;color:var(--brand-muted);}
@media (max-width: 767px) {
    .expert-info-card {padding:36px 24px;}
    .expert-profile-wrap img {height:360px;}
}

/*About Us*/
.page-hero {background: var(--brand-bg);padding: 60px 0 50px;position: relative;overflow: hidden;}
.page-hero::before {content: '';position: absolute; top: -100px; right: -100px;width: 500px; height: 500px;background: radial-gradient(circle, rgba(192,86,47,0.08) 0%, transparent 70%);border-radius: 50%;}
.page-hero::after {content: '';position: absolute; bottom: -150px; left: -100px;width: 400px; height: 400px;background: radial-gradient(circle, rgba(26,60,52,0.08) 0%, transparent 70%);border-radius: 50%;}
.page-hero h1 {font-family: 'Playfair Display', serif;font-weight: 700;font-size: clamp(32px, 4vw, 52px);color: var(--brand-dark);letter-spacing: -0.02em;line-height: 1.12;margin-bottom: 14px;}
.page-hero h1 span {color: var(--brand-orange);font-style: italic;}
.page-hero p {font-size: 16px;color: var(--brand-muted);line-height: 1.7;max-width: 480px;margin: 0;}
.breadcrumb-custom {display: flex; align-items: center; gap: 8px;font-size: 13px; color: var(--brand-muted);margin-bottom: 18px; position:relative; z-index: 10;}
.breadcrumb-custom a { color: var(--brand-dark); text-decoration: none; font-weight: 500; }
.breadcrumb-custom a:hover { color: var(--brand-orange); }
.breadcrumb-custom i { font-size: 11px; color: var(--brand-muted); }
.meta-chips {display: flex;flex-wrap: wrap;gap: 12px;}
.meta-chip {display: inline-flex;align-items: center;gap: 6px;font-size: 12px;font-weight: 600;color: var(--brand-muted);background: #fff;padding: 6px 14px;border-radius: 50px;border: 1px solid var(--brand-border);}
.meta-chip i {color: var(--brand-orange);}

.hero-img-overlay {position: absolute; bottom: 0; left: 0; right: 0; padding: 30px;background: linear-gradient(to top, rgba(26,60,52,0.85), transparent);color: #fff;}
.hero-img-overlay h5 {font-family: 'Playfair Display', serif; font-weight: 600; margin-bottom: 4px;}
.hero-img-overlay p { font-size: 13px; opacity: 0.85; margin: 0; }
.hero-trust {display: flex;flex-wrap: wrap;gap: 20px;margin-top: 28px;}
.hero-trust-item {display: flex;align-items: center;gap: 8px;font-size: 13px;font-weight: 500;color: var(--brand-text);}
.hero-trust-item i {color: var(--brand-green-accent);font-size: 16px;}

/* ── Stats Bar ── */
.stats-bar {background: var(--brand-dark);padding: 50px 0;}
.stat-item {text-align: center;padding: 10px 20px;}
.stat-item .stat-number {font-family: 'Playfair Display', serif;font-size: clamp(36px, 4vw, 52px);font-weight: 700;color: #fff;line-height: 1;margin-bottom: 6px;}
.stat-item .stat-number span {color: var(--brand-orange);}
.stat-item .stat-label {font-size: 14px;color: rgba(255,255,255,0.55);font-weight: 500;letter-spacing: 0.02em;}
.stat-divider {width: 1px;background: rgba(255,255,255,0.1);align-self: stretch;margin: 10px 0;}

/* ── Our Story ── */
.story-section {padding: 90px 0;background: #fff;}
.story-img-wrap {position: relative; border-radius: 24px; overflow: hidden;box-shadow: 0 20px 50px rgba(0,0,0,0.1);}
.story-img-wrap img {width: 100%; height: 480px; object-fit: cover; filter: saturate(0.9);}
.story-badge {position: absolute; bottom: 28px; left: 28px;background: #fff; border-radius: 16px; padding: 18px 22px;box-shadow: 0 12px 30px rgba(0,0,0,0.12);display: flex; align-items: center; gap: 14px;}
.story-badge .badge-icon {width: 48px; height: 48px; border-radius: 12px;background: var(--brand-dark);display: flex; align-items: center; justify-content: center;font-size: 22px; color: #fff; flex-shrink: 0;}
.story-badge h6 { font-size: 15px; font-weight: 700; margin-bottom: 2px; }
.story-badge p { font-size: 12px; color: var(--brand-muted); margin: 0; }
.overline-left {font-size: 12px; font-weight: 700; text-transform: uppercase;letter-spacing: 0.15em; color: var(--brand-orange);margin-bottom: 12px; display: block;}
.story-title {font-family: 'Playfair Display', serif; font-weight: 700;font-size: clamp(28px, 3vw, 40px); color: var(--brand-dark);line-height: 1.2; margin-bottom: 20px;}
.story-title span { color: var(--brand-orange); font-style: italic; }
.story-text {font-size: 16px; color: var(--brand-muted);line-height: 1.8; margin-bottom: 16px;}
.story-check {display: flex; align-items: flex-start; gap: 12px; margin-bottom: 14px;}
.story-check i {font-size: 20px; color: var(--brand-green-accent);margin-top: 1px; flex-shrink: 0;}
.story-check p { font-size: 15px; color: var(--brand-text); margin: 0; line-height: 1.6; }

/*── Core Values ──*/
.values-section {padding: 80px 0;background: var(--brand-dark);color: #fff;}
.values-section .section-heading .overline { color: var(--brand-orange); }
.values-section .section-heading h2 { color: #fff; }
.values-section .section-heading p { color: rgba(255,255,255,0.6); }
.feature-card {text-align: center; padding: 36px 24px; border-radius: 20px;background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08);transition: all 0.3s; height: 100%;}
.feature-card:hover { background: rgba(255,255,255,0.1); transform: translateY(-4px); }
.feature-icon {width: 64px; height: 64px; border-radius: 16px;background: var(--brand-orange);display: flex; align-items: center; justify-content: center;font-size: 28px; margin: 0 auto 20px; color: #fff;}
.feature-card h5 { font-weight: 600; font-size: 18px; margin-bottom: 10px; }
.feature-card p { font-size: 14px; color: rgba(255,255,255,0.55); line-height: 1.6; margin: 0; }

/* ── Process / Timeline ── */
.process-section {padding: 90px 0;background: var(--brand-bg-alt);}
.process-step {display: flex; gap: 24px; align-items: flex-start;padding: 32px; background: #fff; border-radius: 20px;border: 1px solid var(--brand-border); height: 100%;transition: all 0.3s;}
.process-step:hover {transform: translateY(-4px);box-shadow: 0 16px 40px rgba(0,0,0,0.08);border-color: transparent;}
.step-number {width: 52px; height: 52px; border-radius: 14px;background: var(--brand-dark); color: #fff;display: flex; align-items: center; justify-content: center;font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 700;flex-shrink: 0;}
.process-step h5 { font-weight: 700; font-size: 17px; margin-bottom: 8px; color: var(--brand-dark); }
.process-step p { font-size: 14px; color: var(--brand-muted); line-height: 1.65; margin: 0; }

/* ── CTA Banner (identical to reference) ── */
.cta-section { padding: 80px 0; background: var(--brand-bg-alt); }
.cta-banner {background: linear-gradient(135deg, var(--brand-dark) 0%, #2a5c50 100%);border-radius: 24px; padding: 60px 50px;color: #fff; position: relative; overflow: hidden;}
.cta-banner::before {content: ''; position: absolute; top: -50px; right: -50px;width: 300px; height: 300px;background: radial-gradient(circle, rgba(192,86,47,0.2), transparent 70%);border-radius: 50%;}
.cta-banner h2 {font-family: 'Playfair Display', serif; font-weight: 700;font-size: clamp(26px, 3vw, 38px); margin-bottom: 14px;}
.cta-banner p {font-size: 16px; color: rgba(255,255,255,0.7);max-width: 500px; margin-bottom: 28px; line-height: 1.7;}
.btn-cta {background: var(--brand-orange); color: #fff; border: none;border-radius: 12px; padding: 14px 32px; font-weight: 600; font-size: 15px;display: inline-flex; align-items: center; gap: 8px;transition: all 0.25s; text-decoration: none;}
.btn-cta:hover {background: var(--brand-orange-hover); color: #fff;transform: translateY(-2px); box-shadow: 0 8px 24px rgba(192,86,47,0.35);}

/* ── Mission & Vision ── */
.mv-section {padding: 80px 0;background: var(--brand-bg);}
.mv-card {background: #fff; border-radius: 20px; padding: 40px 36px;height: 100%; border: 1px solid var(--brand-border);position: relative; overflow: hidden; transition: all 0.3s;}
.mv-card::before {content: ''; position: absolute; top: -60px; right: -60px;width: 180px; height: 180px;background: radial-gradient(circle, rgba(192,86,47,0.08), transparent 70%);border-radius: 50%;}
.mv-card:hover { transform: translateY(-5px); box-shadow: 0 20px 50px rgba(0,0,0,0.08); }
.mv-card .mv-icon {width: 60px; height: 60px; border-radius: 16px;background: var(--brand-dark);display: flex; align-items: center; justify-content: center;font-size: 26px; color: #fff; margin-bottom: 22px;}
.mv-card.vision .mv-icon { background: var(--brand-orange); }
.mv-card h3 {font-family: 'Playfair Display', serif;font-size: 26px; font-weight: 700;color: var(--brand-dark); margin-bottom: 14px;}
.mv-card p { font-size: 15px; color: var(--brand-muted); line-height: 1.8; margin: 0; }

/* ─── Shop Layout ─── */
.shop-section { padding: 50px 0 80px; background: var(--brand-bg); }
/* ─── Toolbar ─── */
.shop-toolbar {background: #fff; border-radius: 14px; padding: 14px 20px;border: 1px solid var(--brand-border);display: flex; align-items: center; flex-wrap: wrap; gap: 12px;margin-bottom: 20px;}
.search-wrap {position: relative; flex: 1; min-width: 220px;}
.search-wrap i {position: absolute; left: 14px; top: 50%; transform: translateY(-50%);color: var(--brand-muted); font-size: 15px; pointer-events: none;}
.search-input {width: 100%; border: 1.5px solid var(--brand-border); border-radius: 10px;padding: 10px 14px 10px 38px; font-size: 14px; font-family: 'DM Sans', sans-serif;background: var(--brand-card); color: var(--brand-text); outline: none;transition: border-color 0.2s;}
.search-input:focus { border-color: var(--brand-dark); background: #fff; }
.search-input::placeholder { color: var(--brand-muted); }
.search-clear {position: absolute; right: 12px; top: 50%; transform: translateY(-50%);background: none; border: none; color: var(--brand-muted); cursor: pointer;font-size: 14px; padding: 0; display: none; transition: color 0.2s;}
.search-clear:hover { color: var(--brand-orange); }
.search-clear.visible { display: block; }
.result-count {font-size: 13px; color: var(--brand-muted); white-space: nowrap;}
.result-count strong { color: var(--brand-dark); }
.sort-wrap { display: flex; align-items: center; gap: 8px; }
.sort-label { font-size: 13px; color: var(--brand-muted); white-space: nowrap; font-weight: 500; }
.sort-select {border: 1.5px solid var(--brand-border); border-radius: 10px;padding: 9px 34px 9px 14px; font-size: 13px; font-family: 'DM Sans', sans-serif;background: var(--brand-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%236B7280' d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") no-repeat right 12px center;color: var(--brand-text); font-weight: 500; outline: none;cursor: pointer; transition: border-color 0.2s; -webkit-appearance: none;}
.sort-select:focus { border-color: var(--brand-dark); }
.view-toggle { display: flex; gap: 4px; }
.view-btn {width: 36px; height: 36px; border-radius: 8px; border: 1.5px solid var(--brand-border);background: #fff; color: var(--brand-muted); display: flex; align-items: center;justify-content: center; cursor: pointer; font-size: 16px; transition: all 0.2s;}
.view-btn:hover, .view-btn.active {background: var(--brand-dark); color: #fff; border-color: var(--brand-dark);}
.filter-mob-btn {display: flex; align-items: center; gap: 8px; padding: 9px 18px; background: var(--brand-dark); color: #fff; border: none; border-radius: 10px; font-size: 13px; font-weight: 600;cursor: pointer; font-family: 'DM Sans', sans-serif; transition: background 0.2s;}
.filter-mob-btn:hover { background: var(--brand-orange); }
/* ─── Active Filter Tags ─── */
.active-filters {display: flex; flex-wrap: wrap; align-items: center; gap: 8px;margin-bottom: 16px; min-height: 0;}
.active-filters-label {font-size: 12px; font-weight: 600; color: var(--brand-muted);text-transform: uppercase; letter-spacing: 0.08em;}
.filter-tag {display: inline-flex; align-items: center; gap: 6px;background: #fff; border: 1.5px solid var(--brand-border);border-radius: 50px; padding: 5px 14px 5px 12px;font-size: 12px; font-weight: 600; color: var(--brand-dark);cursor: default; transition: all 0.2s;}
.filter-tag .remove-tag {background: none; border: none; color: var(--brand-muted);padding: 0; cursor: pointer; font-size: 14px; line-height: 1;display: flex; align-items: center; transition: color 0.2s;}
.filter-tag .remove-tag:hover { color: var(--brand-orange); }
.clear-all-btn {background: none; border: none; color: var(--brand-orange);font-size: 12px; font-weight: 600; cursor: pointer; padding: 0;text-decoration: underline; font-family: 'DM Sans', sans-serif;transition: color 0.2s;}
.clear-all-btn:hover { color: var(--brand-orange-hover); }
/* ─── Sidebar ─── */
.filter-sidebar {background: #fff; border-radius: 18px; border: 1px solid var(--brand-border);overflow: hidden; position: sticky; top: 86px;}
.sidebar-header {padding: 20px 22px 16px; border-bottom: 1px solid var(--brand-border);display: flex; align-items: center; justify-content: space-between;}
.sidebar-header h6 {font-size: 15px; font-weight: 700; color: var(--brand-dark); margin: 0;}
.sidebar-clear {font-size: 12px; font-weight: 600; color: var(--brand-orange);background: none; border: none; cursor: pointer; padding: 0;font-family: 'DM Sans', sans-serif; transition: color 0.2s;}
.sidebar-clear:hover { color: var(--brand-orange-hover); }
.filter-group { padding: 20px 22px; border-bottom: 1px solid var(--brand-border); }
.filter-group:last-child { border-bottom: none; }
.filter-group-title {font-size: 12px; font-weight: 700; text-transform: uppercase;letter-spacing: 0.12em; color: var(--brand-muted); margin-bottom: 14px;}
/* Custom Checkboxes & Radios matching brand */
.brand-check { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; cursor: pointer; }
.brand-check:last-child { margin-bottom: 0; }
.brand-check input[type="checkbox"],
.brand-check input[type="radio"] {width: 17px; height: 17px; border: 2px solid var(--brand-border); border-radius: 4px; cursor: pointer; accent-color: var(--brand-dark);flex-shrink: 0;}
.brand-check input[type="radio"] { border-radius: 50%; }
.brand-check label {font-size: 14px; font-weight: 500; color: var(--brand-text);cursor: pointer; display: flex; align-items: center; justify-content: space-between;width: 100%;}
.brand-check label .count {font-size: 11px; color: var(--brand-muted); background: var(--brand-card);padding: 2px 8px; border-radius: 50px; font-weight: 600;}

/* Policy Layout */
.policy-section-wrap { padding: 60px 0 80px; }

/* TOC Sidebar */
.toc-card { background: #fff; border-radius: 18px; border: 1px solid var(--brand-border); overflow: hidden; position: sticky; top: 86px; }
.toc-header { padding: 18px 20px 14px; border-bottom: 1px solid var(--brand-border); }
.toc-header h6 { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: var(--brand-muted); margin: 0; }
.toc-list { list-style: none; padding: 14px 0; margin: 0; }
.toc-list li { margin: 0; }
.toc-link { display: flex; align-items: center; gap: 10px; padding: 9px 20px; font-size: 13px; font-weight: 500; color: var(--brand-muted); text-decoration: none; transition: all .2s; border-left: 3px solid transparent; }
.toc-link:hover { color: var(--brand-dark); background: var(--brand-bg); }
.toc-link.active { color: var(--brand-orange); background: var(--brand-bg-alt); border-left-color: var(--brand-orange); font-weight: 600; }
.toc-link .toc-num { width: 20px; height: 20px; border-radius: 50%; background: var(--brand-card); display: flex; align-items: center; justify-content: center; font-size: 10px; font-weight: 700; flex-shrink: 0; transition: all .2s; }
.toc-link.active .toc-num { background: var(--brand-orange); color: #fff; }
.toc-cta { padding: 16px 20px; border-top: 1px solid var(--brand-border); }
.toc-cta a { display: flex; align-items: center; gap: 8px; padding: 10px 16px; background: var(--brand-dark); color: #fff; border-radius: 10px; font-size: 13px; font-weight: 600; text-decoration: none; transition: background .2s; justify-content: center; }
.toc-cta a:hover { background: var(--brand-orange); }

/* Policy Content */
.policy-section { background: #fff; border-radius: 18px; padding: 36px; margin-bottom: 20px; border: 1px solid var(--brand-border); transition: box-shadow .25s; }
.policy-section.fade-up {transition: opacity .65s ease, transform .65s ease, box-shadow .25s;}
.policy-section:hover { box-shadow: 0 8px 30px rgba(0,0,0,.07); }
.section-num { font-family: 'Playfair Display', serif; font-size: 13px; font-weight: 700; color: var(--brand-orange); letter-spacing: .08em; margin-bottom: 6px; display: block; }
.section-title { font-family: 'Playfair Display', serif; font-weight: 700; font-size: clamp(18px,2vw,24px); color: var(--brand-dark); margin-bottom: 16px; line-height: 1.2; }
.policy-text { font-size: 15px; color: var(--brand-muted); line-height: 1.8; margin-bottom: 14px; }
.policy-text:last-child { margin-bottom: 0; }
.policy-list { list-style: none; padding: 0; margin: 14px 0; }
.policy-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; color: var(--brand-muted); line-height: 1.7; padding: 6px 0; border-bottom: 1px solid var(--brand-bg-alt); }
.policy-list li:last-child { border-bottom: none; }
.policy-list li::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--brand-orange); flex-shrink: 0; margin-top: 9px; }
.policy-list li strong { color: var(--brand-dark); }

/* Callout boxes */
.callout { border-radius: 12px; padding: 18px 20px; margin: 18px 0; display: flex; gap: 14px; align-items: flex-start; }
.callout.info { background: var(--brand-green-light); border-left: 4px solid var(--brand-green-accent); }
.callout.warn { background: #FFF7ED; border-left: 4px solid var(--brand-orange); }
.callout.dark { background: rgba(26,60,52,.06); border-left: 4px solid var(--brand-dark); }
.callout i { font-size: 18px; flex-shrink: 0; margin-top: 1px; }
.callout.info i { color: var(--brand-green-accent); }
.callout.warn i { color: var(--brand-orange); }
.callout.dark i { color: var(--brand-dark); }
.callout p { font-size: 14px; line-height: 1.65; margin: 0; color: var(--brand-text); }
.callout strong { color: var(--brand-dark); }

/* Table */
.policy-table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 16px 0; }
.policy-table th { background: var(--brand-dark); color: #fff; padding: 12px 16px; text-align: left; font-weight: 600; font-size: 13px; }
.policy-table th:first-child { border-radius: 10px 0 0 0; }
.policy-table th:last-child  { border-radius: 0 10px 0 0; }
.policy-table td { padding: 11px 16px; border-bottom: 1px solid var(--brand-border); color: var(--brand-muted); vertical-align: top; line-height: 1.6; }
.policy-table tr:hover td { background: var(--brand-bg); }
.policy-table tr:last-child td { border-bottom: none; }
.policy-table td strong { color: var(--brand-dark); font-weight: 600; }
.table-wrap { overflow-x: auto; border-radius: 12px; border: 1px solid var(--brand-border); }

/* Policy intro card */
.policy-intro { background: linear-gradient(135deg, var(--brand-dark) 0%, #2a5c50 100%); border-radius: 18px; padding: 32px; color: #fff; margin-bottom: 20px; }
.policy-intro p { font-size: 15px; line-height: 1.75; color: rgba(255,255,255,.8); margin: 0; }
.policy-intro h5 { font-family: 'Playfair Display', serif; font-size: 18px; font-weight: 700; margin-bottom: 10px; }

/*Cart Page*/

.cart-section{ padding:40px 0 80px; background:var(--brand-bg); }
/* ── Free Shipping Bar ── */
.free-ship-bar      { background:#fff; border-radius:14px; padding:16px 20px; margin-bottom:20px; border:1px solid var(--brand-border); }
.free-ship-text     { font-size:13px; font-weight:600; color:var(--brand-dark); margin-bottom:10px; }
.free-ship-text span{ color:var(--brand-orange); }
.free-ship-text.unlocked { color:var(--brand-green-accent); }
.progress-wrap      { height:7px; background:var(--brand-bg-alt); border-radius:50px; overflow:hidden; }
.progress-fill      { height:100%; background:linear-gradient(90deg,var(--brand-green-accent),var(--brand-orange)); border-radius:50px; transition:width .5s ease; }

/* ── Cart Items Card ── */
.cart-items-card    { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; margin-bottom:16px; }
.cart-card-header   { padding:18px 24px 14px; border-bottom:1px solid var(--brand-border); display:flex; align-items:center; justify-content:space-between; }
.cart-card-header h6{ font-size:14px; font-weight:700; color:var(--brand-dark); margin:0; }
.clear-cart-btn     { background:none; border:none; font-size:13px; font-weight:600; color:var(--brand-muted); cursor:pointer; font-family:'DM Sans',sans-serif; transition:color .2s; display:flex; align-items:center; gap:6px; }
.clear-cart-btn:hover{ color:#dc2626; }

/* ── Cart Item Row ── */
.cart-item          { padding:20px 24px; border-bottom:1px solid var(--brand-border); display:flex; gap:18px; align-items:flex-start; transition:background .2s; }
.cart-item:last-child{ border-bottom:none; }
.cart-item:hover    { background:rgba(223,219,209,.25); }
.cart-item.removing { opacity:.4; pointer-events:none; transition:opacity .35s; }

.cart-thumb         { width:88px; height:88px; border-radius:12px; overflow:hidden; flex-shrink:0; border:1px solid var(--brand-border); background:var(--brand-bg-alt); }
.cart-thumb img     { width:100%; height:100%; object-fit:cover; }

.cart-item-info     { flex:1; min-width:0; }
.cart-item-category { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--brand-orange); margin-bottom:4px; }
.cart-item-name     { font-weight:700; font-size:15px; color:var(--brand-dark); margin-bottom:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cart-item-name a   { color:inherit; text-decoration:none; }
.cart-item-name a:hover{ color:var(--brand-orange); }
.variant-tag        { display:inline-flex; align-items:center; gap:5px; background:var(--brand-bg-alt); color:var(--brand-muted); font-size:11px; font-weight:600; padding:3px 10px; border-radius:50px; border:1px solid var(--brand-border); margin-bottom:12px; }

/* Item qty + price row */
.cart-item-controls { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:4px; }
.qty-wrap-sm        { display:inline-flex; align-items:center; border:1.5px solid var(--brand-border); border-radius:10px; overflow:hidden; background:var(--brand-card); }
.qty-btn-sm         { width:34px; height:34px; border:none; cursor:pointer; font-size:17px; display:flex; align-items:center; justify-content:center; background:transparent; color:var(--brand-dark); transition:all .2s; }
.qty-btn-sm:hover   { background:var(--brand-dark); color:#fff; }
.qty-btn-sm.plus:hover{ background:var(--brand-orange); color:#fff; }
.qty-btn-sm:disabled{ opacity:.3; cursor:not-allowed; }
.qty-num-sm         { width:42px; height:34px; border:none; border-left:1px solid var(--brand-border); border-right:1px solid var(--brand-border); text-align:center; font-size:14px; font-weight:700; color:var(--brand-dark); background:#fff; font-family:'DM Sans',sans-serif; outline:none; -moz-appearance:textfield; }
.qty-num-sm::-webkit-inner-spin-button,
.qty-num-sm::-webkit-outer-spin-button { -webkit-appearance:none; }

.item-price-col     { text-align:right; flex-shrink:0; }
.item-offer-price   { font-family:'Playfair Display',serif; font-size:18px; font-weight:700; color:var(--brand-dark); display:block; }
.item-mrp-price     { font-size:12px; color:var(--brand-muted); text-decoration:line-through; display:block; }
.item-saving        { font-size:11px; font-weight:700; color:var(--brand-green-accent); display:block; }
.remove-btn         { background:none; border:none; color:var(--brand-muted); cursor:pointer; font-size:16px; padding:2px 6px; border-radius:8px; transition:all .2s; display:flex; align-items:center; }
.remove-btn:hover   { background:#fee2e2; color:#dc2626; }

/* ── Coupon Input ── */
.coupon-card        { background:#fff; border-radius:14px; padding:20px; border:1px solid var(--brand-border); margin-bottom:16px; }
.coupon-label       { font-size:13px; font-weight:700; color:var(--brand-dark); margin-bottom:10px; display:block; }
.coupon-row         { display:flex; gap:8px; }
.coupon-input       { flex:1; border:1.5px solid var(--brand-border); border-radius:10px; padding:10px 14px; font-size:13px; font-family:'DM Sans',sans-serif; outline:none; transition:border-color .2s; background:var(--brand-card); }
.coupon-input:focus { border-color:var(--brand-dark); background:#fff; }
.coupon-apply-btn   { background:var(--brand-dark); color:#fff; border:none; border-radius:10px; padding:10px 20px; font-weight:700; font-size:13px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:background .2s; white-space:nowrap; }
.coupon-apply-btn:hover{ background:var(--brand-orange); }
.coupon-applied     { display:flex; align-items:center; justify-content:space-between; background:var(--brand-green-light); border-radius:10px; padding:10px 14px; }
.coupon-applied span{ font-size:13px; font-weight:700; color:var(--brand-green-accent); }
.coupon-remove      { background:none; border:none; color:#dc2626; cursor:pointer; font-size:13px; font-weight:600; font-family:'DM Sans',sans-serif; }
.coupon-msg         { font-size:12px; margin-top:6px; display:none; }
.coupon-msg.success { color:var(--brand-green-accent); display:block; }
.coupon-msg.error   { color:#dc2626; display:block; }

/* ── Order Summary Card ── */
.summary-card       { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; position:sticky; top:90px; }
.summary-header     { padding:20px 24px 16px; border-bottom:1px solid var(--brand-border); }
.summary-header h6  { font-family:'Playfair Display',serif; font-size:18px; font-weight:700; color:var(--brand-dark); margin:0; }
.summary-body       { padding:20px 24px; }
.summary-row        { display:flex; justify-content:space-between; align-items:center; font-size:14px; color:var(--brand-muted); padding:9px 0; border-bottom:1px dashed var(--brand-border); }
.summary-row:last-of-type{ border-bottom:none; }
.summary-row .label { display:flex; align-items:center; gap:7px; }
.summary-row .val   { font-weight:600; color:var(--brand-dark); }
.summary-row .val.green { color:var(--brand-green-accent); }
.summary-row .val.orange{ color:var(--brand-orange); }
.summary-total-row  { display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-top:2px solid var(--brand-dark); background:var(--brand-dark); }
.summary-total-row .t-label{ font-size:15px; font-weight:700; color:rgba(255,255,255,.85); }
.summary-total-row .t-val  { font-family:'Playfair Display',serif; font-size:26px; font-weight:700; color:#fff; }
.summary-saving-tag { background:rgba(46,125,50,.2); color:#81C784; font-size:11px; font-weight:700; padding:2px 10px; border-radius:50px; margin-left:8px; }

.checkout-btn       { width:100%; background:var(--brand-orange); color:#fff; border:none; border-radius:12px; padding:15px; font-weight:700; font-size:15px; display:flex; align-items:center; justify-content:center; gap:9px; transition:all .25s; cursor:pointer; font-family:'DM Sans',sans-serif; }
.checkout-btn:hover { background:var(--brand-orange-hover); transform:translateY(-2px); box-shadow:0 6px 20px rgba(192,86,47,.3); }
.continue-btn       { width:100%; background:#fff; color:var(--brand-dark); border:1.5px solid var(--brand-border); border-radius:12px; padding:12px; font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center; gap:8px; transition:all .2s; cursor:pointer; font-family:'DM Sans',sans-serif; text-decoration:none; margin-top:10px; }
.continue-btn:hover { border-color:var(--brand-dark); background:var(--brand-bg); color:var(--brand-dark); }
.summary-trust      { padding:16px 24px 20px; border-top:1px solid var(--brand-border); display:flex; flex-direction:column; gap:9px; }
.summary-trust-item { display:flex; align-items:center; gap:9px; font-size:12px; font-weight:500; color:var(--brand-muted); }
.summary-trust-item i{ color:var(--brand-orange); font-size:15px; }

/* ── Empty State ── */
.empty-cart         { background:#fff; border-radius:18px; padding:70px 30px; text-align:center; border:1px solid var(--brand-border); }
.empty-cart-icon    { width:90px; height:90px; border-radius:24px; background:var(--brand-bg-alt); display:flex; align-items:center; justify-content:center; margin:0 auto 24px; font-size:38px; color:var(--brand-muted); }
.empty-cart h4      { font-family:'Playfair Display',serif; font-weight:700; color:var(--brand-dark); margin-bottom:10px; }
.empty-cart p       { font-size:15px; color:var(--brand-muted); max-width:340px; margin:0 auto 28px; line-height:1.7; }
.btn-shop           { display:inline-flex; align-items:center; gap:8px; background:var(--brand-dark); color:#fff; border-radius:12px; padding:13px 30px; font-weight:700; font-size:15px; text-decoration:none; transition:all .25s; }
.btn-shop:hover     { background:var(--brand-orange); color:#fff; transform:translateY(-2px); }

/* ── Checkout layout ── */
.checkout-section { padding:36px 0 80px; background:var(--brand-bg); }
.checkout-steps   { display:flex; align-items:center; margin-bottom:28px; }
.cs-step { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--brand-muted); }
.cs-step .num { width:28px; height:28px; border-radius:50%; border:2px solid var(--brand-border); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; flex-shrink:0; }
.cs-step.done .num { background:var(--brand-green-accent); border-color:var(--brand-green-accent); color:#fff; }
.cs-step.active .num { background:var(--brand-dark); border-color:var(--brand-dark); color:#fff; }
.cs-step.active { color:var(--brand-dark); }
.cs-line { flex:1; height:2px; background:var(--brand-border); margin:0 10px; }
.cs-line.done { background:var(--brand-green-accent); }

/* ── Form cards ── */
.form-card { background:#fff; border-radius:18px; border:1px solid var(--brand-border); padding:28px; margin-bottom:18px; }
.form-card-title { font-family:'Playfair Display',serif; font-weight:700; font-size:18px; color:var(--brand-dark); margin-bottom:22px; display:flex; align-items:center; gap:10px; }
.form-card-title .fct-icon { width:38px; height:38px; border-radius:10px; background:var(--brand-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }
.brand-label  { font-size:13px; font-weight:600; color:var(--brand-dark); margin-bottom:6px; display:block; }
.brand-label span { color:#dc2626; }
.brand-input  { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:11px 14px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--brand-text); background:var(--brand-card); outline:none; transition:border-color .2s; }
.brand-input:focus { border-color:var(--brand-dark); background:#fff; }
.brand-input.input-error { border-color:#dc2626; }
.field-error  { font-size:12px; color:#dc2626; margin-top:4px; display:block; }
.brand-select { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:11px 14px; font-size:14px; font-family:'DM Sans',sans-serif; background:var(--brand-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%236B7280' d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") no-repeat right 12px center; -webkit-appearance:none; outline:none; cursor:pointer; transition:border-color .2s; }
.brand-select:focus { border-color:var(--brand-dark); }
.form-group { margin-bottom:16px; }

/* ── Login prompt ── */
.login-prompt { background:#fff; border-radius:18px; border:1.5px dashed var(--brand-border); padding:36px; text-align:center; margin-bottom:18px; }
.login-prompt .lp-icon { font-size:48px; color:var(--brand-dark); opacity:.15; margin-bottom:16px; }
.login-prompt h5 { font-family:'Playfair Display',serif; font-weight:700; color:var(--brand-dark); margin-bottom:8px; }
.login-prompt p  { font-size:14px; color:var(--brand-muted); margin-bottom:22px; line-height:1.7; }
.btn-login-open  { background:var(--brand-dark); color:#fff; border:none; border-radius:12px; padding:13px 30px; font-weight:700; font-size:15px; cursor:pointer; font-family:'DM Sans',sans-serif; display:inline-flex; align-items:center; gap:8px; transition:background .2s; }
.btn-login-open:hover { background:var(--brand-orange); }

/* ── Member strip ── */
.member-strip { background:var(--brand-green-light); border-radius:14px; padding:14px 18px; display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; flex-wrap:wrap; gap:10px; }
.member-strip .info { display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:var(--brand-green-accent); }
.member-strip .info i { font-size:18px; }
.btn-logout { background:none; border:1.5px solid #dc2626; color:#dc2626; border-radius:8px; padding:5px 14px; font-size:12px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; transition:.2s; }
.btn-logout:hover { background:#dc2626; color:#fff; }

/* ── Saved address cards ── */
.address-list { display:flex; flex-direction:column; gap:10px; margin-bottom:16px; }
.addr-card { border:1.5px solid var(--brand-border); border-radius:14px; padding:16px 18px; cursor:pointer; transition:all .2s; display:flex; align-items:flex-start; gap:14px; }
.addr-card:hover { border-color:var(--brand-dark); background:var(--brand-bg); }
.addr-card.selected { border-color:var(--brand-dark); background:rgba(26,60,52,.04); }
.addr-card input[type="radio"] { width:18px; height:18px; accent-color:var(--brand-dark); flex-shrink:0; margin-top:3px; cursor:pointer; }
.addr-card .addr-info h6 { font-size:14px; font-weight:700; color:var(--brand-dark); margin-bottom:4px; }
.addr-card .addr-info p  { font-size:13px; color:var(--brand-muted); margin:0; line-height:1.65; }
.default-tag { font-size:11px; color:var(--brand-orange); font-weight:700; background:#fce9cc; padding:2px 8px; border-radius:50px; margin-left:6px; vertical-align:middle; }
.btn-add-addr { display:flex; align-items:center; gap:8px; background:none; border:1.5px dashed var(--brand-border); border-radius:12px; padding:12px 18px; font-size:13px; font-weight:600; color:var(--brand-dark); cursor:pointer; font-family:'DM Sans',sans-serif; width:100%; justify-content:center; transition:.2s; margin-bottom:16px; }
.btn-add-addr:hover { border-color:var(--brand-dark); background:var(--brand-bg); }

/* ── Payment options ── */
.payment-option { border:1.5px solid var(--brand-border); border-radius:12px; padding:16px 18px; cursor:pointer; transition:all .2s; display:flex; align-items:center; gap:14px; margin-bottom:10px; }
.payment-option:hover { border-color:var(--brand-dark); background:var(--brand-bg); }
.payment-option.selected { border-color:var(--brand-dark); background:rgba(26,60,52,.04); }
.payment-option input[type="radio"] { width:18px; height:18px; accent-color:var(--brand-dark); flex-shrink:0; cursor:pointer; }
.pay-icon { width:42px; height:42px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0; }
.pay-icon.cod    { background:#FFF7ED; color:var(--brand-orange); }
.pay-icon.online { background:var(--brand-green-light); color:var(--brand-green-accent); }
.pay-label h6 { font-size:14px; font-weight:700; color:var(--brand-dark); margin:0 0 2px; }
.pay-label p  { font-size:12px; color:var(--brand-muted); margin:0; }

/* ── Order summary ── */
.summary-card      { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; position:sticky; top:88px; }
.summary-header    { padding:18px 22px 14px; border-bottom:1px solid var(--brand-border); display:flex; align-items:center; justify-content:space-between; }
.summary-header h6 { font-family:'Playfair Display',serif; font-size:18px; font-weight:700; color:var(--brand-dark); margin:0; }
.summary-item      { display:flex; align-items:center; gap:12px; padding:12px 22px; border-bottom:1px solid var(--brand-border); }
.s-thumb           { width:52px; height:52px; border-radius:10px; overflow:hidden; flex-shrink:0; border:1px solid var(--brand-border); background:var(--brand-bg-alt); }
.s-thumb img       { width:100%; height:100%; object-fit:cover; }
.s-info            { flex:1; min-width:0; }
.s-info .s-name    { font-size:13px; font-weight:700; color:var(--brand-dark); margin-bottom:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.s-info .s-meta    { font-size:11px; color:var(--brand-muted); }
.s-price           { text-align:right; flex-shrink:0; }
.s-price .s-sub    { font-size:14px; font-weight:700; color:var(--brand-dark); display:block; }
.s-price .s-mrp    { font-size:11px; color:var(--brand-muted); text-decoration:line-through; display:block; }
.summary-totals    { padding:16px 22px; }
.total-row         { display:flex; justify-content:space-between; font-size:13px; color:var(--brand-muted); padding:6px 0; }
.total-row .val    { font-weight:600; color:var(--brand-dark); }
.total-row .green  { color:var(--brand-green-accent); }
.grand-row         { display:flex; justify-content:space-between; align-items:center; background:var(--brand-dark); border-radius:12px; padding:14px 18px; margin-top:12px; }
.grand-row .gl     { font-size:14px; font-weight:700; color:rgba(255,255,255,.8); }
.grand-row .gv     { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:#fff; }
.place-order-btn   { width:100%; background:var(--brand-orange); color:#fff; border:none; border-radius:12px; padding:15px; font-weight:700; font-size:16px; display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .25s; margin:14px 0 10px; }
.place-order-btn:hover    { background:var(--brand-orange-hover,#a04625); transform:translateY(-2px); }
.place-order-btn:disabled { opacity:.6; cursor:not-allowed; transform:none; }
.back-link  { display:flex; align-items:center; justify-content:center; gap:6px; font-size:13px; font-weight:600; color:var(--brand-muted); text-decoration:none; transition:color .2s; }
.back-link:hover { color:var(--brand-dark); }
.secure-note { display:flex; align-items:center; justify-content:center; gap:6px; font-size:12px; color:var(--brand-muted); margin-top:10px; }
.secure-note i { color:var(--brand-green-accent); }

/* ══ OTP Auth Popup ══ */
.auth-overlay { position:fixed; inset:0; background:rgba(10,20,18,.55); backdrop-filter:blur(4px); z-index:9000; display:flex; align-items:center; justify-content:center; padding:20px; opacity:0; pointer-events:none; transition:opacity .3s ease; }
.auth-overlay.open { opacity:1; pointer-events:all; }
.auth-popup  { background:#fff; border-radius:24px; width:100%; max-width:420px; transform:translateY(20px) scale(.97); transition:transform .35s cubic-bezier(.16,1,.3,1); box-shadow:0 24px 64px rgba(0,0,0,.18); overflow:hidden; }
.auth-overlay.open .auth-popup { transform:translateY(0) scale(1); }
.popup-header { padding:24px 28px 0; display:flex; align-items:flex-start; justify-content:space-between; }
.popup-brand  { font-family:'Playfair Display',serif; font-weight:700; font-size:20px; color:var(--brand-dark); }
.popup-brand span { color:var(--brand-orange); }
.popup-close  { width:36px; height:36px; border-radius:50%; background:var(--brand-bg); border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:15px; color:var(--brand-muted); transition:.2s; flex-shrink:0; }
.popup-close:hover { background:var(--brand-dark); color:#fff; }
.popup-body   { padding:20px 28px 28px; }
.popup-step   { display:none; }
.popup-step.active { display:block; }
.popup-step h4 { font-family:'Playfair Display',serif; font-weight:700; font-size:22px; color:var(--brand-dark); margin-bottom:6px; }
.popup-step .sub { font-size:13px; color:var(--brand-muted); margin-bottom:22px; line-height:1.65; }
.popup-step .sub strong { color:var(--brand-dark); }
.mobile-field { display:flex; border:1.5px solid var(--brand-border); border-radius:12px; overflow:hidden; transition:border-color .2s; }
.mobile-field:focus-within { border-color:var(--brand-dark); }
.mobile-prefix { padding:13px 14px; background:var(--brand-bg-alt,#F3EFE8); font-size:14px; font-weight:700; color:var(--brand-dark); border-right:1.5px solid var(--brand-border); flex-shrink:0; }
.mobile-field input { border:none; outline:none; padding:13px 14px; font-size:14px; font-family:'DM Sans',sans-serif; width:100%; background:transparent; color:var(--brand-text); }
.otp-grid { display:flex; gap:10px; margin:8px 0 6px; }
.otp-cell { width:100%; aspect-ratio:1; border:1.5px solid var(--brand-border); border-radius:12px; text-align:center; font-size:22px; font-weight:700; font-family:'Playfair Display',serif; color:var(--brand-dark); background:var(--brand-card); outline:none; transition:border-color .2s; }
.otp-cell:focus { border-color:var(--brand-dark); background:#fff; }
.otp-cell.filled { border-color:var(--brand-dark); background:#fff; }
.resend-row   { display:flex; align-items:center; justify-content:space-between; margin-top:12px; }
.resend-timer { font-size:12px; color:var(--brand-muted); }
.btn-resend   { background:none; border:none; font-size:13px; font-weight:600; color:var(--brand-orange); cursor:pointer; font-family:'DM Sans',sans-serif; padding:0; display:none; }
.btn-resend.show { display:inline; }
.btn-popup-primary { width:100%; background:var(--brand-dark); color:#fff; border:none; border-radius:12px; padding:14px; font-weight:700; font-size:15px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:background .25s; margin-top:18px; display:flex; align-items:center; justify-content:center; gap:8px; }
.btn-popup-primary:hover { background:var(--brand-orange); }
.btn-popup-primary:disabled { opacity:.6; cursor:not-allowed; }
.btn-back-step { background:none; border:none; font-size:13px; color:var(--brand-muted); cursor:pointer; font-family:'DM Sans',sans-serif; margin-top:10px; display:flex; align-items:center; gap:6px; padding:0; transition:color .2s; }
.btn-back-step:hover { color:var(--brand-dark); }
.popup-msg { font-size:13px; border-radius:8px; padding:10px 14px; margin-top:12px; display:none; }
.popup-msg.error   { background:#fee2e2; color:#dc2626; display:block; }
.popup-msg.success { background:var(--brand-green-light); color:var(--brand-green-accent); display:block; }
.step-success { text-align:center; padding:10px 0; }
.step-success .sc-icon { width:70px; height:70px; border-radius:50%; background:var(--brand-green-light); display:flex; align-items:center; justify-content:center; margin:0 auto 16px; font-size:32px; color:var(--brand-green-accent); }

/*Confirmation*/
.confirm-section { padding:60px 0 80px; background:var(--brand-bg); }

/* Success banner */
.success-banner    { background:linear-gradient(135deg,var(--brand-dark) 0%,#2a5c50 100%); border-radius:24px; padding:44px 40px; color:#fff; text-align:center; margin-bottom:28px; position:relative; overflow:hidden; }
.success-banner::before { content:''; position:absolute; top:-60px; right:-60px; width:260px; height:260px; background:radial-gradient(circle,rgba(192,86,47,.2),transparent 70%); border-radius:50%; }
.success-icon      { width:80px; height:80px; border-radius:50%; background:rgba(255,255,255,.15); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; font-size:36px; }
.success-banner h2 { font-family:'Playfair Display',serif; font-weight:700; font-size:clamp(22px,3vw,32px); margin-bottom:8px; }
.success-banner p  { color:rgba(255,255,255,.75); font-size:15px; margin:0; }
.order-num-badge   { display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:50px; padding:8px 20px; font-size:14px; font-weight:700; margin-top:16px; letter-spacing:.05em; }

/* Info cards */
.info-card         { background:#fff; border-radius:18px; border:1px solid var(--brand-border); padding:26px; height:100%; }
.info-card-title   { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--brand-orange); margin-bottom:16px; }
.info-row          { display:flex; gap:10px; margin-bottom:12px; font-size:14px; }
.info-row:last-child { margin-bottom:0; }
.info-row i        { color:var(--brand-orange); font-size:16px; flex-shrink:0; margin-top:1px; }
.info-row .label   { font-weight:600; color:var(--brand-dark); min-width:110px; }
.info-row .val     { color:var(--brand-muted); }

/* Order items */
.items-card        { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; margin-bottom:20px; }
.items-card-header { padding:18px 22px 14px; border-bottom:1px solid var(--brand-border); font-family:'Playfair Display',serif; font-weight:700; font-size:18px; color:var(--brand-dark); display:flex; align-items:center; gap:8px; }
.order-item-row    { display:flex; align-items:center; gap:14px; padding:14px 22px; border-bottom:1px solid var(--brand-border); }
.order-item-row:last-child { border-bottom:none; }
.oi-num  { width:28px; height:28px; border-radius:8px; background:var(--brand-bg-alt,#F3EFE8); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:var(--brand-dark); flex-shrink:0; }
.oi-info { flex:1; min-width:0; }
.oi-name { font-size:14px; font-weight:700; color:var(--brand-dark); margin-bottom:3px; }
.oi-meta { font-size:12px; color:var(--brand-muted); }
.oi-price { text-align:right; flex-shrink:0; }
.oi-sub  { font-size:15px; font-weight:700; color:var(--brand-dark); display:block; }
.oi-mrp  { font-size:12px; color:var(--brand-muted); text-decoration:line-through; display:block; }
.total-strip { display:flex; justify-content:space-between; align-items:center; background:var(--brand-dark); border-radius:0 0 18px 18px; padding:18px 22px; }
.total-strip .tl { font-size:14px; font-weight:700; color:rgba(255,255,255,.8); }
.total-strip .tv { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:#fff; }

/* Next steps */
.next-steps        { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; }
.next-steps-header { padding:18px 22px 14px; border-bottom:1px solid var(--brand-border); font-family:'Playfair Display',serif; font-weight:700; font-size:18px; color:var(--brand-dark); }
.next-step-item    { display:flex; align-items:flex-start; gap:14px; padding:18px 22px; border-bottom:1px solid var(--brand-border); }
.next-step-item:last-child { border-bottom:none; }
.step-icon  { width:42px; height:42px; border-radius:12px; background:var(--brand-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.step-icon.orange { background:var(--brand-orange); }
.next-step-item h6 { font-size:14px; font-weight:700; color:var(--brand-dark); margin-bottom:3px; }
.next-step-item p  { font-size:13px; color:var(--brand-muted); margin:0; line-height:1.6; }

/* CTAs */
.btn-continue { display:inline-flex; align-items:center; gap:8px; background:var(--brand-dark); color:#fff; border-radius:12px; padding:13px 26px; font-weight:700; font-size:14px; text-decoration:none; transition:all .25s; }
.btn-continue:hover { background:var(--brand-orange); color:#fff; transform:translateY(-2px); }
.btn-ghost    { display:inline-flex; align-items:center; gap:8px; background:#fff; color:var(--brand-dark); border:1.5px solid var(--brand-border); border-radius:12px; padding:12px 24px; font-weight:600; font-size:14px; text-decoration:none; transition:all .2s; }
.btn-ghost:hover { border-color:var(--brand-dark); background:var(--brand-bg); color:var(--brand-dark); }




/* ── Page wrapper ── */
.login-page { min-height: calc(100vh - 140px); background: var(--brand-bg); display: flex; align-items: center; padding: 50px 0 80px; }

/* ── Two-column layout ── */
.login-brand-col { padding-right: 48px; }
.login-brand-col h2 { font-family: 'Playfair Display', serif; font-weight: 700; font-size: clamp(26px, 3vw, 40px); color: var(--brand-dark); line-height: 1.2; margin-bottom: 14px; }
.login-brand-col h2 span { color: var(--brand-orange); font-style: italic; }
.login-brand-col p { font-size: 15px; color: var(--brand-muted); line-height: 1.8; margin-bottom: 28px; }
.login-feature { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.lf-icon { width: 40px; height: 40px; border-radius: 10px; background: var(--brand-dark); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; }
.lf-icon.orange { background: var(--brand-orange); }
.lf-icon.green  { background: var(--brand-green-accent); }
.login-feature h6 { font-size: 14px; font-weight: 700; color: var(--brand-dark); margin-bottom: 2px; }
.login-feature p  { font-size: 13px; color: var(--brand-muted); margin: 0; }

/* ── Card ── */
.login-card { background: #fff; border-radius: 24px; border: 1px solid var(--brand-border); overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.08); }

/* Card header */
.login-card-header { background: var(--brand-dark); padding: 28px 32px; }
.login-card-header .brand { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 22px; color: #fff; margin-bottom: 4px; }
.login-card-header .brand span { color: var(--brand-orange); }
.login-card-header p { font-size: 13px; color: rgba(255,255,255,.65); margin: 0; }

/* Card body */
.login-card-body { padding: 32px; }

/* ── Steps ── */
.login-step { display: none; }
.login-step.active { display: block; }

.step-title { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 22px; color: var(--brand-dark); margin-bottom: 6px; }
.step-sub   { font-size: 13px; color: var(--brand-muted); margin-bottom: 24px; line-height: 1.65; }
.step-sub strong { color: var(--brand-dark); }

/* Step indicator dots */
.step-dots { display: flex; align-items: center; gap: 6px; margin-bottom: 28px; }
.step-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--brand-border); transition: all .3s; }
.step-dot.active { background: var(--brand-dark); width: 22px; border-radius: 4px; }
.step-dot.done   { background: var(--brand-green-accent); }

/* Mobile input */
.mobile-field { display: flex; border: 1.5px solid var(--brand-border); border-radius: 12px; overflow: hidden; transition: border-color .2s; }
.mobile-field:focus-within { border-color: var(--brand-dark); }
.mobile-prefix { padding: 14px 16px; background: var(--brand-bg-alt, #F3EFE8); font-size: 15px; font-weight: 700; color: var(--brand-dark); border-right: 1.5px solid var(--brand-border); flex-shrink: 0; }
.mobile-field input { border: none; outline: none; padding: 14px 16px; font-size: 15px; font-family: 'DM Sans', sans-serif; width: 100%; background: transparent; color: var(--brand-text); letter-spacing: .03em; }

/* Name input */
.brand-input { width: 100%; border: 1.5px solid var(--brand-border); border-radius: 12px; padding: 14px 16px; font-size: 15px; font-family: 'DM Sans', sans-serif; color: var(--brand-text); background: var(--brand-card); outline: none; transition: border-color .2s; }
.brand-input:focus { border-color: var(--brand-dark); background: #fff; }
.brand-label { font-size: 13px; font-weight: 600; color: var(--brand-dark); margin-bottom: 8px; display: block; }
.brand-label span { color: #dc2626; }

/* OTP grid */
.otp-grid { display: flex; gap: 10px; margin: 4px 0 8px; }
.otp-cell { width: 100%; aspect-ratio: 1; border: 1.5px solid var(--brand-border); border-radius: 12px; text-align: center; font-size: 24px; font-weight: 700; font-family: 'Playfair Display', serif; color: var(--brand-dark); background: var(--brand-card); outline: none; transition: border-color .2s, background .2s; }
.otp-cell:focus { border-color: var(--brand-dark); background: #fff; }
.otp-cell.filled { border-color: var(--brand-dark); background: #fff; }

/* Resend row */
.resend-row   { display: flex; justify-content: space-between; align-items: center; margin: 14px 0 4px; }
.resend-timer { font-size: 13px; color: var(--brand-muted); }
.btn-resend   { background: none; border: none; font-size: 13px; font-weight: 600; color: var(--brand-orange); cursor: pointer; font-family: 'DM Sans', sans-serif; padding: 0; display: none; }
.btn-resend:hover { text-decoration: underline; }
.btn-resend.show { display: inline; }

/* Primary button */
.btn-primary-login { width: 100%; background: var(--brand-dark); color: #fff; border: none; border-radius: 12px; padding: 15px; font-weight: 700; font-size: 15px; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: all .25s; margin-top: 20px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.btn-primary-login:hover    { background: var(--brand-orange); transform: translateY(-2px); }
.btn-primary-login:disabled { opacity: .6; cursor: not-allowed; transform: none; }

/* Back link */
.btn-back { background: none; border: none; font-size: 13px; color: var(--brand-muted); cursor: pointer; font-family: 'DM Sans', sans-serif; margin-top: 12px; display: flex; align-items: center; gap: 6px; padding: 0; transition: color .2s; }
.btn-back:hover { color: var(--brand-dark); }

/* Message */
.step-msg { font-size: 13px; border-radius: 10px; padding: 11px 14px; margin-top: 14px; display: none; }
.step-msg.error   { background: #fee2e2; color: #dc2626; display: block; }
.step-msg.success { background: var(--brand-green-light); color: var(--brand-green-accent); display: block; }

/* Success step */
.step-success-body { text-align: center; padding: 10px 0 8px; }
.sc-circle { width: 80px; height: 80px; border-radius: 50%; background: var(--brand-green-light); display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; font-size: 36px; color: var(--brand-green-accent); }

/* Footer note */
.login-footer-note { text-align: center; margin-top: 20px; font-size: 12px; color: var(--brand-muted); line-height: 1.6; }
.login-footer-note a { color: var(--brand-dark); font-weight: 600; text-decoration: none; }
.login-footer-note a:hover { color: var(--brand-orange); }

.stay-login-row   { margin-top: 14px; }
.stay-login-label {display: flex; align-items: center; gap: 10px;font-size: 13px; font-weight: 500; color: var(--brand-muted);cursor: pointer; user-select: none;}
.stay-login-label input[type="checkbox"] {width: 17px; height: 17px;accent-color: var(--brand-dark);cursor: pointer; flex-shrink: 0;}
.stay-login-label:hover { color: var(--brand-dark); }

/* ── Contact Section ── */
.contact-section { padding:56px 0 80px; background:var(--brand-bg); }

/* ── Info Card ── */
.contact-info-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); overflow:hidden; height:100%; }
.cic-header { background:linear-gradient(135deg,var(--brand-dark) 0%,#2a5c50 100%); padding:30px 28px; position:relative; overflow:hidden; }
.cic-header::before { content:''; position:absolute; top:-40px; right:-40px; width:160px; height:160px; background:radial-gradient(circle,rgba(192,86,47,.25),transparent 70%); border-radius:50%; }
.cic-header h4 { font-family:'Playfair Display',serif; font-weight:700; font-size:22px; color:#fff; margin-bottom:6px; }
.cic-header p  { font-size:13px; color:rgba(255,255,255,.65); margin:0; line-height:1.6; }
.cic-body { padding:28px; }

/* Contact detail rows */
.contact-detail { display:flex; align-items:flex-start; gap:14px; padding:14px 0; border-bottom:1px solid var(--brand-border); }
.contact-detail:last-of-type { border-bottom:none; }
.cd-icon { width:42px; height:42px; border-radius:12px; background:var(--brand-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0; }
.cd-icon.orange { background:var(--brand-orange); }
.cd-icon.green  { background:var(--brand-green-accent); }
.cd-text .label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--brand-muted); margin-bottom:3px; }
.cd-text .value { font-size:14px; font-weight:600; color:var(--brand-dark); line-height:1.5; }
.cd-text .value a { color:var(--brand-dark); text-decoration:none; transition:color .2s; }
.cd-text .value a:hover { color:var(--brand-orange); }

/* Social links */
.social-section { padding:22px 28px; border-top:1px solid var(--brand-border); }
.social-label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--brand-muted); margin-bottom:14px; }
.social-links { display:flex; gap:10px; flex-wrap:wrap; }
.social-btn { width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:18px; text-decoration:none; transition:all .2s; }
.social-btn.instagram { background:#fce4ec; color:#e91e8c; }
.social-btn.facebook  { background:#e3f2fd; color:#1877f2; }
.social-btn.twitter   { background:#e8f5e9; color:#000; }
.social-btn.linkedin  { background:#e3f2fd; color:#0077b5; }
.social-btn.youtube   { background:#ffebee; color:#ff0000; }
.social-btn.whatsapp  { background:#e8f5e9; color:#25d366; }
.social-btn:hover { transform:translateY(-3px); box-shadow:0 6px 16px rgba(0,0,0,.12); }

/* ── Footer social icons (1st column) ── */
.footer-social-links { display:flex; gap:10px; flex-wrap:wrap; }
.footer-social-links .social-btn { width:38px; height:38px; }

/* Business hours */
.hours-row { display:flex; justify-content:space-between; font-size:13px; padding:5px 0; }
.hours-row .day { color:var(--brand-muted); font-weight:500; }
.hours-row .time { font-weight:700; color:var(--brand-dark); }
.hours-row .closed { font-weight:700; color:#dc2626; }
.hours-divider { border:none; border-top:1px dashed var(--brand-border); margin:6px 0; }

/* ── Feedback Form Card ── */
.form-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); padding:36px; height:100%; }
.form-card-title { font-family:'Playfair Display',serif; font-weight:700; font-size:24px; color:var(--brand-dark); margin-bottom:6px; }
.form-card-sub   { font-size:14px; color:var(--brand-muted); margin-bottom:28px; line-height:1.65; }

.brand-label { font-size:13px; font-weight:600; color:var(--brand-dark); margin-bottom:7px; display:block; }
.brand-label span { color:#dc2626; }
.brand-input  { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:12px 14px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--brand-text); background:var(--brand-card); outline:none; transition:border-color .2s; }
.brand-input:focus  { border-color:var(--brand-dark); background:#fff; }
.brand-input.error  { border-color:#dc2626; }
.brand-select { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:12px 14px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--brand-text); background:var(--brand-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%236B7280' d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") no-repeat right 12px center; -webkit-appearance:none; outline:none; cursor:pointer; transition:border-color .2s; }
.brand-select:focus { border-color:var(--brand-dark); }
.brand-textarea { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:12px 14px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--brand-text); background:var(--brand-card); outline:none; resize:vertical; min-height:130px; transition:border-color .2s; line-height:1.6; }
.brand-textarea:focus { border-color:var(--brand-dark); background:#fff; }
.form-group { margin-bottom:18px; }
.field-error { font-size:12px; color:#dc2626; margin-top:5px; display:none; }

/* Character counter */
.char-counter { font-size:11px; color:var(--brand-muted); text-align:right; margin-top:4px; }
.char-counter.warn { color:var(--brand-orange); }

/* Submit button */
.btn-submit { width:100%; background:var(--brand-dark); color:#fff; border:none; border-radius:12px; padding:15px; font-weight:700; font-size:15px; display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .25s; margin-top:6px; }
.btn-submit:hover    { background:var(--brand-orange); transform:translateY(-2px); }
.btn-submit:disabled { opacity:.6; cursor:not-allowed; transform:none; }

/* Success / error message */
.form-result { border-radius:12px; padding:16px 18px; margin-top:18px; display:none; font-size:14px; font-weight:500; line-height:1.6; }
.form-result.success { background:var(--brand-green-light); color:var(--brand-green-accent); display:flex; gap:10px; align-items:flex-start; }
.form-result.error   { background:#fee2e2; color:#dc2626; display:flex; gap:10px; align-items:flex-start; }
.form-result i { font-size:18px; flex-shrink:0; margin-top:1px; }

/* ── Info tiles row ── */
.info-tiles { padding:0 0 70px; background:var(--brand-bg); }
.info-tile  { background:#fff; border-radius:16px; border:1px solid var(--brand-border); padding:28px 24px; text-align:center; transition:all .3s; height:100%; }
.info-tile:hover { transform:translateY(-5px); box-shadow:0 16px 36px rgba(0,0,0,.08); border-color:transparent; }
.tile-icon  { width:60px; height:60px; border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:26px; margin:0 auto 16px; }
.tile-icon.dark   { background:rgba(26,60,52,.08);  color:var(--brand-dark); }
.tile-icon.orange { background:rgba(192,86,47,.1);  color:var(--brand-orange); }
.tile-icon.green  { background:var(--brand-green-light); color:var(--brand-green-accent); }
.info-tile h5 { font-weight:700; font-size:16px; color:var(--brand-dark); margin-bottom:6px; }
.info-tile p  { font-size:13px; color:var(--brand-muted); margin:0; line-height:1.65; }

/* ── Gallery ── */
.gallery-section {padding: 60px 0 40px;background: var(--brand-bg);}
.gallery-main-wrap {position: relative;border-radius: 20px;overflow: hidden;background: #fff;border: 1px solid var(--brand-border);aspect-ratio: 1 / 1;}
#mainImg {width: 100%;height: 100%;object-fit: cover;transition: opacity .3s ease;}
#mainImg.switching {opacity: 0;}
.gallery-badge {position: absolute;top: 14px;left: 14px;font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: .05em;padding: 5px 14px;border-radius: 50px;background: var(--brand-orange);color: #fff;}
.gallery-zoom {position: absolute;bottom: 14px;right: 14px;width: 38px;height: 38px;border-radius: 10px;background: rgba(255,255,255,.92);border: none;cursor: pointer;display: flex;align-items: center;justify-content: center;font-size: 17px;color: var(--brand-dark);transition: all .2s;box-shadow: 0 2px 10px rgba(0,0,0,.1);}
.gallery-zoom:hover {background: var(--brand-dark);color: #fff;}
.thumb-strip {display: flex;gap: 10px;margin-top: 12px;overflow-x: auto;padding-bottom: 4px;scrollbar-width: thin;scrollbar-color: var(--brand-border) transparent;}
.thumb-item {flex-shrink: 0;width: 74px;height: 74px;border-radius: 12px;overflow: hidden;cursor: pointer;border: 2px solid var(--brand-border);transition: border-color .2s, transform .2s;}
.thumb-item:hover {border-color: var(--brand-dark);transform: translateY(-2px);}
.thumb-item.active {border-color: var(--brand-orange);}
.thumb-item img {width: 100%;height: 100%;object-fit: cover;}
/* Lightbox */
.lightbox {position: fixed;inset: 0;background: rgba(0,0,0,.88);z-index: 9998;display: flex;align-items: center;justify-content: center;opacity: 0;pointer-events: none;transition: opacity .25s;}
.lightbox.open {opacity: 1;pointer-events: all;}
.lightbox img {max-width: 90vw;max-height: 88vh;border-radius: 12px;object-fit: contain;}
.lightbox-close {position: absolute;top: 20px;right: 24px;background: rgba(255,255,255,.12);border: none;color: #fff;width: 42px;height: 42px;border-radius: 50%;font-size: 20px;cursor: pointer;display: flex;align-items: center;justify-content: center;transition: background .2s;}
.lightbox-close:hover {background: var(--brand-orange);}

/* ── Product Info Panel ── */
.product-info-panel {position: sticky;top: 90px;background: #fff;border-radius: 20px;padding: 36px;border: 1px solid var(--brand-border);}
.detail-category {font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: .12em;color: var(--brand-orange);margin-bottom: 8px;display: block;}
.detail-title {font-family: 'Playfair Display', serif;font-weight: 700;font-size: clamp(22px, 3vw, 32px);color: var(--brand-dark);line-height: 1.2;margin-bottom: 10px;}
.detail-subtitle {font-size: 14px;color: var(--brand-muted);line-height: 1.65;margin-bottom: 20px;}
.stock-chip {display: inline-flex;align-items: center;gap: 6px;font-size: 12px;font-weight: 700;padding: 5px 14px;border-radius: 50px;margin-bottom: 20px;}
.stock-chip.in-stock {background: var(--brand-green-light);color: var(--brand-green-accent);}
.stock-chip.out-stock {background: #fee2e2;color: #dc2626;}
.stock-chip::before {content: '';width: 7px;height: 7px;border-radius: 50%;background: currentColor;display: inline-block;}

/* Price row */
.price-block {margin-bottom: 24px;}
.price-offer {font-family: 'Playfair Display', serif;font-size: 34px;font-weight: 700;color: var(--brand-dark);line-height: 1;}
.price-mrp {font-size: 17px;color: var(--brand-muted);text-decoration: line-through; margin-left: 10px;}
.discount-badge-lg {display: inline-block;background: var(--brand-orange);color: #fff;font-size: 12px;font-weight: 700;padding: 4px 12px;border-radius: 50px;margin-left: 10px;vertical-align: middle;}
.price-unit {font-size: 13px;color: var(--brand-muted);margin-top: 4px;display: block;}
.info-divider {border: none;border-top: 1px solid var(--brand-border);margin: 22px 0;}
/* Quantity */
.qty-label {font-size: 13px;font-weight: 600;color: var(--brand-dark);margin-bottom: 10px;display: block;}
.qty-row {display: flex;align-items: center;gap: 14px;margin-bottom: 22px;flex-wrap: wrap;}
.qty-wrap {display: inline-flex;align-items: center;border: 1.5px solid var(--brand-border);border-radius: 12px;overflow: hidden;background: var(--brand-card);}
.qty-btn {width: 42px;height: 44px;border: none;cursor: pointer;font-size: 20px;font-weight: 500;line-height: 1;display: flex;align-items: center;justify-content: center;transition: all .2s;background: transparent;color: var(--brand-dark);}
.qty-btn.minus:hover {background: var(--brand-dark);color: #fff;}
.qty-btn.plus:hover {background: var(--brand-orange);color: #fff;}
.qty-btn:disabled {opacity: .35;cursor: not-allowed;}
.qty-input {width: 54px;height: 44px;border: none;border-left: 1px solid var(--brand-border);border-right: 1px solid var(--brand-border);text-align: center;font-size: 16px;font-weight: 700;color: var(--brand-dark);background: #fff;font-family: 'DM Sans', sans-serif;outline: none;-moz-appearance: textfield;}
.qty-input::-webkit-inner-spin-button,.qty-input::-webkit-outer-spin-button {-webkit-appearance: none;}
.qty-stock-note {font-size: 12px;color: var(--brand-muted);}

/* CTA Buttons */
.btn-add-cart-lg {flex: 1;background: var(--brand-orange);color: #fff;border: 2px solid var(--brand-orange);border-radius: 12px;padding: 13px 20px;font-weight: 700;font-size: 14px;display: inline-flex;align-items: center;justify-content: center;gap: 8px;transition: all .25s;cursor: pointer;font-family: 'DM Sans', sans-serif;}
.btn-add-cart-lg:hover {background: var(--brand-orange);border-color: var(--brand-orange);transform: translateY(-2px);box-shadow: 0 6px 20px rgba(192,86,47,.3);}
.btn-buy-now {flex: 1;background: var(--brand-dark);color: #fff;border: 2px solid var(--brand-dark);border-radius: 12px;padding: 13px 20px;font-weight: 700;font-size: 14px;display: inline-flex;align-items: center;justify-content: center;gap: 8px;transition: all .25s;cursor: pointer;font-family: 'DM Sans', sans-serif;}
/*.btn-buy-now:hover {background: transparent;border-color: var(--brand-dark); color:var(--brand-dark); transform: translateY(-2px);}*/
.btn-wishlist {width: 50px;height: 50px;border-radius: 12px;flex-shrink: 0;border: 1.5px solid var(--brand-border);background: #fff;display: flex;align-items: center;justify-content: center;font-size: 18px;color: var(--brand-muted);cursor: pointer;transition: all .2s;}
.btn-wishlist:hover, .btn-wishlist.active {background: #fee2e2;color: #dc2626;border-color: #fca5a5;}
.cta-row {display: flex;gap: 10px;align-items: center;}

/* Trust mini-strip */
.detail-trust {display: grid;grid-template-columns: repeat(2, 1fr);gap: 10px;margin-top: 22px;}
.detail-trust-item {display: flex;align-items: center;gap: 9px;background: var(--brand-bg-alt);border-radius: 10px;padding: 11px 13px;font-size: 12px;font-weight: 600;color: var(--brand-dark);}
.detail-trust-item i {color: var(--brand-orange);font-size: 16px;}

/* ── Description / Specs Tabs ── */
.detail-tabs-section {padding: 50px 0 60px;background: var(--brand-bg-alt);}
.detail-nav-tabs {border: none;gap: 6px;margin-bottom: 28px;border-bottom: 2px solid var(--brand-border);}
.detail-nav-tabs .nav-link {font-family: 'DM Sans', sans-serif;font-weight: 600;font-size: 14px;color: var(--brand-muted);padding: 10px 22px;border: none;border-bottom: 3px solid transparent;border-radius: 0;background: none;margin-bottom: -2px;transition: all .2s;}
.detail-nav-tabs .nav-link:hover {color: var(--brand-dark);}
.detail-nav-tabs .nav-link.active {color: var(--brand-orange);border-bottom-color: var(--brand-orange);background: none;}
.tab-content-card {background: #fff;border-radius: 18px;padding: 36px;border: 1px solid var(--brand-border);}
/* typography inside description HTML */
.desc-body h2, .desc-body h3 {font-family: 'Playfair Display', serif;color: var(--brand-dark);margin-bottom: 12px;}
.desc-body p {font-size: 15px;color: var(--brand-muted);line-height: 1.8;margin-bottom: 14px;}
.desc-body ul {padding-left: 20px;}
.desc-body ul li {font-size: 15px;color: var(--brand-muted);line-height: 1.7;margin-bottom: 8px;}
.desc-body strong {color: var(--brand-dark);}

/* Spec table */
.spec-table {width: 100%;border-collapse: collapse;   font-size: 14px;}
.spec-table tr:nth-child(odd) td:first-child {background: var(--brand-bg);}
.spec-table tr:nth-child(even) td:first-child {background: var(--brand-bg-alt);}
.spec-table td {padding: 13px 18px;border-bottom: 1px solid var(--brand-border);vertical-align: top;line-height: 1.6;}
.spec-table td:first-child {font-weight: 700;font-size: 13px;color: var(--brand-dark);width: 36%;white-space: nowrap;}
.spec-table td:last-child {color: var(--brand-muted);}
.spec-table tr:last-child td {border-bottom: none;}

/* ── Related Products ── */
.related-section {padding: 60px 0 80px;background: var(--brand-bg);}
.related-section .section-overline {font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: .15em;color: var(--brand-orange);margin-bottom: 8px;}
.related-section h2 {font-family: 'Playfair Display', serif;font-weight: 700;font-size: clamp(22px, 3vw, 32px);color: var(--brand-dark);margin-bottom: 36px;}

/*My Orders*/
.orders-count { font-size:13px; color:var(--brand-muted); margin-top:6px; }
.orders-count strong { color:var(--brand-dark); }

/* ── Order Card ── */
.order-card { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; margin-bottom:16px; transition:all .3s; }
.order-card:hover { box-shadow:0 12px 30px rgba(0,0,0,.08); border-color:transparent; transform:translateY(-2px); }

/* Card header */
.order-card-header { padding:14px 22px; background:var(--brand-bg-alt,#F3EFE8); border-bottom:1px solid var(--brand-border); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.order-num  { font-size:13px; font-weight:700; color:var(--brand-dark); display:flex; align-items:center; gap:8px; }
.order-num i { color:var(--brand-orange); }
.order-date { font-size:12px; color:var(--brand-muted); display:flex; align-items:center; gap:5px; }

/* Card body */
.order-card-body { padding:20px 22px; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.order-thumb { width:72px; height:72px; border-radius:12px; overflow:hidden; flex-shrink:0; border:1px solid var(--brand-border); background:var(--brand-bg-alt,#F3EFE8); }
.order-thumb img { width:100%; height:100%; object-fit:cover; }
.order-thumb.no-img { display:flex; align-items:center; justify-content:center; font-size:28px; color:var(--brand-muted); opacity:.4; }
.order-info { flex:1; min-width:160px; }
.order-product-name { font-size:15px; font-weight:700; color:var(--brand-dark); margin-bottom:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:340px; }
.order-items-count  { font-size:12px; color:var(--brand-muted); margin-bottom:10px; }
.order-badges { display:flex; gap:8px; flex-wrap:wrap; }

/* Status badges */
.order-status-badge, .pay-badge {
    display:inline-flex; align-items:center; gap:5px;
    font-size:11px; font-weight:700; padding:4px 12px;
    border-radius:50px; letter-spacing:.02em;
}
/* Order status */
.status-pending    { background:#FFF7ED; color:#C0562F; }
.status-processing { background:#EFF6FF; color:#1D4ED8; }
.status-shipped    { background:#F5F3FF; color:#6D28D9; }
.status-delivered  { background:var(--brand-green-light); color:var(--brand-green-accent); }
.status-cancelled  { background:#fee2e2; color:#dc2626; }
/* Payment status */
.pay-pending { background:#FFF7ED; color:#C0562F; }
.pay-paid    { background:var(--brand-green-light); color:var(--brand-green-accent); }
.pay-failed  { background:#fee2e2; color:#dc2626; }

/* Total + CTA */
.order-right { display:flex; flex-direction:column; align-items:flex-end; gap:12px; flex-shrink:0; margin-left:auto; }
.order-total { text-align:right; }
.order-total .amount { font-family:'Playfair Display',serif; font-size:22px; font-weight:700; color:var(--brand-dark); display:block; }
.order-total .label  { font-size:11px; color:var(--brand-muted); }
.btn-view-order { display:inline-flex; align-items:center; gap:7px; background:var(--brand-dark); color:#fff; border-radius:10px; padding:10px 18px; font-size:13px; font-weight:700; text-decoration:none; transition:all .2s; white-space:nowrap; }
.btn-view-order:hover { background:var(--brand-orange); color:#fff; }

/* ── Progress Stepper ── */
.order-progress { padding:0 22px 18px; }
.stepper { display:flex; align-items:center; gap:0; }
.step { display:flex; flex-direction:column; align-items:center; flex:1; position:relative; }
.step-dot { width:26px; height:26px; border-radius:50%; border:2px solid var(--brand-border); background:#fff; display:flex; align-items:center; justify-content:center; font-size:11px; color:var(--brand-muted); z-index:1; transition:.2s; }
.step.done .step-dot  { background:var(--brand-green-accent); border-color:var(--brand-green-accent); color:#fff; }
.step.active .step-dot { background:var(--brand-dark); border-color:var(--brand-dark); color:#fff; }
.step-label { font-size:10px; font-weight:600; color:var(--brand-muted); margin-top:5px; text-align:center; letter-spacing:.02em; }
.step.done .step-label   { color:var(--brand-green-accent); }
.step.active .step-label { color:var(--brand-dark); }
.step-line { flex:1; height:2px; background:var(--brand-border); margin:0 -1px; margin-bottom:18px; transition:.2s; }
.step-line.done { background:var(--brand-green-accent); }

/* ── Empty State ── */
.empty-orders { background:#fff; border-radius:18px; border:1px solid var(--brand-border); padding:70px 30px; text-align:center; }
.empty-icon   { width:90px; height:90px; border-radius:24px; background:var(--brand-bg-alt,#F3EFE8); display:flex; align-items:center; justify-content:center; margin:0 auto 24px; font-size:38px; color:var(--brand-muted); opacity:.6; }
.empty-orders h4 { font-family:'Playfair Display',serif; font-weight:700; color:var(--brand-dark); margin-bottom:10px; }
.empty-orders p  { font-size:15px; color:var(--brand-muted); max-width:340px; margin:0 auto 28px; line-height:1.7; }
.btn-shop-now { display:inline-flex; align-items:center; gap:8px; background:var(--brand-dark); color:#fff; border-radius:12px; padding:13px 28px; font-weight:700; font-size:15px; text-decoration:none; transition:all .25s; }
.btn-shop-now:hover { background:var(--brand-orange); color:#fff; transform:translateY(-2px); }

.hero-date { font-size:13px; color:var(--brand-muted); margin-top:4px; }
/* ── Detail Section ── */
.detail-section { padding:40px 0 80px; background:var(--brand-bg); }

/* ── Shared card ── */
.detail-card { background:#fff; border-radius:18px; border:1px solid var(--brand-border); overflow:hidden; margin-bottom:18px; }
.detail-card-title { padding:16px 22px; border-bottom:1px solid var(--brand-border); font-family:'Playfair Display',serif; font-weight:700; font-size:17px; color:var(--brand-dark); display:flex; align-items:center; gap:10px; }
.detail-card-title i { color:var(--brand-orange); font-size:16px; }
.detail-card-body  { padding:22px; }

/* ── Progress Stepper ── */
.stepper-card  { background:#fff; border-radius:18px; border:1px solid var(--brand-border); padding:26px 28px; margin-bottom:18px; }
.stepper-title { font-family:'Playfair Display',serif; font-weight:700; font-size:17px; color:var(--brand-dark); margin-bottom:22px; display:flex; align-items:center; justify-content:space-between; }
.stepper { display:flex; align-items:flex-start; gap:0; }
.step { display:flex; flex-direction:column; align-items:center; flex:1; }
.step-dot { width:38px; height:38px; border-radius:50%; border:2px solid var(--brand-border); background:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; color:var(--brand-muted); z-index:1; transition:.25s; flex-shrink:0; }
.step.done   .step-dot { background:var(--brand-green-accent); border-color:var(--brand-green-accent); color:#fff; }
.step.active .step-dot { background:var(--brand-dark);         border-color:var(--brand-dark);         color:#fff; box-shadow:0 0 0 4px rgba(26,60,52,.12); }
.step-label { font-size:11px; font-weight:700; color:var(--brand-muted); margin-top:8px; text-align:center; letter-spacing:.03em; text-transform:uppercase; line-height:1.3; }
.step.done   .step-label { color:var(--brand-green-accent); }
.step.active .step-label { color:var(--brand-dark); }
.step-line { flex:1; height:2px; background:var(--brand-border); margin:19px -2px 0; transition:.25s; }
.step-line.done { background:var(--brand-green-accent); }
.cancelled-strip { background:#fee2e2; border-radius:12px; padding:14px 18px; display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:#dc2626; }
.cancelled-strip i { font-size:18px; flex-shrink:0; }

/* ── Order Items ── */
.order-item-row { display:flex; align-items:center; gap:16px; padding:16px 0; border-bottom:1px solid var(--brand-border); }
.order-item-row:last-child { border-bottom:none; padding-bottom:0; }
.item-thumb { width:64px; height:64px; border-radius:10px; overflow:hidden; flex-shrink:0; border:1px solid var(--brand-border); background:var(--brand-bg-alt,#F3EFE8); display:flex; align-items:center; justify-content:center; }
.item-thumb img { width:100%; height:100%; object-fit:cover; }
.item-thumb i   { font-size:22px; color:var(--brand-muted); opacity:.5; }
.item-info { flex:1; min-width:0; }
.item-name    { font-size:14px; font-weight:700; color:var(--brand-dark); margin-bottom:3px; }
.item-variant { font-size:12px; color:var(--brand-muted); margin-bottom:4px; }
.item-qty     { font-size:12px; color:var(--brand-muted); }
.item-qty strong { color:var(--brand-dark); }
.item-price { text-align:right; flex-shrink:0; }
.item-subtotal { font-family:'Playfair Display',serif; font-size:17px; font-weight:700; color:var(--brand-dark); display:block; }
.item-unit-price { font-size:11px; color:var(--brand-muted); display:block; }
.item-unit-price s { margin-right:4px; }

/* ── Summary table ── */
.summary-row { display:flex; justify-content:space-between; font-size:14px; color:var(--brand-muted); padding:8px 0; }
.summary-row .val { font-weight:600; color:var(--brand-dark); }
.summary-row .green { color:var(--brand-green-accent); }
.summary-divider { border:none; border-top:1px solid var(--brand-border); margin:4px 0; }
.summary-total-row { display:flex; justify-content:space-between; align-items:center; background:var(--brand-dark); border-radius:12px; padding:14px 18px; margin-top:12px; }
.summary-total-row .tl { font-size:14px; font-weight:700; color:rgba(255,255,255,.8); }
.summary-total-row .tv { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:#fff; }

/* ── Address + Info ── */
.info-row { display:flex; gap:10px; font-size:14px; margin-bottom:12px; }
.info-row:last-child { margin-bottom:0; }
.info-row i { color:var(--brand-orange); font-size:16px; flex-shrink:0; margin-top:1px; }
.info-row .label { font-weight:700; color:var(--brand-dark); min-width:100px; flex-shrink:0; }
.info-row .val   { color:var(--brand-muted); line-height:1.6; }

/* ── Actions ── */
.btn-back-orders { display:inline-flex; align-items:center; gap:8px; background:#fff; color:var(--brand-dark); border:1.5px solid var(--brand-border); border-radius:12px; padding:11px 22px; font-size:14px; font-weight:700; text-decoration:none; transition:all .2s; }
.btn-back-orders:hover { border-color:var(--brand-dark); background:var(--brand-bg); color:var(--brand-dark); }
.btn-shop-again { display:inline-flex; align-items:center; gap:8px; background:var(--brand-dark); color:#fff; border-radius:12px; padding:11px 22px; font-size:14px; font-weight:700; text-decoration:none; transition:all .2s; }
.btn-shop-again:hover { background:var(--brand-orange); color:#fff; }

.profile-section { padding:40px 0 80px; background:var(--brand-bg); }
/* ── Profile Card (left sticky) ── */
.profile-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); overflow:hidden; position:sticky; top:90px; }
.profile-card-top { background:linear-gradient(135deg,var(--brand-dark) 0%,#2a5c50 100%); padding:32px 24px; text-align:center; position:relative; overflow:hidden; }
.profile-card-top::before { content:''; position:absolute; top:-40px; right:-40px; width:140px; height:140px; background:radial-gradient(circle,rgba(192,86,47,.25),transparent 70%); border-radius:50%; }
.profile-avatar { width:86px; height:86px; border-radius:50%; background:rgba(255,255,255,.15); border:3px solid rgba(255,255,255,.3); display:flex; align-items:center; justify-content:center; margin:0 auto 14px; font-family:'Playfair Display',serif; font-size:30px; font-weight:700; color:#fff; letter-spacing:.04em; position:relative; }
.avatar-dot { position:absolute; bottom:3px; right:3px; width:16px; height:16px; border-radius:50%; background:#22c55e; border:3px solid rgba(255,255,255,.3); }
.profile-name   { font-family:'Playfair Display',serif; font-weight:700; font-size:18px; color:#fff; margin-bottom:4px; }
.profile-mobile { font-size:13px; color:rgba(255,255,255,.65); margin-bottom:0; }
.profile-card-body { padding:22px; }
.meta-row { display:flex; align-items:center; gap:12px; padding:11px 0; border-bottom:1px solid var(--brand-border); }
.meta-row:last-of-type { border-bottom:none; }
.meta-row .mi { width:34px; height:34px; border-radius:9px; background:var(--brand-bg-alt,#F3EFE8); display:flex; align-items:center; justify-content:center; font-size:15px; color:var(--brand-dark); flex-shrink:0; }
.meta-row .meta-label { font-size:11px; color:var(--brand-muted); font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.meta-row .meta-value { font-size:14px; font-weight:600; color:var(--brand-dark); }
.profile-links { border-top:1px solid var(--brand-border); padding:16px 22px; display:flex; flex-direction:column; gap:4px; }
.profile-link  { display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:10px; font-size:14px; font-weight:500; color:var(--brand-text); text-decoration:none; transition:all .2s; border:none; background:none; cursor:pointer; width:100%; font-family:'DM Sans',sans-serif; }
.profile-link i { font-size:16px; color:var(--brand-muted); flex-shrink:0; }
.profile-link:hover { background:var(--brand-bg); color:var(--brand-orange); }
.profile-link:hover i { color:var(--brand-orange); }
.profile-link.logout { color:#dc2626; }
.profile-link.logout i { color:#dc2626; }
.profile-link.logout:hover { background:#fee2e2; color:#dc2626; }

/* ── Form Cards (right) ── */
.section-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); padding:32px; margin-bottom:18px; }
.section-title { font-family:'Playfair Display',serif; font-weight:700; font-size:20px; color:var(--brand-dark); margin-bottom:6px; }
.section-sub   { font-size:14px; color:var(--brand-muted); margin-bottom:26px; line-height:1.65; }

/* Form inputs */
.brand-label { font-size:13px; font-weight:600; color:var(--brand-dark); margin-bottom:7px; display:block; }
.brand-label .req { color:#dc2626; }
.brand-label .opt { font-weight:400; color:var(--brand-muted); font-size:12px; }
.brand-input  { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:12px 14px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--brand-text); background:var(--brand-card); outline:none; transition:border-color .2s; }
.brand-input:focus { border-color:var(--brand-dark); background:#fff; }
.brand-input.input-error { border-color:#dc2626; }
.brand-input:disabled { opacity:.5; cursor:not-allowed; background:var(--brand-bg); }
.brand-select { width:100%; border:1.5px solid var(--brand-border); border-radius:10px; padding:12px 14px; font-size:14px; font-family:'DM Sans',sans-serif; background:var(--brand-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%236B7280' d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") no-repeat right 12px center; -webkit-appearance:none; outline:none; cursor:pointer; }
.brand-select:focus { border-color:var(--brand-dark); }
.field-error { font-size:12px; color:#dc2626; margin-top:4px; display:block; }
.field-hint  { font-size:12px; color:var(--brand-muted); margin-top:4px; display:flex; align-items:center; gap:5px; }
.form-group  { margin-bottom:18px; }
.mobile-wrap { position:relative; }
.mobile-wrap .brand-input { padding-right:42px; }
.mobile-lock { position:absolute; right:13px; top:50%; transform:translateY(-50%); color:var(--brand-muted); font-size:14px; }
.section-divider { border:none; border-top:1px solid var(--brand-border); margin:26px 0; }

/* Save button */
.btn-save { background:var(--brand-dark); color:#fff; border:none; border-radius:12px; padding:13px 30px; font-weight:700; font-size:15px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .25s; display:inline-flex; align-items:center; gap:8px; }
.btn-save:hover    { background:var(--brand-orange); transform:translateY(-2px); }
.btn-save:disabled { opacity:.6; cursor:not-allowed; transform:none; }

/* Success banners */
.success-banner { border-radius:12px; padding:14px 18px; display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.success-banner.profile { background:var(--brand-green-light); border:1px solid #bbf7d0; }
.success-banner.address { background:#eff6ff; border:1px solid #bfdbfe; }
.success-banner i { font-size:20px; flex-shrink:0; }
.success-banner.profile i { color:var(--brand-green-accent); }
.success-banner.address i { color:#1D4ED8; }
.success-banner p { font-size:14px; font-weight:600; margin:0; }
.success-banner.profile p { color:var(--brand-green-accent); }
.success-banner.address p { color:#1D4ED8; }

/* ── Address Cards ── */
.addr-list { display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.addr-card { border:1.5px solid var(--brand-border); border-radius:14px; padding:18px; transition:all .2s; position:relative; }
.addr-card.is-default { border-color:var(--brand-dark); background:rgba(26,60,52,.03); }
.addr-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:8px; }
.addr-name  { font-size:14px; font-weight:700; color:var(--brand-dark); display:flex; align-items:center; gap:8px; }
.default-tag { font-size:11px; font-weight:700; background:var(--brand-dark); color:#fff; padding:2px 10px; border-radius:50px; }
.addr-mobile { font-size:13px; color:var(--brand-muted); margin-bottom:4px; }
.addr-text   { font-size:13px; color:var(--brand-muted); line-height:1.6; }
.addr-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
.btn-addr-action { font-size:12px; font-weight:600; padding:6px 14px; border-radius:8px; border:1.5px solid var(--brand-border); background:#fff; cursor:pointer; font-family:'DM Sans',sans-serif; display:inline-flex; align-items:center; gap:5px; transition:all .2s; }
.btn-addr-action.set-default { color:var(--brand-dark); }
.btn-addr-action.set-default:hover { border-color:var(--brand-dark); background:var(--brand-bg); }
.btn-addr-action.delete { color:#dc2626; border-color:#fca5a5; }
.btn-addr-action.delete:hover { background:#fee2e2; }

/* Add new address toggle */
.btn-add-addr { width:100%; display:flex; align-items:center; justify-content:center; gap:8px; padding:13px; border:1.5px dashed var(--brand-border); background:none; border-radius:12px; font-size:14px; font-weight:600; color:var(--brand-dark); cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .2s; }
.btn-add-addr:hover { border-color:var(--brand-dark); background:var(--brand-bg); }

/* New address form */
.new-addr-form { border:1.5px solid var(--brand-border); border-radius:14px; padding:22px; margin-top:12px; background:var(--brand-bg-alt,#F3EFE8); display:none; }
.new-addr-form.open { display:block; }
.addr-form-title { font-size:15px; font-weight:700; color:var(--brand-dark); margin-bottom:18px; display:flex; align-items:center; gap:8px; }
.btn-addr-save { background:var(--brand-dark); color:#fff; border:none; border-radius:10px; padding:11px 24px; font-size:14px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; transition:background .2s; display:inline-flex; align-items:center; gap:7px; }
.btn-addr-save:hover    { background:var(--brand-orange); }
.btn-addr-save:disabled { opacity:.6; cursor:not-allowed; }
.btn-addr-cancel { background:none; border:1.5px solid var(--brand-border); color:var(--brand-muted); border-radius:10px; padding:10px 20px; font-size:14px; font-weight:600; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .2s; }
.btn-addr-cancel:hover { border-color:var(--brand-dark); color:var(--brand-dark); }
.addr-form-msg { font-size:13px; border-radius:8px; padding:10px 14px; margin-top:10px; display:none; }
.addr-form-msg.error   { background:#fee2e2; color:#dc2626; display:block; }
.addr-form-msg.success { background:var(--brand-green-light); color:var(--brand-green-accent); display:block; }

/*-b2b stats-*/
.stats-strip { background:var(--brand-orange); padding:18px 0; }
.stat-item   { text-align:center; }
.stat-num    { font-family:'Playfair Display',serif; font-size:26px; font-weight:700; color:#fff; display:block; line-height:1; }
.stat-label  { font-size:12px; color:rgba(255,255,255,.8); font-weight:600; text-transform:uppercase; letter-spacing:.08em; margin-top:3px; display:block; }
.stat-div    { width:1px; background:rgba(255,255,255,.25); height:36px; }

/* ── Main section ── */
.b2b-section { padding:60px 0 80px; background:var(--brand-bg); }

/* ── Why Partner card ── */
.why-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); overflow:hidden; height:100%; }
.why-card-header { background:var(--brand-dark); padding:24px 26px; }
.why-card-header h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:20px; color:#fff; margin-bottom:4px; }
.why-card-header p  { font-size:13px; color:rgba(255,255,255,.6); margin:0; }
.why-card-body  { padding:24px 26px; }
.why-item   { display:flex; align-items:flex-start; gap:14px; padding:14px 0; border-bottom:1px solid var(--brand-border); }
.why-item:last-child { border-bottom:none; padding-bottom:0; }
.wi-icon    { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:19px; flex-shrink:0; }
.wi-icon.dark   { background:rgba(26,60,52,.08);  color:var(--brand-dark); }
.wi-icon.orange { background:rgba(192,86,47,.1);  color:var(--brand-orange); }
.wi-icon.green  { background:var(--brand-green-light); color:var(--brand-green-accent); }
.wi-icon.blue   { background:#EFF6FF; color:#1D4ED8; }
.why-item h6 { font-size:14px; font-weight:700; color:var(--brand-dark); margin-bottom:3px; }
.why-item p  { font-size:13px; color:var(--brand-muted); margin:0; line-height:1.6; }

/* Certification row */
.cert-row  { display:flex; gap:10px; flex-wrap:wrap; padding:20px 26px; border-top:1px solid var(--brand-border); background:var(--brand-bg-alt,#F3EFE8); }
.cert-badge { display:inline-flex; align-items:center; gap:6px; background:#fff; border:1px solid var(--brand-border); border-radius:50px; padding:5px 14px; font-size:12px; font-weight:700; color:var(--brand-dark); }
.cert-badge i { color:var(--brand-green-accent); }

/* ── Form Card ── */
.form-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); overflow:hidden; }
.form-card-header { padding:26px 30px; border-bottom:1px solid var(--brand-border); }
.form-card-header h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:22px; color:var(--brand-dark); margin-bottom:5px; }
.form-card-header p  { font-size:14px; color:var(--brand-muted); margin:0; line-height:1.6; }
.form-card-body { padding:28px 30px; }

/* Char counter */
.char-counter      { font-size:11px; color:var(--brand-muted); text-align:right; margin-top:4px; }
.char-counter.warn { color:var(--brand-orange); }

/* Result message */
.form-result { border-radius:12px; padding:16px 18px; display:none; font-size:14px; font-weight:500; line-height:1.6; }
.form-result.success { background:var(--brand-green-light); color:var(--brand-green-accent); display:flex; gap:10px; align-items:flex-start; }
.form-result.error   { background:#fee2e2; color:#dc2626; display:flex; gap:10px; align-items:flex-start; }
.form-result i { font-size:18px; flex-shrink:0; margin-top:1px; }

.wa-btn {position: fixed;bottom: 28px;right: 28px;width: 54px;height: 54px;background: #25D366;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-size: 1.6rem;color: white;text-decoration: none;box-shadow: 0 6px 24px rgba(37,211,102,.4);z-index: 999;transition: all .3s cubic-bezier(.22,1,.36,1);}
.wa-btn:hover {background: #1ebe5d;color: white;transform: translateY(-4px) scale(1.08);box-shadow: 0 12px 32px rgba(37,211,102,.5);}
.wa-btn::before {content: '';position: absolute;inset: 0;border-radius: 50%;background: rgba(37,211,102,.4);animation: wa-pulse 2.2s ease-out infinite;}
@keyframes wa-pulse {
    0%   { transform: scale(1);  opacity: .8; }
  100% { transform: scale(1.9); opacity: 0; }
}


.product-card-actions {display: flex;flex-direction: column;gap: 8px;padding: 14px 16px;}

.b2b-nav-item {margin-left: 12px;}
.b2b-nav-link {background: var(--brand-orange, #2FD3AE);color: #fff !important;padding: 8px 16px !important;border-radius: 30px;font-weight: 700 !important;transition: all 0.25s ease;box-shadow: 0 4px 12px rgba(47, 211, 174, 0.25);}
.b2b-nav-link:hover {background: #fff;color: #02534D !important;transform: translateY(-1px);box-shadow: 0 6px 16px rgba(47, 211, 174, 0.35);}
.b2b-nav-link i {font-size: 14px;}

.ingredients-section { padding:70px 0 60px; background:var(--brand-bg); }

/* Section intro */
.ing-intro          { text-align:center; margin-bottom:56px; }
.ing-intro .eyebrow { display:inline-flex; align-items:center; gap:8px; background:rgba(26,60,52,.08); border-radius:50px; padding:7px 20px; font-size:13px; font-weight:700; color:var(--brand-dark); letter-spacing:.06em; text-transform:uppercase; margin-bottom:18px; }
.ing-intro h2       { font-family:'Playfair Display',serif; font-weight:700; font-size:clamp(26px,3.5vw,42px); color:var(--brand-dark); margin-bottom:12px; line-height:1.2; }
.ing-intro h2 span  { color:var(--brand-orange); }
.ing-intro p        { font-size:17px; color:var(--brand-muted); max-width:560px; margin:0 auto; line-height:1.7; }

/* ── About + Why Choose ─────────────────────────────── */
.about-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); padding:36px; height:100%; }
.about-card h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:22px; color:var(--brand-dark); margin-bottom:6px; }
.about-card .tag { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--brand-orange); margin-bottom:14px; display:block; }
.about-card p  { font-size:14px; color:var(--brand-muted); line-height:1.8; margin-bottom:0; }

.why-card-new { background:var(--brand-dark); border-radius:20px; padding:36px; height:100%; }
.why-card-new h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:22px; color:#fff; margin-bottom:22px; }
.why-item-new { display:flex; align-items:flex-start; gap:12px; margin-bottom:14px; }
.why-item-new:last-child { margin-bottom:0; }
.why-check { width:22px; height:22px; border-radius:50%; background:var(--brand-orange); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:1px; }
.why-check i { font-size:11px; color:#fff; }
.why-item-new span { font-size:14px; color:rgba(255,255,255,.85); line-height:1.5; font-weight:500; }

/* ── Product Cards ─────────────────────────────────── */
.products-heading { font-family:'Playfair Display',serif; font-weight:700; font-size:clamp(22px,3vw,34px); color:var(--brand-dark); text-align:center; margin-bottom:8px; }
.products-sub     { text-align:center; color:var(--brand-muted); font-size:15px; margin-bottom:44px; }

.product-ing-card { background:#fff; border-radius:20px; border:1px solid var(--brand-border); overflow:hidden; height:100%; display:flex; flex-direction:column; transition:all .3s; }
.product-ing-card:hover { box-shadow:0 16px 40px rgba(0,0,0,.1); transform:translateY(-4px); border-color:transparent; }

.pic-header { border-radius:20px 20px 0 0;  padding:26px 24px 0; position:relative; overflow:visible; min-height:170px }
.pic-header.green  { background:linear-gradient(135deg,#1A3C34,#2a6050); }
.pic-header.brown  { background:linear-gradient(135deg,#4a2c1a,#7a4a2a); }
.pic-header.golden { background:linear-gradient(135deg,#7a4a00,#b87000); }
.pic-header::after { content:''; position:absolute; bottom:-30px; right:-30px; width:120px; height:120px; border-radius:50%; background:rgba(255,255,255,.06); }
.pic-header h4 { font-family:'Playfair Display',serif; font-weight:700; font-size:20px; color:#fff; margin-bottom:3px; }
.pic-header .botanical { font-size:12px; color:rgba(255,255,255,.65); font-style:italic; margin-bottom:12px; display:block; }
.pic-tag { display:inline-block; background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.25); border-radius:50px; padding:3px 14px; font-size:11px; font-weight:700; color:#fff; letter-spacing:.06em; }

.pic-body { padding:44px 24px 24px ; flex:1; display:flex; flex-direction:column; gap:18px; }

/* Standardisation badges */
.std-badges { display:flex; gap:8px; flex-wrap:wrap; }
.std-badge  { background:var(--brand-bg-alt,#F3EFE8); border:1px solid var(--brand-border); border-radius:8px; padding:6px 14px; font-size:12px; font-weight:700; color:var(--brand-dark); text-align:center; }
.std-badge small { display:block; font-size:10px; font-weight:400; color:var(--brand-muted); margin-top:1px; }

/* Highlights / Benefits list */
.pic-list-title { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--brand-orange); margin-bottom:10px; }
.pic-list       { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:7px; }
.pic-list li    { display:flex; align-items:flex-start; gap:8px; font-size:13px; color:var(--brand-muted); line-height:1.5; }
.pic-list li::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--brand-orange); flex-shrink:0; margin-top:6px; }

/* Applications */
.app-row  { display:flex; flex-wrap:wrap; gap:6px; }
.app-chip { background:var(--brand-bg); border-radius:6px; padding:4px 12px; font-size:12px; font-weight:600; color:var(--brand-dark); border:1px solid var(--brand-border); }

/* Available forms/grades */
.forms-row { display:flex; gap:6px; flex-wrap:wrap; }
.form-chip { background:var(--brand-dark); color:#fff; border-radius:6px; padding:4px 12px; font-size:12px; font-weight:600; }

.pic-divider { border:none; border-top:1px solid var(--brand-border); margin:0; }

/* ── Quality Assurance strip ─────────────────────────── */
.quality-section { background:var(--brand-dark); border-radius:20px; padding:44px 48px; margin-top:60px; position:relative; overflow:hidden; }
.quality-section::before { content:''; position:absolute; top:-80px; right:-80px; width:300px; height:300px; border-radius:50%; background:rgba(192,86,47,.12); }
.quality-section::after  { content:''; position:absolute; bottom:-60px; left:-40px; width:220px; height:220px; border-radius:50%; background:rgba(255,255,255,.03); }
.qs-header { display:flex; align-items:center; gap:14px; margin-bottom:10px; }
.qs-icon   { width:48px; height:48px; border-radius:14px; background:var(--brand-orange); display:flex; align-items:center; justify-content:center; font-size:22px; color:#fff; flex-shrink:0; }
.qs-header h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:24px; color:#fff; margin:0; }
.qs-sub { font-size:15px; color:rgba(255,255,255,.65); margin-bottom:32px; line-height:1.7; padding-left:62px; }
.doc-label { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.5); margin-bottom:16px; padding-left:62px; }
.doc-grid { display:flex; flex-wrap:wrap; gap:10px; padding-left:62px; }
.doc-chip { display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15); border-radius:10px; padding:10px 18px; font-size:13px; font-weight:600; color:#fff; transition:all .2s; }
.doc-chip:hover { background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.3); }
.doc-chip i { color:var(--brand-orange); font-size:15px; }

.pic-product-img {position: relative;right:8px;bottom:-30px; height:190px; width:auto; object-fit:contain; filter: drop-shadow(0 12px 24px rgba(0,0,0,.35)); transition: transform .3s ease; pointer-events:none }
.product-ing-card:hover .pic-product-img { transform: translateY(-6px) scale(1.04); }

/* ── Speciality Ingredients table strip ─────────────── */
.speciality-section { background:#fff; border-radius:20px; border:1px solid var(--brand-border); padding:44px 48px; margin-top:60px; position:relative; overflow:hidden; }
.speciality-section::before { content:''; position:absolute; top:-80px; right:-80px; width:300px; height:300px; border-radius:50%; background:rgba(2,83,77,.05); }
.sp-header { display:flex; align-items:flex-start; gap:14px; margin-bottom:28px; }
.sp-header h3 { font-family:'Playfair Display',serif; font-weight:700; font-size:24px; color:var(--brand-dark); margin:0; }
.sp-sub { font-size:14px; color:var(--brand-muted); line-height:1.7; max-width:820px; }
.sp-table-wrap { border-radius:14px; border:1px solid var(--brand-border); }
.speciality-table { width:100%; border-collapse:separate; border-spacing:0; font-size:13px; background:#fff; }
.speciality-table thead th { background:var(--brand-dark); color:#fff; text-align:left; padding:13px 18px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }
.speciality-table thead th:first-child { border-radius:14px 0 0 0; }
.speciality-table thead th:last-child  { border-radius:0 14px 0 0; }
.speciality-table tbody td { padding:12px 18px; border-top:1px solid var(--brand-border); vertical-align:middle; color:var(--brand-text); line-height:1.5; }
.speciality-table tbody tr:nth-child(even) td { background:var(--brand-bg-alt); }
.speciality-table tbody tr:hover td { background:var(--brand-green-light); }
.speciality-table .sp-name { display:flex; align-items:center; gap:12px; font-weight:700; color:var(--brand-dark); white-space:nowrap; }
.sp-thumb { width:88px; height:88px; border-radius:14px; object-fit:cover; border:1px solid var(--brand-border); cursor:pointer; flex-shrink:0; transition:transform .2s, box-shadow .2s; }
.sp-thumb:hover { transform:scale(1.12); box-shadow:0 6px 16px rgba(0,0,0,.18); }
.speciality-table td em { color:var(--brand-muted); font-style:italic; white-space:nowrap; }
.lightbox-caption { position:absolute; bottom:24px; left:50%; transform:translateX(-50%); background:rgba(255,255,255,.12); color:#fff; font-size:14px; font-weight:600; padding:8px 20px; border-radius:50px; max-width:80vw; text-align:center; }
@media (max-width:575px) {
    .speciality-section { padding:28px 20px; }
    .sp-header { flex-direction:column; }
    .speciality-table .sp-name { white-space:normal; }
}



/* ── Share Button ── */
.share-wrap {position: absolute;top:  10px;right: 10px;z-index: 10;}
.btn-share        { display:inline-flex; align-items:center; gap:7px; background:#fff; border:1.5px solid var(--brand-border); color:var(--brand-dark); border-radius:10px; padding:10px 18px; font-size:13px; font-weight:700; font-family:'DM Sans',sans-serif; cursor:pointer; transition:all .2s; }
.btn-share:hover  { border-color:var(--brand-dark); background:var(--brand-bg); }
.btn-share i      { font-size:15px; }

.share-dropdown {
    position: absolute;
    top: calc(100% + 8px); /* ← was bottom:calc(100% + 10px) */
    right: 0; /* aligned to right edge of button */
    left: auto; /* ← was left:0 */
    background: #fff;
    border-radius: 14px;
    border: 1px solid var(--brand-border);
    box-shadow: 0 12px 32px rgba(0,0,0,.12);
    padding: 8px;
    min-width: 210px;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px); /* ← direction reversed */
    transition: all .22s ease;
}
    .share-dropdown.open {
        opacity: 1;
        visibility: visible;
        pointer-events: all;
        transform: translateY(0);
    }

.share-option     { display:flex; align-items:center; gap:10px; padding:9px 14px; border-radius:9px; font-size:13px; font-weight:600; color:var(--brand-text); cursor:pointer; transition:background .15s; border:none; background:none; width:100%; font-family:'DM Sans',sans-serif; text-decoration:none; }
.share-option:hover { background:var(--brand-bg); }
.share-option .so-icon { width:32px; height:32px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; }
.so-whatsapp  { background:#e9fbe9; color:#25d366; }
.so-facebook  { background:#e7f0fd; color:#1877f2; }
.so-twitter   { background:#f0f0f0; color:#000; }
.so-linkedin  { background:#e8f0fe; color:#0077b5; }
.so-copy      { background:var(--brand-bg-alt,#F3EFE8); color:var(--brand-dark); }

.share-divider { border:none; border-top:1px solid var(--brand-border); margin:6px 0; }
.share-copied  { font-size:11px; color:var(--brand-green-accent); font-weight:600; text-align:center; padding:4px 0 2px; display:none; }
.share-copied.show { display:block; }

/* Mobile tweaks */
@media (max-width:991px) {
    .profile-card {position: static;margin-bottom: 18px;}
    .why-card { margin-bottom:18px; }
    .site-header {position: sticky;top: 0;z-index: 1050;width: 100%;}
    .navbar-main {position: relative;}

    .navbar-main .container {display: flex;align-items: center;justify-content: space-between;}
    .navbar-main .navbar-brand img {width: 130px;}
    .main-nav-actions {margin-left: auto;}
    .main-nav-actions .user-btn,.cart-nav-btn {width: 40px;height: 40px;}
    .menu-strip {position: relative;}
    .desktop-menu {display: none !important;}
    .mobile-menu-bar {display: flex;align-items: center;justify-content: space-between;min-height: 52px;gap: 10px;}
    .mobile-menu-toggle {display: inline-flex;align-items: center;gap: 7px;border: 0;background: transparent;color: #02534D;font-size: 15px;font-weight: 600;padding: 8px 12px;border-radius: 7px;cursor: pointer;}
    .mobile-menu-toggle i {font-size: 23px;line-height: 1;}
    .mobile-menu-toggle:hover {background: #D4F0E9;}
    .mobile-b2b-btn {display: inline-flex;align-items: center;gap: 6px; background: var(--brand-orange);color: #fff;text-decoration: none;padding: 8px 15px; border-radius: 22px;font-size: 14px;font-weight: 700;white-space: nowrap;box-shadow: 0 3px 10px rgba(47,211,174,.22);}
    .mobile-b2b-btn:hover {background: #02534D;color: #fff;}
    .mobile-menu-dropdown {display: none;border-top: 1px solid rgba(2,83,77,.1); transition: all 0.25s ease;}
    .mobile-menu-dropdown.show {display: block;}
    .mobile-menu-dropdown ul {list-style: none;margin: 0;padding: 6px 0;}
    .mobile-menu-dropdown li {border-bottom: 1px solid #edf2f1;}
    .mobile-menu-dropdown li:last-child {border-bottom: 0;}
    .mobile-menu-dropdown a {display: flex; align-items: center;gap: 12px;padding: 12px 8px;color: #02534D;text-decoration: none;font-size: 15px;font-weight: 600;}
    .mobile-menu-dropdown a:hover {background: #E9F7F3;}
    .mobile-menu-dropdown a i {width: 22px;font-size: 17px;text-align: center;}
}
@media (max-width: 767px) {
    .cart-item       { padding:16px; gap:12px; }
    .cart-thumb      { width:70px; height:70px; }
    .item-price-col  { display:none; }
    .item-price-mob  { display:block; }
    .cart-card-header{ padding:14px 16px; }
    .summary-card    { position:static; margin-top:8px; }
    .form-card    { padding:20px 16px; }
    .summary-card { position:static; margin-top:8px; }
    .order-card-body { gap:14px; }
    .order-right     { flex-direction:row; align-items:center; width:100%; margin-left:0; justify-content:space-between; }
    .order-total     { text-align:left; }
    .order-progress  { padding:0 16px 16px; }
    .step-label      { display:none; }
    .order-card-header, .order-card-body { padding-left:16px; padding-right:16px; }
    .section-card {padding: 20px 16px;}
    .form-card-body { padding:20px 16px; }

    .b2b-nav-item {margin-left: 0;margin-top: 8px;}
    .b2b-nav-link {display: block;text-align: center;border-radius: 8px;padding: 10px 15px !important;    }

}
@media (min-width: 768px) {
    .item-price-mob  { display:none; }
}
@media (max-width: 991px) {
    .login-brand-col {padding-right: 0;margin-bottom: 36px;}
    .login-page {padding: 36px 0 60px;}
}

@media (max-width: 575px) {
    .login-card-body {padding: 24px 20px;}
    .otp-cell {font-size: 20px;}
}
@media (max-width:480px) {
    .order-thumb {width: 58px;height: 58px;}
    .order-product-name {font-size: 14px;}
}