/* RSA — страницы статей. Те же токены, что на главной: бумага, графит, золото знака. */
:root{
  --paper:#F4F6F8; --card:#FFFFFF; --wash:#F4EDD4; --wash-2:#EAEEF2;
  --ink:#1E2126; --ink-2:#575C65; --rule:#D3DAE2; --rule-2:#E3E8ED;
  --gold:#B8952A; --gold-ink:#7C6213; --gold-soft:#C9A84C;
  --night:#141B24; --night-2:#1D2632;
  --display:"Forum","Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Golos Text",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --w:1140px;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3{text-wrap:balance;margin:0}
p{margin:0}
.wrap{max-width:var(--w);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.eyebrow{font:600 .75rem/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}

.top{background:var(--paper);border-bottom:1px solid var(--rule)}
.brand{display:block;line-height:0;flex:none}
.brand img{width:180px;height:auto;display:block}

/* шапка и меню */
.top{position:relative}
.top-in{display:flex;align-items:center;gap:12px 24px;padding-block:10px}
.menu{display:flex;align-items:center;gap:22px;margin-left:auto;font:500 .9375rem/1.2 var(--sans)}
.menu a{color:var(--ink-2);text-decoration:none;white-space:nowrap;padding-block:6px}
.menu a:hover{color:var(--ink)}
.menu a[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--gold)}
.menu .menu-phone{display:none}
.top-cta{flex:none;font:600 .9375rem/1.2 var(--sans);color:var(--gold-ink);border:1px solid var(--gold);padding:9px 14px;border-radius:2px;text-decoration:none;white-space:nowrap}
.top-cta:hover{background:var(--wash);color:var(--ink)}
.menu-btn{display:none;flex:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:40px;padding:0 11px;border:1px solid var(--rule);background:var(--card);border-radius:2px;cursor:pointer}
.menu-btn span{display:block;height:1.5px;background:var(--ink);transition:transform .2s,opacity .2s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media (max-width:1000px){
  .menu{display:none;position:absolute;left:0;right:0;top:100%;z-index:30;flex-direction:column;align-items:stretch;gap:0;margin:0;
    padding:4px max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px));
    background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:0 14px 28px rgba(20,27,36,.10)}
  .menu.open{display:flex}
  .menu a{padding:14px 0;border-top:1px solid var(--rule-2);font-size:1.0625rem;color:var(--ink)}
  .menu a:first-child{border-top:0}
  .menu a[aria-current="page"]{box-shadow:none;color:var(--gold-ink)}
  .menu .menu-phone{display:block;margin-top:6px;border-top:1px solid var(--rule);color:var(--gold-ink);font-weight:600;font-variant-numeric:tabular-nums}
  .top-cta{margin-left:auto}
  .menu-btn{display:inline-flex}
}
@media (max-width:420px){
  .top-in{gap:10px}
  .top-cta{padding:8px 10px;font-size:.84375rem}
}

.page{padding-block:clamp(32px,5vw,64px) clamp(56px,7vw,96px)}
.crumbs{font-size:.875rem;color:var(--ink-2);margin-bottom:28px}
.crumbs a{color:var(--ink-2);text-decoration-color:var(--rule);text-underline-offset:3px}
.crumbs a:hover{color:var(--ink)}

