/* =========================================================
   ÖZEL YAPILANDIRMA v2 – Kurumsal/Modern Liste (İkonlu)
   Hedef HTML: .gfort-block.text-block .gfort-block-content > ul > a > li.col-md-3
   Not: Tam uyumluluk için !important kullanıldı. HTML’e dokunmadan çalışır.
   ========================================================= */

/* ---- Tema Renkleri (kolay özelleştirilsin diye değişken) ---- */
:root {
  --ozel-bg: #ffffff;
  --ozel-fg: #0f172a;
  --ozel-subtle: rgba(15,23,42,.08);
  --ozel-subtle-strong: rgba(15,23,42,.12);
  --ozel-hover-shadow: 0 10px 24px rgba(2,6,23,.12);
  --ozel-ring: #0b5fff;
  --ozel-pill-bg: #eef2ff;      /* ikon rozeti arkaplanı */
  --ozel-pill-fg: #3730a3;      /* ikon rengi */
  --ozel-pill-bg-alt: #ecfeff;  /* alternatif */
  --ozel-pill-fg-alt: #155e75;
  --ozel-gradient: linear-gradient(180deg, #fff 0%, #fbfbfd 100%);
}

/* Başlık */
.section-title .section-main-title {
  font-size: clamp(22px, 2.1vw, 30px) !important;
  font-weight: 700 !important;
  letter-spacing: .3px !important;
  margin: 0 0 18px 0 !important;
  color: var(--ozel-fg) !important;
}
.section-title.text-center { margin-bottom: 14px !important; }

/* ======================== Bölge Listesi – Stabil Grid + İkon ======================== */
/* Tüm ölçüler tutarlı olsun */
.gfort-block.text-block .gfort-block-content > ul,
.gfort-block.text-block .gfort-block-content > ul * {
  box-sizing: border-box !important;
}

/* 4 sütunlu modern grid */
.gfort-block.text-block .gfort-block-content > ul {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Bootstrap’in col-* float/padding’lerini iptal et */
.gfort-block.text-block .gfort-block-content > ul li[class*="col-"] {
  float: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* A bağlantısını blok yap; içeriği li kontrol eder */
.gfort-block.text-block .gfort-block-content > ul > a {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  margin: 0 !important;
  line-height: 0 !important; /* line-height içeride */
}

/* Kart gövdesi – FLEX ile ikon + metin yanyana ve tam baştan */
.gfort-block.text-block .gfort-block-content > ul > a > li {
  display: inline-flex !important;          /* satır içi blok */
  align-items: center !important;           /* dikey hizalama */
  gap: 10px !important;                     /* ikon–metin arası */
  width: 100% !important;

  padding: 12px 14px !important;            /* artık sol padding ekstra yok */
  min-height: 44px !important;

  border-radius: 14px !important;
  background: linear-gradient(180deg,#fff 0%,#fbfbfd 100%) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 2px 10px rgba(2,6,23,.04) !important;

  font-size: 15px !important;
  line-height: 1.35 !important;
  color: #0f172a !important;

  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

/* --- İKON: Artık ABSOLUTE DEĞIL — tam başta, sabit boyutta --- */
.gfort-block.text-block .gfort-block-content > ul > a > li::before {
  content: "\f041" !important;              /* fa-map-marker (FA 4.7) */
  font-family: "FontAwesome" !important;
  font-style: normal !important;
  font-weight: normal !important;
  text-rendering: auto !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  flex: 0 0 22px !important;                /* sabit ikon alanı */
  width: 22px !important;
  height: 22px !important;

  font-size: 15px !important;
  line-height: 1 !important;
  color: #2563eb !important;                /* mavi işaret */
  background: transparent !important;       /* rozet yok, net hizalama */
  border: 0 !important;
  box-shadow: none !important;

  /* Eski kurallardan kalma konumlandırmaları sıfırla */
  position: static !important;
  margin: 0 !important;
  left: auto !important; top: auto !important; transform: none !important;
}

/* Sağdaki ok – küçük hareket */
.gfort-block.text-block .gfort-block-content > ul > a > li::after {
  content: "\f105" !important;              /* fa-angle-right */
  font-family: "FontAwesome" !important;
  font-size: 12px !important;
  opacity: .35 !important;
  margin-left: auto !important;
  transition: opacity .18s ease, transform .18s ease !important;
}

/* Hover/focus durumları */
.gfort-block.text-block .gfort-block-content > ul > a:hover > li,
.gfort-block.text-block .gfort-block-content > ul > a:focus > li,
.gfort-block.text-block .gfort-block-content > ul > a:focus-visible > li {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(2,6,23,.12) !important;
  border-color: rgba(15,23,42,.16) !important;
  background: #fff !important;
}
.gfort-block.text-block .gfort-block-content > ul > a:hover > li::after {
  opacity: .75 !important;
  transform: translateX(2px) !important;
}
.gfort-block.text-block .gfort-block-content > ul > a:focus-visible > li {
  outline: 2px solid #0b5fff !important;
  outline-offset: 2px !important;
}

/* ---------- Responsive kırılımlar ---------- */
@media (max-width:1199px){
  .gfort-block.text-block .gfort-block-content > ul{
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  }
}
@media (max-width:991px){
  .gfort-block.text-block .gfort-block-content > ul{
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 10px !important;
  }
}
@media (max-width:575px){
  .gfort-block.text-block .gfort-block-content > ul{
    grid-template-columns: 1fr !important;
  }
  .gfort-block.text-block .gfort-block-content > ul > a > li{
    padding: 14px 16px !important;
    border-radius: 16px !important;
  }
}

/* =========================================================
   OZEL YAPILANDIRMA — Bootstrap 3.3.7 ile uyumlu
   Amaç: Hizmet kartları ve Widget HTML bloğu görsel/altyapı düzeltmeleri
   ========================================================= */

/* ---------- Genel küçük dokunuşlar ---------- */
.section-title.text-center .section-main-title{
  font-weight:700 !important;
  letter-spacing:.5px !important;
  margin-bottom:24px !important;
}

/* ==== HİZMET KARTLARI: Üstte boşluk fix ==== */

/* Ortak yapı */
.gfort-block.image-block .gfort-block-container{
  border-radius:16px !important;
  overflow:hidden !important;
  box-shadow:0 10px 25px rgba(22,28,45,.06) !important;
  background:#fff !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}
.gfort-block.image-block .gfort-block-container:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 16px 40px rgba(22,28,45,.12) !important;
}

/* Görsel sarmalayıcı */
.gfort-block.image-block .gfort-block-head{ 
  position:relative !important;
}

/* --- Modern tarayıcılar (aspect-ratio destekli) --- */
@supports (aspect-ratio: 1 / 1) {
  .gfort-block.image-block .gfort-block-head a{
    display:block !important;
    width:100% !important;
    height:auto !important;
    padding-top:0 !important;        /* ÇOK ÖNEMLİ: fallback’i kapat */
    background:#f6f7f9 !important;
  }
  .gfort-block.image-block .gfort-block-head a > img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    position:static !important;      /* mutlak konumu kapat */
  }
}

/* --- Eski tarayıcılar (fallback) --- */
@supports not (aspect-ratio: 1 / 1) {
  .gfort-block.image-block .gfort-block-head a{
    display:block !important;
    width:100% !important;
    height:0 !important;
    padding-top:62.5% !important;    /* 16:10 oranı = 62.5% */
    position:relative !important;
    background:#f6f7f9 !important;
  }
  .gfort-block.image-block .gfort-block-head a > img{
    position:absolute !important;
    top:0 !important; left:0 !important;
    width:100% !important; height:100% !important;
    object-fit:cover !important;
  }
}

/* Başlık */
.gfort-block-title, .gfort-block-title h4{
  margin:12px 0 0 !important;
  text-align:center !important;
  color:#1d2636 !important;
  font-weight:600 !important;
  line-height:1.35 !important;
}

/* Izgara aralıkları (col’ler arası daha ferah) */
@media (min-width: 992px){
  .gfort-section .col-md-3{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}

/* Küçük ekran düzenleri: 2 sütun → 1 sütun */
@media (max-width: 991px){
  /* zaten col-sm-6 var; boşlukları büyütelim */
  .gfort-section .col-sm-6{
    margin-bottom:26px !important;
  }
}
@media (max-width: 480px){
  .gfort-section .col-sm-6,
  .gfort-section .col-md-3{
    float:none !important;
    width:100% !important;
    max-width:560px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* “TÜM HİZMETLER” butonu için daha modern görünüm (varsa) */
.btn.btn-gfort{
  border-radius:28px !important;
  padding:12px 22px !important;
  font-weight:600 !important;
  box-shadow:0 6px 18px rgba(38,99,255,.15) !important;
}

/* ---------- WIDGET HTML BLOĞU (index.php -> widget_html) ---------- */
/* Metin bloğunu kart gibi göster */
.gfort-block.text-block .gfort-block-body > p{
  background:linear-gradient(180deg,#f7fbff, #eef2ff) !important;
  border:1px solid #e6ecf5 !important;
  border-radius:18px !important;
  padding:22px 22px !important;
  margin:0 auto 20px !important;
  max-width:980px !important;
  color:#273043 !important;
  line-height:1.6 !important;
  box-shadow:0 12px 28px rgba(25,60,120,.06) !important;
}

/* Kart içindeki başlıklar & listeler */
.gfort-block.text-block .gfort-block-body > p h1,
.gfort-block.text-block .gfort-block-body > p h2,
.gfort-block.text-block .gfort-block-body > p h3{
  margin:6px 0 10px !important;
  font-weight:700 !important;
}
.gfort-block.text-block .gfort-block-body > p ul{
  margin:10px 0 0 18px !important;
}
.gfort-block.text-block .gfort-block-body > p a{
  color:#1b66ff !important;
  text-decoration:none !important;
  border-bottom:1px dashed rgba(27,102,255,.35) !important;
}
.gfort-block.text-block .gfort-block-body > p a:hover{
  opacity:.85 !important;
}

/* Mobilde içerik nefes alsın */
@media (max-width: 575px){
  .gfort-block.text-block .gfort-block-body > p{
    padding:18px 16px !important;
    border-radius:16px !important;
  }
}

/* ---------- Bölge/Proje uzun listeleri (daha önce verdiğimiz yapıyla uyumlu) ---------- */
/* Eğer .region-list sınıfını kullanıyorsan, ikon hizası %100 düz */
.region-list{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px 16px !important;
  list-style:none !important;
  padding:0 !important; margin:0 !important;
}
@media (max-width: 1200px){ .region-list{ grid-template-columns:repeat(3,1fr) !important; } }
@media (max-width: 992px){  .region-list{ grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width: 575px){  .region-list{ grid-template-columns:1fr !important; } }

.region-list a{
  text-decoration:none !important;
}
.region-list .region-chip{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px 12px 10px 38px !important; /* ikon için sol iç boşluk */
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid #e8eef7 !important;
  box-shadow:0 6px 14px rgba(25,60,120,.06) !important;
  color:#1f2a44 !important;
  font-weight:600 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  transition:transform .15s ease, box-shadow .15s ease !important;
}
.region-list .region-chip:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 10px 22px rgba(25,60,120,.12) !important;
}

/* Sabitlenen ikon: tam başa hizalı */
.region-list .region-chip .chip-ico{
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  line-height:18px !important;
  border-radius:50% !important;
  background:#e9f2ff !important;
  color:#1b66ff !important;
  text-align:center !important;
  font-size:12px !important;
}

/* Koyu mod/temalarda okunabilirlik emniyeti */
@media (prefers-color-scheme: dark){
  .gfort-block.image-block .gfort-block-container{
    box-shadow:0 12px 28px rgba(0,0,0,.35) !important;
  }
  .gfort-block.text-block .gfort-block-body > p{
    background:linear-gradient(180deg,#101623,#0b1220) !important;
    border-color:#1f2a44 !important;
    color:#d9e1f2 !important;
  }
  .region-list .region-chip{
    background:#0e1524 !important;
    border-color:#1b2740 !important;
    color:#d9e1f2 !important;
  }
}

