/* Homepage footer styles, shared so every page can use the identical footer. */
:root{--red:#c8102e;--ink:#171717;--paper:#f5f4f1;--line:#dededb}
footer{background:var(--ink);color:white;padding:35px 0}
.footer-inner{display:flex;justify-content:space-between;gap:30px;font-size:12px}
.footer-inner strong{font-size:19px}
.footer-inner a{margin-left:16px}
@media(max-width:600px){.footer-inner{display:block}.footer-inner nav{margin-top:22px}.footer-inner a{margin:0 14px 0 0}}
.footer-inner{align-items:center}
.footer-logo{display:inline-flex;background:white;padding:8px 14px;border-radius:8px;text-decoration:none}
.footer-brand p{margin:14px 0 0;color:#ccc}
.footer-social nav{display:flex;gap:12px}
.footer-inner .social-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #666;border-radius:50%;margin:0;transition:background .15s,border-color .15s}
.social-icon svg{width:22px;height:22px}
.footer-inner .social-icon:hover{background:var(--red);border-color:var(--red)}
.footer-inner .footer-start{display:block;margin:20px 0 0;text-align:right;text-underline-offset:5px}
@media(max-width:600px){.footer-social{margin-top:28px}.footer-social nav{margin-top:0}.footer-inner .footer-start{text-align:left}}
footer .legal-links a:focus-visible{outline-color:white}
.site-footer{background:#171717;color:#fff;padding:0;border-top:5px solid #c8102e}
.footer-invitation{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:48px 0 40px;border-bottom:1px solid #414141}
.footer-invitation .eyebrow{color:#c7c7c7;font-size:10px;letter-spacing:2px}
.footer-invitation .footer-title{font-size:clamp(34px,4vw,52px);margin:12px 0 0;letter-spacing:-1.8px;line-height:1.13}
.footer-invitation .footer-title span{color:#fff}
.footer-invitation .btn{flex-shrink:0;padding:16px 24px}
.footer-main{display:grid;grid-template-columns:1fr 1.25fr .9fr;gap:68px;padding:42px 0 40px}
.site-footer .footer-brand-link{display:inline-flex;align-items:center;gap:13px;text-decoration:none;font-size:21px;font-weight:800;letter-spacing:-.7px}
.footer-brand-link img{width:48px;height:48px;border-radius:12px}
.footer-identity>p{font-size:13px;color:#bcbcbc;line-height:1.8;max-width:260px;margin:17px 0 20px}
.site-footer .footer-socials{display:flex;gap:9px}
.site-footer .social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #515151;border-radius:50%;color:#eee;text-decoration:none}
.site-footer .social-icon svg{width:18px;height:18px}
.site-footer .social-icon:hover{background:#c8102e;border-color:#c8102e}
.footer-nav-title{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#bcbcbc;margin:0 0 12px;font-weight:700}
.site-footer .footer-link{display:flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;border-bottom:1px solid #414141;padding:13px 0;min-height:52px}
.footer-link strong{display:block;font-size:14px;font-weight:600}
.footer-link small{display:block;font-size:11px;color:#bcbcbc;margin-top:4px;line-height:1.6}
.footer-link .link-arrow{color:#bcbcbc;font-size:19px;transition:transform .18s ease}
.site-footer .footer-link:hover{border-bottom-color:#eee}
.footer-link:hover .link-arrow{transform:translateX(3px);color:#fff}
.footer-bottom{border-top:1px solid #414141;padding:20px 0 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#bcbcbc;font-size:11px}
.footer-bottom p{margin:0}
.footer-bottom a{color:#eee;text-decoration:none;min-height:36px;display:inline-flex;align-items:center;gap:16px}
.footer-bottom a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer a:focus-visible{outline:2px solid #fff;outline-offset:5px;border-radius:3px}
.site-footer a:active{opacity:.75}
@media(max-width:950px){.footer-main{gap:30px;grid-template-columns:1fr 1.2fr .9fr}}
@media(max-width:700px){.footer-invitation{align-items:flex-start;flex-direction:column;gap:24px;padding:35px 0}.footer-main{grid-template-columns:1fr 1fr;gap:30px 25px;padding:30px 0}.footer-identity{grid-column:1/-1}.footer-identity>p{max-width:340px}.footer-invitation .footer-title{font-size:39px}.footer-bottom{align-items:flex-start;font-size:10px}.footer-bottom p{max-width:210px}.footer-nav-title{font-size:9px;letter-spacing:1.5px}.footer-link strong{font-size:13px}.footer-nav-title{min-height:22px}.site-footer .footer-link{min-height:85px}}
@media(max-width:360px){.footer-main{grid-template-columns:1fr;gap:28px}.footer-invitation .footer-title{font-size:34px}.footer-bottom{flex-direction:column;gap:5px}.footer-bottom p{max-width:none}}
@media(prefers-reduced-motion:reduce){.footer-link .link-arrow{transition:none}.footer-link:hover .link-arrow{transform:none}}
