
/* Internal article page — uses the original Manrope + Unbounded font system */
.article-page {
  background: var(--paper);
  color: var(--ink);
  overflow-x: clip;
}
.article-hero {
  position: relative;
  min-height: 720px;
  padding: 178px 7vw 76px;
  overflow: hidden;
  color: var(--milk);
  background:
    radial-gradient(circle at 78% 34%, rgba(49,214,196,.24), transparent 28%),
    linear-gradient(122deg,#06191d 0%,#0b3439 72%,#0d4145 100%);
}
.article-hero::before {
  content: "FORUM";
  position: absolute;
  right: -2vw;
  bottom: -.08em;
  color: rgba(167,245,235,.035);
  font: 500 clamp(110px,18vw,300px)/.8 var(--font-display);
  letter-spacing: -.09em;
  pointer-events: none;
}
.article-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(49,214,196,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(49,214,196,.065) 1px,transparent 1px);
  background-size: 62px 62px;
  mask-image: linear-gradient(90deg,transparent 20%,black,transparent 94%);
  pointer-events: none;
}
.article-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1180px;
}
.article-back {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  color: #afc5c0;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .15em;
}
.article-back span { color: var(--gold); font-size: 18px; }
.article-kicker {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-top: 58px;
  color: #bad0cc;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .16em;
}
.article-kicker b {
  color: var(--accent);
  font-family: var(--font-display);
  font-size: 9px;
}
.article-kicker::after {
  content:"";
  width:48px;
  height:1px;
  background:var(--accent);
  opacity:.75;
}
.article-hero h1 {
  max-width: 1020px;
  margin: 30px 0 0;
  font-size: clamp(46px,6.2vw,94px);
  line-height: 1.02;
}
.article-hero h1 em { color: var(--accent); font-style: normal; }
.article-lead {
  max-width: 760px;
  margin: 38px 0 0;
  color: #d1dfdc;
  font-size: 18px;
  line-height: 1.75;
}
.article-hero-image {
  position: absolute;
  z-index: 2;
  right: 7vw;
  bottom: 0;
  width: min(35vw, 510px);
  height: 430px;
  border: 1px solid var(--line);
  overflow: hidden;
  box-shadow: 0 35px 80px rgba(0,0,0,.28);
}
.article-hero-image::after {
  content:"";
  position:absolute;
  top:0; right:0;
  width:9px; height:34%;
  background:var(--gold);
}
.article-hero-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.95) contrast(1.04);
}
.article-facts {
  display:flex;
  flex-wrap:wrap;
  gap:36px;
  margin:58px 0 0;
  max-width:700px;
}
.article-facts div {
  min-width:130px;
  padding-top:16px;
  border-top:1px solid rgba(167,245,235,.28);
}
.article-facts strong {
  display:block;
  color:var(--gold);
  font:500 25px var(--font-display);
}
.article-facts span {
  display:block;
  margin-top:8px;
  color:#9eb4b0;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.article-body {
  padding: 110px 7vw 125px;
  background: var(--paper);
}
.article-layout {
  max-width: 1240px;
  margin: 0 auto;
  display:grid;
  grid-template-columns: .65fr 1.65fr;
  gap: 70px;
  align-items:start;
}
.article-sidebar {
  position:sticky;
  top:130px;
}
.article-sidebar h2 {
  margin:0;
  font-size:clamp(28px,3.2vw,48px);
  line-height:1.05;
}
.article-sidebar h2 em { color:var(--accent-deep); font-style:normal; }
.article-sidebar p {
  max-width:280px;
  margin:24px 0 0;
  color:#647875;
  font-size:13px;
  line-height:1.7;
}
.article-index {
  margin-top:42px;
  padding-top:18px;
  border-top:1px solid rgba(10,34,38,.18);
}
.article-index a {
  display:block;
  padding:11px 0;
  color:#4d6864;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.1em;
  transition:color .25s, transform .25s;
}
.article-index a:hover { color:var(--accent-deep); transform:translateX(4px); }
.article-content {
  max-width:780px;
}
.article-content .intro {
  margin:0 0 42px;
  font-size:22px;
  line-height:1.65;
  color:#173438;
}
.article-content p {
  margin:0 0 25px;
  font-size:17px;
  line-height:1.85;
  color:#344f4d;
}
.article-content h2 {
  margin:64px 0 24px;
  font-size:clamp(28px,3vw,44px);
  line-height:1.1;
}
.article-content h2 em { color:var(--accent-deep); font-style:normal; }
.article-list {
  margin:26px 0 38px;
  padding:0;
  list-style:none;
  counter-reset:participants;
}
.article-list li {
  position:relative;
  margin:0;
  padding:18px 0 18px 52px;
  border-top:1px solid rgba(10,34,38,.14);
  color:#344f4d;
  font-size:16px;
  line-height:1.65;
}
.article-list li:last-child { border-bottom:1px solid rgba(10,34,38,.14); }
.article-list li::before {
  counter-increment:participants;
  content:counter(participants, decimal-leading-zero);
  position:absolute;
  left:0; top:19px;
  color:var(--accent-deep);
  font:500 10px var(--font-display);
}
.article-highlight {
  margin:46px 0;
  padding:34px 36px;
  background:var(--deep);
  color:var(--milk);
  position:relative;
  overflow:hidden;
}
.article-highlight::before {
  content:"";
  position:absolute;
  inset:auto -70px -100px auto;
  width:280px; height:280px;
  border:1px solid rgba(49,214,196,.18);
  border-radius:50%;
}
.article-highlight p {
  position:relative;
  z-index:1;
  margin:0;
  color:#d9e7e3;
  font-size:20px;
  line-height:1.65;
}
.article-highlight strong { color:var(--gold); }
.article-gallery {
  margin-top:86px;
  padding-top:36px;
  border-top:1px solid rgba(10,34,38,.18);
}
.article-gallery-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
}
.article-gallery-head h2 { margin:0; }
.article-gallery-head p {
  max-width:360px;
  margin:0;
  font-size:13px;
  color:#718682;
}
.article-gallery-grid {
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:12px;
}
.article-gallery-item {
  position:relative;
  border:0;
  padding:0;
  background:#0b292e;
  overflow:hidden;
  cursor:zoom-in;
  min-height:260px;
}
.article-gallery-item:nth-child(1),
.article-gallery-item:nth-child(7) { grid-column:span 7; }
.article-gallery-item:nth-child(2),
.article-gallery-item:nth-child(3),
.article-gallery-item:nth-child(4),
.article-gallery-item:nth-child(5),
.article-gallery-item:nth-child(6),
.article-gallery-item:nth-child(8),
.article-gallery-item:nth-child(9),
.article-gallery-item:nth-child(10) { grid-column:span 5; }
.article-gallery-item img {
  width:100%;
  height:100%;
  min-height:260px;
  object-fit:cover;
  display:block;
  transition:transform .55s ease, filter .55s ease;
}
.article-gallery-item::after {
  content:"Открыть";
  position:absolute;
  left:18px; bottom:16px;
  padding:8px 11px;
  background:rgba(6,25,29,.8);
  color:#fff;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  opacity:0;
  transform:translateY(6px);
  transition:.3s;
}
.article-gallery-item:hover img { transform:scale(1.04); filter:saturate(.9); }
.article-gallery-item:hover::after { opacity:1; transform:none; }
.article-source {
  margin-top:70px;
  padding-top:22px;
  border-top:1px solid rgba(10,34,38,.14);
  font-size:11px;
  color:#718682;
  line-height:1.7;
}
.article-source a { color:var(--accent-deep); text-decoration:underline; text-underline-offset:3px; }
.lightbox{position:fixed;inset:0;z-index:100;display:none;place-items:center;padding:70px 90px;background:rgba(3,16,19,.96);backdrop-filter:blur(8px)}
.lightbox.is-open{display:grid}.lightbox-content{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.lightbox img{max-width:min(1200px,88vw);max-height:82vh;object-fit:contain;box-shadow:0 25px 80px rgba(0,0,0,.5);user-select:none;-webkit-user-drag:none}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.35);background:rgba(3,16,19,.55);color:#fff;cursor:pointer;transition:.25s}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:rgba(49,214,196,.18);border-color:rgba(49,214,196,.75)}.lightbox-close{top:22px;right:25px;width:46px;height:46px;font-size:24px}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:58px;height:72px;font-size:54px;font-family:Arial,sans-serif;font-weight:200;line-height:1}.lightbox-prev{left:22px}.lightbox-next{right:22px}.lightbox-prev:disabled,.lightbox-next:disabled{opacity:.22;cursor:default}.lightbox-counter{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);padding:8px 13px;color:#d9e7e3;background:rgba(3,16,19,.7);border:1px solid rgba(255,255,255,.15);font:500 10px var(--font-display);letter-spacing:.12em}
@media (max-width: 1100px) {
  .article-hero-image { right:4vw; width:40vw; }
  .article-layout { grid-template-columns:1fr; }
  .article-sidebar { position:relative; top:auto; }
  .article-sidebar p { max-width:560px; }
  .article-index { display:none; }
}
@media (max-width: 720px) {
  .article-hero {
    min-height:0;
    padding:126px 20px 0;
  }
  .article-hero-inner { padding-bottom:55px; }
  .article-kicker { margin-top:42px; }
  .article-hero h1 { font-size:clamp(38px,10.5vw,58px); }
  .article-lead { font-size:16px; margin-top:28px; }
  .article-hero-image {
    position:relative;
    right:auto; bottom:auto;
    width:calc(100% + 40px);
    height:390px;
    margin:0 -20px;
  }
  .article-facts { gap:20px; margin-top:38px; }
  .article-facts div { min-width:100px; }
  .article-facts strong { font-size:20px; }
  .article-facts span { font-size:7px; }
  .article-body { padding:76px 20px 90px; }
  .article-content .intro { font-size:19px; }
  .article-content p { font-size:16px; line-height:1.75; }
  .article-highlight { padding:28px 22px; }
  .article-highlight p { font-size:17px; }
  .article-gallery { margin-top:65px; }
  .article-gallery-head { display:block; }
  .article-gallery-head p { margin-top:18px; }
  .article-gallery-grid { grid-template-columns:1fr; }
  .article-gallery-item,
  .article-gallery-item:nth-child(n) { grid-column:span 1; min-height:260px; }
  .article-gallery-item img { min-height:260px; }
}
@media (prefers-reduced-motion: reduce) {
  .article-page [data-reveal] { opacity:1 !important; transform:none !important; }
}

@media(max-width:720px){.lightbox{padding:65px 48px}.lightbox img{max-width:94vw;max-height:76vh}.lightbox-prev,.lightbox-next{width:42px;height:58px;font-size:40px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.lightbox-close{top:12px;right:12px}.lightbox-counter{bottom:10px}}
