/**
 * Omkara Rudraksha / Trikaal Vaani - Full Project Responsive Styles
 * Covers: mobile (320px+), tablet (576–991px), desktop (992px+), large (1200px+)
 * Apply to all frontend pages: home, cart, product listing, product details, checkout, profile, etc.
 */

/* ========== BASE: Prevent horizontal scroll & ensure touch-friendly ========== */
html {
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
}
body, .body-wrap {
    overflow-x: hidden;
    min-width: 0;
}
.container, .omkara-page .container, .max-w-7xl, .max-w-8xl {
    width: 100%;
    max-width: 100%;
    padding-left: 12px;
    padding-right: 12px;
}
@media (min-width: 576px) {
    .container, .omkara-page .container, .max-w-7xl, .max-w-8xl {
        padding-left: 16px;
        padding-right: 16px;
    }
}
@media (min-width: 768px) {
    .container, .omkara-page .container, .max-w-7xl, .max-w-8xl {
        padding-left: 24px;
        padding-right: 24px;
    }
}
@media (min-width: 992px) {
    .container, .omkara-page .container, .max-w-7xl { padding-left: 1.5rem; padding-right: 1.5rem; }
    .max-w-8xl { padding-left: 2rem; padding-right: 2rem; }
}
@media (min-width: 1200px) {
    .container, .omkara-page .container, .max-w-7xl { max-width: 1280px; margin-left: auto; margin-right: auto; }
    .max-w-8xl { max-width: 1400px; margin-left: auto; margin-right: auto; }
}

/* ========== TOP NAVBAR (phone + track/login links) ========== */
@media (max-width: 991px) {
    .omkara-top-navbar .row { margin-left: -8px; margin-right: -8px; }
    .omkara-top-navbar .col-lg-7, .omkara-top-navbar .col-lg-5,
    .omkara-top-navbar .col-md-6 { padding-left: 8px; padding-right: 8px; }
    .omkara-top-navbar .col-lg-5.text-right { text-align: left !important; }
    .omkara-top-links { flex-wrap: wrap; gap: 8px; }
    .omkara-top-link { font-size: 12px; }
}
@media (max-width: 576px) {
    .omkara-top-navbar { padding: 10px 0; }
    .omkara-top-links { flex-direction: column; align-items: flex-start; gap: 6px; }
    .omkara-top-links-right { align-items: flex-end; }
    .omkara-phone-link { font-size: 12px; }
    .omkara-phone-text strong { font-size: 11px; }
    .omkara-phone-text span { font-size: 11px; }
}
@media (max-width: 400px) {
    .omkara-phone-link .omkara-phone-text br { display: none; }
    .omkara-phone-text strong, .omkara-phone-text span { display: inline; }
}
/* Below 768px: hide top bar (contact + Track Order + Logout); these move into mobile sidebar */
@media (max-width: 767px) {
    .omkara-top-navbar { display: none !important; }
}

/* ========== MOBILE SIDEBAR FOOTER (contact + Track Order + Logout) ========== */
.omkara-side-menu-footer {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    padding-top: 0.5rem;
    margin-top: 0.5rem;
}
.omkara-side-menu-footer .sidebar-widget-title {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #666;
}
.omkara-side-menu-footer .side-user-menu li a {
    display: flex;
    align-items: center;
    padding: 10px 0;
    font-size: 0.95rem;
}
.omkara-side-menu-footer .side-user-menu li a i {
    margin-right: 12px;
    font-size: 1.2rem;
    opacity: 0.8;
}
.omkara-side-menu-footer .side-user-menu li a .omkara-side-footer-label {
    flex: 0 0 auto;
}
.omkara-side-menu-footer .side-user-menu li a .text-muted {
    font-size: 0.9rem;
}

