.gh-language-switch {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid rgba(15, 23, 42, .16);
    border-radius: 999px;
    background: #fff;
    color: #111827;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    transition: .2s ease;
}

.gh-language-switch:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    transform: translateY(-1px);
}

.gh-mobile-language-link {
    background: rgba(235, 94, 40, .08);
    color: var(--color-primary) !important;
    font-weight: 800;
}

html[dir="rtl"] body {
    font-family: "Tajawal Local", "Tajawal", sans-serif !important;
    text-align: right;
    line-height: 1.7;
}

html[dir="rtl"] body * {
    font-family: "Tajawal Local", "Tajawal", sans-serif !important;
    letter-spacing: 0 !important;
}

html[dir="rtl"] .bi,
html[dir="rtl"] .bi::before {
    font-family: "bootstrap-icons" !important;
}

html[dir="rtl"] .logo-cinematic-bold {
    font-family: "Space Grotesk", sans-serif !important;
    letter-spacing: .08em !important;
}

html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6,
html[dir="rtl"] .gh-section-title,
html[dir="rtl"] .banner-title {
    line-height: 1.35;
    text-transform: none;
}

html[dir="rtl"] .btn-primary-brand,
html[dir="rtl"] .btn-outline-brand,
html[dir="rtl"] button,
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select {
    line-height: 1.45;
}

html[dir="rtl"] .gh-navbar-inner,
html[dir="rtl"] .gh-nav-actions,
html[dir="rtl"] .d-flex {
    direction: rtl;
}

html[dir="rtl"] .logo-cinematic-wrapper,
html[dir="rtl"] .product-price,
html[dir="rtl"] .price-current,
html[dir="rtl"] .price-original,
html[dir="rtl"] [dir="ltr"] {
    direction: ltr;
}

html[dir="rtl"] .dropdown-menu,
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select,
html[dir="rtl"] .offcanvas,
html[dir="rtl"] .modal-content {
    text-align: right;
}

html[dir="rtl"] .dropdown-menu-end {
    --bs-position: start;
    right: auto;
    left: 0;
}

html[dir="rtl"] .dropdown-arrow-icon,
html[dir="rtl"] .bi-chevron-right,
html[dir="rtl"] .bi-arrow-right {
    transform: scaleX(-1);
}

html[dir="rtl"] .text-end {
    text-align: left !important;
}

html[dir="rtl"] .text-start {
    text-align: right !important;
}

html[dir="rtl"] .ms-auto {
    margin-right: auto !important;
    margin-left: 0 !important;
}

html[dir="rtl"] .me-auto {
    margin-left: auto !important;
    margin-right: 0 !important;
}

html[dir="rtl"] .ms-1,
html[dir="rtl"] .ms-2,
html[dir="rtl"] .ms-3 {
    margin-left: 0 !important;
    margin-right: .5rem !important;
}

html[dir="rtl"] .me-1,
html[dir="rtl"] .me-2,
html[dir="rtl"] .me-3 {
    margin-right: 0 !important;
    margin-left: .5rem !important;
}

html[dir="rtl"] .offcanvas-start {
    right: 0;
    left: auto;
    transform: translateX(100%);
}

html[dir="rtl"] .offcanvas-start.show,
html[dir="rtl"] .offcanvas-start.showing {
    transform: none;
}

html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="tel"],
html[dir="rtl"] input[type="number"],
html[dir="rtl"] .product-sku {
    direction: ltr;
    text-align: right;
}

html[dir="rtl"] .product-detail-price,
html[dir="rtl"] .product-price,
html[dir="rtl"] .gh-search-result-price {
    direction: rtl;
    unicode-bidi: isolate;
}

html[dir="rtl"] .breadcrumb {
    --bs-breadcrumb-divider: "‹";
}

html[dir="rtl"] .gh-premium-banner,
html[dir="rtl"] .admin-card,
html[dir="rtl"] .product-card {
    text-align: right;
}

@media (max-width: 1199px) {
    .gh-language-switch span { display: none; }
    .gh-language-switch { padding-inline: 10px; }
}

