/* Contact page and retained preview; shared header and footer match the homepage. */
.homepage-refresh .refresh-contact {
  width:calc(100% - 120px); max-width:760px; margin:100px auto 112px;
}
.refresh-contact-intro { text-align:center; margin-bottom:52px; }
.refresh-contact-intro .content-eyebrow { min-width:113px; margin-bottom:30px; }
.homepage-refresh .refresh-contact h1 { font-size:72px; }
.refresh-contact-intro > p:last-child { margin:30px auto 0; font-size:20px; font-weight:300; line-height:1.55; }
.refresh-contact-direct { margin:40px auto 0; max-width:700px; font-size:16px; font-weight:300; line-height:1.55; text-align:center; }
.refresh-contact-direct a { text-underline-offset:3px; overflow-wrap:anywhere; }
.refresh-contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.refresh-contact-form fieldset { display:contents; padding:0; margin:0; border:0; }
.refresh-contact-field { display:flex; flex-direction:column; gap:10px; min-width:0; }
.refresh-contact-wide { grid-column:1/-1; }
.refresh-contact-field label { font-size:14px; font-weight:500; line-height:1.5; }
.refresh-contact-field label span { color:#525050; font-size:12px; font-weight:300; }
.refresh-contact-field :is(input,textarea) {
  display:block; width:100%; padding:14px 16px; border:1px solid rgb(0 0 0 / 40%);
  border-radius:8px; background:rgb(255 255 255 / 28%); color:var(--ink);
  font:300 16px/1.55 var(--font); opacity:1;
}
.refresh-contact-field input { min-height:54px; }
.refresh-contact-field textarea { min-height:180px; resize:vertical; }
.refresh-contact-field :is(input,textarea):focus-visible { outline-offset:3px; }
.refresh-contact-help { margin:0; color:#525050; font-size:13px; font-weight:300; line-height:1.55; }
.refresh-contact-actions { grid-column:1/-1; display:flex; flex-direction:column; align-items:center; gap:16px; margin-top:8px; }
.refresh-contact-actions .contact-button { margin:0; }
.refresh-contact-actions .contact-button:disabled { cursor:wait; }
.refresh-contact-status { max-width:480px; margin:0; color:#525050; font-size:13px; font-weight:300; line-height:1.55; text-align:center; }
.refresh-contact-status:empty { display:none; }
.refresh-contact-feedback { width:100%; margin:0; padding:16px 20px; border:1px solid currentColor; border-radius:8px; font-size:16px; font-weight:300; line-height:1.55; text-align:center; }
.refresh-contact-error { color:#9c2810; font-size:14px; font-weight:300; line-height:1.55; }
.refresh-contact-field [aria-invalid="true"] { border-color:#9c2810; }
.refresh-contact-form [data-fs-error]:not([data-fs-active]),
.refresh-contact-form [data-fs-success]:not([data-fs-active]) { display:none; }
.refresh-contact-page .refresh-footer .brand { flex:none; }
@media (max-width:999px) {
  .homepage-refresh .refresh-contact { width:calc(100% - 64px); margin-block:80px; }
  .homepage-refresh .refresh-contact h1 { font-size:60px; }
}
@media (max-width:599px) {
  .homepage-refresh .refresh-contact { width:calc(100% - 48px); margin-block:64px 72px; }
  .homepage-refresh .refresh-contact h1 { font-size:48px; }
  .refresh-contact-intro { margin-bottom:36px; }
  .refresh-contact-intro > p:last-child { font-size:18px; margin-top:24px; }
  .refresh-contact-form { grid-template-columns:minmax(0,1fr); gap:24px; }
  .refresh-contact-actions .contact-button { width:100%; min-height:50px; font-size:14px; }
}
