:root { color: #15283b; background: #f4f7fa; font: 100%/1.6 system-ui, sans-serif; }
body { margin: 0; }
[hidden] { display: none !important; }
.wrap { max-width: 72rem; margin: auto; padding: 1rem 1.25rem; }
header { background: #fff; border-bottom: 1px solid #bdc9d3; }
header .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; }
nav { display: flex; gap: .5rem; }
nav a { display: inline-block; padding: .25rem .5rem; }
nav [aria-current] { font-weight: 700; }
a { color: #07518a; text-underline-offset: .15em; }
:focus-visible { outline: 3px solid #07518a; outline-offset: 3px; }
h1 { line-height: 1.15; }
label { display: block; font-weight: 700; }
input { box-sizing: border-box; width: min(100%, 36rem); padding: .6rem .75rem; border: 1px solid #52697d; border-radius: .35rem; font: inherit; }
#terms { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 1rem; }
article { padding: 1rem; background: #fff; border: 1px solid #bdc9d3; border-radius: .5rem; overflow-wrap: anywhere; }
article:target { border: 2px solid #07518a; }
h2 { font-size: 1.18rem; line-height: 1.3; margin: 0 0 .5rem; }
p { margin: 0 0 .8rem; }
.references { font-size: .94rem; }
