/* Hallmark · shape: programme prospectus · genre: editorial · theme: brand
 * brand: вКлючи (PDF supplied 2026-11-04) · paper: #20211d · accent: #d8fa65 · display: Manrope · body: Manrope · hero: Poster · nav: edge aligned · footer: colophon · signature: an oversized programme title against a lime meeting date
 * axes: dark/geometric-sans/chromatic-lime · posture: Committed · contrast: pass · fold: pass · copy: verbatim · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E4 S4 R4 V3 · weakest: V, replaced generic feature cards with the real meeting programme */
/* Hallmark · waive 77 · registration form holds eleven verbatim questions at 760px · the narrower questionnaire measure supports reading long Russian labels without spreading fields across the page */
@import url("./tokens.css");
@import url("./base.css");
@font-face { font-family: "Manrope"; src: url("assets/Manrope.ttf") format("truetype"); font-weight: 200 800; font-display: swap; }
.wrap { max-width: var(--container); margin-inline: auto; padding-inline: var(--space-xl); }
header { padding-block: var(--space-lg); }
.nav { display: flex; justify-content: space-between; align-items: center; gap: var(--space-lg); }
.logo { width: 144px; height: auto; }
nav { display: flex; align-items: center; gap: var(--space-xl); }
a { text-decoration: none; } a:hover { text-decoration: underline; } a:active { opacity: .75; }
.nav a { min-height: 44px; display: inline-flex; align-items: center; font-size: var(--text-sm); }
.hero { padding-block: var(--space-lg) var(--space-xl); }
.hero-main { background: var(--color-ink); color: var(--color-field-ink); padding: var(--space-xl); border-radius: var(--radius-card); }
h1 { font-size: clamp(3rem, 6.2vw, 5.6rem); line-height: 1.05; max-width: 17ch; }
.hero-bottom { display: flex; align-items: end; justify-content: space-between; gap: var(--space-xl); margin-top: var(--space-xl); }
.hero-bottom p { max-width: 38ch; font-size: var(--text-lead); }
.btn { display: inline-flex; justify-content: center; align-items: center; min-height: 52px; padding: 0 var(--space-lg); border: 1px solid var(--color-accent); border-radius: var(--radius-pill); background: var(--color-accent); color: var(--color-accent-ink); white-space: nowrap; cursor: pointer; font-weight: 700; text-decoration: none; }
.btn:hover { background: var(--color-ink); text-decoration: none; } .btn:active { transform: translateY(1px); }
.btn:disabled { opacity: .55; cursor: not-allowed; } .btn[aria-busy="true"] { cursor: progress; }
.btn:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; }
.facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-xs); margin-top: var(--space-xs); }
.fact { padding: var(--space-lg) var(--space-xl); border-radius: var(--radius-card); background: var(--color-paper-2); color: var(--color-ink); }
.fact:first-child { background: var(--color-field); color: var(--color-field-ink); }
.fact strong { display: block; font-size: clamp(1.5rem,2.5vw,2.2rem); font-weight: 400; line-height: 1.15; margin-bottom: var(--space-sm); font-variant-numeric: tabular-nums; }
.section { padding-block: var(--space-3xl); }
.split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--space-2xl); }
h2 { font-size: clamp(2.1rem,3.8vw,3.6rem); max-width: 18ch; } h3 { font-weight: 400; }
.copy { font-size: var(--text-lead); } .copy p + p { margin-top: var(--space-lg); }
.programme { background: var(--color-paper-2); color: var(--color-ink); }
.schedule { margin-top: var(--space-2xl); }
.meeting { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--space-2xl); padding-block: var(--space-xl); border-top: 1px solid var(--color-rule); }
.meeting p { max-width: 45ch; }
.statement { background: var(--color-ink); color: var(--color-field-ink); border-radius: var(--radius-card); padding: var(--space-2xl); }
.statement h2 { max-width: 27ch; } .statement p { margin-top: var(--space-lg); max-width: 52ch; font-size: var(--text-lead); }
.venue { background: var(--color-field); color: var(--color-field-ink); } .venue h2 { max-width: 21ch; }
.venue p { font-size: var(--text-lead); } .venue p + p { margin-top: var(--space-lg); }
.form-head { max-width: 52ch; margin-bottom: var(--space-2xl); } .form-head p { margin-top: var(--space-lg); }
form { max-width: 760px; } .field { margin-bottom: var(--space-xl); } label { display: block; margin-bottom: var(--space-xs); }
input, textarea, select { width: 100%; min-height: 52px; padding: var(--space-sm) var(--space-md); background: var(--color-paper-2); color: var(--color-ink); border: 1px solid var(--color-muted); border-radius: 12px; outline: 2px solid transparent; outline-offset: -3px; }
input:hover, textarea:hover, select:hover { background: var(--color-paper-3); } input:focus-visible,textarea:focus-visible,select:focus-visible { outline-color: var(--color-field); }
input:active,textarea:active,select:active { border-color: var(--color-field); } input:disabled,textarea:disabled,select:disabled { opacity: .55; cursor: not-allowed; }
input[aria-invalid="true"] { border-color: var(--color-error); } textarea { min-height: 104px; resize: vertical; }
.help { min-height: 1lh; font-size: var(--text-sm); color: var(--color-muted); margin-top: var(--space-xs); }
.check { display: flex; align-items: start; gap: var(--space-sm); } .check input { width: 20px; min-height: 20px; accent-color: var(--color-accent); margin: var(--space-2xs) 0 0; flex-shrink: 0; }
.notice { color: var(--color-ink-2); margin-bottom: var(--space-lg); } .form-result { min-height: 2lh; margin-top: var(--space-md); }
footer { padding-block: var(--space-2xl); background: var(--color-paper-2); color: var(--color-ink); } .foot { display: flex; justify-content: space-between; gap: var(--space-xl); } footer p { max-width: 45ch; } footer a { display: inline-flex; align-items: center; min-height: 44px; }
@media(max-width: 700px) { .wrap { padding-inline: var(--space-md); } header { padding-block: var(--space-md); } .logo { width: 110px; } nav { gap: var(--space-md); } nav a:first-child { display: none; } .hero-main { padding: var(--space-lg); } h1 { font-size: clamp(2.5rem,10vw,4rem); } .hero-bottom { flex-direction: column; align-items: start; gap: var(--space-lg); } .facts { grid-template-columns: minmax(0,1fr); } .fact { padding: var(--space-lg); } .fact strong { font-size: 1.6rem; } .split,.meeting { grid-template-columns: minmax(0,1fr); gap: var(--space-lg); } .section { padding-block: var(--space-2xl); } .statement { padding: var(--space-lg); } .foot { flex-direction: column; } }
@media(prefers-reduced-motion: reduce) { .btn:active { transform: none; } }
.hero-main .btn:focus-visible { outline-color: var(--color-field-ink); }
form .btn:focus-visible { outline-color: var(--color-ink); }
.split h2 { font-size: clamp(2.1rem,5vw,4.5rem); }
.form-step h3 { margin-bottom: var(--space-xl); font-size: var(--text-2xl); }
fieldset { border: 0; padding: 0; margin: 0; min-width: 0; } legend { margin-bottom: var(--space-md); } .required { display: inline-block; color: var(--color-muted); font-size: var(--text-sm); }
.options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-xs); }
.option { display: flex; align-items: center; gap: var(--space-sm); margin: 0; min-height: 52px; padding: var(--space-sm) var(--space-md); border: 1px solid var(--color-rule); border-radius: 12px; cursor: pointer; }
.option:hover { background: var(--color-paper-3); } .option:has(input:checked) { border-color: var(--color-field); background: var(--color-paper-3); } .option:has(input:focus-visible) { outline: 2px solid var(--color-field); outline-offset: 2px; }
.option input { width: 20px; height: 20px; min-height: 20px; margin: 0; accent-color: var(--color-accent); flex-shrink: 0; }
.step-actions { display: flex; gap: var(--space-md); align-items: center; } .back { min-height: 52px; padding: 0 var(--space-lg); color: var(--color-ink); background: transparent; border: 1px solid var(--color-muted); border-radius: var(--radius-pill); cursor: pointer; } .back:hover { background: var(--color-paper-2); } .back:focus-visible { outline: 2px solid var(--color-field); outline-offset: 2px; }
.step-count { margin-bottom: var(--space-lg); color: var(--color-ink-2); } .form-step.enter { animation: step-enter 220ms ease-out; } @keyframes step-enter { from { opacity: .6; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width: 700px) { .options { grid-template-columns: minmax(0,1fr); } }
@media (prefers-reduced-motion: reduce) { .form-step.enter { animation: none; } }

.consent-copy { margin-top: var(--space-md); max-width: 65ch; } .consent-copy a { text-decoration: underline; }
.policy { max-width: 75ch; margin-block: var(--space-xl); } .policy p { margin-bottom: 0; white-space: pre-wrap; }

.clause-break { display: inline; }

.policy-heading { display: block; margin-top: var(--space-xl); margin-bottom: var(--space-md); font-size: calc(1em + 4px); font-weight: 700; line-height: 1.3; }