/* ========== MAIN HEADER: Logo + Search + Icons ========== */
@media (max-width: 1199px) {
    .logo-bar-area .search-box { padding-left: 12px; padding-right: 12px; }
    .omkara-search-input { font-size: 13px; }
    .omkara-category-select { width: 140px; min-width: 140px; }
}
@media (max-width: 991px) {
    .logo-bar-area .row { margin-left: -6px; margin-right: -6px; }
    .logo-bar-area .col-lg-3, .logo-bar-area .col-lg-9,
    .logo-bar-area .col-4, .logo-bar-area .col-8 { padding-left: 6px; padding-right: 6px; }
    .search-box { order: 2; width: 100% !important; max-width: 100%; padding: 0 8px !important; margin-top: 10px; }
    .logo-bar-area .d-flex.w-100 { flex-wrap: wrap; }
    .logo-bar-icons { margin-left: auto; }
    .omkara-nav-icon-box { margin-left: 8px; }
    .omkara-nav-icon-link { width: 40px; height: 40px; }
    .omkara-nav-icon { font-size: 1.25rem; }
    .omkara-nav-badge { width: 18px; height: 18px; font-size: 10px; top: 2px; right: 2px; }
}
@media (max-width: 768px) {
    .logo-bar-area { padding: 12px 0; }
    .omkara-logo-img { max-height: 42px !important; }
    .search-box.flex-grow-1 { flex-grow: 0; width: 100%; }
    .omkara-search-input { height: 42px; padding: 0 14px; font-size: 14px; }
    .omkara-search-btn { height: 42px; width: 44px; }
    .logo-bar-icons .d-none.d-lg-inline-block { display: none !important; }
}
@media (max-width: 576px) {
    .logo-bar-area .col-8 { max-width: 75%; flex: 0 0 75%; }
    .logo-bar-area .col-4 { max-width: 25%; flex: 0 0 25%; }
    .omkara-logo-img { max-height: 38px !important; margin-right: 8px !important; }
    .omkara-nav-icon-link { width: 38px; height: 38px; }
    .mobile-menu-icon-box { margin-right: 4px; margin-left: 4px;position: relative;z-index: 1000;bottom: -15px; }
}
@media (max-width: 360px) {
    .omkara-logo-img { max-height: 34px !important; }
}

/* ========== HERO SECTION ========== */
@media (max-width: 1199px) {
    .omkara-hero .max-w-8xl .flex { margin-left: -12px; margin-right: -12px; }
    .omkara-hero .w-full.px-4 { padding-left: 12px; padding-right: 12px; }
    .omkara-hero h1, .omkara-hero h2 { font-size: 3rem; }
}
@media (max-width: 992px) {
    .omkara-hero .flex.flex-wrap { flex-direction: column; }
    .omkara-hero-content { width: 100% !important; max-width: 100%; margin-bottom: 1rem; }
    .omkara-hero-graphic { width: 100% !important; max-width: 100%; margin-top: 1.5rem; }
    .omkara-hero p { max-width: 100%; }
}
@media (max-width: 768px) {
    .omkara-hero { padding: 48px 0 40px; min-height: auto; }
    .omkara-hero .max-w-8xl.mx-auto { padding-left: 16px; padding-right: 16px; }
    .omkara-hero .flex.mx-5 { margin-left: 0 !important; margin-right: 0 !important; }
    .omkara-hero h1, .omkara-hero h2 { font-size: 1.85rem; margin-bottom: 16px; }
    .omkara-hero p { font-size: 0.95rem; margin-bottom: 24px; }
    .omkara-btn-primary { padding: 12px 28px; font-size: 1rem; }
    .omkara-hero-graphic { height: 280px !important; }
    .blur-layer { max-width: 100%; height: 550px;     background: radial-gradient(circle, rgba(255, 163, 90, 0.8) 10%, transparent 50%);}
    .blur-layer img { max-height: 240px; }
}
@media (max-width: 576px) {
    .omkara-hero { padding: 36px 0 32px; }
    .omkara-hero h1, .omkara-hero h2 { font-size: 1.6rem; }
    .omkara-hero p { font-size: 0.9rem; }
    .omkara-hero-graphic { height: 220px !important; }
    .blur-layer { height: 300px; background: radial-gradient(circle, rgba(255, 163, 90, 0.8) 10%, transparent 65%);}
    .blur-layer img { max-height: 200px; }
}
@media (max-width: 400px) {
    .omkara-hero h1, .omkara-hero h2 { font-size: 1.4rem; }
}

/* ========== ABOUT SECTION ========== */
@media (max-width: 991px) {
    .omkara-about .flex-wrap { margin-left: 0px !important; margin-right: 0px !important; }
    .omkara-about .w-full.px-4 { padding-left: 12px; padding-right: 12px; }
    .omkara-about-content h2 { font-size: 2.2rem; }
}
@media (max-width: 768px) {
    .omkara-about { padding: 60px 0; }
    .omkara-about .w-full.lg\\:w-1\\/4 { margin-bottom: 24px; }
    .omkara-about-image { max-width: 320px; margin: 0 auto; }
    .omkara-about-content { padding-left: 0 !important; padding-right: 0; margin-top: 24px !important; }
    .omkara-about-content h2 { font-size: 1.75rem; margin-bottom: 16px; }
    .omkara-about-content p { font-size: 0.95rem; }
}
@media (max-width: 576px) {
    .omkara-about { padding: 40px 0; }
    .omkara-about-content h2 { font-size: 1.5rem; }
    .omkara-about-content p { font-size: 0.9rem; }
}

