/* agent-site.css — agent subsite pages (sam.hrvahomes.com etc.).
   Builds on tokens.css, base.css and style.css; mirrors the home page. */

.agent-form-wrap [hidden], .agent-form[hidden] { display: none !important; }

/* Hero: home-page photo hero with the agent's portrait */
.agent-hero { min-height: min(84vh, 680px); }
.agent-hero__grid {
  display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
  gap: clamp(var(--space-8), 6vw, var(--space-16)); align-items: center;
}
.agent-hero h1 { max-width: none; margin-bottom: var(--space-4); }
.agent-hero__contact {
  list-style: none; padding: 0; margin: var(--space-6) 0 0;
  display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6);
  font-size: var(--text-sm);
}
.agent-hero__contact a { color: rgba(255,255,255,0.9); display: inline-flex; align-items: center; gap: var(--space-2); }
.agent-hero__contact a:hover { color: #fff; }
.agent-portrait {
  position: relative; aspect-ratio: 4 / 5; border-radius: var(--radius-xl); overflow: hidden;
  background: var(--color-surface-offset);
  border: 6px solid rgba(255,255,255,0.92);
  box-shadow: 0 30px 60px rgba(0,0,0,0.35);
  max-width: 420px; justify-self: end; width: 100%;
}
.agent-portrait img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.agent-monogram {
  width: 100%; height: 100%; display: grid; place-items: center;
  background: linear-gradient(160deg, var(--color-navy), #12325a);
  color: #fff; font-family: var(--font-display); font-weight: 700;
  font-size: clamp(4rem, 10vw, 7rem); letter-spacing: 0.04em;
}

/* About + form */
.agent-body__grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px);
  gap: clamp(var(--space-8), 6vw, var(--space-16)); align-items: start;
}
.agent-bio p { font-size: var(--text-base); line-height: 1.75; margin-bottom: var(--space-5); }
.agent-promise {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4);
  margin-top: var(--space-8); padding-top: var(--space-8); border-top: 1px solid var(--color-divider);
}
.agent-promise h3 { font-size: var(--text-sm); margin-bottom: var(--space-1); color: var(--color-primary); }
.agent-promise p { font-size: var(--text-sm); margin: 0; line-height: 1.5; }
.agent-form-wrap { position: sticky; top: 96px; }
.agent-form-wrap .form-card { background: var(--color-bg); box-shadow: var(--shadow-md); }
.agent-form-wrap h2 { font-size: var(--text-lg); margin-bottom: var(--space-1); }
.agent-form-wrap .form-intro { font-size: var(--text-sm); margin-bottom: var(--space-5); }
.agent-form .hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.agent-form .checkbox-row label { font-size: var(--text-xs); line-height: 1.5; }
.agent-form .btn { margin-top: var(--space-2); }

.agent-listing-note { margin-top: var(--space-6); font-size: var(--text-sm); color: var(--color-text-muted); }

@media (max-width: 900px) {
  .agent-hero__grid { grid-template-columns: 1fr; }
  .agent-portrait { order: -1; justify-self: start; max-width: 260px; }
  .agent-body__grid { grid-template-columns: 1fr; }
  .agent-form-wrap { position: static; }
}
@media (max-width: 560px) {
  .agent-portrait { max-width: 200px; border-width: 4px; }
  .agent-promise { grid-template-columns: 1fr; }
  .agent-hero .hero-actions .btn { flex: 1 1 100%; justify-content: center; }
}
.agent-hero__contact > li > span { color: rgba(255,255,255,0.72); }
