/* İletişim / Teklif Al: bannerın altındaki gövde (bilgi kartları, harita, form paneli, teklif süreci, alt bilgi kartları). Tek dosya, yalnız bu iki sayfada yüklenir (bootstrap.php).
   İşaretleme: html/com_contact/contact/er_page.php (paneller, kartlar) + er_form.php (form alanları). Hero, header ve footer buraya ait değildir.
   Değerler ortak ERPage sisteminden gelir (erpage.css: --er-* renkler, --er-r-* köşeler, .er-icon-box). Seçiciler #erkurumsal-site ile başlar: layout.css sıfırlamaları (border, ul, a) 1,0,0 özgüllüğündedir. */
#erkurumsal-site .erkurumsal-contact-body { margin-block: clamp(24px, 3vw, 40px) clamp(40px, 5vw, 72px); }
#erkurumsal-site .erkurumsal-contact-page { display: grid; gap: 24px; color: var(--er-text); }

/* Yerleşim: iki panel yan yana (teklif sayfasında form biraz daha geniş); sağdaki sütun teklifte iki panel taşır. 1100px altında tek kolon. */
#erkurumsal-site .erkurumsal-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-contact-grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); }
#erkurumsal-site .erkurumsal-contact-side { display: grid; grid-template-rows: auto 1fr; gap: 24px; min-width: 0; }
#erkurumsal-site .erkurumsal-contact-panel { display: flex; flex-direction: column; min-width: 0; padding: clamp(20px, 2.4vw, 32px); border: 1px solid var(--er-line-soft); border-radius: var(--er-r-lg); background: #FFFFFF; box-shadow: var(--er-shadow); }

/* Panel başlığı: başlık + kısa mavi çizgi, açıklama yanında */
#erkurumsal-site .erkurumsal-contact-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px 24px; margin-block-end: 24px; }
#erkurumsal-site .erkurumsal-contact-title { position: relative; margin: 0; padding-block-end: 14px; color: var(--er-navy-title); font-size: clamp(22px, 2vw, 28px); font-weight: 600; line-height: 1.2; }
#erkurumsal-site .erkurumsal-contact-title::after { content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 48px; height: 3px; border-radius: 2px; background: var(--er-blue); }
#erkurumsal-site .erkurumsal-contact-head p { flex: 1 1 220px; max-width: 330px; margin: 4px 0 0; font-size: 13.5px; line-height: 1.55; }

/* Bilgi kartları (Telefon, E-posta, Adres, Faks) */
#erkurumsal-site .erkurumsal-contact-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
#erkurumsal-site .erkurumsal-contact-card { display: grid; grid-template-columns: auto minmax(0, 1fr); align-content: start; align-items: center; gap: 10px 12px; min-width: 0; padding: 16px; border: 1px solid var(--er-line-soft); border-radius: var(--er-r-md); background: #FFFFFF; }
#erkurumsal-site .erkurumsal-contact-card > div { display: contents; }
#erkurumsal-site .erkurumsal-contact-card h3 { grid-column: 2; }
#erkurumsal-site .erkurumsal-contact-card p { grid-column: 1 / -1; }
#erkurumsal-site .erkurumsal-contact-card h3,
#erkurumsal-site .erkurumsal-contact-feature h3,
#erkurumsal-site .erkurumsal-contact-step h3 { margin: 0 0 4px; color: var(--er-navy-title); font-size: 16px; font-weight: 600; line-height: 1.35; }
#erkurumsal-site .erkurumsal-contact-card p { margin: 0; color: var(--er-ink); font-size: 14.5px; overflow-wrap: anywhere; }
#erkurumsal-site .erkurumsal-contact-card a { color: inherit; }
#erkurumsal-site .erkurumsal-contact-card a:hover { color: var(--er-blue); }

/* Harita: panelde kalan yüksekliği doldurur (en az 280px); iframe kutuya oturur */
#erkurumsal-site .erkurumsal-contact-map { position: relative; flex: 1 1 auto; min-height: 280px; margin-block-start: 18px; overflow: hidden; border: 1px solid var(--er-line-soft); border-radius: var(--er-r-md); background: var(--er-bg); }
#erkurumsal-site .erkurumsal-contact-map iframe { position: absolute; inset: 0; height: 100%; border: 0; }

