/* Acadame policy documents. Sits on top of site.css + course.css + info.css. */
.acadame .pol-hero { padding-bottom:26px; }
.acadame .pol-hero .wrap { max-width:1060px; }
.acadame .pol-hero h1 { max-width:20ch; }
.acadame .pol-hero .lede { max-width:70ch; }
.acadame .pol-doc { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.acadame .pol-doc > div { flex:0 1 auto; padding:9px 14px; background:var(--card-bg,#fff); border:1px solid var(--border); border-radius:10px; }
.acadame .pol-doc em { display:block; font-style:normal; font-size:10.5px; text-transform:uppercase; letter-spacing:.07em; color:var(--red-ink); font-weight:700; }
.acadame .pol-doc strong { display:block; font-size:13.5px; color:var(--primary); margin-top:2px; }
.acadame .pol-hero .acts { margin-top:16px; }

.acadame .pol-body { padding-top:34px; }
.acadame .pol-grid { display:grid; grid-template-columns:232px minmax(0,1fr); gap:38px; align-items:start; }
.acadame .pol-main { max-width:74ch; }

.acadame .pol-nav { position:sticky; top:calc(var(--hdr,56px) + 16px); }
.acadame .pol-nav .eyebrow { margin-bottom:8px; }
.acadame .pol-nav ol { list-style:none; margin:0; padding:0; border-left:2px solid var(--border); }
.acadame .pol-nav li { margin:0; }
.acadame .pol-nav a { display:flex; gap:9px; align-items:baseline; padding:7px 10px 7px 12px; margin-left:-2px; border-left:2px solid transparent; color:var(--primary); font-size:13px; line-height:1.35; text-decoration:none; }
.acadame .pol-nav a b { flex:0 0 auto; font-size:11px; font-weight:800; color:var(--red-ink); font-variant-numeric:tabular-nums; }
.acadame .pol-nav a:hover { border-left-color:var(--red); color:var(--red-ink); background:var(--lb); }

.acadame .pol-statement { padding:18px 20px; background:var(--lb); border:1px solid #D6E3F6; border-radius:12px; margin-bottom:30px; }
.acadame .pol-statement h2 { font-size:15px !important; margin-bottom:8px !important; }
.acadame .pol-statement p { font-size:14.5px !important; margin-bottom:10px; }
.acadame .pol-statement p:last-child { margin-bottom:0; }

.acadame .pol-sec { padding-top:26px; margin-top:26px; border-top:1px solid var(--border); scroll-margin-top:calc(var(--hdr,56px) + 18px); }
.acadame .pol-sec:first-child { padding-top:0; margin-top:0; border-top:0; }
.acadame .pol-sec h2 { display:flex; gap:11px; align-items:baseline; font-size:19px !important; margin-bottom:12px !important; }
.acadame .pol-sec .pol-n { flex:0 0 auto; font-size:12px; font-weight:800; color:var(--red-ink); font-variant-numeric:tabular-nums; }
.acadame .pol-sec p { font-size:14.5px !important; margin-bottom:12px; }
.acadame .pol-ul, .acadame .pol-ol { margin:0 0 14px; padding-left:0; list-style:none; }
.acadame .pol-ol { counter-reset:pol; }
.acadame .pol-ul li, .acadame .pol-ol li { position:relative; padding-left:24px; font-size:14.5px; line-height:1.55; margin-bottom:7px; }
.acadame .pol-ul li::before { content:""; position:absolute; left:6px; top:9px; width:6px; height:6px; border-radius:50%; background:var(--red); }
.acadame .pol-ol li { counter-increment:pol; padding-left:28px; }
.acadame .pol-ol li::before { content:counter(pol) "."; position:absolute; left:0; top:0; font-size:12.5px; font-weight:800; color:var(--red-ink); font-variant-numeric:tabular-nums; }
.acadame .pol-note { padding:11px 14px; background:var(--light); border-left:3px solid var(--red); border-radius:0 8px 8px 0; font-size:13.5px !important; }

.acadame .pol-bodies { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.acadame .pol-bodies a, .acadame .pol-bodies > div { display:flex; flex-direction:column; gap:2px; padding:11px 14px; background:var(--card-bg,#fff); border:1px solid var(--border); border-radius:10px; color:var(--primary); transition:.15s; }
.acadame .pol-bodies strong { font-size:13.5px; line-height:1.3; }
.acadame .pol-bodies span { font-size:12.5px; color:var(--text); }
.acadame .pol-bodies a:hover { border-color:var(--red); transform:translateY(-2px); box-shadow:var(--sh); }

.acadame .pol-control { margin-top:34px; padding:20px; background:var(--light); border:1px solid var(--border); border-radius:12px; }
.acadame .pol-control dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 20px; margin:6px 0 0; }
.acadame .pol-control dt { font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--red-ink); font-weight:700; }
.acadame .pol-control dd { margin:2px 0 0; font-size:13.5px; color:var(--primary); }
.acadame .pol-control a { color:var(--primary); text-decoration:underline; }

@media (max-width:900px) {
  .acadame .pol-grid { grid-template-columns:1fr; gap:22px; }
  .acadame .pol-nav { position:static; }
  .acadame .pol-nav ol { display:flex; flex-wrap:wrap; gap:4px; border-left:0; }
  .acadame .pol-nav a { border:1px solid var(--border); border-radius:999px; padding:6px 12px; margin-left:0; background:var(--card-bg,#fff); }
  .acadame .pol-nav a:hover { border-color:var(--red); }
  .acadame .pol-bodies, .acadame .pol-control dl { grid-template-columns:1fr; }
}
