/* Call to action and contact: brand-blue band, the logo's arc, contact card. */
.ex.cta { background: var(--ex-brand); color: var(--ex-text); overflow: hidden; }
.ex.cta .cta-arc { position: absolute; right: -4%; top: -8%; width: 62%; height: auto; opacity: .55; pointer-events: none; }
.ex.cta .cta-in { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: center; padding-top: clamp(64px, 7vw, 104px); padding-bottom: clamp(64px, 7vw, 104px); }
.ex.cta .cta-h { font-size: clamp(36px, 5vw, 72px); }
.ex.cta .cta-h span { display: block; color: var(--ex-green); }
.ex.cta .cta-copy > p { margin: 18px 0 30px; font-size: var(--ex-fs-lead); color: #dbe4f6; }
.ex.cta .cta-acts { display: flex; flex-wrap: wrap; gap: 14px; }
.ex.cta .btn--line { box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .5); }
.ex.cta .btn--line:hover, .ex.cta .btn--line:focus-visible { box-shadow: inset 0 0 0 1.5px #fff; }
.ex.cta .cta-card { display: flex; flex-direction: column; font-style: normal; background: var(--ex-ink); border-radius: 4px; clip-path: polygon(var(--ex-cut) 0, 100% 0, 100% 100%, 0 100%, 0 var(--ex-cut)); }
.ex.cta .cta-card > a, .ex.cta .cta-card > .cta-row { display: flex; flex-direction: column; gap: 2px; padding: 22px 28px; border-top: 1px solid var(--ex-line); font-size: 19px; font-weight: 700; color: #fff; overflow-wrap: anywhere; transition: background-color .2s; }
.ex.cta .cta-card > :first-child { border-top: 0; }
.ex.cta .cta-card > a:hover { background: var(--ex-navy-800); }
.ex.cta .cta-card small { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ex-green); }

@media (max-width: 900px) {
	.ex.cta .cta-in { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
	.ex.cta .cta-acts .btn { flex: 1 1 100%; }
	.ex.cta .cta-card > a, .ex.cta .cta-card > .cta-row { padding: 18px 20px; font-size: 17px; }
	.ex.cta .cta-arc { width: 120%; right: -30%; top: -2%; opacity: .4; }
}