/* Form */
#erkurumsal-site .erkurumsal-contact-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; flex: 1 1 auto; grid-template-rows: auto auto auto minmax(0, 1fr); }
/* the form panel is as tall as the neighbouring column: the message field takes the free height instead of leaving a blank block under the form */
#erkurumsal-site .erkurumsal-contact-form { display: flex; flex-direction: column; flex: 1 1 auto; }
#erkurumsal-site .erkurumsal-contact-form .erkurumsal-form-icon--message .control-group { display: flex; flex-direction: column; height: 100%; }
#erkurumsal-site .erkurumsal-contact-form .erkurumsal-form-icon--message .controls { display: flex; flex: 1 1 auto; }
#erkurumsal-site .erkurumsal-contact-form .erkurumsal-form-icon--message textarea { flex: 1 1 auto; }
#erkurumsal-site .erkurumsal-form-wide { grid-column: 1 / -1; }
#erkurumsal-site .erkurumsal-contact-form label { display: block; margin-block-end: 8px; color: var(--er-ink); font-size: 13.5px; font-weight: 600; line-height: 1.4; }
#erkurumsal-site .erkurumsal-contact-form input:not([type=checkbox]):not([type=hidden]),
#erkurumsal-site .erkurumsal-contact-form select,
#erkurumsal-site .erkurumsal-contact-form textarea { display: block; width: 100%; max-width: 100%; min-height: 48px; padding: 12px 16px; border: 1px solid var(--er-line); border-radius: var(--er-r-md); color: var(--er-ink); font-size: 14.5px; line-height: 1.4; box-shadow: none; }
#erkurumsal-site .erkurumsal-contact-form textarea { min-height: 150px; resize: vertical; }

