/* ============================================================
   Luxury Exhibition Hub - Sepehr Donya
   ============================================================ */
.expo-lux-page {
  --expo-brand: #1f347f;
  --expo-brand-2: #1667aa;
  --expo-accent: #f59e0b;
  --expo-gold: #ffc451;
  --expo-ink: #0b1320;
  --expo-text: #334155;
  --expo-muted: #64748b;
  --expo-soft: #f6f8fc;
  background: #fff;
  color: var(--expo-ink);
  font-family: "Vazirmatn", "Vazir", Tahoma, Arial, sans-serif !important;
}

.expo-main {
  padding-top: 0 !important;
  overflow: hidden;
}

.expo-lux-page a { text-decoration: none; }

.expo-hero {
  position: relative;
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 110px 0 76px;
  overflow: hidden;
  isolation: isolate;
  background: #071120;
}

.expo-hero__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(5,10,24,.92) 0%, rgba(7,17,39,.72) 48%, rgba(9,18,35,.38) 100%),
    radial-gradient(circle at 16% 18%, rgba(245,158,11,.22), transparent 30%),
    radial-gradient(circle at 84% 24%, rgba(28,117,188,.34), transparent 35%),
    url("../img/img-exhibotion/big5-dubai2.jpg") center center / cover no-repeat;
  transform: scale(1.02);
}

.expo-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 28%;
  z-index: -1;
  background: linear-gradient(180deg, rgba(255,255,255,0), #fff 96%);
}

.expo-hero__glass {
  max-width: 790px;
  padding: clamp(24px, 3vw, 42px);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.07)),
    radial-gradient(circle at 8% 0%, rgba(255,196,81,.16), transparent 34%);
  border: 1px solid rgba(255,255,255,.26);
  box-shadow: 0 30px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter: blur(18px) saturate(145%);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
}

.expo-label {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 900;
  line-height: 1.7;
  color: var(--expo-brand);
  background: rgba(31,52,127,.08);
  border: 1px solid rgba(31,52,127,.14);
}

.expo-label--dark,
.expo-label--light {
  color: #fff;
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
}

.expo-hero h1 {
  margin: 14px 0 16px;
  color: #fff;
  font-size: clamp(1.4rem, 2.35vw, 2.25rem) !important;
  font-weight: 950;
  line-height: 1.75;
  letter-spacing: -.45px;
  text-shadow: 0 4px 24px rgba(0,0,0,.34);
}

.expo-hero p,
.expo-section-head p,
.expo-proof-grid p,
.expo-event-card p,
.expo-domestic__panel p,
.expo-domestic-list p,
.expo-final-box p {
  margin: 0;
  font-size: .88rem;
  font-weight: 500;
  line-height: 2;
  text-align: right;
}

.expo-hero p { color: rgba(255,255,255,.87); max-width: 700px; }

.expo-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.expo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 20px;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 950;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease;
}

