/* ============================================================
   DND JEWELS — Premium Black & Gold Theme — Responsive
   Media query overrides for the dark theme
   ============================================================ */

/* -----------------------------------------------
   LARGE TABLETS & SMALL DESKTOPS (max: 1199px)
   ----------------------------------------------- */
@media (max-width: 1199px) {
    #menu-main-menu .menu-item > a {
        padding: 14px 14px !important;
        font-size: 11px !important;
        letter-spacing: 2px !important;
    }
}

/* -----------------------------------------------
   TABLETS (max: 991px)
   ----------------------------------------------- */
@media (max-width: 991px) {
    .header-desktop {
        display: none !important;
    }

    .header-mobile {
        display: block !important;
    }

    /* Mobile header padding */
    .header-mobile .section-padding {
        padding: 12px 0 !important;
    }

    /* Mobile search */
    .header-mobile-fixed .search {
        display: flex;
        border: 1px solid var(--border-medium) !important;
        background: var(--bg-input) !important;
        border-radius: 2px !important;
        overflow: hidden;
    }

    .header-mobile-fixed .searchTerm {
        flex: 1;
        /* padding: 10px 14px !important; */
        font-size: 14px !important;
    }

    .header-mobile-fixed .searchButton {
        /* padding: 10px 14px !important; */
        min-width: 44px;
    }

    /* Footer columns */
    .footer .col-lg-3,
    .footer .col-lg-2 {
        margin-bottom: 30px !important;
    }

    .footer .block-title h2::after {
        left: 0;
    }

    /* Product grid */
    .products-list .product-wapper,
    .products-list .product-wrapper {
        margin-bottom: 16px !important;
    }

    /* Sidebar on mobile */
    .sidebar.left-sidebar {
        background: var(--bg-card) !important;
        border: 1px solid var(--border-subtle) !important;
        padding: 20px !important;
        border-radius: 2px !important;
        margin-bottom: 30px !important;
    }

    /* Book appointment image */
    .appointment-img {
        margin-top: 20px !important;
    }

    /* Box form login */
    .box-form-login {
        margin-bottom: 20px !important;
    }
}

/* -----------------------------------------------
   MOBILE LANDSCAPE (max: 767px)
   ----------------------------------------------- */
@media (max-width: 767px) {
    /* Page titles */
    .page-title,
    #title.page-title {
        padding: 25px 0 !important;
    }

    .text-title-heading {
        font-size: 22px !important;
        letter-spacing: 3px !important;
    }

    /* Section headings */
    .block-title h2 {
        font-size: 20px !important;
    }

    /* Footer */
    .footer .block-title h2 {
        font-size: 14px !important;
    }

    .footer-bottom .copyright {
        font-size: 11px !important;
        line-height: 1.6 !important;
    }

    /* Category cards */
    .item-product-cat-content {
        margin-bottom: 16px !important;
    }

    /* Product cards */
    .products-list .product-wapper,
    .products-list .product-wrapper {
        margin-bottom: 12px !important;
    }

    /* Buttons */
    .button.button-primary,
    a.button.button-primary,
    .button.button-black,
    a.button.button-black {
        padding: 12px 28px !important;
        font-size: 10px !important;
    }

    /* Gallery */
    .post-grid {
        margin-bottom: 16px !important;
    }

    /* Contact info items */
    .info-item {
        margin-bottom: 20px !important;
    }

    /* Store info section */
    .block-info .info-wrap .title {
        font-size: 22px !important;
    }

    /* Social icons */
    .social-link li a {
        width: 32px !important;
        height: 32px !important;
    }

    /* Quick view modal mobile */
    .quickview-container {
        width: 95% !important;
        margin: 10px auto !important;
    }

    /* Mobile modal adjustments */
    .mobile-modal {
        flex-direction: column;
    }

    /* Product detail buttons stack */
    .shop-details .buttons .col-md-6 {
        margin-bottom: 10px !important;
    }

    /* Inquiry modal body */
    .modal-body {
        padding: 20px !important;
    }

    /* Forms */
    .form-control {
        padding: 10px 14px !important;
        font-size: 14px !important;
    }

    .appointment-form {
        padding: 10px !important;
    }
}

/* -----------------------------------------------
   MOBILE PORTRAIT (max: 480px)
   ----------------------------------------------- */
@media (max-width: 480px) {
    /* Header */
    .header-mobile .site-logo img {
        max-width: 160px !important;
    }

    /* Page titles */
    .text-title-heading {
        font-size: 18px !important;
        letter-spacing: 2px !important;
    }

    /* Section headings */
    .block-title h2 {
        font-size: 18px !important;
        letter-spacing: 2px !important;
    }

    /* Product info */
    .products-list .product-info,
    .products-list .product-content {
        padding: 12px !important;
    }

    .products-list .product-title a {
        font-size: 13px !important;
    }

    /* Footer */
    .footer .col-lg-3,
    .footer .col-lg-2 {
        margin-bottom: 24px !important;
    }

    .footer p {
        font-size: 12px !important;
    }

    /* Buttons */
    .button.button-primary,
    a.button.button-primary,
    .button.button-black,
    a.button.button-black {
        padding: 10px 22px !important;
        font-size: 10px !important;
        letter-spacing: 2px !important;
    }

    /* Store info section */
    .block-info .info-wrap .icon svg {
        width: 45px !important;
        height: 45px !important;
    }

    .block-info .info-wrap .title {
        font-size: 18px !important;
        letter-spacing: 2px !important;
    }

    /* Box form login */
    .box-form-login {
        padding: 20px !important;
    }

    .box-form-login h2 {
        font-size: 20px !important;
    }

    /* Product detail page */
    .shop-details .product-info .title {
        font-size: 20px !important;
    }

    /* Back to top */
    .back-top {
        width: 38px !important;
        height: 38px !important;
    }
}

/* -----------------------------------------------
   VERY SMALL SCREENS (max: 360px)
   ----------------------------------------------- */
@media (max-width: 360px) {
    .header-mobile .site-logo img {
        max-width: 130px !important;
    }

    .text-title-heading {
        font-size: 16px !important;
    }

    .block-title h2 {
        font-size: 16px !important;
    }

    .footer-bottom .copyright {
        font-size: 10px !important;
    }
}
