/*
Theme Name: Parastooseir Visa
Theme URI: https://visa.parastooseir.com
Author: Parastooseir
Author URI: https://parastooseir.com
Description: قالب سبک و بهینه ویژه سایت ویزای پرستو سیر
Version: 1.0.0
Text Domain: parastooseir-visa
*/

:root {
    /* رنگ‌های برند */
    --ps-color-primary: #485a85;   /* سرمه‌ای */
    --ps-color-accent: #d6a75e;    /* طلایی */
    --ps-color-dark: #1f2533;
    --ps-color-light: #f7f7f9;
    --ps-color-muted: #a0a4b5;
    --ps-radius-lg: 16px;
    --ps-radius-md: 10px;
    --ps-radius-sm: 6px;
    --ps-transition-fast: 0.2s ease-out;
    --ps-shadow-soft: 0 10px 30px rgba(0,0,0,0.06);

    /* تایپوگرافی */
    --ps-font-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ps-font-size-base: 15px;
    --ps-line-height-base: 1.8;
}

/* Reset سبک و سریع */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    scroll-behavior: auto;
    overflow-x: clip;
}
@supports not (overflow: clip) {
    html, body {
        overflow-x: hidden;
    }
}
/* اسکرول نرم داخل لیست کشورهای دراپ‌داون */
.ps-visa-select__dropdown {
    scroll-behavior: auto;
}

body {
    margin: 0;
    padding: 0;
    direction: rtl;
    text-align: right;

    /* بکگراند سراسری (همان افکت سکشن اول) */
    background:
        radial-gradient(circle at 0% 0%, rgba(72, 90, 133, 0.22), transparent 55%),
        radial-gradient(circle at 100% 0%, rgba(214, 167, 94, 0.26), transparent 60%),
        linear-gradient(
            180deg,
            #f7f9fc 0%,
            #f8fafc 18%,
            #fdf7ec 45%,
            #ffffff 88%
        );
    background-repeat: no-repeat;
    background-size: cover;

    color: var(--ps-color-dark);
    font-family: var(--ps-font-base);
    font-size: var(--ps-font-size-base);
    line-height: var(--ps-line-height-base);
}


/* تمام المان‌های فرم، فونت را از بدنه به ارث ببرند */
input,
textarea,
select,
button {
    font-family: inherit;
}

/* برای placeholder فیلد جستجوی قدیمی (در صورت استفاده) */
.ps-home-visas__filter-input::placeholder {
    font-family: inherit;
}

/* لینک‌ها */
a {
    color: var(--ps-color-primary);
    text-decoration: none;
    transition: color var(--ps-transition-fast);
}

a:hover,
a:focus {
    color: var(--ps-color-accent);
}

/* کانتینر عمومی */
.ps-container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    padding: 0 16px;
}

/* دیباگ موقت */
.ps-debug {
    border: 1px dashed #ccc;
    padding: 10px;
    margin: 10px 0;
}

/* ===========================
   Header – Visa Site
   =========================== */

:root {
    /* ارتفاع تقریبی هدر */
    --ps-header-height: 72px;
}

/* کانتینر اصلی هدر */
.ps-header {
    position: relative;
    top: auto;
    z-index: 1000;
    background-color: #ffffff;
    border-bottom: 1px solid rgba(15, 23, 42, 0.05);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
    transition: box-shadow var(--ps-transition-fast), transform var(--ps-transition-fast);
}

.ps-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 8px 0;
    min-height: var(--ps-header-height);
}

/* برند: لوگو + تگ‌لاین */
.ps-header__brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.ps-header__logo-picture {
    display: block;
}

.ps-header__logo-img {
    display: block;
    height: 46px;
    width: auto;
    object-fit: contain;
}

.ps-header__brand-name {
    font-weight: 700;
    font-size: 18px;
    color: var(--ps-color-primary);
}

.ps-header__tagline {
    font-size: 12px;
    color: var(--ps-color-muted);
    white-space: nowrap;
}

/* بخش منو + CTA */
.ps-header__nav-area {
    display: flex;
    align-items: center;
    gap: 16px;
}

/* منو – سطح اول */
.ps-nav__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 18px;
}

.ps-nav__list > li {
    position: relative;
}

.ps-nav__list > li > a {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 6px 0;
    font-size: 14px;
    color: var(--ps-color-dark);
    font-weight: 500;
}

/* خط زیر منو با انیمیشن */
.ps-nav__list > li > a::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: -4px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--ps-color-accent), var(--ps-color-primary));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--ps-transition-fast);
}

.ps-nav__list > li > a:hover::after,
.ps-nav__list > li > a:focus::after,
.ps-nav__list > li.current-menu-item > a::after,
.ps-nav__list > li.current-menu-ancestor > a::after {
    transform: scaleX(1);
}

.ps-nav__list > li > a:hover,
.ps-nav__list > li > a:focus {
    color: var(--ps-color-primary);
}

/* ساب‌منوها */
.ps-nav__list li .sub-menu {
    position: absolute;
    top: 100%;
    right: 0;
    min-width: 210px;
    margin: 8px 0 0;
    padding: 10px 10px;
    list-style: none;
    background-color: #ffffff;
    border-radius: var(--ps-radius-md);
    box-shadow: var(--ps-shadow-soft);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity var(--ps-transition-fast), transform var(--ps-transition-fast), visibility var(--ps-transition-fast);
    z-index: 1100;
}

.ps-nav__list li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.ps-nav__list li .sub-menu li {
    margin: 0;
}

.ps-nav__list li .sub-menu a {
    display: block;
    padding: 6px 8px;
    font-size: 13px;
    color: var(--ps-color-dark);
    border-radius: 8px;
    white-space: nowrap;
}

.ps-nav__list li .sub-menu a:hover,
.ps-nav__list li .sub-menu a:focus {
    background-color: var(--ps-color-light);
    color: var(--ps-color-primary);
}

/* دکمه وقت مشاوره ویزا – نسخه جذاب‌تر */
.ps-header__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 9px 22px;
    border-radius: 999px;
    background: linear-gradient(135deg, #f6d18c, #d6a75e); /* طلایی گرم */
    color: #1f2933;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid rgba(214, 167, 94, 0.95);
    box-shadow:
        0 10px 26px rgba(214, 167, 94, 0.45),
        0 0 0 1px rgba(255, 255, 255, 0.7);
    white-space: nowrap;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s.ease,
        background 0.2s ease,
        color 0.2s.ease;
}

/* درخشش لطیف روی دکمه */
.ps-header__cta::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.55), transparent 60%);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

/* حالت هاور / فوکوس */
.ps-header__cta:hover,
.ps-header__cta:focus {
    transform: translateY(-2px);
    background: linear-gradient(135deg, #ffd995, #e0b76b);
    box-shadow:
        0 18px 40px rgba(214, 167, 94, 0.75),
        0 0 0 1px rgba(255, 255, 255, 0.9);
    color: #111827;
}

.ps-header__cta:hover::before,
.ps-header__cta:focus::before {
    opacity: 1;
}

/* دکمه منوی موبایل */
.ps-header__toggle {
    display: none;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    background-color: #ffffff;
    padding: 0;
    margin: 0;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
    transition: background-color var(--ps-transition-fast), border-color var(--ps-transition-fast), transform var(--ps-transition-fast);
}

.ps-header__toggle span {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background-color: var(--ps-color-dark);
    transition: transform var(--ps-transition-fast), opacity var(--ps-transition-fast);
}

/* وضعیت فعال منو موبایل */
.ps-header.is-open .ps-header__toggle span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}

.ps-header.is-open .ps-header__toggle span:nth-child(2) {
    opacity: 0;
}

.ps-header.is-open .ps-header__toggle span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

/* جلوگیری از اسکرول هنگام باز بودن منو موبایل */
body.ps-nav-open {
    overflow: hidden;
}

/* نسخه موبایل */
@media (max-width: 992px) {

    .ps-header__inner {
        gap: 12px;
    }

    .ps-header__tagline {
        display: none;
    }

    .ps-header__nav-area {
        position: fixed;
        inset-inline: 0;
        top: var(--ps-header-height);
        background-color: #ffffff;
        box-shadow: 0 14px 40px rgba(15, 23, 42, 0.1);
        padding: 12px 16px 20px;
        max-height: calc(100vh - var(--ps-header-height));
        overflow-y: auto;
        transform: translateY(-10px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition:
            transform var(--ps-transition-fast),
            opacity var(--ps-transition-fast),
            visibility var(--ps-transition-fast);
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .ps-header.is-open .ps-header__nav-area {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .ps-nav__list {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .ps-nav__list > li > a {
        font-size: 14px;
        padding: 8px 0;
    }

    .ps-nav__list li .sub-menu {
        position: static;
        margin: 4px 0 0;
        padding: 4px 0 4px 0;
        box-shadow: none;
        border-radius: 0;
        background: transparent;
    }

    .ps-nav__list li .sub-menu a {
        padding: 4px 12px;
        font-size: 13px;
    }

    .ps-header__cta {
        width: 100%;
        justify-content: center;
        margin-top: 4px;
    }

    .ps-header__toggle {
        display: inline-flex;
    }

    .ps-main {
        padding-top: 12px;
    }
}

/* نسخه دسکتاپ – کمی فاصله زیر هدر + وسط شدن منو */
@media (min-width: 993px) {
    .ps-main {
        padding-top: 16px;
    }

    /* برای اینکه منو وسط کل هدر قرار بگیرد
       ولی لوگو سمت راست و CTA سمت چپ بماند */
    .ps-header__inner {
        position: relative;
    }

    .ps-nav__list {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

/* ===========================
   Sections – صفحه اصلی
   =========================== */

@keyframes psFadeUp {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ps-home-section {
    margin: 32px 0 40px;
    animation: psFadeUp 0.35s ease-out;
}

/* هدر هر سکشن */
.ps-home-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}

.ps-home-section__title {
    position: relative;
    font-size: 20px;
    margin: 0 0 4px;
    color: var(--ps-color-dark);
    padding-right: 10px;
}

.ps-home-section__title::before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 70%;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--ps-color-accent), var(--ps-color-primary));
}

.ps-home-section__subtitle {
    margin: 0;
    font-size: 13px;
    color: var(--ps-color-muted);
}

/* لینک "بیشتر" */
.ps-home-section__more {
    font-size: 13px;
    font-weight: 500;
    color: var(--ps-color-primary);
    border-radius: 999px;
    padding: 6px 12px;
    border: 1px solid rgba(72, 90, 133, 0.14);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
    background-color: #ffffff;
    transition:
        color var(--ps-transition-fast),
        border-color var(--ps-transition-fast),
        box-shadow var(--ps-transition-fast),
        transform var(--ps-transition-fast),
        background-color var(--ps-transition-fast);
}

.ps-home-section__more:hover,
.ps-home-section__more:focus {
    border-color: rgba(214, 167, 94, 0.8);
    color: var(--ps-color-accent);
    background-color: #fdf7ec;
    box-shadow: 0 8px 20px rgba(214, 167, 94, 0.25);
    transform: translateY(-1px);
}

/* ===========================
   فیلتر و هرو ویزا + گرید ویزا
   =========================== */

/* سکشن ویزا: بک‌گراند تمام‌عرض، چسبیده به هدر */
.ps-home-visas {
    margin-top: 0;              /* بدون فاصله از هدر */
    margin-bottom: 40px;
    padding: 32px 0 60px;
    position: relative;
    isolation: isolate;
    z-index: 50; /* یا 100 */
}

/* بک‌گراند تمام‌عرض (full-width) با گرادیان و هاله نرم */
.ps-home-visas::before {
    content: none;
}

/* محتوای داخل سکشن روی بک‌گراند قرار بگیرد */
.ps-home-visas .ps-container {
    position: relative;
    z-index: 1;
}

.ps-home-visas__filter {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 260px;
}

.ps-home-visas__filter-label {
    font-size: 12px;
    color: var(--ps-color-muted);
}

.ps-home-visas__filter-input {
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.8);
    padding: 6px 14px;
    font-size: 13px;
    outline: none;
    background-color: #ffffff;
    transition:
        border-color var(--ps-transition-fast),
        box-shadow var(--ps-transition-fast),
        background-color var(--ps-transition-fast);
}

.ps-home-visas__filter-input::placeholder {
    color: rgba(148, 163, 184, 0.9);
}

.ps-home-visas__filter-input:focus {
    border-color: var(--ps-color-primary);
    box-shadow: 0 0 0 1px rgba(72, 90, 133, 0.3);
    background-color: #f9fafb;
}

/* گرید کارت‌های ویزا */
.ps-visa-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}
.ps-visa-grid.ps-visa-grid--loading {
    opacity: 0.6;
    pointer-events: none;
}
.ps-visa-grid__empty {
    margin-top: 12px;
    font-size: 13px;
    color: var(--ps-color-muted);
}

/* ===========================
   کارت ویزا
   =========================== */

.ps-visa-card {
    position: relative;
    border-radius: 18px;
    padding: 14px 14px 36px;   /* padding پایین بیشتر برای فاصله از نوار */
    margin-bottom: 70px;       /* جا برای باکس پایین */
    background:
        radial-gradient(circle at top left, rgba(214, 167, 94, 0.16), transparent 55%),
        #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.4);
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition:
        transform var(--ps-transition-fast),
        box-shadow var(--ps-transition-fast),
        border-color var(--ps-transition-fast),
        background-position var(--ps-transition-fast);
    background-size: 200% 200%;
    background-position: 0% 0%;
}

.ps-visa-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.09);
    border-color: rgba(214, 167, 94, 0.9);
    background-position: 100% 0%;
}

.ps-visa-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.ps-visa-card__flag-title {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* بدنه کارت */
.ps-visa-card__body {
    font-size: 13px;
    color: var(--ps-color-dark);
}

.ps-visa-card__excerpt {
    margin: 0 0 8px;
}

.ps-visa-card__links {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px; /* فاصله بیشتر از نوار قیمت */
}

.ps-visa-card__link {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px dashed rgba(148, 163, 184, 0.7);
    color: var(--ps-color-primary);
    background-color: #ffffff;
    transition:
        border-color var(--ps-transition-fast),
        background-color var(--ps-transition-fast),
        color var(--ps-transition-fast);
}

.ps-visa-card__link:hover,
.ps-visa-card__link:focus {
    border-style: solid;
    border-color: rgba(214, 167, 94, 0.9);
    color: var(--ps-color-accent);
    background-color: #fdf7ec;
}

/* ===========================
   نوار پایین کارت: قیمت + جزئیات
   =========================== */

.ps-visa-card__bottom {
    position: absolute;
    inset-inline: 18px;
    bottom: -36px;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.55);
    background: transparent;
}

.ps-visa-card__bottom-half {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    font-size: 13px;
    gap: 4px;
    min-height: 38px;
}