/* ========== JOURNEY SECTION – responsive for all devices ========== */
@media (max-width: 1200px) {
    .omkara-journey-inner { gap: 1.75rem; }
    .omkara-sun-graphic { width: 460px; height: 460px; }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 2.4rem; }
    .omkara-journey-content { max-width: 520px; }
}
@media (max-width: 992px) {
    .omkara-journey { padding: 80px 0; }
    .omkara-journey-inner { flex-direction: column; gap: 2rem; }
    .omkara-sun-graphic { width: 320px; height: 320px; flex: 0 0 auto; }
    .pandatjiimag { transform: translate(-50%, -50%) scale(0.35); }
    .omkara-journey-content { flex: 1 1 auto; max-width: 100%; padding: 0 12px; }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 2rem; margin-bottom: 20px; }
    .omkara-journey-text,
    .omkara-journey p { font-size: 1.05rem; margin-bottom: 28px; }
    .omkara-call-button { padding: 14px 30px; font-size: 1.05rem; }
}
@media (max-width: 768px) {
    .omkara-journey { padding: 60px 0; }
    .omkara-journey-inner { gap: 1.5rem; padding-left: 16px; padding-right: 16px; }
    .omkara-sun-graphic { width: 280px; height: 280px; }
    .pandatjiimag { transform: translate(-50%, -50%) scale(0.32); }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 1.75rem; margin-bottom: 16px; line-height: 1.25; }
    .omkara-journey-text,
    .omkara-journey p { font-size: 0.95rem; margin-bottom: 24px; padding: 0 4px; }
    .omkara-call-button { padding: 14px 28px; font-size: 1rem; min-height: 46px; gap: 10px; }
    .omkara-call-button i { font-size: 1.4rem; }
}
@media (max-width: 576px) {
    .omkara-journey { padding: 48px 0; }
    .omkara-journey-inner { gap: 1.25rem; padding-left: 12px; padding-right: 12px; }
    .omkara-sun-graphic { width: 240px; height: 240px; }
    .pandatjiimag { transform: translate(-50%, -50%) scale(0.3); }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 1.5rem; margin-bottom: 14px; }
    .omkara-journey-text,
    .omkara-journey p { font-size: 0.9rem; margin-bottom: 20px; }
    .omkara-call-button { padding: 12px 24px; font-size: 0.95rem; min-height: 44px; gap: 8px; margin-top: 20px; }
    .omkara-call-button i { font-size: 1.25rem; }
}
@media (max-width: 480px) {
    .omkara-journey { padding: 40px 0; }
    .omkara-sun-graphic { width: 200px; height: 200px; }
    .pandatjiimag { transform: translate(-50%, -50%) scale(0.28); }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 1.35rem; margin-bottom: 12px; }
    .omkara-journey-text,
    .omkara-journey p { font-size: 0.875rem; margin-bottom: 18px; }
    .omkara-call-button { padding: 12px 20px; font-size: 0.9rem; width: 100%; max-width: 280px; }
}
@media (max-width: 360px) {
    .omkara-journey { padding: 32px 0; }
    .omkara-sun-graphic { width: 180px; height: 180px; }
    .pandatjiimag { transform: translate(-50%, -50%) scale(0.26); }
    .omkara-journey-title,
    .omkara-journey h2 { font-size: 1.2rem; }
    .omkara-journey-text,
    .omkara-journey p { font-size: 0.85rem; }
    .omkara-call-button { font-size: 0.875rem; padding: 10px 18px; }
}

/* ========== STEPS SECTION (4 cards) ========== */
@media (max-width: 991px) {
    .omkara-steps .grid { margin-left: -8px; margin-right: -8px; }
    .omkara-steps .grid > * { padding-left: 8px; padding-right: 8px; margin-bottom: 16px; }
    .omkara-steps-title { font-size: 2.2rem; margin-bottom: 48px; }
}
@media (max-width: 768px) {
    .omkara-steps { padding: 60px 0; }
    .omkara-steps-subtitle { font-size: 0.9rem; letter-spacing: 2px; }
    .omkara-steps-title { font-size: 1.75rem; margin-bottom: 36px; }
    .omkara-step-card { padding: 28px 20px; }
    .omkara-step-icon { width: 80px; height: 80px; font-size: 2rem; margin-bottom: 16px; }
    .omkara-step-card h4 { font-size: 1rem; }
}
@media (max-width: 576px) {
    .omkara-steps { padding: 40px 0; }
    .omkara-steps-title { font-size: 1.5rem; margin-bottom: 28px; }
    .omkara-step-card { padding: 22px 16px; }
    .omkara-step-icon { width: 70px; height: 70px; font-size: 1.75rem; }
    .omkara-step-card h4 { font-size: 0.95rem; }
}

