* { box-sizing: border-box; }
body { margin: 0; background: #fffdf8; color: #213440; font: 15px/1.8 Arial, Helvetica, sans-serif; }
header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 15px max(24px, calc((100vw - 1080px) / 2)); background: #091a27; color: #edcf9d; }
header img { display: block; width: auto; height: 70px; }
a { color: inherit; text-underline-offset: 4px; }
main { max-width: 960px; margin: auto; padding: 70px 24px; }
.eyebrow { font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: #846027; }
h1, h2 { font-family: Georgia, serif; font-weight: 400; line-height: 1.2; color: #102938; }
h1 { margin: 14px 0 24px; font-size: clamp(38px, 6vw, 60px); }
h2 { margin: 45px 0 18px; font-size: 28px; }
.intro { font-size: 18px; max-width: 730px; color: #52636d; }
button { min-height: 46px; padding: 12px 20px; border: 1px solid #163243; background: #163243; color: white; font: inherit; cursor: pointer; border-radius: 3px; }
button:hover { background: #2c4d60; }
a:focus-visible, button:focus-visible { outline: 3px solid #b88e4e; outline-offset: 4px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 1.65; }
caption { text-align: left; margin: 12px 0; font-weight: 700; }
td, th { padding: 18px; border: 1px solid #d6cab6; text-align: left; vertical-align: top; }
th { background: #eee7dc; }
code { overflow-wrap: anywhere; }
.revision { border-top: 1px solid #d6cab6; margin-top: 40px; padding-top: 20px; font-size: 12px; color: #5e6a70; }
footer { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 30px; background: #091a27; color: #f9eddb; padding: 35px 24px 80px; }
@media (max-width: 600px) { main { padding-top: 38px; } header { font-size: 12px; } header img { height: 55px; } td, th { padding: 10px; min-width: 130px; } }
