/*
 * Landing page davranisi - sablonlarin kendi CSS'inden SONRA yuklenir.
 * Sablon dosyalarina dokunulmaz; buradaki kurallar yalnizca capali gezinme
 * (anchor navigation) ve tam genislik icin gereken minimum eklemedir.
 */

/* --- Capa ofseti ------------------------------------------------------------
 * Her iki sitede de navbar kaydirinca sabitleniyor (Builderz .nav-sticky,
 * Industro .sticky-top). Ofset olmadan capaya atlayinca bolum başlığı
 * navbarin altinda kaliyor. */
[id="home"],
[id="about"], [id="features"], [id="services"], [id="projects"],
[id="team"], [id="faq"], [id="blog"], [id="testimonials"], [id="contact"],
[id="map"], [id="pricing"], [id="products"], [id="work"] {
  scroll-margin-top: 90px;
}

/* --- Builderz: tam genislik --------------------------------------------------
 * Sablon .wrapper'a max-width:1366px veriyor; genis ekranlarda saglı sollu
 * gri bosluk kaliyor. Landing page olarak tam ekran isteniyor.
 * Geri almak icin: bu blogu silin. */
body .wrapper {
  max-width: none;
}
body .nav-bar.nav-sticky {
  max-width: none;
}

/* --- Eklenen iletisim bolumu -------------------------------------------------
 * Builderz sablonunda .contact sinifi yok (index'te form yoktu).
 * Diger bolumlerle ayni dikey ritmi tutturuyoruz. */
.contact {
  position: relative;
  margin: 45px 0;
}
.contact .contact-info p {
  margin-bottom: 12px;
}
.contact .contact-info i {
  width: 24px;
  color: #fdbe33;
}
.contact .cms-contact-form .form-control {
  height: 46px;
  border-radius: 0;
}
.contact .cms-contact-form textarea.form-control {
  height: auto;
}

/* Harita bolumu */
.map iframe {
  display: block;
  width: 100%;
  border: 0;
}

/* Form geri bildirimleri her sablonda okunakli kalsin */
.cms-alert {
  font-size: .95rem;
  line-height: 1.5;
}
.cms-error {
  display: block;
  margin-top: 4px;
  font-size: .85rem;
}

/* --- Flame: yazi logo ---------------------------------------------------------
 * Sablonun kendi logo gorseli "flameonepage" markasini tasiyor. Panelde logo
 * gorseli girilmediginde site adi yazi olarak gosteriliyor (views/sites/flame).
 * Renk navbarin iki durumuna uyar: ustte saydam/koyu zemin -> beyaz,
 * kaydirinca (.page-on-scroll) ve mobilde beyaz zemin -> koyu. */
.header .logo-text {
  display: inline-block;
  font-family: "Ubuntu", Helvetica, Arial, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 65px;
  letter-spacing: -.02em;
  color: #fff;
  white-space: nowrap;
  transition: color .3s cubic-bezier(.7, 1, .7, 1);
}
.page-on-scroll .header .logo-text {
  color: #515769;
}
@media (max-width: 991px) {
  .header .logo-text {
    color: #515769;
  }
}

/* Flame: footer'daki sablon logosu yerine site adi (bkz. views/sites/flame). */
.footer .footer-brand {
  font-family: "Ubuntu", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #515769;
}

/* --- Builderz: yazi logosu tek satirda kalsin ---------------------------------
 * .top-bar 90px sabit, .logo h1 ise 60px/60px. "Parktas Maden" gibi iki kelimelik
 * bir ad col-lg-4 icine sigmayip alt satira tasiyor, 120px oluyor ve sarı serit
 * yariliyor (.logo overflow:hidden oldugu icin de kirpiliyor). Satir kirilmasini
 * kapatip yaziyi genislige gore kucultuyoruz - satir yuksekligi 60px'te kaliyor,
 * yani serit yuksekligi degismiyor. Panelden girilen ad ne olursa olsun tasmaz.
 * .top-bar yalnizca Builderz sablonunda var, diger iki siteyi etkilemez. */