/* ========== SERVICES SECTION (cosmic chart) ========== */
@media (max-width: 1200px) {
    .omkara-services-title { font-size: 2.2rem; padding: 0 1rem; }
}
@media (max-width: 992px) {
    .omkara-cosmic-chart2 {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        gap: 20px 0;
        min-height: auto;
        padding: 32px 20px;
    }
    .omkara-cosmic-labels-left { grid-column: 1; grid-row: 1; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 12px; }
    .omkara-cosmic-center { grid-column: 1; grid-row: 2; }
    .omkara-cosmic-labels-right { grid-column: 1; grid-row: 3; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 12px; }
    .omkara-cosmic-labels-left .omkara-service-label,
    .omkara-cosmic-labels-right .omkara-service-label { min-height: auto; white-space: normal; }
}
@media (max-width: 768px) {
    .omkara-services { padding: 60px 0; }
    .omkara-services-title { font-size: 1.75rem; margin-bottom: 24px; }
    .omkara-services > .max-w-7xl > p { margin-bottom: 28px !important; font-size: 0.95rem; }
    .omkara-cosmic-chart2 { padding: 24px 16px; gap: 16px 0; }
    .omkara-cosmic-circle img { max-width: 200px; margin: 0 auto; }
    .omkara-service-label { font-size: 0.875rem; }
}
@media (max-width: 576px) {
    .omkara-services { padding: 40px 0; }
    .omkara-services-title { font-size: 1.5rem; }
    .omkara-cosmic-labels-left, .omkara-cosmic-labels-right { justify-content: center; }
    .omkara-service-label { font-size: 0.8rem; padding: 6px 0; }
}

/* ========== PREDICTIONS (gemstone cards) ========== */
@media (max-width: 991px) {
    .omkara-predictions .grid { margin-left: -8px; margin-right: -8px; }
    .omkara-predictions .grid > * { padding-left: 8px; padding-right: 8px; margin-bottom: 20px; }
    .omkara-predictions-title { font-size: 2.2rem; }
}
@media (max-width: 768px) {
    .omkara-predictions { padding: 60px 0; }
    .omkara-predictions-title { font-size: 1.75rem; margin-bottom: 16px; }
    .omkara-predictions > p { font-size: 0.95rem; margin-bottom: 32px; }
    .omkara-gemstone-card { padding: 28px 20px; }
    .omkara-gemstone-image { width: 140px; height: 140px; margin-bottom: 16px; }
    .omkara-gemstone-card h4 { font-size: 1.2rem; }
    .omkara-gemstone-card p { font-size: 0.9rem; }
}
@media (max-width: 576px) {
    .omkara-predictions { padding: 40px 0; }
    .omkara-predictions-title { font-size: 1.5rem; }
    .omkara-gemstone-card { padding: 22px 16px; }
    .omkara-gemstone-image { width: 120px; height: 120px; }
    .omkara-gemstone-card h4 { font-size: 1.1rem; }
    .omkara-btn-primary { padding: 12px 24px; font-size: 0.95rem; }
}

/* ========== ZODIAC SECTION ========== */
@media (max-width: 768px) {
    .omkara-zodiac { padding: 60px 0; }
    .omkara-zodiac-title { font-size: 1.75rem; margin-bottom: 16px; }
    .omkara-zodiac > p { font-size: 0.95rem; margin-bottom: 36px; }
    .omkara-zodiac-grid { gap: 16px; }
    .omkara-zodiac-item { padding: 24px 16px; }
    .omkara-zodiac-icon { width: 80px; height: 120px; margin-bottom: 12px; }
    .omkara-zodiac-item h5 { font-size: 1rem; }
}
@media (max-width: 576px) {
    .omkara-zodiac { padding: 40px 0; }
    .omkara-zodiac-title { font-size: 1.5rem; }
    .omkara-zodiac > p { margin-bottom: 28px; font-size: 0.9rem; }
    .omkara-zodiac-item { padding: 20px 12px; }
    .omkara-zodiac-icon { width:100px; height: 150px; }
}

/* ========== PRICING / PACKAGES ========== */
@media (max-width: 991px) {
    .omkara-pricing-title { font-size: 2.2rem; }
    .omkara-pricing-subtitle { font-size: 0.95rem; }
}
@media (max-width: 768px) {
    .omkara-pricing-title { font-size: 1.75rem; }
    .omkara-package-card { padding: 24px 20px; }
    .omkara-package-card h5 { font-size: 1.2rem; }
}
@media (max-width: 576px) {
    .omkara-package-card { padding: 20px 16px; }
    .omkara-package-card h5 { font-size: 1.1rem; }
}

/* ========== PRODUCTS SECTION (landing) ========== */
@media (max-width: 768px) {
    .omkara-products-title { font-size: 1.75rem; }
    .omkara-products-subtitle { font-size: 0.95rem; }
}
@media (max-width: 576px) {
    .omkara-products-title { font-size: 1.5rem; }
    .omkara-product-card { padding: 16px; }
    .omkara-product-card h4 { font-size: 1rem; }
}

