/* ============================================================
   Op. Dr. Ramazan Güler — Responsive (Mobile-First)
   Tüm breakpoint'ler burada.
   ============================================================ */

/* ──────────────────────────────────────────
   ≤ 1280px (Büyük Laptop)
─────────────────────────────────────────── */
@media (max-width: 1280px) {
  :root {
    --section-py: 80px;
    --container-px: 1.5rem;
  }
  .hero__inner { grid-template-columns: 1fr 400px; gap: 2.5rem; }
  .why__layout { gap: 2.4rem; }
  .team__grid { grid-template-columns: repeat(4, 1fr); }
  .footer__grid { grid-template-columns: 1.8fr 1fr 1fr 1.4fr; gap: 2rem; }
}

/* ──────────────────────────────────────────
   ≤ 1024px (Tablet Landscape)
─────────────────────────────────────────── */
@media (max-width: 1024px) {
  :root {
    --nav-height: 64px;
  }

  /* Nav */
  .nav__menu, .nav__cta { display: none; }
  .nav__hamburger { display: flex; }
  .nav__logo-img { height: 40px; }
  .nav__inner { gap: .55rem; }

  /* Mobile Bottom Bar — hamburger ile aynı kırılım */
  .mobile-bottom-bar { display: block !important; visibility: visible; }
  .sticky-cta-tab { display: none; }
  body { padding-bottom: calc(60px + var(--safe-bottom, 0px)); }
  :root { --float-bottom: calc(76px + var(--safe-bottom, 0px)); }
  .wa-float { right: 16px; transition: none; }
  .wa-float__tooltip { display: none; }
  #back-to-top { right: 23px; }
  #cookie-banner {
    bottom: calc(60px + var(--safe-bottom, 0px));
  }
  #toast-container { bottom: calc(72px + var(--safe-bottom, 0px)); }

  /* Why: görsel alta */
  .why__layout { grid-template-columns: 1fr; gap: 2.25rem; }
  .why__visual { position: relative; top: auto; display: block; max-width: 680px; width: 100%; margin-inline: auto; }
  .why__visual-frame { flex: none; height: auto; min-height: 0; aspect-ratio: 3 / 2; }
  .why__visual-badge { left: 12px; }

  /* Hero: görsel + yazı ilk ekran, form altta */
  .hero {
    height: auto;
    min-height: 0;
    max-height: none;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    overflow: visible;
    background: #0b1a33;
    margin-top: 0;
    padding-top: var(--nav-height);
  }
  .hero__landing {
    position: relative;
    inset: auto;
    display: flex;
    flex-direction: column;
    min-height: calc(100svh - var(--nav-height) - 60px - var(--safe-bottom, 0px));
    z-index: 1;
  }
  .hero-stage {
    position: relative;
    inset: auto;
    width: 100%;
    flex: 1 1 auto;
    height: auto;
    min-height: 220px;
    max-height: none;
  }
  .hero-slider { position: absolute; inset: 0; }
  .hero-slide img { object-position: center 28%; }
  .hero-slider__overlay {
    background: linear-gradient(
      180deg,
      rgba(7, 20, 40, .12) 0%,
      rgba(7, 20, 40, .08) 50%,
      rgba(11, 26, 51, .55) 100%
    );
  }
  .hero-slider__ui { top: auto; bottom: 16px; }
  .hero-slider__nav { width: 36px; height: 36px; }
  .hero__intro {
    height: auto;
    flex-shrink: 0;
    display: block;
    padding-top: 1.25rem;
    padding-bottom: 1.35rem;
    pointer-events: auto;
  }
  .hero__inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.35rem;
    margin-top: 0;
    padding: 0 1.5rem 2.5rem;
    position: relative;
    z-index: 5;
    width: 100%;
    pointer-events: auto;
  }
  .hero__content { max-width: none; }
  .hero__trust {
    gap: .55rem;
    padding: .45rem .8rem .45rem .75rem;
  }
  .hero__trust-glogo { height: 18px; }
  .hero__trust-stars { gap: 2px; padding-left: .55rem; }
  .hero__trust-stars svg { width: 14px; height: 14px; }
  .hero__trust-score { font-size: .92rem; }
  .hero__form-wrap {
    max-width: 440px;
    width: 100%;
    margin-inline: auto;
  }

  /* Contact CTA */
  .contact-cta__grid { grid-template-columns: 1fr; gap: 1.75rem; }
  .contact-cta__form { max-width: 420px; margin-inline: auto; width: 100%; }
  .contact-cta { padding-block: 3.25rem; }
  .contact-cta__copy { padding: 1.5rem 1.4rem; }

  /* Process */
  .process__grid { grid-template-columns: repeat(2, 1fr); gap: 2rem; }
  .process__grid::before { display: none; }

  /* Stats */
  .stats__grid { grid-template-columns: repeat(2, 1fr); }
  .stats__item { border-right: none; border-bottom: 1px solid rgba(255,255,255,.08); padding: 2rem; }
  .stats__item:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.08); }
  .stats__item:nth-last-child(-n+2) { border-bottom: none; }

  /* Team */
  .team__grid { grid-template-columns: repeat(2, 1fr); }

  /* Travel */
  .travel__inner { grid-template-columns: 1fr; }
  .travel__bg-img { display: none; }

  /* Contact */
  .contact-section__grid { grid-template-columns: 1fr; }

  /* Footer */
  .footer__grid { grid-template-columns: repeat(2, 1fr); }

  /* Services: tablette 3'lü iki sıra */
  .services__row { flex-wrap: wrap; }
  .service-hex { flex: 0 0 calc((100% - 2.2rem) / 3); width: calc((100% - 2.2rem) / 3); max-width: 200px; }
  .treat-grid { grid-template-columns: repeat(2, 1fr); }

  /* Gallery */
  .gallery__grid { grid-template-columns: repeat(3, 1fr); }

  /* Testimonials — show 2 */
  .testimonial-card { flex-basis: calc((100% - var(--sp-3)) / 2); }

  /* Packages */
  .packages__grid { grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
  .package-card--popular { transform: scale(1.02); }

  /* Before-After: tablet 2 kolon */
  .ba__grid { grid-template-columns: repeat(2, 1fr); }

  /* Accreditations */
  .accreditations__inner { gap: 2rem; }
}

