/* Contact — clean two-column layout */
.adp-contact{
  --adp-ink:#141414;
  --adp-muted:#6b7280;
  --adp-line:#e6e6e6;
  --adp-red:#b11226;
  --adp-soft:#f7f7f7;
  max-width:1040px;
  margin:0 auto;
  padding:48px 28px 96px;
  color:var(--adp-ink);
}
.adp-contact-grid{
  display:grid;
  grid-template-columns:minmax(0,0.95fr) minmax(0,1.15fr);
  gap:48px 56px;
  align-items:start;
}
.adp-contact-info__eyebrow{
  margin:0 0 10px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:0.72rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  font-weight:650;
  color:var(--adp-red);
}
.adp-contact-info__title,
.adp-contact-form__title{
  margin:0 0 12px;
  font-size:clamp(1.6rem,3vw,2.1rem);
  line-height:1.2;
  letter-spacing:-.02em;
  font-weight:650;
}
.adp-contact-info__text,
.adp-contact-form__lead{
  margin:0 0 28px;
  font-size:1.05rem;
  line-height:1.55;
  color:#333;
  max-width:36ch;
}
.adp-contact-form__lead{max-width:46ch}
.adp-contact-block{margin:0 0 22px}
.adp-contact-block__label{
  margin:0 0 6px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:650;
  color:var(--adp-muted);
}
.adp-contact-block__body{
  margin:0;
  font-size:1.02rem;
  line-height:1.55;
  color:#222;
}
.adp-contact-mail{
  color:var(--adp-ink);
  text-decoration:none;
  border-bottom:1px solid rgba(20,20,20,.25);
  transition:color .2s ease,border-color .2s ease;
}
.adp-contact-mail:hover{color:var(--adp-red);border-color:var(--adp-red)}
.adp-contact-social a{
  color:var(--adp-ink);
  text-decoration:none;
  font-weight:600;
}
.adp-contact-social a:hover{color:var(--adp-red)}
.adp-contact-social span{margin:0 .45rem;color:#c5c5c5}

.adp-contact-form{
  background:var(--adp-soft);
  border:1px solid var(--adp-line);
  border-radius:8px;
  padding:28px 28px 24px;
}
.adp-contact-form .wpcf7{margin:0}
.adp-contact-form .wpcf7 form p{margin:0 0 14px}
.adp-contact-form .wpcf7 input[type="text"],
.adp-contact-form .wpcf7 input[type="email"],
.adp-contact-form .wpcf7 textarea{
  width:100%;
  max-width:100%;
  border:1px solid #d7d7d7;
  background:#fff;
  border-radius:4px;
  padding:12px 14px;
  font-size:15px;
  line-height:1.4;
  box-sizing:border-box;
}
.adp-contact-form .wpcf7 textarea{min-height:140px;resize:vertical}
.adp-contact-form .wpcf7 input:focus,
.adp-contact-form .wpcf7 textarea:focus{
  outline:2px solid rgba(177,18,38,.35);
  outline-offset:1px;
  border-color:#111;
}
.adp-contact-form .wpcf7 input.wpcf7-submit,
.adp-contact-form .wpcf7 .wpcf7-submit{
  appearance:none;
  border:0;
  background:#111;
  color:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:650;
  padding:14px 22px;
  border-radius:4px;
  cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}
.adp-contact-form .wpcf7 input.wpcf7-submit:hover{background:var(--adp-red)}

/* Align subheader title with content column */
html body.be-page-13 #Subheader .container,
html body.be-page-473 #Subheader .container,
html body.page-id-13 #Subheader .container,
html body.page-id-473 #Subheader .container{
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:28px!important;
  padding-right:28px!important;
  box-sizing:border-box;
}

@media (max-width:900px){
  .adp-contact-grid{grid-template-columns:1fr;gap:32px}
  .adp-contact{padding:36px 16px 80px}
  .adp-contact-form{padding:22px 18px}
  html body.be-page-13 #Subheader .container,
  html body.be-page-473 #Subheader .container,
  html body.page-id-13 #Subheader .container,
  html body.page-id-473 #Subheader .container{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

.adp-contact-map{margin:40px 0 0;padding-top:8px}
.adp-contact-map__label{
  margin:0 0 12px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:650;
  color:var(--adp-muted);
}
.adp-contact-map__frame{
  position:relative;
  width:100%;
  aspect-ratio:21/9;
  min-height:240px;
  border:1px solid var(--adp-line);
  border-radius:8px;
  overflow:hidden;
  background:#eee;
}
.adp-contact-map__frame iframe{
  position:absolute;inset:0;width:100%;height:100%;border:0;
}
@media (max-width:900px){
  .adp-contact-map__frame{aspect-ratio:4/3;min-height:220px}
}
.adp-contact-recaptcha{margin:14px 0 0;font-size:12px;line-height:1.45;color:#6b7280;max-width:46ch}