/* نیمه قیمت – همیشه حدود دو سوم عرض */
.ps-visa-card__bottom-half--price {
    flex: 2 1 0;
    min-width: 0;
    background:
        radial-gradient(circle at top left,
            rgba(214, 167, 94, 0.28),
            transparent 55%),
        linear-gradient(135deg, #0f172a, var(--ps-color-primary));
    color: #f9fafb;
}

/* برچسب و عدد قیمت */
.ps-visa-card__price-label {
    font-weight: 700;
    font-size: 12px;
    color: var(--ps-color-accent);
}

.ps-visa-card__price-value {
    font-weight: 800;
    font-size: 16px;
    margin-inline-start: 4px;
}

.ps-visa-card__price-currency {
    font-weight: 600;
    font-size: 13px;
    opacity: 0.95;
}

/* نیمه جزئیات – همیشه حدود یک سوم عرض */
.ps-visa-card__bottom-half--details {
    flex: 1 1 0;
    background: linear-gradient(135deg, #fdf7ec, #e3e9f7);
    color: var(--ps-color-primary);
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s.ease;
}

.ps-visa-card__details-text {
    display: inline-block;
}

/* هاور جزئیات */
.ps-visa-card__bottom-half--details:hover,
.ps-visa-card__bottom-half--details:focus {
    background: linear-gradient(135deg, #fff7e6, #dde5f7);
    transform: translateY(-1px);
    box-shadow: inset 0 0 0 1px rgba(214, 167, 94, 0.4);
}

/* موبایل */
@media (max-width: 480px) {
    .ps-visa-card {
        margin-bottom: 72px;
    }

    .ps-visa-card__bottom {
        inset-inline: 12px;
        bottom: -40px;
    }

    .ps-visa-card__bottom-half {
        padding: 8px 10px;
        font-size: 12px;
    }

    .ps-visa-card__price-value {
        font-size: 15px;
    }
}

/* ===========================
   اخبار صفحه اصلی
   =========================== */

.ps-home-news__list {
    display: grid;
    gap: 10px;
}

.ps-home-news__item {
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background-color: #ffffff;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03);
    transition:
        box-shadow var(--ps-transition-fast),
        transform var(--ps-transition-fast),
        border-color var(--ps-transition-fast);
}

.ps-home-news__item:hover,
.ps-home-news__item:focus-within {
    border-color: rgba(214, 167, 94, 0.9);
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
    transform: translateY(-2px);
}

.ps-home-news__item-title {
    margin: 0 0 2px;
    font-size: 14px;
}

.ps-home-news__item-title a {
    color: var(--ps-color-dark);
}

.ps-home-news__item-title a:hover,
.ps-home-news__item-title a:focus {
    color: var(--ps-color-primary);
}

.ps-home-news__item-meta {
    font-size: 12px;
    color: var(--ps-color-muted);
}

/* ===========================
   Why Parastooseir Section
   =========================== */

.ps-why{
  --ps-why-bg-1: #071a3a;
  --ps-why-bg-2: #0a2a5a;

  --ps-why-card: #ffffff;
  --ps-why-card-2: rgba(255,255,255,.92);

  --ps-why-text: #0b1220;
  --ps-why-muted: #5b6474;

  --ps-why-accent: #f2c14e;
  --ps-why-accent-2: #9ad7ff;

  --ps-why-radius: 22px;
  --ps-why-shadow: 0 18px 50px rgba(0,0,0,.18);
  --ps-why-shadow-soft: 0 10px 30px rgba(0,0,0,.12);

  --ps-why-gap: 22px;
  --ps-why-pad: 22px;
  --ps-why-max: 1180px;

  direction: rtl;
  color: #fff;
  position: relative;
  padding: 34px 0;
  background: radial-gradient(900px 400px at 20% 25%, rgba(154,215,255,.18), transparent 60%),
              radial-gradient(900px 400px at 80% 40%, rgba(242,193,78,.14), transparent 60%),
              linear-gradient(135deg, var(--ps-why-bg-1), var(--ps-why-bg-2));
  overflow: hidden;
}

.ps-why::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(600px 220px at 35% 10%, rgba(255,255,255,.07), transparent 65%),
    radial-gradient(520px 220px at 75% 85%, rgba(255,255,255,.05), transparent 70%);
  pointer-events:none;
}

.ps-why__container{
  width: min(100% - 32px, var(--ps-why-max));
  margin-inline: auto;
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: var(--ps-why-gap);
  align-items: stretch;
  position: relative;
  z-index: 1;
}

/* ---------------------------
   Aside (Services + Poster)
   --------------------------- */

.ps-why__aside{
  display: grid;
  gap: 14px;
  align-content: start;
}

.ps-why__services{
  display: grid;
  gap: 10px;
}

.ps-why__service{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 14px;
  border-radius: 16px;
  color: #0b1220;
  background: rgba(255,255,255,.92);
  box-shadow: var(--ps-why-shadow-soft);
  text-decoration: none;
  position: relative;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.ps-why__service:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(0,0,0,.16);
  background: #fff;
}

.ps-why__service:active{
  transform: translateY(0);
}

.ps-why__service:focus-visible{
  outline: 3px solid rgba(154,215,255,.65);
  outline-offset: 3px;
}

.ps-why__service-icon{
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(10,42,90,.08);
  flex: 0 0 auto;
  font-size: 18px;
}

.ps-why__service-title{
  font-weight: 800;
  font-size: 14px;
  line-height: 1.2;
  flex: 1 1 auto;
}

.ps-why__service-arrow{
  color: rgba(11,18,32,.65);
  font-size: 16px;
  flex: 0 0 auto;
}

/* Poster */
.ps-why__poster{
  text-decoration: none;
  color: inherit;
  border-radius: var(--ps-why-radius);
  overflow: hidden;
  box-shadow: var(--ps-why-shadow);
  position: relative;
  transform: translateZ(0);
  transition: transform .22s ease, box-shadow .22s ease;
}

.ps-why__poster:hover{
  transform: translateY(-3px);
  box-shadow: 0 26px 70px rgba(0,0,0,.22);
}

.ps-why__poster:focus-visible{
  outline: 3px solid rgba(242,193,78,.7);
  outline-offset: 4px;
}

.ps-why__poster-figure{
  margin: 0;
  position: relative;
  overflow: hidden; /* مهم: همه چیز داخل figure کنترل شود */
}

/* عکس پایین‌ترین لایه */
.ps-why__poster-img{
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  filter: saturate(1.05) contrast(1.02);
  transform: scale(1.01);

  position: relative;
  z-index: 0; /* زیر overlay */
}

/* overlay فقط روی عکس، نه روی دکمه */
.ps-why__poster-figure::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.55) 70%, rgba(0,0,0,.70));
  pointer-events:none;

  z-index: 1; /* بین عکس و کپشن */
}

/* کپشن (که دکمه داخلش هست) روی overlay قرار می‌گیرد */
.ps-why__poster-caption{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;

  z-index: 2;              /* بالاتر از overlay */
  filter: none !important;  /* هیچ افکتی نگیره */
  box-shadow: none !important;
  background: none;

  padding: 0;              /* چون دکمه خودش پدینگ دارد */
}

/* ===== Why section poster contact button ===== */
.ps-why__poster-contact{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  width: 100%;
  min-height: 52px;
  padding: 12px 14px;

  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);

  text-decoration: none;
  font-weight: 800;
  font-size: 15px;
  line-height: 1;

  background: linear-gradient(180deg, rgba(255,255,255,1), rgba(245,247,250,1));
  box-shadow:
    0 10px 24px rgba(0,0,0,.10),
    0 1px 0 rgba(255,255,255,.8) inset;

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  -webkit-tap-highlight-color: transparent;

  position: relative;
  z-index: 3; /* حتی از کپشن هم بالاتر */
  mix-blend-mode: normal !important;
  isolation: isolate;
  filter: none !important;
}

.ps-why__poster-contact:hover{
  transform: translateY(-2px);
  border-color: rgba(0,0,0,.14);
  box-shadow:
    0 14px 30px rgba(0,0,0,.14),
    0 1px 0 rgba(255,255,255,.85) inset;
}

.ps-why__poster-contact:active{
  transform: translateY(0);
  box-shadow:
    0 8px 18px rgba(0,0,0,.12),
    0 1px 0 rgba(255,255,255,.8) inset;
}

.ps-why__poster-contact:focus,
.ps-why__poster-contact:focus-visible{
  outline: none;
  border-color: rgba(0,0,0,.18);
  box-shadow:
    0 0 0 4px rgba(0,0,0,.08),
    0 14px 30px rgba(0,0,0,.14),
    0 1px 0 rgba(255,255,255,.85) inset;
}

.ps-why__poster-contact-ic{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 34px;
  height: 34px;
  border-radius: 12px;

  background: rgba(0,0,0,.06);
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset;
}

.ps-why__poster-contact-sub{
  font-weight: 700;
  font-size: 13px;
  opacity: .75;
}

/* ---------------------------
   Main Card (Text + Buttons)
   --------------------------- */

.ps-why__main{
  background: var(--ps-why-card);
  color: var(--ps-why-text);
  border-radius: var(--ps-why-radius);
  box-shadow: var(--ps-why-shadow);
  padding: clamp(18px, 2.2vw, 28px);
  position: relative;
  overflow: hidden;
}

.ps-why__main::before{
  content:"";
  position:absolute;
  inset: -2px;
  background:
    radial-gradient(700px 260px at 80% 10%, rgba(154,215,255,.18), transparent 60%),
    radial-gradient(500px 220px at 10% 80%, rgba(242,193,78,.14), transparent 65%);
  pointer-events:none;
}

.ps-why__header{
  position: relative;
  z-index: 1;
  margin-bottom: 16px;
}

.ps-why__kicker{
  margin: 0 0 10px 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 900;
  font-size: 13px;
  color: rgba(10,42,90,.90);
  background: rgba(10,42,90,.06);
  border: 1px solid rgba(10,42,90,.10);
  padding: 8px 12px;
  border-radius: 999px;
}

.ps-why__kicker::after{
  content:"";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--ps-why-accent);
  box-shadow: 0 0 0 5px rgba(242,193,78,.18);
}

.ps-why__title{
  margin: 0 0 10px 0;
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 950;
  letter-spacing: -0.3px;
  line-height: 1.35;
}

.ps-why__lead{
  margin: 0;
  color: var(--ps-why-muted);
  font-size: 14.5px;
  line-height: 1.95;
}

/* Highlights */
.ps-why__highlights{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0 14px 0;
}

.ps-why__highlight{
  border-radius: 18px;
  padding: 12px 12px;
  background: rgba(10,42,90,.04);
  border: 1px solid rgba(10,42,90,.08);
  display: grid;
  gap: 4px;
}

.ps-why__highlight-title{
  font-weight: 950;
  font-size: 13px;
  color: rgba(10,42,90,.92);
}

.ps-why__highlight-desc{
  font-size: 12.5px;
  color: rgba(91,100,116,.95);
  line-height: 1.6;
}

/* List */
.ps-why__list{
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.ps-why__list li{
  display: grid;
  grid-template-columns: 14px 1fr;
  gap: 10px;
  align-items: start;
  color: rgba(11,18,32,.88);
  line-height: 1.9;
  font-size: 14px;
}

.ps-why__list li::before{
  content:"";
  width: 10px;
  height: 10px;
  margin-top: 7px;
  border-radius: 999px;
  background: rgba(242,193,78,.95);
  box-shadow: 0 0 0 5px rgba(242,193,78,.18);
}

.ps-why__list strong{
  font-weight: 950;
  color: rgba(10,42,90,.95);
}

/* Footer */
.ps-why__footer{
  position: relative;
  z-index: 1;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(10,42,90,.10);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.ps-why__trust{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgba(10,42,90,.04);
  border: 1px solid rgba(10,42,90,.08);
}

.ps-why__trust-icon{
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(242,193,78,.20);
  color: rgba(10,42,90,.90);
  font-size: 14px;
}

.ps-why__trust-text{
  font-weight: 800;
  color: rgba(10,42,90,.92);
  font-size: 13px;
}

.ps-why__actions{
  display: inline-flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Buttons */
.ps-why__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  padding: 0 16px;
  border-radius: 14px;
  font-weight: 900;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
  user-select: none;
}

.ps-why__btn:focus-visible{
  outline: 3px solid rgba(154,215,255,.55);
  outline-offset: 3px;
}

.ps-why__btn--primary{
  background: linear-gradient(135deg, rgba(10,42,90,1), rgba(7,26,58,1));
  color: #fff;
  box-shadow: 0 14px 26px rgba(10,42,90,.22);
}

.ps-why__btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 20px 34px rgba(10,42,90,.26);
}

.ps-why__btn--secondary{
  background: #fff;
  color: rgba(10,42,90,.98);
  border: 1px solid rgba(10,42,90,.18);
  box-shadow: 0 12px 24px rgba(0,0,0,.10);
}

.ps-why__btn--secondary:hover{
  transform: translateY(-2px);
  border-color: rgba(10,42,90,.28);
  box-shadow: 0 18px 30px rgba(0,0,0,.12);
}

/* ---------------------------
   Responsive
   --------------------------- */

@media (max-width: 1024px){
  .ps-why__container{
    grid-template-columns: 320px 1fr;
  }
}

@media (max-width: 900px){
  .ps-why{
    padding: 26px 0;
  }

  .ps-why__container{
    grid-template-columns: 1fr;
  }

  .ps-why__aside{
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 12px;
  }

  .ps-why__services{
    order: 1;
  }

  .ps-why__poster{
    order: 2;
  }

  .ps-why__poster-img{
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 560px){
  .ps-why__aside{
    grid-template-columns: 1fr;
  }

  .ps-why__highlights{
    grid-template-columns: 1fr;
  }

  .ps-why__btn{
    width: 100%;
  }

  .ps-why__actions{
    width: 100%;
  }

  .ps-why__footer{
    align-items: stretch;
  }

  .ps-why__trust{
    width: 100%;
  }
}


/* ===========================
   FAQ ساده صفحه اصلی
   =========================== */

.ps-home-faq__list {
    display: grid;
    gap: 8px;
}

.ps-faq-item {
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.5);
    padding: 6px 10px;
    background-color: #ffffff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.03);
}

.ps-faq-item summary {
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    list-style: none;
}

.ps-faq-item summary::-webkit-details-marker {
    display: none;
}

.ps-faq-item__body {
    margin-top: 6px;
    font-size: 13px;
}

/* ===========================
   ریسپانسیو سکشن‌های صفحه اصلی
   =========================== */

@media (max-width: 768px) {
    .ps-home-section__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .ps-home-visas__filter {
        width: 100%;
        min-width: 0;
    }

    .ps-home-about__grid {
        grid-template-columns: 1fr;
    }

    .ps-home-visas {
        padding-top: 28px;
        padding-bottom: 44px;
    }

    .ps-home-visas::before {
        top: -28px;
        bottom: -32px;
    }
}

/* ===========================
   Single Visa Page – Layout & Header
   =========================== */

.ps-visa-single {
    margin: 32px 0 48px;
}

.ps-visa-single__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
    padding: 16px 18px;
    border-radius: 18px;
    border: 1px solid rgba(148, 163, 184, 0.4);
    background: radial-gradient(circle at top left, rgba(214, 167, 94, 0.08), transparent 55%),
                #ffffff;
    box-shadow: 0 14px 40px rgba(15, 23, 42, 0.05);
}

.ps-visa-single__title {
    margin: 0 0 8px;
    font-size: 22px;
    color: var(--ps-color-dark);
}

.ps-visa-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    font-size: 12px;
    color: var(--ps-color-muted);
}

.ps-visa-single__meta-item strong {
    color: var(--ps-color-primary);
}

.ps-visa-single__cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

/* قرص‌های CTA */
.ps-pill-btn {
    border-radius: 999px;
    padding: 6px 14px;
    font-size: 12px;
    font-weight: 500;
    border: 1px solid rgba(148, 163, 184, 0.8);
    background-color: #ffffff;
    color: var(--ps-color-dark);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
    transition:
        border-color var(--ps-transition-fast),
        background-color var(--ps-transition-fast),
        color var(--ps-transition-fast),
        box-shadow var(--ps-transition-fast),
        transform var(--ps-transition-fast);
}

.ps-pill-btn:hover,
.ps-pill-btn:focus {
    border-color: rgba(72, 90, 133, 0.9);
    color: var(--ps-color-primary);
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.14);
}

