/* Printalya — _LandingFooter (.hp-footer). Tek kaynak; tüm sayfalarda aynı dikey/yatay ritim. */

:root {
  --hp-footer-pad-top: 56px;
  --hp-footer-pad-x: 64px;
  --hp-footer-grid-pb: 48px;
  --hp-footer-bar-py: 18px;
}

@media (max-width: 1100px) {
  :root {
    --hp-footer-pad-top: 44px;
    --hp-footer-pad-x: 40px;
    --hp-footer-grid-pb: 40px;
  }
}

@media (max-width: 768px) {
  :root {
    --hp-footer-pad-top: 36px;
    --hp-footer-pad-x: 24px;
    --hp-footer-grid-pb: 32px;
    --hp-footer-bar-py: 16px;
  }
}

.hp-footer {
  background: var(--ink-soft) !important;
  color: var(--cream) !important;
  padding: var(--hp-footer-pad-top) var(--hp-footer-pad-x) 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Bootstrap / şema: main ile footer arasında ek margin kalmasın */
main + footer.hp-footer {
  margin-top: 0 !important;
}

.hp-footer .footer-top {
  max-width: 1280px !important;
  width: 100% !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1.4fr !important;
  gap: 56px !important;
  /* katalog style.min: .footer-top { padding: 84px 0 50px } — üst/yanları sıfırla */
  padding-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: var(--hp-footer-grid-pb) !important;
  border-bottom: 1px solid rgba(247, 243, 236, 0.1) !important;
  box-sizing: border-box !important;
}

@media (max-width: 1100px) {
  .hp-footer .footer-top {
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
  }
}

@media (max-width: 768px) {
  .hp-footer .footer-top {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .hp-footer .footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .hp-footer .footer-bottom .ft-legal {
    margin-left: 0 !important;
    justify-content: center !important;
  }
}

.hp-footer .footer-brand h3 {
  font-family: var(--font-head) !important;
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
  line-height: 1.1 !important;
  margin-bottom: 12px !important;
}

.hp-footer .footer-brand h3 span {
  color: var(--rust-light) !important;
}

.hp-footer .footer-brand > p {
  font-size: 0.85rem !important;
  color: rgba(247, 243, 236, 0.5) !important;
  line-height: 1.75 !important;
  margin-bottom: 24px !important;
  max-width: 280px !important;
}

.hp-footer .ft-social {
  display: flex !important;
  gap: 10px !important;
}

.hp-footer .ft-social a {
  width: 36px !important;
  height: 36px !important;
  background: rgba(247, 243, 236, 0.07) !important;
  border-radius: 6px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: rgba(247, 243, 236, 0.55) !important;
  font-size: 0.85rem !important;
  transition: background var(--tr), color var(--tr) !important;
}

.hp-footer .ft-social a:hover {
  background: var(--rust) !important;
  color: white !important;
}

.hp-footer .footer-col h4 {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif !important;
  font-size: 0.73rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(247, 243, 236, 0.35) !important;
  margin-bottom: 20px !important;
}

.hp-footer .ft-links {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.hp-footer .ft-links a {
  font-size: 0.875rem !important;
  color: rgba(247, 243, 236, 0.6) !important;
  transition: color var(--tr) !important;
}

.hp-footer .ft-links a:hover {
  color: var(--cream) !important;
}

.hp-footer .ft-contact-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}

.hp-footer .ft-contact-item i {
  color: var(--rust-light) !important;
  margin-top: 2px !important;
  flex-shrink: 0 !important;
  font-size: 0.82rem !important;
}

.hp-footer .ft-contact-item span {
  font-size: 0.85rem !important;
  color: rgba(247, 243, 236, 0.6) !important;
  line-height: 1.5 !important;
}

.hp-footer .ft-contact-item span a {
  color: inherit !important;
}

.hp-footer .footer-bottom {
  max-width: 1280px !important;
  width: 100% !important;
  margin: 0 auto !important;
  /* katalog style.min: .footer-bottom { height:122px; padding-left:70px; border-top:... } */
  height: auto !important;
  min-height: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: var(--hp-footer-bar-py) !important;
  padding-bottom: var(--hp-footer-bar-py) !important;
  border-top: none !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px 24px !important;
  font-size: 0.78rem !important;
  color: rgba(247, 243, 236, 0.3) !important;
  box-sizing: border-box !important;
  /* katalog float düzeni flex ile çakışmasın */
  float: none !important;
}

.hp-footer .footer-bottom::after {
  display: none !important;
}

.hp-footer .footer-bottom > * {
  float: none !important;
}

/* Telif solda; yasal linkler sağa — space-between yerine margin-left:auto katalog/taşma durumlarında daha stabil */
.hp-footer .footer-bottom .ft-legal {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px 20px !important;
  justify-content: flex-end !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
}

.hp-footer .footer-bottom a {
  color: rgba(247, 243, 236, 0.4) !important;
  transition: color var(--tr) !important;
}

.hp-footer .footer-bottom a:hover {
  color: var(--cream) !important;
}