/* Kurallar YAZIYA uygulanir, H1'e degil: H1 artik logo gorselini de sariyor ve
   metne ozgu kirpma/tasma ayarlari gorseli etkilememeli. */
.top-bar .logo .logo-text {
  display: block;
  white-space: nowrap;
  font-size: clamp(22px, 3vw, 60px);
  line-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  /* Rengi acikca veriyoruz: yazi artik <a> icinde ve sablonun a{color:#666}
     kurali mirasla kazaniyor - H1'in rengi zincirin ustunde kaliyor. */
  color: #030f27;
  font-weight: inherit;
}
/* Sablon boyut/rengi h1'e baglamisti; yazi artik span icinde. */
.top-bar .logo h1 {
  margin: 0;
  color: #030f27;
  font-weight: 700;
}

/* --- Flame: hero carousel'e sol/sag ok --------------------------------------
 * Sablon yalnizca noktali gostergeyle geliyordu; Builderz ve Industro'da olan
 * onceki/sonraki oklari Flame'de yoktu. Isaretleme views/sites/flame/index.ejs
 * icinde (Bootstrap 3 soz dizimi: .carousel-control + data-slide).
 *
 * Bootstrap 3'un varsayilan .carousel-control'u %15 genisliginde ve siyah degrade
 * tasiyor; ikisini de iptal ediyoruz. Genislik dar tutuluyor, cunku genis bir
 * kontrol slayt metnindeki butonun ustune binip tiklamayi yutuyor. */
#carousel-example-generic .carousel-control {
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, .15);
  background-image: none;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  color: #fff;
  font-size: 30px;
  text-shadow: none;
  opacity: 1;
  z-index: 20;
  transition: background-color .25s ease, border-color .25s ease;
}
#carousel-example-generic .carousel-control.left  { left: 30px; }
#carousel-example-generic .carousel-control.right { right: 30px; }
#carousel-example-generic .carousel-control:hover,
#carousel-example-generic .carousel-control:focus {
  background: rgba(255, 255, 255, .32);
  border-color: #fff;
  color: #fff;
  opacity: 1;
}
@media (max-width: 767px) {
  #carousel-example-generic .carousel-control { width: 48px; height: 48px; font-size: 22px; }
  #carousel-example-generic .carousel-control.left  { left: 10px; }
  #carousel-example-generic .carousel-control.right { right: 10px; }
}

/* --- Referans logolari (section_type = reference) -----------------------------
 * Uc sablonun uceninde de ayni isaretleme kullaniliyor; sablon CSS'i bu sinifi
 * tanimadigi icin gorunum burada. Logolar farkli en-boy oranlarinda geliyor
 * (600x600 ile 310x100 arasi), bu yuzden sabit yukseklikli bir kutuya
 * object-fit:contain ile oturtuluyor - hicbiri kirpilmiyor, hicbiri ezilmiyor. */
.reference-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 28px 40px;
  padding: 8px 0;
}
.reference-item {
  flex: 0 0 auto;
  width: 170px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.reference-item img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  /* Logolar kurumsal renklerinde; hafif soluk dururlar, uzerine gelince canlanir. */
  filter: grayscale(100%);
  opacity: .65;
  transition: filter .25s ease, opacity .25s ease;
  /* Bazi logolar seffaf degil, beyaz/kirik beyaz zeminli JPEG olarak geliyor
     (orn. Ilbank 600x600). multiply beyazi gorunmez kilar, boylece acik zeminde
     logonun etrafinda kutu olusmaz. Uc sablonda da bu bolum acik zeminde. */
  mix-blend-mode: multiply;
}
.reference-item:hover img,
.reference-item a:focus img {
  filter: none;
  opacity: 1;
}
@media (max-width: 575px) {
  .reference-strip { gap: 20px 24px; }
  .reference-item { width: 120px; height: 64px; }
}

/* --- Yerel video oynatici ------------------------------------------------------
 * Sablonun modali 16:9 sabit (.embed-responsive-16by9). Telefonla cekilmis dikey
 * bir video orada yan bantlar birakiyor; bantlar beyaz kalinca kaza gibi duruyor.
 * Siyah zemin bunu bilincli bir letterbox'a cevirir. Video kirpilmaz - contain. */
