/* ========== RESPONSIVE ========== */
@media (min-width: 768px) {
  .features-grid { grid-template-columns: repeat(3, 1fr); }
  .section { padding: 120px 0; }
  .angle-top { padding-top: 160px; }
}

@media (min-width: 1024px) {
  .section { padding: 140px 0; }
  .angle-top { padding-top: 180px; clip-path: polygon(0 60px, 100% 0, 100% 100%, 0 100%); }
}

@media (max-width: 768px) {
  .hero-ring { border: none; box-shadow: none; }
  .legal-page { padding: 60px 0 80px; }
  .legal-page h1 { font-size: 2rem; }
  .legal-updated { margin-bottom: 36px; }
  .legal-content section { margin-bottom: 32px; }
}

@media (max-width: 480px) {
  .floating-nav { padding: 0 18px; }
  .floating-nav nav { gap: 16px; }
  .floating-nav nav a { font-size: 0.78rem; }
  .logo { font-size: 1.35rem; }
  .hero { padding: 100px 20px 60px; min-height: auto; }
  .hero-ring { width: min(300px, 85vw); }
  .hero-content { padding: 12%; }
  .hero h1 { font-size: clamp(1.6rem, 8vw, 2.4rem); }
  .blog-featured { padding: 28px 20px; }
  .blog-featured-header { margin-bottom: 20px; padding-bottom: 16px; }
  .section { padding: 72px 0; }
  .angle-top { clip-path: polygon(0 20px, 100% 0, 100% 100%, 0 100%); padding-top: 100px; }
}