.expo-btn:hover { transform: translateY(-2px); }
.expo-btn--primary {
  color: #101828 !important;
  background: linear-gradient(90deg, #F59E0B, #ffc451);
  border: 1px solid rgba(255,196,81,.42);
  box-shadow: 0 14px 30px rgba(245,158,11,.24);
}
.expo-btn--ghost {
  color: #fff !important;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.24);
}
.expo-btn--ghost:hover { color: #ffc451 !important; }

.expo-video-card {
  max-width: 340px;
  margin-inline: auto;
  overflow: hidden;
  border-radius: 22px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.24);
  box-shadow: 0 26px 74px rgba(0,0,0,.32);
  backdrop-filter: blur(16px) saturate(145%);
  -webkit-backdrop-filter: blur(16px) saturate(145%);
}

.expo-video-card__media {
  aspect-ratio: 16 / 9;
  background: #071120;
}
.expo-video-card__media video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.expo-video-card__body {
  padding: 12px 15px 14px;
}
.expo-video-card__body b {
  display: block;
  margin-bottom: 4px;
  color: #ffc451;
  font-size: .82rem;
  font-weight: 950;
  line-height: 1.8;
}
.expo-video-card__body span {
  display: block;
  color: rgba(255,255,255,.84);
  font-size: .72rem;
  line-height: 1.9;
}

.expo-section { padding: 58px 0; position: relative; }
.expo-section-head { max-width: 850px; margin: 0 auto 30px; text-align: center; }
.expo-section-head .expo-label { margin-inline: auto; }
.expo-section-head h2,
.expo-domestic__panel h2,
.expo-final-box h2 {
  margin: 12px 0 12px;
  color: #101828;
  font-size: clamp(1.16rem, 1.65vw, 1.62rem) !important;
  font-weight: 950;
  line-height: 1.75;
  letter-spacing: -.35px;
}
.expo-section-head p { color: #526174; text-align: center; }

.expo-proof {
  background:
    radial-gradient(circle at 14% 20%, rgba(31,52,127,.08), transparent 32%),
    linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}
.expo-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.expo-proof-grid article {
  min-height: 210px;
  padding: 22px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, #fff, #f8fbff),
    radial-gradient(circle at 88% 0, rgba(245,158,11,.10), transparent 34%);
  border: 1px solid rgba(31,52,127,.10);
  box-shadow: 0 14px 34px rgba(15,23,42,.06);
}
.expo-proof-grid span {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--expo-brand), var(--expo-brand-2));
  font-size: .82rem;
  font-weight: 950;
}
.expo-proof-grid h3,
.expo-event-card h3,
.expo-domestic-list h3 {
  margin: 0 0 9px;
  color: #101828;
  font-size: .96rem !important;
  font-weight: 950;
  line-height: 1.75;
}
.expo-proof-grid p { color: #64748b; font-size: .80rem; }

.expo-slider-section { background: #fff; }
.expo-gallery-shell {
  padding: 28px;
  border-radius: 30px;
  background:
    linear-gradient(135deg, rgba(31,52,127,.08), rgba(255,255,255,.88)),
    radial-gradient(circle at 92% 8%, rgba(245,158,11,.14), transparent 32%);
  border: 1px solid rgba(31,52,127,.12);
  box-shadow: 0 22px 60px rgba(15,23,42,.08);
}
.expo-gallery-intro {
  max-width: 760px;
  margin: 0 auto 20px;
  text-align: center;
}
.expo-gallery-intro .expo-label { margin-inline: auto; }
.expo-gallery-intro h2 {
  margin: 12px 0 10px;
  color: #101828;
  font-size: clamp(1.14rem, 1.5vw, 1.52rem) !important;
  font-weight: 950;
  line-height: 1.75;
}
.expo-gallery-intro p { color: #526174; font-size: .84rem; line-height: 2; }
.expo-gallery-slider { padding: 8px 0 6px; }
.expo-gallery-slider .swiper-slide a {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 24px;
  background: #071120;
  box-shadow: 0 18px 42px rgba(15,23,42,.16);
}
.expo-gallery-slider img {
  width: 100%;
  height: 340px;
  display: block;
  object-fit: cover;
  transition: transform .45s ease, filter .45s ease;
}
.expo-gallery-slider a:hover img { transform: scale(1.04); filter: saturate(1.05); }
.expo-gallery-slider span {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  padding: 7px 13px;
  border-radius: 999px;
  color: #fff;
  background: rgba(0,0,0,.46);
  border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: .76rem;
  font-weight: 900;
}
.expo-slider-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 20px;
}
.expo-swiper-prev,
.expo-swiper-next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(31,52,127,.16);
  background: #fff;
  color: var(--expo-brand);
  box-shadow: 0 10px 22px rgba(15,23,42,.08);
}
.expo-gallery-slider .swiper-pagination { position: static; width: auto; }
.expo-gallery-slider .swiper-pagination-bullet-active { background: var(--expo-accent); }

.expo-international {
  background:
    radial-gradient(circle at 16% 18%, rgba(245,158,11,.16), transparent 32%),
    radial-gradient(circle at 90% 78%, rgba(28,117,188,.22), transparent 34%),
    linear-gradient(135deg, #071120, #111b2e);
}
.expo-section-head--light h2,
.expo-section-head--light p { color: #fff; }
.expo-section-head--light p { color: rgba(255,255,255,.82); }
.expo-event-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.expo-event-card {
  min-height: 245px;
  padding: 20px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 18px 46px rgba(0,0,0,.20);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.expo-event-card small {
  display: inline-flex;
  margin-bottom: 12px;
  color: #101828;
  background: linear-gradient(90deg, #F59E0B, #ffc451);
  padding: 5px 10px;
  border-radius: 999px;
  font-size: .70rem;
  font-weight: 950;
}
.expo-event-card h3 { color: #fff; }
.expo-event-card p { color: rgba(255,255,255,.78); font-size: .78rem; }

.expo-domestic {
  background:
    radial-gradient(circle at 12% 14%, rgba(31,52,127,.08), transparent 34%),
    linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}
.expo-domestic__panel {
  padding: 28px;
  border-radius: 26px;
  background: #fff;
  border: 1px solid rgba(31,52,127,.10);
  box-shadow: 0 18px 44px rgba(15,23,42,.07);
}
.expo-domestic__panel p { color: #526174; }
.expo-domestic-list {
  display: grid;
  gap: 12px;
}
.expo-domestic-list article {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(31,52,127,.10);
  box-shadow: 0 12px 28px rgba(15,23,42,.05);
}
.expo-domestic-list span {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #101828;
  background: linear-gradient(90deg, #F59E0B, #ffc451);
  font-weight: 950;
}
.expo-domestic-list p { color: #64748b; font-size: .80rem; }

.expo-final-cta {
  background: #fff;
  padding-bottom: 74px;
}
.expo-final-box {
  display: grid;
  grid-template-columns: 1fr 210px;
  gap: 24px;
  align-items: center;
  padding: 28px;
  border-radius: 28px;
  background:
    radial-gradient(circle at 12% 18%, rgba(245,158,11,.18), transparent 32%),
    linear-gradient(135deg, #071120, #111b2e);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 24px 70px rgba(15,23,42,.16);
}
.expo-final-box h2 { color: #fff; }
.expo-final-box p { color: rgba(255,255,255,.82); max-width: 760px; }

@media (max-width: 1199.98px) {
  .expo-event-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
  .expo-hero { min-height: auto; padding: 102px 0 58px; }
  .expo-video-card { max-width: 320px; }
  .expo-proof-grid { grid-template-columns: 1fr; }
  .expo-final-box { grid-template-columns: 1fr; }
  .expo-final-box .expo-btn { width: fit-content; }
}

@media (max-width: 767.98px) {
  .expo-gallery-slider img { height: 270px; }
  .expo-event-grid { grid-template-columns: 1fr; }
}

@media (max-width: 575.98px) {
  .expo-hero { padding: 90px 0 46px; }
  .expo-hero__glass,
  .expo-gallery-shell,
  .expo-domestic__panel,
  .expo-final-box { padding: 20px; border-radius: 20px; }
  .expo-btn { width: 100%; }
  .expo-video-card { max-width: 286px; }
  .expo-section { padding: 44px 0; }
  .expo-gallery-slider img { height: 230px; }
  .expo-domestic-list article { grid-template-columns: 46px 1fr; padding: 15px; }
  .expo-domestic-list span { width: 40px; height: 40px; }
  .expo-final-box .expo-btn { width: 100%; }
}

/* ============================================================
   Compact Premium Revision - Single Frame Gallery + Vazirmatn
   ============================================================ */
@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-Medium.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

.expo-lux-page,
.expo-lux-page * {
  font-family: "Vazirmatn", "Vazir", Tahoma, Arial, sans-serif !important;
}

.expo-hero {
  min-height: 74vh !important;
  padding: 96px 0 48px !important;
}

.expo-hero__glass {
  max-width: 700px !important;
  padding: 26px 30px !important;
  border-radius: 20px !important;
}

.expo-hero h1 {
  font-size: clamp(1.25rem, 1.95vw, 1.76rem) !important;
  line-height: 1.85 !important;
}

.expo-hero p {
  font-size: .84rem !important;
  line-height: 2 !important;
}

.expo-video-card {
  max-width: 286px !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.28) !important;
}

.expo-video-card__body {
  padding: 9px 12px 11px !important;
}

.expo-video-card__body b {
  font-size: .76rem !important;
}

.expo-video-card__body span {
  font-size: .66rem !important;
  line-height: 1.75 !important;
}

.expo-section {
  padding: 42px 0 !important;
}

.expo-proof-grid {
  gap: 12px !important;
}

.expo-proof-grid article {
  min-height: 150px !important;
  padding: 18px !important;
}

.expo-slider-section {
  background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%) !important;
}

.expo-gallery-shell {
  max-width: 980px !important;
  margin-inline: auto !important;
  padding: 22px !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 10% 10%, rgba(245,158,11,.12), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(238,244,255,.82)) !important;
  border: 1px solid rgba(31,52,127,.14) !important;
  box-shadow: 0 18px 48px rgba(15,23,42,.08) !important;
}

.expo-gallery-intro {
  max-width: 720px !important;
  margin-bottom: 16px !important;
}

.expo-gallery-intro h2 {
  font-size: clamp(1.08rem, 1.35vw, 1.34rem) !important;
  line-height: 1.75 !important;
  margin: 10px 0 8px !important;
}

.expo-gallery-intro p {
  font-size: .80rem !important;
  line-height: 1.9 !important;
}

.expo-gallery-slider {
  width: min(100%, 760px) !important;
  margin-inline: auto !important;
  padding: 0 0 2px !important;
  overflow: hidden !important;
  border-radius: 22px !important;
}

.expo-gallery-slider .swiper-wrapper,
.expo-gallery-slider .swiper-slide {
  align-items: stretch !important;
}

.expo-gallery-slider .swiper-slide a {
  width: 100% !important;
  height: 100% !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.14) !important;
}

.expo-gallery-slider img {
  width: 100% !important;
  height: 390px !important;
  object-fit: cover !important;
  object-position: center !important;
}

.expo-gallery-slider span {
  right: 18px !important;
  bottom: 18px !important;
  background: rgba(6,12,28,.62) !important;
  border-color: rgba(255,255,255,.20) !important;
  font-size: .74rem !important;
}

.expo-slider-controls {
  margin-top: 14px !important;
}

.expo-swiper-prev,
.expo-swiper-next {
  width: 36px !important;
  height: 36px !important;
}

.expo-international,
.expo-domestic {
  padding-top: 46px !important;
  padding-bottom: 46px !important;
}

.expo-section-head {
  margin-bottom: 20px !important;
}

.expo-section-head h2 {
  font-size: clamp(1.08rem, 1.45vw, 1.42rem) !important;
}

.expo-event-card,
.expo-domestic__panel,
.expo-final-box {
  border-radius: 22px !important;
}

.expo-event-card {
  min-height: 205px !important;
  padding: 20px !important;
}

.expo-domestic__panel {
  padding: 24px !important;
}

@media (max-width: 991.98px) {
  .expo-hero { padding: 92px 0 44px !important; }
  .expo-video-card { max-width: 270px !important; }
  .expo-gallery-slider img { height: 330px !important; }
}

@media (max-width: 575.98px) {
  .expo-hero { padding: 86px 0 38px !important; }
  .expo-hero__glass,
  .expo-gallery-shell,
  .expo-domestic__panel,
  .expo-final-box { padding: 18px !important; border-radius: 18px !important; }
  .expo-video-card { max-width: 250px !important; }
  .expo-gallery-slider { border-radius: 18px !important; }
  .expo-gallery-slider .swiper-slide a { border-radius: 18px !important; }
  .expo-gallery-slider img { height: 245px !important; }
  .expo-slider-controls { gap: 10px !important; }
}


/* ============================================================
   Persian refinement: unified Vazirmatn, RTL, soft actions
   ============================================================ */
@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-Regular.woff2") format("woff2"),
       url("../fonts/Vazirmatn-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-Medium.woff2") format("woff2"),
       url("../fonts/Vazirmatn-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-Bold.woff2") format("woff2"),
       url("../fonts/Vazirmatn-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn-ExtraBold.woff2") format("woff2"),
       url("../fonts/Vazirmatn-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

.expo-lux-page,
.expo-lux-page * {
  direction: rtl !important;
  font-family: "Vazirmatn", "Vazir", Tahoma, Arial, sans-serif !important;
  letter-spacing: 0 !important;
}

.expo-lux-page {
  text-align: right !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.expo-hero h1,
.expo-section-head h2,
.expo-gallery-intro h2,
.expo-domestic__panel h2,
.expo-final-box h2 {
  font-size: clamp(1.06rem, 1.34vw, 1.25rem) !important;
  line-height: 1.9 !important;
  font-weight: 800 !important;
}

.expo-proof-grid h3,
.expo-event-card h3,
.expo-domestic-list h3,
.expo-video-card__body b {
  font-size: .92rem !important;
  line-height: 1.9 !important;
  font-weight: 800 !important;
}

.expo-hero p,
.expo-section-head p,
.expo-proof-grid p,
.expo-event-card p,
.expo-domestic__panel p,
.expo-domestic-list p,
.expo-final-box p,
.expo-gallery-intro p,
.expo-video-card__body span {
  font-size: .82rem !important;
  line-height: 2.05 !important;
  font-weight: 400 !important;
  text-align: right !important;
}

.expo-section-head,
.expo-gallery-intro {
  text-align: center !important;
}

.expo-section-head p,
.expo-gallery-intro p {
  text-align: center !important;
}

.expo-label {
  font-size: .72rem !important;
  font-weight: 700 !important;
}

.expo-btn {
  font-size: .78rem !important;
  font-weight: 700 !important;
  min-height: 40px !important;
  padding: 8px 18px !important;
  box-shadow: none;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    background .18s ease,
    color .18s ease,
    border-color .18s ease !important;
}

.expo-btn:hover {
  transform: translateY(-1px) !important;
}

.expo-btn--primary:hover {
  background: linear-gradient(90deg, #ffc451, #ffe2a0) !important;
  box-shadow: 0 10px 24px rgba(245, 158, 11, .20) !important;
}

.expo-btn--ghost:hover {
  background: rgba(255, 255, 255, .15) !important;
  border-color: rgba(255, 196, 81, .34) !important;
}

.expo-proof-grid article,
.expo-event-card,
.expo-domestic__panel,
.expo-domestic-list article,
.expo-gallery-shell,
.expo-final-box,
.expo-hero__glass,
.expo-video-card {
  transition: transform .20s ease, box-shadow .20s ease, border-color .20s ease, background .20s ease !important;
}

.expo-proof-grid article:hover,
.expo-event-card:hover,
.expo-domestic-list article:hover {
  transform: translateY(-2px) !important;
}

.expo-proof-grid article,
.expo-domestic-list article {
  position: relative;
  overflow: hidden;
}

.expo-proof-grid article::after,
.expo-domestic-list article::after {
  content: "";
  position: absolute;
  inset: auto 18px 0 18px;
  height: 3px;
  border-radius: 99px 99px 0 0;
  background: linear-gradient(90deg, rgba(245,158,11,.65), rgba(28,117,188,.45));
  opacity: .75;
}

.expo-gallery-slider span {
  left: auto !important;
  right: 18px !important;
  font-size: .72rem !important;
}

.expo-event-card small {
  font-size: .68rem !important;
  font-weight: 700 !important;
}

.expo-swiper-prev,
.expo-swiper-next {
  transition: transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease !important;
}

.expo-swiper-prev:hover,
.expo-swiper-next:hover {
  transform: translateY(-1px) !important;
  background: #fff8e5 !important;
  color: #7a4f00 !important;
}

@media (max-width: 575.98px) {
  .expo-hero h1,
  .expo-section-head h2,
  .expo-gallery-intro h2,
  .expo-domestic__panel h2,
  .expo-final-box h2 {
    font-size: 1.06rem !important;
  }
}
