/* ===================== CSS VARIABLES ===================== */
:root {
    --color-primary: #ff9800;
    --color-primary-hover: #c1005a;
    --color-secondary: #ff7b54;
    --color-secondary-hover: #ff6b3d;
    --color-text: #333;
    --color-text-light: #666;
    --color-border: #eee;
    --color-border-light: #f1d1e5;
    --color-bg: #ffffff;
    --color-bg-light: #f7f7f7;
    --color-bg-hover: #f9f3f7;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 12px 25px rgba(0, 0, 0, 0.12);
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --transition-fast: 0.15s ease;
    --transition-base: 0.2s ease;
    --transition-slow: 0.3s ease;
    --header-height: 64px;
}

/* ===================== GLOBAL (فقط روی این پوسته) ===================== */

body.endoffer-shell {
    direction: rtl;
    text-align: right;
    font-family: inherit;
    margin: 0;
}

/* Skip to content link for accessibility */
body.endoffer-shell .skip-to-content {
    position: absolute;
    top: -100px;
    right: 0;
    background: var(--color-primary);
    color: #fff;
    padding: 12px 24px;
    text-decoration: none;
    z-index: 1000;
    border-radius: 0 0 var(--radius-md) var(--radius-md);
    font-weight: 600;
}

body.endoffer-shell .skip-to-content:focus {
    top: 0;
}


/* ===================== HEADER ===================== */

body.endoffer-shell .nav {
    position: sticky;
    top: 0;
    z-index: 4000;
    background: #ffffff;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--color-border);
    transition: box-shadow var(--transition-base), background-color var(--transition-base);
    will-change: box-shadow, background-color;
}

/* Shadow on scroll */
body.endoffer-shell .nav--scrolled {
    box-shadow: var(--shadow-md);
    background: rgba(255, 255, 255, 1);
}

/* چیدمان هدر: لوگو (راست) | منو | اکشن‌ها (چپ) */
body.endoffer-shell .nav__container {
    max-width: min(100% - 32px, 1280px);
    margin: 0 auto;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    gap: 12px;
    width: 100%;
}

body.endoffer-shell .nav__main {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: flex-start;
}

body.endoffer-shell .nav__cluster {
    display: flex;
    align-items: center;
    gap: 12px;
}

body.endoffer-shell .nav__cluster--logo-desktop {
    flex: 0 1 auto;
}

body.endoffer-shell .nav__logo {
    flex: 0 0 auto;
    margin-inline-end: 8px;
}

body.endoffer-shell .nav__desktop {
    flex: 0 1 auto;
    display: none; /* در موبایل مخفی؛ در دسکتاپ نمایش داده می‌شود */
}

body.endoffer-shell .nav__actions {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-inline-start: 16px;
}

/* منوی اصلی دسکتاپ */
body.endoffer-shell .nav__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 16px;
}

body.endoffer-shell .nav__list > li > a {
    display: inline-flex;
    align-items: center;
    height: var(--header-height);
    padding: 0;
    text-decoration: none;
    color: var(--color-text);
    font-size: 14px;
    font-weight: 600;
    background: none !important;
    border: none !important;
    border-radius: 0;
    box-shadow: none;
    transition: color var(--transition-fast);
}

body.endoffer-shell .nav__list > li > a:hover,
body.endoffer-shell .nav__list > li > a:focus {
    color: var(--color-primary);
}

/* لینک مگامنو – ظاهر متنی */
body.endoffer-shell .nav__link--mega {
    border: none;
    background: transparent;
    color: #4e4545;
    border-radius: 0;
    padding: 6px 0;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    transition: color var(--transition-fast);
    text-decoration: none;
}

body.endoffer-shell .nav__link--mega:hover,
body.endoffer-shell .nav__link--mega:focus {
    color: #f89908;
}

/*body.endoffer-shell .nav__link--mega:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}*/