.ps-pill-btn--accent {
    border-color: transparent;
    background: linear-gradient(135deg, var(--ps-color-accent), #f3c979);
    color: #1f1f1f;
}

.ps-pill-btn--accent:hover,
.ps-pill-btn--accent:focus {
    background: linear-gradient(135deg, #f6d18c, var(--ps-color-accent));
}

.ps-pill-btn--outline {
    background-color: #ffffff;
}

/* ===========================
   Single Visa – Two-column Layout
   =========================== */

.ps-visa-layout {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(260px, 1.4fr);
    gap: 24px;
    margin-top: 20px;
}

.ps-visa-layout__main {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.ps-visa-layout__sidebar {
    position: relative;
}

/* کارت فهرست مطالب */
.ps-visa-toc {
    position: sticky;
    top: calc(var(--ps-header-height) + 12px);
    border-radius: 16px;
    padding: 12px 14px;
    background-color: #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.5);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    font-size: 13px;
}

.ps-visa-toc__title {
    margin: 0 0 8px;
    font-size: 14px;
    color: var(--ps-color-dark);
}

.ps-visa-toc__list {
    margin: 0;
    padding-inline-start: 18px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ps-visa-toc__list a {
    font-size: 13px;
    color: var(--ps-color-dark);
}

.ps-visa-toc__list a:hover,
.ps-visa-toc__list a:focus {
    color: var(--ps-color-primary);
}

/* ===========================
   Single Visa – Sections
   =========================== */

.ps-visa-section {
    padding: 14px 14px 16px;
    border-radius: 16px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background-color: #ffffff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.03);
    scroll-margin-top: calc(var(--ps-header-height) + 16px);
}

.ps-visa-section__title {
    margin: 0 0 10px;
    font-size: 18px;
    color: var(--ps-color-dark);
}

.ps-visa-section__subtitle {
    margin: 0 0 8px;
    font-size: 14px;
    color: var(--ps-color-primary);
}

.ps-visa-section__block {
    margin-top: 8px;
}

/* ===========================
   Summary – معرفی ویزا
   =========================== */

.ps-visa-summary {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1.6fr);
    gap: 16px;
    align-items: center;
}

.ps-visa-summary__image img {
    width: 100%;
    display: block;
    border-radius: 14px;
    object-fit: cover;
}

.ps-visa-summary__text p {
    margin: 0 0 6px;
    font-size: 14px;
    color: var(--ps-color-dark);
}

.ps-visa-summary__meta {
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    font-size: 13px;
    color: var(--ps-color-muted);
}

.ps-visa-summary__meta li {
    margin-bottom: 4px;
}

/* ریچ‌تکست عمومی */
.ps-visa-richtext p {
    margin: 0 0 4px;
    font-size: 14px;
}

.ps-visa-richtext ul,
.ps-visa-richtext ol {
    margin: 0 0 8px;
    padding-inline-start: 18px;
    font-size: 13px;
}

/* ===========================
   Conditions & Docs Tabs
   =========================== */

.ps-visa-conditions-tabs {
    margin-top: 12px;
    border-radius: 14px;
    border: 1px solid rgba(148, 163, 184, 0.5);
    padding: 10px;
    background-color: #f9fafb;
}

.ps-visa-conditions-tabs__buttons {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
}

.ps-visa-tab-btn {
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.7);
    padding: 4px 12px;
    font-size: 12px;
    background-color: #ffffff;
    cursor: pointer;
    color: var(--ps-color-dark);
    transition:
        border-color var(--ps-transition-fast),
        background-color var(--ps-transition-fast),
        color var(--ps-transition-fast),
        box-shadow var(--ps-transition-fast),
        transform var(--ps-transition-fast);
}

.ps-visa-tab-btn.is-active {
    border-color: rgba(72, 90, 133, 0.95);
    background-color: #e5ebf5;
    color: var(--ps-color-primary);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.ps-visa-tab-panel {
    display: none;
}

.ps-visa-tab-panel.is-active {
    display: block;
}

/* برای مدارک */
.ps-visa-docs-tabs {
    margin-top: 8px;
}

/* ===========================
   Tables – مدارک و قیمت‌ها
   =========================== */

.ps-visa-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.ps-visa-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
    min-width: 480px;
}

.ps-visa-table th,
.ps-visa-table td {
    padding: 8px;
    border: 1px solid rgba(148, 163, 184, 0.5);
    vertical-align: top;
}

.ps-visa-table th {
    background-color: #f1f5f9;
    font-weight: 600;
}

.ps-visa-table-wrap--docs table {
    width: 100%;
}

/* نسخه کارت‌محور برای جدول قیمت‌ها در موبایل */
@media (max-width: 768px) {
    .ps-visa-table {
        min-width: 0;
    }

    .ps-visa-table--pricing thead {
        display: none;
    }

    .ps-visa-table--pricing tbody {
        display: block;
    }

    .ps-visa-table--pricing tr {
        display: block;
        margin-bottom: 10px;
        border-radius: 14px;
        border: 1px solid rgba(148, 163, 184, 0.6);
        background-color: #f9fafb;
        box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
        overflow: hidden;
    }

    .ps-visa-table--pricing td {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 8px 10px;
        border-bottom: 1px solid rgba(148, 163, 184, 0.4);
    }

    .ps-visa-table--pricing td:last-child {
        border-bottom: none;
    }

    .ps-visa-table--pricing td::before {
        content: attr(data-label);
        font-weight: 600;
        font-size: 11px;
        color: var(--ps-color-muted);
        margin-left: 8px;
    }
}

/* ===========================
   FAQ & Form
   =========================== */

.ps-visa-faq {
    display: grid;
    gap: 8px;
}

.ps-visa-faq__item {
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.6);
    padding: 6px 10px;
    background-color: #ffffff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.03);
}

.ps-visa-faq__question {
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    list-style: none;
}

.ps-visa-faq__question::-webkit-details-marker {
    display: none;
}

.ps-visa-faq__answer {
    margin-top: 6px;
    font-size: 13px;
}

/* فرم درخواست */
.ps-visa-form {
    font-size: 14px;
}

/* ===========================
   Responsive Single Visa
   =========================== */

@media (max-width: 992px) {
    .ps-visa-single__header {
        flex-direction: column;
        align-items: flex-start;
    }

    .ps-visa-single__cta-row {
        justify-content: flex-start;
    }

    .ps-visa-layout {
        grid-template-columns: 1fr;
    }

    .ps-visa-toc {
        position: static;
        margin-top: 8px;
    }

    .ps-visa-summary {
        grid-template-columns: 1fr;
    }
}

/* ========================
   LCC Footer – Parasto Seir
   ======================== */

.lcc-footer{
  --main:#334F7A;
  --muted:#54698D;
  --badge-bg:#e6ecf7;
  --footer-bg:#d9e3f4;
  --radius:14px;
  --gap:22px;
  color:var(--main) !important;
  font-family:inherit;
  background:transparent !important;
  margin:0 auto !important;
}
.lcc-footer *{
  box-sizing:border-box;
}

/* ستون‌ها بالا */
.lcc-wrap{
  max-width:1280px;
  margin:32px auto 16px;
  padding:0 16px;
  display:grid;
  grid-template-columns:2fr 1fr 1fr 2fr;
  gap:var(--gap);
  align-items:start;
}
.lcc-col{
  display:flex;
  flex-direction:column;
  gap:12px;
}

/* برند و توضیحات */
.lcc-brand .lcc-lcc{
  display:flex;
  align-items:center;
  gap:1px;
  margin:-20px 0 20px 0;
}
.lcc-brand .lcc-lcc img{
  max-width:80%;
  height:auto;
}
.lcc-title{
  font-weight:800;
  font-size:18px;
  line-height:1.3;
  color:var(--main) !important;
}
.lcc-subtitle{
  font-size:14px;
  color:var(--muted) !important;
  margin-top:-4px;
}
.lcc-desc{
  font-size:14px;
  line-height:2;
  text-align:justify;
  color:var(--muted) !important;
  margin-top:-45px;
}

/* تیترهای لینک‌ها */
.lcc-head{
  font-size:16px;
  font-weight:700;
  margin:6px 0 4px;
  color:var(--main) !important;
  display:block;
}

/* لیست لینک‌ها */
.lcc-links ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.lcc-links li{
  list-style:none;
}
.lcc-links a{
  font-size:14px;
  text-decoration:none;
  color:var(--main) !important;
  display:flex !important;
  align-items:center;
  gap:4px;
  background:transparent !important;
}
.lcc-links a:hover{
  color:#1f3a63 !important;
  text-decoration:underline;
}

/* لوگوها */
.lcc-logos{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:flex-start;
}
.lcc-logo-tile{
  width:92px;
  aspect-ratio:1/1;
  background:var(--badge-bg);
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  transition:transform .15s.ease;
  box-shadow:0 1px 0 rgba(0,0,0,.04) inset;
}
.lcc-logo-tile:hover{
  transform:translateY(-2px);
}
.lcc-logo-img{
  max-width:100%;
  max-height:100%;
  display:block;
}

/* موبایل لوگوها */
@media (max-width:576px){
  .lcc-logos{
    display:grid;
    grid-template-columns:repeat(3,92px);
    justify-content:center;
    gap:12px;
    margin:0 auto;
  }
  .lcc-logo-tile{
    width:92px;
  }
}

/* نوار پایینی */
.lcc-bottom{
  margin:22px auto 0;
  max-width:1280px;
  padding:10px 16px;
  border-radius:10px;
  background:#e0e7f5 !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-direction:row-reverse;
  gap:12px;
}

.lcc-copy{
  font-size:14px;
  color:#1e293b !important;
  background:transparent !important;
}
.lcc-copy *{
  background:transparent !important;
  color:inherit;
}
.lcc-copy .bold{
  font-weight:800;
  color:#1e293b !important;
}

.lcc-socials{
  display:flex;
  align-items:center;
  gap:10px;
}
.lcc-social{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border-radius:9px;
  background:transparent !important;
}
.lcc-social svg{
  display:block;
}

/* ستون‌ها ریسپانسیو */
@media (max-width:1200px){
  .lcc-wrap{ grid-template-columns:1.6fr 1fr 1fr 2fr; }
}
@media (max-width:992px){
  .lcc-wrap{ grid-template-columns:1fr 1fr; }
}
@media (max-width:576px){
  .lcc-wrap{ grid-template-columns:1fr; }
  .lcc-bottom{
    flex-direction:column-reverse;
    align-items:flex-start;
  }
}

/* آدرس‌ها و تلفن‌ها */
.ps-contact{
  --ps-bg:#fff;
  --ps-radius:16px;
  --ps-gap:16px;
  --ps-pad:12px;
  --ps-icon-size:20px;

  background:var(--ps-bg) !important;
  border-radius:var(--ps-radius);
  padding:0;
  overflow:hidden;
  text-align:right;
  margin-top:0 !important;
}
.ps-contact-grid{
  display:flex;
  flex-wrap:wrap;
  direction:rtl;
  gap:16px;
}
.ps-card{
  display:flex;
  align-items:center;
  gap:10px;
  padding:var(--ps-pad);
  background:transparent;
  border:none;
  flex:1 1 260px;
  position:relative;
}
@media (min-width:992px){
  .ps-contact-grid{
    gap:0;
    flex-wrap:nowrap;
  }
  .ps-card{
    padding:0 4px;
  }
  .ps-card:not(:last-child)::after{
    content:"";
    position:absolute;
    top:8px;
    bottom:8px;
    inset-inline-end:0;
    width:1px;
    background:rgba(51,79,122,.35);
  }
}
.ps-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.ps-icon i{
  font-size:var(--ps-icon-size);
  color:#17171dcc !important;
}
.ps-link{
  color:#17171dcc !important;
  text-decoration:none;
  line-height:1.8;
  transition:color .2s.ease;
  font-size:14px !important;
}
.ps-link:hover{
  color:#d6a75e !important;
}
.ps-phones{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.ps-phones a{
  font-size:14px !important;
  color:#17171dcc !important;
}
.ltr{
  direction:ltr;
  unicode-bidi:plaintext;
}

@media (max-width:767px){
  .ps-contact{
    --ps-gap:14px;
    --ps-icon-size:18px;
  }
}
@media (max-width:420px){
  .ps-contact{
    --ps-gap:12px;
    --ps-icon-size:16px;
  }
}
/* به‌روز رسانی نمایش کپی‌رایت و آیکون‌ها */
.lcc-copy {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}

.lcc-copy p {
    display: inline;
    margin: 0;
}

.lcc-social svg {
    width: 24px;
    height: 24px;
}

/* ============================
   Visa Search Bar – Origin / Destination
   ============================ */
/* --------------------------------------------------
   Home: Visa Search Bar (origin/destination + custom select)
   -------------------------------------------------- */

/* ترتیب در موبایل: مبدا، مقصد، دکمه */
@media (max-width: 768px) {
    .ps-visa-search {
        display: flex;
        flex-direction: column;
    }
    .ps-visa-search__field--origin {
        order: 1;
        width: 100%;
    }
    .ps-visa-search__field--destination {
        order: 2;
        width: 100%;
    }
    .ps-visa-search__submit {
        order: 3;
        width: 100%;
        margin-top: 8px;
    }
    .ps-visa-search__divider {
        display: none;
    }
}

/* ===== سلکت سفارشی (برای مبدا و مقصد) ===== */
.ps-visa-select {
    position: relative;
}

.ps-visa-select__trigger {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border: none;
    background: transparent;
    cursor: pointer;
}

.ps-visa-select__left {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.ps-visa-select__flag-wrap {
    width: 24px;
    height: 16px;
    border-radius: 4px;
    overflow: hidden;
    flex-shrink: 0;
}

.ps-visa-select__flag {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* متن انتخاب‌شده داخل سلکت سفارشی */
.ps-visa-select__selected-text {
    font-size: 14px;
    color: var(--ps-color-dark);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* فلش ساده برای باز شدن لیست (مبدا و مقصد) */
.ps-visa-select__trigger-arrow {
    flex: 0 0 auto;
    font-size: 18px;
    line-height: 1;
    color: var(--ps-color-primary);
    margin-inline-start: 4px;
}

/* دراپ‌داون لیست کشورها + شیار اسکرول داخلی */
.ps-visa-select__dropdown {
    position: absolute;
    inset-inline: 0;
    top: 100%;
    margin-top: 6px;
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #f9fafb 55%,
        #fef7eb 100%
    );
    border-radius: 16px;
    box-shadow:
        0 18px 40px rgba(15,23,42,0.18),
        0 0 0 1px rgba(148,163,184,0.22);
    max-height: 360px; /* قبلاً 260px بود؛ برای اینکه بخش نوع ویزا اسکرول نخورد بزرگ‌تر شد */
    overflow-y: auto;
    z-index: 30;
    opacity: 0;
    transform: translateY(6px);
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
    padding: 6px 0;
    padding-inline-end: 4px;

    /* بدون افکت شیشه‌ای برای خوانایی بهتر */
    backdrop-filter: none;
    -webkit-backdrop-filter: none;

    /* فایرفاکس – فقط رنگ نوار، ترک شفاف */
    scrollbar-width: thin;
    scrollbar-color: var(--ps-color-accent) transparent;
}

/* شیار ثابت کناری */
.ps-visa-select__dropdown::before {
    content: "";
    position: absolute;
    inset-block: 8px;
    inset-inline-start: 6px;
    width: 6px;
    border-radius: 999px;
    background: rgba(72, 90, 133, 0.14);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.8);
    pointer-events: none;
    z-index: 0;
}

.ps-visa-select.is-open .ps-visa-select__dropdown {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* --- WebKit scrollbar --- */
.ps-visa-select__dropdown::-webkit-scrollbar {
    width: 6px;
}

.ps-visa-select__dropdown::-webkit-scrollbar-track {
    background: transparent;
    border-radius: 999px;
    margin: 8px 0;
    box-shadow: none;
}

.ps-visa-select__dropdown::-webkit-scrollbar-thumb {
    background: linear-gradient(
        180deg,
        var(--ps-color-accent) 0%,
        var(--ps-color-primary) 100%
    );
    border-radius: 999px;
    border: 2px solid rgba(255,255,255,0.85);
    box-shadow: 0 0 4px rgba(72, 90, 133, 0.4);
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s.ease;
}

.ps-visa-select__dropdown::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(
        180deg,
        #f6cf83 0%,
        var(--ps-color-primary) 100%
    );
    border-color: #ffffff;
    transform: translateX(-1px);
}

.ps-visa-select__dropdown::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
    background: transparent;
    border: none;
}

/* سرچ داخل دراپ‌داون */
.ps-visa-select__search {
    position: sticky;
    top: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    background: #ffffff;
    border-bottom: 1px solid rgba(148,163,184,0.35);
}

.ps-visa-select__search-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.ps-visa-select__search-input {
    border: none;
    outline: none;
    background: transparent;
    width: 100%;
    font-size: 13px;
    direction: rtl;
    text-align: right;
}

.ps-visa-select__list {
    list-style: none;
    margin: 0;
    padding: 6px;
}

.ps-visa-select__item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 13px;
    transition:
        background-color 0.16s ease,
        transform 0.16s.ease,
        box-shadow 0.16s.ease;
}

.ps-visa-select__item:hover {
    background-color: #fef9e7;
    transform: translateX(-2px);
    box-shadow: inset 3px 0 0 var(--ps-color-accent);
}

.ps-visa-select__item-flag {
    width: 22px;
    height: 16px;
    border-radius: 4px;
    overflow: hidden;
    flex-shrink: 0;
}

.ps-visa-select__item-flag img {
    width: 100%;
    height: 100%;
    display:block;
    object-fit: cover;
}

.ps-visa-select__item-text {
    flex: 1 1 auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* سلکت نیتیو پنهان (برای سینک کردن مقدار) */
.ps-visa-search__select--native {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}

/* ===== کانتینر سرچ‌بار بالای لیست ویزا ===== */
.ps-home-visas .ps-home-visas__filter {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
}

.ps-visa-search {
    width: 100%;
    max-width: 960px;
    margin: 0 auto 22px;
    display: flex;
    align-items: stretch;
    gap: 10px;
    padding: 10px 10px 10px 14px;
    border-radius: 999px;
    background:
        radial-gradient(circle at top right, rgba(214, 167, 94, 0.14), transparent 60%),
        radial-gradient(circle at bottom left, rgba(72, 90, 133, 0.10), transparent 55%),
        #ffffff;
    box-shadow:
        0 18px 45px rgba(15, 23, 42, 0.12),
        0 0 0 1px rgba(148, 163, 184, 0.18);
    border: 1px solid rgba(148, 163, 184, 0.12);
    position: relative;
    overflow: visible;
}

.ps-visa-search__field {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 2px 8px;
}

/* فوکوس روی فیلدهای سرچ */
.ps-visa-search__field:focus-within {
    background: linear-gradient(135deg, #fdf7ec, #eef2ff);
    box-shadow: 0 0 0 1px rgba(214, 167, 94, 0.5);
    border-radius: 999px;
}

@media (min-width: 769px) {
    .ps-visa-search__field {
        background-color: transparent;
        box-shadow: none;
    }
}

.ps-visa-search__label {
    font-size: 11px;
    color: var(--ps-color-muted);
    margin-bottom: 4px;
    pointer-events: none;
}

/* Divider بین دو فیلد */
.ps-visa-search__divider {
    width: 1px;
    background: linear-gradient(
        180deg,
        rgba(148, 163, 184, 0),
        rgba(148, 163, 184, 0.7),
        rgba(148, 163, 184, 0)
    );
    align-self: center;
    height: 34px;
}

/* دکمه بگرد – سرمه‌ای تیره و روشن */
.ps-visa-search__submit {
    flex: 0 0 auto;
    min-width: 96px;
    border: none;
    border-radius: 999px;
    padding: 0 26px;
    background: radial-gradient(circle at top left, #4b5563, transparent 55%),
                linear-gradient(135deg, #0f172a, #1e293b);
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.55);
    transition:
        background 0.22s ease,
        transform 0.22s.ease,
        box-shadow 0.22s.ease;
}

.ps-visa-search__submit:hover,
.ps-visa-search__submit:focus {
    background: radial-gradient(circle at top left, #1f2937, transparent 55%),
                linear-gradient(135deg, #020617, #0f172a);
    transform: translateY(-1px);
    box-shadow: 0 24px 55px rgba(15, 23, 42, 0.70);
}

/* ===== Mobile ===== */
@media (max-width: 768px) {
    .ps-visa-search {
        flex-direction: column;
        border-radius: 24px;
        padding: 12px 10px 14px;
        gap: 10px;
    }

    .ps-visa-search__field--origin {
        order: 1;
        width: 100%;
    }

    .ps-visa-search__field--destination {
        order: 2;
        width: 100%;
    }

    .ps-visa-search__submit {
        order: 3;
        width: 100%;
        min-height: 42px;
    }

    .ps-visa-search__divider {
        display: none;
    }

    .ps-visa-search__field {
        background: linear-gradient(135deg, #f9fafb, #fdf2e9);
        border-radius: 14px;
        padding: 8px 10px 10px;
        box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
    }

    .ps-visa-select__dropdown {
        max-height: 320px; /* قبلاً 230px بود؛ برای جلوگیری از اسکرول نوع ویزا کمی بزرگ‌تر شد */
        border-radius: 18px;
    }
}

/* ============================
   Visa Flag – توپ سه‌بعدی براق مثل نمونه
   ============================ */

.ps-visa-card {
    /* برای کمی عمق روی هاور */
    perspective: 1000px;
    transform-style: preserve-3d;
}

/* ظرف پرچم – توپ روی کارت */
.ps-visa-card__flag {
    width: 78px;
    height: 78px;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    /* حلقه‌ی فلزی + سایه زیر توپ */
    box-shadow:
        0 22px 42px rgba(15, 23, 42, 0.65),          /* سایه‌ی زیر توپ */
        0 0 0 2px rgba(255, 255, 255, 0.95),         /* لبه‌ی روشن */
        0 0 0 4px rgba(148, 163, 184, 0.75);         /* رینگ فلزی دور */

    background: transparent;

    transform-style: preserve-3d;
    backface-visibility: hidden;

    /* شناور ملایم */
    animation: psFlagFloat 4s ease-in-out infinite alternate;
}

/* خود تصویر پرچم – بدون تیره شدن، کمی برآمده */
.ps-visa-card__flag img {
    width: 112%;
    height: 112%;
    border-radius: 50%;
    display: block;
    object-fit: cover;
    position: relative;
    z-index: 1;

    /* کمی از سطح بیرون بزند */
    transform: translateZ(14px) scale(1.04);
    transition: transform 0.25s ease;

    /* رنگ زنده‌تر، بدون کم شدن روشنایی */
    filter: saturate(1.08) contrast(1.05);
}

/* هایلایت براق روی نیمه‌ی بالا – مثل بازتاب نور */
.ps-visa-card__flag::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    z-index: 3;

    background:
        radial-gradient(circle at 30% 12%,
            rgba(255, 255, 255, 0.96) 0%,
            rgba(255, 255, 255, 0.75) 12%,
            rgba(255, 255, 255, 0.0) 40%),
        radial-gradient(circle at 70% 0%,
            rgba(255, 255, 255, 0.55) 0%,
            rgba(255, 255, 255, 0.0) 42%);

    opacity: 0.9;
    pointer-events: none;

    /* کمی زاویه برای حس کروی شدن */
    transform: translateZ(22px) rotateZ(-12deg);

    /* فقط روشن می‌کند، تیره نمی‌کند */
    mix-blend-mode: screen;
}

/* سایه‌ی نرم روی لبه‌ها و پایین توپ برای عمق */
.ps-visa-card__flag::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    z-index: 2;

    background:
        radial-gradient(circle at 50% 130%,
            rgba(15, 23, 42, 0.65) 0%,
            rgba(15, 23, 42, 0.0) 60%),
        radial-gradient(circle at 50% 50%,
            rgba(0, 0, 0, 0.18) 70%,
            rgba(0, 0, 0, 0.0) 100%);

    opacity: 0.55;
    pointer-events: none;

    /* روی پرچم می‌نشیند ولی با blend تیره می‌کند */
    mix-blend-mode: multiply;
    transform: translateZ(18px);
}

/* حالت هاور – کمی چرخش سه‌بعدی و برجسته‌تر شدن */
.ps-visa-card:hover .ps-visa-card__flag {
    transform: rotateY(-18deg) rotateX(10deg) translateZ(6px);
    animation-play-state: paused;
}

.ps-visa-card:hover .ps-visa-card__flag img {
    transform: translateZ(22px) scale(1.08);
}

/* انیمیشن شناور ملایم (بدون اغراق) */
@keyframes psFlagFloat {
    0% {
        transform: translateY(0) rotateY(-6deg) rotateX(3deg);
    }
    50% {
        transform: translateY(-3px) rotateY(4deg) rotateX(-2deg);
    }
    100% {
        transform: translateY(-1px) rotateY(-3deg) rotateX(2deg);
    }
}

/* اگر جایی لازم باشد آیتم مخفی شود */
.ps-visa-select__item--hidden {
    display: none !important;
}


/* ============================
   Visa Types inside Destination Dropdown
   ============================ */

.ps-visa-select__types {
    margin-top: 8px;
    padding: 10px 10px 12px;
    border-top: 1px solid rgba(148, 163, 184, 0.45);
    background:
        linear-gradient(135deg, #f9fafb 0%, #fdf7ec 100%);
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10);
}

/* عنوان بالای لیست نوع ویزا */
.ps-visa-select__types-title {
    font-size: 12px;
    font-weight: 600;
    color: var(--ps-color-primary);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.ps-visa-select__types-title::before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: var(--ps-color-accent);
}

/* حالت خالی (وقتی ترمی تعریف نشده) */
.ps-visa-select__types-empty {
    font-size: 12px;
    color: var(--ps-color-muted);
    padding: 6px 0 2px;
}

/* لیست رادیوباتن‌ها */
.ps-visa-select__types-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 10px;
}

/* هر گزینه‌ی نوع ویزا */
.ps-visa-type-option {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 999px;
    cursor: pointer;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.85);
    transition:
        background-color 0.18s ease,
        border-color 0.18s.ease,
        box-shadow 0.18s ease,
        transform 0.18s.ease;
}

/* مخفی کردن رادیوی اصلی */
.ps-visa-type-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* دایره‌ی رادیوباتن سفارشی */
.ps-visa-type-option__fake {
    width: 16px;
    height: 16px;
    border-radius: 999px;
    border: 2px solid rgba(148, 163, 184, 0.9);
    box-sizing: border-box;
    flex-shrink: 0;
    position: relative;
    background-color: #ffffff;
}

.ps-visa-type-option__fake::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: inherit;
    background: linear-gradient(135deg, var(--ps-color-accent), var(--ps-color-primary));
    opacity: 0;
    transform: scale(0.5);
    transition:
        opacity 0.18s ease,
        transform 0.18s ease;
}

/* متن عنوان نوع ویزا */
.ps-visa-type-option__label {
    font-size: 13px;
    color: var(--ps-color-dark);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* هاور روی گزینه */
.ps-visa-type-option:hover {
    background: #fef3c7;
    border-color: rgba(214, 167, 94, 0.85);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.10);
    transform: translateY(-1px);
}

/* وقتی انتخاب شده (کلاس از JS اضافه می‌شود) */
.ps-visa-type-option--active {
    background: linear-gradient(135deg, #fdf7ec, #e5ebf5);
    border-color: rgba(72, 90, 133, 0.95);
    box-shadow:
        0 10px 24px rgba(15, 23, 42, 0.16),
        0 0 0 1px rgba(255, 255, 255, 0.7) inset;
}

.ps-visa-type-option--active .ps-visa-type-option__fake {
    border-color: transparent;
}

.ps-visa-type-option--active .ps-visa-type-option__fake::after {
    opacity: 1;
    transform: scale(1);
}

/* دکمه‌ی «تغییر کشور مقصد» زیر رادیوباتن‌ها */
.ps-visa-select__types-reset {
    border-radius: 999px;
    border: 1px dashed rgba(148, 163, 184, 0.75);
    background: #ffffff;
    padding: 5px 12px;
    font-size: 11px;
    color: var(--ps-color-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 2px;
    transition:
        border-color 0.18s.ease,
        color 0.18s.ease,
        background-color 0.18s.ease,
        box-shadow 0.18s.ease;
}

.ps-visa-select__types-reset::before {
    content: "⟲";
    font-size: 13px;
}

.ps-visa-select__types-reset:hover,
.ps-visa-select__types-reset:focus {
    border-style: solid;
    border-color: rgba(214, 167, 94, 0.95);
    color: var(--ps-color-primary);
    background: #fdf7ec;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.10);
}

/* اگر اسکرول‌بار داخلی لازم نباشد، مخفی‌اش کن (کلاسی که JS می‌گذارد) */
.ps-visa-select__scrollbar--hidden {
    display: none !important;
}

/* موبایل: کمی فشرده‌تر */
@media (max-width: 768px) {
    .ps-visa-select__types {
        margin-top: 10px;
        padding: 10px 8px 12px;
        border-radius: 14px;
    }

    .ps-visa-type-option {
        padding: 6px 8px;
    }

    .ps-visa-type-option__label {
        font-size: 12px;
    }
}

/* ============================
   Popup – Visa not available
   ============================ */

.ps-visa-popup-overlay {
    position: fixed;
    inset: 0;
    background: radial-gradient(circle at top, rgba(15,23,42,0.75), rgba(15,23,42,0.92));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    z-index: 9999;
    transition: opacity 0.22s ease, visibility 0.22s ease;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.ps-visa-popup-overlay.is-visible {
    opacity: 1;
    visibility: visible;
}

.ps-visa-popup {
    position: relative;
    direction: rtl;
    text-align: right;
    background:
        radial-gradient(circle at 0% 0%, rgba(214,167,94,0.25), transparent 55%),
        radial-gradient(circle at 100% 100%, rgba(72,90,133,0.22), transparent 55%),
        #ffffff;
    border-radius: 22px;
    padding: 20px 20px 16px;
    max-width: 420px;
    width: calc(100% - 40px);
    box-shadow:
        0 22px 60px rgba(0,0,0,0.55),
        0 0 0 1px rgba(248,250,252,0.9);
    border: 1px solid rgba(248, 250, 252, 0.9);
    color: var(--ps-color-dark);
    overflow: hidden;
}

/* نوار نورانی دور کارت */
.ps-visa-popup::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background:
        linear-gradient(135deg, #f6d18c, #94a3b8, #f9a8d4);
    opacity: 0.35;
    z-index: -1;
}

/* آیکن دایره‌ای بالا */
.ps-visa-popup__icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    margin: 0 auto 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(circle at 30% 0%, #fef9c3, transparent 60%),
        linear-gradient(135deg, #0f172a, #1e293b);
    box-shadow:
        0 14px 30px rgba(15, 23, 42, 0.65),
        0 0 0 2px rgba(248, 250, 252, 0.95);
    color: #fefce8;
    font-weight: 800;
    font-size: 22px;
}

.ps-visa-popup__icon span {
    transform: translateY(-1px);
}

/* عنوان اصلی */
.ps-visa-popup__title {
    margin: 0 0 6px;
    font-size: 17px;
    font-weight: 800;
    text-align: center;
    color: var(--ps-color-dark);
}

/* جمله‌ی اصلی راهنما */
.ps-visa-popup__subtitle {
    margin: 0 0 6px;
    font-size: 13px;
    text-align: justify;
    color: var(--ps-color-muted);
    line-height: 1.9;
}

.ps-visa-popup__subtitle strong {
    color: var(--ps-color-primary);
    font-weight: 700;
}

/* توضیح ترکیب کشور + نوع ویزا (دینامیک) */
.ps-visa-popup__detail {
    margin: 4px 0 8px;
    font-size: 13px;
    text-align: center;
    color: var(--ps-color-dark);
    line-height: 1.9;
}

/* نکات راهنما */
.ps-visa-popup__tips {
    margin: 0 0 12px;
    padding: 6px 18px 0 0;
    font-size: 12px;
    color: var(--ps-color-muted);
    list-style: none;
}

.ps-visa-popup__tips li {
    position: relative;
    margin-bottom: 4px;
    line-height: 1.9;
}

.ps-visa-popup__tips li::before {
    content: "•";
    position: absolute;
    right: -10px;
    top: 0;
    color: var(--ps-color-accent);
}

/* دکمه‌ها */
.ps-visa-popup__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-top: 4px;
}

.ps-visa-popup__btn {
    border-radius: 999px;
    padding: 7px 18px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    border: 0;
    outline: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-decoration: none;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        background 0.18s.ease,
        color 0.18s ease,
        border-color 0.18s ease;
}
/* دکمه اصلی – تماس */
.ps-visa-popup__btn--primary {
    background:
        radial-gradient(circle at 0 0, rgba(255,255,255,0.35), transparent 55%),
        linear-gradient(135deg, #f6d18c, #d6a75e);
    color: #111827;
    box-shadow:
        0 12px 30px rgba(214, 167, 94, 0.70),
        0 0 0 1px rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(214, 167, 94, 0.95);
    min-width: 160px;
}

.ps-visa-popup__btn--primary:hover,
.ps-visa-popup__btn--primary:focus {
    color: #485a85; /* رنگ نوشته هنگام هاور/فوکوس */
    background:
        radial-gradient(circle at 0 0, rgba(255,255,255,0.65), transparent 55%),
        linear-gradient(135deg, #ffdf9e, #e4b96b);
    transform: translateY(-1px);
    box-shadow:
        0 18px 40px rgba(214, 167, 94, 0.9),
        0 0 0 1px rgba(255, 255, 255, 1);
}


/* دکمه ثانویه – انتخاب ویزای دیگر */
.ps-visa-popup__btn--secondary {
    background: rgba(248, 250, 252, 0.9);
    color: var(--ps-color-dark);
    border: 1px dashed rgba(148, 163, 184, 0.9);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.20);
    min-width: 140px;
}

.ps-visa-popup__btn--secondary:hover,
.ps-visa-popup__btn--secondary:focus {
    background: #fdf7ec;
    color: var(--ps-color-primary);
    border-style: solid;
    border-color: rgba(214, 167, 94, 0.95);
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.32);
}

/* موبایل: کمی فشرده‌تر */
@media (max-width: 480px) {
    .ps-visa-popup {
        padding: 18px 14px 14px;
        border-radius: 18px;
    }

    .ps-visa-popup__icon {
        width: 46px;
        height: 46px;
        font-size: 20px;
    }

    .ps-visa-popup__title {
        font-size: 16px;
    }

    .ps-visa-popup__subtitle,
    .ps-visa-popup__detail {
        font-size: 12px;
    }

    .ps-visa-popup__tips {
        padding-right: 16px;
    }

    .ps-visa-popup__btn {
        width: 100%;
    }
}



/* ===========================
   Blog – آخرین مقالات
   =========================== */

.ps-home-blog__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); /* دسکتاپ: ۳تایی */
    gap: 18px;
}

@media (max-width: 992px) {
    .ps-home-blog__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); /* تبلت: ۲تایی */
    }
}

@media (max-width: 640px) {
    .ps-home-blog__grid {
        grid-template-columns: minmax(0, 1fr); /* موبایل: تک‌ستونه */
    }
}

.ps-home-blog__item {
    border-radius: 18px;
    background-color: #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.4);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.ps-home-blog__item:hover,
.ps-home-blog__item:focus-within {
    transform: translateY(-3px);
    border-color: rgba(214, 167, 94, 0.9);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12);
}

/* تصویر مقاله */
.ps-home-blog__thumb {
    position: relative;
    padding-top: 60%; /* نسبت تصویر 5:3 */
    overflow: hidden;
}

.ps-home-blog__thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.25s ease;
}

