.hfs-contact-hero {
  min-height: 760px;
  align-items: center;
  background-image:
    radial-gradient(circle at 28% 32%, rgba(245,232,211,.35) 0%, rgba(245,232,211,.14) 18%, rgba(245,232,211,0) 40%),
    linear-gradient(90deg, rgba(23,26,27,.96) 0%, rgba(23,26,27,.86) 32%, rgba(23,26,27,.52) 58%, rgba(23,26,27,.12) 86%),
    linear-gradient(180deg, rgba(23,26,27,.10), rgba(23,26,27,.42)),
    url('/assets/images/home_hero.png');
  background-position: center center;
}
.hfs-contact-shell { width: min(1180px, 100%); margin: 0 auto; display: grid; grid-template-columns: 1fr minmax(340px, 460px); gap: clamp(34px, 6vw, 82px); align-items: center; position: relative; z-index: 2; }
.hfs-contact-copy h1 { margin: 0; font-family: var(--hfs-heading); font-size: clamp(3.2rem, 6.3vw, 6.4rem); line-height: .98; letter-spacing: -.035em; }
.hfs-contact-copy p:not(.hfs-eyebrow) { max-width: 560px; color: rgba(255,255,255,.82); font-size: 1.08rem; }
.hfs-contact-methods { display: grid; gap: 13px; margin-top: 32px; }
.hfs-contact-methods a, .hfs-contact-methods p { display: flex; align-items: center; gap: 12px; margin: 0; color: rgba(255,255,255,.88); text-decoration: none; }
.hfs-contact-methods img { width: 18px; height: 18px; filter: invert(68%) sepia(12%) saturate(635%) hue-rotate(53deg) brightness(88%) contrast(84%); }
.hfs-contact-at { color: var(--hfs-green); width: 18px; text-align: center; }
.hfs-contact-panel { background: rgba(251,247,240,.96); color: var(--hfs-ink); padding: clamp(26px, 4vw, 44px); border-radius: var(--hfs-radius-card); box-shadow: 0 28px 80px rgba(0,0,0,.32); border: 1px solid rgba(255,255,255,.58); }
.hfs-contact-panel h2 { margin: 0 0 22px; font-family: var(--hfs-heading); font-size: 2.35rem; line-height: 1; color: var(--hfs-charcoal); }
.form-group { margin-bottom: 14px; }
.form-group label { display: block; margin-bottom: 6px; font-size: .75rem; color: var(--hfs-muted); }
.form-group input, .form-group textarea { width: 100%; border: 1px solid rgba(85,73,64,.16); border-radius: var(--hfs-radius-control); background: rgba(255,255,255,.78); padding: 12px 13px; font: inherit; color: var(--hfs-ink); outline: none; }
.form-group input:focus, .form-group textarea:focus { border-color: var(--hfs-green); box-shadow: 0 0 0 3px rgba(135,154,119,.12); }
.hfs-contact-submit { margin-top: 8px; border: 0; cursor: pointer; }
.message { position: fixed; top: 20px; right: 20px; z-index: 9999; padding: 14px 18px; border-radius: var(--hfs-radius-control); background: var(--hfs-green); color: #fff; box-shadow: var(--hfs-shadow); }
.message-error { background: #8d3f32; }
@media (max-width: 900px) { .hfs-contact-shell { grid-template-columns: 1fr; } .hfs-contact-panel { max-width: 560px; } }