/* ──────────────────────────────────────────
   ≤ 768px (Tablet Portrait / Phablet)
─────────────────────────────────────────── */
@media (max-width: 768px) {
  :root {
    --section-py: 56px;
    --container-px: 1.25rem;
  }

  /* Hero */
  .hero { margin-top: 0; padding-top: var(--nav-height); }
  .hero__landing {
    min-height: calc(100svh - var(--nav-height) - 60px - var(--safe-bottom, 0px));
  }
  .hero-stage {
    min-height: 180px;
    border-radius: 0 0 24px 24px;
    overflow: hidden;
  }
  .hero-slide img { object-position: center 26%; }
  .hero-slider__ui { bottom: 14px; }
  .hero-slider__nav { display: flex; width: 36px; height: 36px; }
  .hero__inner {
    gap: 1.15rem;
    padding: 1.25rem 1.25rem 2rem;
  }
  .hero__title { font-size: clamp(1.95rem, 8vw, 2.5rem); margin-bottom: .65rem; }
  .hero__subtitle { font-size: 1.08rem; margin-bottom: .85rem; max-width: none; line-height: 1.7; }
  .hero__trust {
    gap: .45rem;
    padding: .4rem .7rem .4rem .65rem;
  }
  .hero__trust-glogo { height: 16px; }
  .hero__trust-stars { gap: 2px; padding-left: .5rem; }
  .hero__trust-stars svg { width: 13px; height: 13px; }
  .hero__trust-score { font-size: .88rem; }
  .hero__form-wrap { max-width: none; }
  .form-group--row { grid-template-columns: 1fr; }

  /* Form popup: tam ekran */
  .form-popup {
    padding: 0;
    align-items: stretch;
    justify-content: stretch;
  }
  .form-popup__panel {
    width: 100%;
    max-width: none;
    margin: 0;
    min-height: 100dvh;
    min-height: 100svh;
  }
  .form-popup .hero__form-card {
    border-radius: 0;
    box-shadow: none;
    min-height: 100dvh;
    min-height: 100svh;
    padding-bottom: env(safe-area-inset-bottom);
  }
  .form-popup .hero__form-card::before,
  .form-popup .hero__form-brand { border-radius: 0; }
  .form-popup__close { top: 10px; right: 10px; }

  /* Alan kodu araması: tam ekran */
  .phone-field__dial-sheet-bar { display: flex; }
  .phone-field__dial-dropdown {
    position: fixed;
    inset: 0;
    top: 0; left: 0; right: 0; bottom: 0;
    width: auto;
    max-width: none;
    border-radius: 0;
    border: none;
    transform: none;
    z-index: calc(var(--z-top) + 20);
    display: flex;
    flex-direction: column;
  }
  .phone-field__dial.open .phone-field__dial-dropdown,
  .phone-field__dial-dropdown.is-open {
    transform: none;
    z-index: calc(var(--z-top) + 20);
  }
  body.dial-sheet-open { overflow: hidden; }
  body.dial-sheet-open .wa-float,
  body.dial-sheet-open .mobile-bottom-bar { visibility: hidden; }
  .phone-field__dial-search-wrap { padding: 10px 12px; }
  .phone-field__dial-search {
    font-size: 16px;
    padding: 12px 12px 12px 40px;
    border-radius: 10px;
  }
  .phone-field__dial-search-icon {
    left: 24px;
    top: 10px;
    bottom: 10px;
    width: 18px;
  }
  .phone-field__dial-search-icon svg { width: 18px; height: 18px; }
  .phone-field__dial-list {
    flex: 1;
    max-height: none;
    padding: 8px 8px calc(12px + env(safe-area-inset-bottom));
  }
  .phone-field__dial-item { padding: 12px 12px; font-size: .95rem; }
  .phone-field__dial-item-name { font-size: .95rem; }

  /* Sections */
  .section-header { margin-bottom: 2.5rem; }
  .section-header__eyebrow { padding-inline: 2rem; }
  .services::after,
  .why::after,
  .team::after,
  .before-after-section::after,
  .testimonials::after,
  #faq::after { inset: 16px; }
  .why__layout { grid-template-columns: 1fr; gap: 2rem; }
  .why__visual { max-width: 640px; width: 100%; margin-inline: auto; }
  .why__visual-badge { left: 12px; bottom: 52px; }
  .why__visual::before { inset: 18px -12px -12px 18px; }
  .services__row { gap: 1.35rem .85rem; }
  .service-hex { flex: 0 0 47%; width: 47%; max-width: 210px; }
  .treat-grid { grid-template-columns: 1fr; }
  .process__grid { grid-template-columns: 1fr; max-width: 480px; margin-inline: auto; }

  /* Before After: mobil 1 kolon */
  .ba__grid { grid-template-columns: 1fr; }
  .ba__slider { aspect-ratio: 4/3; }

  /* Journey: 3'lü iki sıra, çizgisiz */
  .journey { --j-node: 72px; --j-svg: 32px; --j-num: 20px; padding-block: 3.5rem; }
  .journey__board { grid-template-columns: repeat(3, 1fr); row-gap: 1.75rem; }
  .journey__line { display: none; }
  .journey__step:nth-of-type(3n)::before,
  .journey__step:nth-of-type(3n)::after { display: none; }
  .journey__title { min-height: 0; font-size: 16px; }
  .journey__hint { font-size: 14.5px; }
  .journey__stats { grid-template-columns: repeat(2, 1fr); gap: 1.5rem 0; max-width: 420px; }
  .journey__stat:nth-child(2)::after { display: none; }
  .journey__stat:nth-child(even)::after { display: none; }

  /* Testimonials — show 1 */
  .testimonial-card { flex-basis: 100%; }
  .testimonials__platforms { gap: 1.15rem 1.25rem; }
  .testimonials__platform { min-width: 0; grid-template-rows: 36px auto auto; }
  .testimonials__platform-logo { height: 26px; max-height: 36px; }
  .testimonials__platform-logo.is-pe { height: 36px; }
  .testimonials__platform-logo.is-google { height: 28px; }
  .testimonials__platform-stars img { width: 14px; height: 14px; }
  .testimonials__platform-meta { font-size: .72rem; }

  /* Gallery */
  .gallery__grid { grid-template-columns: repeat(2, 1fr); }

  /* Team */
  .team__grid { grid-template-columns: repeat(2, 1fr); }

  /* Packages */
  .packages__grid { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; }
  .package-card--popular { transform: none; }

  /* Stats */
  .stats__grid { grid-template-columns: repeat(2, 1fr); }

  .contact-cta__copy { text-align: center; }
  .contact-cta__subtitle { margin-inline: auto; }

  /* Footer */
  .footer__grid { grid-template-columns: 1fr; gap: 2rem; }
  .footer__link-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem 1.5rem;
  }
  .footer__bottom { flex-direction: column; text-align: center; }

  /* Legal */
  .legal__hero { padding: calc(var(--nav-height) + 1.6rem) 0 2.8rem; }
  .legal__title { max-width: none; }
  .legal__content { padding: .65rem 1.2rem 0; }
  .legal__article { grid-template-columns: 2.4rem 1fr; gap: .2rem .75rem; padding: 1.15rem 0 1.2rem; }
  .legal__help { padding: 1.1rem 1.2rem 1.25rem; }

  /* Video */
  .video-play-btn { width: 64px; height: 64px; }
  .video-play-btn svg { width: 26px; height: 26px; }
}