.ps-home-blog__item:hover .ps-home-blog__thumb img {
    transform: scale(1.05);
}

/* جایگزین در صورت نبود تصویر شاخص */
.ps-home-blog__thumb-placeholder {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 0 0, rgba(214, 167, 94, 0.35), transparent 55%),
        linear-gradient(135deg, #e5e7eb, #cbd5f5);
}

/* متادیتا بالا (تاریخ + دسته) */
.ps-home-blog__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 11px;
    color: var(--ps-color-muted);
    padding: 8px 12px 0;
}

.ps-home-blog__cat {
    padding: 2px 8px;
    border-radius: 999px;
    background-color: #f1f5f9;
    color: var(--ps-color-primary);
    font-size: 11px;
}

/* عنوان و خلاصه */
.ps-home-blog__title {
    margin: 4px 12px 2px;
    font-size: 14px;
}

.ps-home-blog__title a {
    color: var(--ps-color-dark);
}

.ps-home-blog__title a:hover,
.ps-home-blog__title a:focus {
    color: var(--ps-color-primary);
}

.ps-home-blog__excerpt {
    padding: 0 12px 10px;
    font-size: 13px;
    color: var(--ps-color-muted);
}






/* =========================================
   HOME / VISA GRID – moved from template inline <style>
   ========================================= */

