/* =========================================================================
   Responsive — 1440 / 1180 / 1024 / 768 / 430 / 375
   ========================================================================= */

@media (max-width: 1180px) {
  .statement-block { grid-template-columns: 1fr; gap: var(--space-sm); }
  .footer-cols { grid-template-columns: repeat(2, 1fr); gap: var(--space-lg) var(--space-md); }
  .pdp-meta { grid-template-columns: repeat(2, 1fr); }
  .svc-row { grid-template-columns: 64px minmax(0, 1fr) 40px; }
  .svc-row__desc { display: none; }
}

@media (max-width: 1024px) {
  .main-nav { display: none; }
  .menu-toggle { display: inline-flex; }
  .header-actions .phone-link,
  .header-actions .btn { display: none; }

  .showcase__row--a, .showcase__row--b { grid-template-columns: 1fr; gap: var(--space-lg); }
  .project-card--tall .project-card__media { aspect-ratio: 4 / 3; }

  .about-split { grid-template-columns: 1fr; gap: var(--space-md); }
  .about-split__media img { aspect-ratio: 4 / 3; }
  .about-split__caption { position: static; max-width: none; padding: var(--space-sm) 0 0; }

  .service-block, .service-block--rev { grid-template-columns: 1fr; gap: var(--space-md); }
  .service-block--rev .service-block__media { order: 0; }

  .contact-split { grid-template-columns: 1fr; }
  .intro-band__grid { grid-template-columns: 1fr; gap: var(--space-lg); }
  /* Alt alta düşen düzende logo ortada — hale bandın yuvarlak köşesinden
     taşmasın diye sola yaslanmıyor. */
  .intro-band__logo { justify-self: center; }
  .pdp-statement { grid-template-columns: 1fr; gap: var(--space-sm); }
  .history__row { grid-template-columns: 1fr 2fr; row-gap: 10px; }
  .history__text { grid-column: 1 / -1; }
  .svc-preview { display: none; }
}

@media (max-width: 860px) {
  .figures { grid-template-columns: repeat(2, 1fr); }
  .figures > div:nth-child(odd) { border-left: 0; padding-left: 0; }
  .figures > div:nth-child(3), .figures > div:nth-child(4) { border-top: 1px solid var(--color-line-dark); }

  .timeline { grid-template-columns: 1fr; }
  .timeline::before, .timeline__progress { left: 5px; right: auto; top: 0; bottom: 0; width: 1px; height: auto; }
  .timeline.is-in .timeline__progress { width: 1px; height: 100%; transition: height 1.6s var(--ease); }
  .timeline__step { padding-top: 0; padding-left: var(--space-md); padding-bottom: var(--space-md); }
  .timeline__step::before { left: 0; top: 4px; }

  .principles { grid-template-columns: 1fr; }
  .principles > div:nth-child(even) { padding-left: 0; border-left: 0; }

  .project-grid { grid-template-columns: 1fr; gap: var(--space-lg); }
  .project-grid .project-card:nth-child(4n+2),
  .project-grid .project-card:nth-child(4n+3) { margin-top: 0; }

  .pdp-gallery { grid-template-columns: 1fr; gap: var(--space-sm); }
  .pdp-gallery .g-wide, .pdp-gallery .g-half { grid-column: auto; }
  .pdp-gallery .g-wide img { aspect-ratio: 16 / 10; }

  .form-grid { grid-template-columns: 1fr; }
  .spec-list { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  :root { --header-h: 84px; --header-h-stuck: 64px; }
  .brand { height: 40px; }
  .is-stuck .brand { height: 34px; }

  /* Proje kapağında görsel tam kadraj görünür; başlık ayrı koyu alanda okunur. */
  .pdp-hero {
    min-height: 0; display: block; padding: 0;
    background: var(--color-bg-dark);
  }
  .pdp-hero::after { display: none; }
  .pdp-hero__media {
    position: relative; inset: auto; z-index: 0;
    width: 100%; aspect-ratio: 16 / 10;
  }
  .pdp-hero__media img { width: 100%; height: 100%; object-fit: cover; }
  .pdp-hero > .wrap { padding-block: 26px 32px; }
  .pdp-hero h1 { font-size: clamp(2.25rem, 11vw, 3.2rem); }

  .hero { min-height: 92svh; }
  .hero__inner { max-width: none; }
  .hero__foot { flex-direction: column; align-items: stretch; gap: var(--space-sm); }
  .hero__scroll { display: none; }
  /* Masaüstündeki marka imzası mobilde de içerik kartı olarak görünür. */
  .intro-band__logo {
    --logo-w: min(68vw, 250px);
    display: grid; width: 100%; margin-top: 36px; padding: 26px 20px;
    border: 1px solid rgba(23, 69, 107, .10);
    border-radius: var(--radius-lg);
    background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(220,236,247,.72));
    box-shadow: 0 16px 42px rgba(23, 69, 107, .10);
  }
  .intro-band__grid { gap: 0; }
  .intro-band__slogan { font-size: clamp(2.9rem, 12.5vw, 4.2rem); max-width: none; }
  .intro-band .lead { font-size: 1.06rem; max-width: none; }
  .btn-group .btn { width: 100%; }

  .svc-row { grid-template-columns: 44px minmax(0, 1fr) 20px; gap: var(--space-xs); }
  .svc-row:hover .svc-row__title { transform: none; }

  .project-card__body { flex-direction: column; gap: var(--space-xs); }
  .project-card__go { margin-top: 0; }

  .footer-cols { grid-template-columns: 1fr; gap: var(--space-md); }
  .footer-bottom { flex-direction: column; align-items: flex-start; }

  .pdp-meta { grid-template-columns: 1fr; }
  .pdp-nav { flex-direction: column; }
  .pdp-nav .is-right { text-align: left; }

  .float-actions {
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
  }
  .float-btn { width: 50px; height: 50px; }
}

