/* ==========================================================================
   Contact Us — desktop (1440 x 2727) and mobile (402 x 2163)
   ========================================================================== */

.page--contact { height: auto; }

/* Soft background wash (image 129, luminosity) */
.wash { position: absolute; left: 0; top: 0; width: 1440px; height: 1024px; overflow: hidden; mix-blend-mode: luminosity; }
.wash img { position: absolute; left: 0; top: -13.67%; width: 100%; height: 175.78%; max-width: none; opacity: .32; }
.wash::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255,255,255,0) 80%, #fff 100%); }

/* Ghost heading */
.ghost-title {
  position: absolute; left: 76px; top: 156px; width: 1288px;
  font-size: 228px; line-height: 1; text-transform: capitalize; text-align: center; white-space: nowrap;
  color: transparent; opacity: .12;
  background: var(--ghost-gradient-gray);
  -webkit-background-clip: text; background-clip: text;
}
.contact__lead { position: absolute; left: 178px; top: 352px; width: 1084px; font-size: 32px; line-height: 36px; text-align: center; color: var(--black); }

/* Info cards */
.info-card { position: absolute; top: 420px; width: 312px; height: 176px; border-radius: 28px; overflow: hidden; background: var(--white); color: var(--black); }
.info-card--1 { left: 228px; }
.info-card--2 { left: 564px; background: var(--navy); color: var(--white); }
.info-card--3 { left: 900px; }
.info-card__lines { position: absolute; width: 185.609px; height: 416.588px; transform: rotate(-30deg); }
.info-card__lines--a { left: 269.61px; top: -120.57px; }
.info-card__lines--b { left: 103.71px; top: -36.7px; }
.info-card__icon { position: absolute; left: 24px; top: 24px; width: 56px; height: 56px; padding: 14px; border-radius: 88px; background: #f5f5f5; display: flex; align-items: center; }
.info-card__icon img { width: 28px; height: 28px; }
.info-card--2 .info-card__icon {
  background: rgba(255,255,255,.04); border: 1.5px solid rgba(255,255,255,.16); padding: 12.5px;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.info-card__title { position: absolute; left: 24px; top: 104px; font-size: 24px; line-height: 1; font-weight: 500; text-transform: capitalize; white-space: nowrap; }
.info-card__sub { position: absolute; left: 24px; top: 136px; font-size: 16px; line-height: 1; text-transform: capitalize; white-space: nowrap; opacity: .7; }
.info-card--2 .info-card__sub { color: var(--steel); opacity: 1; }

/* Consultation block */
.contact__bird { position: absolute; left: 0; top: 708px; width: 1440px; height: 1361px; mix-blend-mode: luminosity; }
.avatars { position: absolute; left: 576px; top: 1036px; height: 84px; }
.avatars img { position: absolute; top: -3.5px; width: 91px; height: 91px; }
.contact__pitch { position: absolute; left: 364px; top: 1152px; width: 712px; font-size: 32px; line-height: 1; font-weight: 500; text-align: center; color: rgba(0,0,0,.44); }
.contact__pitch strong { font-weight: inherit; color: var(--black); }

/* Form card */
.contact__form { padding-top: 1280px; padding-bottom: 92px; }
.page--contact .footer { position: relative; bottom: auto; height: 658px; }

/* ==========================================================================
   Mobile
   ========================================================================== */
@media (max-width: 899px) {
  .wash { left: 50%; width: 402px; height: 874px; transform: translateX(-50%); }
  .wash img { top: 0; width: 100%; height: 100%; object-fit: cover; }
  .ghost-title { left: 50%; top: 184px; width: 354px; transform: translateX(-50%); font-size: 72px; }
  .contact__lead { left: 50%; top: 236px; width: 314px; transform: translateX(-50%); font-size: 14px; line-height: 16px; }

  .info-cards { position: absolute; left: 50%; top: 292px; display: flex; gap: 16px; transform: translateX(-50%); }
  .info-card { position: relative; top: auto; left: auto; width: 330px; height: 144px; border-radius: 24px; flex: none; }
  .info-card__lines { width: 163.481px; height: 366.918px; }
  .info-card__lines--a { left: 256.9px; top: -124.49px; }
  .info-card__lines--b { left: 110.78px; top: -50.61px; }
  .info-card__icon { left: 16px; top: 16px; }
  .info-card__title { left: 16px; top: 88px; font-size: 18px; line-height: 20px; }
  .info-card__sub { left: 16px; top: 112px; font-size: 14px; line-height: 16px; }
  .info-card--2 .info-card__sub { opacity: .7; }

  .contact__bird { left: 50%; top: 512px; width: 402px; height: 381px; transform: translateX(-50%); }
  .avatars { left: calc(50% - 88px); top: 636px; height: 56px; }
  .avatars img { top: -2px; width: 60px; height: 60px; }
  .contact__pitch { left: 50%; top: 716px; width: 354px; transform: translateX(-50%); font-size: 14px; line-height: 16px; }

  .contact__form { padding-top: 788px; padding-bottom: 92px; }
  .page--contact .footer-m { position: relative; left: auto; bottom: auto; margin: 0 auto; }
}
