
/* CABINET — каркас издания GaymerX. Один файл, ноль JS. */
:root{
  --c-canvas:#e7eaef; --c-paper:#ffffff; --c-text:#101a24; --c-mute:#5a6773;
  --c-line:#d2d8df; --c-hair:#e6eaee;
  --c-flag:#0a5f9e; --c-deep:#08395e; --c-amber:#f0a020; --c-rose:#d0114f;
  --t-display:'bebas_neueregular','Bebas Neue',Oswald,'Arial Narrow',sans-serif;
  --t-body:'IBM Plex Sans',Roboto,'Segoe UI',Helvetica,Arial,sans-serif;
  --t-meta:'IBM Plex Mono',ui-monospace,'Courier New',monospace;
  --w-chrome:1120px; --w-wide:888px; --w-col:760px; --pad:20px; --sheet:38px;
}
html{-webkit-text-size-adjust:100%}
body.cab{margin:0;background:var(--c-canvas);color:var(--c-text);
  font:400 17px/1.68 var(--t-body);}
body.cab *{box-sizing:border-box}
body.cab img{max-width:100%;height:auto}
body.cab a{color:var(--c-flag);text-decoration:none}
body.cab a:hover{text-decoration:underline}

/* ---------- мастхед ---------- */
.cab-mast{background:var(--c-paper);border-bottom:1px solid var(--c-line)}
.cab-mast .cab-nav{border-bottom:0}
.cab-mast__in{max-width:var(--w-chrome);margin:0 auto;padding:22px var(--pad) 16px;
  display:flex;align-items:flex-end;gap:26px;flex-wrap:wrap}
body.cab .cab-mast__brand{display:flex;align-items:center;gap:12px;text-decoration:none!important;color:inherit}
.cab-mast__mark{width:44px;height:44px;flex:0 0 44px;display:block}
.cab-mast__word{font:400 46px/0.82 var(--t-display);letter-spacing:.02em;color:var(--c-text);
  text-transform:uppercase}
.cab-mast__word b{font-weight:400;color:var(--c-flag)}
.cab-mast__line{margin:0 0 5px;font:400 12.5px/1.35 var(--t-meta);color:var(--c-mute);
  letter-spacing:.06em;text-transform:uppercase;flex:1 1 240px}
.cab-mast__rule{height:4px;background:var(--c-amber)}

/* ---------- навигация: плоский ряд рубрик, без выпадашек ---------- */
.cab-nav{background:var(--c-paper);border-bottom:1px solid var(--c-line)}
.cab-nav__in{max-width:var(--w-chrome);margin:0 auto;padding:0 var(--pad)}
.cab-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 26px}
.cab-nav li{margin:0}
body.cab .cab-nav a{display:block;padding:12px 0 10px;border-bottom:3px solid transparent;
  font:400 20px/1 var(--t-display);letter-spacing:.055em;text-transform:uppercase;
  color:var(--c-text);text-decoration:none}
body.cab .cab-nav a:hover{border-bottom-color:var(--c-amber);text-decoration:none}
body.cab .cab-nav a[aria-current]{border-bottom-color:var(--c-flag);color:var(--c-flag)}
.cab-nav__end{margin-left:auto}
.cab-nav__end a{color:var(--c-mute)}

/* ---------- общий контейнер ---------- */
.cab-main{display:block}
.cab-wide{max-width:calc(var(--w-wide) + var(--sheet)*2);margin:0 auto;padding:0 var(--pad)}
.cab-narrow{max-width:calc(var(--w-col) + var(--sheet)*2);margin:0 auto;padding:0 var(--pad)}

/* ---------- обложка главной: цветное поле ---------- */
.cab-cover{background:var(--c-deep);color:#fff;
  background-image:linear-gradient(114deg,var(--c-deep) 0 58%,var(--c-flag) 58% 100%)}
.cab-cover__in{max-width:var(--w-chrome);margin:0 auto;padding:38px var(--pad) 34px;
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:30px 38px;align-items:start}
.cab-cover__kicker{margin:0 0 10px;font:400 13px/1 var(--t-meta);letter-spacing:.18em;
  text-transform:uppercase;color:var(--c-amber)}
.cab-cover__head{margin:0;font:400 clamp(38px,5.2vw,62px)/0.94 var(--t-display);
  letter-spacing:.01em;text-transform:uppercase}
