.milsons-contact-banner{background:#eef2f4;color:#242833;overflow:hidden}.milsons-contact-banner__inner{display:grid;grid-template-columns:minmax(0,9fr) minmax(0,11fr);gap:clamp(32px,5vw,80px);align-items:center;min-height:360px;padding-top:40px;padding-bottom:40px}.milsons-contact-banner__copy{padding:24px 0}.milsons-contact-banner__accent{display:block;width:56px;height:3px;background:#19b6c8;margin-bottom:24px}.milsons-contact-banner h2{font-family:var(--font-heading-family);font-size:clamp(36px,3.8vw,52px);line-height:1.2;letter-spacing:.02em;margin:0 0 20px;color:#242833}.milsons-contact-banner__copy>p{font-size:17px;line-height:1.7;margin:0 0 28px;color:#59616c;max-width:420px}.milsons-contact-banner__media{position:relative;min-width:0;height:320px;border-radius:6px;overflow:hidden}.milsons-contact-banner__image{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.milsons-contact-banner__media--empty{background:linear-gradient(135deg,#dce7eb,#e8eef1 50%,#cadde3)}.milsons-contact-banner__shape{position:absolute;width:65%;height:150%;right:-12%;top:-30%;border:1px solid rgba(19,139,158,.2);border-radius:48%;transform:rotate(-30deg);box-shadow:0 0 0 48px rgba(25,182,200,.045),0 0 0 96px rgba(25,182,200,.035)}.milsons-contact-banner__placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;color:#526b75;font-size:15px;letter-spacing:.04em}@media(max-width:989px){.milsons-contact-banner__inner{gap:28px}.milsons-contact-banner__media{height:300px}}@media(max-width:749px){.milsons-contact-banner__inner{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-top:32px;padding-bottom:32px;min-height:0}.milsons-contact-banner__copy{padding:0}.milsons-contact-banner h2{font-size:34px}.milsons-contact-banner__copy>p{font-size:16px;margin-bottom:24px}.milsons-contact-banner__media{height:auto;aspect-ratio:16/10}}
.milsons-contact-banner__inner{min-height:240px;padding-top:24px;padding-bottom:24px}.milsons-contact-banner__copy{padding:0}.milsons-contact-banner__accent{margin-bottom:16px}.milsons-contact-banner h2{margin-bottom:14px}.milsons-contact-banner__copy>p{margin-bottom:20px}.milsons-contact-banner__media{height:220px;border-radius:0;background:transparent;overflow:visible}.milsons-contact-banner__image{object-fit:contain;background:transparent}.milsons-contact-banner__media--empty{background:transparent}.milsons-contact-banner__shape{display:none}.milsons-contact-banner__placeholder{color:#83929b}@media(max-width:989px){.milsons-contact-banner__media{height:200px}}@media(max-width:749px){.milsons-contact-banner__inner{gap:16px;padding-top:24px;padding-bottom:24px;min-height:0}.milsons-contact-banner__media{height:auto;aspect-ratio:12/5}.milsons-contact-banner__copy>p{margin-bottom:18px}}

.milsons-contact-banner .milsons-contact-banner__link{background:rgb(var(--color-button));color:rgb(var(--color-button-text));font-size:1.5rem;min-width:160px;text-decoration:none}

@media(min-width:750px){.milsons-contact-banner__inner.page-width{max-width:var(--page-width);padding-inline:50px;min-height:300px;gap:40px}.milsons-contact-banner__media{height:250px}}
.milsons-contact-banner .milsons-contact-banner__link{background:transparent;color:#121212;--color-button:18,18,18;--color-button-text:18,18,18;--alpha-button-background:0;--alpha-button-border:1}.milsons-contact-banner .milsons-contact-banner__link:hover{background:rgba(18,18,18,.04)}

.milsons-contact-banner .milsons-contact-banner__link{border:1px solid #121212;border-radius:999px;box-shadow:none}.milsons-contact-banner .milsons-contact-banner__link::before,.milsons-contact-banner .milsons-contact-banner__link::after{box-shadow:none;border:0}

.milsons-contact-banner__image{transform:scale(1.1);transform-origin:center}

@media(min-width:750px){
.milsons-contact-banner__inner.page-width{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px}
.milsons-contact-banner__copy{min-width:0}
.milsons-contact-banner h2{max-width:14ch}
.milsons-contact-banner__copy>p{max-width:520px}
.milsons-contact-banner__media{transform:translateX(24px)}
}
.milsons-contact-banner__media--empty{background:linear-gradient(135deg,#e2ecef,#d0e1e6);border-radius:24px;overflow:hidden}
.milsons-contact-banner__media--empty .milsons-contact-banner__shape{display:block}
@media(max-width:749px){
.milsons-contact-banner__inner.page-width{padding-inline:24px;gap:24px;padding-block:32px}
.milsons-contact-banner h2{font-size:clamp(28px,8vw,34px);max-width:100%;overflow-wrap:break-word}
.milsons-contact-banner__copy>p{max-width:100%}
.milsons-contact-banner__media{transform:none;width:100%;height:auto;aspect-ratio:16/9}
.milsons-contact-banner .milsons-contact-banner__link{min-width:0;max-width:100%;padding-inline:28px}
}

@media(min-width:750px){
.milsons-contact-banner__inner.page-width{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}
.milsons-contact-banner h2{max-width:none;font-size:clamp(28px,3.4vw,52px)}
.milsons-contact-banner__project-line{display:block;white-space:nowrap}
}