/* ✅ ONLY POSITION FIX FOR VISA FLAGS (TOP-LEFT, FIXED) */
#ps-visa-grid .ps-visa-card__header,
.ps-visa-grid .ps-visa-card__header{
  position: relative;
}

/* ✅ پرچم همیشه بالا-چپ و ثابت */
#ps-visa-grid .ps-visa-card__flag,
.ps-visa-grid .ps-visa-card__flag{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  margin: 0 !important;
  z-index: 5;
}

/* ✅ سایز پرچم ~ 68px (بدون تغییر استایل ظاهری خودش) */
#ps-visa-grid .ps-visa-card__flag img,
.ps-visa-grid .ps-visa-card__flag img{
  width: 68px !important;
  height: 68px !important;
}

/* ✅ ردیف متن روبروی پرچم */
#ps-visa-grid .ps-visa-card__head-row,
.ps-visa-grid .ps-visa-card__head-row{
  padding-left: 130px !important;
}

/* ✅ فاصله body از header = 30px */
#ps-visa-grid .ps-visa-card__body,
.ps-visa-grid .ps-visa-card__body{
  margin-top: 30px !important;
}

/* ✅ دوخطی کردن متن */
#ps-visa-grid .ps-visa-card__visa-line,
.ps-visa-grid .ps-visa-card__visa-line,
#ps-visa-grid .ps-visa-card__country-line,
.ps-visa-grid .ps-visa-card__country-line{
  display: block;
}

/* ✅ بولد شدن نوع ویزا (قوی‌تر) */
#ps-visa-grid .ps-visa-card__visa-line,
.ps-visa-grid .ps-visa-card__visa-line{
  font-weight: 800 !important;
}

/* ✅ بولد شدن اسم کشور (نصف نوع ویزا) */
#ps-visa-grid .ps-visa-card__country-line,
.ps-visa-grid .ps-visa-card__country-line{
  font-weight: 300 !important;
}

/* =========================================
   Remove inline style="display:none" usages
   ========================================= */

.is-hidden{ display: none !important; }

/* پرچم داخل select ها: پیش‌فرض مخفی */
.ps-visa-select__flag{
  display: none;
}

/* وقتی پرچم داریم، نمایش بده */
.ps-visa-select.has-flag .ps-visa-select__flag{
  display: block;
}





/* ===========================
   News 9 Section (Attractive)
   =========================== */
.ps-home-news9 { margin-top: 28px; }

.ps-home-news9__head { align-items: flex-end; gap: 12px; }
.ps-home-news9__more { font-weight: 700; }

/* Featured */
.ps-news9-featured{
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  gap:16px;
  text-decoration:none;
  border-radius:18px;
  overflow:hidden;
  box-shadow: 0 16px 38px rgba(0,0,0,.10);
  background:#fff;
}
.ps-news9-featured__media{ position:relative; min-height: 260px; }
.ps-news9-featured__media img{
  width:100%; height:100%;
  object-fit:cover; display:block;
  transform: scale(1);
  transition: transform .35s ease;
}
.ps-news9-featured__placeholder{ width:100%; height:100%; background: rgba(0,0,0,.06); }
.ps-news9-featured__overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.45), rgba(0,0,0,.10), rgba(0,0,0,0));
}
.ps-news9-featured__badges{
  position:absolute; top:12px; left:12px;
  display:flex; gap:8px; flex-wrap:wrap;
}
.ps-news9-badge{
  display:inline-flex; align-items:center;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  line-height:1;
  background: rgba(255,255,255,.92);
  color:#111;
}
.ps-news9-badge--new{
  background: #111827;
  color:#fff;
}
.ps-news9-featured__content{
  padding:16px 16px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ps-news9-featured__meta,
.ps-news9-card__meta{
  display:flex; align-items:center; gap:8px;
  font-size:12px;
  color:#6b7280;
}
.ps-news9-dot{ opacity:.6; }
.ps-news9-featured__title{
  margin:10px 0 8px;
  font-size:18px;
  font-weight:900;
  color:#111827;
  line-height:1.7;
}
.ps-news9-featured__excerpt{
  font-size:13px;
  color:#4b5563;
  line-height:1.9;
  margin-bottom: 12px;
}
.ps-news9-featured__cta{
  margin-top:auto;
  font-weight:900;
  color:#111827;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.ps-news9-featured:hover img{ transform: scale(1.05); }
.ps-news9-featured:hover .ps-news9-featured__cta{ text-decoration: underline; }

/* Grid cards */
.ps-news9-grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:12px;
}
.ps-news9-card{
  text-decoration:none;
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
  display:flex;
  flex-direction:column;
  min-height: 210px;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ps-news9-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(0,0,0,.12);
}
.ps-news9-card__media{ position:relative; height:110px; }
.ps-news9-card__media img{
  width:100%; height:100%;
  object-fit:cover; display:block;
}
.ps-news9-card__placeholder{ width:100%; height:100%; background: rgba(0,0,0,.06); }
.ps-news9-card__badges{
  position:absolute; top:10px; left:10px;
  display:flex; gap:8px; flex-wrap:wrap;
}
.ps-news9-card__content{
  padding:12px 12px 10px;
  display:flex;
  flex-direction:column;
  gap:8px;
  height:100%;
}
.ps-news9-card__title{
  margin:0;
  font-size:13px;
  font-weight:900;
  color:#111827;
  line-height:1.8;
}
.ps-news9-card__arrow{
  margin-top:auto;
  font-size:16px;
  font-weight:900;
  color:#111827;
  opacity:.85;
}

/* Responsive */
@media (max-width: 1024px){
  .ps-news9-featured{ grid-template-columns: 1fr; }
  .ps-news9-featured__media{ min-height: 220px; }
  .ps-news9-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px){
  .ps-news9-grid{ grid-template-columns: 1fr; }
}







/* =========================================
   Home Section: ps-tourist (ویزای توریستی چیست؟)
   Based on provided HTML markup
   ========================================= */

.ps-tourist{
  position: relative;
  margin: 34px 0 46px;
}

/* هدر سکشن */
.ps-tourist__head{
  align-items: flex-end;
}

/* کارت اصلی سکشن */
.ps-tourist__wrap{
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.25fr);
  gap: 18px;
  border-radius: 22px;
  padding: 16px;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.18), transparent 60%),
    radial-gradient(circle at 100% 20%, rgba(72,90,133,.14), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,250,251,.95));
  border: 1px solid rgba(148, 163, 184, 0.35);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

/* نور نرم دور کارت */
.ps-tourist__wrap::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius: inherit;
  background: linear-gradient(135deg,
    rgba(214,167,94,.55),
    rgba(148,163,184,.28),
    rgba(72,90,133,.45)
  );
  opacity: .14;
  pointer-events:none;
}

/* ستون تصویر */
.ps-tourist__media{
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 320px;
  box-shadow: 0 16px 40px rgba(15,23,42,.18);
  background:
    radial-gradient(circle at 20% 10%, rgba(214,167,94,.20), transparent 60%),
    linear-gradient(135deg, #eef2ff, #fdf7ec);
}

/* تصویر */
.ps-tourist__img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .35s ease;
  filter: saturate(1.05) contrast(1.02);
}

/* overlay روی تصویر برای جذابیت */
.ps-tourist__media::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(600px 300px at 20% 10%, rgba(255,255,255,.30), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.20));
  pointer-events:none;
}

.ps-tourist__wrap:hover .ps-tourist__img{
  transform: scale(1.05);
}

/* ستون محتوا */
.ps-tourist__content{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 4px 6px 6px;
}

/* متن اصلی */
.ps-tourist__text{
  border-radius: 18px;
  padding: 12px 14px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(148,163,184,.28);
  box-shadow: 0 12px 30px rgba(15,23,42,.06);
}

.ps-tourist__text p{
  margin: 0;
  font-size: 14px;
  line-height: 2;
  color: rgba(31,37,51,.92);
  text-align: justify;
}

/* باکس‌های نکات */
.ps-tourist__boxes{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

/* هر باکس */
.ps-tourist-box{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 12px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.18), transparent 55%),
    #ffffff;
  border: 1px solid rgba(148,163,184,.30);
  box-shadow: 0 12px 28px rgba(15,23,42,.07);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ps-tourist-box:hover{
  transform: translateY(-2px);
  border-color: rgba(214,167,94,.75);
  box-shadow: 0 18px 40px rgba(15,23,42,.10);
}

/* آیکون */
.ps-tourist-box__icon{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  font-size: 20px;
  background: linear-gradient(135deg, rgba(214,167,94,.30), rgba(72,90,133,.16));
  border: 1px solid rgba(214,167,94,.45);
  box-shadow: 0 10px 20px rgba(15,23,42,.10);
}

/* متن داخل باکس */
.ps-tourist-box__body{
  min-width: 0;
}

.ps-tourist-box__title{
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.7;
  color: rgba(15,23,42,.95);
}

.ps-tourist-box__text{
  margin: 0;
  font-size: 12.5px;
  line-height: 1.9;
  color: rgba(75,85,99,.95);
}

/* دکمه مشاوره */
.ps-tourist__actions{
  display: flex;
  justify-content: flex-start;
  margin-top: 2px;
}

.ps-tourist__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  min-height: 46px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 900;
  color: #111827;
  text-decoration: none;

  background:
    radial-gradient(circle at 0 0, rgba(255,255,255,.55), transparent 55%),
    linear-gradient(135deg, #f6d18c, #d6a75e);
  border: 1px solid rgba(214,167,94,.95);
  box-shadow:
    0 14px 34px rgba(214,167,94,.55),
    0 0 0 1px rgba(255,255,255,.75) inset;

  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}