/* article */
.art{max-width:44rem;margin-inline:auto}
.art-head{display:grid;gap:16px;padding-bottom:28px;border-bottom:1px solid var(--rule);margin-bottom:32px}
.art-head h1{font-family:var(--display);font-weight:400;font-size:clamp(2rem,1.4rem + 2.6vw,3.1rem);line-height:1.1;letter-spacing:-.004em}
.byline{font-size:.9375rem;color:var(--ink-2)}
.byline b{color:var(--ink);font-weight:600}
.prose{font-size:1.09375rem;line-height:1.72}
.prose > * + *{margin-top:1.05em}
.prose h2{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,1.2rem + 1.1vw,1.95rem);line-height:1.2;margin-top:1.9em}
.prose h3{font:600 1.125rem/1.4 var(--sans);margin-top:1.6em}
.prose h2 + *,.prose h3 + *{margin-top:.6em}
.prose a{color:var(--gold-ink);text-decoration-color:var(--gold-soft);text-underline-offset:3px}
.prose ul,.prose ol{padding-left:1.3em}
.prose li + li{margin-top:.45em}
.prose ul li::marker{color:var(--gold)}
.prose ol li::marker{color:var(--gold-ink);font-weight:600}
.prose blockquote{margin:1.4em 0;padding:4px 0 4px 20px;border-left:3px solid var(--gold);color:var(--ink)}
.prose hr{border:0;border-top:1px solid var(--rule);margin:2.2em 0}
.prose .lead-in{font-family:var(--display);font-size:1.4rem;line-height:1.35;color:var(--ink-2)}
.scheme{border:1px solid var(--rule);background:var(--card);padding:18px;display:grid;gap:12px;font-size:.9375rem}
.scheme-top,.scheme-bottom{text-align:center;padding:10px;border:1px solid var(--gold);font-weight:600}
.scheme-bottom{border-style:dashed;font-weight:500;color:var(--ink-2)}
.scheme-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.scheme-col{display:grid;gap:4px;align-content:start;padding:12px 14px;background:var(--wash-2);border:1px solid var(--rule-2)}
.scheme-col b{margin-bottom:4px}

.author{margin-top:48px;padding:22px 24px;background:var(--wash-2);border:1px solid var(--rule-2);display:grid;gap:8px}
.author b{font-family:var(--display);font-weight:400;font-size:1.4rem}
.author p{font-size:.96875rem;color:var(--ink-2)}
.author .links{display:flex;flex-wrap:wrap;gap:8px 18px;font-weight:600;font-size:.9375rem}
.author .links a{color:var(--gold-ink);text-decoration-color:var(--gold-soft);text-underline-offset:3px}
.btn{display:inline-flex;align-items:center;padding:12px 20px;font:600 .9375rem/1.2 var(--sans);text-decoration:none;color:var(--paper);background:var(--ink);border:1px solid var(--ink);border-radius:2px;justify-self:start;margin-top:6px}
.btn:hover{background:var(--night-2)}

.more{margin-top:48px}
.more h2{font-family:var(--display);font-weight:400;font-size:1.6rem;margin-bottom:8px}

/* list of articles */
.list-head{display:grid;gap:14px;max-width:44rem;margin-bottom:28px}
.list-head h1{font-family:var(--display);font-weight:400;font-size:clamp(2.2rem,1.5rem + 3vw,3.6rem);line-height:1.05}
.list-head p{color:var(--ink-2)}
.arts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.arts a{display:grid;gap:4px;padding-block:16px;border-top:1px solid var(--rule);text-decoration:none;min-width:0}
.arts time{font:500 .75rem/1.5 var(--mono);color:var(--gold-ink)}
.arts b{font-weight:600;font-size:1.03rem;line-height:1.4}
.arts span{color:var(--ink-2);font-size:.9375rem;line-height:1.5}
.arts a:hover b{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.more .arts{grid-template-columns:minmax(0,1fr)}

.foot{border-top:1px solid var(--rule);padding-block:40px 48px}
.foot-in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px 40px}
.foot img{width:220px;height:auto;display:block}
.foot .req{display:grid;gap:4px;font-size:.8125rem;color:var(--ink-2);text-align:right}
.foot .req b{color:var(--ink);font-weight:600}

@media (max-width:760px){
  .arts{grid-template-columns:minmax(0,1fr)}
  .foot .req{text-align:left}
}
@media (max-width:560px){
  .brand img{width:140px}
  .scheme-cols{grid-template-columns:minmax(0,1fr)}
  .prose{font-size:1.0625rem}
}