#videoModal .modal-content,
#videoModal .embed-responsive { background: #000; }
#video-file {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}

/* --- Belgeler (section_type = certificate) ------------------------------------
 * ISO sertifikalari taranmis A4 yatay sayfalar. Kirpmadan, okunabilir buyuklukte
 * gosteriliyor; tiklaninca tam boy acilir. Referans logolarindan farkli olarak
 * gri tonlama yok - belgenin muhru ve imzasi kendi renginde kalmali. */
.certificate-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
}
.certificate-item {
  flex: 0 1 320px;
  max-width: 360px;
  text-align: center;
}
.certificate-item img {
  width: 100%;
  height: auto;
  border: 1px solid rgba(0, 0, 0, .12);
  border-radius: 4px;
  background: #fff;
  transition: box-shadow .25s ease, transform .25s ease;
}
.certificate-item a:hover img,
.certificate-item a:focus img {
  box-shadow: 0 8px 28px rgba(0, 0, 0, .18);
  transform: translateY(-3px);
}
.certificate-meta {
  margin-top: 12px;
  line-height: 1.45;
}
.certificate-meta strong { display: block; font-size: 1.05em; }
.certificate-meta span {
  display: block;
  font-size: .86em;
  opacity: .75;
}
@media (max-width: 575px) {
  .certificate-grid { gap: 20px; }
  .certificate-item { flex: 0 1 100%; max-width: 100%; }
}

/* --- Satir ici tanitim videosu (Flame) ----------------------------------------
 * Sabit en-boy orani vermiyoruz: kaynak dikey de olabilir yatay da. 16:9 bir
 * cerceveye zorlamak dikey videoda genis siyah bantlar birakirdi. Yukseklik
 * sinirli, video kendi oranini koruyor. */
.site-video {
  max-width: 900px;
  margin: 0 auto;
  background: #000;
  border-radius: 6px;
  overflow: hidden;
  line-height: 0;
}
.site-video video,
.site-video iframe {
  display: block;
  width: 100%;
  max-height: 70vh;
  border: 0;
  background: #000;
}
.site-video video { object-fit: contain; }

/* ============================================================================
 * Site bazli kurallar
 * site-landing.css uc sitede de yukleniyor; asagidaki kurallar <body>'deki
 * .site-<slug> sinifiyla kapsanir (bkz. views/sites/<slug>/index.ejs).
 * ========================================================================== */

/* --- UDC (industro): turuncu -> bordo ----------------------------------------
 * Sablonun kendi rengi #FF5E14. Iki yerde tanimli:
 *   style.css       -> :root { --primary } ustunden 30'dan fazla kural
 *   bootstrap.min.css -> derlenmis halde 35 secicide gomulu hex
 * Degiskeni degistirmek birincisini komple cozuyor; ikincisi icin sayfada
 * gercekten kullanilan uc sinifi (text-primary, bg-primary, btn-primary)
 * eziyoruz. templates/ dosyalarina dokunulmuyor. */
.site-industro {
  --primary: #7E192F;
  --primary-koyu: #631425;   /* uzerine gelme / basili durum */
}
.site-industro .text-primary { color: var(--primary) !important; }
.site-industro .bg-primary { background-color: var(--primary) !important; }
.site-industro .link-primary { color: var(--primary) !important; }
.site-industro .border-primary { border-color: var(--primary) !important; }
.site-industro .btn-primary {
  background-color: var(--primary);
  border-color: var(--primary);
}
.site-industro .btn-primary:hover,
.site-industro .btn-primary:focus,
.site-industro .btn-primary:active,
.site-industro .btn-primary.active {
  background-color: var(--primary-koyu);
  border-color: var(--primary-koyu);
}
.site-industro .btn-outline-primary {
  color: var(--primary);
  border-color: var(--primary);
}
.site-industro .btn-outline-primary:hover,
.site-industro .btn-outline-primary:focus,
.site-industro .btn-outline-primary:active {
  background-color: var(--primary);
  border-color: var(--primary);
  color: #fff;
}
.site-industro .form-check-input:checked {
  background-color: var(--primary);
  border-color: var(--primary);
}