/* ========== SUBSCRIPTION SECTION ========== */
@media (max-width: 768px) {
    .omkara-subscription-title { font-size: 1.75rem; }
    .omkara-subscription-form { flex-direction: column; align-items: stretch; }
    .omkara-subscription-form input { width: 100%; border-radius: 8px; border-right: 1px solid #E5E5E5; margin-bottom: 22px; }
    .omkara-btn-subscribe { width: 100%; border-radius: 8px; }
}
@media (max-width: 576px) {
    .omkara-subscription-title { font-size: 1.5rem; }
}

/* ========== FOOTER ========== */
@media (max-width: 576px) {
    .omkara-footer-wrap { padding: 28px 12px 36px; }
    .omkara-footer-illus-img { max-width: 180px; }
    .omkara-footer-nav a { font-size: 0.9rem; }
    .omkara-footer-contact-heading { font-size: 0.65rem; }
    .omkara-footer-contact-value { font-size: 0.9rem; }
    .omkara-footer-address { font-size: 0.8rem; padding: 0 8px; }
    .omkara-footer-bar { padding: 16px 12px; }
    .omkara-footer-copyright { font-size: 0.75rem; }
}
@media (max-width: 400px) {
    .omkara-footer-nav { flex-direction: column; gap: 10px; }
}

/* ========== INNER PAGES: Cart, Checkout, Profile, etc. ========== */
@media (max-width: 991px) {
    .omkara-page { padding: 28px 0 60px; }
    .omkara-page-title { font-size: 1.75rem; }
}
@media (max-width: 768px) {
    .omkara-page { padding: 20px 0 48px; }
    .omkara-page-title { font-size: 1.5rem; margin-bottom: 1rem; }
    .omkara-steps-bar { padding: 20px 0 16px; }
    .omkara-steps-bar .row.cols-delimited { flex-wrap: wrap; justify-content: center; gap: 8px; }
    .omkara-steps-bar .col { flex: 0 0 auto; min-width: 80px; }
    .omkara-steps-bar .icon-block { padding: 10px 8px 12px; }
    .omkara-steps-bar .block-icon { font-size: 1.25rem; }
    .omkara-steps-bar .heading { font-size: 0.75rem; }
}
@media (max-width: 576px) {
    .omkara-page { padding: 16px 0 40px; }
    .omkara-page-title { font-size: 1.35rem; }
    .omkara-steps-bar .col { min-width: 70px; }
}

/* ========== CART PAGE ========== */
.omkara-cart-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 991px) {
    .omkara-cart-row .col-xl-8 { margin-bottom: 1.25rem; }
    .omkara-cart-row .col-xl-4 { padding-left: 0; }
}
@media (max-width: 768px) {
    .omkara-page .omkara-cart-card { padding: 1.25rem 1rem !important; }
    .omkara-page .omkara-table-cart thead th { font-size: 0.8rem; padding: 0.75rem 0.5rem 0.75rem 0; }
    .omkara-page .omkara-table-cart tbody .cart-item td { padding: 1rem 0.5rem 1rem 0; }
    .omkara-cart-product-img-wrap { width: 52px; height: 52px; }
    .omkara-page .omkara-table-cart .product-name span { font-size: 0.9rem; }
}
@media (max-width: 576px) {
    .omkara-page .omkara-table-cart thead .product-price,
    .omkara-page .omkara-table-cart thead .product-quanity,
    .omkara-page .omkara-table-cart tbody .product-price,
    .omkara-page .omkara-table-cart tbody .product-quantity { display: none !important; }
    .omkara-page .omkara-table-cart .product-name { max-width: 140px; }
    .omkara-cart-product-img-wrap { width: 48px; height: 48px; }
    .omkara-page .omkara-table-cart .product-total { font-size: 0.9rem; }
}

/* ========== PRODUCT LISTING (category / search) ========== */
@media (max-width: 1199px) {
    .omkara-pl .side-filter .filter-wrapper { max-width: min(320px, 92vw); }
}
@media (max-width: 768px) {
    .omkara-pl-toolbar { flex-direction: column; align-items: stretch; }
    .omkara-pl-sort-row { margin-top: 10px; }
    .omkara-pl-grid-wrap { padding: 1rem; }
}
@media (max-width: 576px) {
    .omkara-pl-toolbar { padding: 0.875rem; }
    .omkara-pl-grid > [class*="col-"] { flex: 0 0 100%; max-width: 100%; }
    .omkara-pl-card .product-title { font-size: 0.9rem; }
    .omkara-pl-pagination .page-link { padding: 0.4rem 0.5rem; min-width: 2rem; font-size: 0.8rem; }
}