/* دکمه تماس دسکتاپ */
body.endoffer-shell .nav__call {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 6px 14px;
    border-radius: var(--radius-md);
    background: var(--color-secondary);
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    transition: all var(--transition-base);
    will-change: transform, background-color;
    margin-left: auto;
    margin-inline-start: 32px;
    flex-shrink: 0;
}

body.endoffer-shell .nav__call:hover,
body.endoffer-shell .nav__call:focus {
    background: var(--color-secondary-hover);
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

body.endoffer-shell .nav__call:focus {
    outline: 2px solid var(--color-secondary);
    outline-offset: 2px;
}

body.endoffer-shell .nav__call-phone {
    font-weight: 700;
}


/* ===================== MEGA MENU (تور‌ها) ===================== */

/* ظرف کلی دکمه + مگامنو */
body.endoffer-shell .nav__mega-wrapper {
    position: relative;
    padding-bottom: 0;
}

/* جعبه مگامنو – پیش‌فرض مخفی */
body.endoffer-shell .menu__container {
    position: absolute;
    top: 100%;
    right: 0;                    /* چسبیده به دکمه از سمت راست (RTL) */
    margin-top: 6px;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px);  /* برای انیمیشن ورود */
    transition:
        opacity var(--transition-base),
        visibility var(--transition-base),
        transform var(--transition-base);
    will-change: opacity, transform, visibility;

    max-width: calc(100vw - 32px);
    width: auto;
    min-width: 320px;
    z-index: 4100;
}

/* در دسکتاپ عریض فقط عرض را کنترل کن */
@media (min-width: 1200px) {
    body.endoffer-shell .menu__container {
        min-width: 680px;
        max-width: 900px;
    }
}

/* حالت باز – فقط با JS این کلاس اضافه می‌شود */
body.endoffer-shell .menu__container--open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

body.endoffer-shell .menu__card {
    padding: 16px;
}

/* دو ستونه: راست دسته‌ها، چپ لیست تورها */
body.endoffer-shell .menu__layout--tours {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 16px;
}

body.endoffer-shell .menu__categories {
    min-width: 220px;
    background: linear-gradient(135deg, rgba(228, 0, 111, 0.08), rgba(228, 0, 111, 0));
    border-radius: var(--radius-lg);
    padding: 20px 16px;
    box-shadow: inset 0 0 0 1px rgba(228, 0, 111, 0.08);
}

/* ستون راست: دسته‌ها */
body.endoffer-shell .menu__categories-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

body.endoffer-shell .menu__category-btn {
    width: 100%;
    box-sizing: border-box;
    text-align: right;
    border-radius: var(--radius-md);
    padding: 8px 12px;
    border: 1px solid var(--color-border-light);
    background: var(--color-bg);
    color:#040404;
    cursor: pointer;
    font-size: 13px;
    transition: all var(--transition-base);
    will-change: background-color, color, transform;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    text-decoration: none;
}

body.endoffer-shell .menu__category-btn::after {
    content: '';
    width: 6px;
    height: 6px;
    border-inline-start: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(225deg);
    opacity: 0.6;
    transition: transform .2s ease;
}

/* وقتی دسته فعال است → آیکن به سمت راست باز شود */
body.endoffer-shell .menu__categories .menu__category-btn.is-active::after {
    transform: rotate(135deg);
}

body.endoffer-shell .menu__category-btn:hover,
body.endoffer-shell .menu__category-btn:focus {
    background: var(--color-bg-hover);
    transform: translateX(-2px);
}

body.endoffer-shell .menu__category-btn:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

body.endoffer-shell .menu__category-btn.is-active {
  background: #f89908;
    color: #0e0e0e;
    box-shadow: 0 6px 16px #e9bf80;
}

/* ستون چپ: تورها */
body.endoffer-shell .menu__tours-panels {
    position: relative;
}

body.endoffer-shell .menu__tours-panel {
    display: none;
}

body.endoffer-shell .menu__tours-panel.is-active {
    display: block;
    margin-right: 10px;
}

body.endoffer-shell .menu__tours-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px 16px;
}

