@media (max-width: 640px) {
  .container { width: min(100% - 30px, 1180px); }
  .topbar, .nav { min-height: 68px; }
  .brand img { width: 96px; }
  .nav-links { position: absolute; left: 15px; right: 15px; top: 68px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--cream); box-shadow: var(--shadow-soft); }
  .nav-links.mobile-visible { display: flex; }.nav-links a { padding: 12px; }.nav-actions .ghost-btn { display: none; }.mobile-menu { display: grid; }
  h1 { font-size: clamp(3.2rem, 16vw, 5rem); }.hero-grid { padding-block: 60px 35px; }.hero-copy { font-size: 15px; }.hero-ctas { flex-wrap: wrap; }.hero-art { min-height: 380px; }.art-ring { width: 290px; height: 290px; }.hero-card { padding: 22px; }.float-tag.one { left: -2px; top: 50px; }.float-tag.two { right: -2px; bottom: 44px; }
  .search-panel { grid-template-columns: 1fr; }.search-panel .primary-btn { min-height: 48px; }.search-summary { align-items: start; flex-direction: column; gap: 6px; }
  .section { padding: 78px 0; }.section-head { display: block; margin-bottom: 28px; }.section-head h2 { font-size: 2.8rem; }.jobs-grid, .category-grid, .team-grid, .article-grid, .value-grid { grid-template-columns: 1fr; }.category-card.large { min-height: 255px; }
  .timeline { grid-template-columns: 1fr 1fr; gap: 14px; border-top: 0; }.step, .step + .step { padding: 18px 10px 0 0; border-top: 1px solid var(--line); border-right: 0; }.step-num { margin-bottom: 18px; }
  .newsletter-box, .footer-bottom { display: block; }.newsletter h2 { font-size: 36px; }.subscribe { margin-top: 20px; border-radius: 16px; }.subscribe input { min-width: 0; }.subscribe .primary-btn { padding-inline: 14px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }.footer-grid > div:first-child { grid-column: 1 / -1; }.footer-bottom > span { display: block; margin-top: 8px; }
  .page-hero { padding: 70px 0 50px; }.page-hero h1 { font-size: 3.5rem; }.form-row, .poster-layout { display: grid; grid-template-columns: 1fr; }.modal { padding: 22px; }.modal h2 { font-size: 32px; }
  .team-card { grid-template-columns: 1fr; }.photo-placeholder img {
    width: 100%;
    height: 100%;
    display: block;
    /* object-fit: cover; */
    object-fit: contain;
}.admin-layout { grid-template-columns: 1fr; }.admin-sidebar { min-height: auto; padding: 18px 15px; }.admin-sidebar nav { grid-template-columns: repeat(3,1fr); margin-top: 22px; }.admin-sidebar nav a { text-align: center; font-size: 10px; }.admin-main { padding: 24px 15px; }.admin-heading { align-items: start; display: block; }.admin-heading h1 { font-size: 42px; }.admin-cards, .chart-row { grid-template-columns: 1fr 1fr; }.admin-panel { overflow-x: auto; }.admin-table { min-width: 620px; }
}