/* --- Flame (MSC): tepedeki saydam navbar --------------------------------------
 * Sablonda navbar sayfa tepesindeyken tamamen saydam ve baglantilari BEYAZ;
 * arkasindaki hero fotografinin acik bolgelerinde yazi okunmuyordu. Asagi
 * kaydirildiginda sablon .page-on-scroll ile beyaz zemine gecip koyu yaziya
 * donuyor - o hali dogru calisiyor, dokunmuyoruz.
 *
 * Zemini BEYAZ yapamayiz: tepedeki yazi beyaz, beyaz uzerinde kaybolurdu.
 * Bunun yerine yariseffaf koyu bir katman - fotograf gorunmeye devam ediyor,
 * beyaz yazi her fotografta okunuyor. Ustten alta acilan degrade, sert bir
 * seritten daha az goze batiyor. */
.site-flame .header .navbar {
  background: linear-gradient(to bottom, rgba(18, 22, 33, .62), rgba(18, 22, 33, .18));
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  transition: background .3s ease, backdrop-filter .3s ease;
}
/* Kaydirma halinde sablonun beyaz zemini gecerli; bulanikligi da kaldiriyoruz. */
.site-flame.page-on-scroll .header .navbar,
.page-on-scroll .site-flame .header .navbar,
.page-on-scroll .header .navbar {
  background: #fff;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
/* Tepedeki logo yazisi da beyaz kalsin (kaydirmada sablon koyuya cevirir). */
.site-flame .header .logo-wrap,
.site-flame .header .logo a { color: #fff; }

/* --- Is basvurusu formu (section_type = job) -----------------------------------
 * Uc sablon uc ayri CSS cercevesi kullaniyor (Bootstrap 3/4/5). Forma sablonun
 * kendi form sinifllarini vermek yerine kendi olcegimizde yaziyoruz - boylece
 * uc sitede de ayni davranir ve sablon guncellemesi bozmaz. */
.job-wrap {
  max-width: 860px;
  margin: 0 auto;
}
.job-form { text-align: left; }
.job-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 16px 20px;
}
.job-field { display: block; margin-bottom: 16px; }
.job-field > span {
  display: block;
  margin-bottom: 6px;
  font-size: .9rem;
  font-weight: 600;
  opacity: .85;
}
.job-field input,
.job-field select,
.job-field textarea {
  width: 100%;
  padding: 11px 14px;
  font: inherit;
  font-size: .95rem;
  color: inherit;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .18);
  border-radius: 6px;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.job-field textarea { resize: vertical; min-height: 110px; }
.job-field input:focus,
.job-field select:focus,
.job-field textarea:focus {
  outline: none;
  border-color: currentColor;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, .07);
}
.job-field-full { margin-top: 4px; }

/* Bot tuzagi: ekran disinda ama display:none DEGIL - bazi botlar gizli alani
   atliyor, ekran disindakini dolduruyor. */
.job-honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

