.responsive-site { display: none; }

@media (max-width: 1280px) {
  body { height: auto !important; }
  body > [data-pencil-name] { display: none !important; }
  .responsive-site { display: block; min-width: 0; }
  .responsive-site .site-header { position: absolute; }
  .responsive-site .mobile-brand { display: block; }
  .responsive-site .mobile-brand img { width: 126px; }
  .responsive-site .inner-hero { min-height: 470px; }
  .responsive-site .hero { min-height: 620px; }
  .responsive-site .hero-copy,
  .responsive-site .inner-hero-copy { padding-top: 74px; }
  .responsive-site .section-head { margin-bottom: 34px; }
  .responsive-site .mobile-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .responsive-site .mobile-card { overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 10px 28px rgba(16,43,78,.08); }
  .responsive-site .mobile-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
  .responsive-site .mobile-card-body { padding: 20px; }
  .responsive-site .mobile-card h3 { margin-bottom: 8px; }
  .responsive-site .mobile-card p { margin-bottom: 0; font-size: 15px; }
  .responsive-site .metric-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 28px; }
  .responsive-site .metric { padding: 20px; background: var(--soft); text-align: center; }
  .responsive-site .metric strong { display: block; color: var(--blue); font-size: 28px; line-height: 1.2; }
  .responsive-site .metric span { color: var(--navy); font-size: 13px; font-weight: 600; }
  .responsive-site .logo-cloud { padding: 24px; border: 1px solid var(--line); background: #fff; }
  .responsive-site .logo-cloud img { width: 100%; }
  .responsive-site .team-feature { position: relative; overflow: hidden; border-radius: 8px; }
  .responsive-site .team-feature img { width: 100%; min-height: 360px; object-fit: cover; }
  .responsive-site .team-feature-copy { position: absolute; inset: auto 0 0; padding: 70px 24px 24px; background: linear-gradient(transparent,rgba(4,26,44,.95)); color: #fff; }
  .responsive-site .team-feature-copy h3 { color: #fff; }
  .responsive-site .contact-layout { grid-template-columns: 1fr; }
  .responsive-site .map-section { min-height: 430px; }
}

@media (max-width: 560px) {
  .responsive-site .mobile-card-grid { grid-template-columns: 1fr; }
  .responsive-site .mobile-card img { aspect-ratio: 16/10; }
  .responsive-site .section { padding: 58px 0; }
  .responsive-site .eyebrow { font-size: 12px; }
  .responsive-site .hero h1 { font-size: 40px; }
  .responsive-site .inner-hero h1 { font-size: 36px; }
}
