/* Soft organic blob background decorations (blue / pink), inspired by umicahi.com */
.news-section,
.service-section,
.message-section,
.contact-section {
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.decor-blob {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  filter: blur(46px);
  opacity: .55;
}
.decor-blob--blue { background: rgba(127, 178, 223, .4); }
.decor-blob--pink { background: rgba(239, 138, 170, .38); }

.decor-blob--a {
  width: 300px;
  height: 280px;
  top: -70px;
  left: -60px;
  border-radius: 42% 58% 65% 35% / 45% 40% 60% 55%;
}
.decor-blob--b {
  width: 260px;
  height: 300px;
  bottom: -90px;
  right: -50px;
  border-radius: 58% 42% 38% 62% / 55% 60% 40% 45%;
}
.decor-blob--c {
  width: 220px;
  height: 200px;
  top: 12%;
  right: 5%;
  border-radius: 50% 50% 38% 62% / 60% 45% 55% 40%;
}
.decor-blob--d {
  width: 280px;
  height: 260px;
  bottom: 6%;
  left: 3%;
  border-radius: 40% 60% 55% 45% / 62% 38% 60% 40%;
}
.decor-blob--e {
  width: 240px;
  height: 220px;
  top: -50px;
  right: 14%;
  border-radius: 62% 38% 45% 55% / 40% 58% 42% 60%;
}
.decor-blob--f {
  width: 320px;
  height: 300px;
  bottom: -70px;
  left: 20%;
  border-radius: 45% 55% 60% 40% / 50% 42% 58% 50%;
}

@media (max-width: 767px) {
  .decor-blob { transform: scale(.6); }
  .decor-blob--a { top: -40px; left: -50px; }
  .decor-blob--b { bottom: -60px; right: -40px; }
  .decor-blob--c { top: 4%; right: -30px; }
  .decor-blob--d { bottom: 2%; left: -30px; }
  .decor-blob--e { top: -30px; right: -20px; }
  .decor-blob--f { bottom: -50px; left: 10%; }
}

/* Contact section: solid brand pink background, white heading text, form in a white card */
.contact-section .contact-bg {
  background: var(--pink);
}
.contact-section .section-heading p {
  color: #fff;
}
.contact-section .section-heading h2 {
  color: #fff;
}
.contact-section > .contact-inner > p {
  color: #fff;
}
.contact-form-card {
  background: #fff;
  border-radius: 20px;
  padding: clamp(28px, 4vw, 48px) clamp(24px, 5vw, 56px);
  margin-top: 40px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .14);
}
.contact-form-card .contact-form {
  margin: 0;
}
