@import url('https://fonts.googleapis.com/css2?family=Newsreader:opsz,wght@6..72,500;6..72,600&display=swap');

/* Shared refinements approved from Gary's eight-page review. */
.interior-page .nav-links,
.interior-page .phone { font-size: 15px; }
.interior-page .nav-services-panel a,
.interior-page .mobile-service-grid a { font-size: 14px; }
.interior-page :is(.display, .inspection-hero h1, section.hero h1),
.interior-page main h2,
.interior-page main h3.draft-display {
  font-family: "Newsreader", Georgia, serif;
}
.interior-page main :is(.hero-sub, .hero-intro > p, .hero-lead) { font-size: 19px; line-height: 1.72; }
.interior-page main :is(.draft-section p, .draft-section li) { font-size: 16px; line-height: 1.7; }

.draft-section { padding: 104px 0; border-top: 1px solid var(--color-hairline, #e5e5e1); }
.draft-section.is-paper { background: var(--color-paper, #efefeb); }
.draft-section.is-night { background: var(--color-night, #112943); color: #fff; }
.draft-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 88px; align-items: start; }
.draft-heading .eyebrow { margin-bottom: 18px; }
.draft-heading h2 { max-width: 14ch; margin: 0; font-size: clamp(42px, 5vw, 66px); font-weight: 600; letter-spacing: -.045em; line-height: 1; }
.draft-copy > p:first-child { margin-top: 0; }
.draft-copy p { max-width: 64ch; color: var(--color-body, #565f6b); }
.is-night .draft-copy p { color: rgba(255,255,255,.72); }
.draft-copy .draft-emphasis { color: var(--color-ink, #14181d); font-size: 20px; font-weight: 600; }
.is-night .draft-copy .draft-emphasis { color: #fff; }

.technical-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 42px; border-top: 1px solid var(--color-hairline, #e5e5e1); }
.technical-grid article { min-height: 160px; padding: 28px 28px 30px 0; border-bottom: 1px solid var(--color-hairline, #e5e5e1); }
.technical-grid article:nth-child(even) { padding-left: 28px; border-left: 1px solid var(--color-hairline, #e5e5e1); }
.technical-grid span { color: var(--color-blue, #1b63b6); font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.technical-grid h3 { margin: 14px 0 0; font-size: 21px; line-height: 1.32; }
.technical-grid p { margin: 12px 0 0; color: var(--color-body, #565f6b); font-size: 14px !important; }

.system-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 34px; padding: 0; list-style: none; }
.system-tags li { padding: 11px 15px; border: 1px solid var(--color-hairline, #e5e5e1); background: #fff; color: var(--color-ink, #14181d); font-size: 14px !important; font-weight: 600; }

.project-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; min-height: 650px; background: transparent !important; }
.project-pair img { position: static !important; width: 100%; height: 100%; min-height: 650px; object-fit: cover; }
.project-pair figcaption { grid-column: 1 / -1; }

.hero-photo-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px; }
.hero-photo-pair img { position: static !important; min-height: 650px; object-fit: cover; }

.credential-band { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 42px; border: 1px solid rgba(255,255,255,.18); }
.credential-band div { padding: 26px; }
.credential-band div + div { border-left: 1px solid rgba(255,255,255,.18); }
.credential-band span { display: block; color: #75b8f4; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.credential-band strong { display: block; margin-top: 12px; font-family: "Newsreader", Georgia, serif; font-size: 24px; line-height: 1.2; }

@media (max-width: 900px) {
  .draft-grid { grid-template-columns: 1fr; gap: 42px; }
  .credential-band { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .credential-band div:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .credential-band div:nth-child(4) { border-top: 1px solid rgba(255,255,255,.18); }
}

@media (max-width: 700px) {
  .draft-section { padding: 76px 0; }
  .draft-heading h2 { font-size: 42px; }
  .technical-grid { grid-template-columns: 1fr; }
  .technical-grid article,
  .technical-grid article:nth-child(even) { min-height: 0; padding: 25px 0; border-left: 0; }
  .project-pair,
  .hero-photo-pair { grid-template-columns: 1fr; min-height: 0; }
  .project-pair img,
  .hero-photo-pair img { min-height: 360px; }
  .credential-band { grid-template-columns: 1fr; }
  .credential-band div + div { border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }
}