/* обо мне */
.h2{font-family:var(--display);font-weight:400;font-size:clamp(1.85rem,1.3rem + 2.1vw,2.6rem);line-height:1.1;letter-spacing:-.003em}
.about{padding-top:clamp(24px,4vw,48px)}
.about .crumbs{margin-bottom:22px}
.about-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(36px,5.5vw,80px);align-items:start}
.about-intro{display:grid;gap:16px;max-width:40rem}
.about-intro h1{font-family:var(--display);font-weight:400;font-size:clamp(2.6rem,1.6rem + 4vw,4.4rem);line-height:1;letter-spacing:-.01em}
.about-tags{font:500 .8125rem/1.6 var(--mono);color:var(--gold-ink)}
.about-lede{font-family:var(--display);font-size:clamp(1.35rem,1.1rem + .9vw,1.7rem);line-height:1.3;padding-block:6px;border-block:1px solid var(--rule);color:var(--ink)}
.about-intro > p:not([class]){color:var(--ink-2)}
.about-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:6px}
.about-links .btn{margin-top:0}
.link{font-weight:600;font-size:.9375rem;color:var(--gold-ink);text-decoration-color:var(--gold-soft);text-underline-offset:4px}
.link:hover{color:var(--ink)}
.portrait{margin:0;position:relative}
.portrait::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--gold);pointer-events:none}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;position:relative;background:var(--wash)}

.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(48px,6vw,80px);border-block:1px solid var(--rule)}
.facts > div{display:grid;gap:6px;align-content:start;padding:22px 20px;border-left:1px solid var(--rule-2)}
.facts > div:first-child{border-left:0;padding-left:0}
.facts b{font-family:var(--display);font-weight:400;font-size:2rem;line-height:1;color:var(--ink)}
.facts span{font-size:.875rem;line-height:1.5;color:var(--ink-2)}

.block{padding-top:clamp(52px,6.5vw,88px)}
.block > .eyebrow{margin-bottom:10px}
.block > .h2{max-width:36rem}
.block-lede{margin-top:14px;color:var(--ink-2);max-width:44rem}
.block-lede a{color:var(--gold-ink);font-weight:600;text-decoration-color:var(--gold-soft);text-underline-offset:4px}

.principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.principles > div{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--gold);padding:20px 22px;display:grid;gap:8px;align-content:start}
.principles h3{font:600 1.0625rem/1.35 var(--sans)}
.principles p{font-size:.96875rem;color:var(--ink-2)}

.work-photo{margin-top:clamp(52px,6.5vw,88px);margin-bottom:0}
.work-photo img{display:block;width:100%;height:auto;max-height:760px;object-fit:cover;object-position:30% 40%;background:var(--wash)}
.work-photo figcaption{margin-top:10px;font:500 .75rem/1.5 var(--mono);color:var(--ink-2);letter-spacing:.04em}

.career{list-style:none;margin:28px 0 0;padding:0;border-bottom:1px solid var(--rule)}
.career > li{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:8px 32px;padding-block:24px;border-top:1px solid var(--rule)}
.career time{font:500 .8125rem/1.6 var(--mono);color:var(--gold-ink);padding-top:4px}
.career li > div{display:grid;gap:8px;max-width:44rem}
.career h3{font-family:var(--display);font-weight:400;font-size:1.6rem;line-height:1.15}
.career .role{font-weight:600;font-size:.9375rem;color:var(--ink)}
.career p:not(.role):not(.res){color:var(--ink-2);font-size:.96875rem}
.career p a{color:var(--gold-ink);font-weight:600;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
.career ul{margin:2px 0 0;padding-left:1.2em;font-size:.96875rem;color:var(--ink-2)}
.career ul li + li{margin-top:4px}
.career ul li::marker{color:var(--gold)}
.career .res{margin-top:4px;padding:12px 16px;background:var(--wash-2);border-left:3px solid var(--gold);font-size:.9375rem}
.career .res b{font-weight:600}

.cert-orig{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,40px);margin-top:28px;max-width:56rem}
.cert-orig figure{margin:0;display:grid;gap:12px;align-content:start}
.cert-orig a{display:block;line-height:0;border:1px solid var(--rule);background:var(--card);padding:10px;transition:border-color .15s}
.cert-orig a:hover{border-color:var(--gold)}
.cert-orig img{width:100%;height:auto;display:block}
.cert-orig figcaption{font-size:.875rem;line-height:1.55;color:var(--ink-2)}
.cert-orig figcaption b{display:block;font-family:var(--display);font-weight:400;font-size:1.35rem;color:var(--ink);margin-bottom:2px}
.cert-orig code{font-family:var(--mono);font-size:.8125rem;color:var(--ink)}