body.endoffer-shell .menu__tour-link {
    display: block;
    padding: 10px 12px;
    border-radius: var(--radius-md);
    text-decoration: none;
    color: var(--color-text);
    font-size: 13px;
    transition: all var(--transition-fast);
    will-change: background-color, transform;
    background: var(--color-bg-light);
    border: 1px solid rgba(0, 0, 0, 0.04);
    min-height: 44px;
}

@media (min-width: 768px) {
    body.endoffer-shell .menu__tours-list {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }
}

@media (min-width: 1200px) {
    body.endoffer-shell .menu__tours-list {
        grid-template-columns: repeat(3, minmax(180px, 1fr));
    }
}

body.endoffer-shell .menu__tour-link:hover,
body.endoffer-shell .menu__tour-link:focus {
    background: var(--color-bg-hover);
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

body.endoffer-shell .menu__tour-link:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* پیام خالی */
body.endoffer-shell .menu__empty {
    font-size: 13px;
    color: #888;
}


/* ===================== MOBILE HEADER ===================== */

body.endoffer-shell .nav__mobile-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
}

body.endoffer-shell .nav__mobile-phone {
    font-size: 13px;
    text-decoration: none;
    color: #222;
}

body.endoffer-shell .nav__mobile-toggle {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    border-radius: var(--radius-sm);
    border: 1px solid var(--color-border);
    background: var(--color-bg);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    transition: all var(--transition-base);
    will-change: transform, background-color;
}

body.endoffer-shell .nav__mobile-toggle:hover,
body.endoffer-shell .nav__mobile-toggle:focus {
    background: var(--color-bg-light);
    transform: scale(1.05);
}

body.endoffer-shell .nav__mobile-toggle:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

body.endoffer-shell .nav__mobile-toggle.is-active .nav__mobile-toggle-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

body.endoffer-shell .nav__mobile-toggle.is-active .nav__mobile-toggle-line:nth-child(2) {
    opacity: 0;
}

body.endoffer-shell .nav__mobile-toggle.is-active .nav__mobile-toggle-line:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
}

body.endoffer-shell .nav__mobile-toggle-line {
    width: 18px;
    height: 2px;
    background: var(--color-text);
    transition: all var(--transition-base);
    will-change: transform, opacity;
}

/* منوی موبایل بالا (کشویی) */
body.endoffer-shell .nav__mobile-menu {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px 12px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height var(--transition-slow),
                opacity var(--transition-base),
                padding var(--transition-base);
    will-change: max-height, opacity;
}

body.endoffer-shell .nav__mobile-menu--open {
    max-height: 1000px;
    opacity: 1;
    padding: 0 16px 12px;
}

body.endoffer-shell .nav__mobile-list {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}

body.endoffer-shell .nav__mobile-list > li {
    margin-bottom: 8px;
}

body.endoffer-shell .nav__mobile-list a {
    display: block;
    padding: 12px 14px;
    min-height: 44px;
    border-radius: var(--radius-sm);
    background: var(--color-bg-light);
    text-decoration: none;
    color: var(--color-text);
    transition: all var(--transition-fast);
    will-change: background-color, transform;
}

body.endoffer-shell .nav__mobile-list a:hover,
body.endoffer-shell .nav__mobile-list a:focus {
    background: var(--color-bg-hover);
    transform: translateX(-4px);
}

body.endoffer-shell .nav__mobile-list a:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}


/* ===================== NAV MOBILE BOTTOM ===================== */

body.endoffer-shell .nav-mobile {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 60;
    background: #ffffff;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.1);
}

body.endoffer-shell .nav-mobile__container {
    max-width: 600px;
    margin: 0 auto;
    padding: 6px 10px;
}

body.endoffer-shell .nav-mobile__card {
    border-radius: 999px;
    background: #f7f7f7;
    padding: 6px 10px;
}

body.endoffer-shell .nav-mobile__layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

body.endoffer-shell .nav-mobile__items {
    flex: 1;
}

body.endoffer-shell .nav-mobile__list {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0;
    margin: 0;
}

