/* =========================================================
   /tema/assets/css/footer.css (SADECE FOOTER - ÇAKIŞMA YOK)
   - GLOBAL :root YOK
   - Tüm değişkenler .footer-main scope'unda
   - Header etkilenmez
========================================================= */

/* Footer ana (scope değişkenler burada) */
.footer-main{
  /* admin renkleri (globalden okur ama değiştirmez) */
  --ra-brand:  var(--renk-1, #1c334b);
  --ra-accent: var(--renk-2, #0ea5e9);

  --ra-bg:#07101d;
  --ra-bg2:#050a12;

  --ra-text: rgba(255,255,255,.92);
  --ra-muted: rgba(255,255,255,.70);

  --ra-line: rgba(255,255,255,.10);

  --ra-r:16px;
  --ra-shadow: 0 18px 60px rgba(0,0,0,.35);

  color: var(--ra-text);
  background:
    radial-gradient(1200px 520px at 15% 15%, rgba(255,255,255,.05), transparent 60%),
    radial-gradient(900px 520px at 85% 35%, rgba(255,255,255,.035), transparent 58%),
    radial-gradient(1100px 520px at 20% 25%, rgba(14,165,233,.16), transparent 62%),
    radial-gradient(900px 520px at 85% 45%, rgba(28,51,75,.18), transparent 58%),
    linear-gradient(180deg, var(--ra-bg), var(--ra-bg2) 88%);
  border-top: 1px solid rgba(255,255,255,.06);
  position: relative;
  overflow: hidden;
}

/* Dot deseni (sadece footer) */
.footer-main::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.10;
  background-image: radial-gradient(rgba(255,255,255,.9) 1.4px, transparent 1.4px);
  background-size: 46px 46px;
  background-position: 0 0;
}

/* Container */
.footer-main .container{
  width:100%;
  max-width: 1240px;
  margin:0 auto;
  padding:0 18px;
  position:relative;
  z-index:1;
}

.footer-main .footer-top{
  padding: 56px 0 24px;
}

/* =========================================================
   GRID — sadece footer içinde
========================================================= */
.footer-main .footer-top{
  display:flex;
  flex-wrap:wrap;
  gap: 18px;
  align-items: stretch;
}

.footer-main .footer-top > .col-12.col-lg-4{
  flex: 0 0 calc(33.333333% - 12px);
  max-width: calc(33.333333% - 12px);
}

.footer-main .footer-top > .col-12.col-lg-8{
  flex: 0 0 calc(66.666667% - 12px);
  max-width: calc(66.666667% - 12px);
}

.footer-main .footer-top > .col-12.col-lg-8 > .row{
  display:flex;
  flex-wrap:wrap;
  gap: 18px;
  margin:0;
}

.footer-main .footer-top > .col-12.col-lg-8 > .row > .col-6.col-md-4{
  flex: 0 0 calc(33.333333% - 12px);
  max-width: calc(33.333333% - 12px);
}

@media (max-width:991px){
  .footer-main .footer-top > .col-12.col-lg-4,
  .footer-main .footer-top > .col-12.col-lg-8{
    flex:0 0 100%;
    max-width:100%;
  }
  .footer-main .footer-top > .col-12.col-lg-8 > .row > .col-6.col-md-4{
    flex:0 0 calc(50% - 9px);
    max-width: calc(50% - 9px);
  }
}
@media (max-width:575px){
  .footer-main .footer-top > .col-12.col-lg-8 > .row > .col-6.col-md-4{
    flex:0 0 100%;
    max-width:100%;
  }
}

/* =========================================================
   SOL BLOK KART (sadece footer)
========================================================= */
.footer-main .col-12.col-lg-4{
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: var(--ra-r);
  padding: 18px 18px;
  box-shadow: var(--ra-shadow);
}

.footer-main .footer-logo{
  height:56px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  display:block;
  margin-bottom: 10px;
}
@media (max-width:575px){
  .footer-main .footer-logo{ height:46px; max-width:180px; }
}

.footer-main .footer-title{
  font-weight: 900;
  margin: 0 0 10px;
  letter-spacing: .2px;
}
.footer-main .footer-text{
  color: var(--ra-muted);
  line-height: 1.75;
  margin: 0 0 16px;
  max-width: 46ch;
}

/* Sosyal */
.footer-main .footer-social{
  margin-top: 10px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.footer-main .footer-social-btn{
  width:42px; height:42px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;

  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  text-decoration:none;

  box-shadow: 0 10px 22px rgba(0,0,0,.22);
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.footer-main .footer-social-btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.12);
  box-shadow: 0 16px 34px rgba(0,0,0,.30);
}

/* =========================================================
   SAĞ BLOK
========================================================= */
.footer-main .footer-col-title{
  font-weight: 900;
  margin: 0 0 12px;
  padding-bottom: 10px;
  position: relative;
}
.footer-main .footer-col-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:52px;
  height:3px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--ra-accent), rgba(0,0,0,0));
}