.ps-tourist__btn:hover,
.ps-tourist__btn:focus{
  transform: translateY(-2px);
  color: var(--ps-color-primary);
  background:
    radial-gradient(circle at 0 0, rgba(255,255,255,.70), transparent 55%),
    linear-gradient(135deg, #ffdf9e, #e4b96b);
  box-shadow:
    0 20px 44px rgba(214,167,94,.70),
    0 0 0 1px rgba(255,255,255,.90) inset;
}

/* -------------------------
   Responsive
   ------------------------- */

@media (max-width: 992px){
  .ps-tourist__wrap{
    grid-template-columns: 1fr;
  }
  .ps-tourist__media{
    min-height: 240px;
  }
  .ps-tourist__boxes{
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px){
  .ps-tourist__wrap{
    padding: 12px;
    border-radius: 20px;
  }
  .ps-tourist__media{
    border-radius: 16px;
  }
  .ps-tourist__boxes{
    grid-template-columns: 1fr;
  }
  .ps-tourist__btn{
    width: 100%;
  }
}
/* ===========================
   Tourist Section – CTA Footer Card + Soft Glow Button
   =========================== */

.ps-tourist__actions{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 10px 12px;
  border-radius: 18px;

  background: rgba(255,255,255,.92);
  border: 1px solid rgba(148,163,184,.26);
  box-shadow: 0 12px 30px rgba(15,23,42,.06);

  margin-top: 10px;
}

/* متن اعتماد/راهنما کنار دکمه */
.ps-tourist__actions::before{
  content:"⭐ مشاوره تخصصی + بررسی شرایط بر اساس کشور مقصد";
  font-size: 12.5px;
  font-weight: 800;
  color: rgba(31,37,51,.85);
  line-height: 1.8;
}

/* خود دکمه */
.ps-tourist__btn{
  position: relative;
  z-index: 1;

  min-width: 210px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;

  font-weight: 900;
  font-size: 13px;
  text-decoration: none;

  background: linear-gradient(135deg, #f6d18c, #d6a75e);
  color: #111827;

  border: 1px solid rgba(214,167,94,.95);
  box-shadow:
    0 12px 28px rgba(214,167,94,.40),
    0 0 0 1px rgba(255,255,255,.75) inset;

  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* هاله‌ی نرم پشت دکمه */
.ps-tourist__btn::after{
  content:"";
  position: absolute;
  inset: -10px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(214,167,94,.38), transparent 60%);
  z-index: -1;
  filter: blur(2px);
  opacity: .9;
  animation: psTouristPulseGlow 2.2s ease-in-out infinite;
}

@keyframes psTouristPulseGlow{
  0%,100%{ transform: scale(.98); opacity: .55; }
  50%{ transform: scale(1.03); opacity: .95; }
}

.ps-tourist__btn:hover,
.ps-tourist__btn:focus{
  transform: translateY(-1px);
  box-shadow:
    0 16px 36px rgba(214,167,94,.55),
    0 0 0 1px rgba(255,255,255,.85) inset;
  filter: saturate(1.05);
}

/* موبایل */
@media (max-width: 640px){
  .ps-tourist__actions{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .ps-tourist__actions::before{
    text-align: center;
  }

  .ps-tourist__btn{
    width: 100%;
    min-width: 0;
  }
}
/* =========================================================
   PS FAQ Ultra-Lux (Q solid / A glass) - Visa brand colors
   Paste at END of style.css
   ========================================================= */

.ps-faq-lux{
  --navy: #485a85;   /* سرمه‌ای برند */
  --gold: #d6a75e;   /* طلایی برند */

  --qText: #ffffff;
  --qSub: rgba(255,255,255,.86);

  --aText: rgba(14, 18, 30, .90);
  --aMuted: rgba(14, 18, 30, .72);

  --qBorder: rgba(214,167,94,.42);
  --aBorder: rgba(214,167,94,.32);

  --shadowQ: 0 18px 55px rgba(12, 16, 28, .22);
  --shadowA: 0 26px 75px rgba(12, 16, 28, .18);

  display: grid;
  gap: 14px;
}

.ps-faq-lux__item{ margin:0; padding:0; }
.ps-faq-lux__q{ margin:0; }

/* ---------------- Question (SOLID luxe, NOT glass) ---------------- */
.ps-faq-lux__btn{
  -webkit-tap-highlight-color: transparent;
  appearance: none;
  width: 100%;
  cursor: pointer;

  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap: 12px;

  padding: 16px 16px;
  border-radius: 18px;

  border: 1px solid var(--qBorder);

  /* Solid luxe navy base + gold accents */
  background:
    radial-gradient(900px 240px at 12% 10%, rgba(214,167,94,.32), transparent 60%),
    radial-gradient(900px 240px at 92% 15%, rgba(255,255,255,.10), transparent 58%),
    linear-gradient(135deg, #3c4f7b 0%, var(--navy) 48%, #34466e 100%);

  box-shadow: var(--shadowQ);
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
  color: var(--qText);

  will-change: box-shadow, transform;
}

/* Luxe neon rim (subtle) */
.ps-faq-lux__btn::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius: 20px;
  background:
    linear-gradient(90deg,
      rgba(214,167,94,.0) 0%,
      rgba(214,167,94,.55) 18%,
      rgba(72,90,133,.35) 52%,
      rgba(214,167,94,.55) 82%,
      rgba(214,167,94,.0) 100%);
  filter: blur(10px);
  opacity: .55;
  pointer-events:none;
}

/* Light sweep on hover */
.ps-faq-lux__btn::after{
  content:"";
  position:absolute;
  top:-60%;
  left:-40%;
  width: 80%;
  height: 220%;
  background: linear-gradient(115deg, transparent 0%, rgba(214,167,94,.18) 35%, transparent 70%);
  transform: rotate(12deg);
  opacity: .0;
  pointer-events:none;
}

.ps-faq-lux__btn > *{ position:relative; z-index:1; }

.ps-faq-lux__text{
  flex: 1;
  text-align: right;
  font-weight: 900;
  letter-spacing: -0.2px;
  color: var(--qText);
}

/* focus */
.ps-faq-lux__btn:focus-visible{
  outline: 3px solid rgba(214,167,94,.65);
  outline-offset: 4px;
}

/* hover */
@media (hover:hover){
  .ps-faq-lux__btn:hover{
    box-shadow: 0 24px 70px rgba(12,16,28,.30);
    transform: translateY(-1px);
  }
  .ps-faq-lux__btn:hover::after{
    opacity: 1;
    animation: psFaqSweep 1.05s cubic-bezier(.2,.9,.2,1) both;
  }
}
@keyframes psFaqSweep{
  from{ transform: translateX(-10%) rotate(12deg); }
  to  { transform: translateX(130%) rotate(12deg); }
}

/* opened state: slightly stronger gold */
.ps-faq-lux__item.is-open .ps-faq-lux__btn{
  border-color: rgba(214,167,94,.70);
  box-shadow: 0 26px 80px rgba(12,16,28,.34);
}

/* ---------------- Icon (+ -> minus) ---------------- */
.ps-faq-lux__icon{
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 999px;

  border: 1px solid rgba(214,167,94,.55);
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.18), transparent 55%),
    radial-gradient(circle at 70% 30%, rgba(214,167,94,.35), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.08));

  box-shadow: 0 14px 40px rgba(0,0,0,.18);
  position: relative;

  transform: translateZ(0);
  transition: transform .38s cubic-bezier(.2,.9,.2,1), filter .25s ease, background .25s ease;
}

.ps-faq-lux__icon::before,
.ps-faq-lux__icon::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  background: rgba(255,255,255,.92);
  border-radius: 999px;
}
.ps-faq-lux__icon::before{ width: 18px; height: 2px; }
.ps-faq-lux__icon::after{ width: 2px; height: 18px; }

.ps-faq-lux__item.is-open .ps-faq-lux__icon{
  transform: rotate(-90deg) scale(1.04);
  filter: saturate(1.18);
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.22), transparent 55%),
    radial-gradient(circle at 70% 30%, rgba(214,167,94,.55), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(0,0,0,.10));
}
.ps-faq-lux__item.is-open .ps-faq-lux__icon::after{
  opacity: 0;
  transform: translate(-50%, -50%) scaleY(.12);
}

/* ---------------- Answer (GLASS drawer under question) ---------------- */
.ps-faq-lux__a{
  overflow: hidden;
  padding: 15px;

  margin-top: 10px;
  margin-right: 16px;
  margin-left: 64px;   /* narrower than question */
  border-radius: 16px;

  border: 1px solid var(--aBorder);
  box-shadow: var(--shadowA);

  background:
    radial-gradient(900px 220px at 18% 20%, rgba(214,167,94,.22), transparent 60%),
    radial-gradient(900px 220px at 88% 28%, rgba(72,90,133,.18), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.50));

  position: relative;
  transform: translateZ(0);
}

@supports (backdrop-filter: blur(10px)){
  .ps-faq-lux__a{
    backdrop-filter: blur(16px) saturate(1.10);
    -webkit-backdrop-filter: blur(16px) saturate(1.10);
  }
}

.ps-faq-lux__a::before{
  content:"";
  position:absolute;
  top: 12px;
  bottom: 12px;
  left: 12px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--navy), var(--gold));
  opacity: .95;
}

.ps-faq-lux__a-inner{
  padding: 14px 14px;
  padding-left: 22px;
  color: var(--aMuted);
  line-height: 1.95;
  font-weight: 650;
}
.ps-faq-lux__a-inner p{ margin: 0 0 10px; color: var(--aMuted); }
.ps-faq-lux__a-inner p:last-child{ margin-bottom: 0; }

@media (max-width: 640px){
  .ps-faq-lux__a{
    margin-left: 16px;
    margin-right: 16px;
  }
}

@media (prefers-reduced-motion: reduce){
  .ps-faq-lux__btn,
  .ps-faq-lux__icon{
    transition: none !important;
  }
}
/* ================================
   PS FAQ Color Override (Modern / Eye-Catching)
   Brand-only: Navy #485a85 + Gold #d6a75e (tints/shades)
   Paste AFTER previous FAQ styles
================================== */

.ps-faq-lux{
  --navy: #485a85;
  --gold: #d6a75e;

  /* Derived shades (still same brand, just darker/lighter) */
  --navyDeep: #2f3b5f;     /* deep navy */
  --navyMid:  #3f5081;     /* mid navy */
  --goldSoft: rgba(214,167,94,.35);
  --goldGlow: rgba(214,167,94,.55);
  --navyGlow: rgba(72,90,133,.40);

  --qText: #ffffff;
  --qBorder: rgba(214,167,94,.55);

  --aBorder: rgba(214,167,94,.26);
  --aText: rgba(16, 20, 34, .90);
  --aMuted: rgba(16, 20, 34, .74);

  /* More premium shadows (clean, modern) */
  --shadowQ: 0 18px 50px rgba(14, 18, 30, .26);
  --shadowA: 0 28px 80px rgba(14, 18, 30, .18);
}

/* Question: premium solid navy with gold highlight (NOT glass) */
.ps-faq-lux__btn{
  border-color: var(--qBorder);
  box-shadow: var(--shadowQ);

  background:
    /* gold accent corners */
    radial-gradient(900px 260px at 10% 12%, rgba(214,167,94,.30), transparent 58%),
    radial-gradient(900px 240px at 92% 18%, rgba(214,167,94,.18), transparent 62%),
    /* navy depth */
    linear-gradient(135deg, var(--navyDeep) 0%, var(--navy) 44%, #2a3556 100%);

  color: var(--qText);
}

/* A very modern "top rim" gold line (subtle, luxe) */
.ps-faq-lux__btn{
  position: relative;
}
.ps-faq-lux__btn .ps-faq-lux__text{
  text-shadow: 0 1px 0 rgba(0,0,0,.14);
}
.ps-faq-lux__btn::before{
  opacity: .62;
  background:
    linear-gradient(90deg,
      rgba(214,167,94,0) 0%,
      rgba(214,167,94,.62) 22%,
      rgba(72,90,133,.35) 52%,
      rgba(214,167,94,.62) 78%,
      rgba(214,167,94,0) 100%);
}

/* Hover/focus: cleaner + more "wow" without being loud */
@media (hover:hover){
  .ps-faq-lux__btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 26px 70px rgba(14,18,30,.30);
  }
  .ps-faq-lux__btn:hover::after{
    opacity: 1;
  }
}
.ps-faq-lux__btn:focus-visible{
  outline: 3px solid rgba(214,167,94,.70);
  outline-offset: 4px;
}

/* Open state: slightly stronger gold presence */
.ps-faq-lux__item.is-open .ps-faq-lux__btn{
  border-color: rgba(214,167,94,.78);
  box-shadow: 0 30px 92px rgba(14,18,30,.34);
  background:
    radial-gradient(900px 260px at 12% 10%, rgba(214,167,94,.36), transparent 58%),
    radial-gradient(900px 240px at 92% 18%, rgba(214,167,94,.22), transparent 62%),
    linear-gradient(135deg, #273154 0%, var(--navy) 46%, #222b48 100%);
}

/* Icon: more premium (gold ring + white plus) */
.ps-faq-lux__icon{
  border-color: rgba(214,167,94,.72);
  box-shadow: 0 14px 44px rgba(0,0,0,.22);

  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.16), transparent 52%),
    radial-gradient(circle at 70% 30%, rgba(214,167,94,.40), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.14));
}

/* Open icon: warmer glow */
.ps-faq-lux__item.is-open .ps-faq-lux__icon{
  filter: saturate(1.2);
  box-shadow:
    0 16px 50px rgba(0,0,0,.22),
    0 0 0 6px rgba(214,167,94,.10);
}

/* Answer: glass stays, but toned to brand (navy+gold tint) */
.ps-faq-lux__a{
  border-color: var(--aBorder);
  box-shadow: var(--shadowA);

  background:
    radial-gradient(1000px 260px at 16% 16%, rgba(214,167,94,.20), transparent 60%),
    radial-gradient(900px 240px at 86% 26%, rgba(72,90,133,.18), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.56));
}

.ps-faq-lux__a-inner{
  color: var(--aMuted);
}
.ps-faq-lux__a-inner p{
  color: var(--aMuted);
}

/* Left accent bar: crisp brand gradient */
.ps-faq-lux__a::before{
  opacity: .95;
  background: linear-gradient(180deg, var(--gold) 0%, var(--navy) 100%);
}
/* =========================================================
   PS FAQ — Classic Luxury Color Pack (Brand: Navy/Gold)
   Paste at the END of style.css
========================================================= */

.ps-faq-lux{
  --navy:#485a85;
  --gold:#d6a75e;

  /* Classic luxury shades (still brand family) */
  --navyInk:#2a3356;     /* deep ink */
  --navyVelvet:#354370;  /* velvet navy */
  --navyEdge:rgba(72,90,133,.35);

  --goldEdge:rgba(214,167,94,.68);
  --goldSoft:rgba(214,167,94,.32);
  --goldGlow:rgba(214,167,94,.45);

  --qText:#fff;
  --aText:rgba(16, 20, 34, .88);
  --aMuted:rgba(16, 20, 34, .72);

  --shadowQ:0 18px 56px rgba(10, 12, 20, .28);
  --shadowQOpen:0 28px 86px rgba(10, 12, 20, .34);
  --shadowA:0 28px 90px rgba(10, 12, 20, .18);
}

/* ===== Question (NOT glass) — classic navy enamel with gold frame ===== */
.ps-faq-lux__btn{
  border: 1px solid var(--goldEdge);
  box-shadow: var(--shadowQ);
  color: var(--qText);

  background:
    /* subtle gold “patina” */
    radial-gradient(900px 260px at 18% 12%, rgba(214,167,94,.22), transparent 60%),
    radial-gradient(900px 260px at 85% 20%, rgba(214,167,94,.14), transparent 62%),
    /* deep navy enamel */
    linear-gradient(135deg, var(--navyInk) 0%, var(--navy) 44%, #243055 100%);
}

/* Classic gold top filigree line */
.ps-faq-lux__btn{
  position:relative;
}
.ps-faq-lux__btn::before{
  content:"";
  position:absolute;
  top:10px;
  left:18px;
  right:18px;
  height:1px;
  opacity:.9;
  background: linear-gradient(90deg,
    rgba(214,167,94,0) 0%,
    rgba(214,167,94,.85) 18%,
    rgba(255,255,255,.18) 52%,
    rgba(214,167,94,.85) 82%,
    rgba(214,167,94,0) 100%);
  pointer-events:none;
}

/* Gold inner frame (subtle) */
.ps-faq-lux__btn::after{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:14px;
  border:1px solid rgba(214,167,94,.18);
  pointer-events:none;
  opacity:.9;
}

/* Hover: gentle, “luxury” lift */
@media (hover:hover){
  .ps-faq-lux__btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 26px 78px rgba(10,12,20,.30);
  }
}

/* Focus UX */
.ps-faq-lux__btn:focus-visible{
  outline: 3px solid rgba(214,167,94,.78);
  outline-offset: 4px;
}

/* Open state: slightly richer gold */
.ps-faq-lux__item.is-open .ps-faq-lux__btn{
  border-color: rgba(214,167,94,.85);
  box-shadow: var(--shadowQOpen);
  background:
    radial-gradient(900px 260px at 18% 12%, rgba(214,167,94,.28), transparent 60%),
    radial-gradient(900px 260px at 85% 20%, rgba(214,167,94,.18), transparent 62%),
    linear-gradient(135deg, #232c4d 0%, var(--navy) 46%, #1f2743 100%);
}

/* ===== Icon (plus) — classic gold ring with white mark ===== */
.ps-faq-lux__icon{
  border: 1px solid rgba(214,167,94,.78);
  box-shadow: 0 14px 46px rgba(0,0,0,.22);
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.16), transparent 58%),
    linear-gradient(180deg, rgba(214,167,94,.22), rgba(0,0,0,.12));
}

/* When open: warmer glow */
.ps-faq-lux__item.is-open .ps-faq-lux__icon{
  box-shadow:
    0 16px 54px rgba(0,0,0,.24),
    0 0 0 6px rgba(214,167,94,.10);
}

