
:root{--ink:#17222a;--muted:#51616c;--navy:#103b4a;--blue:#176b87;--pale:#eef7f8;--line:#d5e0e4;--danger:#9b1c1c;--danger-bg:#fff1f1;--warn:#7a4b00;--warn-bg:#fff8e6;--info:#174d64;--max:1120px}
*{box-sizing:border-box}
html{font-size:100%;scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font:17px/1.65 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:#075c79;text-underline-offset:3px}
a:hover{color:#00394d}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #f2a900;outline-offset:3px}
.skip{position:absolute;left:-999px}
.skip:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:99}
.site-header{border-bottom:1px solid var(--line);background:#fff}
.header-inner,.footer-inner,main{width:min(calc(100% - 2rem),var(--max));margin:auto}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}
.brand{font-weight:800;text-decoration:none;color:var(--navy);font-size:1.1rem}
.nav{display:flex;flex-wrap:wrap;gap:.75rem 1rem}
.nav a{font-size:.92rem;text-decoration:none}
.breadcrumbs{font-size:.88rem;color:var(--muted);margin:1.25rem 0 0}
main{padding-bottom:3rem}
.article-header{max-width:820px;padding:2.5rem 0 1rem}
.article-header h1,.hero h1,.bwd-page-title{font-size:clamp(2rem,5vw,3.65rem);line-height:1.08;letter-spacing:-.035em;margin:.25rem 0 1rem}
.bwd-article-header{max-width:850px;padding:2.25rem 0 .35rem}
.dek{font-size:1.17rem;color:var(--muted);max-width:760px}
.updated{font-size:.88rem;color:var(--muted)}
article{max-width:850px}
article h2{margin-top:2.5rem;font-size:1.7rem;line-height:1.2}
article h3{line-height:1.25}
.answer{font-size:1.22rem;border-left:5px solid var(--blue);padding:.8rem 1rem;background:var(--pale)}
.hero{padding:4rem 0 2.5rem;max-width:850px}
.hero p{font-size:1.15rem}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem!important;font-weight:800;color:var(--blue)}
.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}
.button{background:var(--navy);color:#fff!important;text-decoration:none;padding:.75rem 1rem;border-radius:.35rem;font-weight:700}
.button.secondary{background:#fff;color:var(--navy)!important;border:2px solid var(--navy)}
.alert{padding:1rem 1.1rem;border-left:5px solid;margin:1.5rem 0}
.alert strong{display:block;font-size:1.08rem}
.alert p{margin:.25rem 0}
.alert.danger{border-color:var(--danger);background:var(--danger-bg)}
.alert.warning{border-color:#d28a00;background:var(--warn-bg)}
.alert.info{border-color:var(--info);background:var(--pale)}

/* Wide, readable tables on desktop; deliberate horizontal scrolling only on small screens. */
.table-wrap{
    overflow-x:auto;
    border:1px solid var(--line);
    border-radius:.4rem;
    width:100%;
    max-width:100%;
    margin:1rem 0;
    transform:none;
    -webkit-overflow-scrolling:touch
}
table{width:100%;min-width:0;border-collapse:collapse;font-size:.94rem}
th,td{text-align:left;vertical-align:top;padding:.8rem;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
th{background:#e7f2f4;color:var(--navy)}
tr:last-child td{border-bottom:0}

.steps{padding-left:2rem}
.steps li{padding:.35rem 0 .55rem .3rem}
.checklist{list-style:'✓  ';padding-left:1.5rem}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.card{border:1px solid var(--line);border-radius:.5rem;padding:1rem}
.card h3{margin:.1rem 0}
.principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.principles p{background:var(--pale);padding:1rem;margin:0}
.related,.sources{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1rem}
.sources{font-size:.92rem;color:var(--muted)}
.site-footer{background:#102a34;color:#e7f2f4;margin-top:2rem}
.footer-inner{padding:2rem 0}
.footer-inner a{color:#fff}
.footer-links{display:flex;gap:1rem;flex-wrap:wrap}
.fine{font-size:.85rem;color:#bdd0d7}
.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.print-note{display:none}

@media(max-width:760px){
    body{font-size:16px}
    .header-inner{align-items:flex-start;flex-direction:column}
    .nav{display:grid;grid-template-columns:1fr 1fr}
    .cards,.principles,.meta-grid{grid-template-columns:1fr}
    .hero{padding-top:2.5rem}
    .article-header,.bwd-article-header{padding-top:1.75rem}
    .table-wrap{width:100%;max-width:100%;margin:1rem 0}
    .table-wrap table{min-width:720px}
}
@media print{
    .site-header,.site-footer,.related,.hero-actions{display:none}
    main{width:100%}
    a{color:inherit;text-decoration:none}
    .table-wrap{overflow:visible;width:100%;margin:1rem 0;transform:none}
    table{min-width:0;font-size:9pt}
    .print-note{display:block}
}
