.wmtx-footer { padding: clamp(64px, 8vw, 104px) 0 24px; background: var(--wmtx-navy); color: #dfe4ef; font-family: Lato, Arial, sans-serif; }
.wmtx-footer__grid { display: grid; grid-template-columns: minmax(250px, 1.5fr) repeat(3, 1fr); gap: clamp(32px, 5vw, 72px); }
.wmtx-footer__identity { max-width: 340px; }
.wmtx-footer__logo { display: inline-flex; align-items: center; padding: 8px 12px; background: var(--wmtx-ivory); border-bottom: 2px solid var(--wmtx-gold); }
.wmtx-footer__logo .custom-logo,
.wmtx-footer__logo img { display: block; width: auto; max-width: 188px; height: 78px; object-fit: contain; }
.wmtx-footer__site-name { color: var(--wmtx-white); font: 700 25px/1.15 Georgia, "Times New Roman", serif; text-decoration: none; }
.wmtx-footer__identity p { margin: 24px 0 18px; color: #c3cad9; line-height: 1.75; }
.wmtx-footer__phone { display: inline-flex; min-height: 44px; align-items: center; color: var(--wmtx-white); font-weight: 800; text-decoration-color: var(--wmtx-gold); text-underline-offset: 5px; }
.wmtx-footer__nav h2 { margin: 0 0 21px; padding-bottom: 12px; border-bottom: 1px solid rgba(199,163,93,.45); color: var(--wmtx-white); font: 400 19px/1.2 Georgia, "Times New Roman", serif; }
.wmtx-footer__menu { margin: 0; padding: 0; list-style: none; }
.wmtx-footer__menu li { margin: 0; }
.wmtx-footer__menu a { display: inline-flex; align-items: center; min-height: 42px; color: #cbd1dd; font-size: 14px; text-decoration: none; transition: color .18s ease, transform .18s ease; }
.wmtx-footer__menu a:hover,
.wmtx-footer__menu a:focus-visible { color: var(--wmtx-white); transform: translateX(3px); }
.wmtx-footer__legal { display: flex; align-items: center; justify-content: space-between; gap: 18px 30px; margin-top: 64px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.13); color: #aeb7c8; font-size: 12px; }
.wmtx-footer__legal p { margin: 0; }
.wmtx-footer__legal a { color: #dfe4ef; }
.wmtx-footer a:focus-visible { outline: 3px solid var(--wmtx-gold); outline-offset: 3px; }
@media (max-width: 900px) { .wmtx-footer__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) {
	.wmtx-footer__grid { grid-template-columns: 1fr; }
	.wmtx-footer__identity { max-width: none; }
	.wmtx-footer__legal { align-items: flex-start; flex-direction: column; margin-top: 46px; }
}