/* ===== Answer panel — elegant parchment + gold accent (glass stays here) ===== */
.ps-faq-lux__a{
  border: 1px solid rgba(214,167,94,.26);
  box-shadow: var(--shadowA);

  background:
    radial-gradient(900px 260px at 18% 18%, rgba(214,167,94,.16), transparent 60%),
    radial-gradient(900px 260px at 86% 24%, rgba(72,90,133,.12), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.60));
}

.ps-faq-lux__a-inner{ color: var(--aMuted); }
.ps-faq-lux__a-inner p{ color: var(--aMuted); }

/* Classic vertical gold/navy ribbon */
.ps-faq-lux__a::before{
  opacity: .95;
  background: linear-gradient(180deg, var(--gold) 0%, var(--navy) 100%);
}

/* Make answer clearly different from question */
.ps-faq-lux__a{
  filter: saturate(1.02);
}







/* =========================================================
   FINAL MENU PATCH v2 (CSS ONLY)
   - Full width menu items like CTA
   - Stagger animation for items
   - Beautiful hamburger icon (no ugly spans)
   Paste at END of style.css
   ========================================================= */

@media (max-width: 992px){

  /* -----------------------------------------
     (2) MENU PANEL: keep your current behavior, just polish
  ------------------------------------------ */
  .ps-header__nav-area{
    inset-inline: 12px !important;
    border-radius: 22px !important;
    overflow: hidden;
  }

  /* -----------------------------------------
     (2) FULL WIDTH ITEMS (like CTA)
     Fix the "narrow centered pills" issue
  ------------------------------------------ */
  .ps-nav__list{
    width: 100% !important;
    align-items: stretch !important;     /* مهم */
    justify-content: flex-start !important;
  }

  .ps-nav__list > li{
    width: 100% !important;
  }

  .ps-nav__list > li > a{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;  /* مثل دکمه وقت مشاوره، متن وسط */
    text-align: center !important;

    border-radius: 999px !important;
    padding: 12px 14px !important;

    /* Ultra-lux pill */
    background:
      radial-gradient(circle at 18% 20%, rgba(214,167,94,.20), transparent 55%),
      radial-gradient(circle at 90% 0%, rgba(72,90,133,.10), transparent 60%),
      linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.96)) !important;

    border: 1px solid rgba(148,163,184,.22) !important;

    box-shadow:
      0 16px 40px rgba(15,23,42,.08),
      0 0 0 1px rgba(255,255,255,.70) inset !important;

    color: #111827 !important;
    font-weight: 850 !important;

    transform: translateZ(0);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
  }

  .ps-nav__list > li > a:hover,
  .ps-nav__list > li > a:focus{
    transform: translateY(-1px);
    border-color: rgba(214,167,94,.72) !important;
    box-shadow:
      0 22px 55px rgba(15,23,42,.12),
      0 0 0 1px rgba(255,255,255,.82) inset !important;
    filter: saturate(1.03);
  }

  /* خط زیر لینک در موبایل خاموش (چون دکمه داریم) */
  .ps-nav__list > li > a::after{ content: none !important; }

  /* Submenu also full width + luxe */
  .ps-nav__list li .sub-menu{
    width: 100% !important;
    padding: 10px !important;
    border-radius: 18px !important;

    border: 1px dashed rgba(148,163,184,.28) !important;

    background:
      radial-gradient(circle at 0% 0%, rgba(72,90,133,.08), transparent 60%),
      linear-gradient(180deg, #ffffff, #f7f7f9) !important;

    box-shadow: 0 16px 44px rgba(15,23,42,.10) !important;
  }

  .ps-nav__list li .sub-menu a{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;

    border-radius: 999px !important;
    padding: 10px 12px !important;
    border: 1px solid transparent !important;
  }

  .ps-nav__list li .sub-menu a:hover,
  .ps-nav__list li .sub-menu a:focus{
    background: #fff7e6 !important;
    border-color: rgba(214,167,94,.35) !important;
  }

  /* -----------------------------------------
     (1) STAGGER ANIMATION FOR MENU ITEMS
  ------------------------------------------ */
  .ps-nav__list > li{
    opacity: 0;
    transform: translateY(10px) scale(.98);
    filter: blur(1px);
  }

  .ps-header.is-open .ps-nav__list > li{
    animation: psMenuItemIn .42s cubic-bezier(.2,.9,.2,1) both;
  }

  /* delay like luxury stagger */
  .ps-header.is-open .ps-nav__list > li:nth-child(1){ animation-delay: .02s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(2){ animation-delay: .06s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(3){ animation-delay: .10s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(4){ animation-delay: .14s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(5){ animation-delay: .18s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(6){ animation-delay: .22s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(7){ animation-delay: .26s; }
  .ps-header.is-open .ps-nav__list > li:nth-child(8){ animation-delay: .30s; }

  @keyframes psMenuItemIn{
    from{
      opacity: 0;
      transform: translateY(10px) scale(.98);
      filter: blur(2px);
    }
    to{
      opacity: 1;
      transform: translateY(0) scale(1);
      filter: blur(0);
    }
  }

  @media (prefers-reduced-motion: reduce){
    .ps-nav__list > li,
    .ps-header.is-open .ps-nav__list > li{
      animation: none !important;
      opacity: 1 !important;
      transform: none !important;
      filter: none !important;
    }
  }

  /* -----------------------------------------
     (3) BEAUTIFUL HAMBURGER ICON (replace spans)
     - spans hidden so they can't look ugly
     - icon drawn with ::before and ::after
  ------------------------------------------ */

  /* فاصله از لبه + ظاهر دکمه */
  .ps-header__toggle{
    width: 46px !important;
    height: 46px !important;
    border-radius: 999px !important;

    margin-inline-start: 10px !important; /* فاصله از لبه */
    margin-inline-end: 6px !important;

    border: 1px solid rgba(214,167,94,.55) !important;

    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.85), transparent 58%),
      radial-gradient(circle at 80% 85%, rgba(214,167,94,.18), transparent 55%),
      linear-gradient(135deg, #ffffff 0%, #f7f8fb 55%, #eef2ff 100%) !important;

    box-shadow:
      0 16px 42px rgba(15,23,42,.14),
      0 0 0 3px rgba(214,167,94,.10),
      0 1px 0 rgba(255,255,255,.9) inset !important;

    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: transparent;
  }

  /* spanها را کامل مخفی کن تا “زشت” نشوند */
  .ps-header__toggle span{
    display: none !important;
  }

  /* سه خط همبرگر (با یک pseudo و box-shadow) */
  .ps-header__toggle::before{
    content:"";
    position:absolute;
    left: 50%;
    top: 50%;
    width: 20px;
    height: 2px;
    border-radius: 999px;
    transform: translate(-50%, -50%);
    background: linear-gradient(90deg, var(--ps-color-primary), var(--ps-color-accent));
    box-shadow:
      0 -7px 0 0 rgba(72,90,133,.95),
      0  7px 0 0 rgba(214,167,94,.95);
    transition: transform .22s ease, box-shadow .22s ease, width .22s ease;
  }

  /* هاله لوکس پشت آیکون */
  .ps-header__toggle::after{
    content:"";
    position:absolute;
    inset:-10px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(214,167,94,.30), transparent 60%);
    filter: blur(2px);
    opacity: .65;
    z-index: -1;
    transition: opacity .22s ease, transform .22s ease;
  }

  .ps-header__toggle:hover{
    transform: translateY(-1px);
    border-color: rgba(214,167,94,.85) !important;
  }
  .ps-header__toggle:hover::after{
    opacity: .95;
    transform: scale(1.02);
  }

  .ps-header__toggle:focus,
  .ps-header__toggle:focus-visible{
    outline: none !important;
    box-shadow:
      0 0 0 5px rgba(214,167,94,.22),
      0 16px 42px rgba(15,23,42,.16),
      0 1px 0 rgba(255,255,255,.9) inset !important;
  }

  /* حالت X وقتی منو باز است */
  .ps-header.is-open .ps-header__toggle::before{
    width: 22px;
    transform: translate(-50%, -50%) rotate(45deg);
    box-shadow:
      0 0 0 0 rgba(72,90,133,.95),
      0 0 0 0 rgba(214,167,94,.95);
    /* خط دوم (ضربدر) را با یک گرادیان تیزتر می‌سازیم */
    background: linear-gradient(90deg, var(--ps-color-accent), var(--ps-color-primary));
  }

  /* خط دوم ضربدر را با یک pseudo اضافه روی خود دکمه می‌سازیم */
  .ps-header.is-open .ps-header__toggle{
    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.85), transparent 58%),
      radial-gradient(circle at 80% 85%, rgba(214,167,94,.18), transparent 55%),
      linear-gradient(135deg, #ffffff 0%, #f7f8fb 55%, #eef2ff 100%) !important;
  }

  .ps-header.is-open .ps-header__toggle{
    /* یک لایه ظریف برای حس باز بودن */
    box-shadow:
      0 18px 50px rgba(15,23,42,.18),
      0 0 0 4px rgba(214,167,94,.14),
      0 1px 0 rgba(255,255,255,.9) inset !important;
  }

  /* خط دوم ضربدر */
  .ps-header.is-open .ps-header__toggle span{ display:none !important; }
  .ps-header.is-open .ps-header__toggle i{ display:none !important; } /* اگر داخلش آیکون بود */

  /* خط دوم با یک لایه اضافی (با استفاده از background-image روی ::after؟ نه، بهتر: یک خط ساده روی خود دکمه) */
  .ps-header.is-open .ps-header__toggle{
    background-image:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.85), transparent 58%),
      radial-gradient(circle at 80% 85%, rgba(214,167,94,.18), transparent 55%),
      linear-gradient(135deg, #ffffff 0%, #f7f8fb 55%, #eef2ff 100%);
  }

  /* یک خط دوم با pseudo جدید از طریق outline trick: */
  .ps-header.is-open .ps-header__toggle::after{
    opacity: .95;
  }

  /* برای ساخت خط دوم ضربدر، از یک خط واقعی روی خود دکمه استفاده می‌کنیم */
  .ps-header.is-open .ps-header__toggle{
    --_xline: linear-gradient(90deg, var(--ps-color-primary), var(--ps-color-accent));
  }
  .ps-header.is-open .ps-header__toggle{
    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.85), transparent 58%),
      radial-gradient(circle at 80% 85%, rgba(214,167,94,.18), transparent 55%),
      linear-gradient(135deg, #ffffff 0%, #f7f8fb 55%, #eef2ff 100%) !important;
  }
  /* خط دوم را با یک shadow روی ::before شبیه‌سازی می‌کنیم: rotate + بعد یک rotate مخالف با یک border? ساده‌تر: یک خط اضافی با background روی دکمه */
  .ps-header.is-open .ps-header__toggle{
    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.85), transparent 58%),
      radial-gradient(circle at 80% 85%, rgba(214,167,94,.18), transparent 55%),
      linear-gradient(135deg, #ffffff 0%, #f7f8fb 55%, #eef2ff 100%),
      /* خط دوم ضربدر */
      linear-gradient(90deg, transparent 0, transparent calc(50% - 1px), rgba(72,90,133,.0) calc(50% - 1px), rgba(72,90,133,.0) calc(50% + 1px), transparent calc(50% + 1px), transparent 100%) !important;
  }

  /* خط دوم ضربدر واقعی: با یک خط روی دکمه با pseudo داخلی بهتره — ولی چون HTML نداریم،
     این روش سریع و بدون خرابی JS است. */
}
/* === ONLY FIX (v3): Mobile menu items must be FULL WIDTH (no style changes) === */
@media (max-width: 992px){

  /* 1) پنل منو در موبایل: آیتم‌ها باید کش بیایند */
  .ps-header .ps-header__nav-area{
    align-items: stretch !important;
  }

  /* 2) همه UL های داخل ناحیه منو (چه ps-nav__list، چه menu وردپرس) */
  .ps-header .ps-header__nav-area ul,
  .ps-header .ps-header__nav-area .ps-nav__list,
  .ps-header .ps-header__nav-area .menu{
    width: 100% !important;
    align-items: stretch !important;
  }

  /* 3) هر LI تمام عرض */
  .ps-header .ps-header__nav-area ul > li{
    width: 100% !important;
    display: block !important;
    align-self: stretch !important;
  }

  /* 4) خود لینک‌ها تمام عرض (و اگر جایی auto-margin باعث وسط‌چین شدن شده حذفش می‌کنیم) */
  .ps-header .ps-header__nav-area ul > li > a{
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    align-self: stretch !important;
    margin-inline: 0 !important;
  }

  /* 5) اگر آیتم‌ها زیرمنو دارند، آن‌ها هم تمام عرض */
  .ps-header .ps-header__nav-area ul .sub-menu > li,
  .ps-header .ps-header__nav-area ul .sub-menu > li > a{
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    align-self: stretch !important;
  }
}

/* ===========================
   LOGO EDGE PADDING FIX
   Logo should not stick to viewport edge
   Paste at END of style.css
   =========================== */

/* فاصله منطقی لوگو از لبه صفحه (همه سایزها) */
.ps-header__brand{
  padding-inline: 10px;   /* مقدار پایه */
}

/* موبایل: کمی بیشتر که چسبیده دیده نشه */
@media (max-width: 992px){
  .ps-header__brand{
    padding-inline: 14px;
  }
}

/* دسکتاپ: کمی کمتر و شیک‌تر */
@media (min-width: 993px){
  .ps-header__brand{
    padding-inline: 8px;
  }
}



/* =========================================================
   PS BLOG — Ultra Lux (Parastooseir Visa)
   - RTL, minimal DOM impact, PageSpeed friendly
   - Brand only: Navy (#485a85) + Gold (#d6a75e)
   - This block should live at END of style.css
   ========================================================= */

.ps-blog{
  direction: rtl;
  text-align: right;
  margin: 18px 0 56px;
}

/* ---------- Hero ---------- */
.ps-blog-hero{
  border-radius: var(--ps-radius-lg);
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.28);
  box-shadow: 0 18px 44px rgba(15,23,42,.10);
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.16), transparent 60%),
    radial-gradient(circle at 100% 30%, rgba(72,90,133,.14), transparent 62%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(241,245,249,.92));
  padding: 18px 18px;
  margin-bottom: 18px;
  position: relative;
}

.ps-blog-hero__title{
  margin: 0;
  color: #fff;
  font-weight: 900;
  font-size: 1.35rem;
  letter-spacing: -0.2px;
}

/* ---------- Controls (search/filter/sort) ---------- */
.ps-blog-controls{
  margin: 0 0 16px;
  border-radius: var(--ps-radius-lg);
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.30);
  box-shadow: 0 14px 36px rgba(15,23,42,.08);
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.14), transparent 60%),
    radial-gradient(circle at 100% 30%, rgba(72,90,133,.10), transparent 62%),
    #ffffff;
  padding: 14px 14px;
}

.ps-blog-controls__grid{
  display: grid;
  grid-template-columns: 1.2fr .8fr .8fr auto;
  gap: 10px;
  align-items: end;
}

@media (max-width: 980px){
  .ps-blog-controls__grid{
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px){
  .ps-blog-controls__grid{
    grid-template-columns: 1fr;
  }
}

.ps-blog-field__label{
  display: block;
  font-size: 13px;
  font-weight: 800;
  color: rgba(15,23,42,.72);
  margin: 0 0 6px;
}

.ps-blog-field__input,
.ps-blog-field__select{
  width: 100%;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.42);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98));
  box-shadow: 0 10px 26px rgba(15,23,42,.06);
  padding: 12px 12px;
  font-size: 14px;
  color: rgba(15,23,42,.90);
  outline: none;
  transition: border-color var(--ps-transition-fast), box-shadow var(--ps-transition-fast), transform var(--ps-transition-fast);
}

.ps-blog-field__input::placeholder{ color: rgba(15,23,42,.45); }

.ps-blog-field__input:focus,
.ps-blog-field__select:focus{
  border-color: rgba(214,167,94,.82);
  box-shadow:
    0 14px 34px rgba(15,23,42,.10),
    0 0 0 4px rgba(214,167,94,.22);
  transform: translateY(-1px);
}

