/* Final presentation refinements */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(244, 240, 232, 0.94);
  backdrop-filter: blur(12px);
}

#services,
#process,
#contact { scroll-margin-top: 88px; }

.hero-photo {
  background-image:
    linear-gradient(180deg, transparent 48%, rgba(18, 32, 25, 0.34)),
    url('./assets/services/property-visuals/rendering-01.jpg');
  background-position: center;
}

.hero-contact { border-top: 3px solid var(--clay); }
.hero-contact .contact-coming b { color: var(--ink); }
.hero-text { max-width: min(540px, 100%); overflow-wrap: break-word; }

.portfolio-note {
  max-width: 760px;
  margin: 0;
  padding-top: 28px;
  border-top: 1px solid var(--line);
  color: #707873;
  font-size: 10px;
  line-height: 1.7;
}

.example-image img[src*='/broker-brand/'] {
  object-fit: contain;
  padding: 14px;
}

.service-card-simple h4 { letter-spacing: -0.15px; }
.contact-option strong { line-height: 1.35; }

@media (max-width: 620px) {
  #services,
  #process,
  #contact { scroll-margin-top: 72px; }

  .site-header { grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; }
  .site-header .brand { grid-column: 1; min-width: 0; }
  .site-header .header-contact { grid-column: 2; justify-self: end; }
  .site-header .brand img { width: 132px; }
  .hero-copy { width: 100%; min-width: 0; overflow: hidden; }
  .hero h1 { max-width: 100%; font-size: clamp(45px, 12vw, 52px); }
  .hero h1 em { display: block; }
  .hero-text { width: 100%; font-size: 16px; }
  .trust-line { padding-top: 48px; }
  .portfolio-note { padding-top: 22px; }
  .example-image img[src*='/broker-brand/'] { padding: 9px; }
}
