/* Mobile image responsive fixes — loaded last (after rtl.css) */

/* Base safety for content images */
img {
  max-width: 100%;
  height: auto;
}

/* Fill-container images keep cover behavior inside clipped parents */
.about-media img,
.management-photo img,
.project-card-image,
.project-detail-slider__slide img,
.seo-regions-map__photo {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bp-map-plate__frame iframe {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-width: 100%;
  border: 0;
  display: block;
}

@media (max-width: 980px) {
  .seo-regions-map {
    max-height: none;
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 767px) {
  /* Hero — keep crane / skyline in frame on phones */
  .page-index .hero-parallax-bg {
    background-position: center 52%;
  }

  /* About section — remove scale bleed, stable crop */
  .about-media {
    aspect-ratio: 16 / 10;
    min-height: 0;
  }

  .about-media img {
    transform: none !important;
    min-height: 0 !important;
    object-position: center center;
  }

  /* Board photos — no scale distortion on small screens */
  .management-photo img,
  .management-photo img.riza-management-photo,
  .management-photo img.ahmet-management-photo,
  .management-card.featured .management-photo img,
  .management-card.featured .management-photo img.efe-management-photo {
    transform: none !important;
    object-position: center top !important;
  }

  /* Hizmetler activity cards — pseudo-element bleed fix (width handled below) */
  .page-hizmetler #alanlar .hizmet-card-insaat::after,
  .page-hizmetler #alanlar .hizmet-card-mimarlik::after,
  .page-index #alanlar .hizmet-card-insaat::after,
  .page-index #alanlar .hizmet-card-mimarlik::after {
    inset: 0;
    transform: none;
    filter: blur(1px);
  }

  #alanlar .option-content {
    min-height: 0;
  }

  /* Homepage “Neden Öztel Yapı” cards — uniform mobile ratio (non-carousel cards only) */
  .main-services-grid .main-service-card:not(.corner-reveal-card):not(.hizmet-alani-card-insaat):not(.hizmet-alani-card-mimarlik) {
    aspect-ratio: 4 / 3;
    min-height: auto;
    background-size: cover;
    background-position: center center;
  }

  .home-why-section .main-service-card.corner-reveal-card {
    aspect-ratio: auto;
    min-height: 320px;
    height: auto;
  }

  .main-service-card p {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
  }

  /* Ongoing project accordions */
  .ongoing-project-accordion summary {
    min-height: auto;
    aspect-ratio: 4 / 3;
  }

  .ongoing-projects-wrap {
    grid-template-columns: 1fr;
  }

  /* Project detail carousel */
  .project-detail-slider__viewport {
    aspect-ratio: 4 / 3;
    max-height: min(56vh, 360px);
  }

  /* Lightbox — stay inside viewport */
  .project-lightbox__dialog {
    width: 100%;
  }

  .project-lightbox__stage {
    max-height: calc(100dvh - 120px);
  }

  .project-lightbox__image {
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 120px);
    width: auto;
    height: auto;
    object-fit: contain;
  }
}

@media (max-width: 480px) {
  .page-index .hero-parallax-bg {
    background-position: center 46%;
  }

  .about-media {
    aspect-ratio: 4 / 3;
  }

  .about-media img {
    object-position: center 40%;
  }
}

/* /hizmetler — mobil kart düzeni (üst stack + alt iç hizalama) */
@media (max-width: 767px) {
  .page-hizmetler #hizmetler .main-services-grid,
  .page-index #hizmetler .main-services-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    overflow-x: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding: 0 !important;
    gap: 18px;
  }

  .page-hizmetler #hizmetler .main-service-card,
  .page-index #hizmetler .main-service-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    box-sizing: border-box;
    aspect-ratio: auto !important;
    min-height: 280px !important;
    height: auto;
  }

  .page-hizmetler #hizmetler .main-service-card p,
  .page-index #hizmetler .main-service-card p {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
  }

  .page-hizmetler #alanlar .option-split,
  .page-index #alanlar .option-split {
    gap: 18px;
    overflow: visible;
  }

  .page-hizmetler #alanlar .option,
  .page-index #alanlar .option {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    box-sizing: border-box;
    aspect-ratio: auto !important;
    min-height: 420px !important;
    height: auto;
    padding: 24px !important;
    align-items: stretch !important;
    justify-content: flex-end;
  }

  .page-hizmetler #alanlar .option-content,
  .page-index #alanlar .option-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    min-height: 0 !important;
    box-sizing: border-box;
    padding: 24px !important;
    margin: 0;
  }

  .page-hizmetler #alanlar .option-content__body,
  .page-index #alanlar .option-content__body {
    min-width: 0;
    width: 100%;
  }

  .page-hizmetler #alanlar .option-content .option-link,
  .page-index #alanlar .option-content .option-link {
    align-self: flex-start;
    margin-top: 20px;
  }

  .page-hizmetler #alanlar .option h3,
  .page-hizmetler #alanlar .option p,
  .page-index #alanlar .option h3,
  .page-index #alanlar .option p {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
  }
}
