/* Prompt 2 — scoped contact/footer only. */
.portfolio-edition .bm-footer{--bm-blue:#2457E6;--bm-blue-hover:#1945C6;--bm-ink:#151515;--bm-canvas:#F7F6F2;--bm-paper:#FFFFFF;--bm-footer-surface:#E9EEFA;--bm-footer-body:#414754;--bm-footer-muted:#666C79;--bm-footer-rule:#CBD3E5;--bm-footer-shadow:rgba(21,21,21,.032);--bm-gutter:48px;--bm-max:1200px;display:block;width:100%;margin:0;padding:0;text-align:left;color:var(--bm-ink);background:var(--bm-footer-surface);font-family:Inter,sans-serif;font-synthesis:none;color-scheme:light;overflow-wrap:normal}
.bm-footer *,.bm-footer *::before,.bm-footer *::after{box-sizing:border-box}
.bm-footer :focus-visible{outline:2px solid var(--bm-blue);outline-offset:3px}
.bm-footer a{text-decoration:none}
.bm-footer .bm-footer-inner{width:min(var(--bm-max),calc(100% - 2 * var(--bm-gutter)));margin-inline:auto}
.bm-footer-main{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:56px;align-items:center;padding-block:64px 56px}
.bm-footer-main>*{min-width:0}
.bm-footer .bm-footer-heading{font:500 clamp(44px,3.889vw,56px)/1.08 'Instrument Sans',sans-serif;font-stretch:normal;letter-spacing:-.04em;margin:0 0 24px;color:var(--bm-ink)}
.bm-footer-heading span{display:block;color:var(--bm-blue)}
.bm-footer .bm-footer-description{font:400 16px/1.65 Inter,sans-serif;letter-spacing:0;max-width:460px;margin:0 0 28px;color:var(--bm-footer-body)}
.bm-footer .bm-booking{display:inline-flex;align-items:center;justify-content:center;gap:24px;width:fit-content;max-width:100%;min-height:48px;padding:14px 20px;border:0;border-radius:3px;box-shadow:none;background:var(--bm-blue);color:var(--bm-paper);font:500 14px/20px Inter,sans-serif;letter-spacing:0;transition:background 200ms ease-out,transform 160ms ease-out}
.bm-booking>span:first-child{min-width:0}
.bm-footer .bm-booking:hover,.bm-footer .bm-booking:focus-visible{background:var(--bm-blue-hover)}
.bm-footer .bm-booking:active{transform:scale(.98)}
.bm-footer-arrow-slot{display:block;position:relative;overflow:hidden;width:18px;height:18px;flex:0 0 18px}
.bm-footer-arrow-slot>span{position:absolute;inset:0;transition:transform 220ms ease-out,opacity 220ms ease-out}
.bm-footer-arrow-slot svg{display:block;width:18px;height:18px}
.bm-footer .bm-arrow-first{transform:translate(0,0);opacity:1}
.bm-footer .bm-arrow-second{transform:translate(-18px,18px);opacity:0}
.bm-booking:is(:hover,:focus-visible) .bm-arrow-first{transform:translate(18px,-18px);opacity:0}
.bm-booking:is(:hover,:focus-visible) .bm-arrow-second{transform:translate(0,0);opacity:1}
.bm-footer-secondary{margin-top:16px}
.bm-footer .bm-footer-linkedin{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 0;border-bottom:1px solid var(--bm-footer-rule);color:var(--bm-ink);font:400 14px/1.5 Inter,sans-serif;letter-spacing:0;transition:color 200ms ease-out}
.bm-footer-linkedin::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:var(--bm-blue);transform:scaleX(0);transform-origin:left;transition:transform 200ms ease-out}
.bm-footer-linkedin svg{display:block;width:14px;height:14px;flex:0 0 14px;transition:transform 200ms ease-out}
.bm-footer .bm-footer-linkedin:is(:hover,:focus-visible){color:var(--bm-blue)}
.bm-footer-linkedin:is(:hover,:focus-visible)::after{transform:scaleX(1)}
.bm-footer-linkedin:is(:hover,:focus-visible) svg{transform:translate(2px,-2px)}
.bm-footer .bm-footer-location{display:flex;align-items:center;gap:6px;margin:24px 0 0;color:var(--bm-footer-muted);font:400 12px/1.5 'DM Mono',monospace;letter-spacing:0}
.bm-footer-location svg{width:12px;height:12px;flex:0 0 12px}
.bm-footer-photo{width:100%;max-width:380px;justify-self:end}
.bm-telephone{margin:0;padding:8px 8px 16px;background:var(--bm-paper);border:0;border-radius:0;transform:none;box-shadow:5px 7px 0 var(--bm-footer-shadow);transition:transform 300ms cubic-bezier(.2,.7,.3,1),box-shadow 300ms cubic-bezier(.2,.7,.3,1)}
.bm-telephone img{display:block;width:100%;height:380px;object-fit:cover;object-position:50% 59%;border-radius:0}
.bm-telephone figcaption{padding:15px 7px 0;color:var(--bm-ink);font:400 13px/1.5 'DM Mono',monospace;letter-spacing:0}
.bm-footer-utility{background:var(--bm-canvas);border-top:1px solid var(--bm-footer-rule)}
.bm-footer-utility-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:24px}
.bm-footer-signature{display:inline-flex;align-items:baseline;gap:3px;color:var(--bm-ink);font:500 20px/1.3 'Instrument Sans',sans-serif;letter-spacing:-.025em}
.bm-footer-signature>span{color:var(--bm-blue)}
.bm-footer-utility-links{display:flex;align-items:center;gap:24px}
.bm-footer-utility-links a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--bm-footer-muted);font:400 12px/1.5 'DM Mono',monospace;letter-spacing:0;transition:color 200ms ease-out}
.bm-footer-utility-links a:is(:hover,:focus-visible){color:var(--bm-blue)}
.bm-footer [data-footer-reveal]{opacity:1;transform:none}
.bm-footer .bm-footer-reveal-ready{transition:opacity 550ms cubic-bezier(.2,.7,.3,1) var(--bm-footer-delay,0ms),transform 550ms cubic-bezier(.2,.7,.3,1) var(--bm-footer-delay,0ms)}
.bm-footer .bm-footer-reveal-pending{opacity:0;transform:translateY(12px)}
.bm-footer .bm-footer-reveal-pending:focus-within{opacity:1;transform:none;transition:none}
@media(min-width:768px) and (max-width:1023px){
 .portfolio-edition .bm-footer{--bm-gutter:32px}
 .bm-footer-main{gap:40px;padding-block:46px 40px}
 .bm-footer .bm-footer-heading{font-size:43px;margin-bottom:23px}
 .bm-footer .bm-footer-description{font-size:13px;max-width:370px;margin-bottom:25px}
 .bm-footer .bm-footer-linkedin{font-size:12px}
 .bm-footer .bm-footer-location{font-size:11px}
 .bm-footer-photo{max-width:280px}.bm-telephone img{height:260px}.bm-telephone figcaption{font-size:12px}
 .bm-footer-utility-inner{padding-block:22px}.bm-footer-signature{font-size:17px}.bm-footer-utility-links a{font-size:11px}
}
@media(max-width:767px){
 .portfolio-edition .bm-footer{--bm-gutter:22px;--bm-max:480px}
 .bm-footer-main{grid-template-columns:minmax(0,1fr);gap:34px;padding-block:36px}
 .bm-footer .bm-footer-heading{font-size:clamp(32px,10vw,39px);line-height:1.1;margin-bottom:24px}
 .bm-footer .bm-footer-description{font-size:14px;max-width:100%;margin-bottom:25px}
 .bm-footer .bm-booking{padding:14px 18px;gap:18px}
 .bm-footer .bm-footer-linkedin{font-size:13px}
 .bm-footer .bm-footer-location{font-size:11px;margin-top:20px}
 .bm-footer-photo{max-width:300px;justify-self:start}.bm-telephone img{height:260px}.bm-telephone figcaption{font-size:12px}
 .bm-footer-utility-inner{flex-direction:column;align-items:flex-start;gap:12px;padding-block:24px 20px}
 .bm-footer-signature{font-size:17px}
 .bm-footer-utility-links{width:100%;justify-content:space-between;gap:20px}.bm-footer-utility-links a{font-size:11px}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .bm-telephone:hover{transform:rotate(-1deg) translateY(-3px);box-shadow:7px 10px 0 var(--bm-footer-shadow)}
}
@media(prefers-reduced-motion:reduce){
 html:has(.bm-footer){scroll-behavior:auto!important}
 .bm-footer *,.bm-footer *::before,.bm-footer *::after{transition:none!important;animation:none!important}
 .bm-footer [data-footer-reveal]{opacity:1!important;transform:none!important}
 .bm-footer .bm-booking:active,.bm-footer .bm-telephone:hover,.bm-footer .bm-footer-linkedin svg{transform:none!important}
 .bm-footer .bm-arrow-first{transform:none!important;opacity:1!important}.bm-footer .bm-arrow-second{display:none}
 .bm-footer .bm-footer-linkedin::after{transform:none!important;opacity:0}.bm-footer .bm-footer-linkedin:is(:hover,:focus-visible)::after{opacity:1}
}
