  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; }
  body { font-family: system-ui, sans-serif; background: #F7FAF8; overflow-x: hidden; }
  input, textarea, select { font-family: system-ui, sans-serif; font-size: 14px; }
  img { max-width: 100%; }
  @keyframes float { 0%,100%{transform:translateY(0px)} 50%{transform:translateY(-10px)} }
  @keyframes wiggle { 0%,100%{transform:rotate(-3deg)} 50%{transform:rotate(3deg)} }
  @keyframes pulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.05)} }
  .float { animation: float 3s ease-in-out infinite; }
  .wiggle { animation: wiggle 2s ease-in-out infinite; }
  .pulse { animation: pulse 2s ease-in-out infinite; }
  @media (max-width: 768px) {
    .responsive-flex { flex-direction: column !important; }
    .responsive-grid-2 { grid-template-columns: 1fr !important; }
    .responsive-grid-3 { grid-template-columns: 1fr !important; }
    .responsive-grid-4 { grid-template-columns: 1fr 1fr !important; }
    .hide-mobile { display: none !important; }
    .show-mobile { display: flex !important; }
  }
  @media (max-width: 480px) {
    .responsive-grid-4 { grid-template-columns: 1fr !important; }
  }