body.cab .cab-cover__head a{color:#fff;text-decoration:none}
.cab-cover__head a:hover{text-decoration:underline;text-decoration-thickness:2px}
.cab-cover__stand{margin:16px 0 0;font-size:18px;line-height:1.6;color:#dbe7f1;max-width:34em}
.cab-cover__meta{margin:16px 0 0;font:400 12px/1 var(--t-meta);letter-spacing:.1em;
  text-transform:uppercase;color:#9fbdd6}
.cab-cover__shot{margin:0}
.cab-cover__shot img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;
  border:5px solid rgba(255,255,255,.14)}
.cab-cover__shot figcaption{margin-top:8px;font-size:12px;line-height:1.5;color:#a9c3d8}

/* ---------- индекс номера: плотная нумерованная полоса ---------- */
.cab-index{background:var(--c-paper);border-bottom:1px solid var(--c-line)}
.cab-index__in{max-width:var(--w-chrome);margin:0 auto;padding:24px var(--pad) 26px}
.cab-index__title{margin:0 0 14px;font:400 22px/1 var(--t-display);letter-spacing:.09em;
  text-transform:uppercase;color:var(--c-mute)}
.cab-index ol{list-style:none;margin:0;padding:0;columns:2;column-gap:44px}
.cab-index li{break-inside:avoid;padding:9px 0;border-top:1px solid var(--c-hair);
  display:flex;gap:12px;align-items:baseline}
.cab-index li:first-child{border-top:0}
.cab-index__num{font:400 13px/1.4 var(--t-meta);color:var(--c-amber);flex:0 0 26px}
.cab-index__txt{font-size:15.5px;line-height:1.45}
body.cab .cab-index__txt a{color:var(--c-text)}
.cab-index__txt em{display:block;font-style:normal;font:400 11px/1.4 var(--t-meta);
  letter-spacing:.1em;text-transform:uppercase;color:var(--c-mute);margin-top:3px}

/* ---------- полоса рубрики ---------- */
.cab-rail{max-width:var(--w-chrome);margin:0 auto;padding:34px var(--pad) 6px}
.cab-rail__head{display:flex;align-items:baseline;gap:14px;margin:0 0 18px;
  border-bottom:2px solid var(--c-text);padding-bottom:8px}
.cab-rail__num{font:400 13px/1 var(--t-meta);color:var(--c-rose);letter-spacing:.14em}
.cab-rail__name{margin:0;font:400 30px/1 var(--t-display);letter-spacing:.045em;text-transform:uppercase}
body.cab .cab-rail__name a{color:var(--c-text)}
.cab-rail__more{margin-left:auto;font:400 12px/1 var(--t-meta);letter-spacing:.1em;
  text-transform:uppercase}
.cab-rail__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}

/* ---------- плитка материала ---------- */
.cab-tile{margin:0}
.cab-tile__shot{display:block;margin:0 0 11px;background:var(--c-hair)}
.cab-tile__shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.cab-tile__kick{margin:0 0 6px;font:400 11px/1 var(--t-meta);letter-spacing:.14em;
  text-transform:uppercase;color:var(--c-flag)}
.cab-tile__head{margin:0;font:600 18.5px/1.32 var(--t-body);letter-spacing:-.005em}
body.cab .cab-tile__head a{color:var(--c-text)}
.cab-tile__lead{margin:7px 0 0;font-size:15px;line-height:1.55;color:var(--c-mute)}

/* ---------- врезка про архив ---------- */
.cab-past{max-width:var(--w-chrome);margin:30px auto 0;padding:0 var(--pad)}
.cab-past__in{border-top:3px solid var(--c-text);border-bottom:1px solid var(--c-line);
  padding:14px 0 15px;display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}
.cab-past__tag{font:400 11px/1 var(--t-meta);letter-spacing:.14em;text-transform:uppercase;
  color:#fff;background:var(--c-rose);padding:6px 9px}
.cab-past__txt{margin:0;font-size:15.5px;color:var(--c-mute)}

/* ---------- лист статьи ---------- */
.cab-sheet{background:var(--c-paper);border:1px solid var(--c-line);
  box-shadow:0 1px 0 rgba(16,26,36,.04),0 10px 30px -24px rgba(16,26,36,.5);
  padding:var(--sheet);margin:22px 0 34px}
.cab-sheet--wide{padding:calc(var(--sheet) - 4px) var(--sheet)}
body.cab .cab-head__kick a{color:var(--c-flag)}
.cab-head__kick{margin:0 0 12px;font:400 12px/1 var(--t-meta);letter-spacing:.16em;
  text-transform:uppercase;color:var(--c-flag)}
.cab-head__h1{margin:0;font:400 clamp(32px,4.4vw,50px)/0.98 var(--t-display);
  letter-spacing:.012em;text-transform:uppercase}
.cab-head__stand{margin:15px 0 0;font-size:19px;line-height:1.6;color:#39464f}
.cab-head__by{margin:16px 0 0;padding:10px 0 0;border-top:1px solid var(--c-hair);
  font:400 12px/1.5 var(--t-meta);letter-spacing:.06em;text-transform:uppercase;color:var(--c-mute)}
.cab-fig{margin:24px 0}
.cab-fig img{display:block;width:100%}
.cab-fig figcaption{margin-top:9px;font-size:13px;line-height:1.5;color:var(--c-mute);
  border-left:3px solid var(--c-amber);padding-left:10px}

/* ---------- проза (в т.ч. блоки донора без его CSS) ---------- */
.cab-prose{font-size:17.5px;line-height:1.72}
.cab-prose>*:first-child{margin-top:0}
.cab-prose p{margin:0 0 1.05em}
.cab-prose h2{margin:1.7em 0 .5em;font:400 30px/1.08 var(--t-display);letter-spacing:.03em;
  text-transform:uppercase}
.cab-prose h3{margin:1.5em 0 .45em;font:600 20px/1.3 var(--t-body)}
.cab-prose h4,.cab-prose h5{margin:1.3em 0 .4em;font:600 17px/1.35 var(--t-body)}
.cab-prose ul,.cab-prose ol{margin:0 0 1.1em;padding-left:1.3em}
.cab-prose li{margin:0 0 .42em}
.cab-prose blockquote{margin:1.4em 0;padding:2px 0 2px 18px;border-left:4px solid var(--c-amber);
  color:#33404a;font-size:18px}
.cab-prose blockquote p:last-child{margin-bottom:0}
.cab-prose img{height:auto}
.cab-prose figure{margin:1.5em 0}
.cab-prose figure img{display:block}
.cab-prose figcaption,.cab-prose .wp-caption-text{margin-top:7px;font-size:13px;color:var(--c-mute)}
.cab-prose hr{border:0;border-top:1px solid var(--c-line);margin:2em 0}
.cab-prose table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:15.5px}
.cab-prose th,.cab-prose td{border-bottom:1px solid var(--c-hair);padding:9px 10px;
  text-align:left;vertical-align:top}
.cab-prose th{font:600 12px/1.3 var(--t-meta);letter-spacing:.08em;text-transform:uppercase;
  color:var(--c-mute);border-bottom:2px solid var(--c-text)}
.cab-prose iframe,.cab-prose video{position:static!important;display:block;width:100%;
  aspect-ratio:16/9;height:auto;border:0;max-width:100%}
.cab-prose pre{overflow-x:auto;background:#f4f6f8;padding:14px;font:400 14px/1.5 var(--t-meta)}
.cab-prose code{font:400 .92em/1.4 var(--t-meta);background:#f4f6f8;padding:1px 4px;
  overflow-wrap:anywhere;word-break:break-word}
.cab-prose .alignleft{float:left;margin:.3em 1.4em .9em 0}
.cab-prose .alignright{float:right;margin:.3em 0 .9em 1.4em}
.cab-prose .aligncenter{display:block;margin-left:auto;margin-right:auto}
.cab-prose>*:last-child{margin-bottom:0}
.cab-prose::after{content:"";display:block;clear:both}

/* ---------- плашка архивной страницы ---------- */
.cab-note{margin:0 0 24px;padding:13px 16px;background:#f5f7f9;border-left:4px solid var(--c-flag);
  font-size:15px;line-height:1.6;color:#3a4750}
.cab-note b{font-weight:600}

/* ---------- шапка хаба / архива ---------- */
.cab-hub{background:var(--c-paper);border-bottom:1px solid var(--c-line)}
.cab-hub__in{max-width:var(--w-chrome);margin:0 auto;padding:34px var(--pad) 26px}
.cab-hub__eyebrow{margin:0 0 8px;font:400 12px/1 var(--t-meta);letter-spacing:.16em;
  text-transform:uppercase;color:var(--c-rose)}
.cab-hub__h1{margin:0;font:400 clamp(34px,5vw,54px)/0.96 var(--t-display);letter-spacing:.02em;
  text-transform:uppercase}
.cab-hub__sub{margin:12px 0 0;font-size:17.5px;line-height:1.6;color:var(--c-mute);max-width:44em}
.cab-hub__meta{margin:14px 0 0;font:400 11.5px/1 var(--t-meta);letter-spacing:.14em;
  text-transform:uppercase;color:var(--c-mute)}

/* ---------- сетка карточек архива/рубрики ---------- */
.cab-grid{max-width:var(--w-chrome);margin:0 auto;padding:28px var(--pad) 8px;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 26px}
.cab-grid--tight{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
.cab-card{margin:0;background:var(--c-paper);border:1px solid var(--c-line);display:flex;
  flex-direction:column}
.cab-card__shot{display:block;background:var(--c-hair)}
.cab-card__shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.cab-card__body{padding:14px 15px 16px}
.cab-card__kick{margin:0 0 6px;font:400 10.5px/1 var(--t-meta);letter-spacing:.13em;
  text-transform:uppercase;color:var(--c-mute)}
.cab-card__head{margin:0;font:600 16.5px/1.35 var(--t-body)}
body.cab .cab-card__head a{color:var(--c-text)}
.cab-sect{max-width:var(--w-chrome);margin:34px auto 0;padding:0 var(--pad)}
.cab-sect__h{margin:0 0 4px;font:400 26px/1 var(--t-display);letter-spacing:.05em;
  text-transform:uppercase;border-bottom:2px solid var(--c-text);padding-bottom:8px}
.cab-sect__note{margin:10px 0 0;font-size:15.5px;color:var(--c-mute)}

/* ---------- хвост статьи ---------- */
.cab-tail{margin:0 0 40px}
.cab-tail__h{margin:0 0 14px;font:400 22px/1 var(--t-display);letter-spacing:.08em;
  text-transform:uppercase;color:var(--c-mute)}
.cab-tail ul{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.cab-tail li{border-top:1px solid var(--c-hair);padding-top:10px;font-size:16px;line-height:1.45}
body.cab .cab-tail li a{color:var(--c-text)}

/* ---------- подвал ---------- */
.cab-foot{margin-top:44px;background:#0d1a24;color:#c3ced7}
body.cab .cab-foot a{color:#e6edf3}
.cab-foot__top{max-width:var(--w-chrome);margin:0 auto;padding:34px var(--pad) 26px;
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:28px}
.cab-foot__word{font:400 34px/0.85 var(--t-display);letter-spacing:.02em;text-transform:uppercase;
  color:#fff;margin:0 0 10px}
.cab-foot__word b{font-weight:400;color:var(--c-amber)}
.cab-foot p{margin:0 0 10px;font-size:14.5px;line-height:1.6}
.cab-foot h3{margin:0 0 10px;font:400 12px/1 var(--t-meta);letter-spacing:.14em;
  text-transform:uppercase;color:#7f95a5}
.cab-foot ul{list-style:none;margin:0;padding:0}
.cab-foot li{margin:0 0 7px;font-size:14.5px;line-height:1.45}
.cab-foot__legal{border-top:1px solid #1d2f3d}
.cab-foot__legal div{max-width:var(--w-chrome);margin:0 auto;padding:16px var(--pad) 26px;
  font-size:13px;line-height:1.6;color:#8398a7}
.cab-foot__legal p{margin:0 0 7px;font-size:13px}

/* ---------- мобилка ---------- */
@media (max-width:900px){
  :root{--sheet:22px}
  .cab-cover__in{grid-template-columns:1fr;padding-top:28px}
  .cab-rail__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cab-grid--tight{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cab-foot__top{grid-template-columns:1fr 1fr;gap:24px}
}
@media (max-width:620px){
  :root{--pad:14px;--sheet:16px}
  body.cab{font-size:16.5px}
  .cab-mast__in{padding-top:16px;gap:10px}
  .cab-mast__word{font-size:38px}
  .cab-mast__line{flex-basis:100%;margin-bottom:0}
  .cab-nav ul{gap:0 18px}
  .cab-nav a{font-size:18px;padding:10px 0 8px}
  .cab-index ol{columns:1}
  .cab-rail__grid{grid-template-columns:1fr;gap:22px}
  .cab-grid,.cab-grid--tight{grid-template-columns:1fr 1fr;gap:20px 16px}
  .cab-tail ul{grid-template-columns:1fr}
  .cab-foot__top{grid-template-columns:1fr}
  .cab-prose{font-size:16.5px}
  .cab-cover__in{padding-bottom:26px}
}
/* донорские инлайновые ширины на мобиле */
@media (max-width:620px){
  .cab-prose img,.cab-prose table,.cab-prose iframe{max-width:100%!important;height:auto}
  .cab-prose .alignleft,.cab-prose .alignright{float:none;margin:1em 0}
}
