@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonty/inter-tight-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonty/inter-tight-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, 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(/fonty/source-serif-4-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonty/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+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonty/jetbrains-mono-latin-ext-400.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonty/jetbrains-mono-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonty/jetbrains-mono-latin-ext-500.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonty/jetbrains-mono-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{
  --ink:#16130F;          
  --ink-2:#3D3730;        
  --muted:#6B6259;        
  --faint:#8E857A;        
  --paper:#FFFFFF;        
  --ground:#FAF8F5;       
  --sunk:#F2EEE8;         
  --line:#E4DED4;         
  --line-2:#CFC6B8;       
  --accent:#6D2B62;       
  --accent-2:#8A3B7C;     
  --accent-tint:#F6EDF4;  
  --accent-line:#E2CDDE;  
  --flag:#8A5A12;         
  --flag-tint:#FBF2DF;    
  --cta:#FF7C38;          
  --cta-2:#E86A22;        
  --cta-on:#16130F;       

  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"Inter Tight", system-ui, -apple-system, sans-serif;
  --mono:"JetBrains Mono", ui-monospace, monospace;

  --w-text:none;          
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);
  font-family:var(--serif);font-size:18px;line-height:1.66;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

h1,h2,h3,h4{font-family:var(--sans);font-weight:600;margin:0;letter-spacing:-.021em;line-height:1.16;color:var(--ink)}
h1{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.03em;line-height:1.08}
h2{font-size:clamp(22px,2.4vw,29px)}
h3{font-size:19px;line-height:1.28}
p{margin:0 0 1.05em}
a{color:var(--accent);text-underline-offset:2px}
a:hover{color:var(--accent-2)}
img,video{max-width:100%;display:block}
hr{height:1px;background:var(--line);border:0;margin:0}
::selection{background:var(--accent-tint)}

.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 22px}
.wrap--wide{max-width:1320px}
.wrap--read{max-width:720px}   
.sec{padding:56px 0}
.sec--tight{padding:34px 0}
.sec--sunk{background:var(--sunk)}
.sec--paper{background:var(--paper)}
.stack>*+*{margin-top:var(--gap,18px)}

.kicker{font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;color:var(--faint)}
.lede{font-size:20.5px;line-height:1.56;color:var(--ink-2)}
.small{font-size:15px;line-height:1.6;color:var(--muted)}
.tiny{font-family:var(--sans);font-size:12.5px;color:var(--faint)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.ui{font-family:var(--sans)}

.top{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}
.top__in{display:flex;align-items:center;gap:22px;height:62px}
.brand{font-family:var(--sans);font-weight:600;font-size:19px;letter-spacing:-.03em;
  color:var(--ink);text-decoration:none;flex:0 0 auto}
.brand em{font-style:normal;color:var(--accent)}
.top nav{display:flex;gap:19px;flex-wrap:wrap}
.top nav a{font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--muted);text-decoration:none}
.top nav a:hover,.top nav a[aria-current]{color:var(--ink)}
.spacer{margin-left:auto}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sans);font-size:15px;font-weight:600;text-decoration:none;
  padding:11px 19px;border-radius:6px;border:1px solid transparent;cursor:pointer}
