/* PAD Database: shared styles. Palette A: navy and gold. */
:root{
  --navy:#17324d;
  --gold:#e0a526; --gold-hover:#c9921a; --on-gold:#1a1a1a;
  --deep:#17324d;            /* text/links on white */
  --tint:#eef2f7;            /* soft panel background */
  --ink:#2b2f3a;             /* body text */
  --muted:#4b5060;           /* secondary text */
  --line:#8a90a0;            /* card borders */
  --rule:#d5d9e1;            /* hairlines */
  --bad-bg:#fbeceb; --bad-ink:#8a2a1f;
  --ok-bg:#ecf3d5;  --ok-ink:#3f5210;
  --warn-bg:#fdf1dc; --warn-ink:#7a4d00;
  --soon-bg:#e9ebef; --soon-ink:#4a4f5e;
  --serif:'Merriweather',Georgia,'Times New Roman',serif;
  --sans:'Open Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:1rem;line-height:1.65;color:var(--ink);background:#fff;min-height:100vh;display:flex;flex-direction:column}
a{color:var(--deep);font-weight:700;text-decoration:underline;text-underline-offset:2px}
a:hover{color:#000;text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:3px}
.site-head :focus-visible,footer :focus-visible{outline-color:var(--gold)}
.wrap{width:100%;max-width:1140px;margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:.75rem 1rem;z-index:100}
.skip:focus{left:0}

/* header */
.site-head{background:var(--navy);color:#fff}
.bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px}
.brand{font-family:var(--serif);font-weight:700;font-size:1.2rem;color:#fff;text-decoration:none;display:flex;align-items:center;gap:.6rem}
.brand svg{width:26px;height:26px;color:var(--gold)}
.brand:hover{color:#fff}
.menu-btn{display:none;background:transparent;border:2px solid #fff;color:#fff;border-radius:6px;font:700 .95rem var(--sans);padding:.45rem .8rem;cursor:pointer}
.nav-menu{list-style:none;margin:0;padding:0;display:flex;gap:.25rem 1.4rem;flex-wrap:wrap;justify-content:flex-end}
.nav-menu a{color:#fff;text-decoration:none;font-weight:600;font-size:.98rem;padding:.35rem 0;border-bottom:3px solid transparent;display:inline-block}
.nav-menu a:hover,.nav-menu a[aria-current]{border-bottom-color:var(--gold);color:#fff}
@media (max-width:860px){
  .js .menu-btn{display:inline-block}
  .js .nav-menu{display:none;flex-direction:column;width:100%;padding:0 0 1rem}
  .js .nav-menu.open{display:flex}
  .js .bar{flex-wrap:wrap;padding-top:.6rem}
  .nav-menu a{padding:.55rem 0;font-size:1.05rem}
}

/* sub-navigation inside a domain */
.subnav{background:var(--tint);border-bottom:1px solid var(--rule)}
.subnav ul{list-style:none;margin:0 auto;padding:0 16px;max-width:1140px;display:flex;gap:.2rem 1.4rem;flex-wrap:wrap;align-items:center}
.subnav .dom{font-family:var(--serif);font-weight:700;font-size:.9rem;color:var(--muted);padding:.55rem 0}
.subnav a{display:inline-block;padding:.55rem 0;text-decoration:none;font-weight:700;font-size:.95rem;color:var(--deep);border-bottom:3px solid transparent}
.subnav a:hover{border-bottom-color:var(--gold)}
.subnav a[aria-current]{border-bottom-color:var(--navy)}

/* buttons */
.btn{display:inline-block;background:var(--gold);color:var(--on-gold);border:1px solid var(--gold);border-radius:6px;padding:.6rem 1rem;text-decoration:none;font-weight:700;font-size:.95rem}
.btn:hover{background:var(--gold-hover);border-color:var(--gold-hover);color:#000;text-decoration:none}
.btn.alt{background:#fff;color:var(--deep);border-color:var(--navy)}
.btn.alt:hover{background:var(--tint);color:#000;border-color:var(--navy)}

/* footer */
footer{background:var(--navy);color:#fff;margin-top:auto}
footer a{color:#fff}
.foot{padding-top:1.4rem;padding-bottom:1.4rem;font-size:.93rem}
.foot p{margin:0}

/* back to top */
#top{position:fixed;right:.8rem;bottom:.8rem;width:38px;height:38px;border-radius:4px;background:var(--navy);color:#fff;border:2px solid #fff;text-decoration:none;display:grid;place-items:center;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s}
#top.show{opacity:.92;pointer-events:auto}
@media (prefers-reduced-motion:reduce){#top{transition:none}}
