/* Shared polish: preserves the approved artwork, content and interaction code. */
html.polished-document { scroll-padding-top:104px; }
html.updated-document { scroll-padding-top:112px; }
.polished-revision .header-inner { min-height:88px; }
.polished-revision .brand { padding-block:6px; }
.original-polished .brand .brand-pin { width:37.493px; height:48px; }
.polished-revision .site-navigation a { min-height:44px; }
.updated-polished .header-inner { min-height:96px; }
.updated-polished .brand .company-logo { width:168px; height:auto; aspect-ratio:840 / 410; }
.updated-polished .footer-name .company-logo { width:192px; height:auto; }

.polished-revision .hero-copy .eyebrow { margin-bottom:16px; }
.polished-revision .hero-service { margin-bottom:12px; }
.polished-revision .hero-actions { margin-top:26px; }
.polished-revision .micro-copy { margin-top:18px; }
.polished-revision .service-kicker { font-size:.8125rem; letter-spacing:.06em; }
.polished-revision .service-feature figcaption { font-size:.8125rem; gap:4px 16px; }
.polished-revision .footer-main { align-items:flex-start; }
.polished-revision .footer-links { padding-top:8px; }
.polished-revision .footer-main > div:first-child { min-width:0; }
.polished-revision .footer-main p { max-width:32ch; line-height:1.65; }

@media (min-width:961px) {
  .polished-revision .hero-grid { gap:clamp(40px,4.5vw,64px); padding-top:44px; padding-bottom:70px; }
  .polished-revision .hero-copy { padding-block:8px; }
  .polished-revision .service-intro { gap:24px; padding-bottom:16px; }
}
@media (min-width:721px) and (max-width:960px) {
  .polished-revision .header-inner { gap:20px; }
  .polished-revision .site-navigation { gap:16px; }
}
@media (max-width:720px) {
  html.polished-document { scroll-padding-top:96px; }
  html.updated-document { scroll-padding-top:104px; }
  .polished-revision .header-inner { min-height:80px; }
  .updated-polished .header-inner { min-height:88px; }
  .original-polished .brand .brand-pin { width:34.368px; height:44px; }
  .updated-polished .brand .company-logo { width:148px; }
  .updated-polished .footer-name .company-logo { width:176px; }
  .polished-revision .hero-grid { padding-top:32px; gap:28px; }
  .polished-revision .micro-copy { font-size:.875rem; }
  .polished-revision .service-kicker { font-size:.75rem; }
  .polished-revision .site-navigation {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px 12px; padding-block:12px 16px;
  }
  .js .polished-revision .site-navigation { display:none; }
  .js .polished-revision .site-navigation.is-open { display:grid; padding-top:12px; }
  .polished-revision .site-navigation a {
    display:flex; align-items:center; gap:10px; min-height:48px;
    padding:12px 10px; white-space:normal; line-height:1.5;
    border-bottom:1px solid var(--line);
  }
  .polished-revision .site-navigation a::after { display:none; }
  .polished-revision .site-navigation a:hover { background:#f0f5e9; }
  .polished-revision .site-navigation .nav-contact {
    grid-column:1 / -1; justify-content:space-between; border:0; border-radius:10px;
    background:var(--navy); color:#fff; padding-inline:16px; margin-top:4px;
  }
  .polished-revision .site-navigation .nav-contact:hover { background:var(--navy-soft); }
  .polished-revision .site-navigation .nav-contact:focus-visible { outline-color:#a56e00; }
  html:not(.js) .polished-revision .site-header { position:static; }
  .polished-revision .footer-links { padding-top:0; }
}
@media (max-width:360px) {
  .polished-revision .site-navigation { grid-template-columns:minmax(0,1fr); }
}
@media print {
  .polished-revision .hero-grid { padding-block:30px; }
}
