/* responsive.css — tablet and phone adjustments */
@media (max-width: 62rem) {
  .nav-toggle { display: block; }
  .site-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch;
    gap: var(--space-2); padding: var(--space-3) 1rem var(--space-4); background: var(--color-forest-deep); border-bottom: var(--border-line); }
  .site-nav.is-open { display: flex; }
  .site-nav ul { flex-direction: column; gap: 0; }
  .site-nav li a { display: block; padding: .8rem 0; border-bottom: 1px solid rgba(247,242,230,.12); }
  .nav-actions { flex-direction: column; align-items: stretch; }
  .lang-switch { align-self: flex-start; }
  .nav-actions .btn { text-align: center; }
  .hero-inner { grid-template-columns: 1fr; padding-block: var(--space-5); }
  .hero-art { order: -1; }
  .hero-art img { width: min(70%, 18rem); }
  .split, .contact-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 42rem) {
  .section { padding-block: var(--space-5); }
  .service-list, .area-list, .grid-2, .grid-3 { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .hero-actions .btn { width: 100%; }
}
