/* =================================================================
   FOOTER
   ================================================================= */

.footer{ background: var(--navy-deep); color: var(--on-navy); }
.footer__top{ padding: var(--sp-xl) 0 var(--sp-lg); }
.footer__grid{ display:flex; flex-wrap:wrap; gap: var(--sp-lg); padding-bottom: var(--sp-lg); border-bottom: 1px solid rgba(255,255,255,0.1); }
.footer__brand{ flex: 2 1 280px; max-width: 320px; }
.footer__grid > div:not(.footer__brand){ flex: 1 1 180px; }

.footer__logo{ display:flex; align-items:center; gap:0.75rem; margin-bottom: var(--sp-md); }
.footer__mark{ width:40px; height:40px; border-radius:11px; background: var(--grad-amber); box-shadow: var(--shadow-icon); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.footer__mark svg{ width:22px; height:22px; }
.footer__name{ font-family: var(--f-display); font-weight:800; font-size:1.05rem; color:#fff; }
.footer__name span{ display:block; font-size:0.62rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color: var(--amber); margin-top:2px; }
.footer__brand p{ font-size:0.9rem; color: var(--on-navy-muted); line-height:1.75; }

.footer__heading{ font-family: var(--f-display); font-size:0.78rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color: var(--amber); margin-bottom: var(--sp-md); }
.footer__link{ display:block; padding: 0.32rem 0; font-size:0.9rem; color: var(--on-navy-muted); transition: color 0.3s ease, padding-left 0.3s ease; }
.footer__link:hover{ color:#fff; padding-left:4px; }

.footer__contact-item{ display:flex; gap:0.7rem; margin-bottom: var(--sp-sm); font-size:0.87rem; color: var(--on-navy-muted); line-height:1.7; }
.footer__contact-item svg{ width:16px; height:16px; flex-shrink:0; color: var(--amber); margin-top:3px; }
.footer__contact-item a{ color: var(--on-navy-muted); transition: color 0.3s ease; }
.footer__contact-item a:hover{ color:#fff; }

.footer__bottom{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding: var(--sp-md) 0; font-size:0.82rem; color: var(--on-navy-muted); }
.footer__social{ display:flex; gap:0.5rem; }
.footer__social a{
  width:36px; height:36px; display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,0.14); border-radius:50%; color: var(--on-navy-muted);
  transition: all 0.3s ease;
}
.footer__social a:hover{ border-color: var(--accent); color: var(--accent); background: rgba(234,88,12,0.1); }

@media (max-width: 600px){
  .footer__grid{ flex-direction: column; }
  .footer__bottom{ flex-direction:column; text-align:center; }
}
