

/* V21: restore the approved two-tier footer; keep the page end behind the dock navy.
   All overrides are limited to the shared footer, inquiry surface and location row. */
:root { --dw21-footer:#0b2543; }
@media screen {
  html { background:var(--dw21-footer); }
  body { padding-bottom:0; }
  .footer.footer21 {
    background:var(--dw21-footer);background-image:none;border:0;color:#fff;
    padding:48px 0 calc(var(--quick-panel-h,var(--quick-h,138px)) + var(--dw20-footer-clearance,30px));
    margin:0;overflow-anchor:none;
  }
}
.footer.footer21>.footer21-wrap {
  width:min(1280px,calc(100% - 112px));max-width:none;margin-inline:auto;padding:0;
}
.footer21 .footer21-top {
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:start;
}
.footer21 .footer-brand {
  --footer-logo-width:183px;display:block;border:0;padding:0;align-self:start;
}
/* Match the approved header's 188:38 display ratio. Never inherit a tall box. */
.footer21 .footer-brand>a {
  display:block;width:var(--footer-logo-width);height:calc(var(--footer-logo-width)*38/188);
  max-width:100%;line-height:0;padding:0;aspect-ratio:188/38;
}
.footer21 .footer-brand img {
  display:block;width:100%;height:100%;max-width:100%;max-height:none;
  aspect-ratio:188/38;object-fit:fill;object-position:left center;transform:none;
}
.footer21 .footer-tagline {
  margin-top:18px;color:#c8d7e4;font-size:12px;line-height:1.8;
  letter-spacing:-.025em;white-space:normal;
}
.footer21 .footer-links {
  display:flex;gap:15px 29px;flex-wrap:wrap;justify-content:flex-end;
  padding-top:7px;align-items:center;
}
.footer21 .footer-links a,.footer21 .footer-links button {
  font-size:12px;font-weight:400;line-height:1.75;color:#d3dfeb;
  background:none;padding:0;white-space:nowrap;
}
.footer21 .footer-links a:hover,.footer21 .footer-links button:hover {
  color:#fff;text-decoration:underline;text-underline-offset:5px;
}
.footer21 .footer21-info {
  display:flex;justify-content:space-between;align-items:flex-start;gap:30px;
  border-top:1px solid rgba(220,235,250,.18);padding-top:24px;margin-top:34px;
}
.footer21 .footer-company { min-width:0;padding:0; }
.footer21 .footer-company-name {
  display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;
  font-size:11px;font-weight:500;line-height:1.95;margin:0 0 4px;
}
.footer21 .footer-company-name span {
  border:0;padding:0;font-size:11px;font-weight:400;color:#bacedd;
}
.footer21 .footer-locations { display:grid;gap:2px; }
.footer21 .footer-locations p {
  display:flex;gap:12px;color:#cbdbe7;font-size:11px;line-height:1.95;
}
.footer21 .footer-locations b {
  flex:0 0 40px;min-width:40px;font-size:11px;font-weight:400;color:#aac4da;
}
.footer21 .footer-locations span { min-width:0;overflow-wrap:anywhere; }
.footer21 .footer-contact-line {
  display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;
  margin-top:4px;color:#cbdbe7;font-size:11px;line-height:1.95;
}
.footer21 .footer-contact-line b { font-size:10px;font-weight:400;color:#aac4da; }
.footer21 .footer-contact-line a { color:#edf5fb;white-space:nowrap; }
.footer21 .copyright {
  font:10px/1.8 Arial,sans-serif;letter-spacing:.01em;color:#c3d5e4;
  white-space:nowrap;text-align:right;margin:0;padding-top:4px;
}
/* Preserve the visible pale-blue tint; alpha and backdrop effects are removed. */
#quickInquiry .quick-layout.header-wrap,
#quickInquiry .quick-collapsed>.header-wrap {
  background:linear-gradient(112deg,#e2eff9 0%,#ebf5fc 55%,#f1f8fd 100%);
  -webkit-backdrop-filter:none;backdrop-filter:none;opacity:1;
}
#quickInquiry #quickToggle.quick-toggle {
  -webkit-backdrop-filter:none;backdrop-filter:none;opacity:1;
}
#pageMain .dw21-location-address>div {
  display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:8px;
  align-items:baseline;
}
#pageMain .dw21-location-address>div+div { margin-top:7px; }
#pageMain .dw21-location-address b { font-weight:500;white-space:nowrap;color:#244156; }
#pageMain .dw21-location-address span { min-width:0;word-break:keep-all;overflow-wrap:anywhere; }
@media(max-width:1200px) {
  .footer.footer21>.footer21-wrap { width:calc(100% - 76px); }
}
@media(max-width:1020px) {
  .footer.footer21>.footer21-wrap { width:calc(100% - 64px); }
  .footer21 .footer21-top { grid-template-columns:1fr;gap:24px; }
  .footer21 .footer-links { justify-content:flex-start;gap:12px 22px;padding-top:0; }
  .footer21 .footer21-info { flex-direction:column;gap:20px; }
  .footer21 .copyright { text-align:left;white-space:normal; }
}
@media(max-width:760px) {
  .footer.footer21 { padding-top:36px; }
  .footer.footer21>.footer21-wrap { width:calc(100% - 40px); }
  .footer21 .footer-brand { --footer-logo-width:170px; }
  .footer21 .footer-tagline { margin-top:15px;font-size:11px; }
  .footer21 .footer21-top { gap:23px; }
  .footer21 .footer-links { gap:12px 19px; }
  .footer21 .footer-links a,.footer21 .footer-links button { font-size:11px; }
  .footer21 .footer21-info { margin-top:25px;padding-top:22px;gap:19px; }
  .footer21 .copyright { font-size:9px; }
  #pageMain .dw21-location-address>div { column-gap:6px; }
}
@media print {
  .footer.footer21 { padding:30px 0!important; }
}

