/* Shared logo sizing (applied to all pages via MainLayout) */
.brand-logo { height: 36px; width: auto; display: block; }
.brand-icon-foot { height: 34px; width: auto; flex-shrink: 0; display: block; }

/* Home page — hero / serve spacing + card edge tweaks */
.hero { padding-top: 76px; }
.serve-panel { border-radius: 16px; }

/* Home page — mobile overrides */
@media (max-width: 768px) {
  .svc-grid { grid-template-columns: 1fr !important; }
  .serve-item { grid-column: auto !important; width: 100% !important; margin: 0 !important; }
}
@media (max-width: 480px) {
  .brand-logo { height: 28px; }
  .hero-cta .btn { display: block; text-align: center; }
}

/* About page — mobile overrides */
@media (max-width: 768px) {
  .values-grid { grid-template-columns: 1fr !important; }
  .about-grid { grid-template-columns: 1fr !important; }
  .about-grid .ph { width: 100% !important; max-width: 360px; margin: 0 auto 24px; }
}
@media (max-width: 480px) {
  .promise-cta .btn { display: block; text-align: center; }
}

/* Services page — mobile overrides */
@media (max-width: 768px) {
  .svc-block.feature { flex-direction: column !important; }
  .svc-block.feature .ph { width: 100% !important; max-width: 100% !important; margin-top: 24px; }
  .svc-block { grid-column: auto !important; }
  .svc-block ul { display: block !important; columns: 1 !important; }
}

/* Contact page — mobile overrides */
@media (max-width: 768px) {
  .contact-grid { grid-template-columns: 1fr !important; }
  .intent { flex-direction: column !important; }
  .field.row { flex-direction: column !important; gap: 16px !important; }
  .field.row > div { width: 100% !important; }
}
@media (max-width: 480px) {
  .btn { width: 100%; text-align: center; }
}