/* ========== PAGINATION VISIBILITY (all listing / paginated pages) ========== */
.pagination-wrapper {
    display: block !important;
    visibility: visible !important;
    min-height: 48px;
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.pagination-wrapper .pagination { margin: 0; flex-wrap: wrap; justify-content: flex-end; display: flex; }
.pagination-wrapper .pagination .page-link { min-width: 2.25rem; text-align: center; }
.omkara-pl .products-pagination,
.omkara-pl .omkara-pl-pagination { margin-top: 1.25rem; }
.gry-bg.seller-shop-section .products-pagination { margin-top: 1.5rem; margin-bottom: 1.5rem; }

/* ========== PRODUCT DETAILS – Full responsive (320px to 1200px+) ========== */
.product-details-area {
    overflow-x: hidden;
}
.product-details-area .omkara-pd-card {
    overflow-x: hidden;
}
.product-details-area .omkara-pd-row { margin-left: 0; margin-right: 0; }
.product-details-area .omkara-pd-row [class*="col-"] { padding-left: 12px; padding-right: 12px; }
.product-details-area .product-gal-img .img-fluid { max-width: 100%; height: auto; }
@media (max-width: 1199px) {
    .product-details-area.gry-bg { padding: 32px 0 60px; }
    .product-details-area .omkara-pd-gallery { padding: 1.5rem 1rem; }
    .product-details-area .omkara-pd-detail { padding: 1.5rem 1.25rem; }
    .product-details-area .product-description-wrapper .product-price { font-size: 1.35rem; }
}
@media (max-width: 991px) {
    .product-details-area.gry-bg { padding: 24px 0 48px; }
    .product-details-area .row.no-gutters { margin-left: -10px; margin-right: -10px; }
    .product-details-area .row.no-gutters [class*="col-"] { padding-left: 10px; padding-right: 10px; }
    .product-details-area .omkara-pd-gallery { padding: 1.25rem 1rem; position: static !important; }
    .product-details-area .omkara-pd-detail { padding: 1.25rem 1rem; }
    .product-details-area .omkara-pd-title { font-size: 1.55rem; line-height: 1.3; word-wrap: break-word; }
    .product-details-area .omkara-pd-seller-row { flex-wrap: wrap; gap: 10px; }
    .product-details-area .omkara-pd-msg-btn { font-size: 0.85rem; padding: 0.45rem 0.85rem; min-height: 44px; }
    .product-details-area .omkara-pd-actions { gap: 10px; }
    .product-details-area .omkara-pd-btn { padding: 12px 22px; font-size: 0.95rem; min-height: 48px; }
    .product-details-area .omkara-pd-qty-group { width: 120px; }
    .product-details-area .omkara-pd-qty-btn { min-width: 38px; padding: 0.5rem 0.7rem; }
}
@media (max-width: 768px) {
    .product-details-area.gry-bg { padding: 20px 0 40px; }
    .product-details-area .omkara-pd-title { font-size: 1.4rem; }
    .product-details-area .omkara-pd-gallery { padding: 1rem; margin-bottom: 0; }
    .product-details-area .product-gal.sticky-top { position: static; }
    .product-details-area .product-gal.d-flex { flex-direction: row !important; }
    .product-details-area .product-gal-thumb .xzoom-thumbs { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-start; }
    .product-details-area .product-gal-thumb .xzoom-thumbs a img { width: 56px; height: 56px; object-fit: cover; }
    .product-details-area .product-description-label { font-size: 0.85rem; }
    .product-details-area .product-description-wrapper .product-price { font-size: 1.25rem; }
    .product-details-area .product-description-wrapper .product-price .piece { font-size: 0.9rem; }
    .product-details-area .omkara-pd-meta .col-6 { max-width: 50%; flex: 0 0 50%; }
    .product-details-area .omkara-pd-meta .rating-count { font-size: 0.8rem; }
    .product-details-area .omkara-pd-badge { font-size: 0.75rem; padding: 0.3em 0.6em; }
    .product-details-area .omkara-pd-actions { flex-direction: row; flex-wrap: wrap; gap: 10px; margin-top: 1.25rem; }
    .product-details-area .omkara-pd-btn { flex: 1 1 auto; min-width: 140px; min-height: 48px; padding: 12px 18px; font-size: 0.95rem; }
    .product-details-area .omkara-pd-secondary-links { gap: 12px; margin-top: 1rem; }
    .product-details-area .omkara-pd-link-btn { font-size: 0.9rem; min-height: 44px; padding: 4px 0; }
    .product-details-area .checkbox-alphanumeric--style-1 label { padding: 0.45em 0.65em; font-size: 0.9rem; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; }
    .product-details-area .omkara-pd-payment-icons img { width: 26px; height: auto; }
}
@media (max-width: 576px) {
    .omkara-page .btn-base-1, .omkara-page .btn-styled.btn-base-1, .omkara-page .store-btn{
        padding: 12px 15px !important;
        font-size: 0.95rem;
        min-height: 44px;
    }
    .return-to-shop{
       flex-direction: column;
       align-items: start !important;
       gap: 12px;
       justify-content: flex-start !important;
    }
    .product-details-area.gry-bg { padding: 16px 0 32px; }
    .product-details-area .container.max-w-7xl { padding-left: 12px; padding-right: 12px; }
    .product-details-area .omkara-pd-card { border-radius: 16px; }
    .product-details-area .omkara-pd-row .col-lg-6 { max-width: 100%; flex: 0 0 100%; }
    .product-details-area .omkara-pd-gallery { padding: 0.875rem; }
    .product-details-area .omkara-pd-detail { padding: 0.875rem 1rem 1.5rem; }
    .product-details-area .omkara-pd-title { font-size: 1.25rem; line-height: 1.35; margin-bottom: 0.5rem; }
    .product-details-area .omkara-pd-meta { margin-bottom: 0.25rem; }
    .product-details-area .omkara-pd-meta .col-6 { max-width: 100%; flex: 0 0 100%; }
    .product-details-area .omkara-pd-meta .col-6.text-right { text-align: left !important; margin-top: 4px; }
    .product-details-area .omkara-pd-divider { margin: 1rem 0; }
    .product-details-area .omkara-pd-seller-row { flex-direction: column; align-items: flex-start; gap: 8px; }
    .product-details-area .sold-by { margin-bottom: 0; }
    .product-details-area .omkara-pd-msg-btn { width: 100%; max-width: 100%; justify-content: center; min-height: 46px; }
    .product-details-area .row.no-gutters.my-2 .col-2,
    .product-details-area .row.no-gutters.pb-3 .col-2,
    .product-details-area .row.no-gutters.mt-3 .col-2 { max-width: 100%; flex: 0 0 100%; margin-bottom: 4px; }
    .product-details-area .row.no-gutters.my-2 .col-10,
    .product-details-area .row.no-gutters.pb-3 .col-10,
    .product-details-area .row.no-gutters.mt-3 .col-10 { max-width: 100%; flex: 0 0 100%; }
    .product-details-area .product-description-label { font-size: 0.8rem; margin-bottom: 2px; }
    .product-details-area .product-description-wrapper .product-price { font-size: 1.15rem; }
    .product-details-area .product-description-wrapper .product-price .piece { font-size: 0.85rem; }
    .product-details-area .product-price-old del { font-size: 0.9rem; }
    .product-details-area .omkara-pd-qty-group { width: 100%; max-width: 140px; }
    .product-details-area .product-quantity { flex-direction: column; align-items: flex-start; gap: 6px; }
    .product-details-area .omkara-pd-available { margin-left: 0; margin-top: 2px; font-size: 0.85rem; }
    .product-details-area .omkara-pd-actions { flex-direction: column; gap: 10px; margin-top: 1rem; }
    .product-details-area .omkara-pd-btn { width: 100%; max-width: 100%; justify-content: center; min-height: 50px; padding: 14px 20px; font-size: 1rem; flex: none; }
    .product-details-area .omkara-pd-secondary-links { flex-direction: column; gap: 8px; margin-top: 0.75rem; }
    .product-details-area .omkara-pd-link-btn { min-height: 44px; align-items: center; font-size: 0.9rem; }
    .product-details-area .checkbox-alphanumeric--style-1 { margin-bottom: 0.5rem; }
    .product-details-area .checkbox-alphanumeric--style-1 li { margin-bottom: 6px; }
    .product-details-area .checkbox-alphanumeric--style-1 label { min-height: 44px; padding: 0.5em 0.75em; }
    .product-details-area .omkara-pd-payment-row .col-2,
    .product-details-area .omkara-pd-share-row .col-2 { max-width: 100%; flex: 0 0 100%; }
    .product-details-area .omkara-pd-payment-row .col-10,
    .product-details-area .omkara-pd-share-row .col-10 { max-width: 100%; flex: 0 0 100%; }
    .product-details-area .omkara-pd-payment-icons { gap: 8px; }
    .product-details-area .omkara-pd-payment-icons img { width: 24px; }
}
@media (max-width: 400px) {
    .product-details-area .omkara-pd-title { font-size: 1.15rem; }
    .product-details-area .omkara-pd-detail { padding: 0.75rem 0.875rem 1.25rem; }
    .product-details-area .omkara-pd-gallery { padding: 0.75rem; }
    .product-details-area .product-description-wrapper .product-price { font-size: 1.05rem; }
    .product-details-area .omkara-pd-btn { min-height: 48px; font-size: 0.95rem; padding: 12px 16px; }
    .product-details-area .product-gal-thumb .xzoom-thumbs a img { width: 48px; height: 48px; }
}
@media (max-width: 360px) {
    .product-details-area .omkara-pd-title { font-size: 1.05rem; }
    .product-details-area .omkara-pd-btn { font-size: 0.9rem; }
}

/* ========== FORMS & INPUTS (all pages) ========== */
@media (max-width: 576px) {
    .form-control, .form-control-lg { font-size: 16px !important; } /* avoid zoom on iOS */
    .btn { padding: 10px 20px; font-size: 0.95rem; }
    .form-box.bg-white, .sidebar-box.bg-white { padding: 1rem; }
    .omkara-card .card-title, .omkara-card .form-box-title { padding: 0.875rem 1rem; font-size: 1.1rem; }
}

/* ========== DASHBOARD / PROFILE – Saved Shipping Info & cards ========== */
@media (max-width: 768px) {
    .omkara-page.profile .row .col-md-6 { padding-left: 12px; padding-right: 12px; }
    .omkara-page.profile .form-box.bg-white { max-width: 100%; box-sizing: border-box; overflow: hidden; }
    .omkara-page.profile .form-box-title { padding-left: 1rem !important; padding-right: 1rem !important; }
}
@media (max-width: 576px) {
    .omkara-page.profile .row { margin-left: -8px; margin-right: -8px; }
    .omkara-page.profile .row .col-md-6 { padding-left: 8px; padding-right: 8px; }
    .omkara-page.profile .form-box.bg-white { padding: 1rem; margin-left: 0; margin-right: 0; }
    .omkara-page.profile .form-box-title { padding: 0.875rem 1rem !important; min-height: auto; }
    .omkara-page.profile .form-box-content { padding: 1rem !important; }
}

/* ========== TABLES (orders, history, dashboard) ========== */
@media (max-width: 768px) {
    .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; display: block; }
    .omkara-page table { font-size: 0.9rem; }
}
@media (max-width: 576px) {
    .omkara-page table { font-size: 0.85rem; }
    .omkara-page table th, .omkara-page table td { padding: 0.5rem 0.35rem; }
}

