/* Ankara Asansör Sistemleri — tema üstü düzeltmeler.
   webflow.css'ten sonra yüklenir; tema dosyası değiştirilmez. */

/* ---- Logo */
.brand-logo {
  width: auto;
  height: 26px;
  object-fit: contain;
}
.footer-large-logo {
  height: auto;
}

/* ---- Megamenü: 4 kolon (≥1280), 2x2 (992–1279), tek kolon (mobil) */
.nav-dropdown-title {
  font-family: var(--_typography---fonts--labels-font);
  color: var(--gray);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: .4px;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.nav-dropdown-link-wrapper + .nav-dropdown-title {
  margin-top: 16px;
}
/* Uzun başlıklar kesilmesin, satır kırılsın; çizgi animasyonu hizayı bozmasın */
.nav-dropdown-list.megamenu .nav-dropdown-link {
  white-space: normal;
  text-align: left;
}
.nav-dropdown-list.megamenu .nav-dropdown-link-line {
  flex: none;
}
@media screen and (min-width: 992px) {
  /* Menü, açılır düğmeye göre değil navbar'a göre ortalanır: dar masaüstünde sağdan taşmaz */
  .navbar .nav-dropdown.w-dropdown {
    position: static;
  }
  .nav-dropdown-list.megamenu.w--open {
    flex-wrap: wrap;
    row-gap: 18px;
    width: min(680px, 94vw);
    left: calc(50% - min(340px, 47vw));
  }
  .nav-dropdown-list.megamenu .nav-dropdown-column {
    width: 50%;
    padding-right: 16px;
  }
}
@media screen and (min-width: 1280px) {
  .nav-dropdown-list.megamenu.w--open {
    flex-wrap: nowrap;
    width: min(1120px, 94vw);
    left: calc(50% - min(560px, 47vw));
  }
  .nav-dropdown-list.megamenu .nav-dropdown-column {
    width: 25%;
  }
}
@media screen and (max-width: 991px) {
  .nav-dropdown-list.megamenu {
    height: auto;
    max-height: 60vh;
    overflow: auto;
  }
  .nav-dropdown-list.megamenu .nav-dropdown-column {
    width: 100%;
    margin-bottom: 12px;
  }
}

/* ---- Dar masaüstü (992–1199): Türkçe menü etiketleri daha uzun, iki satıra bölünmesin */
@media screen and (min-width: 992px) {
  .navbar .nav-link,
  .navbar .nav-item-title,
  .navbar .nav-button {
    white-space: nowrap;
  }
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
  .navbar .nav-link {
    padding-left: 10px;
    padding-right: 10px;
  }
  .navbar .nav-button {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* ---- Mobil menüde telefon butonu */
.primary-button.nav-telefon {
  margin-top: 10px;
  background-color: transparent;
  color: var(--primary-color);
  border: 1px solid var(--primary-color);
}

/* ---- Form: etiketler <label> oldu; Webflow'un label varsayılanını (kalın, alt boşluk) sıfırla */
.form-field-wrap > label.small-label {
  margin-bottom: 0;
  font-weight: 500;
}

/* ---- Form: seçim kutuları */
select.cta-text-field {
  -webkit-appearance: none;
  appearance: none;
  height: auto;
  min-height: 38px;
  padding-right: 24px;
  background-color: var(--light);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231b1b1b' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 4px center;
  cursor: pointer;
}
select.cta-text-field:invalid {
  color: var(--gray);
}
select.cta-text-field option {
  color: var(--black);
}

/* ---- Form: KVKK onayı ve bilgilendirme notu */
.kvkk-onay {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--black);
}
.kvkk-onay input {
  flex: none;
  width: 16px;
  height: 16px;
  margin: 3px 0 0;
  accent-color: var(--primary-color);
}
.kvkk-onay a,
.form-not a {
  color: var(--primary-color);
  text-decoration: underline;
}
.form-not.form-aydinlatma {
  margin: 0;
}
.form-not {
  width: 100%;
  margin: -8px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #595959; /* --black-45 açık form zemininde 4.5:1 kontrastın altındaydı */
}

/* ---- Form: bot tuzağı alanı (görünmez, ekran okuyucudan gizli) */
.form-tuzak {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* ---- CTA bölümünde telefon */
.cta-telefon {
  display: inline-block;
  margin-top: 14px;
  font-size: 18px;
  font-weight: 500;
  color: var(--primary-color);
  text-decoration: none;
}
.cta-telefon:hover {
  text-decoration: underline;
}

/* ---- Zengin metin: temada paragraf ve numaralı liste boşluğu yok; genel `li` kuralı
   liste metnini marka mavisine boyuyor — uzun Türkçe metinde okunurluk için düzeltilir */
.rich-text-style p {
  margin-bottom: 16px;
}
.rich-text-style p:last-child {
  margin-bottom: 0;
}
.rich-text-style ol {
  margin-top: var(--_spacing-system---spacing--spacing-ml);
  margin-bottom: var(--_spacing-system---spacing--spacing-ml);
  padding-left: 24px;
}
.rich-text-style li {
  color: inherit;
  margin-bottom: 8px;
}

/* ---- Rehber: makale içi tablo (dar ekranda kendi kutusunda kayar) */
.tablo-kutu {
  width: 100%;
  overflow-x: auto;
  margin: 24px 0;
  -webkit-overflow-scrolling: touch;
}
.tablo-kutu table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.45;
}
.tablo-kutu th,
.tablo-kutu td {
  padding: 10px 12px;
  border: 1px solid rgba(27, 27, 27, .12);
  text-align: left;
  vertical-align: top;
}
.tablo-kutu thead th {
  background-color: var(--light);
  font-weight: 600;
}

/* ---- Rehber: makale içi hesaplayıcı / bilgi kutusu */
.rehber-arac-kutusu {
  margin: 32px 0;
  padding: 24px;
  border-left: 4px solid var(--primary-color);
  background-color: var(--light);
}
.rehber-arac-kutusu .rehber-arac-baslik {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 600;
}
.rehber-arac-kutusu p {
  margin-bottom: 16px;
}
.rehber-arac-kutusu .primary-button {
  display: inline-block;
}

/* ---- İnceleme yardımı: <html class="ph-goster"> ile placeholder'ları işaretle */
html.ph-goster [data-ph] {
  outline: 2px dashed #e0a800;
  outline-offset: 2px;
}

/* ---- Banner arka planı: telefon kopyası (tema asansor_banner_oz). Webflow'un .inner-banner-section.x kuralıyla
   eşit özgüllük, site.css sonra yüklendiği için kazanır. */
.inner-banner-section[style*="--banner:"] {
  background-image: var(--banner);
}
@media screen and (max-width: 767px) {
  .inner-banner-section[style*="--banner-m:"] {
    background-image: var(--banner-m);
  }
}

/* Temsili saha görsellerinin kaynak açıklaması. */
.temsili-gorsel-notu { margin:0; padding:18px 24px; background:#1b1b1b; color:#ddd; text-align:center; font-size:12px; line-height:1.6; }
.temsili-gorsel-notu a { color:#fff; text-decoration:underline; }
.temsili-kisi-notu { padding:8px 0; color:#555; font-size:12px; line-height:1.5; }
.home-photo-section { background-size:auto,cover; background-position:0 0,50% 50%; }

.background-video[style*="--banner:"] { background-image:var(--banner); }
.why-choose-us-icon[src*="/ikonlar/"] { filter:brightness(0) invert(1); }
@media (max-width:767px) {
  .background-video[style*="--banner-m:"] { background-image:var(--banner-m); }

}

.saha-arka-plan { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none; z-index:0; }
.home-photo-section > .base-container, .video-section > .base-container { position:relative; z-index:2; }
.home-photo-section::after, .video-section::after, .cta-background-video::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:rgba(27,27,27,.48); }

/* ---- Etiket / asansör tipi kartları (.equipment-wrapper): Webflow düzeni dekupe ürün görseli için yazıların ARKASINA
   mutlak konumlu görsel koyar (300-400 px boşluklu sütun). Saha fotoğraflarında yazılar fotoğrafın üstüne/altına biniyordu.
   Burada akışa alınır: başlık → fotoğraf (3:2, kırpılır) → açıklama; HTML sırası ne olursa olsun `order` ile. */
.equipment-wrapper .equipment-collection-item-1,
.equipment-wrapper .equipment-collection-item-2 { grid-row-gap:24px; grid-column-gap:24px; justify-content:flex-start; align-items:stretch; height:100%; }
.equipment-wrapper .equipment-card-top-wrap { order:0; }
.equipment-wrapper .equipment-image-wrapper { order:1; position:static; display:block; width:100%; aspect-ratio:3/2; overflow:hidden; }
.equipment-wrapper .equipment-image-wrapper img { position:static; display:block; width:100%; height:100%; max-height:none; margin:0; object-fit:cover; }
.equipment-wrapper .equipment-bottom-wrap { order:2; margin-top:auto; grid-row-gap:24px; grid-column-gap:24px; }
.equipment-wrapper .equipment-grid > .w-dyn-list, .equipment-wrapper .equipment-grid .w-dyn-items { height:100%; }
.equipment-wrapper .equipment-card-top-wrap { grid-column-gap:24px; }
.equipment-wrapper .equipment-details-line { align-items:baseline; justify-content:flex-end; }
.equipment-wrapper .equipment-details-wrapper { text-align:right; }
.equipment-wrapper .equipment-details-line .small-label { flex:none; white-space:nowrap; }
