
  html { -webkit-text-size-adjust: 100%; }
  body { margin: 0; background: #FFFFFF; }
  * { box-sizing: border-box; }
  a { color: #16150F; text-decoration: none; transition: color .3s ease; }
  a:hover { color: #7B4B2A; }
  ::selection { background: #EFE3CD; }
  input, button { font-family: 'Josefin Sans', system-ui, sans-serif; }
  input::placeholder { color: #818181; }
  input:focus { border-color: #16150F !important; }
  /* nhịp vào trang: từng dòng hiện dần lần lượt (cùng nhịp hero dùng chung) */
  @keyframes tnModeIn { from { opacity: 0; translate: 0 var(--tn-m-rise, 24px); } to { opacity: 1; translate: 0 0; } }
  @keyframes tnModeSpin { to { rotate: 360deg; } }
  [data-mode-in] > * { animation: tnModeIn var(--tn-m-slow, 1.1s) var(--tn-m-ease, cubic-bezier(.22, 1, .36, 1)) both; }
  [data-mode-in] > :nth-child(1) { animation-delay: 90ms; } [data-mode-in] > :nth-child(2) { animation-delay: 180ms; } [data-mode-in] > :nth-child(3) { animation-delay: 300ms; }
  [data-mode-in] > :nth-child(4) { animation-delay: 390ms; } [data-mode-in] > :nth-child(5) { animation-delay: 480ms; } [data-mode-in] > :nth-child(n+6) { animation-delay: 570ms; }
  [data-mode-ring] { animation: tnModeSpin var(--tn-m-ring, 120s) linear infinite; }
  @media (max-width: 760px) {
    [data-mode-form] { flex-direction: column; }
    [data-mode-form] button { width: 100%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-mode-in] > *, [data-mode-ring] { animation: none; } }