.footer-main .footer-list{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.footer-main .footer-link{
  color: var(--ra-muted);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition: color .18s ease, transform .18s ease;
}
.footer-main .footer-link::before{ content:"›"; opacity:.55; }
.footer-main .footer-link:hover{
  color:#fff;
  transform: translateX(3px);
}

/* Alt */
.footer-main .footer-bottom{
  border-top: 1px solid rgba(255,255,255,.08);
  color: rgba(255,255,255,.62);
  padding: 14px 0;
  text-align:center;
  width:100%;
  display:block;
}

/* Footer search (sadece footer) */
.footer-main .footer-search-area .container{ max-width:1240px; }
.footer-main .footer-search-area form{ width:100%; }
.footer-main .footer-search-area input[type="search"],
.footer-main .footer-search-area input[type="text"]{ width:100%; }

/* Scroll top (id global ama stil footer temasıyla uyumlu) */
#scrollToTop{
  position:fixed;
  right:20px;
  bottom:22px;
  width:46px; height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(7,16,29,.82);
  border:1px solid rgba(255,255,255,.14);
  box-shadow: 0 12px 26px rgba(0,0,0,.25);

  opacity:0;
  visibility:hidden;
  transform: translateY(10px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease, background .18s ease;
  z-index:80;
}
#scrollToTop.is-visible{ opacity:1; visibility:visible; transform:translateY(0); }
#scrollToTop:hover{ background: rgba(7,16,29,.95); }

/* Mobil sabit bar (footer'a ait sınıflar) */
.footer-cta-bar{ display:none; }

@media (max-width: 767.98px){
  .footer-cta-bar{
    display:flex;
    position:fixed;
    left:0; right:0; bottom:0;
    height:64px;
    padding:10px 12px;
    gap:12px;
    justify-content:center;
    align-items:center;

    background: rgba(5,10,18,.92);
    backdrop-filter: blur(10px);
    border-top:1px solid rgba(255,255,255,.10);
    z-index:9999;
  }

  .footer-cta{
    flex:1 1 0;
    max-width:180px;
    height:44px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    background: rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.12);
    color:#fff;
    text-decoration:none;
    font-weight:800;
    font-size:14px;
    white-space:nowrap;

    transition: transform .18s ease, filter .18s ease;
  }
  .footer-cta:hover{ transform: translateY(-2px); filter: brightness(1.03); }

  .footer-cta--wa{ background:#25D366; border-color:#25D366; }
  .footer-cta--wa:hover{ background:#1ebe5d; border-color:#1ebe5d; }

  .footer-cta--tel{ background:#0d6efd; border-color:#0d6efd; }
  .footer-cta--tel:hover{ background:#0b5ed7; border-color:#0b5ed7; }

  .footer-cta--ig{
    background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af,#515bd4);
    border:0;
  }
  .footer-cta--ig:hover{ opacity:.92; }

  .footer-cta i{ font-size:20px; }

  body{ padding-bottom: 74px; }
  #scrollToTop{ bottom: 82px; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .footer-main *, #scrollToTop{ transition:none !important; animation:none !important; }
}