/* One footer for every page on dkre.ca (redesign 2026-10, round 15; markup in tools/footer.js).
   Pages still carry an old generic `footer{...}` rule (centred, small, grey); footer.foot
   wins by specificity and resets each of those properties, so the footer is identical
   everywhere. The phone number is set in Bricolage Grotesque, the site's headline face. */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/assets/fonts/bricolage-grotesque-latin.woff2) format('woff2')}
footer.foot{display:block;margin:0;margin-top:clamp(48px,6vw,80px);border:0;background:#121316;color:#b9bec6;padding:clamp(44px,6vw,72px) max(16px,env(safe-area-inset-right,0px)) 40px max(16px,env(safe-area-inset-left,0px));font:400 16px/1.6 'Montserrat',system-ui,sans-serif;text-align:left}
footer.foot *{box-sizing:border-box}
footer.foot .f-in{max-width:1180px;margin:0 auto}
footer.foot a{color:#f1f2f4}
footer.foot p{margin:0}
footer.foot .f-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 48px;align-items:end;padding-bottom:32px;border-bottom:1px solid #2a2d33}
footer.foot .f-id{display:flex;align-items:center;gap:16px}
footer.foot .f-id .f-mark{font:800 34px/.85 'Montserrat',system-ui,sans-serif;letter-spacing:-.055em;color:#ff4d54;flex:none}
footer.foot .f-id .f-mark i{font-style:normal;color:inherit}
footer.foot .f-id p{display:grid;gap:2px}
footer.foot .f-id b{font-weight:800;font-size:18px;line-height:1.25;color:#f1f2f4}
footer.foot .f-id p span{font-size:15px;color:#9aa1ab}
footer.foot .f-call{display:grid;justify-items:end;gap:6px;text-align:right}
footer.foot .f-say{font-weight:700;font-size:12px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:#9aa1ab}
footer.foot .f-phone{font:800 clamp(34px,4.4vw,56px)/1 'Bricolage Grotesque','Montserrat',system-ui,sans-serif;letter-spacing:-.02em;text-decoration:none;color:#fff;white-space:nowrap}
footer.foot .f-phone:hover{color:#ff4d54}
footer.foot .f-where{margin-top:6px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 18px;font-size:15px}
footer.foot .f-where span{color:#9aa1ab}
footer.foot .f-links,footer.foot .f-social{display:flex;flex-wrap:wrap;gap:4px 26px;padding-block:22px}
footer.foot .f-links{border-bottom:1px solid #2a2d33}
footer.foot .f-links a{font-weight:700;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
footer.foot .f-social a{color:#b9bec6;text-decoration:none;min-height:40px;display:inline-flex;align-items:center;font-size:15px}
footer.foot .f-links a:hover,footer.foot .f-social a:hover{color:#ff4d54}
footer.foot .f-legal{border-top:1px solid #2a2d33;padding-top:20px;margin-top:4px;font-size:14px;line-height:1.6;display:grid;gap:8px;color:#8d939c}
footer.foot .f-legal p{max-width:96ch}
footer.foot .f-legal b{color:#c4c9d0}
footer.foot a:focus-visible{outline:3px solid #ff4d54;outline-offset:3px}
@media (max-width:760px){footer.foot .f-top{grid-template-columns:1fr;align-items:start}footer.foot .f-call{justify-items:start;text-align:left}footer.foot .f-where{justify-content:flex-start}footer.foot .f-links{gap:2px 20px}}
