/**
 * responsive.css - Mobile-first media queries
 */
@media (max-width: 767px) {
  .hero h1 { font-size: 2rem; }
  .hero .lead { font-size: 1rem; }
  section h2 { font-size: 1.625rem; }
  .primary-nav { position: fixed; top: var(--header-height); left: 0; right: 0; background: #fff; border-bottom: 1px solid var(--border-color); padding: var(--spacing-md); transform: translateY(-120%); transition: transform var(--transition-medium); box-shadow: var(--shadow-lg); }
  .primary-nav.is-open { transform: translateY(0); }
  .primary-nav ul { flex-direction: column; gap: var(--spacing-md); }
  .menu-toggle { display: inline-flex; }
  .tool-container { padding: var(--spacing-md); border-radius: var(--radius-lg); }
  .converter-grid { grid-template-columns: 1fr; }
  .converter-grid .swap-btn { transform: rotate(90deg); justify-self: center; }
  .footer-grid { grid-template-columns: 1fr; gap: var(--spacing-lg); }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
  .cta-banner .btn { width: 100%; font-size: var(--fs-md); padding: 0.875rem 1rem; white-space: normal; line-height: 1.4; }
}
@media (min-width: 768px) {
  .tool-inputs { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
  .grid-2 { grid-template-columns: repeat(2, 1fr); }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  :root { --font-size-base: 17px; }
  .hero { padding: 4rem 0 3rem; }
  .hero h1 { font-size: 3rem; }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr 1fr; }
  .grid-3 { grid-template-columns: repeat(3, 1fr); }
  .grid-4 { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 1280px) {
  .container { padding: 0 var(--spacing-lg); }
}
@media (pointer: coarse) {
  .font-card .font-actions button { min-height: 40px; }
  .btn { min-height: 48px; }
}
