/* ============================================================
   Shared site footer – IFZA-style layout (4-col)
   Scoped under "footer.site"
   ============================================================ */

footer.site{
  --ftr-navy:#000000;
  --ftr-gold:#C7A44D;
  --ftr-line:rgba(255,255,255,.14);
  --ftr-font:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;

  background:var(--ftr-navy);
  color:rgba(255,255,255,.92);
  padding:0;
  font-size:14px;
  font-family:var(--ftr-font);
}
footer.site *{box-sizing:border-box;}
footer.site img,footer.site svg{display:block; max-width:100%;}
footer.site a{color:inherit;}
footer.site .container{max-width:1200px; margin:0 auto; padding:0 24px;}

/* ── TOP: Link grid (4 cols) ── */
footer.site .footer-links-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  gap:40px;
  padding:64px 0 56px;
}
footer.site .footer-links-grid h4{
  font-size:16px;
  font-weight:600;
  color:#fff;
  margin:0 0 20px;
  letter-spacing:.01em;
}
footer.site .footer-links-grid a{
  display:block;
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-color:rgba(255,255,255,.35);
  color:rgba(255,255,255,.75);
  margin-bottom:12px;
  font-size:14px;
  transition:color .2s ease, text-decoration-color .2s ease;
}
footer.site .footer-links-grid a:hover{
  color:#fff;
  text-decoration-color:#fff;
}

/* ── MIDDLE: Info band (4 cols) ── */
footer.site .footer-info-band{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:40px;
  border-top:1px solid var(--ftr-line);
  padding:48px 0;
}
footer.site .footer-info-band h4{
  font-size:16px;
  font-weight:600;
  color:#fff;
  margin:0 0 18px;
}

/* Logo */
footer.site .footer-logo-link{display:inline-block; margin-bottom:20px;}
footer.site .footer-logo{height:90px; width:auto;}

/* Address */
footer.site .footer-address-label{
  font-size:13px;
  font-weight:600;
  color:rgba(255,255,255,.55);
  margin:0 0 4px;
}
footer.site .footer-address{
  font-size:13px;
  color:rgba(255,255,255,.55);
  margin:0;
  max-width:300px;
  line-height:1.55;
}

/* Contact lines */
footer.site .footer-contact-line{
  font-size:14px;
  color:rgba(255,255,255,.75);
  margin:0 0 8px;
}

/* Hours note */
footer.site .footer-hours-note{
  font-size:12px;
  color:rgba(255,255,255,.4);
  margin:8px 0 0;
}

/* Partners */
footer.site .partner-badge{height:32px; width:auto; margin-bottom:12px;}

/* ── PARTNERSHIP + PAYMENT ICONS ROW ── */
footer.site .footer-payments-row{
  border-top:1px solid var(--ftr-line);
  padding:28px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:20px;
}
footer.site .footer-payments-left{
  display:flex;
  align-items:center;
  gap:16px;
}
footer.site .partner-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.5);
}
footer.site .payment-icons{display:flex; flex-wrap:wrap; gap:10px; align-items:center;}
footer.site .payment-icons img{
  height:28px;
  width:auto;
  background:#fff;
  border-radius:4px;
  padding:5px 8px;
  box-sizing:content-box;
}

/* ── BOTTOM bar ── */
footer.site .footer-bottom{
  border-top:1px solid var(--ftr-line);
  padding:24px 0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
  font-size:12px;
  color:rgba(255,255,255,.6);
}

/* Social icons (flat, no circles) */
footer.site .footer-social{display:flex; gap:14px;}
footer.site .footer-social a{
  width:36px; height:36px;
  display:flex; align-items:center; justify-content:center;
  transition:opacity .2s ease;
}
footer.site .footer-social a:hover{opacity:.7;}
footer.site .footer-social svg{width:20px; height:20px; stroke:#fff;}

/* Copyright */
footer.site .footer-copyright{
  font-size:12px;
  color:rgba(255,255,255,.5);
}

/* Legal links with middot */
footer.site .footer-legal-links{display:flex; gap:6px; align-items:center;}
footer.site .footer-legal-links a{
  color:#fff;
  text-decoration:none;
  font-size:12px;
  transition:color .2s ease;
}
footer.site .footer-legal-links a:hover{color:var(--ftr-gold);}
footer.site .footer-legal-links a + a::before{
  content:"\00B7";
  margin-right:6px;
  color:rgba(255,255,255,.4);
}

/* ── Responsive ── */
@media(max-width:900px){
  footer.site .footer-links-grid{grid-template-columns:1fr 1fr; gap:32px;}
  footer.site .footer-info-band{grid-template-columns:1fr 1fr; gap:32px;}
}
@media(max-width:560px){
  footer.site .footer-links-grid{grid-template-columns:1fr; gap:28px; padding:48px 0 40px;}
  footer.site .footer-info-band{grid-template-columns:1fr; gap:28px; padding:36px 0;}
  footer.site .footer-bottom{flex-direction:column; align-items:flex-start; gap:12px;}
}

/* ============================================================
   Newsletter band (unchanged)
   ============================================================ */
.newsletter-band{
  --nl-navy:#0c0c0c;
  --nl-gold:#C7A44D;
  background:var(--nl-navy);
  padding:48px 0;
  font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;
}
.newsletter-band .container{max-width:1200px; margin:0 auto; padding:0 24px;}
.newsletter-inner{display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap;}
.newsletter-copy h3{color:#fff; font-size:22px; margin:0 0 6px;}
.newsletter-copy p{color:rgba(255,255,255,.65); margin:0; font-size:14px; max-width:420px;}
.newsletter-form-wrap{flex:1; min-width:280px; max-width:460px;}
.newsletter-form-wrap .wpcf7 form{display:flex; gap:10px; flex-wrap:wrap;}
.newsletter-form-wrap .wpcf7 form p{display:flex; gap:10px; flex-wrap:wrap; width:100%; margin:0;}
.newsletter-form-wrap input[type="email"]{flex:1; min-width:200px; padding:13px 16px; border-radius:3px; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.06); color:#fff; font-size:14px;}
.newsletter-form-wrap input[type="email"]::placeholder{color:rgba(255,255,255,.45);}
.newsletter-form-wrap input[type="submit"]{padding:13px 24px; border-radius:3px; border:none; background:var(--nl-gold); color:#111; font-weight:700; font-size:14px; cursor:pointer; white-space:nowrap;}
.newsletter-form-wrap input[type="submit"]:hover{opacity:.9;}
@media(max-width:700px){.newsletter-inner{flex-direction:column; align-items:flex-start;}}

/* Shared gallery lightbox (markup lives at the end of footer.php) - hidden
   by default, shown only when gallery.js flips aria-hidden to "false" when
   an image is opened. Without this rule the lightbox renders as an empty
   visible block on every page since aria-hidden alone has no visual effect. */
#szuae-lightbox[aria-hidden="true"]{display:none;}