/* === v1.37.5 Kocaburun Footer / Künye === */

.kb-site-footer{
  position:relative;
  width:100%;
  max-width:100%;
  margin-top:56px;
  padding:34px clamp(18px, 2.4vw, 38px) 18px;
  border-top:1px solid rgba(25,200,245,.10);
  background:
    radial-gradient(circle at 8% 0%, rgba(25,200,245,.10), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(255,122,24,.08), transparent 30%),
    linear-gradient(180deg, rgba(6,19,32,.72), rgba(7,13,28,.96));
  color:rgba(230,245,255,.78);
  overflow:hidden;
  box-sizing:border-box;
}

.kb-site-footer::before{
  content:"";
  position:absolute;
  left:clamp(18px, 2.4vw, 38px);
  right:clamp(18px, 2.4vw, 38px);
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(25,200,245,.28), rgba(255,122,24,.20), transparent);
  pointer-events:none;
}

.kb-footer-inner{
  width:100%;
  max-width:1480px;
  margin:0 auto;
}

.kb-footer-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding-bottom:24px;
  border-bottom:1px solid rgba(255,255,255,.075);
}

.kb-footer-brand{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}

.kb-footer-logo{
  display:flex;
  align-items:center;
  text-decoration:none;
  color:#fff;
}

.kb-footer-logo img{
  display:block;
  width:auto;
  height:52px;
  max-width:190px;
  object-fit:contain;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.34));
}

.kb-footer-lang{
  display:inline-flex;
  align-items:center;
  gap:9px;
  height:42px;
  padding:0 14px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);
  color:#eef8ff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.02em;
  white-space:nowrap;
}

.kb-footer-lang .flag{
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:linear-gradient(135deg,#e2232f,#b70d18);
  font-size:13px;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
}

.kb-footer-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}

.kb-footer-follow{
  display:flex;
  align-items:center;
  gap:8px;
  margin-right:4px;
}

.kb-footer-follow span{
  color:rgba(224,239,249,.58);
  font-size:11px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.kb-footer-social{
  width:36px;
  height:36px;
  border-radius:9px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.045);
  color:#fff;
  text-decoration:none;
  font-size:18px;
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}

.kb-footer-social:hover{
  transform:translateY(-2px);
  border-color:rgba(25,200,245,.28);
  background:rgba(25,200,245,.10);
}

.kb-footer-store{
  min-width:144px;
  height:46px;
  padding:0 15px;
  border-radius:11px;
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:#f5fbff;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.kb-footer-store i{
  font-style:normal;
  font-size:21px;
  line-height:1;
}

.kb-footer-store b{
  display:block;
  font-size:10px;
  line-height:1.05;
  color:rgba(230,245,255,.66);
  text-transform:uppercase;
  letter-spacing:.04em;
}

.kb-footer-store strong{
  display:block;
  font-size:12px;
  line-height:1.05;
  color:#fff;
  letter-spacing:.03em;
}

.kb-footer-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:34px;
  padding:24px 0 20px;
  border-bottom:1px solid rgba(255,255,255,.075);
}

.kb-footer-col h3{
  margin:0 0 12px;
  color:#ff7a18;
  font-size:12px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.kb-footer-col nav{
  display:grid;
  gap:9px;
}

.kb-footer-col a{
  color:rgba(226,241,252,.62);
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  line-height:1.15;
  transition:color .16s ease, transform .16s ease;
}

.kb-footer-col a:hover{
  color:#fff;
  transform:translateX(3px);
}

.kb-footer-note{
  display:grid;
  place-items:center;
  text-align:center;
  gap:10px;
  padding:18px 0 22px;
  border-bottom:1px solid rgba(255,255,255,.075);
  color:rgba(223,239,250,.55);
  font-size:12px;
  font-weight:750;
  line-height:1.45;
}

.kb-footer-legal-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:rgba(230,245,255,.65);
  font-size:13px;
  font-weight:900;
}

.kb-footer-legal-badge em{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  font-style:normal;
  font-size:12px;
  font-weight:1000;
  background:rgba(255,255,255,.045);
}

.kb-footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-top:16px;
  color:rgba(226,241,252,.58);
  font-size:12px;
  font-weight:850;
}

.kb-footer-credit{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}

.kb-footer-credit strong{
  color:rgba(255,255,255,.86);
}

.kb-footer-credit span{
  color:#ff7a18;
}