@media (max-width: 400px) {
  .figures { grid-template-columns: 1fr; }
  .figures > div { border-left: 0; padding-left: 0; border-top: 1px solid var(--color-line-dark); }
  .figures > div:first-child { border-top: 0; }
}

/* Hareket azaltma tercihi */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .rv, .reveal-line > span, .fade-in { opacity: 1 !important; transform: none !important; }
  .rv-img { opacity: 1 !important; transform: none !important; }

}

/* Yazdırma */
@media print {
  .site-header, .drawer, .float-actions, .cta-block, .hero__scroll { display: none !important; }
  body { background: #fff; color: #000; }
  .section { padding-block: 16px; }
  .site-footer { background: #fff; color: #000; }
}

/* Proje haritası */
@media (max-width: 1024px) {
  .map-split { grid-template-columns: 1fr; }
  .map-frame { min-height: 340px; }
}
@media (max-width: 640px) {
  .map-frame { min-height: 300px; }
  /* Kavisler mobilde biraz küçülsün */
  :root { --radius-xl: 26px; --radius-lg: 18px; }
  .cta-block, .section--dark, .section--charcoal { margin-inline: 14px; }
}

/* Proje listesi */
@media (max-width: 1180px) {
  .project-row { grid-template-columns: 220px minmax(150px, 1fr) minmax(0, 1.2fr) 132px; gap: clamp(18px, 2.4vw, 36px); }
  .project-row__go { width: 132px; height: 132px; font-size: var(--fs-xs); }
}
@media (max-width: 860px) {
  .project-row {
    grid-template-columns: 150px 1fr;
    grid-template-areas: "media name" "media text" "go go";
    align-items: start; row-gap: 12px;
  }
  .project-row__media { grid-area: media; }
  .project-row__name { grid-area: name; }
  .project-row__text { grid-area: text; }
  .project-row__go {
    grid-area: go; justify-self: stretch;
    width: auto; height: auto; border-radius: var(--radius-pill);
    padding: 15px 24px; margin-top: 8px;
  }
}
@media (max-width: 480px) {
  .project-row { grid-template-columns: 1fr; grid-template-areas: "media" "name" "text" "go"; }
  .project-row__media { aspect-ratio: 16 / 10; }
}

/* Künye kutucukları · görsel ızgarası · iletişim kartları */
@media (max-width: 1024px) {
  .shots { grid-template-columns: repeat(2, 1fr); }
  .contact-cards { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .shots { grid-template-columns: 1fr; }
  .spec-tiles { grid-template-columns: repeat(2, 1fr); }
  .spec-tile { min-height: 140px; padding: 18px; }
  .spec-tile--wide { grid-column: span 2; }
  .contact-card .btn { width: 100%; }
}

/* Mobilde dikey ritim sıkılaşsın — daha az boşluk, daha az kaydırma */
@media (max-width: 640px) {
  :root {
    --space-2xl: 76px;
    --space-xl: 56px;
    --gutter: 18px;
  }
  .page-hero, .pdp-hero, .intro-band { margin-inline: 12px; }
  .section--alt, .contact-band, .cta-block,
  .section--dark, .section--charcoal { margin-inline: 12px; }
  .intro-band { padding-block: 52px; }
  .spec-tile { justify-content: center; gap: 10px; }
  .contact-band__head h2 { font-size: clamp(1.7rem, 8vw, 2.2rem); }
}

/* Dar ekranda üst bant geçişi kısalır — logo ve menü butonu net kalsın */
@media (max-width: 860px) {
  :root {
    --header-bg: linear-gradient(100deg,
      rgba(255, 255, 255, .96) 0%,
      rgba(240, 247, 252, .94) 45%,
      rgba(176, 212, 238, .94) 100%);
  }
}

/* Öne çıkan projeler
   Geniş ekranda dört dikey kart (dosya 4:5 üretiliyor, tarayıcı kırpmıyor).
   700 px altında tek sütun ve yatay kadraj — <picture> aynı sınırda geniş
   dosyaya geçer, yani burada da ikinci bir kırpma olmaz. */
@media (max-width: 1100px) {
  .feature-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
  .feature-grid { grid-template-columns: 1fr; }
  .feature-card__media { aspect-ratio: 16 / 10; }
}