.job-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.job-submit {
  padding: 12px 30px;
  font: inherit;
  font-weight: 600;
  color: #fff;
  background: #1c2b46;
  border: 0;
  border-radius: 6px;
  cursor: pointer;
  transition: opacity .2s ease, transform .1s ease;
}
.job-submit:hover { opacity: .9; }
.job-submit:active { transform: translateY(1px); }
.job-submit[disabled] { opacity: .55; cursor: progress; }
.job-status { font-size: .92rem; }
.job-status.ok { color: #1a7f4b; }
.job-status.err { color: #b3261e; }
.job-field .job-hata { display: block; margin-top: 5px; font-size: .85rem; color: #b3261e; }

/* Her sitenin kendi vurgu rengiyle gonder dugmesi */
.site-builderz .job-submit { background: #fdbe33; color: #030f27; }
.site-industro .job-submit { background: var(--primary, #7E192F); }
.site-flame .job-submit { background: #0f4c89; }

/* --- Sol alttaki sabit basvuru dugmesi ---------------------------------------
 * WhatsApp dugmeleri gibi sol altta duruyor. Mobilde yazi gizlenip yalniz ikon
 * kaliyor - dar ekranda tam genislikte bir cubuk icerigi kapatiyordu. */
.job-float {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 1030;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 12px 18px;
  font-size: .92rem;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  background: #1c2b46;
  border-radius: 999px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .25);
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.job-float:hover,
.job-float:focus {
  color: #fff;
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0, 0, 0, .3);
}
.site-builderz .job-float { background: #fdbe33; color: #030f27; }
.site-industro .job-float { background: var(--primary, #7E192F); }
.site-flame .job-float { background: #0f4c89; }
@media (max-width: 575px) {
  .job-float { left: 14px; bottom: 14px; padding: 13px; }
  .job-float span { display: none; }
}

/* Flame: marka adi sayfanin tek H1'i oldu (SEO). H1'in varsayilan boyut ve
   bosluklari logoyu navbar'dan tasiriyordu - gorunum aynen korunuyor. */
.site-flame .logo-heading {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}

/* --- Flame: proje/hizmet izgarasinin kayma sorunu ------------------------------
 * Bootstrap 3'un .row'u float tabanli. Kutular farkli yukseklikteyse dorduncu
 * kutu bir sonraki satira gecmek yerine ilk satirdaki EN KISA kutunun altina
 * takiliyordu: 7 proje 3-1-3 diye diziliyor, dorduncu proje ucuncu sutunda
 * yalniz kaliyordu. Satiri flex yapinca kutular yuksekliklerinden bagimsiz
 * duzgun sariyor. Masonry ile yonetilen izgaralara dokunmuyoruz - onlarin
 * konumunu eklenti hesapliyor. */
.site-flame #products .row:not(.masonry-grid),
.site-flame #services .row:not(.masonry-grid) {
  display: flex;
  flex-wrap: wrap;
}

/* --- Builderz: slayt basligi ---------------------------------------------------
 * Sablon .carousel-caption h1 icin renk ve boyut tanimliyor; baslik SEO icin
 * H2'ye alininca bu kurallar dusmustu ve yazi koyu lacivert (#030f27) kaliyordu -
 * fotografin uzerinde okunmuyordu. Marka sarisi hem okunur hem sablonla uyumlu.
 * Golge, acik renkli fotograflarda kenarlari ayirmak icin. */
.site-builderz .carousel .carousel-caption h2 {
  color: #fdbe33;
  font-size: clamp(30px, 4.4vw, 60px);
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: 35px;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .55);
}
@media (max-width: 575px) {
  .site-builderz .carousel .carousel-caption h2 { margin-bottom: 20px; }
}

/* --- Industro: uzun proje adi ---------------------------------------------------
 * .project-title sabit 80px yukseklikte, mutlak konumlu ve hover animasyonu
 * piksel degerlerine bagli. Resmi ihale adlari cok uzun olabiliyor
 * ("... Km:0+000-4+491,85 Arası Toprak İşleri, Sanat Yapıları ...") ve yazi
 * kutudan tasip gorselin ve egik ayirac cizgisinin uzerine biniyordu.
 * Kutuyu buyutmek hover animasyonunu bozardi; bunun yerine yaziyi iki satirda
 * kesiyoruz. Tam ad baslik (title) niteliginde duruyor. */
.site-industro .project-item .project-title h5 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: .95rem;
  line-height: 1.3;
  /* Km:0+000-4+491,85 gibi uzun kesintisiz parcalar tasmasin */
  overflow-wrap: anywhere;
}

/* --- Industro: proje seridinde esit yukseklikli karolar -------------------------
 * Sablon bu seridi kenardan kenara esit karolar olarak tasarlamis: baslik kutusu
 * kartin ALTINDA gizli duruyor (bottom:-110px) ve hover'da yukari kayiyor.
 * Panelden yuklenen fotograflar farkli oranlarda oldugunda satirin yuksekligi en
 * uzun fotografa gore belirleniyor, kisa fotograflarin altinda bosluk kaliyor ve
 * "gizli" baslik o boslukta gorunup satir sinirinda kesiliyordu.
 *
 * Sabit en-boy orani + cover ile her karo ayni yukseklikte; baslik yine tam
 * fotografin altinda kaliyor. Fotograf kirpiliyor ama seridin tasarimi bu. */
.site-industro #projects .project-item img {
  aspect-ratio: 4 / 3;
  height: auto;
  object-fit: cover;
  object-position: center;
}

/* --- MSC (flame): turuncu vurgu rengi -> lacivert --------------------------------
 * Sablonun vurgu rengi #FD871F; layout.min.css icinde yedi kurala gomulu.
 * Firma lacivert (#0f4c89) istedi. templates/ dosyasina dokunmadan eziyoruz.
 * Turuncu uzerinde koyu yazi okunuyordu, lacivert uzerinde okunmaz - bu yuzden
 * bu kurallarin hepsinde yazi beyaza cekiliyor. */
.site-flame ::selection { color: #fff; background: #0f4c89; }
.site-flame ::-moz-selection { color: #fff; background: #0f4c89; }

.site-flame .accordion .collapse.in,
.site-flame .accordion [aria-expanded="true"] {
  color: #fff;
  background: #0f4c89;
}

.site-flame .btn-white-bg:hover,
.site-flame .btn-white-bg:focus,
.site-flame .btn-white-bg.focus,
.site-flame .btn-default-bg:hover,
.site-flame .btn-default-bg:focus,
.site-flame .btn-default-bg.focus {
  color: #fff;
  background: #0f4c89;
  border-color: transparent;
}
/* Sablonda bu buton hover'da KOYU yaziya donuyordu (#515769); lacivert zeminde
   okunmazdi, beyazda birakiyoruz. */
.site-flame .btn-white-brd:hover,
.site-flame .btn-white-brd:focus,
.site-flame .btn-white-brd.focus {
  color: #fff;
  background: #0f4c89;
  border-color: #0f4c89;
}

.site-flame .bg-color-base { background: #0f4c89 !important; }

/* --- Industro: egik ayirac yaziyi kesiyordu ------------------------------------
 * .project-title::before mutlak konumlu; konumlanmis sozde eleman, kutunun
 * icindeki akis icindeki <h5>'in UZERINE boyaniyor. skewY(-5deg) bandi solda
 * daha asagida kaldigi icin ilk satirin ilk harflerinin ustunu orterek kesik
 * gosteriyordu. Basligi kendi yigin baglaminda one aliyoruz. */
.site-industro .project-item .project-title h5 {
  position: relative;
  z-index: 1;
}
/* Egik band 15px yukselebiliyor; yazinin ustunde biraz pay birakalim. */
.site-industro .project-item .project-title {
  padding-top: 8px;
}

/* --- Industro: koyu zeminde okunmayan bordo ust baslik ---------------------------
 * Hero ve proje bolumu koyu/mavi zeminde; ustteki kucuk yazi (.text-primary)
 * bordo oldugu icin okunmuyordu. Soluk beyaz bir hap seklinde zemin veriyoruz:
 * marka rengi korunuyor, kontrast geliyor. */
.site-industro .carousel-caption p.text-primary,
.site-industro #projects p.text-primary,
.site-industro .bg-dark p.text-primary {
  display: inline-block;
  padding: 6px 16px;
  background: rgba(255, 255, 255, .92);
  border-radius: 999px;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

/* Koyu panelde proje adi: bordo (#7E192F) lacivert (#02245B) uzerinde 1.47:1
   kontrast veriyordu - okunabilirlik esigi 4.5:1. Beyaz ~14:1 yapiyor.
   Marka rengi sayfanin acik zeminli yerlerinde korunuyor. */
/* .text-primary kuralimiz !important tasiyor; onu gecmek icin burada da gerekli. */
.site-industro .project-item .project-title h5.text-primary,
.site-industro .project-item .project-title h5 { color: #fff !important; }

/* Marka adi sayfanin tek H1'i; H1'in varsayilan boyut/bosluklari navbar'i
   bozmasin diye cevreleyen metin ozellikleri devraliniyor (bkz. flame). */
.site-builderz .logo-heading,
.site-industro .logo-heading {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  display: inline-block;
}
