:root{
  --navy:#0b0d5c;
  --navy-deep:#070846;
  --royal:#1b22b4;
  --royal-hi:#2f37d6;
  --lav:#f3f3fc;
  --lav-2:#e6e7f8;
  --line:#d4d6f0;
  --gold:#f5c518;
  --gold-hi:#ffdd55;
  --gold-deep:#b98a06;
  --ink:#161838;
  --body:#2c2f55;
  --muted:#5d608c;
  --paper:#ffffff;
  --ok:#11845b;
  --warn:#b4471f;
  --radius:10px;
  --shadow:0 10px 30px rgba(11,13,92,.10);
  --head:'Barlow Condensed',Arial Narrow,sans-serif;
  --text:'Source Sans 3',Segoe UI,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
section[id],h2[id]{scroll-margin-top:84px}
body{margin:0;background:var(--lav);color:var(--body);font:400 18px/1.68 var(--text)}
img{display:block;max-width:100%;height:auto}
a{color:var(--royal);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--navy)}
p{margin:0 0 1em}
h1,h2,h3{font-family:var(--head);color:var(--ink);line-height:1.08;margin:0}
h1{font-size:clamp(2.1rem,5.2vw,3.35rem);font-weight:800;letter-spacing:.005em}
h2{font-size:clamp(1.65rem,3.4vw,2.15rem);font-weight:700;margin:0 0 .7em;padding-left:16px;border-left:5px solid var(--gold)}
h3{font-size:1.38rem;font-weight:700;margin:1.6em 0 .5em;color:var(--royal)}
.shell{width:min(1120px,100% - 32px);margin-inline:auto}

