:root { font-family: Arial, sans-serif; color: #243445; background: #fff; line-height: 1.65; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: #00458f; text-underline-offset: 4px; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 2px solid #00458f; outline-offset: 5px; }
.terms-header { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px max(20px, calc((100% - 1000px) / 2)); border-bottom: 1px solid #dce5ee; }
.terms-brand { display: flex; align-items: center; gap: 10px; font-size: 22px; font-weight: 700; text-decoration: none; }
.terms-brand img { border-radius: 50%; }
nav { display: flex; gap: 12px; font-size: 14px; }
nav a[aria-current] { font-weight: 700; text-decoration-thickness: 2px; }
main { max-width: 800px; margin: 0 auto; padding: 36px 24px 56px; overflow-wrap: anywhere; }
.terms-back { font-size: 14px; }
h1 { font-size: 36px; line-height: 1.2; color: #0b3864; margin: 24px 0 16px; }
.terms-intro { color: #526273; font-size: 17px; }
section { padding-top: 24px; margin-top: 24px; border-top: 1px solid #e3e9ef; }
h2 { font-size: 21px; line-height: 1.4; margin: 0 0 12px; color: #0b3864; }
p { margin: 12px 0; }
address { font-style: normal; }
footer { background: #f5f7fa; text-align: center; padding: 28px 20px; font-size: 13px; color: #526273; }
@media (max-width: 480px) {
  .terms-header { padding: 14px 16px; }
  .terms-brand { font-size: 19px; gap: 7px; }
  .terms-brand img { width: 32px; height: 32px; }
  nav { gap: 10px; }
  main { padding: 24px 20px 40px; }
  h1 { font-size: 28px; }
  h2 { font-size: 19px; }
}
