:root { color-scheme: light dark; font-family: system-ui, -apple-system, 'Segoe UI', Arial, sans-serif; color: #243746; background: #edf3f7; }
* { box-sizing: border-box; }
body { margin: 0; }
main { max-width: 1040px; margin: auto; padding: 36px 20px; }
header { margin-bottom: 24px; }
.brand { color: #176f94; font-size: 18px; font-weight: 750; }
h1 { margin: 14px 0; font-size: clamp(28px, 5vw, 44px); }
h2 { font-size: 22px; margin: 0 0 12px; }
h3 { font-size: 18px; margin: 22px 0 8px; }
p, li { line-height: 1.9; }
li + li { margin-top: 8px; }
ul, ol { padding-inline-start: 26px; }
a { color: #096891; overflow-wrap: anywhere; text-underline-offset: 3px; }
a:focus-visible { outline: 3px solid #176f94; outline-offset: 4px; }
.card { border: 1px solid #cbd9e2; background: #fff; border-radius: 18px; padding: clamp(20px, 4vw, 36px); margin-bottom: 20px; }
.summary { display: flex; flex-wrap: wrap; gap: 12px 30px; color: #526b7d; margin-bottom: 24px; }
.summary p { margin: 0; }
.grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 20px; }
.grid .card { min-width: 0; }
.contact { display: inline-block; padding: 12px 22px; border-radius: 10px; background: #e0f2fa; font-weight: 700; }
footer { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-top: 16px; color: #526b7d; }
nav { display: flex; flex-wrap: wrap; gap: 20px; }
@media (max-width: 650px) { main { padding: 24px 14px; } .grid { grid-template-columns: 1fr; gap: 0; } }
@media (prefers-color-scheme: dark) {
  :root { color: #e6eef3; background: #17232d; }
  .brand, a { color: #8cd4f0; }
  .card { background: #21323f; border-color: #405a6b; }
  .summary, footer { color: #bacbd7; }
  .contact { background: #2c4d60; }
}
@media print { :root { color: #000; background: #fff; } .card { background: #fff; border-color: #aaa; } a { color: #000; } nav { display: none; } }