.ps-blog-controls__submit{
  border-radius: 999px;
  padding: 12px 16px;
  border: 1px solid rgba(214,167,94,.75);
  background:
    radial-gradient(circle at 0 0, rgba(255,255,255,.55), transparent 55%),
    linear-gradient(135deg, #f6d18c, var(--ps-color-accent));
  color: #111827;
  font-weight: 900;
  cursor: pointer;
  box-shadow:
    0 16px 38px rgba(214,167,94,.32),
    0 0 0 1px rgba(255,255,255,.80) inset;
  transition: transform var(--ps-transition-fast), box-shadow var(--ps-transition-fast);
}
.ps-blog-controls__submit:hover{
  transform: translateY(-1px);
  box-shadow:
    0 22px 52px rgba(214,167,94,.38),
    0 0 0 1px rgba(255,255,255,.88) inset;
}
.ps-blog-controls__submit:focus-visible{
  outline: 3px solid rgba(214,167,94,.55);
  outline-offset: 4px;
}

/* ---------- Grid shell ---------- */
.ps-blog-grid{
  border-radius: var(--ps-radius-lg);
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.30);
  box-shadow: 0 14px 36px rgba(15,23,42,.08);
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.10), transparent 60%),
    radial-gradient(circle at 100% 30%, rgba(72,90,133,.08), transparent 62%),
    #ffffff;
}

/* Important: prevent “items stuck at bottom” in some themes */
.ps-blog-grid,
.ps-blog-grid *{
  box-sizing: border-box;
}

.ps-blog-grid__head{
  padding: 14px 14px 10px;
  border-bottom: 1px solid rgba(214,167,94,.28);
  background: linear-gradient(135deg, rgba(253,247,236,.92), rgba(229,235,245,.92));
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.ps-blog-grid__meta{
  font-size: 13px;
  font-weight: 800;
  color: rgba(15,23,42,.70);
}

.ps-blog-grid__inner{
  padding: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-content: start; /* ✅ fixes big blank gaps */
  align-items: start;
}

@media (max-width: 1100px){
  .ps-blog-grid__inner{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .ps-blog-grid__inner{ grid-template-columns: 1fr; }
}

/* ---------- Card ---------- */
.ps-blog-card{
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.28);
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.10), transparent 62%),
    radial-gradient(circle at 100% 30%, rgba(72,90,133,.08), transparent 64%),
    #ffffff;
  box-shadow: 0 14px 34px rgba(15,23,42,.08);
  display: flex;
  flex-direction: column;
  min-height: 0; /* ✅ no weird stretching */
  transition: transform var(--ps-transition-fast), box-shadow var(--ps-transition-fast), border-color var(--ps-transition-fast);
}

.ps-blog-card:hover{
  transform: translateY(-2px);
  border-color: rgba(214,167,94,.55);
  box-shadow: 0 22px 52px rgba(15,23,42,.12);
}

.ps-blog-card__media{
  position: relative;
  background:
    radial-gradient(circle at 20% 15%, rgba(214,167,94,.22), transparent 60%),
    radial-gradient(circle at 80% 25%, rgba(72,90,133,.18), transparent 62%),
    linear-gradient(135deg, rgba(15,23,42,.86), rgba(72,90,133,.86));
  aspect-ratio: 16 / 9;
  max-height: 220px; /* ✅ prevents giant empty header */
  overflow: hidden;
}

.ps-blog-card__media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.ps-blog-card:hover .ps-blog-card__media img{ transform: scale(1.06); }

.ps-blog-card__body{
  padding: 12px 12px 14px;
  display: grid;
  gap: 8px;
}

.ps-blog-card__top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 12px;
  color: rgba(15,23,42,.60);
  font-weight: 800;
}

.ps-blog-chip{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 4px 10px;
  border: 1px solid rgba(148,163,184,.38);
  background: rgba(255,255,255,.86);
  box-shadow: 0 10px 22px rgba(15,23,42,.06);
  color: rgba(15,23,42,.78);
  max-width: 100%;
}
.ps-blog-chip__dot{
  width: 8px;
  height: 8px;
  border-radius: 3px;
  background: var(--ps-color-accent);
  box-shadow: 0 2px 6px rgba(214,167,94,.35);
  flex: 0 0 8px;
}

.ps-blog-card__title{
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  font-weight: 950;
  color: var(--ps-color-primary);
  overflow-wrap: anywhere;   /* ✅ fixes long unbroken text */
  word-break: break-word;
}

.ps-blog-card__title a{
  color: inherit;
  text-decoration: none;
}
.ps-blog-card__title a:hover{ text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }

.ps-blog-card__excerpt{
  margin: 0;
  font-size: 13px;
  line-height: 1.95;
  color: rgba(15,23,42,.70);
  overflow-wrap: anywhere;   /* ✅ fixes long unbroken text */
  word-break: break-word;
}

.ps-blog-card__bottom{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 2px;
}

.ps-blog-readmore{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 8px 12px;
  border: 1px solid rgba(214,167,94,.62);
  background:
    radial-gradient(circle at 0 0, rgba(255,255,255,.55), transparent 55%),
    linear-gradient(135deg, rgba(253,231,185,.92), rgba(214,167,94,.92));
  color: #111827;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 14px 34px rgba(214,167,94,.26);
  transition: transform var(--ps-transition-fast), box-shadow var(--ps-transition-fast);
}
.ps-blog-readmore:hover{
  transform: translateY(-1px);
  box-shadow: 0 20px 46px rgba(214,167,94,.32);
}
.ps-blog-readmore:focus-visible{
  outline: 3px solid rgba(214,167,94,.55);
  outline-offset: 4px;
}

/* ---------- Empty state ---------- */
.ps-blog-empty{
  padding: 16px 14px;
  color: rgba(15,23,42,.70);
  font-weight: 800;
}

/* ---------- Pagination ---------- */
.ps-blog-pagination{
  padding: 14px;
  display: flex;
  gap: 8px;
  justify-content: center;
  flex-wrap: wrap;
  border-top: 1px solid rgba(148,163,184,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,250,252,.92));
}

.ps-blog-pagination a,
.ps-blog-pagination span{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  border-radius: 999px;
  padding: 0 12px;
  border: 1px solid rgba(148,163,184,.42);
  background: #fff;
  color: rgba(15,23,42,.82);
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(15,23,42,.06);
}

.ps-blog-pagination .current{
  border-color: rgba(214,167,94,.85);
  background:
    radial-gradient(circle at 0 0, rgba(255,255,255,.55), transparent 55%),
    linear-gradient(135deg, #f6d18c, var(--ps-color-accent));
  color: #111827;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .ps-blog-card,
  .ps-blog-controls__submit,
  .ps-blog-readmore{
    transition: none !important;
    transform: none !important;
  }
}

<style>
  /* فقط همین سکشن: دکمه‌ها دقیقاً هم‌عرض باکس سفید */
  #embassy-what .ps-tourist__quicklinks{
    margin-top:14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap:12px;

    /* 👇 عرض دقیقاً از روی باکس سفید ست می‌شود */
    width: var(--embassyTextW, 100%);
    max-width: 100%;
    box-sizing: border-box;

    /* مثل باکس متن، از سمت چپ/راست بیرون نزند */
    justify-content: start;
    align-items: center;
  }

  /* خود دکمه‌ها داخل شبکه */
  #embassy-what .ps-tourist__quicklinks .ps-tourist__btn{
    width:100%;
    box-sizing:border-box;
  }

  /* ریسپانسیو (همان منطق قبلی) */
  @media(max-width:820px){
    #embassy-what .ps-tourist__quicklinks{
      grid-template-columns: repeat(2, minmax(0, 1fr));
      width:100%;
    }
  }
  @media(max-width:520px){
    #embassy-what .ps-tourist__quicklinks{
      grid-template-columns: 1fr;
      width:100%;
    }
  }
</style>
<style>
  /* ✅ فقط همین سکشن: سه دکمه هرگز بیرون نمی‌زنند و مجموع عرضشان از باکس سفید بیشتر نمی‌شود */
  #embassy-what .ps-tourist__quicklinks{
    margin-top:14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap:12px;

    /* هم‌عرض باکس سفید (خود باکس داخل همین ستون است) */
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }

  /* ✅ کلید حل مشکل overflow: اجازه بده دکمه‌ها کوچک شوند */
  #embassy-what .ps-tourist__quicklinks .ps-tourist__btn{
    width:100%;
    min-width:0;              /* مهم‌ترین خط */
    box-sizing:border-box;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;   /* اگر متن خیلی بلند شد، بیرون نزنه */
  }

  @media(max-width:820px){
    #embassy-what .ps-tourist__quicklinks{
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media(max-width:520px){
    #embassy-what .ps-tourist__quicklinks{
      grid-template-columns: 1fr;
    }
  }
</style>

/* ==============================
   frVisaAppt  External Style
   Parastooseir Visa
   ============================== */

#frVisaAppt{
  direction: rtl;
  text-align: right;
  max-width: 980px;
  margin: 32px auto;
  padding: 24px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.16), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(72,90,133,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94));
  border: 1px solid rgba(148,163,184,.28);
  box-shadow: 0 22px 60px rgba(15,23,42,.10);
  color: var(--ps-color-dark);
  font-family: inherit;
}

#frVisaAppt .subhead{
  margin: 0 0 22px;
  padding: 18px 20px;
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(253,247,236,.96), rgba(229,235,245,.92));
  border: 1px solid rgba(214,167,94,.35);
  box-shadow: 0 14px 34px rgba(15,23,42,.07);
  font-size: 15px;
  line-height: 2.15;
  text-align: justify;
}

#frVisaAppt .subhead strong,
#frVisaAppt .txt strong,
#frVisaAppt li strong{
  color: var(--ps-color-primary);
  font-weight: 900;
}

#frVisaAppt .block{
  position: relative;
  margin: 18px 0;
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(148,163,184,.26);
  box-shadow: 0 14px 36px rgba(15,23,42,.06);
  overflow: hidden;
}

#frVisaAppt .block::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.10), transparent 50%),
    radial-gradient(circle at 100% 100%, rgba(72,90,133,.08), transparent 55%);
  pointer-events: none;
}

#frVisaAppt .block > *{
  position: relative;
  z-index: 1;
}

#frVisaAppt .sec-title{
  position: relative;
  margin: 0 0 14px;
  padding: 10px 16px 10px 12px;
  border-radius: 16px;
  color: #fff;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.8;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.30), transparent 60%),
    linear-gradient(135deg, #2f3b5f, var(--ps-color-primary));
  box-shadow: 0 16px 38px rgba(72,90,133,.24);
}

#frVisaAppt .sec-title::before{
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 10px;
  border-radius: 3px;
  background: var(--ps-color-accent);
  box-shadow: 0 0 0 5px rgba(214,167,94,.18);
  vertical-align: middle;
}

#frVisaAppt .txt{
  margin: 0 0 14px;
  font-size: 14.5px;
  line-height: 2.1;
  color: rgba(31,37,51,.88);
  text-align: justify;
}

#frVisaAppt .gold-list{
  list-style: none;
  margin: 12px 0 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

#frVisaAppt .gold-list li{
  position: relative;
  padding: 11px 42px 11px 14px;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
  border: 1px solid rgba(148,163,184,.24);
  box-shadow: 0 10px 24px rgba(15,23,42,.045);
  font-size: 14px;
  line-height: 2;
}

#frVisaAppt .gold-list li::before{
  content: "";
  position: absolute;
  right: 16px;
  top: 22px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--ps-color-accent);
  box-shadow: 0 0 0 5px rgba(214,167,94,.18);
}

#frVisaAppt .steps{
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: ps-step;
  display: grid;
  gap: 12px;
}

#frVisaAppt .steps li{
  counter-increment: ps-step;
  position: relative;
  padding: 14px 58px 14px 16px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.12), transparent 55%),
    #ffffff;
  border: 1px solid rgba(148,163,184,.26);
  box-shadow: 0 12px 28px rgba(15,23,42,.06);
  font-size: 14px;
  line-height: 2;
}

#frVisaAppt .steps li::before{
  content: counter(ps-step);
  position: absolute;
  right: 14px;
  top: 16px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background:
    linear-gradient(135deg, var(--ps-color-accent), #f6d18c);
  color: #111827;
  font-weight: 950;
  box-shadow: 0 10px 24px rgba(214,167,94,.38);
}

#frVisaAppt .note{
  margin: 18px 0 0;
  padding: 16px 18px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,167,94,.18), transparent 55%),
    linear-gradient(135deg, #fdf7ec, #e5ebf5);
  border: 1px solid rgba(214,167,94,.38);
  box-shadow: 0 14px 34px rgba(15,23,42,.07);
  font-size: 14px;
  line-height: 2.1;
  color: rgba(31,37,51,.88);
}

#frVisaAppt > .note{
  margin-top: 24px;
  border-color: rgba(72,90,133,.34);
}

@media (max-width: 768px){
  #frVisaAppt{
    margin: 20px 12px;
    padding: 16px;
    border-radius: 20px;
  }

  #frVisaAppt .block{
    padding: 16px;
    border-radius: 18px;
  }

  #frVisaAppt .sec-title{
    font-size: 16px;
    padding: 10px 14px;
  }

  #frVisaAppt .gold-list li,
  #frVisaAppt .steps li{
    font-size: 13.5px;
  }
}
.ps-why-sidebar-middle-image{
  width:100%;
  margin:16px 0;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 18px 45px rgba(31,42,68,.12);
}

.ps-why-sidebar-middle-image a{
  display:block;
  text-decoration:none;
}

.ps-why-sidebar-middle-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius:22px;
}
.ps-why-sidebar-middle-image{
  position: relative;
  width: 100%;
  margin: 18px 0;
  border-radius: 24px;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(214,167,94,.18), rgba(72,90,133,.10));
  border: 1px solid rgba(214,167,94,.35);
  box-shadow: 0 18px 45px rgba(31,42,68,.14);
  isolation: isolate;
}

.ps-why-sidebar-middle-image::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 15%, rgba(255,255,255,.34), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.08));
  pointer-events: none;
  z-index: 1;
}

.ps-why-sidebar-middle-image a{
  display: block;
  text-decoration: none;
}

.ps-why-sidebar-middle-image img{
  display: block;
  width: 100%;
  height: auto;
  min-height: 160px;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .45s ease, filter .45s ease;
}

.ps-why-sidebar-middle-image:hover img{
  transform: scale(1.055);
  filter: saturate(1.08) contrast(1.04);
}

@media (max-width: 768px){
  .ps-why-sidebar-middle-image{
    margin: 14px 0;
    border-radius: 20px;
  }

  .ps-why-sidebar-middle-image img{
    min-height: 130px;
  }
}
/* Tourist image: full image, same height as content, no ugly crop */
@media (min-width: 993px){

  .ps-tourist__wrap{
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.25fr);
    align-items: stretch !important;
  }

  .ps-tourist__media{
    position: relative !important;
    align-self: stretch !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    display: block !important;
    background: #eef2f7;
  }

  .ps-tourist__img-bg{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(18px) saturate(1.15) brightness(.9);
    transform: scale(1.12);
    opacity: .55;
    z-index: 1;
  }

  .ps-tourist__img{
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    filter: none !important;
  }

  .ps-tourist__media::after{
    z-index: 3;
    background:
      radial-gradient(circle at 20% 10%, rgba(255,255,255,.18), transparent 55%),
      linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.10));
  }
}
/* Tourist image professional fit */
@media (min-width: 993px){

  .ps-tourist__wrap{
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: stretch !important;
  }

  .ps-tourist__media{
    width: var(--ps-tourist-img-w, 360px) !important;
    height: var(--ps-tourist-content-h, auto) !important;
    min-height: 0 !important;
    max-height: none !important;
    justify-self: start;
    align-self: stretch;
    overflow: hidden !important;
    border-radius: 18px;
    background: transparent !important;
  }

  .ps-tourist__img{
    width: 100% !important;
    height: 111% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    filter: none !important;
  }
}