.btn--solid{background:var(--ink);color:var(--paper)}
.btn--solid:hover{background:var(--ink-2);color:var(--paper)}
.btn--line{border-color:var(--line-2);color:var(--ink);background:transparent}
.btn--line:hover{border-color:var(--ink);color:var(--ink)}
.btn--accent{background:var(--accent);color:#fff}
.btn--accent:hover{background:var(--accent-2);color:#fff}
.btn--sm{padding:8px 14px;font-size:13.5px}
.btn--lg{padding:14px 24px;font-size:16px}

.crumbs{font-family:var(--sans);font-size:13px;color:var(--faint);margin-bottom:14px}
.crumbs a{color:var(--faint);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.crumbs span{margin:0 7px;opacity:.6}

.art{max-width:68ch}
.art h2{margin:1.7em 0 .5em}
.art h3{margin:1.5em 0 .4em;font-size:18px;color:var(--ink-2)}
.art > :first-child{margin-top:0}
.art ul,.art ol{margin:0 0 1.05em;padding-left:1.25em}
.art li{margin-bottom:.45em}
.art li::marker{color:var(--faint)}

.answer{font-family:var(--sans);font-size:clamp(19px,2vw,23px);line-height:1.36;
  font-weight:500;color:var(--ink);background:var(--sunk);
  border-left:3px solid var(--accent);border-radius:0 8px 8px 0;
  padding:19px 22px;margin:0 0 26px}

.callout{background:var(--flag-tint);border-radius:8px;padding:17px 20px;margin:26px 0}
.callout h3{font-family:var(--sans);font-size:16px;color:var(--flag);margin:0 0 5px}
.callout p{margin:0;font-size:15.5px;color:var(--flag)}

.quote{border-left:3px solid var(--line-2);padding:2px 0 2px 18px;margin:26px 0;
  font-size:18.5px;color:var(--ink-2)}
.quote cite{display:block;margin-top:8px;font-style:normal;font-family:var(--sans);
  font-size:13px;color:var(--faint)}

.ticks{list-style:none;margin:0 0 1.05em;padding:0}
.ticks li{position:relative;padding-left:26px;margin-bottom:.5em}
.ticks li::before{content:"";position:absolute;left:4px;top:.62em;width:9px;height:9px;
  border-radius:50%;background:var(--accent)}

.tbl{width:100%;border-collapse:collapse;margin:22px 0;font-size:15.5px}
.tbl th,.tbl td{text-align:left;padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--faint);
  text-transform:uppercase;letter-spacing:.06em}
.tbl td:first-child{font-family:var(--sans);font-weight:600;font-size:15px;white-space:nowrap}
.tbl-scroll{overflow-x:auto}

.fig{margin:26px 0;padding:0}

.fig img{width:100%;height:auto;aspect-ratio:var(--fig-ar,16 / 9);object-fit:cover;
  border-radius:10px;background:var(--sunk)}

.fig--lead{margin:0 0 30px}

.thumb{flex:0 0 84px;width:84px;height:auto;aspect-ratio:1;border-radius:8px;object-fit:cover;background:var(--sunk)}
.card__img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:var(--sunk);
  border-radius:9px;margin-bottom:14px}

.meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;
  font-family:var(--sans);font-size:13px;color:var(--faint);margin:0 0 26px}
.tag{display:inline-flex;font-family:var(--sans);font-size:12px;font-weight:600;
  padding:3px 9px;border-radius:999px;background:var(--accent-tint);color:var(--accent);
  text-decoration:none}
