/* Wide directory footer based on the supplied structural reference. */
.footer{background:#124634;color:white;padding-top:76px;border-radius:30px 30px 0 0;position:relative;overflow:hidden}
.footer:before{content:'';position:absolute;inset:0;border:1px solid #d9c7ad55;border-bottom:0;border-radius:30px 30px 0 0;pointer-events:none}
.footer-grid{display:grid;grid-template-columns:1.35fr .8fr .95fr .8fr 1.15fr;gap:clamp(28px,4vw,72px);min-height:470px;padding-bottom:60px}
.footer-brand .brand{width:min(250px,100%)}.footer-brand p{color:#c5d0c8;margin-top:30px;line-height:1.6}
.footer-social{display:flex;gap:12px;margin-top:35px}.footer-social a{width:46px;height:46px;border:1px solid #ffffff30;border-radius:50%;display:grid;place-items:center;transition:background .3s,border-color .3s,transform .3s}.footer-social a:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-3px)}.footer-social svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px;font-size:13px}.footer-column h3{font-size:15px;letter-spacing:0;margin:0 0 11px;font-weight:600}.footer-column>a:not(.footer-map),.footer-column address{color:#c5d0c8;line-height:1.65;transition:color .2s}.footer-column>a:hover{color:#fff}.footer-contact address{margin-top:8px}.footer-map{display:flex;align-items:center;gap:14px;border-bottom:1px solid #ffffff55;margin-top:10px;padding-bottom:6px}.footer-map svg{width:17px}
.footer .footer-bottom{border-top:1px solid #ffffff25;padding:23px 0;display:grid;grid-template-columns:1fr 1fr 1fr;color:#bdcbc1;font-size:12px}.footer-bottom span:nth-child(2){text-align:center}.footer-bottom a{text-align:right;color:#fff}
@media(max-width:1100px){.footer-grid{grid-template-columns:1.2fr repeat(2,1fr);min-height:0}.footer-contact{grid-column:2/4}}
@media(max-width:760px){.footer{padding-top:52px;border-radius:22px 22px 0 0}.footer-grid{grid-template-columns:1fr 1fr;gap:42px 22px;padding-bottom:42px}.footer-brand{grid-column:1/3}.footer-brand .brand{width:215px}.footer-brand p{margin-top:22px}.footer-column{font-size:12px}.footer-contact{grid-column:1/3}.footer .footer-bottom{grid-template-columns:1fr auto;gap:14px;font-size:12px}.footer-bottom span:nth-child(2){display:none}.footer-bottom a{text-align:right}}
