/* ========================
   Square tarzı Footer
   ======================== */
.sq-footer{
  background:#000; color:#fff;
  padding:clamp(48px,8vw,120px) 0 0;
  font-synthesis-weight:none;
}

/* Başlık — 2. görseldeki büyüklük */
.sq-cta h2{
  margin:0 0 clamp(28px,4vw,44px);
  font-weight:600;
  font-size:clamp(44px,8.8vw,88px);
  line-height:1.05; letter-spacing:-.01em;
}
.sq-asterisk{ font-size:.55em; vertical-align:super; }

/* Butonlar */
.sq-actions{
  display:grid;
  grid-template-columns: 1fr 1fr;     /* iki eşit sütun */
  gap:clamp(12px,2.5vw,16px);
  width:100%;
  max-width:680px;                     /* taşmaması için üst sınır */
  margin:0 auto clamp(16px,3vw,24px);  /* ortaya al */
}

.sq-btn{
  width:100%;          /* hücreyi tamamen doldursun (eşit genişlik) */
  min-width:0;         /* metin uzun diye taşmasın */
  height:64px;
  padding:0 18px;
  border-radius:9999px;
  display:inline-flex; align-items:center; justify-content:center;
  font-weight:700;
  font-size:clamp(14px,3.2vw,18px);   /* dar ekranlarda yazı otomatik küçülür */
  line-height:1.1;
  border:2px solid transparent;
  text-align:center;
  white-space:nowrap;                 /* tek satırda kalsın */
  overflow:hidden; text-overflow:ellipsis; /* yine de sığmazsa kesme yap */
  cursor:pointer;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .08s ease;
}

.sq-btn{
  /* hover/focus için akıcı geçişler */
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    background-color .18s ease,
    color .18s ease,
    border-color .18s ease;
  will-change: transform;
}

.sq-btn--outline{ background:transparent; border-color:#fff; color:#fff; }
.sq-btn--solid{ background:#fff; color:#000; border-color:#fff; }

/* HOVER / FOCUS / ACTIVE */
@media (hover:hover){
  .sq-btn:hover,
  .sq-btn:focus-visible{
    transform: translateY(-2px);
    box-shadow:
      0 0 0 6px rgba(255,255,255,.10),
      0 10px 24px rgba(0,0,0,.35);
    outline: none;
  }
}
.sq-btn:focus-visible{
  transform: translateY(-2px);
  box-shadow:
    0 0 0 6px rgba(255,255,255,.10),
    0 10px 24px rgba(0,0,0,.35);
  outline: none;
}
.sq-btn:active{
  transform: translateY(0);
  box-shadow:
    0 0 0 4px rgba(255,255,255,.08),
    0 6px 14px rgba(0,0,0,.30);
}
.sq-btn--outline:hover,
.sq-btn--outline:focus-visible{ background:#111; color:#fff; border-color:#fff; }
.sq-btn--solid:hover,
.sq-btn--solid:focus-visible,
.sq-btn--submit:hover,
.sq-btn--submit:focus-visible{ background:#f2f2f2; color:#000; border-color:#fff; }
.sq-btn:disabled{ opacity:.6; cursor:not-allowed; transform:none; box-shadow:none; }

/* Kaynak link satırı */
.sq-source{
  margin:clamp(18px,3vw,28px) 0 0;
  font-size:15px; color:rgba(255,255,255,.9);
}
.sq-link{ color:#fff; text-decoration:underline; }
.sq-link:hover{ text-decoration-color:rgba(255,255,255,.7); }

/* Newsletter */
.sq-newsletter{ margin-top:clamp(56px,10vw,120px); }
.sq-newsletter h3{
  margin:0 0 10px; font-weight:700;
  font-size:clamp(28px,6vw,48px); line-height:1.2;
}
.sq-sub{
  margin:0 0 26px; font-size:clamp(16px,3.5vw,22px);
  color:rgba(255,255,255,.85);
}

/* Form */
.sq-form{
  display:grid; gap:16px; width:min(760px,100%);
}
.sq-form input{
  height:64px; padding:0 24px;
  border-radius:9999px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.02);
  color:#fff; font-size:16px; outline:none;
}
.sq-form input::placeholder{ color:rgba(255,255,255,.6); }
.sq-form input:focus{
  border-color:#fff; box-shadow:0 0 0 4px rgba(255,255,255,.15);
}
.sq-btn--submit{
  height:64px; border-radius:9999px;
  background:#fff; color:#000; border:2px solid #fff;
  font-weight:700; font-size:18px; padding:0 32px;
}

/* LEGAL (3. görsel) */
.sq-legal{
  margin-top:clamp(64px,12vw,160px);
  border-top:1px solid rgba(255,255,255,.14);
}
.sq-legal__top{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:18px 0;
}
.sq-locale{ display:flex; align-items:center; gap:10px; color:#fff; }
.sq-social{ list-style:none; display:flex; align-items:center; gap:22px; margin:0; padding:0; }
.sq-social a{ color:#fff; display:inline-flex; transition:opacity .15s ease; }
.sq-social a:hover{ opacity:.8; }

/* alt blok */
.sq-legal__bottom{
  text-align:center;
  padding:18px 0 80px;
}
.sq-copy{
  margin:18px 0 14px; font-size:16px; color:rgba(255,255,255,.8);
}
.sq-legal-links{
  display:grid; gap:14px; justify-content:center;
}
.sq-legal-links a{
  color:#fff; font-weight:600; font-size:18px; text-decoration:none;
}
.sq-legal-links a:hover{ text-decoration:underline; }

/* Erişilebilirlik */
.sq-visually-hidden{
  position:absolute!important; height:1px; width:1px; overflow:hidden;
  clip:rect(1px,1px,1px,1px); white-space:nowrap;
}

/* Desktop düzeni */
@media (min-width:900px){
  .sq-actions{ grid-template-columns:auto auto; }
  .sq-form{ grid-template-columns:1fr auto; }
  .sq-legal-links{
    grid-template-columns:repeat(2, max-content);
    column-gap:48px; row-gap:14px;
  }
}

/* Hareketi azaltanlar için */
@media (prefers-reduced-motion: reduce){
  .sq-btn{
    transition: background-color .18s ease, color .18s ease, border-color .18s ease;
  }
  .sq-btn:hover, .sq-btn:focus-visible, .sq-btn:active{
    transform:none; box-shadow:none;
  }
}
@media (max-width:380px){
  .sq-btn{ font-size:14px; padding:0 14px; }  /* iki buton yine yan yana sığsın */
}

/* LEGAL üst satırı: mobilde ortala */
@media (max-width: 900px){
  .sq-legal__top{
    justify-content: center;   /* ortala */
    gap: 20px;
    flex-wrap: wrap;           /* taşarsa alt satıra insin */
    text-align: center;
  }
  .sq-locale,
  .sq-social{
    display: flex;
    align-items: center;
    justify-content: center;   /* grup içini de ortala */
    width: 100%;
  }
}

/* Desktop'ta yine kenarlara yaslı kalsın */
@media (min-width: 901px){
  .sq-legal__top{ justify-content: space-between; }
}

