/* OnlineTurkeyVisa — homepage v6
   Commercial travel-consultancy convention: navy + warm orange/gold,
   real photography, rounded cards, icon tiles, stat bar. */

:root { --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* ---------- Scroll reveal ---------- */
.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.7s var(--ease-out-expo), transform 0.7s var(--ease-out-expo);
  transition-delay: var(--reveal-delay, 0s);
}
.reveal.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
}

/* ---------- Header ---------- */
#site-header {
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  transition: box-shadow 0.3s ease, border-color 0.3s ease;
}
#site-header.is-scrolled {
  box-shadow: 0 4px 24px rgba(15, 24, 48, 0.08);
  border-bottom-color: #e4e7ee;
}

/* ---------- Hero parallax ---------- */
#hero-media {
  transform: translateY(var(--parallax-y, 0px));
  transition: transform 0.1s linear;
}
@media (prefers-reduced-motion: reduce) { #hero-media { transform: none !important; } }

.btn { transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease; }
.btn:hover { transform: translateY(-2px); }

/* ---------- Cards ---------- */
.card { transition: transform 0.35s var(--ease-out-expo), box-shadow 0.35s var(--ease-out-expo); }
.card:hover { transform: translateY(-5px); box-shadow: 0 24px 48px -16px rgba(15, 24, 48, 0.18); }

/* ---------- Accordion (FAQ) ---------- */
.accordion-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s var(--ease-out-expo);
}
.accordion-item.is-open .accordion-panel { grid-template-rows: 1fr; }
.accordion-panel > div { overflow: hidden; }
.accordion-chevron { transition: transform 0.3s var(--ease-out-expo); }
.accordion-item.is-open .accordion-chevron { transform: rotate(180deg); }

/* ---------- Mobile nav ---------- */
#mobile-nav { transition: opacity 0.3s ease, visibility 0.3s ease; }
#mobile-nav[data-open="false"] { opacity: 0; visibility: hidden; pointer-events: none; }
#mobile-nav[data-open="true"] { opacity: 1; visibility: visible; }
#mobile-nav .panel { transition: transform 0.4s var(--ease-out-expo); transform: translateX(100%); }
#mobile-nav[data-open="true"] .panel { transform: translateX(0); }

/* ---------- Sticky mobile CTA ---------- */
#mobile-cta { transform: translateY(100%); transition: transform 0.4s var(--ease-out-expo); }
#mobile-cta[data-visible="true"] { transform: translateY(0); }

/* ---------- Eligibility form field ---------- */
.select-field { transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.select-field:focus-within { border-color: #f2913a; box-shadow: 0 0 0 4px rgba(242, 145, 58, 0.15); }

/* ---------- Fade-in for real photos ---------- */
img.fade-in-img { opacity: 0; transition: opacity 0.9s ease; }
img.fade-in-img.loaded { opacity: 1; }

/* ---------- Stat numbers ---------- */
.stat-number { font-variant-numeric: tabular-nums; }

/* ---------- Blob shape behind hero photo ---------- */
.hero-blob {
  border-radius: 42% 58% 63% 37% / 47% 41% 59% 53%;
}
