/* شهاب — footer. */
.sh-footer{position:relative;overflow:hidden;background:var(--sh-navy);color:#fff;margin-top:24px}
.sh-footer__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.13}
.sh-footer__veil{position:absolute;inset:0;background:var(--sh-navy);opacity:.74;pointer-events:none}
.sh-footer__rule{position:absolute;top:0;right:0;left:0;height:1px;background:var(--sh-blue)}
.sh-footer__inner{position:relative;max-width:var(--sh-container);margin:0 auto;padding:48px 32px 0}
.sh-footer__cols{display:flex;flex-wrap:wrap;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--sh-on-dark-16);justify-content:space-between}
.sh-footer__col.sh-footer__col--brand{flex:0 1 300px;min-width:0}
.sh-footer__logo{height:46px;width:auto}
.sh-footer__about{font-family:var(--sh-serif);font-size:13px;line-height:1.95;color:var(--sh-on-dark-72);margin:20px 0 0;max-width:34ch}
.sh-footer__social{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:22px}
.sh-footer__col{flex:0 1 auto;min-width:0}
.sh-footer__title{font-family:var(--sh-font);font-size:13px;font-weight:800;color:#fff;margin:0 0 20px;display:flex;align-items:center;gap:9px}
.sh-footer__links{display:flex;flex-direction:column;gap:14px;font-size:12.5px;color:var(--sh-on-dark-60)}
/* every entry carries the house node: a 4px diamond that lines the list into a
   column and lights on hover{color:#1b5aa6}@media (hover:hover){so the lists read as indexed lists instead of a
   grey wall. The explicit hover also keeps base.css a:hover{color:#1b5aa6}}
   from painting brand blue on navy. */
.sh-footer__link{display:flex;align-items:center;gap:10px;min-width:0}
.sh-footer__link::before{content:"";flex:none;width:4px;height:4px;background:var(--sh-on-dark-30);transform:rotate(45deg);transition:background .16s ease}
@media (hover:hover){.sh-footer__link:hover{color:#fff}}
@media (hover:hover){.sh-footer__link:hover::before{background:var(--sh-sky)}}
.sh-footer__col.sh-footer__col--wide{flex:0 1 320px;min-width:0}
.sh-footer__lead{font-family:var(--sh-serif);font-size:13px;line-height:1.9;color:var(--sh-on-dark-72);margin:0 0 14px}
.sh-footer__form{display:flex;flex-wrap:wrap;gap:8px}
.sh-footer__input{flex:1 1 150px;min-width:0;border:1px solid var(--sh-on-dark-30);padding:10px 13px;font-size:12px;text-align:right;color:var(--sh-on-dark-55);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-footer__submit{background:var(--sh-blue);color:#fff;font-family:var(--sh-font);font-size:12px;font-weight:700;padding:10px 20px;display:flex;align-items:center;white-space:nowrap;flex:none}
.sh-footer__live{display:flex;gap:10px;align-items:center;margin-top:20px;font-size:11.5px;color:var(--sh-on-dark-60)}
.sh-footer__live-dot{width:5px;height:5px;background:var(--sh-red);border-radius:50%;animation:sh-pulse 1.6s ease-in-out infinite}
.sh-footer__legal{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:26px 0 32px;font-size:11.5px;color:var(--sh-on-dark-60)}
.sh-footer__legal-links{display:flex;gap:22px}
.sh-footer__social-btn{width:auto;height:34px;border:1px solid var(--sh-on-dark-16);display:flex;align-items:center;justify-content:center;transition:background .18s,border-color .18s}
@media (hover:hover){.sh-footer__social-btn:hover{background:var(--sh-blue);border-color:var(--sh-blue)}}
.sh-footer__social-icon{font-size:15px;color:#fff;line-height:1}
@keyframes sh-meteor-footer{0%{transform:translate(0,0);opacity:0}10%{opacity:1}100%{transform:translate(-520px,260px);opacity:0}}

/* the dot reads as live by colour and label; the beat is the extra */
@media (prefers-reduced-motion:reduce){.sh-footer__live-dot{animation:none}}
