/* Footer only: no homepage, Header or global token overrides. */
.hqess-footer { background:#1F2328;color:#c9cecb;scroll-margin-top:90px; }
.hqess-footer__inner { width:calc(100% - 96px);max-width:1440px;margin-inline:auto; }
.hqess-footer a { color:#c9cecb;font-weight:500;text-decoration:none;transition:color 160ms ease; }
.hqess-footer a:hover { color:#fff; }
.hqess-footer a:focus-visible,.hqess-footer button:focus-visible { outline:2px solid #74c697;outline-offset:5px; }
.hqess-footer__brand { padding:88px 0 64px; }
.hqess-footer__logo { display:block;width:220px;line-height:0; }
.hqess-footer__logo img { display:block;width:100%;height:auto; }
.hqess-footer__tagline { margin:20px 0 0;font-size:16px;font-weight:500;line-height:1.5;letter-spacing:.08em;color:#a9b5ae; }
.hqess-footer__middle { display:grid;grid-template-columns:minmax(0,4fr) minmax(190px,1fr);gap:48px;padding:48px 0 52px;border-top:1px solid rgba(255,255,255,.12); }
.hqess-footer__navigation { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;min-width:0; }
.hqess-footer__heading { margin:0 0 20px;font-size:13px;line-height:1.5;font-weight:600;letter-spacing:.12em;color:#9eb3a6;text-transform:uppercase; }
.hqess-footer__toggle { display:flex;align-items:center;justify-content:space-between;width:100%;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;opacity:1; }
.hqess-footer__toggle:disabled { cursor:default;-webkit-text-fill-color:currentColor; }
.hqess-footer__plus { display:none;width:20px;height:20px;flex-shrink:0; }
.hqess-footer__links,.hqess-footer__legal { list-style:none;margin:0;padding:0; }
.hqess-footer__links li { margin:0; }
.hqess-footer__links a { display:inline-block;padding:5px 0;font-size:16px;line-height:1.65;overflow-wrap:anywhere; }
.hqess-footer__contact { min-width:0; }
.hqess-footer__contact address { margin:0;font-style:normal; }
.hqess-footer__contact address a { display:inline-block;padding:5px 0;font-size:16px;line-height:1.65;overflow-wrap:anywhere; }
.hqess-footer__contact-link { display:inline-flex;align-items:center;gap:12px;margin-top:14px;padding:5px 0;font-size:16px;line-height:1.65; }
.hqess-footer__contact-link .button__icon { width:16px;height:16px;transition:transform 160ms ease; }
.hqess-footer__contact-link:hover .button__icon { transform:translateX(3px); }
.hqess-footer__bottom { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0 40px;border-top:1px solid rgba(255,255,255,.12); }
.hqess-footer__copyright { font-size:14px;line-height:1.6;color:#a9b5ae; }
.hqess-footer__legal { display:flex;flex-wrap:wrap;gap:28px; }
.hqess-footer__legal a { display:inline-block;font-size:14px;line-height:1.6;color:#a9b5ae; }
.hqess-footer__panel[hidden] { display:none; }
@media(max-width:1100px) and (min-width:769px) {
 .hqess-footer__inner { width:calc(100% - 64px); }
 .hqess-footer__brand { padding-top:80px;padding-bottom:48px; }
 .hqess-footer__middle { grid-template-columns:1fr;gap:24px; }
 .hqess-footer__contact { display:flex;align-items:baseline;gap:32px; }
 .hqess-footer__contact .hqess-footer__heading { margin:0; }
 .hqess-footer__contact-link { margin:0; }
}
@media(max-width:768px) {
 .hqess-footer__inner { width:calc(100% - 48px); }
 .hqess-footer__brand { padding:76px 0 40px; }
 .hqess-footer__logo { width:180px; }
 .hqess-footer__tagline { font-size:14px;margin-top:20px;letter-spacing:.06em; }
 .hqess-footer__middle { grid-template-columns:1fr;gap:32px;padding:24px 0 36px; }
 .hqess-footer__navigation { grid-template-columns:1fr;gap:0; }
 .hqess-footer__group .hqess-footer__heading { margin:0; }
 .hqess-footer__toggle { min-height:56px;font-size:13px; }
 .hqess-footer.is-enhanced .hqess-footer__toggle { cursor:pointer; }
 .hqess-footer.is-enhanced .hqess-footer__plus { display:block; }
 .hqess-footer__toggle[aria-expanded="true"] .hqess-footer__plus .hqess-footer__plus-vertical { opacity:0; }
 .hqess-footer__panel { padding:0 0 16px; }
 .hqess-footer.is-enhanced .hqess-footer__panel:not([hidden]) { animation:hqess-footer-open 140ms ease; }
 .hqess-footer__links a { padding:9px 0;min-height:44px; }
 .hqess-footer__contact .hqess-footer__heading { margin-bottom:12px; }
 .hqess-footer__contact address a,.hqess-footer__contact-link { min-height:44px;padding-block:9px; }
 .hqess-footer__contact-link { margin-top:4px; }
 .hqess-footer__bottom { align-items:flex-start;flex-direction:column;gap:20px;padding:24px 0 56px; }
 .hqess-footer__legal { order:-1;gap:24px; }
 .hqess-footer__legal a { min-height:44px;padding-block:11px; }
}
@media(prefers-reduced-motion:reduce) {
 .hqess-footer a,.hqess-footer .button__icon { transition:none; }
 .hqess-footer.is-enhanced .hqess-footer__panel { animation:none; }
}
@keyframes hqess-footer-open { from { opacity:0; } to { opacity:1; } }
