/* ===== تماس با ما (طرح «Contact») =====
   روی home.css سوار است (رنگ‌ها، هدر، فوتر)؛ فقط بخش‌های خاص این صفحه اینجاست.
   تلفن، ایمیل، آدرس و شبکه‌های اجتماعی را home.js از پنل ادمین (/site-footer) پر می‌کند. */

.blob1 { top: -260px; right: -160px; height: 640px; width: 640px; background: radial-gradient(closest-side, rgba(48,111,87,.14), rgba(48,111,87,0)); }
.blob2 { top: 40px; left: -220px; height: 560px; width: 560px; background: radial-gradient(closest-side, rgba(0,167,157,.09), rgba(0,167,157,0)); }
.hdr-nav a.on { background: var(--mint2); color: var(--gd); }

/* ---------- هیرو ---------- */
.chero { position: relative; margin: 0 auto; max-width: 1200px; padding: 64px 24px 52px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.chero h1 { margin: 14px 0 0; font-size: clamp(32px, 5vw, 56px); font-weight: 900; line-height: 1.3; letter-spacing: -.02em; color: var(--ink); }
.chero > p { margin: 18px 0 0; max-width: 40rem; font-size: clamp(15.5px, 1.5vw, 17.5px); line-height: 2.05; color: var(--muted); text-wrap: balance; }
.c-ask { margin-top: 22px; display: inline-flex; align-items: center; gap: 10px; border-radius: 999px; border: 1px solid #d7e6dc; background: rgba(255,255,255,.85); padding-block: 6px; padding-inline: 6px 16px; font-size: 13.5px; font-weight: 600; color: var(--sub); box-shadow: 0 1px 2px rgba(16,40,32,.04); transition: border-color .2s, color .2s; }
.c-ask:hover { border-color: #a9cbb7; color: var(--gd); }
.c-ask > span { display: grid; flex-shrink: 0; height: 28px; width: 28px; place-items: center; border-radius: 999px; background: var(--grad); }
.c-ask img { height: 14px; display: block; }
.c-ask b { font-weight: 600; color: var(--g); }

/* ---------- راه‌های ارتباط ---------- */
.chan { position: relative; margin: 0 auto; max-width: 1200px; padding: 0 24px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ch-card { position: relative; display: flex; flex-direction: column; border-radius: 24px; border: 1px solid #d9e8df; background: #f0f6f2; padding: 26px; box-shadow: 0 1px 2px rgba(16,40,32,.04), 0 24px 50px -40px rgba(16,48,36,.35); transition: all .25s; }
.ch-card:not(.ch-green):hover { transform: translateY(-3px); border-color: #cfe0d6; box-shadow: 0 30px 60px -36px rgba(16,48,36,.4); }
.ch-ic { position: relative; display: grid; height: 52px; width: 52px; flex-shrink: 0; place-items: center; border-radius: 15px; background: #ffffff; color: var(--g); box-shadow: 0 1px 2px rgba(16,40,32,.06); }
.ch-card h2 { position: relative; margin: 18px 0 0; font-size: 19px; font-weight: 800; color: var(--ink); }
.ch-card > p { position: relative; margin: 6px 0 0; font-size: 14px; line-height: 1.9; color: var(--soft); }
.ch-foot { position: relative; margin-top: auto; padding-top: 18px; }
.ch-phones { display: flex; flex-direction: column; gap: 6px; }
.ch-phones a, .ch-mail a { display: flex; align-items: center; justify-content: space-between; gap: 10px; border-radius: 12px; border: 1px solid #e3ece6; background: #ffffff; padding: 11px 14px; font-size: 16px; font-weight: 800; color: var(--ink); transition: border-color .2s, color .2s; }
.ch-phones a:hover, .ch-mail a:hover { border-color: #b9d3c4; color: var(--gd); }
.ch-go { flex-shrink: 0; font-size: 12px; font-weight: 700; color: var(--g); }
.ch-mail { display: flex; gap: 6px; }
/* ایمیل پنل (Aidaad.platform@gmail.com) در ۱۵.۵ پیکسلِ طرح یک پیکسل بریده می‌شد. */
.ch-mail a { min-width: 0; flex: 1; font-size: 14.5px; }
.ch-mail a > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ch-mail button { display: grid; height: 46px; width: 46px; flex-shrink: 0; place-items: center; border-radius: 12px; border: 1px solid var(--line); background: #ffffff; color: var(--muted); cursor: pointer; padding: 0; transition: all .2s; }
.ch-mail button:hover { border-color: #a9cbb7; color: var(--gd); }
.ch-mail .ic-ok { display: none; }
.ch-mail button.copied { border-color: var(--g); background: var(--g); color: #ffffff; }
.ch-mail button.copied .ic-ok { display: block; }
.ch-mail button.copied .ic-cp { display: none; }
.ch-green { overflow: hidden; border: none; background: linear-gradient(135deg, #337a5e 0%, #27583f 55%, #1b4230 100%); box-shadow: 0 30px 60px -40px rgba(24,64,46,.7); }
.ch-mark { pointer-events: none; position: absolute; bottom: -40px; left: -16px; height: 170px; opacity: .08; }
.ch-green .ch-ic { background: rgba(255,255,255,.14); color: #ffffff; box-shadow: none; }
.ch-green h2 { color: #ffffff; }
.ch-green > p { color: rgba(255,255,255,.8); }
.ch-ticket { display: inline-flex; align-items: center; gap: 8px; border-radius: 12px; background: #ffffff; padding: 11px 18px; font-size: 14.5px; font-weight: 800; color: var(--gd); }
.ch-ticket:hover { background: #f1f7f3; color: var(--gd); }

/* ---------- دفتر مرکزی ---------- */
.office-w { position: relative; margin: 0 auto; max-width: 1200px; padding: 56px 24px 96px; }
.office { overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); border-radius: 28px; border: 1px solid #e3ece6; background: #ffffff; box-shadow: 0 1px 2px rgba(16,40,32,.04), 0 30px 60px -44px rgba(16,48,36,.35); }
.office-t { display: flex; flex-direction: column; align-items: flex-start; padding: 40px; text-align: right; }
.office-t h2 { margin: 14px 0 0; font-size: clamp(22px, 2.6vw, 30px); font-weight: 900; color: var(--ink); }
.of-row { margin-top: 18px; display: flex; align-items: flex-start; gap: 12px; }
.of-row[hidden] { display: none; }
.of-ic { display: grid; height: 46px; width: 46px; flex-shrink: 0; place-items: center; border-radius: 15px; background: var(--mint2); color: var(--g); }
.of-row p { margin: 0; padding-top: 4px; font-size: 15px; line-height: 2; color: var(--sub); }
.of-postal { margin-top: 12px; align-items: center; font-size: 14.5px; color: var(--sub); }
.of-act { margin-top: 24px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.of-route { display: inline-flex; align-items: center; gap: 8px; border-radius: 12px; background: var(--grad); padding: 11px 18px; font-size: 14.5px; font-weight: 700; color: #ffffff; box-shadow: 0 12px 24px -12px rgba(39,88,63,.7); }
.of-route:hover { color: #ffffff; filter: brightness(1.06); }
.office-map { position: relative; min-height: 360px; background: #eef3ef; }
.office-map iframe { position: absolute; inset: 0; height: 100%; width: 100%; border: 0; filter: saturate(.85); }

/* ---------- پرسش‌های پرتکرار ---------- */
.cfaq { position: relative; background: var(--mint); border-top: 1px solid var(--line2); }
.cfaq-in { margin: 0 auto; max-width: 820px; padding: 88px 24px 96px; }
.cfaq-head { display: flex; flex-direction: column; align-items: center; text-align: center; }
.cfaq-head h2 { margin: 14px 0 0; font-size: clamp(24px, 3.4vw, 38px); font-weight: 900; line-height: 1.45; color: var(--ink); }
.faqs { margin-top: 36px; display: flex; flex-direction: column; gap: 10px; }
.faqs details { overflow: hidden; border-radius: 18px; border: 1px solid #e6ece8; background: #ffffff; transition: all .2s; }
.faqs details[open] { border-color: #cfe0d6; box-shadow: 0 18px 40px -30px rgba(16,48,36,.4); }
.faqs summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; cursor: pointer; padding: 18px 20px; list-style: none; font-size: 15.5px; font-weight: 800; color: var(--ink); }
.faqs summary::-webkit-details-marker { display: none; }
.faqs summary:focus-visible { outline: 2px solid var(--g); outline-offset: -2px; border-radius: 18px; }
.fq-ic { display: grid; flex-shrink: 0; height: 30px; width: 30px; place-items: center; border-radius: 10px; background: var(--mint2); color: var(--g); transition: transform .25s; }
.faqs details[open] .fq-ic { background: var(--g); color: #ffffff; transform: rotate(45deg); }
.faqs details p { margin: 0; padding: 0 20px 20px; font-size: 15px; line-height: 2.05; color: var(--muted); animation: rise .3s var(--ease) both; }
.cfaq-more { margin-top: 28px; display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; font-size: 14.5px; color: var(--muted); }
.cfaq-more a { display: inline-flex; align-items: center; border-radius: 999px; border: 1px solid #d7e6dc; background: #ffffff; padding: 6px 14px; font-weight: 800; color: var(--gd); }
.cfaq-more a:hover { background: var(--mint2); }
.cfaq-more span:empty { display: none; }

/* ---------- تبلت: سه کارت در یک ردیف جا نمی‌شوند ---------- */
@media (max-width: 1040px) and (min-width: 721px) {
  .chan { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ch-green { grid-column: 1 / -1; }
}

/* ---------- موبایل ---------- */
@media (max-width: 720px) {
  .chero { padding: 40px 20px 36px; }
  .c-ask { font-size: 12.5px; border-radius: 18px; text-align: right; }
  .chan { padding: 0 16px; grid-template-columns: minmax(0, 1fr); }
  .ch-card { padding: 22px; }
  /* جای ایمیل کامل: برچسب «ارسال» در موبایل برداشته می‌شود (خود ردیف لینک است). */
  .ch-mail .ch-go { display: none; }
  .office-w { padding: 40px 16px 64px; }
  .office { grid-template-columns: minmax(0, 1fr); }
  .office-t { padding: 26px 22px; }
  .office-map { min-height: 260px; }
  .cfaq-in { padding: 64px 20px 72px; }
}
@media (prefers-reduced-motion: reduce) {
  .faqs details p { animation: none; }
}
