@media (max-width: 900px) {
    .nav { gap:14px; }
    .hero-grid, .split, .contact-grid { grid-template-columns:1fr; gap:38px; }
    .card-grid.three { grid-template-columns:1fr 1fr; }
    .hero { padding-top:55px; }
}
@media (max-width: 680px) {
    .container { width:min(calc(100% - 28px), var(--container)); }
    .nav-toggle { display:block; }
    .nav { display:none; position:absolute; top:76px; left:14px; right:14px; padding:16px; flex-direction:column; align-items:stretch; background:var(--surface); border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); }
    .nav.is-open { display:flex; }
    .nav a { padding:9px 4px; }
    .hero h1, .page-hero h1 { font-size:2.55rem; }
    .section { padding:65px 0; }
    .card-grid.three, .stats, .footer-grid { grid-template-columns:1fr; }
    .cta { padding:28px; align-items:flex-start; flex-direction:column; }
    .portrait-placeholder, .image-placeholder { min-height:300px; }
}
