.footer{background:var(--msc-green-dark);color:var(--msc-white);padding-block:var(--msc-space-3xl) var(--msc-space-2xl);border-block-start:1px solid var(--msc-gold)}.footer__top{display:grid;grid-template-columns:minmax(15rem,20rem) 1fr;gap:var(--msc-space-3xl)}.footer__logo{width:auto;height:196px}@media (max-width:48rem){.footer__logo{height:155px}}.footer__tagline{font-family:var(--msc-font-editorial);font-style:italic;font-size:var(--msc-size-body-lg);color:var(--msc-gold);margin-block:var(--msc-space-md) var(--msc-space-lg)}.footer__nap{display:flex;flex-direction:column;gap:2px;font-style:normal;font-size:var(--msc-size-body);line-height:1.55}.footer__nap-name{font-weight:600}.footer__nap-phone{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none;width:fit-content}.footer__nap-phone:hover{color:var(--msc-gold)}.footer__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--msc-space-xl)}.footer__heading{font-family:var(--msc-font-body);font-size:var(--msc-size-caption);font-weight:600;letter-spacing:.06em;color:var(--msc-gold);margin-block-end:var(--msc-space-md)}.footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--msc-space-xs)}.footer__col a{font-size:var(--msc-size-body);text-decoration:none;opacity:.9}.footer__col a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}.footer__note{margin-block-start:var(--msc-space-md);font-size:var(--msc-size-caption);opacity:.75}.footer__rule{border:0;height:1px;background:var(--msc-hairline);margin-block:var(--msc-space-2xl) var(--msc-space-lg)}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--msc-space-md);font-size:var(--msc-size-caption);opacity:.8}.footer__ai{max-width:46ch}.footer__ai a{color:var(--msc-white);text-underline-offset:3px}.footer__legal{display:flex;flex-direction:column;text-align:end}@media (max-width:62rem){.footer__top{grid-template-columns:1fr;gap:var(--msc-space-2xl)}.footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--msc-space-xl)}}@media (max-width:34rem){.footer__cols{grid-template-columns:1fr}.footer__bottom{flex-direction:column}.footer__legal{text-align:start}}