/* ═══════════ IranChinaExpo — استایل‌های اختصاصی ═══════════ */

:root {
  --ink: #0B1220; --crimson: #C8102E; --gold: #D4A24E;
}

/* — پایه — */
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { background: #070D18; }
::selection { background: var(--crimson); color: #fff; }

.wrap { width: 100%; max-width: 80rem; margin-inline: auto; padding-inline: 1rem; }
@media (min-width: 640px)  { .wrap { padding-inline: 1.5rem; } }
@media (min-width: 1024px) { .wrap { padding-inline: 2rem; } }

.section { padding-block: 80px; }
@media (min-width: 640px)  { .section { padding-block: 112px; } }

/* — تیترها — */
.kicker {
  display: inline-flex; align-items: center; gap: .6rem;
  font-size: 12px; font-weight: 800; letter-spacing: .28em;
  text-transform: uppercase; color: var(--gold);
}
.kicker::before { content: ""; width: 34px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold)); flex-shrink: 0; }
[dir="rtl"] .kicker::before { background: linear-gradient(-90deg, transparent, var(--gold)); }
.kicker.justify-center { justify-content: center; }

.h2 { font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.18; font-weight: 900; letter-spacing: -.01em; }
html[lang="zh"] .h2, html[lang="fa"] .h2 { letter-spacing: 0; }

/* — دکمه‌ها — */
.btn {
  display: inline-flex; align-items: center; gap: .55rem;
  border-radius: 999px; padding: .9rem 2rem;
  font-weight: 800; font-size: .95rem; line-height: 1; transition: all .3s;
}
.btn-p { background: var(--crimson); color: #fff; box-shadow: 0 14px 36px -14px rgba(200, 16, 46, .65); }
.btn-p:hover { background: #8F0C22; transform: translateY(-2px); }
.btn-o { border: 1px solid rgba(255, 255, 255, .25); color: #fff; background: rgba(255, 255, 255, .04); backdrop-filter: blur(6px); }
.btn-o:hover { border-color: rgba(212, 162, 78, .7); color: #E8C97A; transform: translateY(-2px); }

/* — فرم — */
.label { display: block; margin-bottom: .5rem; font-size: .85rem; font-weight: 800; color: rgba(255, 255, 255, .7); }
.field {
  width: 100%; border-radius: 14px; font-size: 1rem; color: #fff;
  background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .12);
  padding: .8rem 1rem; transition: .25s;
}
.field:focus {
  outline: none; border-color: rgba(212, 162, 78, .8); background: rgba(255, 255, 255, .08);
  box-shadow: 0 0 0 3px rgba(212, 162, 78, .15);
}
.field::placeholder { color: rgba(255, 255, 255, .35); }
.hp { position: absolute !important; inset-inline-start: -9999px !important; height: 1px; width: 1px; opacity: 0; }

/* — هدر چسبان — */
#siteHeader { transition: background .35s, box-shadow .35s; }
#siteHeader.scrolled {
  background: rgba(7, 13, 24, .88); backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 10px 30px -15px rgba(0, 0, 0, .6);
}
.nav-link { position: relative; padding-block: .4rem; transition: color .25s; }
.nav-link:hover, .nav-link.is-active { color: var(--gold); }
.nav-link::after {
  content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 2px;
  background: var(--gold); transform: scaleX(0); transform-origin: center; transition: transform .3s;
  border-radius: 2px;
}
.nav-link:hover::after, .nav-link.is-active::after { transform: scaleX(1); }

/* — همبرگر — */
.burger { display: grid; gap: 5px; padding: 10px; }
.burger span { display: block; width: 22px; height: 2px; border-radius: 2px; background: #fff; transition: .3s; }
.burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* — هیرو — */
.hero { min-height: 100vh; }
.hero-photo {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; opacity: .38; filter: saturate(1.05) contrast(1.05);
}
.wall { display: block; width: 100%; height: clamp(120px, 22vw, 240px); }
.wm-char { pointer-events: none; }

/* — نوار متحرک — */
.marquee { overflow: hidden; }
.marquee-track {
  display: flex; align-items: center; gap: 3rem;
  width: max-content; padding-block: .9rem;
  animation: mq 32s linear infinite;
}
.marquee:hover .marquee-track { animation-play-state: paused; }
@keyframes mq { to { transform: translateX(-50%); } }

/* — ظهور تدریجی — */
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s cubic-bezier(.2, .7, .2, 1), transform .7s cubic-bezier(.2, .7, .2, 1); }
.reveal.in { opacity: 1; transform: none; }

/* — دکمهٔ بازگشت به بالا — */
.to-top {
  position: fixed; inset-inline-end: 1.25rem; bottom: 1.25rem; z-index: 40;
  display: grid; place-items: center; width: 46px; height: 46px;
  border-radius: 999px; background: var(--crimson); color: #fff;
  box-shadow: 0 10px 30px -10px rgba(200, 16, 46, .7);
  opacity: 0; pointer-events: none; transform: translateY(12px); transition: .35s;
}
.to-top.show { opacity: 1; pointer-events: auto; transform: none; }
.to-top:hover { background: #8F0C22; }

/* — فوتر — */
.footer-h { font-size: .8rem; font-weight: 900; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); }
.f-link { transition: color .25s; }
.f-link:hover { color: var(--gold); }

/* — آیکون‌ها — */
.icon-16 { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* — کاهش حرکت — */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { transition: none; opacity: 1; transform: none; }
  .marquee-track { animation: none; }
}