/* Self-hosted fonts (SIL Open Font License; files and licences in /fonts). No requests to Google. */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/inter-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/inter-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/source-serif-4-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/source-serif-4-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}

  :root{
    --ink:#1b1c19;
    --ink-soft:#54554d;
    --ink-mute:#8b8c82;
    --paper:#faf8f4;
    --panel:#ffffff;
    --line:#e2dfd4;
    --line-strong:#cfccbe;
    --gold:#bc9d58;
    --gold-deep:#8a6e2f;
  }
  *{box-sizing:border-box;}
  html{overflow-y:scroll;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Inter',-apple-system,sans-serif;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3{
    font-family:'Source Serif 4', Georgia, serif;
    font-weight:500;
    margin:0;
    color:var(--ink);
  }
  a{color:inherit;}
  .wrap{max-width:900px;margin:0 auto;padding:0 32px;}

  /* header */
  header.site{
    position:sticky;top:0;z-index:20;
    background:rgba(250,248,244,0.92);
    backdrop-filter:blur(6px);
    border-bottom:1px solid var(--line);
  }
  .header-inner{
    max-width:900px;margin:0 auto;padding:0 32px;
    display:flex;align-items:center;justify-content:space-between;
    height:88px;
  }
  .brand{display:flex;align-items:center;gap:12px;cursor:pointer;flex-shrink:0;}
  .brand img, .brand svg.logo-mark{width:80px;height:80px;display:block;flex-shrink:0;}
  .brand-name{font-family:'Source Serif 4',serif;font-size:15px;font-weight:500;letter-spacing:0.2px;line-height:1.25;}
  .brand-name span{display:block;}

  nav.main{display:flex;gap:22px;flex-shrink:1;min-width:0;}
  nav.main a{
    background:none;border:none;font-family:'Inter',sans-serif;
    font-size:15px;color:var(--ink-soft);cursor:pointer;padding:6px 0;
    border-bottom:2px solid transparent;text-decoration:none;
  }
  nav.main a.active{color:var(--ink);border-bottom-color:var(--gold);font-weight:500;}
  nav.main a:hover{color:var(--ink);}

  .lang-toggle{display:flex;align-items:center;gap:6px;font-size:13px;}
  .lang-toggle button{
    background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;
    font-size:13px;color:var(--ink-mute);padding:2px 4px;border-bottom:none;
  }
  .lang-toggle button.active{color:var(--ink);font-weight:600;}
  .lang-toggle .sep{color:var(--line-strong);}
  .lang-toggle-mobile{display:none;}

  .menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:4px;}
  .menu-toggle span, .menu-toggle span::before, .menu-toggle span::after{
    display:block;width:20px;height:1.5px;background:var(--ink);position:relative;
  }
  .menu-toggle span::before, .menu-toggle span::after{content:'';position:absolute;left:0;}
  .menu-toggle span::before{top:-6px;}
  .menu-toggle span::after{top:6px;}

  /* sections */
  main{min-height:60vh;}
  section.page{display:none;padding:56px 0 72px;}
  section.page.active{display:block;}
  .page-title{font-size:32px;margin-bottom:10px;}

  .error-404{text-align:center;padding:48px 0 32px;max-width:520px;margin:0 auto;}
  .error-404-code{font-family:'Source Serif 4',serif;font-size:96px;font-weight:600;color:var(--gold);line-height:1;margin-bottom:8px;}
  .error-404 .page-title{margin-bottom:8px;}
  .error-404 .page-lede{margin:0 auto 28px;max-width:440px;}
  .error-404-links{margin-top:36px;padding-top:28px;border-top:1px solid var(--line);}
  .error-404-links p{font-size:13px;color:var(--ink-mute);margin-bottom:12px;}
  .error-404-links .quick-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;}
  .error-404-links .quick-links a{font-size:15px;color:var(--ink-soft);text-decoration:none;}
  .error-404-links .quick-links a:hover{color:var(--gold-deep);}
  .page-lede{font-size:16px;color:var(--ink-soft);max-width:520px;margin:0 0 40px;}

  .block{border-top:1px solid var(--line);padding:32px 0;}
  .block:last-child{border-bottom:1px solid var(--line);}
  .block-head{
    display:flex;align-items:baseline;justify-content:space-between;gap:16px;
    margin-bottom:14px;flex-wrap:wrap;
  }
  .block-title{font-size:18px;font-family:'Source Serif 4',serif;font-weight:500;
    padding-left:12px;border-left:2px solid var(--gold);}
  .block-text{font-size:15px;color:var(--ink-soft);line-height:1.7;max-width:640px;margin:0 0 13px;}
  .gold-text{color:var(--gold-deep);font-weight:600;text-decoration:none;}
  .gold-text:hover{text-decoration:underline;}
  .block-text:last-child{margin-bottom:0;}

  .file-row{
    display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
    padding:12px 0;border-top:1px solid var(--line);font-size:15px;
    text-decoration:none;color:var(--ink);
  }
  .file-row:first-of-type{border-top:1px solid var(--line);}
  .file-left{display:flex;align-items:flex-start;gap:10px;min-width:0;flex:1 1 auto;}
  .file-left > span{min-width:0;}
  .file-icon{width:16px;height:16px;flex-shrink:0;color:var(--ink-mute);margin-top:1px;}
  .file-date{font-size:13px;color:var(--ink-mute);flex-shrink:0;margin-top:1px;white-space:nowrap;}
  .file-row .dl{color:var(--ink-mute);}
  .file-row:hover{color:var(--gold-deep);}
  .file-row:hover .dl{color:var(--gold-deep);}

  .timeline-row{display:flex;gap:18px;padding:10px 0;border-top:1px solid var(--line);}
  .timeline-year{font-size:13px;color:var(--ink-mute);min-width:40px;}
  .timeline-text{font-size:15px;}

  .board-row{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-top:1px solid var(--line);font-size:15px;}
  .board-role{color:var(--ink-soft);font-size:13px;}

  .steps{display:flex;flex-direction:column;}
  .step{display:flex;gap:14px;padding:12px 0;border-top:1px solid var(--line);}
  .step-num{font-size:13px;color:var(--gold-deep);min-width:18px;font-weight:600;}
  .step-text{font-size:15px;color:var(--ink-soft);}

  /* home */
  .hero{padding:0 0 12px;}

  .full-width-graphic{width:100%;padding:8px 0 28px;}
  .full-width-graphic svg{display:block;width:100%;height:70px;}

  .section-divider{width:50px;height:2px;background:var(--gold);margin:8px auto 36px;}
  .hero-title{font-size:36px;line-height:1.2;max-width:600px;margin-bottom:15px;}
  .hero-lede{font-size:16px;color:var(--ink-soft);max-width:480px;margin-bottom:36px;}

  .entry-buttons{display:flex;gap:12px;margin-bottom:56px;flex-wrap:wrap;}
  .entry-btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:13px 20px;border-radius:4px;border:1px solid var(--gold);
    background:var(--panel);font-family:'Inter',sans-serif;font-size:15px;color:var(--ink);
    cursor:pointer;text-decoration:none;
  }
  .entry-btn .arrow{color:var(--gold-deep);font-size:15px;}
  .entry-btn:hover{border-color:var(--gold-deep);}
  .entry-btn:hover .arrow{color:var(--gold-deep);}
  .btn-icon{width:23px;height:23px;flex-shrink:0;}

  /* footer */
  footer{border-top:1px solid var(--line);padding:44px 0 40px;background:var(--panel);}
  .footer-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;}
  .footer-col h4{font-size:13px;text-transform:none;color:var(--ink-mute);margin:0 0 10px;font-weight:500;}
  .footer-col p, .footer-col a{font-size:15px;color:var(--ink-soft);margin:0 0 5px;display:block;text-decoration:none;}
  .footer-col a:hover{color:var(--gold-deep);}
  .footer-bottom{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-mute);}

  @media (max-width:640px){
    .wrap, .header-inner{padding:0 20px;}
    nav.main{
      position:fixed;top:88px;left:0;right:0;background:var(--panel);
      flex-direction:column;gap:0;border-bottom:1px solid var(--line);
      box-shadow:0 12px 24px rgba(27,28,25,0.14);
      z-index:16;
      display:none;
    }
    nav.main.open{display:flex;}
    .nav-scrim{display:none;position:fixed;top:88px;left:0;right:0;height:100vh;height:100dvh;background:rgba(27,28,25,0.45);z-index:15;}
    .nav-scrim.open{display:block;}
    nav.main a{padding:14px 20px;border-bottom:1px solid var(--line);width:100%;text-align:left;border-left:2px solid transparent;display:block;}
    nav.main a.active{border-left-color:var(--gold);border-bottom-color:var(--line);}
    .menu-toggle{display:block;}
    .lang-toggle-desktop{display:none;}
    .lang-toggle-mobile{
      display:flex;padding:14px 20px;
      font-size:15px;gap:8px;
    }
    .nav-divider{width:40px;height:2px;background:var(--gold);margin:2px auto 10px;}
    .lang-toggle-mobile button{font-size:15px;padding:2px 6px;}
    .hero-title{font-size:28px;}
    .error-404-code{font-size:64px;}
    .full-width-graphic svg{height:50px;}
    .entry-buttons{flex-direction:column;}
    .footer-grid{flex-direction:column;gap:24px;}
  }
