/* A little breathing room after Alla, then a shorter contact composition. */
.steps-section { border-top: 54px solid #f3f0e8; }
.contact-section { grid-template-columns: minmax(0,1fr) minmax(0,2fr); }
.contact-section>.contact-left { padding: 65px clamp(25px,3.8vw,62px); }
.contact-left h2 { font-size: clamp(49px,4.6vw,70px); line-height: .98; margin-top: 32px; }
.contact-left>p { font-size: 13px; line-height: 1.8; }
.contact-left .contact-details { margin-top: 36px; padding-top: 24px; gap: 22px; }
.contact-left .contact-details a, .contact-left .contact-details p { font-size: clamp(21px,2vw,28px); overflow-wrap: anywhere; }
.contact-section>.form-card { padding: 60px clamp(30px,5.5vw,88px) 65px; }
.contact-section .form-card h3 { font-size: clamp(43px,4.2vw,62px); max-width: 680px; margin: 16px 0 29px; }
.contact-section .form-card form { gap: 22px; }
.contact-section .form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 30px; align-items: start; }
.contact-section .form-card input:not([type="checkbox"]), .contact-section .form-card select { min-height: 54px; padding-block: 11px; }
.contact-section .form-card textarea { min-height: 76px; height: 76px; padding-block: 11px; }
.contact-section .form-submit { min-height: 55px; }
.contact-section .form-card .consent { margin-block: 0; }

/* The closing section echoes the midnight-blue manuscript in section 4. */
.site-footer { position: relative; isolation: isolate; background: radial-gradient(ellipse at 8% 0%, #2b4152 0%, transparent 60%), linear-gradient(130deg,#1b2b3a 15%,#162330 100%); color: #f3eee5; }
.site-footer::before { content: ""; position: absolute; z-index: -2; inset: -25% -6% -40% 20%; background: url("./assets/mozart-nachtmusik-autograph.png") center/cover no-repeat; filter: grayscale(1) invert(1); mix-blend-mode: screen; opacity: .075; transform: rotate(-7deg); pointer-events: none; }
.site-footer::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(27,43,58,.5),transparent 70%); pointer-events: none; }
.site-footer .footer-content { padding-block: 70px 75px; }
.site-footer .footer-side small { opacity: .78; }

@media (max-width: 1050px) and (min-width: 741px) {
  .contact-section>.contact-left { padding-inline: 25px; }
  .contact-section>.form-card { padding-inline: 35px; }
  .contact-left .section-number { font-size: 8px; letter-spacing: .12em; white-space: normal; }
  .contact-section .form-card label { font-size: 13px; }
  .contact-section .form-grid { gap: 22px; }
}
@media (max-width: 740px) {
  .steps-section { border-top-width: 35px; }
  .contact-section { grid-template-columns: minmax(0,1fr); }
  .contact-section>.contact-left { padding: 55px 25px; }
  .contact-left h2 { font-size: clamp(57px,12vw,76px); }
  .contact-section>.form-card { padding: 55px 25px 60px; }
  .contact-section .form-grid { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .contact-section .form-card h3 { font-size: clamp(43px,10.5vw,58px); }
  .site-footer::before { inset: 0 -50% 0 -10%; opacity: .06; background-size: auto 100%; }
  .site-footer .footer-content { padding-block: 55px 65px; }
}