body.endoffer-shell .nav-mobile__list li {
    flex: 1;
    text-align: center;
}

body.endoffer-shell .nav-mobile__list a {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    text-decoration: none;
    font-size: 11px;
    color: #444;
}

body.endoffer-shell .nav-mobile__item-icon {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: #e5e5e5;
    display: block;
}

/* دکمه تماس وسط */
body.endoffer-shell .nav-mobile__call {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: #ff7b54;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

body.endoffer-shell .nav-mobile__call-icon {
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 999px;
}


/* ===================== HERO (اختیاری برای لندینگ) ===================== */

body.endoffer-shell .hero {
    padding: 24px 16px 32px;
}

body.endoffer-shell .hero__container {
    max-width: 1200px;
    margin: 0 auto;
}

body.endoffer-shell .hero__layout {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

body.endoffer-shell .hero__title {
    font-size: 24px;
    margin-bottom: 8px;
}

body.endoffer-shell .hero__description {
    font-size: 14px;
    margin-bottom: 16px;
}


/* ===================== FOOTER ===================== */

body.endoffer-shell .footer {
    margin-top: 48px;
    background: #f4f6fb;
    color: #1f2a37;
    padding: 48px 16px 80px; /* فضای پایین برای nav-mobile */
}

body.endoffer-shell .footer__container {
    max-width: 1200px;
    margin: 0 auto;
}

body.endoffer-shell .footer__layout {
    position: relative;
}

/* رنگ مخصوص صفحه اصلی مثل طرح مرجع */
body.endoffer-shell .footer.footer-home {
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(244 245 247 / var(--tw-bg-opacity, 1));
}


/* === Scroll to top button – final override === */

body.endoffer-shell .footer__layout {
    position: relative;
}

/* خود دکمه؛ تمام استایل‌های قبلی را خنثی می‌کنیم */
body.endoffer-shell .footer__button {
    position: absolute;
    top: -72px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    padding: 0;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer;
}

/* اگر جایی ::before/::after روی button ست شده، خنثی شود */
body.endoffer-shell .footer__button::before,
body.endoffer-shell .footer__button::after {
    content: none !important;
}

/* روی هاور/فوکوس هیچ حرکتی نکند و outline نگیرد */
body.endoffer-shell .footer__button:hover,
body.endoffer-shell .footer__button:focus {
    transform: translateX(-50%);
    outline: none !important;
    box-shadow: none !important;
}

/* دایره‌ بیرونی */
body.endoffer-shell .footer__button-bg {
    width: 56px;
    height: 56px;
    border-radius: 9999px !important;
    border: 4px solid #ffffff !important;
    background-color: #f4f5f7 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
}

/* در هاور/فوکوس هیچ تغییری نکند */
body.endoffer-shell .footer__button:hover .footer__button-bg,
body.endoffer-shell .footer__button:focus .footer__button-bg {
    background-color: #f4f5f7 !important;
    border-color: #ffffff !important;
}

body.endoffer-shell .footer__button-icon {
    transition: transform .25s ease;
}

body.endoffer-shell .footer__button:hover .footer__button-icon,
body.endoffer-shell .footer__button:focus .footer__button-icon {
    transform: translateY(-4px);
}

/* آیکن هواپیما (mask SVG) */
body.endoffer-shell .footer__button-icon {
    display: inline-block;
    height: 1.75rem;
    width: 1.75rem;
    background-color: rgb(209 71 0);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.38 16.3802L16.38 15.0852C16.38 14.5835 16.7533 14.3385 17.2083 14.5368L23.0533 17.0568C23.975 17.4535 24.7217 16.9635 24.7217 15.9718L24.7217 14.4318C24.7217 13.6385 24.1267 12.7168 23.3917 12.4135L16.7417 9.55515C16.555 9.46182 16.3917 9.21682 16.3917 9.00682L16.3917 5.43682C16.3917 4.31682 15.5633 2.97515 14.5717 2.46182C14.2217 2.28682 13.8017 2.28682 13.4517 2.46182C12.4483 2.97515 11.62 4.30515 11.62 5.42515L11.62 8.99515C11.62 9.20515 11.4567 9.45015 11.27 9.54348L10.0567 10.0568L16.38 16.3802Z' fill='%2302A5C4'/%3E%3Cpath opacity='0.4' d='M3.27831 14.4316L3.27831 15.9716C3.27831 16.9633 4.02498 17.4533 4.94664 17.0566L10.7916 14.5366C11.2583 14.35 11.62 14.5833 11.62 15.085L11.62 18.48C11.62 18.7483 11.4683 19.1333 11.27 19.32L8.56331 22.0383C8.28331 22.3183 8.15498 22.8783 8.28331 23.2633L8.80831 24.85C9.04164 25.5383 9.82331 25.8533 10.465 25.5383L13.2416 23.205C13.6616 22.8433 14.35 22.8433 14.77 23.205L17.5466 25.5383C18.1883 25.865 18.97 25.5383 19.18 24.85L19.705 23.2633C19.8333 22.8666 19.705 22.3183 19.425 22.0383L16.7183 19.32C16.5316 19.1333 16.38 18.7483 16.38 18.48L16.38 16.38L10.0566 10.0566L4.60831 12.4016C3.87331 12.7166 3.27831 13.6383 3.27831 14.4316Z' fill='%2302A5C4'/%3E%3C/svg%3E%0A");
    mask-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.38 16.3802L16.38 15.0852C16.38 14.5835 16.7533 14.3385 17.2083 14.5368L23.0533 17.0568C23.975 17.4535 24.7217 16.9635 24.7217 15.9718L24.7217 14.4318C24.7217 13.6385 24.1267 12.7168 23.3917 12.4135L16.7417 9.55515C16.555 9.46182 16.3917 9.21682 16.3917 9.00682L16.3917 5.43682C16.3917 4.31682 15.5633 2.97515 14.5717 2.46182C14.2217 2.28682 13.8017 2.28682 13.4517 2.46182C12.4483 2.97515 11.62 4.30515 11.62 5.42515L11.62 8.99515C11.62 9.20515 11.4567 9.45015 11.27 9.54348L10.0567 10.0568L16.38 16.3802Z' fill='%2302A5C4'/%3E%3Cpath opacity='0.4' d='M3.27831 14.4316L3.27831 15.9716C3.27831 16.9633 4.02498 17.4533 4.94664 17.0566L10.7916 14.5366C11.2583 14.35 11.62 14.5833 11.62 15.085L11.62 18.48C11.62 18.7483 11.4683 19.1333 11.27 19.32L8.56331 22.0383C8.28331 22.3183 8.15498 22.8783 8.28331 23.2633L8.80831 24.85C9.04164 25.5383 9.82331 25.8533 10.465 25.5383L13.2416 23.205C13.6616 22.8433 14.35 22.8433 14.77 23.205L17.5466 25.5383C18.1883 25.865 18.97 25.5383 19.18 24.85L19.705 23.2633C19.8333 22.8666 19.705 22.3183 19.425 22.0383L16.7183 19.32C16.5316 19.1333 16.38 18.7483 16.38 18.48L16.38 16.38L10.0566 10.0566L4.60831 12.4016C3.87331 12.7166 3.27831 13.6383 3.27831 14.4316Z' fill='%2302A5C4'/%3E%3C/svg%3E%0A");
}

/* لوگو */
body.endoffer-shell img.custom-logo {
    width: 158px;
    height: auto;
}

body.endoffer-shell .footer__intro .logo img {
    max-height: 56px;
}

body.endoffer-shell .footer__wrapper {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(280px, 1.2fr) minmax(220px, 1fr);
    gap: 32px;
    background: #fff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 25px 60px rgba(15, 23, 42, 0.08);
}

body.endoffer-shell .footer__intro {
    text-align: right;
}

body.endoffer-shell .footer__description {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 16px;
    color: #4c5567;
}

body.endoffer-shell .footer__contact {
    margin-top: 8px;
    font-size: 13px;
}

body.endoffer-shell .footer__links {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

body.endoffer-shell .footer__links-title {
    font-size: 16px;
    margin-bottom: 12px;
    color: #111827;
}

body.endoffer-shell .footer__menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    gap: 10px 18px;
}

body.endoffer-shell .footer__menu li {
    position: relative;
    padding-right: 16px;
    font-size: 14px;
    color: #374151;
}

body.endoffer-shell .footer__menu li::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #f97316;
    border-radius: 50%;
}

body.endoffer-shell .footer__menu a {
    color: inherit;
    text-decoration: none;
    transition: color var(--transition-fast);
}

body.endoffer-shell .footer__menu a:hover {
    color: #f97316;
}

/* Subscription */
body.endoffer-shell .footer__subscription {
    border-radius: 28px;
    background: linear-gradient(135deg, #101bff, #2666ff);
    padding: 32px 28px;
    text-align: center;
    color: #fff;
    box-shadow: 0 20px 45px rgba(17, 24, 39, 0.25);
}

body.endoffer-shell .footer__subscription-image {
    max-height: 120px;
    margin-bottom: 16px;
}

body.endoffer-shell .footer__subscription-title {
    display: block;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
}

body.endoffer-shell .footer__subscription-description {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 16px;
}

body.endoffer-shell .footer__subscription-form {
    display: flex;
    gap: 8px;
    justify-content: center;
}

body.endoffer-shell .footer__subscription-input {
    border-radius: 999px;
    border: none;
    padding: 10px 16px;
    min-width: 0;
    flex: 1;
}

body.endoffer-shell .footer__subscription-button {
    border-radius: 999px;
    border: none;
    padding: 10px 20px;
    background: #f97316;
    color: #fff;
    cursor: pointer;
    font-weight: 600;
}

body.endoffer-shell .footer__info {
    margin-top: 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    color: #1f2937;
}

body.endoffer-shell .footer__contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 32px;
    align-items: center;
}

body.endoffer-shell .footer__contact {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #1f2937;
}

body.endoffer-shell .footer__contact-description {
    margin: 0;
    line-height: 1.6;
}

body.endoffer-shell .footer__contact-number {
    font-weight: 600;
    letter-spacing: 0.5px;
}

body.endoffer-shell .footer__contact-icon {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: #e0e7ff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #4338ca;
    font-size: 14px;
}

body.endoffer-shell .footer__contact-location::before {
    content: '📍';
}

body.endoffer-shell .footer__contact-call::before {
    content: '☎';
}

body.endoffer-shell .footer__contact-mail::before {
    content: '✉';
}

body.endoffer-shell .socials__list {
    list-style: none;
    display: flex;
    gap: 12px;
    margin: 0;
    padding: 0;
}

body.endoffer-shell .socials__item {
    margin: 0;
}

body.endoffer-shell .social {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

body.endoffer-shell .social:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 24px rgba(15, 23, 42, 0.18);
}

body.endoffer-shell .social__icon {
    font-size: 16px;
}

body.endoffer-shell .footer__outro {
    margin-top: 24px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: #475569;
    font-size: 13px;
}

body.endoffer-shell .footer__licenses {
    display: flex;
    gap: 12px;
}

body.endoffer-shell .footer__license-image {
    height: 56px;
    width: auto;
    object-fit: contain;
}

body.endoffer-shell .footer__copyright-link {
    color: #f97316;
    text-decoration: none;
}

body.endoffer-shell .footer__copyright-link:hover {
    text-decoration: underline;
}

/* === ردیف متا در فوتر (آدرس، تماس، مجوز، سوشال) === */

body.endoffer-shell .footer__meta {
    margin-top: 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    justify-content: space-between;
    color: #1f2937;
    font-size: 14px;
}

body.endoffer-shell .footer__meta-col {
    display: flex;
    align-items: center;
    gap: 12px;
}

body.endoffer-shell .footer__meta-col.footer__meta-col--licenses img {
    height: 60px;
}

/* ترتیب ستون‌ها از راست به چپ */
body.endoffer-shell .footer__meta-col--address   { order: 1; }
body.endoffer-shell .footer__meta-col--contact   { order: 2; }
body.endoffer-shell .footer__meta-col--licenses  { order: 3; }
body.endoffer-shell .footer__meta-col--social    { order: 4; }

body.endoffer-shell .footer__meta-col--social {
    flex: 0 0 auto;
}

body.endoffer-shell .footer__meta-col--contact {
    flex: 1;
    justify-content: center;
}

body.endoffer-shell .footer__meta-col--address {
    text-align: left;
    max-width: 320px;
}

body.endoffer-shell .footer__meta-address {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/* === مجوزها === */

body.endoffer-shell .footer__meta-col--licenses {
    flex: 0 0 auto;
    justify-content: center;
    gap: 16px;
}

body.endoffer-shell .footer__license {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.endoffer-shell .footer__license-image {
    height: 64px;
    width: auto;
    object-fit: contain;
    transition: transform .2s ease;
}

body.endoffer-shell .footer__license:hover .footer__license-image {
    transform: translateY(-3px);
}

/* === شبکه‌های اجتماعی === */

body.endoffer-shell .footer__social {
    list-style: none;
    display: flex;
    gap: 6px;
    margin: 0;
    padding: 0;
}

body.endoffer-shell .footer__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.1);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

body.endoffer-shell .footer__social-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 20px rgba(15, 23, 42, 0.18);
}

body.endoffer-shell .footer__social-icon {
    width: 30px;
    height: 30px;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* مسیر آیکن‌ها را خودت ست کن */
body.endoffer-shell .footer__social-icon--instagram {
    background-image: url('../images/social-instagram.svg');
}

body.endoffer-shell .footer__social-icon--telegram {
    background-image: url('../images/social-telegram.svg');
}

body.endoffer-shell .footer__social-icon--whatsapp {
    background-image: url('../images/social-whatsapp.svg');
}

body.endoffer-shell .footer__social-icon--linkedin {
    background-image: url('../images/social-linkedin.svg');
}

/* در موبایل ستون‌ها زیر هم بیایند */
@media (max-width: 1023px) {
    body.endoffer-shell .footer__meta {
        flex-direction: column;
        align-items: flex-start;
    }

    body.endoffer-shell .footer__meta-col--contact {
        justify-content: flex-start;
        width: 100%;
    }

    body.endoffer-shell .footer__meta-col--licenses,
    body.endoffer-shell .footer__meta-col--social {
        justify-content: flex-start;
    }
}


/* ===================== BREAKPOINT 768px (Tablet) ===================== */

@media (min-width: 768px) {
    body.endoffer-shell .nav__container {
        padding: 10px 32px;
        gap: 24px;
    }

    body.endoffer-shell .nav__actions {
        gap: 16px;
    }

    body.endoffer-shell .menu__container {
        max-width: calc(100vw - 64px);
    }
}

/* ===================== BREAKPOINT 1024px ===================== */

@media (min-width: 1024px) {

    body.endoffer-shell .nav__container {
        max-width: min(100% - 64px, 1280px);
    }

    body.endoffer-shell .nav__desktop {
        display: flex;
    }

    body.endoffer-shell .nav__mobile-top,
    body.endoffer-shell .nav-mobile {
        display: none;
    }

    body.endoffer-shell .hero__layout {
        flex-direction: row;
        align-items: center;
        gap: 32px;
    }

    body.endoffer-shell .hero__title {
        font-size: 32px;
    }

    body.endoffer-shell .footer__wrapper {
        flex-direction: row;
        justify-content: space-between;
    }

    body.endoffer-shell .footer__subscription {
        text-align: right;
    }
}

/* مخفی کردن منوی شناور در دسکتاپ */
@media (min-width: 1024px) {
    body.endoffer-shell .nav-mobile {
        display: none !important;
    }
}

@media (max-width: 1023px) {
    body.endoffer-shell .nav-mobile {
        display: block !important;
    }
}