.reco{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.reco blockquote{margin:0;background:var(--card);border:1px solid var(--rule);padding:22px 24px;display:grid;gap:16px;align-content:space-between}
.reco blockquote p{font-size:.96875rem;line-height:1.65}
.reco blockquote p::before{content:"«";color:var(--gold)}
.reco blockquote p::after{content:"»";color:var(--gold)}
.reco footer{display:grid;gap:2px;padding-top:12px;border-top:1px solid var(--rule-2)}
.reco footer b{font-weight:600;font-size:.9375rem}
.reco footer span{font-size:.8125rem;color:var(--ink-2)}

.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,72px)}
.two-col .eyebrow{margin-bottom:10px}
.plain{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:0}
.plain li{padding-block:12px;border-top:1px solid var(--rule);font-size:.96875rem;color:var(--ink-2)}
.plain li b{color:var(--ink);font-weight:600}
.plain a{color:var(--gold-ink);text-decoration-color:var(--gold-soft);text-underline-offset:3px}

.about-cta{margin-top:clamp(56px,7vw,96px)}
.about-cta{display:grid;gap:14px;justify-items:start;background:var(--night);color:var(--paper);padding:clamp(28px,4vw,44px) clamp(20px,4vw,44px)}
.about-cta .h2{color:var(--paper)}
.about-cta p{color:#C9CCD2;max-width:40rem}
.about-cta p b{color:var(--paper);font-weight:600}
.about-cta a:not(.btn){color:var(--gold-soft)}
.about-cta .btn{background:var(--gold-soft);border-color:var(--gold-soft);color:var(--night)}
.about-cta .btn:hover{background:var(--paper);border-color:var(--paper)}

@media (max-width:880px){
  .about-hero{grid-template-columns:minmax(0,1fr)}
  .portrait{max-width:420px}
  .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .facts > div:nth-child(3){border-left:0;padding-left:0}
  .facts > div:nth-child(n+3){border-top:1px solid var(--rule-2)}
  .principles,.reco,.two-col,.cert-orig{grid-template-columns:minmax(0,1fr)}
  .cert-orig{max-width:30rem}
  .career > li{grid-template-columns:minmax(0,1fr)}
  .career time{padding-top:0}
}
@media (max-width:560px){
  .portrait::before{inset:10px -8px -10px 10px}
  .portrait{margin-right:8px}
  .facts > div{padding:18px 12px}
  .facts b{font-size:1.7rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.nw{white-space:nowrap}

/* обложки статей */
.art-head.has-cover{grid-template-columns:minmax(0,12.5rem) minmax(0,1fr);column-gap:28px;align-items:start}
.art-head-text{display:grid;gap:16px;align-content:start}
.art-head.has-cover h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.4rem)}
.art-cover{margin:0}
.art-cover a{display:block;line-height:0;border:1px solid var(--rule);background:var(--card)}
.art-cover img{display:block;width:100%;height:auto}
.art-cover.h,.art-cover.s{margin:0 0 32px}
.art-cover.s{max-width:30rem}

/* список статей: одна колонка, картинка слева */
.alist{display:grid;max-width:52rem;border-bottom:1px solid var(--rule)}
.alist a{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:22px;padding-block:22px;border-top:1px solid var(--rule);text-decoration:none;align-items:start}
.alist .thumb{display:block;aspect-ratio:3/4;overflow:hidden;line-height:0;background:var(--wash-2);border:1px solid var(--rule-2)}
.alist .thumb img{width:100%;height:100%;object-fit:cover;object-position:top}
.alist .thumb.none{display:grid;place-items:center;background:var(--wash-2)}
.alist .thumb.none img{width:58%;height:auto;opacity:.75}
.alist .txt{display:grid;gap:8px;align-content:start;padding-top:2px}
.alist time{font:500 .75rem/1.5 var(--mono);color:var(--gold-ink)}
.alist b{font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.2;color:var(--ink)}
.alist .d{color:var(--ink-2);font-size:.9375rem;line-height:1.55}
.alist a:hover b{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:1px}
@media (max-width:640px){
  .art-head.has-cover{grid-template-columns:minmax(0,1fr);row-gap:20px}
  .art-head.has-cover .art-cover{max-width:13rem}
  .alist a{grid-template-columns:5.25rem minmax(0,1fr);gap:14px;padding-block:18px}
  .alist b{font-size:1.15rem}
  .alist .d{display:none}
}