@media(max-width:1100px){
  .kb-footer-top{
    align-items:flex-start;
    flex-direction:column;
  }

  .kb-footer-actions{
    justify-content:flex-start;
  }

  .kb-footer-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media(max-width:760px){
  .kb-site-footer{
    margin-top:38px;
    padding:28px 18px 18px;
  }

  .kb-footer-brand{
    width:100%;
    justify-content:space-between;
  }

  .kb-footer-logo img{
    height:42px;
    max-width:160px;
  }

  .kb-footer-grid{
    grid-template-columns:1fr;
    gap:22px;
  }

  .kb-footer-actions{
    width:100%;
  }

  .kb-footer-follow{
    width:100%;
  }

  .kb-footer-store{
    flex:1 1 150px;
  }

  .kb-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:420px){
  .kb-footer-brand{
    align-items:flex-start;
    flex-direction:column;
  }

  .kb-footer-store{
    width:100%;
  }
}


/* === v1.37.8 Footer uses real main lane === */
/*
  Footer artık views/partials/footer.ejs içinde:
  <div class="main kb-footer-main-lane">...</div>
  ile sarılıyor.

  Böylece sidebar/main lane sistemi ne kullanıyorsa footer da onu kullanır.
  Bu blok sadece .main'in footer için gereksiz üst/alt boşluklarını sıfırlar.
*/

body:not(.admin-body) .main.kb-footer-main-lane{
  min-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  box-sizing:border-box!important;
}

/* Footer, artık lane'in içinde olduğu için kendisi ekstra sidebar margin kullanmasın. */
body:not(.admin-body) .main.kb-footer-main-lane .kb-site-footer{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* Eski hizalama yamalarının inner margin denemelerini ez. */
body:not(.admin-body) .main.kb-footer-main-lane .kb-footer-inner{
  width:100%!important;
  max-width:1480px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Mobilde de .main mobil mantığı zaten margin-left:0 olur; sadece aşırı top/bottom padding yok. */
@media(max-width:1000px){
  body:not(.admin-body) .main.kb-footer-main-lane{
    padding-top:0!important;
    padding-bottom:0!important;
  }
}
/* === END v1.37.8 Footer uses real main lane === */


/* === v1.38.2 Footer bottom end fix === */
/*
  Footer lane wrapper .main class'ından gelen min-height/padding davranışını tamamen sıfırlar.
  Ama yatay lane hizasını korur.
*/

html body:not(.admin-body) .main.kb-footer-main-lane{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  overflow:visible!important;
}

/* Footer kendi içinde bitsin; ekstra dış boşluk üretmesin. */
html body:not(.admin-body) .main.kb-footer-main-lane .kb-site-footer{
  margin-top:0!important;
  margin-bottom:0!important;
}

/* Footer en alt satırından sonra dış boşluk kalmasın. */
html body:not(.admin-body) .main.kb-footer-main-lane .kb-footer-bottom{
  margin-bottom:0!important;
}

/* Body altında yanlışlıkla gelen son boşlukları bastırma. */
html body:not(.admin-body) .main.kb-footer-main-lane + *{
  margin-top:0!important;
}

/* Mobilde de footer bitişi sayfa bitişi olsun. */
@media(max-width:1000px){
  html body:not(.admin-body) .main.kb-footer-main-lane{
    min-height:0!important;
    height:auto!important;
    padding-top:0!important;
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
}
/* === END v1.38.2 Footer bottom end fix === */


/* === v1.38.3 Footer Mobile 2x2 Column Grid === */
/*
  Mobil footer kolonları:
  1. satır: Etkinlikler | Genel
  2. satır: Kocaburun | Yasal & Künye
*/

@media(max-width:760px){
  .kb-site-footer .kb-footer-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:20px 18px!important;
    align-items:start!important;
  }

  .kb-site-footer .kb-footer-col{
    min-width:0!important;
  }

  .kb-site-footer .kb-footer-col h3{
    font-size:11px!important;
    letter-spacing:.10em!important;
    margin-bottom:10px!important;
    white-space:normal!important;
  }

  .kb-site-footer .kb-footer-col nav{
    gap:8px!important;
  }

  .kb-site-footer .kb-footer-col a{
    font-size:13px!important;
    line-height:1.2!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:390px){
  .kb-site-footer .kb-footer-grid{
    gap:18px 12px!important;
  }

  .kb-site-footer .kb-footer-col h3{
    font-size:10px!important;
  }

  .kb-site-footer .kb-footer-col a{
    font-size:12px!important;
  }
}
/* === END v1.38.3 Footer Mobile 2x2 Column Grid === */


/* === v1.38.4 Footer Mobile 2x2 Force Fix === */
/*
  Mobil footer kolonlarını zorunlu 2x2 yapar.
  Sıra JS tarafından:
  Etkinlikler | Genel
  Kocaburun | Yasal & Künye
  olarak render edilir.
*/

@media(max-width:900px){
  html body:not(.admin-body) .kb-site-footer .kb-footer-grid,
  html body:not(.admin-body) .main.kb-footer-main-lane .kb-site-footer .kb-footer-grid{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:20px 18px!important;
    align-items:start!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col{
    min-width:0!important;
    width:auto!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col h3{
    font-size:11px!important;
    letter-spacing:.10em!important;
    margin:0 0 10px!important;
    white-space:normal!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col nav{
    display:grid!important;
    gap:8px!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col a{
    font-size:13px!important;
    line-height:1.22!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:390px){
  html body:not(.admin-body) .kb-site-footer .kb-footer-grid{
    gap:18px 12px!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col h3{
    font-size:10px!important;
  }

  html body:not(.admin-body) .kb-site-footer .kb-footer-col a{
    font-size:12px!important;
  }
}
/* === END v1.38.4 Footer Mobile 2x2 Force Fix === */