/* ──────────────────────────────────────────
   ≤ 480px (Mobil)
─────────────────────────────────────────── */
@media (max-width: 480px) {
  :root {
    --section-py: 48px;
    --container-px: 1rem;
  }

  /* Hero */
  .hero__title { font-size: clamp(1.85rem, 8vw, 2.3rem); }
  .hero__badge { font-size: 13px; }
  .hero__landing {
    min-height: calc(100svh - var(--nav-height) - 60px - var(--safe-bottom, 0px));
  }
  .hero-stage { min-height: 160px; }
  .hero__intro { padding-top: 1rem; padding-bottom: 1.1rem; }

  /* Why */
  .why__list { grid-template-columns: 1fr; }
  .why__item:nth-last-child(-n+2) { border-bottom: 1px solid rgba(12, 31, 63, .08); }
  .why__item:last-child { border-bottom: none; }
  .why__visual-badge { left: 10px; }

  .legal__article { grid-template-columns: 1fr; }
  .legal__num { font-size: 1.2rem; }

  .journey__board { grid-template-columns: repeat(2, 1fr); row-gap: 1.5rem; }
  .journey__step:nth-of-type(3n)::before,
  .journey__step:nth-of-type(3n)::after { display: block; }
  .journey__step:nth-of-type(2n)::before,
  .journey__step:nth-of-type(2n)::after { display: none; }

  /* Services */
  .service-hex { flex: 0 0 47%; width: 47%; max-width: 190px; }
  .service-hex__title { font-size: .84rem; }

  /* Gallery */
  .gallery__grid { grid-template-columns: repeat(2, 1fr); }

  /* Team */
  .team__grid { grid-template-columns: repeat(2, 1fr); gap: .85rem; }
  .team-card__body { padding: .75rem .5rem .9rem; }
  .team-card__name { font-size: 1rem; }
  .team-card__title { font-size: .64rem; letter-spacing: .08em; }

  /* Process */
  .process__step-num { width: 56px; height: 56px; font-size: 1.5rem; }

  /* Stats */
  .stats__grid { grid-template-columns: 1fr 1fr; }

  /* Accreditations */
  .accreditations__inner { gap: 1.5rem; justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; }

  .nav__sidebar-link { padding: 11px 16px; }
  .nav__sidebar-footer .btn { padding: 12px 20px; }

  /* Forms */
  .form-input, .form-select, .form-textarea { padding: 13px 14px; }

  /* Ba slider */
  .ba__handle-circle { width: 42px; height: 42px; }
  .ba__handle-circle svg { width: 22px; height: 22px; }

  /* Cookie */
  #cookie-banner { flex-direction: column; align-items: flex-start; }
  .cookie-banner__actions { width: 100%; }
  .cookie-banner__actions .btn { flex: 1; }

  /* Toast */
  #toast-container { left: 12px; right: 12px; }
  .toast { max-width: 100%; }
}

/* ──────────────────────────────────────────
   ≥ 1536px (Büyük Ekran)
─────────────────────────────────────────── */
@media (min-width: 1536px) {
  :root {
    --container-max: 1440px;
    --section-py: 112px;
  }
}

/* ──────────────────────────────────────────
   Touch Device Optimizasyonları
─────────────────────────────────────────── */
@media (hover: none) {
  .service-hex:hover,
  .service-card:hover,
  .why__item:hover,
  .team-card:hover,
  .package-card:hover { transform: none; }

  .service-hex:active,
  .service-card:active { transform: scale(.98); }

  .gallery__item-overlay { opacity: 0; }
  .gallery__item:active .gallery__item-overlay { opacity: 1; }
}
