:root{
  --ink:#20262d;
  --text:#343b43;
  --muted:#68717a;
  --navy:#17324d;
  --navy-dark:#10283d;
  --accent:#7a5834;
  --paper:#f7f5f0;
  --white:#fffefa;
  --line:#d9d4ca;
  --line-dark:#bdb6aa;
  --max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font-family:Georgia,'Times New Roman',serif;line-height:1.72;font-size:17px}
a{color:var(--navy);text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline}
.wrap{max-width:var(--max);margin:auto;padding:0 30px}
.topbar{position:sticky;top:0;z-index:50;background:rgba(247,245,240,.97);border-bottom:1px solid var(--line)}
.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:12px;color:var(--navy-dark);font-size:19px;font-weight:700;letter-spacing:.01em;white-space:nowrap}
.monogram{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px}
.links{display:flex;gap:17px;align-items:center;flex-wrap:wrap;font-family:Arial,Helvetica,sans-serif;font-size:13px;letter-spacing:.02em}
.links a{color:#384754}
.links a[aria-current="page"]{color:var(--navy-dark);font-weight:700;border-bottom:2px solid var(--accent);padding-bottom:5px}
.lang{border:1px solid var(--line-dark);padding:6px 10px;background:var(--white);color:var(--navy);font:700 12px Arial,Helvetica,sans-serif;cursor:pointer}
.hero{padding:66px 0 56px;border-bottom:1px solid var(--line);background:var(--white)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) 310px;gap:62px;align-items:start}
.kicker{font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:14px}
h1,h2,h3{color:var(--navy-dark);font-weight:600;line-height:1.2}
h1{font-size:48px;margin:0 0 18px;letter-spacing:-.025em}
h2{font-size:31px;margin:0 0 9px}
h3{font-size:21px;margin:0 0 9px}
.lead{font-size:20px;line-height:1.6;color:#43505b;max-width:770px;margin:0 0 24px}
.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}
.btn{display:inline-block;padding:9px 14px;border:1px solid var(--navy);background:var(--navy);color:#fff;font:700 13px Arial,Helvetica,sans-serif;letter-spacing:.01em}
.btn.alt{background:transparent;color:var(--navy)}
.btn:hover{text-decoration:none;background:var(--navy-dark);color:#fff}
.profile-card,.card,.resource,.contact-box,.note,.contact-photo-card,.bio-photo-card{background:var(--white);border:1px solid var(--line)}
.profile-card{padding:20px}
.profile-card dl{margin:0;display:grid;grid-template-columns:98px 1fr;gap:6px 12px;font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.45}
.profile-card dt{color:var(--muted)}
.profile-card dd{margin:0;font-weight:600;color:#33404b}
.profile-photo{width:100%;aspect-ratio:4/5;object-fit:cover;max-width:270px;margin:0 auto 18px;display:block;border:1px solid var(--line-dark);background:#eee}
section{padding:56px 0;border-bottom:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}
.subtitle{margin:0;color:var(--muted);max-width:780px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{padding:23px;border-top:3px solid var(--navy)}
.card p{margin:0;color:#46515a}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}
.tag{font-family:Arial,Helvetica,sans-serif;font-size:11px;border:1px solid var(--line);background:#faf8f3;padding:5px 8px;color:#56616a}
.timeline{display:grid}
.item{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:17px 0;border-top:1px solid var(--line)}
.item:first-child{border-top:0}
.when{color:var(--accent);font:bold 13px Arial,Helvetica,sans-serif;letter-spacing:.03em;padding-top:4px}
.item h3{font-size:18px;margin:0 0 3px}
.item p{margin:0;color:#4c5962}
.pubs{display:grid}
.pub{position:relative;padding:17px 0 17px 72px;border-top:1px solid var(--line)}
.pub:first-child{border-top:0}
.pub .year{position:absolute;left:0;top:18px;color:var(--accent);font:bold 12px Arial,Helvetica,sans-serif;letter-spacing:.04em}
.pub strong{display:block;color:var(--navy-dark);font-weight:600}
.pub small{display:block;margin-top:4px;color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:12.5px;line-height:1.55}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.metric{padding:18px 20px;border-right:1px solid var(--line);background:transparent;color:var(--ink)}
.metric:last-child{border-right:0}
.metric b{display:block;color:var(--navy-dark);font-size:27px;font-weight:600}
.metric span{font:12px Arial,Helvetica,sans-serif;color:var(--muted)}
.resources{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.resource{padding:20px;display:block;color:inherit;border-top:3px solid var(--navy)}
.resource:hover{text-decoration:none;border-color:var(--accent);background:#fff}
.resource h3{font-size:18px;margin-bottom:6px}
.resource p{margin:0;color:var(--muted);font-size:14px}
.contact-grid{display:grid;grid-template-columns:310px 1fr;gap:24px;align-items:start}
.contact-box{padding:23px}
.contact-photo-card{padding:20px;text-align:center}
.contact-photo{width:100%;max-width:225px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;display:block;margin:0 auto 14px;border:1px solid var(--line-dark)}
.contact-photo-card h3{margin:0 0 4px}
.contact-photo-card p{margin:0;color:var(--muted);font-size:14px}
.quick-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.quick-links .btn{padding:7px 11px;font-size:12px}
.note{padding:17px 19px;color:#4b565f;background:#fbfaf6;border-left:3px solid var(--accent)}
.page-hero{padding:48px 0 36px;border-bottom:1px solid var(--line);background:var(--white)}
.page-hero h1{font-size:40px}
.breadcrumbs{font:12px Arial,Helvetica,sans-serif;color:var(--muted);margin-bottom:8px}
.list-clean{margin:0;padding-left:20px}
.list-clean li{margin:7px 0}
.project{border-left:3px solid var(--accent);border-top:1px solid var(--line);padding-left:20px}
.project h3{font-size:20px}
.project p{margin:0 0 10px;color:#49545d}
.meta{font:11px Arial,Helvetica,sans-serif;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.bio-intro{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start}
.bio-photo-card{padding:16px;position:sticky;top:92px}
.bio-photo-card p{margin:10px 0 0;color:var(--muted);font:13px Arial,Helvetica,sans-serif;text-align:center}
.academic-rule{height:1px;background:var(--line);margin:25px 0}
footer{padding:31px 0 46px;color:var(--muted);font:12px Arial,Helvetica,sans-serif}
.footer-grid{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.en{display:none}body.english .ru{display:none!important}body.english .en{display:initial}body.english .en.block{display:block}body.english .en.inline{display:inline}
@media(max-width:920px){
  body{font-size:16px}.hero-grid,.two-col,.contact-grid,.bio-intro{grid-template-columns:1fr}.three-col,.resources{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.nav{flex-wrap:wrap;padding:8px 0}.links{display:flex;order:3;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:14px;padding:2px 0 8px;white-space:nowrap;scrollbar-width:thin}.hero{padding-top:48px}h1{font-size:39px}.item{grid-template-columns:1fr;gap:3px}.profile-card{max-width:420px}.profile-photo{max-width:230px}.bio-photo-card{position:static;max-width:300px}.contact-photo-card{max-width:330px}
}
@media(max-width:520px){.wrap{padding:0 20px}.metrics{grid-template-columns:1fr}.metric,.metric:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border-bottom:0}h1{font-size:34px}.lead{font-size:18px}.nav{min-height:62px}.brand{font-size:17px}.monogram{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px}}
@media print{
  .topbar,.lang,.actions,footer{display:none!important}body{background:#fff;color:#000;font-size:11pt}.wrap{max-width:none;padding:0}.page-hero,.hero,section{padding:20px 0;background:#fff;border-color:#ccc}.profile-card,.card,.resource,.note,.contact-box,.bio-photo-card{box-shadow:none;background:#fff;break-inside:avoid}.en{display:none!important}a{color:#000;text-decoration:none}h1{font-size:26pt}h2{font-size:18pt}
}

.monogram img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:auto}

.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.project{display:flex;flex-direction:column}
.project-facts{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);display:grid;grid-template-columns:88px 1fr;gap:7px 12px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.45}
.project-facts dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px}
.project-facts dd{margin:0;color:#38444e}
@media(max-width:900px){.projects-grid{grid-template-columns:1fr}}

.section-actions{margin-top:20px}.home-project-list{margin-top:14px;color:#44515d}.home-project-list li{margin:8px 0}

/* Accessibility and publication-ready refinements */
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.meta-list{font-family:Arial,Helvetica,sans-serif;font-size:12.5px;color:#46515a;margin-top:14px}
.meta-list strong{color:var(--navy-dark)}
@media(max-width:920px){.links::-webkit-scrollbar{height:5px}.links::-webkit-scrollbar-thumb{background:var(--line-dark)}}
