/* ZAI FILMS V21 — Editorial footer with a dedicated social section.
   Standalone file loaded last to avoid disrupting existing page layouts. */
.footer-v21 {
  display: grid;
  grid-template-columns: minmax(160px, 1.15fr) minmax(220px, 1.05fr) minmax(205px, .85fr);
  gap: clamp(30px, 4.7vw, 84px);
  align-items: start;
  padding: clamp(55px, 5.5vw, 88px) clamp(25px, 5vw, 84px) 26px;
  background: linear-gradient(180deg, #08090a 0%, #060708 100%);
  border-top: 1px solid rgba(245,130,22,.26);
}
.footer-v21 > div {gap: 0; color: #a5a2a0; font-size: 12px; min-width: 0;}
.footer-v21 .footer-brand {display: inline-flex; width: max-content;}
.footer-v21 .footer-brand .brand-emblem {width: 92px; height: 40px; overflow: visible;}
.footer-v21 .footer-brand .brand-emblem img {width: 100%; height: auto; display: block;}
.footer-v21 .footer-statement {font-size: 12px; color: #a3a0a0; line-height: 1.9; letter-spacing: .005em; margin: 20px 0 0;}
.footer-v21 .footer-statement span {color: #dedbd5;}
.footer-v21 .footer-label {margin: 0 0 22px; font-weight: 800; font-size: 10px; letter-spacing: .23em; color: #f58216;}
.footer-v21 .footer-contact-block {padding-top: 2px;}
.footer-v21 .footer-mail {display: inline-block; width: fit-content; font-size: clamp(15px, 1.45vw, 20px); font-weight: 700; letter-spacing: -.025em; color: #f0ede9; overflow-wrap: anywhere; transition: color .2s ease;}
.footer-v21 .footer-mail:hover {color: #f58216;}
.footer-v21 .footer-supporting {color: #898685; font-size: 11px; line-height: 1.75; margin: 12px 0 0; max-width: 260px;}
.footer-v21 .footer-social-block {padding-top: 2px;}
.footer-v21 .footer-social-links {display: flex; flex-direction: column; gap: 0; width: min(100%, 245px);}
.footer-v21 .footer-social-links a {display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 10px 0 11px; border-bottom: 1px solid rgba(255,255,255,.14); font-size: 12px; font-weight: 700; color: #e9e6e2; transition: color .2s ease, border-color .2s ease;}
.footer-v21 .footer-social-links a:first-child {padding-top: 0;}
.footer-v21 .footer-social-links a:hover {color: #f58216; border-color: rgba(245,130,22,.5);}
.footer-v21 .footer-social-links .social-arrow {display: block; flex: none; width: 15px; height: 15px; color: #9b9998; transition: transform .2s ease, color .2s ease;}
.footer-v21 .footer-social-links a:hover .social-arrow {transform: translate(2px, -2px); color: #f58216;}
.footer-v21 > .footer-bottom {grid-column: 1 / -1; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.1); padding-top: 22px; margin-top: 8px; font-size: 10px; color: #817f7e; letter-spacing: .03em;}
.footer-v21 .back-top {display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; text-transform: none; font-size: 11px; letter-spacing: 0; color: #f58216;}
.footer-v21 .footer-up-arrow {width: 15px; height: 15px;}
@media (max-width: 780px) {
  .footer-v21 {grid-template-columns: 1fr 1fr; column-gap: 30px; row-gap: 42px; padding-top: 55px;}
  .footer-v21 .footer-brand-block {grid-column: 1 / -1;}
  .footer-v21 .footer-statement {margin-top: 12px;}
  .footer-v21 .footer-social-links {width: 100%;}
}
@media (max-width: 520px) {
  .footer-v21 {grid-template-columns: minmax(0, 1fr); row-gap: 38px; padding: 51px 25px 24px;}
  .footer-v21 .footer-brand-block {grid-column: 1;}
  .footer-v21 .footer-social-links {width: 100%;}
  .footer-v21 .footer-label {margin-bottom: 18px;}
  .footer-v21 > .footer-bottom {grid-column: 1; gap: 14px; flex-wrap: wrap; align-items: center; margin-top: 2px; padding-top: 20px;}
}
@media (prefers-reduced-motion: reduce) {
  .footer-v21 .footer-social-links a, .footer-v21 .footer-social-links .social-arrow {transition: none;}
}
