/*
 * base.css · HANYA reset, warna link, dan media query responsif.
 * Semua styling visual lain ditulis inline di section .njk
 * (lihat SYSTEM-DESIGN.md). Jangan menaruh gaya komponen di sini.
 */

body { margin: 0; background: #F7F6F2; -webkit-font-smoothing: antialiased; }
a { color: #2A22B8; text-decoration: none; }
a:hover { color: #17148C; }
::selection { background: #DCD7FA; }
img { max-width: 100%; }

/* Desktop-first: layout inline dirancang di lebar 1080px, di bawah ini
   kolom-kolomnya diruntuhkan supaya tidak meluber di layar kecil. */
@media (max-width: 820px) {
  .sec-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .case-grid,
  .skills-grid,
  .contact-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .gallery-columns { columns: 2 !important; }
  .nav-inner { flex-wrap: wrap; justify-content: center; }
  h1 { font-size: 40px !important; }
}
@media (max-width: 520px) {
  .gallery-grid { grid-template-columns: 1fr !important; }
  .gallery-columns { columns: 1 !important; }
}