/* ========== MODALS & DROPDOWNS ========== */
@media (max-width: 576px) {
    .modal-dialog { margin: 10px; max-width: calc(100% - 20px); }
    .modal-content { border-radius: 16px; }
    .dropdown-menu { max-width: calc(100vw - 24px); left: 12px !important; right: 12px !important; }
}

/* ========== SIDE MENU (mobile drawer) ========== */
@media (max-width: 991px) {
    .side-menu-wrap { max-width: 320px; }
}
@media (max-width: 400px) {
    .side-menu-wrap { max-width: 100%; }
    .side-menu-list { padding-left: 1rem !important; padding-right: 1rem !important; }
}

/* ========== CATEGORY MENU / MEGAMENU (if used) ========== */
@media (max-width: 1199px) {
    .dropdown-megamenu { left: 0; right: 0; max-width: 100vw; }
}

/* ========== UTILITY: Hide on small, show on large (and vice versa) ========== */
@media (max-width: 575px) {
    .d-mobile-none { display: none !important; }
}
@media (min-width: 576px) {
    .d-mobile-block { display: none !important; }
}

/* ========== FLOATING ACTION BUTTONS (Call, WhatsApp) + BACK TO TOP ========== */
.fabs#icon_contactus {
    margin: 12px 12px 72px 12px;
    right: 0;
    z-index: 9998;
}
.btn-back-to-top {
    z-index: 9999;
}
@media (max-width: 600px) {
    .fabs#icon_contactus {
        right: 8px;
        margin: 10px 8px 68px 8px;
    }
    .fab {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px;
        min-height: 46px;
        margin: 12px auto 0 !important;
    }
    .fab > i {
        line-height: 46px !important;
        font-size: 1.35rem;
    }
    .btn-back-to-top {
        bottom: 24px;
        right: 8px;
        height: 44px;
        width: 44px;
        line-height: 44px;
    }
    .btn-back-to-top:before { font-size: 1.1rem; }
}
@media (max-width: 400px) {
    .fabs#icon_contactus {
        right: 4px;
        margin: 8px 4px 64px 4px;
    }
    .fab {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px;
        min-height: 44px;
    }
    .fab > i { line-height: 44px !important; }
    .btn-back-to-top {
        bottom: 20px;
        right: 4px;
        height: 42px;
        width: 42px;
        line-height: 42px;
    }
}
@media (min-width: 601px) {
    .btn-back-to-top { bottom: 24px; right: 16px; }
}
@media (min-width: 992px) {
    .fabs#icon_contactus { margin: 20px 24px 80px 20px; }
    .btn-back-to-top { bottom: 30px; right: 24px; }
}
