/* ============================================================
   Generic document pages — page.php and 404.php.
   Deliberately small: brand type and colour, comfortable measure,
   and sane defaults for whatever blocks WordPress renders.
   ============================================================ */
:root{
  --logo:url("../img/logo.png");
  --royal:#1B4596; --navy:#0B2A5E; --midnight:#071C40; --gold:#F8CE17; --deepgold:#E3A50A;
  --steel:#6E747B; --ink:#14213A; --paper:#FAFAFA;
  --n100:#ECEEF1; --n200:#DCDFE4; --n600:#545A61; --n700:#3C424A;
  --f-display:"Anton",system-ui,sans-serif; --f-head:"Oswald",system-ui,sans-serif; --f-body:"Barlow",system-ui,sans-serif;
  --r-sm:6px; --r-md:12px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--royal)}
a:hover{color:var(--navy)}

.doc{max-width:820px;margin:0 auto;padding:0 22px 64px}

/* masthead */
.doc-mast{padding:26px 0 22px;border-bottom:1px solid var(--n200);margin-bottom:38px}
.doc-mast .logo{display:block;height:44px;width:106px;background:var(--logo) left center/contain no-repeat}

/* body copy */
.doc-body h1{font-family:var(--f-display);text-transform:uppercase;font-size:clamp(1.9rem,5.6vw,2.9rem);line-height:1.05;color:var(--midnight);margin:0 0 10px}
.doc-updated{margin:0 0 34px;font-family:var(--f-head);font-weight:500;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:var(--steel)}
.doc-body h2{font-family:var(--f-head);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:1.2rem;color:var(--midnight);margin:40px 0 12px;padding-top:8px;border-top:2px solid var(--gold);display:inline-block}
.doc-body h3{font-family:var(--f-head);font-weight:600;font-size:1.02rem;color:var(--navy);margin:26px 0 8px}
.doc-body p{margin:0 0 16px;color:var(--n700)}
.doc-body ul,.doc-body ol{margin:0 0 18px;padding-left:22px;color:var(--n700)}
.doc-body li{margin-bottom:7px}
.doc-body strong{color:var(--midnight)}
.doc-body a{text-decoration:underline;text-underline-offset:2px}
.doc-body table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:.95rem}
.doc-body th,.doc-body td{text-align:left;padding:10px 12px;border:1px solid var(--n200);vertical-align:top}
.doc-body th{background:var(--n100);font-family:var(--f-head);font-weight:600;color:var(--midnight)}
.doc-body blockquote{margin:0 0 18px;padding:2px 0 2px 18px;border-left:3px solid var(--gold);color:var(--n600)}
.doc-body img{max-width:100%;height:auto;border-radius:var(--r-md)}
.doc-body code{background:var(--n100);padding:2px 6px;border-radius:4px;font-size:.92em}
.doc-body hr{border:0;border-top:1px solid var(--n200);margin:34px 0}

/* 404 extras */
.doc-eyebrow{margin:0 0 8px;font-family:var(--f-head);font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;color:var(--deepgold)}
.doc-lede{font-size:1.08rem;color:var(--n600);margin-bottom:26px}
.doc-links{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 34px}
.doc-btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-head);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.86rem;padding:14px 24px;border-radius:var(--r-sm);background:linear-gradient(180deg,#FFE21A 0%,#F8CE17 48%,#E3A50A 100%);color:var(--navy);text-decoration:none;box-shadow:0 8px 22px -8px rgba(227,165,10,.55)}
.doc-btn:hover{transform:translateY(-2px);color:var(--navy)}
.doc-btn-alt{background:var(--midnight);color:#fff;box-shadow:0 6px 18px -8px rgba(7,28,64,.35)}
.doc-btn-alt:hover{background:var(--royal);color:#fff}
.doc-list{list-style:none;padding:0;margin:0}
.doc-list li{border-bottom:1px solid var(--n200);padding:11px 0}
.doc-list a{font-family:var(--f-head);font-weight:500;text-decoration:none}

/* footer */
.doc-foot{margin-top:52px;padding-top:22px;border-top:1px solid var(--n200);font-family:var(--f-head);font-size:.86rem;color:var(--steel)}
.doc-back{display:inline-block;margin-bottom:8px;font-weight:600;text-decoration:none}
.doc-foot p{margin:0}

@media(max-width:560px){
  .doc{padding:0 18px 48px}
  .doc-links .doc-btn{width:100%;justify-content:center}
}