/* header */
.site-head{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:3px solid var(--royal);box-shadow:0 2px 14px rgba(11,13,92,.08)}
.site-head__in{display:flex;align-items:center;gap:22px;min-height:66px}
.mark{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}
.mark img{width:200px;height:auto}
.site-nav{display:flex;gap:20px;margin-left:auto}
.site-nav a{font:600 1.05rem/1 var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--navy);text-decoration:none}
.site-nav a:hover{color:var(--royal-hi)}
.head-actions{display:flex;gap:8px;flex:0 0 auto}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:6px;font:700 1.08rem/1 var(--head);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;border:2px solid transparent;transition:transform .12s ease,box-shadow .12s ease}
.btn:hover{transform:translateY(-1px)}
.btn--gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--navy-deep);border-color:var(--gold-deep);box-shadow:0 4px 0 var(--gold-deep)}
.btn--gold:hover{color:var(--navy-deep);box-shadow:0 5px 0 var(--gold-deep)}
.btn--line{background:transparent;color:var(--royal);border-color:var(--royal)}
.btn--line:hover{background:var(--royal);color:#fff}
.btn--onblue{background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
.btn--onblue:hover{background:#fff;color:var(--navy)}
.btn--sm{padding:9px 14px;font-size:.95rem}

/* lead / hero */
.lead{background:radial-gradient(120% 140% at 85% 0%,var(--royal-hi) 0%,var(--royal) 38%,var(--navy) 100%);color:#e9eaff;border-bottom:4px solid var(--gold)}
.lead__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:52px 0 56px}
.lead h1{color:#fff}
.lead a{color:#fff;text-decoration-color:rgba(245,197,24,.8)}
.lead a:hover{color:var(--gold-hi)}
.lead .btn{text-decoration:none}
.lead .btn--gold,.lead .btn--gold:hover{color:var(--navy-deep)}
.lead .btn--onblue{color:#fff}
.lead .btn--onblue:hover{color:var(--navy)}
.lead__text p{font-size:1.1rem;color:#dfe1ff}
.lead__text h1{margin-bottom:.45em}
.lead__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.lead__art img{border-radius:16px;border:3px solid rgba(245,197,24,.85);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.lead--page .lead__grid{grid-template-columns:1fr;padding:40px 0 44px;max-width:860px}

/* crumbs */
.crumbs{font-size:.92rem;color:#c7caff;margin:0 0 12px}
.crumbs a{color:#fff}


/* author card */
.author-card{display:grid;grid-template-columns:120px 1fr;gap:22px;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);padding:22px 24px;margin:-28px 0 26px;position:relative;box-shadow:var(--shadow)}
.author-card__photo{width:120px;height:120px;border-radius:50%;border:3px solid var(--gold);object-fit:cover}
.author-card__label{margin:0;font:700 .85rem/1 var(--head);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.author-card__name{margin:6px 0 2px;font:800 1.6rem/1.05 var(--head);color:var(--ink)}
.author-card__name a{color:inherit;text-decoration:none}
.author-card__role{margin:0 0 10px;color:var(--royal);font-weight:600}
.author-card__facts{margin:0 0 10px;padding-left:1.1em;font-size:.97rem}
.author-card__facts li{margin:0 0 4px}
.author-card__check{margin:0 0 10px;font-size:.95rem;color:var(--body)}
.page-dates{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;font-size:.92rem;color:var(--muted)}
.page-dates span{white-space:nowrap}
.page-dates--lead{margin-top:6px;color:#d6d8ff}
.page-dates--lead a{color:#fff}
.page-byline{margin:18px 0 16px}
.author-card__more{margin:0 0 10px;font-weight:600}

/* related */
.related{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px;margin:0 0 34px}
.related__title{margin:0 0 10px;font:700 1rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.97rem}

/* toc */
.toc{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px;margin:0 0 26px}
.toc__title{font:700 1rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.toc__title::-webkit-details-marker{display:none}
.toc__title::after{content:"";width:9px;height:9px;border-right:2px solid var(--royal);border-bottom:2px solid var(--royal);transform:rotate(45deg) translateY(-3px);transition:transform .15s ease}
.toc details[open] .toc__title{margin-bottom:12px}
.toc details[open] .toc__title::after{transform:rotate(-135deg) translateY(-3px)}
.toc ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.toc a{display:inline-block;padding:7px 12px;border-radius:999px;background:var(--lav-2);color:var(--navy);font-size:.95rem;text-decoration:none}
.toc a:hover{background:var(--royal);color:#fff}

/* article */
.doc{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:10px clamp(18px,4vw,46px) 26px;margin:0 0 34px}
.blk{padding:30px 0 10px;border-bottom:1px dashed var(--line)}
.blk:last-child{border-bottom:0}
.blk ul,.blk ol{padding-left:1.2em;margin:0 0 1em}
.blk li{margin:0 0 .4em}
.fig{margin:6px 0 20px}
.fig img{border-radius:var(--radius);border:1px solid var(--line)}
.tbl-wrap{overflow-x:auto;margin:4px 0 22px;border:1px solid var(--line);border-radius:var(--radius)}
table{width:100%;border-collapse:collapse;font-size:.98rem;min-width:520px}
th{background:var(--navy);color:#fff;font:700 1rem/1.2 var(--head);letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:12px 14px}
td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:var(--lav)}
td:first-child{font-weight:600;color:var(--ink);white-space:nowrap}
.note-box{background:var(--lav-2);border-left:5px solid var(--royal);border-radius:8px;padding:14px 18px;margin:0 0 20px}
.note-box p:last-child{margin:0}

/* help band */
.help-band{display:flex;gap:16px;align-items:flex-start;background:var(--navy);color:#e6e8ff;border-radius:var(--radius);padding:18px 22px;margin:0 0 30px}
.help-band__age{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:3px solid var(--gold);font:800 1.15rem/1 var(--head);color:var(--gold-hi)}
.help-band p{margin:0}
.help-band a{color:var(--gold-hi)}

/* related */

/* footer */
.site-foot{background:var(--navy-deep);color:#c9ccf5;font-size:.96rem;border-top:4px solid var(--gold)}
.site-foot a{color:#fff;text-decoration:none}
.site-foot a:hover{color:var(--gold-hi)}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding:44px 0 30px}
.foot-top img{width:176px;margin:0 0 14px}
.foot-h{font:700 1.02rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-hi);margin:0 0 14px}
.foot-top ul{list-style:none;margin:0;padding:0}
.foot-top li{margin:0 0 9px}
.foot-legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 0 26px;border-top:1px solid rgba(255,255,255,.12);font-size:.9rem}
.age-badge{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--gold);font:800 .85rem/1 var(--head);color:var(--gold-hi)}

@media (max-width:980px){
  .site-nav{display:none}
  .head-actions{margin-left:auto}
  .lead__grid{grid-template-columns:1fr;gap:26px;padding:38px 0 44px}
  .lead__art{max-width:420px}
  .foot-top{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  body{font-size:17px}
  .mark img{width:138px}
  .head-actions .btn--gold{display:none}
  .btn{padding:12px 16px}
  .lead__btns .btn{flex:1 1 100%}
  .author-card{grid-template-columns:1fr;margin-top:-20px}
  .author-card__photo{width:96px;height:96px}
  .page-dates span{white-space:normal}
  .foot-top{grid-template-columns:1fr}
  td:first-child{white-space:normal}
}
