.universal-contact-cta {
  position: relative;
  overflow: hidden;
  margin-top: clamp(4.5rem, 10vw, 8rem);
  background: #187d79;
  color: #f8fbf8;
}

.universal-contact-rings { position: absolute; inset: 0; pointer-events: none; }
.universal-contact-rings i { position: absolute; display: block; border: 1px solid rgba(214, 239, 234, .22); border-radius: 50%; }
.universal-contact-rings i:nth-child(1) { width: clamp(17rem, 28vw, 29rem); height: clamp(17rem, 28vw, 29rem); left: 35%; top: -13rem; }
.universal-contact-rings i:nth-child(2) { width: clamp(12rem, 20vw, 21rem); height: clamp(12rem, 20vw, 21rem); left: 45%; top: -7.5rem; }
.universal-contact-rings i:nth-child(3) { width: clamp(5rem, 9vw, 9rem); height: clamp(5rem, 9vw, 9rem); left: 54%; top: 1.5rem; background: rgba(209, 224, 242, .16); }

.universal-contact-inner {
  position: relative;
  display: grid;
  width: min(1120px, calc(100% - 2.5rem));
  margin: 0 auto;
  grid-template-columns: minmax(0, 1.25fr) minmax(16rem, .75fr);
  gap: clamp(3rem, 10vw, 10rem);
  padding: clamp(4rem, 8vw, 6.5rem) 0;
}

.universal-contact-copy > p { margin: 0 0 1.45rem; color: #c6dfda; font-family: Georgia, "Times New Roman", serif; font-size: .78rem; font-weight: 600; letter-spacing: .13em; }
.universal-contact-copy > p::before { display: inline-block; width: 1.15rem; height: 1px; margin: 0 .65rem .22rem 0; background: currentColor; content: ""; }
.universal-contact-copy h2 { max-width: 10ch; margin: 0; color: #fffdf9; font-family: Georgia, "Times New Roman", serif; font-size: clamp(3rem, 6.2vw, 5.8rem); font-weight: 500; letter-spacing: -.07em; line-height: .88; }
.universal-contact-copy h2 em { color: #d7c4ec; font-weight: 400; }
.universal-contact-copy > span { display: block; max-width: 25rem; margin: 1.8rem 0; color: #e1efec; font-family: Arial, sans-serif; font-size: 1rem; line-height: 1.55; }
.universal-contact-copy > a { display: inline-flex; align-items: center; gap: .6rem; border-radius: 999px; padding: 1rem 1.25rem; background: #fffdf9; color: #123d40; font-family: Arial, sans-serif; font-size: .84rem; font-weight: 700; text-decoration: none; transition: background-color 160ms ease, transform 160ms ease; }
.universal-contact-copy > a:hover { background: #d8efea; transform: translateY(-2px); }
.universal-contact-copy > a svg { flex: 0 0 auto; }
.universal-contact-details { display: grid; align-content: center; gap: 1.45rem; margin: 0; font-family: Arial, sans-serif; font-style: normal; }
.universal-contact-details a, .universal-contact-details p { display: grid; gap: .35rem; margin: 0; color: #fffdf9; text-decoration: none; }
.universal-contact-details small { color: #b9d8d2; font-size: .64rem; font-style: normal; font-weight: 700; letter-spacing: .13em; }
.universal-contact-details strong { font-size: .9rem; font-style: normal; font-weight: 500; line-height: 1.55; }
.universal-contact-details a:hover strong { color: #ddc9ef; }

@media (max-width: 620px) {
  .universal-contact-inner { grid-template-columns: 1fr; gap: 3rem; }
  .universal-contact-rings i:nth-child(1) { left: 30%; }
  .universal-contact-rings i:nth-child(2) { left: 50%; }
  .universal-contact-rings i:nth-child(3) { left: 68%; }
}
