/* =========================================================
   Page-specific tweaks
   ========================================================= */

/* HOME ---------------------------------------------------- */
.home-positioning {
  text-align: center;
}

.home-positioning .lead {
  margin-top: var(--space-6);
}

.home-positioning .display-m {
  text-wrap: balance;
}

/* SERVICES ------------------------------------------------ */
.svc-anchor-nav {
  display: none;
  position: sticky;
  top: var(--header-h);
  background: var(--color-bone);
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--color-rule);
  z-index: 50;
}

@media (min-width: 900px) {
  .svc-anchor-nav { display: block; }
}

.svc-anchor-nav__inner {
  display: flex;
  gap: var(--space-7);
  justify-content: center;
  flex-wrap: wrap;
}

.svc-anchor-nav a {
  font-family: var(--font-sans);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  padding-block: var(--space-2);
  border-bottom: 1px solid transparent;
  transition: color var(--transition-base), border-color var(--transition-base);
}

.svc-anchor-nav a:hover,
.svc-anchor-nav a.is-active {
  color: var(--color-navy);
  border-bottom-color: var(--color-navy);
}

/* ABOUT --------------------------------------------------- */
.about-intro {
  max-width: 720px;
}

.bio__name {
  font-family: var(--font-serif);
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: -0.015em;
  margin-bottom: var(--space-2);
  color: var(--color-charcoal);
}

.bio__role {
  font-family: var(--font-sans);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  margin-bottom: var(--space-6);
  display: block;
}

/* INSIGHTS index ----------------------------------------- */
.insights-index {
  padding-block: var(--section-y);
}

.insights-index__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
}

@media (min-width: 768px) {
  .insights-index__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 1024px) {
  .insights-index__grid { grid-template-columns: repeat(3, 1fr); }
}

/* INDUSTRIES --------------------------------------------- */
.indy-section {
  scroll-margin-top: calc(var(--header-h) + 32px);
}

.indy-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-8);
  align-items: center;
}

@media (min-width: 900px) {
  .indy-grid { grid-template-columns: 1.15fr 1fr; gap: clamp(3rem, 6vw, 6rem); }
  .indy-grid--photo-left { grid-template-columns: 1fr 1.15fr; }
  .indy-grid--photo-left .indy-photo { order: -1; }
}

.indy-photo {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: var(--radius-md);
  background: var(--color-bone-warm);
}

.indy-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: brightness(0.88) saturate(0.92);
  transition: transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.indy-section:hover .indy-photo img {
  transform: scale(1.04);
  filter: brightness(0.95) saturate(1);
}

.indy-copy .svc-section__list {
  margin-top: var(--space-5);
}

/* CONTACT ------------------------------------------------ */
.contact-page__form-card {
  background: var(--color-white);
  padding: clamp(2rem, 4vw, 3rem);
  border: 1px solid var(--color-rule);
}

.contact-page__form-card h2 {
  font-family: var(--font-serif);
  font-size: 1.875rem;
  font-weight: 500;
  margin-bottom: var(--space-2);
}

.contact-page__form-card p {
  color: var(--color-text-muted);
  font-size: var(--fs-small);
  margin-bottom: var(--space-7);
}