@media (max-width: 767px) {
    .gh-language-switch { display: none; }
}
@font-face {
    font-family: "Tajawal Local";
    src: url("../fonts/tajawal-400.ttf") format("truetype");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

/* Header composition: prevent Arabic labels and the wordmark from wrapping. */
.gh-navbar-container {
    width: min(100% - 32px, 1440px);
    max-width: 1440px !important;
    padding-inline: 12px;
}

.gh-navbar-inner {
    min-height: 78px;
    padding-block: 10px;
    gap: clamp(14px, 1.6vw, 26px);
}

.gh-logo,
.logo-cinematic-wrapper,
.logo-cinematic-bold,
.gh-desktop-nav-list > li > a,
.gh-login-link,
.gh-register-link,
.gh-cart-btn {
    white-space: nowrap;
}

.gh-logo {
    flex: 0 0 auto;
    gap: 10px !important;
}

.gh-logo-img {
    width: 38px;
    height: 38px;
    object-fit: contain;
}

.logo-cinematic-bold {
    font-size: 18px;
    line-height: 1;
}

.gh-desktop-nav {
    flex: 0 0 auto;
}

.gh-desktop-nav-list {
    gap: 2px !important;
}

.gh-desktop-nav-list > li > a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding-inline: 10px !important;
}

.gh-nav-actions {
    flex: 0 1 auto;
    min-width: 0;
    gap: 10px;
    flex-wrap: nowrap;
}

.gh-search {
    flex: 0 1 250px;
    width: clamp(190px, 16vw, 250px);
    min-width: 170px;
}

.gh-search form {
    min-height: 42px;
}

.gh-desktop-auth {
    gap: 8px !important;
    flex: 0 0 auto;
}

.gh-login-link,
.gh-register-link,
.gh-cart-btn,
.gh-language-switch {
    min-height: 42px;
    align-items: center;
}

.gh-register-link {
    justify-content: center;
    padding-inline: 14px !important;
}

.gh-cart-btn {
    padding-inline: 13px !important;
}

/* Shop composition: a deliberate sidebar/content grid with no dead column. */
.shop-page-container {
    width: min(100% - 40px, 1540px);
    max-width: 1540px !important;
}

.shop-toolbar {
    min-height: 66px;
    padding: 13px 16px !important;
    box-shadow: 0 8px 24px rgba(28, 25, 23, .035);
}

.shop-toolbar-actions {
    width: auto;
    margin-inline-start: auto;
}

.shop-results-count {
    color: #374151;
    white-space: nowrap;
}

.shop-products-grid {
    --bs-gutter-x: 18px;
    --bs-gutter-y: 22px;
}

.shop-product-col {
    display: flex;
}

.shop-product-col > .product-card {
    width: 100%;
}

@media (min-width: 992px) {
    .shop-layout {
        display: grid;
        grid-template-columns: 280px minmax(0, 1fr);
        gap: 28px;
        margin-inline: 0;
    }

    .shop-sidebar-col,
    .shop-content-col {
        width: auto;
        max-width: none;
        padding-inline: 0;
    }

    .shop-sidebar-col {
        grid-column: 1;
    }

    .shop-content-col {
        grid-column: 2;
        min-width: 0;
    }

    .filter-sidebar {
        position: sticky;
        top: 98px;
        max-height: calc(100vh - 122px);
        overflow-y: auto;
        overscroll-behavior: contain;
        background: #fff;
        padding: 20px;
        scrollbar-width: thin;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .gh-navbar-container {
        width: calc(100% - 24px);
    }

    .gh-navbar-inner {
        gap: 10px;
    }

    .gh-desktop-nav-list > li > a {
        padding-inline: 7px !important;
        font-size: 13px !important;
    }

    .gh-search {
        display: none !important;
    }

    .logo-cinematic-bold {
        font-size: 16px;
    }
}

@media (max-width: 991.98px) {
    .gh-navbar-container {
        width: calc(100% - 20px);
    }

    .gh-navbar-inner {
        min-height: 68px;
        padding-block: 8px;
    }

    .shop-page-container {
        width: min(100% - 24px, 720px);
    }
}

@media (max-width: 767.98px) {
    .shop-page-section {
        padding-top: 22px;
    }

    .shop-toolbar {
        align-items: stretch !important;
    }

    .shop-toolbar-actions {
        width: 100%;
        margin-inline-start: 0;
    }

    .shop-results-count {
        width: 100%;
        white-space: normal;
    }

    .shop-products-grid {
        --bs-gutter-x: 12px;
        --bs-gutter-y: 16px;
    }
}

@font-face {
    font-family: "Tajawal Local";
    src: url("../fonts/tajawal-500.ttf") format("truetype");
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: "Tajawal Local";
    src: url("../fonts/tajawal-700.ttf") format("truetype");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: "Tajawal Local";
    src: url("../fonts/tajawal-800.ttf") format("truetype");
    font-style: normal;
    font-weight: 800;
    font-display: swap;
}