#erkurumsal-site .erkurumsal-contact-form input:not([type=checkbox]):not([type=hidden]):focus-visible,
#erkurumsal-site .erkurumsal-contact-form select:focus-visible,
#erkurumsal-site .erkurumsal-contact-form textarea:focus-visible { border-color: var(--er-blue); outline: 3px solid var(--er-focus); outline-offset: 0; }
#erkurumsal-site .erkurumsal-contact-form fieldset { margin: 0; padding: 0; min-width: 0; }
#erkurumsal-site .erkurumsal-contact-form .controls { position: relative; }
/* Teklif formunda alan ikonları (yazı tipi ikonu, alanın solunda) */
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon .controls::before { position: absolute; inset-inline-start: 16px; top: 24px; transform: translateY(-50%); color: var(--er-blue); font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 15px; line-height: 1; pointer-events: none; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon--user .controls::before { content: "\f007"; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon--phone .controls::before { content: "\f095"; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon--email .controls::before { content: "\f0e0"; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon--service .controls::before { content: "\f0ca"; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon--message .controls::before { content: "\f15c"; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon .controls input:not([type=checkbox]),
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon .controls select,
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-form-icon .controls textarea { padding-inline-start: 46px; }
/* Onay kutusu ve aydınlatma metni */
#erkurumsal-site .erkurumsal-form-consent label { display: flex; align-items: flex-start; gap: 10px; margin: 0; color: var(--er-text); font-size: 13.5px; font-weight: 400; }
#erkurumsal-site .erkurumsal-form-consent input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--er-blue); }
#erkurumsal-site .erkurumsal-form-consent a { display: inline-block; margin-block-start: 6px; padding-inline-start: 28px; color: var(--er-blue); font-size: 13.5px; font-weight: 600; }
#erkurumsal-site .erkurumsal-form-consent a:hover { color: var(--er-blue-hover); }
#erkurumsal-site .erkurumsal-contact-submit { display: flex; align-items: center; justify-content: center; min-height: 52px; margin-block-start: 22px; padding: 14px 20px; border: 1px solid var(--er-blue); border-radius: var(--er-r-md); background: var(--er-blue); color: #FFFFFF; font-weight: 600; line-height: 1.2; transition: background-color .2s, border-color .2s; }
#erkurumsal-site .erkurumsal-contact-submit:hover { border-color: var(--er-blue-hover); background: var(--er-blue-hover); }
#erkurumsal-site .erkurumsal-contact-submit:disabled {
  border-color: var(--er-line);
  background: var(--er-line);
  color: var(--er-muted);
  cursor: not-allowed;
}
#erkurumsal-site .erkurumsal-contact-submit:focus-visible { outline: 3px solid var(--er-focus); outline-offset: 2px; }
#erkurumsal-site .erkurumsal-contact-required { margin: 14px 0 0; font-size: 12.5px; }
/* Gönderim sonucu bildirimi (başarılı / uyarı): formun hemen üstünde (er_form.php) */
#erkurumsal-site .erkurumsal-form-notice { display: flex; align-items: center; gap: 14px; margin-block-end: 22px; padding: 14px 18px; border: 1px solid var(--er-blue-soft); border-inline-start: 4px solid var(--er-accent-line); border-radius: var(--er-r-md); background: var(--er-bg-tint); --er-icon-bg: #FFFFFF; }
#erkurumsal-site .erkurumsal-form-notice--warning { border-color: var(--er-line); border-inline-start-color: var(--er-navy-title); background: #FFFFFF; --er-icon-bg: var(--er-bg-tint); --er-icon-fg: var(--er-navy-title); }
#erkurumsal-site .erkurumsal-form-notice p { margin: 0; color: var(--er-navy-title); font-size: 14.5px; font-weight: 600; line-height: 1.5; }
.erkurumsal-form-trap { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
/* Yedek çıktı (ERPage sayfası yok): temel iletişim bilgisi */
#erkurumsal-site .erkurumsal-contact-basic { display: grid; gap: 6px; margin: 0 0 24px; padding: 0; list-style: none; color: var(--er-text); font-size: 14.5px; }

/* Teklif süreci: 4 adım, adımlar arasında kesikli bağlantı çizgisi; numara stilden gelir */
#erkurumsal-site .erkurumsal-contact-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; counter-reset: er-step; }
#erkurumsal-site .erkurumsal-contact-step { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; counter-increment: er-step; }
#erkurumsal-site .erkurumsal-contact-step:not(:last-child)::after { content: ""; position: absolute; top: 24px; inset-inline-start: 58px; inset-inline-end: 0; border-top: 1px dashed var(--er-line); }
#erkurumsal-site .erkurumsal-contact-step h3 { margin: 0; font-size: 13.5px; }
#erkurumsal-site .erkurumsal-contact-step h3::before { content: counter(er-step) ". "; }
#erkurumsal-site .erkurumsal-contact-step p { margin: -6px 0 0; font-size: 12.5px; overflow-wrap: anywhere; }

/* Alt bilgi kartları: açık mavi bant içinde 4 kart (teklifte kartsız, ayraçlı) */
#erkurumsal-site .erkurumsal-contact-features { padding: clamp(14px, 1.8vw, 22px); border: 1px solid var(--er-line-soft); border-radius: var(--er-r-lg); background: var(--er-bg-tint); }
#erkurumsal-site .erkurumsal-contact-features ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
#erkurumsal-site .erkurumsal-contact-feature { display: flex; align-items: flex-start; gap: 14px; min-width: 0; padding: 18px; border: 1px solid var(--er-line-soft); border-radius: var(--er-r-md); background: #FFFFFF; }
#erkurumsal-site .erkurumsal-contact-feature > div { min-width: 0; }
#erkurumsal-site .erkurumsal-contact-feature p { margin: 0; font-size: 13.5px; overflow-wrap: anywhere; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-contact-feature { padding-block: 8px; border-width: 0; border-inline-start-width: 1px; border-radius: 0; background: transparent; }
#erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-contact-feature:first-child { border-inline-start-width: 0; }

@media (max-width: 1100px) {
  #erkurumsal-site .erkurumsal-contact-grid,
  #erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-contact-grid { grid-template-columns: minmax(0, 1fr); }
  #erkurumsal-site .erkurumsal-contact-features ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #erkurumsal-site .erkurumsal-contact-page--quote .erkurumsal-contact-feature { padding: 18px; border-width: 1px; border-radius: var(--er-r-md); background: #FFFFFF; }
}
@media (max-width: 640px) {
  #erkurumsal-site .erkurumsal-contact-fields,
  #erkurumsal-site .erkurumsal-contact-cards,
  #erkurumsal-site .erkurumsal-contact-features ul { grid-template-columns: minmax(0, 1fr); }
  #erkurumsal-site .erkurumsal-contact-steps { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  #erkurumsal-site .erkurumsal-contact-step { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; gap: 2px 14px; }
  #erkurumsal-site .erkurumsal-contact-step .er-icon-box { grid-row: 1 / span 2; }
  #erkurumsal-site .erkurumsal-contact-step h3,
  #erkurumsal-site .erkurumsal-contact-step p { grid-column: 2; margin: 0; }
  #erkurumsal-site .erkurumsal-contact-step:not(:last-child)::after { display: none; }
  #erkurumsal-site .erkurumsal-contact-map { min-height: 240px; }
}

/* Sağdan sola diller: paneller ve kartlar içeride sağdan sola akar, sayfa yerleşimi aynalanmaz */
html[data-text-direction="rtl"] #erkurumsal-site .erkurumsal-contact-panel,
html[data-text-direction="rtl"] #erkurumsal-site .erkurumsal-contact-feature { direction: rtl; }
@media (prefers-reduced-motion: reduce) {
  #erkurumsal-site .erkurumsal-contact-submit { transition: none; }
}