.tag:hover{background:var(--accent);color:#fff}

.toc{font-family:var(--sans);font-size:14px}
.toc__h{font-size:11.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  color:var(--faint);display:block;margin-bottom:10px}
.toc a{display:block;padding:6px 0 6px 12px;border-left:2px solid var(--line);
  color:var(--muted);text-decoration:none;line-height:1.4}
.toc a:hover{color:var(--ink);border-left-color:var(--line-2)}
.toc--sticky{position:sticky;top:22px}

.inline-toc{background:var(--sunk);border-radius:8px;padding:18px 22px;margin:0 0 30px}
.inline-toc ol{margin:0;padding-left:1.15em;font-family:var(--sans);font-size:15px}
.inline-toc li{margin-bottom:5px}
.inline-toc a{color:var(--ink-2);text-decoration:none}
.inline-toc a:hover{color:var(--accent);text-decoration:underline}

.srcs{margin:38px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.srcs ol{margin:12px 0 0;padding-left:1.2em}
.srcs li{font-size:14.5px;margin-bottom:6px;color:var(--muted)}
.srcs a{color:var(--muted)}
.srcs a:hover{color:var(--accent)}

.legal-note{margin:22px 0 0;font-family:var(--sans);font-size:12.5px;line-height:1.55;color:var(--faint)}

.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.split{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:52px;align-items:start}
.split--left{grid-template-columns:230px minmax(0,1fr)}

.card{display:block;background:var(--paper);border:1px solid var(--line);border-radius:10px;
  padding:20px;text-decoration:none;color:var(--ink)}
a.card:hover{border-color:var(--line-2)}
.card h3{margin:0 0 6px}
.card p{margin:0;font-size:15px;color:var(--muted);line-height:1.55}

.rows{border-top:1px solid var(--line)}
.row{display:flex;gap:18px;align-items:baseline;padding:15px 2px;
  border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.row:hover{background:var(--paper)}
.row__n{font-family:var(--mono);font-size:12.5px;color:var(--faint);flex:0 0 auto}
.row__b{min-width:0}
.row__b b{display:block;font-family:var(--sans);font-weight:600;font-size:17px;letter-spacing:-.012em}
.row__b span{display:block;font-size:15px;color:var(--muted);line-height:1.5;margin-top:2px}
.row__a{margin-left:auto;color:var(--accent);flex:0 0 auto;font-family:var(--sans)}

.rec{border-radius:10px;padding:22px 24px;display:flex;align-items:center;gap:20px 28px}
.rec__t{flex:1 1 auto;min-width:0}
.rec .btn{flex:0 0 auto}
.btn--cta{background:var(--cta);color:var(--cta-on)}
.btn--cta:hover{background:var(--cta-2);color:var(--cta-on)}
@media (max-width:640px){.rec{flex-direction:column;align-items:flex-start}}
.rec__k{font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;display:block;margin-bottom:9px}
.rec h3{font-size:20px;margin:0 0 7px}
.rec p{margin:0;font-size:16px}
.rec__row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

.rec--mid{background:var(--accent-tint);border:1px solid var(--accent-line);margin:34px 0}
.rec--mid .rec__k{color:var(--accent)}
.rec--mid h3{color:var(--ink)}
.rec--mid p{color:var(--ink-2)}

.art-end{margin-top:34px;max-width:68ch}
.rec--end{background:var(--paper);border:1px solid var(--line-2)}
.rec--end .rec__k{color:var(--faint)}
.rec--end p{color:var(--muted)}

.foot{background:var(--paper);border-top:1px solid var(--line);padding:38px 0;margin-top:56px}
.foot__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.foot__h{display:block;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.09em;
  text-transform:uppercase;color:var(--faint);margin-bottom:10px}
.foot a{display:block;font-family:var(--sans);font-size:14.5px;color:var(--muted);
  text-decoration:none;margin-bottom:6px}
.foot a:hover{color:var(--ink)}

.foot__legal{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);
  font-family:var(--sans);font-size:12.5px;color:var(--faint);
  display:flex;flex-wrap:wrap;gap:6px 18px}
.foot__legal a{display:inline;margin:0;font-size:12.5px}

.foot__foto{margin:10px 0 0;font-family:var(--sans);font-size:11.5px;
  line-height:1.5;color:var(--faint);opacity:.72}
.foot__foto a{display:inline;margin:0;font-size:11.5px;color:inherit;
  text-decoration:none;border-bottom:1px solid var(--line)}
.foot__foto a:hover{color:var(--ink)}

.search{display:flex;gap:0;border:1px solid var(--line-2);border-radius:8px;
  background:var(--paper);overflow:hidden;max-width:520px}
.search input{flex:1;min-width:0;border:0;padding:14px 16px;font-family:var(--sans);
  font-size:16px;color:var(--ink);background:transparent}
.search input:focus{outline:2px solid var(--accent);outline-offset:-2px}
.search button{border:0;background:var(--ink);color:var(--paper);padding:0 20px;
  font-family:var(--sans);font-size:14.5px;font-weight:600;cursor:pointer}

@media(max-width:900px){
  body{font-size:17px}
  .sec{padding:38px 0}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .split,.split--left{grid-template-columns:1fr;gap:30px}
  .toc--sticky{position:static}
  .foot__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .top__in{height:auto;padding:12px 0;flex-wrap:wrap;gap:10px 16px}
  .top nav{order:3;flex-basis:100%;gap:14px}
}
@media(max-width:520px){
  .foot__cols{grid-template-columns:1fr}
  .answer{padding:16px 18px}
  .row{flex-wrap:wrap;gap:4px 12px}
  .row__a{display:none}
}
@media print{ .top,.foot,.rec,.swx{display:none} body{background:#fff} }

.ma-hero{background:var(--paper);border-bottom:1px solid var(--line);padding:44px 0}
.ma-lead{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:46px;align-items:start}
.ma-lead h1{font-size:clamp(28px,3.4vw,42px);margin-bottom:14px}
.ma-side{border-left:1px solid var(--line);padding-left:30px}
.ma-side a{display:block;padding:11px 0;border-bottom:1px solid var(--line);
  font-family:var(--sans);font-size:15.5px;font-weight:500;color:var(--ink);text-decoration:none;line-height:1.35}
.ma-side a:hover{color:var(--accent)}
.ma-sec{padding:34px 0;border-bottom:1px solid var(--line)}
.ma-sec:last-child{border-bottom:0}
.ma-sec__h{display:flex;gap:16px;align-items:baseline;margin-bottom:18px}
.ma-sec__h h2{font-size:21px}
.ma-sec__h a{margin-left:auto;font-family:var(--sans);font-size:14px;text-decoration:none;flex:0 0 auto}
.ma-art{padding:44px 0}
.ma-art h1{max-width:20ch}
.ma-art .lede{font-size:21.5px;margin:14px 0 22px}

.ma-rub{display:inline-block;text-decoration:none;color:var(--faint)}
.ma-rub:hover{color:var(--accent)}
@media(max-width:900px){.ma-lead{grid-template-columns:1fr;gap:28px}
  .ma-side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:20px}}
