/* Footer: hours and contact lead; branding closes the desktop row. */
.footer-layout{grid-template-columns:minmax(180px,1fr) minmax(220px,1.15fr) minmax(190px,1fr) minmax(210px,1.15fr);gap:clamp(1.5rem,3vw,3.75rem)}
@media(min-width:1100px){
  .footer-hours{grid-column:1;grid-row:1}
  .footer-contact{grid-column:2;grid-row:1}
  .footer .footer-social{grid-column:3;grid-row:1}
  .footer-identity{grid-column:4;grid-row:1;justify-items:end;text-align:right}
  .footer-layout .footer-brand .brand-logo{object-position:right center}
}
.footer .footer-social{justify-items:start;align-content:start;min-width:0}
.footer .footer-social span{display:block;width:100%;margin:0 0 1.15rem;padding-bottom:.7rem;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;font:600 .66rem/1.3 var(--sans);letter-spacing:.17em;text-transform:uppercase}
.footer .footer-social a{line-height:1.5;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:.3rem}
.footer .footer-facebook{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:#fff;text-decoration:none}
.footer .footer-facebook svg{display:block;width:24px;height:24px;fill:currentColor}
.footer .footer-facebook:hover,.footer .footer-facebook:focus-visible{background:rgba(255,255,255,.14);border-color:#fff}
@media(min-width:761px) and (max-width:1099px){
  .footer-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-hours{grid-column:1;grid-row:1}
  .footer-contact{grid-column:1;grid-row:2}
  .footer-identity{grid-column:2;grid-row:1;justify-self:end;justify-items:end;text-align:right}
  .footer-layout .footer-brand .brand-logo{object-position:right center}
  .footer .footer-social{grid-column:2;grid-row:2;justify-self:end;width:min(100%,300px)}
}
.footer .footer-nav{display:flex!important;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0;position:relative}
.footer .footer-nav>strong{width:100%;margin-bottom:.55rem}
.footer .footer-nav>a,.footer .footer-nav-group>summary{box-sizing:border-box;display:flex;align-items:center;min-height:32px;padding:.25rem 0;color:#dce4e9;font:600 .72rem/1.45 var(--sans);letter-spacing:.075em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.footer .footer-nav>a{width:auto}
.footer .footer-nav-group{display:block;position:relative;width:100%;margin:0}
.footer .footer-nav-group>summary{list-style:none;width:100%;gap:.55rem}
.footer .footer-nav-group>summary::-webkit-details-marker{display:none}
.footer .footer-nav-group>summary::after{content:'⌄';font-size:1rem;line-height:1;transition:transform .2s ease}
.footer .footer-nav-group[open]>summary::after{transform:rotate(180deg)}
.footer .footer-nav>a:hover,.footer .footer-nav>a:focus-visible,.footer .footer-nav-group>summary:hover,.footer .footer-nav-group>summary:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:.35rem;outline-offset:4px}
.footer .footer-submenu{display:grid;gap:.2rem;position:absolute;z-index:10;top:100%;left:0;min-width:220px;padding:.65rem .8rem;background:#213d5b;border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 30px rgba(3,16,30,.32)}
.footer .footer-submenu a{display:block;width:auto;min-height:0;padding:.55rem .35rem!important;color:#eaf0f3;font-size:.69rem;line-height:1.4;text-transform:uppercase}
.footer .footer-submenu a:hover,.footer .footer-submenu a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:.3rem}
@media(max-width:760px){
  .footer-layout{grid-template-columns:1fr}
  .footer{padding:2.5rem 0 1.5rem;text-align:left}
  .footer>.wrap{width:min(calc(100% - 44px),520px)}
  .footer-layout>*{padding:1.55rem 0}
  .footer-identity{justify-items:center;text-align:center;padding-top:1.8rem;padding-bottom:0;border-bottom:0}
  .footer .footer-nav{align-items:stretch;gap:0;justify-items:stretch}
  .footer .footer-social{justify-items:start;align-items:start;text-align:left}
  .footer .footer-nav>strong{margin:0 0 .35rem}
  .footer .footer-nav>a,.footer .footer-nav-group>summary{justify-content:space-between;min-height:46px;width:100%;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:.76rem}
  .footer .footer-nav>a:last-child{border-bottom:0}
  .footer .footer-submenu{position:static;min-width:0;margin:.2rem 0 .6rem;padding:.15rem 0 .25rem .85rem;background:transparent;border:0;border-left:1px solid rgba(255,255,255,.28);box-shadow:none}
  .footer .footer-submenu a{min-height:42px;display:flex;align-items:center;padding:.5rem .3rem!important;font-size:.71rem}
  .footer .footer-hours,.footer .footer-contact{text-align:left}
  .footer .footer-contact>a{margin:.35rem 0;justify-content:flex-start}
  .footer-heading{margin-bottom:.6rem}
}
/* Header submenus also open only after their button is selected. */
.nav-group:hover .nav-submenu,.nav-group:focus-within .nav-submenu{display:none}
.nav-group.submenu-open .nav-submenu{display:block}
