/* Reserve call-to-action band. */
/* Top padding allows for the top wave, bottom padding for the footer wave that overlaps it; content sits centred in the visible band. */
.lmn-cta { position: relative; width: 100vw; margin-left: calc(50% - 50vw); padding: calc(var(--lmn-section) + clamp(32px, 6vw, 80px)) var(--lmn-gutter) calc(var(--lmn-section) + clamp(28px, 5vw, 60px)); text-align: center; overflow: hidden; }
.lmn-cta--coral { background: var(--lmn-coral); color: var(--lmn-white); }
.lmn-cta--yellow { background: var(--lmn-yellow); color: var(--lmn-black); }
.lmn-cta--black { background: var(--lmn-black); color: var(--lmn-cream); }
.lmn-cta__wave { position: absolute; left: 0; right: 0; top: -1px; height: clamp(32px, 6vw, 80px); line-height: 0; }
.lmn-cta__wave svg { width: 100%; height: 100%; display: block; }
.lmn-cta__wave path { fill: var(--lmn-cream); }
.lmn-cta__inner { max-width: 40rem; margin-inline: auto; position: relative; }
.lmn-cta__title { margin-bottom: 0.4em; }
.lmn-cta--coral .lmn-cta__title { color: var(--lmn-white); }
.lmn-cta__text { font-size: 1.125rem; margin-bottom: 1.5rem; }
.lmn-cta__actions { display: flex; flex-wrap: wrap; gap: 0.75rem 1.25rem; justify-content: center; align-items: center; }
.lmn-site .lmn-cta__phone { display: inline-flex; align-items: center; gap: 0.4em; font-weight: 700; color: var(--lmn-white); text-decoration: none; }
.lmn-site .lmn-cta--yellow .lmn-cta__phone { color: var(--lmn-black); }
.lmn-site .lmn-cta--black .lmn-cta__phone { color: var(--lmn-cream); }
.lmn-site .lmn-cta__phone:hover { text-decoration: underline; }
.lmn-cta--coral .lmn-btn--primary { background: var(--lmn-white); color: var(--lmn-coral-deep); box-shadow: none; }
.lmn-cta--coral .lmn-btn--primary:hover { background: var(--lmn-black); color: var(--lmn-white); }
.lmn-cta--yellow .lmn-btn--primary { background: var(--lmn-black); color: var(--lmn-white); box-shadow: none; }
.lmn-cta--yellow .lmn-btn--primary:hover { background: var(--lmn-coral-deep); }
.lmn-cta--black .lmn-btn--primary { background: var(--lmn-yellow); color: var(--lmn-black); box-shadow: none; }
.lmn-cta--black .lmn-btn--primary:hover { background: var(--lmn-white); }
.lmn-cta__deco { position: absolute; width: 14rem; height: 14rem; border-radius: 50%; opacity: 0.15; background: currentColor; pointer-events: none; }
.lmn-cta__deco--1 { left: -5rem; bottom: -6rem; }
.lmn-cta__deco--2 { right: -4rem; top: -5rem; width: 10rem; height: 10rem; }
