/* Contact information stays inside the academy's original four-column footer. */
.footer-wrapper .footer-top{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.15fr);gap:50px}
.footer-wrapper .footer-top#contact{scroll-margin-top:140px}
.footer-wrapper .footer-channels{margin-top:16px;max-width:350px;min-width:0}
.footer-wrapper .footer-channels .contact-phone-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.footer-wrapper .footer-channels :is(.contact-phone,.contact-telegram){display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;min-width:0;padding:5px 0;color:var(--primary);background:transparent;border:0;border-radius:0;font-size:15px;line-height:1.8}
.footer-wrapper .footer-channels .contact-label{color:var(--text-secondary);font-size:15px;font-weight:400;flex-shrink:0}
.footer-wrapper .footer-channels .contact-number{direction:ltr;unicode-bidi:isolate;max-width:100%;font-size:18px;font-weight:500;line-height:1.8;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.footer-wrapper .footer-channels .contact-telegram bdi{direction:ltr;unicode-bidi:isolate;max-width:100%;font-size:16px;font-weight:400;overflow-wrap:anywhere}
.footer-wrapper .footer-channels .contact-telegram bdi{margin-inline-start:auto}
.footer-wrapper .footer-channels :is(.contact-phone,.contact-telegram):hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}
.footer-wrapper .footer-location{min-width:0;color:var(--text)}
.footer-wrapper .footer-location h2{margin-bottom:16px}
.footer-wrapper .footer-location .contact-address{font-style:normal;padding:0;margin:0;border:0;background:transparent}
.footer-wrapper .footer-location .contact-address p{font-size:15px;color:var(--text-secondary);line-height:1.95;overflow-wrap:anywhere}
.footer-wrapper .footer-location .contact-address .contact-floor{margin-top:5px}
.footer-wrapper .footer-location .contact-map-frame{display:block;width:100%;max-width:100%;height:180px;margin-top:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}
.footer-wrapper .footer-location .contact-map-placeholder{margin-top:16px;min-height:150px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);font-size:15px;line-height:1.9;color:var(--text-secondary)}
.footer-wrapper .footer-location .contact-map-actions{display:flex;align-items:flex-start;gap:4px 20px;flex-wrap:wrap;margin-top:7px}
.footer-wrapper .footer-location .contact-map-link{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;font-size:15px;font-weight:400;line-height:1.8;color:var(--primary);border:0;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px;background:transparent}
.footer-wrapper :where(.contact-phone,.contact-telegram,.contact-map-link,.contact-map-frame):focus-visible{outline:3px solid var(--primary);outline-offset:4px;box-shadow:0 0 0 6px var(--surface)}
@media(max-width:1200px){.footer-wrapper .footer-top{gap:30px}.footer-wrapper .footer-channels .contact-number{font-size:17px}.footer-wrapper .footer-channels .contact-telegram bdi{font-size:15px}}
@media(max-width:900px){.footer-wrapper .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.footer-wrapper :is(.footer-brand,.footer-location){grid-column:1/-1}.footer-wrapper .footer-location .contact-address{max-width:680px}.footer-wrapper .footer-location .contact-map-frame,.footer-wrapper .footer-location .contact-map-placeholder{max-width:680px}.footer-wrapper .footer-location .contact-map-frame{height:220px}.footer-wrapper .footer-channels{max-width:350px}}
@media(max-width:600px){.footer-wrapper .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px;padding-bottom:30px}.footer-wrapper .footer-top#contact{scroll-margin-top:110px}.footer-wrapper .footer-channels{margin-top:14px;max-width:350px}.footer-wrapper .footer-channels :is(.contact-phone,.contact-telegram){font-size:16px;min-height:44px;gap:8px}.footer-wrapper .footer-channels .contact-label{font-size:16px}.footer-wrapper .footer-channels .contact-number{font-size:18px}.footer-wrapper .footer-channels .contact-telegram bdi{font-size:16px}.footer-wrapper .footer-location .contact-address p{font-size:16px;line-height:1.95}.footer-wrapper .footer-location .contact-map-frame{height:200px}.footer-wrapper .footer-location .contact-map-placeholder,.footer-wrapper .footer-location .contact-map-link{font-size:16px}.footer-wrapper .footer-location .contact-map-actions{gap:4px 22px}}
