/* Страницы документов университета. Палитра и шрифты — как у сайтов скиллсетов и гида по кампусу. */
:root{
  --bg:#EDF0E4; --card:#FBFCF7; --ink:#0C1005; --muted:#565E4B;
  --lime:#CFEB9E; --lime-soft:#E2F3C4; --line:rgba(12,16,5,.13); --band:#0C1005; --band-ink:#EDF0E4;
  --serif:"Prata",Georgia,"Times New Roman",serif;
  --sans:"Golos Text",-apple-system,"Segoe UI",Roboto,sans-serif;
  --pad:clamp(18px,5vw,40px);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#050604;--card:#0B0D07;--ink:#EDF0E4;--muted:#8D9680;--lime-soft:#17210A;--line:rgba(207,235,158,.18);--band:#000;--band-ink:#EDF0E4}
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
::selection{background:var(--lime);color:#0C1005}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px}

.band{background:var(--band);color:var(--band-ink)}
.band .in{max-width:860px;margin:0 auto;padding:18px var(--pad);display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.brand{font:400 18px/1.2 var(--serif);letter-spacing:.01em;display:flex;align-items:center;gap:10px}
.brand::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--lime);flex:none;transform:translateY(-1px)}
.band .tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#8D9680}

main{max-width:860px;margin:0 auto;padding:clamp(28px,6vw,64px) var(--pad) 72px}
.eyebrow{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  background:var(--lime);color:#0C1005;padding:5px 12px;border-radius:99px}
h1{font:400 clamp(28px,5.4vw,46px)/1.16 var(--serif);margin:18px 0 10px;letter-spacing:-.005em;text-wrap:balance}
.operator{font-size:clamp(16px,2.2vw,19px);color:var(--muted);margin:0}

.doc{margin-top:clamp(26px,4vw,40px);background:var(--card);border:1px solid var(--line);border-radius:18px;
  padding:clamp(22px,5vw,48px);box-shadow:0 1px 0 var(--line),0 24px 48px -32px rgba(12,16,5,.28)}
.doc p{margin:0 0 1.15em}
.doc > p:last-child{margin-bottom:0}
.lead{font-size:clamp(17px,2.1vw,19px);line-height:1.72}

dl.terms{margin:1.6em 0;display:grid;gap:14px}
.term{border-left:3px solid var(--lime);background:linear-gradient(90deg,var(--lime-soft),transparent 70%);
  padding:14px 20px 15px;border-radius:0 12px 12px 0}
.term dt{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.term dd{margin:0}

.valid{margin:1.6em 0 0;padding:20px 22px;border-radius:14px;background:var(--ink);color:var(--bg)}
.valid p{margin:0}
.valid strong{font-weight:500;color:var(--lime)}
@media (prefers-color-scheme:dark){.valid{background:var(--lime);color:#0C1005}.valid strong{color:#0C1005;font-weight:600}}

.facts{margin:28px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 28px;
  font-size:14.5px;line-height:1.55;color:var(--muted)}
.facts b{display:block;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px}
.facts span{color:var(--ink)}

.policy{margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:15px;line-height:1.5}
.policy span{display:block;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.policy a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:3px;text-underline-offset:3px}
.policy a:hover{background:var(--lime);color:#0C1005;text-decoration-color:transparent}

.back{margin:22px 0 0;font-size:15px}
.back a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.back a:hover{color:var(--ink);border-bottom-color:var(--lime)}
.choose{margin-top:clamp(26px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.pick{display:flex;flex-direction:column;gap:6px;padding:clamp(20px,3vw,30px);background:var(--card);border:1px solid var(--line);border-radius:18px;
  color:inherit;text-decoration:none;box-shadow:0 1px 0 var(--line),0 24px 48px -32px rgba(12,16,5,.28);transition:transform .18s,border-color .18s,box-shadow .18s}
.pick:hover,.pick:focus-visible{transform:translateY(-3px);border-color:var(--lime);box-shadow:0 1px 0 var(--lime),0 28px 52px -30px rgba(12,16,5,.4)}
.pick-k{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pick-n{font:400 clamp(21px,2.6vw,26px)/1.25 var(--serif)}
.pick-m{font-size:14.5px;color:var(--muted)}
.pick-go{margin-top:14px;align-self:flex-start;font-size:14px;font-weight:500;background:var(--lime);color:#0C1005;padding:7px 14px;border-radius:99px}
@media (prefers-reduced-motion:reduce){.pick{transition:none}.pick:hover,.pick:focus-visible{transform:none}}

@media print{
  :root{--bg:#fff;--card:#fff;--ink:#000;--muted:#333;--line:#bbb;color-scheme:light}
  body{font-size:11.5pt;line-height:1.55}
  .band{background:none;color:#000;border-bottom:1px solid #000}.band .tag{display:none}.brand::before{display:none}
  main{padding:18px 0 0}.doc{border:0;box-shadow:none;padding:0;background:none}
  .eyebrow{background:none;border:1px solid #000;color:#000}
  .term{background:none;border-left:2px solid #000}.policy{border-top:1px solid #999}.back{display:none}.policy a{color:#000}.valid{background:none;color:#000;border:1px solid #000}.valid strong{color:#000}
}
