@font-face{font-family:Onest;src:url("../fonts/onest/onest-cyrillic.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;src:url("../fonts/onest/onest-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;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:"Geist Mono";src:url("../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}

:root {
  --font-sans: Onest, Arial, sans-serif;
  --font-mono: "Geist Mono", monospace;
  color-scheme: light;
  --mr-background: var(--surface-page, #f3f5f7);
  --mr-surface: var(--surface-secondary, #eef2f6);
  --mr-card: var(--surface-primary, #fff);
  --mr-foreground: var(--foreground, #101318);
  --mr-muted: var(--muted-foreground, #66717f);
  --mr-primary: #234c88;
  --mr-primary-foreground: #fff;
  --mr-border: var(--border, #d8dee7);
  --mr-input: var(--input, #d8dee7);
  --mr-success: #207044;
  --mr-error: #b42318;
  --mr-focus: #2563eb;
  --mr-grid: rgb(15 23 42 / .06);
  --mr-mark: rgb(37 99 235 / .16);
  --mr-shadow: 0 18px 60px rgb(20 35 55 / .08);
  --mr-container: 1400px;
}

html.dark,
html[data-theme="dark"] {
  color-scheme: dark;
  --mr-background: var(--surface-page, #101722);
  --mr-surface: var(--surface-secondary, #1b2735);
  --mr-card: var(--surface-primary, #17212e);
  --mr-foreground: var(--foreground, #f3f6fa);
  --mr-muted: var(--muted-foreground, #aab7c7);
  --mr-primary: #6ea8ff;
  --mr-primary-foreground: #08111d;
  --mr-border: var(--border, #2d3b4c);
  --mr-input: var(--input, #35465a);
  --mr-success: #69d49a;
  --mr-error: #ff8c94;
  --mr-focus: #7db1ff;
  --mr-grid: rgb(255 255 255 / .055);
  --mr-mark: rgb(110 168 255 / .19);
  --mr-shadow: 0 18px 70px rgb(0 0 0 / .22);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--mr-background);
  color: var(--mr-foreground);
  font-family: var(--font-sans, Onest, Arial, sans-serif);
  font-size: 16px;
  line-height: 1.55;
  transition: background-color .2s ease, color .2s ease;
}
a { color: inherit; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex="0"]:focus-visible {
  outline: 2px solid var(--mr-focus);
  outline-offset: 3px;
}
.mr-container { width: min(100% - 48px, var(--mr-container)); margin-inline: auto; }
.mr-visually-hidden { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important }
.mr-skip-link { position: fixed; left: 16px; top: 10px; z-index: 200; transform: translateY(-160%); background: var(--mr-primary); color: var(--mr-primary-foreground); padding: 10px 16px; text-decoration: none; }
.mr-skip-link:focus { transform: none; }

.mr-catalog-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid var(--mr-border); background: color-mix(in srgb, var(--mr-background) 92%, transparent); backdrop-filter: blur(18px); }
.mr-catalog-header__inner { min-height: 72px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 28px; }
.mr-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.mr-brand__mark { display: grid; place-items: center; width: 34px; height: 34px; background: var(--mr-primary); color: var(--mr-primary-foreground); font: 600 15px/1 "Geist Mono", monospace; }
.mr-brand strong, .mr-brand small { display: block; }
.mr-brand strong { font-size: 14px; letter-spacing: .01em; }
.mr-brand small { color: var(--mr-muted); font: 10px/1.3 "Geist Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.mr-catalog-nav { display: flex; justify-content: center; gap: clamp(14px, 2.2vw, 32px); }
.mr-catalog-nav a { color: var(--mr-muted); font-size: 13px; text-decoration: none; }
.mr-catalog-nav a:hover { color: var(--mr-foreground); }
.mr-theme-switch { align-items: center; background: var(--mr-surface); border: 1px solid var(--mr-border); border-radius: 999px; display: inline-flex; gap: 2px; padding: 3px; }
.mr-theme-option { align-items: center; background: transparent; border: 0; border-radius: 999px; color: var(--mr-muted); cursor: pointer; display: inline-flex; gap: 7px; height: 32px; justify-content: center; min-height: 32px; padding: 0; transition: background-color .18s ease, color .18s ease, box-shadow .18s ease; width: 32px; }
.mr-theme-option:hover { color: var(--mr-foreground); }
.mr-theme-option[data-active] { background: var(--mr-background); box-shadow: 0 1px 3px rgb(14 18 23 / .12); color: var(--mr-primary); }
html.dark .mr-theme-option[data-active] { background: var(--mr-card); box-shadow: 0 1px 4px rgb(0 0 0 / .32); }
.mr-theme-option:focus-visible { outline: 2px solid var(--mr-focus); outline-offset: 2px; }
.mr-theme-option svg { flex: 0 0 auto; }
.mr-theme-option-label { clip: rect(0 0 0 0); clip-path: inset(50%); font-size: 12px; font-weight: 500; height: 1px; line-height: 1; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }

.mr-field { position: relative; isolation: isolate; overflow: hidden; }
.mr-field::before { content:""; position:absolute; inset:0; z-index:-2; pointer-events:none; background-image: linear-gradient(to right,var(--mr-grid) 1px,transparent 1px),linear-gradient(to bottom,var(--mr-grid) 1px,transparent 1px); background-size:128px 128px; mask-image:linear-gradient(100deg,transparent 5%,#000 58%,#000); }
.mr-field::after { content:""; position:absolute; z-index:-1; pointer-events:none; width:340px; height:340px; right:-72px; top:46px; opacity:.8; background: linear-gradient(var(--mr-mark),var(--mr-mark)) 50% 0/1px 100% no-repeat,linear-gradient(90deg,var(--mr-mark),var(--mr-mark)) 0 50%/100% 1px no-repeat; border:1px solid var(--mr-mark); border-radius:50%; }

.mr-catalog-hero { padding: clamp(78px, 9vw, 142px) 0 92px; border-bottom: 1px solid var(--mr-border); }
.mr-eyebrow { display: flex; align-items: center; gap: 12px; color: var(--mr-muted); font: 11px/1.4 "Geist Mono", monospace; letter-spacing: .18em; text-transform: uppercase; }
.mr-eyebrow span:first-child { color: var(--mr-primary); }
.mr-eyebrow i { width: 42px; height: 1px; background: var(--mr-border); }
.mr-catalog-hero__grid { display: grid; grid-template-columns: minmax(0, 8fr) minmax(280px, 4fr); gap: 72px; align-items: end; margin-top: 34px; }
.mr-catalog-hero h1 { margin: 0; max-width: 980px; font-size: clamp(52px, 7vw, 96px); font-weight: 500; line-height: .98; letter-spacing: -.055em; }
.mr-lead { max-width: 780px; margin: 42px 0 0; color: var(--mr-muted); font-size: clamp(18px, 1.6vw, 23px); line-height: 1.55; }
.mr-summary { margin: 0; border-top: 1px solid var(--mr-border); }
.mr-summary div { display: grid; grid-template-columns: 110px 1fr; gap: 18px; padding: 15px 0; border-bottom: 1px solid var(--mr-border); }
.mr-summary dt { color: var(--mr-muted); font: 10px/1.5 "Geist Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }
.mr-summary dd { margin: 0; font-size: 13px; }

.mr-catalog-section { padding: clamp(88px, 9vw, 138px) 0; border-bottom: 1px solid var(--mr-border); }
.mr-catalog-section--muted { background: var(--mr-surface); }
.mr-section-heading { display: grid; grid-template-columns: 64px minmax(0, 7fr) minmax(240px, 4fr); gap: 24px; align-items: start; margin-bottom: 66px; }
.mr-section-heading__index { color: var(--mr-primary); font: 12px/1.4 "Geist Mono", monospace; }
.mr-kicker { margin: 0 0 14px; color: var(--mr-primary); font: 11px/1.4 "Geist Mono", monospace; letter-spacing: .18em; text-transform: uppercase; }
.mr-section-heading h2 { margin: 0; font-size: clamp(34px, 4vw, 58px); font-weight: 500; line-height: 1.06; letter-spacing: -.045em; }
.mr-section-heading > p { margin: 30px 0 0; color: var(--mr-muted); font-size: 15px; }

.mr-token-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--mr-border); margin-bottom: 32px; }
.mr-token { min-width: 0; padding: 14px; border-right: 1px solid var(--mr-border); background: var(--mr-card); }
.mr-token:last-child { border-right: 0; }
.mr-token strong, .mr-token code { display: block; }
.mr-token strong { margin-top: 12px; font-size: 13px; }
.mr-token code { overflow: hidden; color: var(--mr-muted); font: 10px/1.5 "Geist Mono", monospace; text-overflow: ellipsis; }
.mr-swatch { display:block; height:72px; border:1px solid var(--mr-border); }
.mr-swatch--background { background: var(--mr-background); }
.mr-swatch--surface { background: var(--mr-surface); }
.mr-swatch--foreground { background: var(--mr-foreground); }
.mr-swatch--muted { background: var(--mr-muted); }
.mr-swatch--primary { background: var(--mr-primary); }
.mr-swatch--border { background: var(--mr-border); }

.mr-showcase { margin-top: 32px; padding: clamp(24px, 4vw, 52px); border: 1px solid var(--mr-border); background: var(--mr-background); box-shadow: var(--mr-shadow); }
.mr-catalog-section--muted .mr-showcase { box-shadow: none; }
.mr-showcase__meta { display: grid; grid-template-columns: 54px 1fr auto; align-items: center; gap: 14px; padding-bottom: 24px; margin-bottom: 40px; border-bottom: 1px solid var(--mr-border); }
.mr-showcase__meta span, .mr-showcase__meta code { color: var(--mr-muted); font: 10px/1.4 "Geist Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.mr-showcase__meta h3 { margin: 0; font-size: 14px; font-weight: 550; }
.mr-type-specimen > div { display:grid; grid-template-columns:150px 1fr; gap:26px; align-items:baseline; padding:20px 0; border-bottom:1px solid var(--mr-border); }
.mr-type-specimen > div:last-child { border-bottom:0; }
.mr-type-specimen span { color:var(--mr-muted); font:10px/1.4 "Geist Mono",monospace; text-transform:uppercase; }
.mr-type-specimen p { margin:0; }
.mr-type-display { font-size:clamp(40px,6vw,72px); line-height:1; letter-spacing:-.05em; }
.mr-type-heading { font-size:clamp(34px,4vw,48px); line-height:1.05; letter-spacing:-.04em; }
.mr-type-title { font-size:28px; line-height:1.2; letter-spacing:-.025em; }
.mr-mono { font:12px/1.5 "Geist Mono",monospace; letter-spacing:.15em; }

.mr-breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; color:var(--mr-muted); font-size:13px; }
.mr-breadcrumbs a { text-decoration:none; }
.mr-breadcrumbs a:hover { color:var(--mr-primary); }
.mr-breadcrumbs [aria-current="page"] { color:var(--mr-foreground); }
.mr-inner-hero { display:grid; grid-template-columns:minmax(0,8fr) minmax(260px,4fr); gap:64px; padding:clamp(36px,6vw,72px); border:1px solid var(--mr-border); background:var(--mr-background); }
.mr-inner-hero__content h3 { max-width:900px; margin:30px 0 26px; font-size:clamp(40px,5vw,68px); font-weight:500; line-height:1.02; letter-spacing:-.05em; }
.mr-inner-hero__content > p { max-width:720px; margin:0; color:var(--mr-muted); font-size:18px; line-height:1.65; }
.mr-inner-hero__aside { align-self:end; border-top:1px solid var(--mr-border); }
.mr-inner-hero__aside > span { display:block; padding:15px 0; color:var(--mr-muted); font:10px/1.4 "Geist Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.mr-inner-hero__aside ol { margin:0; padding:0; list-style:none; counter-reset:item; }
.mr-inner-hero__aside li { counter-increment:item; padding:12px 0; border-top:1px solid var(--mr-border); font-size:13px; }
.mr-inner-hero__aside li::before { content:"0" counter(item); display:inline-block; width:34px; color:var(--mr-primary); font:10px/1 "Geist Mono",monospace; }
.mr-actions,.mr-component-row { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:32px; }
.mr-button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:0 20px; border:1px solid transparent; text-decoration:none; font-size:14px; font-weight:550; cursor:pointer; transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease; }
.mr-button:hover:not(:disabled) { transform:translateY(-1px); }
.mr-button--primary { background:var(--mr-primary); color:var(--mr-primary-foreground); }
.mr-button--secondary { border-color:var(--mr-border); background:var(--mr-card); color:var(--mr-foreground); }
.mr-button--secondary:hover:not(:disabled) { border-color:var(--mr-primary); color:var(--mr-primary); }
.mr-button--text { min-height:auto; padding:9px 0; color:var(--mr-foreground); }
.mr-button--text:hover { color:var(--mr-primary); }
.mr-button:disabled { opacity:.42; cursor:not-allowed; }
.mr-icon-button { display:grid; place-items:center; width:46px; height:46px; border:1px solid var(--mr-border); background:var(--mr-card); color:var(--mr-foreground); cursor:pointer; }
.mr-icon-button:hover { border-color:var(--mr-primary); color:var(--mr-primary); }
.mr-anchor-nav { display:flex; overflow-x:auto; border-bottom:1px solid var(--mr-border); scrollbar-width:thin; }
.mr-anchor-nav a { flex:0 0 auto; padding:14px 20px; border-bottom:2px solid transparent; color:var(--mr-muted); text-decoration:none; font-size:13px; }
.mr-anchor-nav a:first-child { padding-left:0; }
.mr-anchor-nav a:hover,.mr-anchor-nav a.is-active { color:var(--mr-foreground); }
.mr-anchor-nav a.is-active { border-color:var(--mr-primary); }

.mr-card-grid { display:grid; gap:1px; background:var(--mr-border); border:1px solid var(--mr-border); }
.mr-card-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.mr-card-grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mr-card { position:relative; min-height:300px; padding:34px; background:var(--mr-card); }
.mr-card h3 { margin:70px 0 16px; font-size:25px; font-weight:520; line-height:1.2; letter-spacing:-.025em; }
.mr-card p { margin:0; color:var(--mr-muted); font-size:14px; }
.mr-card a { position:absolute; left:34px; bottom:30px; color:var(--mr-foreground); font-size:13px; text-decoration:none; }
.mr-card a:hover { color:var(--mr-primary); }
.mr-card__index { position:absolute; top:30px; left:34px; color:var(--mr-primary); font:11px/1 "Geist Mono",monospace; }
.mr-card--feature { display:grid; grid-template-columns:60px 1fr; gap:16px; min-height:220px; }
.mr-card--feature h3 { margin:0 0 14px; }
.mr-card__symbol { color:var(--mr-primary); font:32px/1 "Geist Mono",monospace; }
.mr-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.mr-tags span { display:inline-flex; align-items:center; min-height:30px; padding:0 11px; border:1px solid var(--mr-border); color:var(--mr-muted); font:10px/1 "Geist Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.mr-case-card { display:grid; grid-template-columns:minmax(280px,5fr) minmax(0,7fr); border:1px solid var(--mr-border); }
.mr-case-card__visual { position:relative; min-height:430px; overflow:hidden; padding:28px; background:var(--mr-surface); color:var(--mr-primary); font:10px/1 "Geist Mono",monospace; }
.mr-case-card__visual::before { content:""; position:absolute; inset:64px; border:1px solid var(--mr-border); border-radius:50%; box-shadow:0 0 0 34px var(--mr-background),0 0 0 35px var(--mr-border); }
.mr-case-card__scheme { position:absolute; inset:50%; width:170px; height:170px; transform:translate(-50%,-50%); border:1px solid var(--mr-primary); }
.mr-case-card__scheme i { position:absolute; width:12px; height:12px; border:1px solid var(--mr-primary); background:var(--mr-surface); }
.mr-case-card__scheme i:nth-child(1){left:-6px;top:-6px}.mr-case-card__scheme i:nth-child(2){right:-6px;top:-6px}.mr-case-card__scheme i:nth-child(3){left:-6px;bottom:-6px}.mr-case-card__scheme i:nth-child(4){right:-6px;bottom:-6px}
.mr-case-card__content { padding:clamp(34px,5vw,72px); }
.mr-case-card__content .mr-tags { margin-top:0; }
.mr-case-card__content h3 { margin:34px 0 20px; font-size:clamp(30px,4vw,48px); font-weight:500; line-height:1.08; letter-spacing:-.04em; }
.mr-case-card__content > p { color:var(--mr-muted); }
.mr-case-card dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:40px 0 22px; border-top:1px solid var(--mr-border); }
.mr-case-card dl div { padding:18px 16px 0 0; }
.mr-case-card dt { color:var(--mr-muted); font:10px/1.4 "Geist Mono",monospace; text-transform:uppercase; }
.mr-case-card dd { margin:7px 0 0; font-size:13px; }
.mr-expert-card { display:grid; grid-template-columns:96px 1fr; gap:24px; padding:34px; background:var(--mr-card); }
.mr-avatar { display:grid; place-items:center; width:96px; height:112px; background:var(--mr-surface); color:var(--mr-primary); font:20px/1 "Geist Mono",monospace; }
.mr-expert-card h3 { margin:0 0 8px; font-size:24px; font-weight:520; }
.mr-expert-card p:not(.mr-kicker) { margin:0 0 14px; color:var(--mr-muted); font-size:14px; }
.mr-expert-card a { color:var(--mr-primary); font-size:13px; }
.mr-document { display:grid; grid-template-columns:56px 1fr 32px; gap:20px; align-items:center; min-height:180px; padding:34px; background:var(--mr-card); text-decoration:none; }
.mr-document__type { display:grid; place-items:center; width:56px; height:70px; border:1px solid var(--mr-border); color:var(--mr-primary); font:10px/1 "Geist Mono",monospace; }
.mr-document strong,.mr-document small { display:block; }
.mr-document strong { margin-bottom:10px; font-size:17px; }
.mr-document small { color:var(--mr-muted); font:10px/1.5 "Geist Mono",monospace; }
.mr-document__action { color:var(--mr-primary); font-size:24px; text-align:right; }

.mr-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0; border:1px solid var(--mr-border); list-style:none; }
.mr-process li { min-height:250px; padding:28px; border-right:1px solid var(--mr-border); background:var(--mr-card); }
.mr-process li:last-child { border-right:0; }
.mr-process li > span { color:var(--mr-primary); font:11px/1 "Geist Mono",monospace; }
.mr-process h3 { margin:68px 0 14px; font-size:22px; font-weight:520; }
.mr-process p { margin:0; color:var(--mr-muted); font-size:13px; }
.mr-quote { margin:0 0 30px; padding:clamp(34px,6vw,76px); border-left:3px solid var(--mr-primary); background:var(--mr-card); }
.mr-quote > p { margin:0; max-width:1000px; font-size:clamp(28px,4vw,48px); line-height:1.2; letter-spacing:-.035em; }
.mr-quote footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; margin-top:46px; padding-top:18px; border-top:1px solid var(--mr-border); color:var(--mr-muted); font:10px/1.5 "Geist Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.mr-quote cite { font-style:normal; }
.mr-table-wrap { max-width:100%; overflow-x:auto; border:1px solid var(--mr-border); background:var(--mr-card); }
.mr-table { width:100%; min-width:780px; border-collapse:collapse; text-align:left; }
.mr-table th,.mr-table td { padding:18px 20px; border-bottom:1px solid var(--mr-border); font-size:13px; }
.mr-table thead th { color:var(--mr-muted); font:10px/1.4 "Geist Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.mr-table tbody tr:last-child > * { border-bottom:0; }
.mr-table tbody th { font-weight:550; }
.mr-table tbody td { color:var(--mr-muted); }
.mr-faq { border-top:1px solid var(--mr-border); }
.mr-faq details { border-bottom:1px solid var(--mr-border); }
.mr-faq summary { display:grid; grid-template-columns:1fr 32px; gap:24px; align-items:center; padding:25px 0; font-size:18px; font-weight:520; cursor:pointer; list-style:none; }
.mr-faq summary::-webkit-details-marker { display:none; }
.mr-faq summary span { color:var(--mr-primary); font:28px/1 "Geist Mono",monospace; text-align:center; transition:transform .2s ease; }
.mr-faq details[open] summary span { transform:rotate(45deg); }
.mr-faq details div { max-width:820px; padding:0 64px 28px 0; color:var(--mr-muted); }
.mr-faq details p { margin:0; }
.mr-contact-panel { display:grid; grid-template-columns:minmax(280px,5fr) minmax(0,7fr); gap:clamp(40px,7vw,96px); padding:clamp(36px,6vw,76px); background:var(--mr-card); border:1px solid var(--mr-border); }
.mr-contact-panel > div > h3 { margin:0 0 24px; font-size:clamp(34px,4vw,54px); font-weight:500; line-height:1.08; letter-spacing:-.04em; }
.mr-contact-panel > div > p:not(.mr-kicker) { color:var(--mr-muted); }
.mr-contact-panel ul { margin:34px 0 0; padding:20px 0 0; border-top:1px solid var(--mr-border); list-style:none; }
.mr-contact-panel li { margin:8px 0; }
.mr-contact-panel a { text-decoration:none; }
.mr-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.mr-form > label > span,.mr-field-state > span { display:block; margin-bottom:8px; color:var(--mr-muted); font:10px/1.4 "Geist Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.mr-form input,.mr-form textarea,.mr-field-state input { width:100%; border:1px solid var(--mr-input); border-radius:0; background:var(--mr-background); color:var(--mr-foreground); padding:13px 14px; }
.mr-form textarea { resize:vertical; }
.mr-form input::placeholder,.mr-form textarea::placeholder { color:color-mix(in srgb,var(--mr-muted) 75%,transparent); }
.mr-form__wide { grid-column:1/-1; }
.mr-form__footer { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.mr-checkbox { display:flex; align-items:flex-start; gap:10px; color:var(--mr-muted); font-size:12px; }
.mr-checkbox input { width:16px; height:16px; margin-top:2px; accent-color:var(--mr-primary); }
.mr-form-status { padding:12px 14px; border-left:3px solid var(--mr-primary); background:var(--mr-surface); font-size:13px; }

.mr-state-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.mr-field-state input { min-height:48px; }
.mr-field-state input:disabled { opacity:.55; background:var(--mr-surface); }
.mr-field-state small { display:block; margin-top:7px; font-size:11px; }
.mr-field-state--success input { border-color:var(--mr-success); }
.mr-field-state--success small { color:var(--mr-success); }
.mr-field-state--error input { border-color:var(--mr-error); }
.mr-field-state--error small { color:var(--mr-error); }
.mr-alerts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:30px; }
.mr-alert { display:grid; gap:4px; padding:16px 18px; border-left:3px solid var(--mr-primary); background:var(--mr-surface); font-size:13px; }
.mr-alert span { color:var(--mr-muted); }
.mr-alert--success { border-color:var(--mr-success); }
.mr-alert--error { border-color:var(--mr-error); }
.mr-empty { display:grid; place-items:center; min-height:330px; padding:42px; border:1px dashed var(--mr-border); text-align:center; }
.mr-empty > span { color:var(--mr-primary); font:42px/1 "Geist Mono",monospace; }
.mr-empty h3 { margin:22px 0 8px; font-size:25px; font-weight:520; }
.mr-empty p { margin:0 0 24px; color:var(--mr-muted); }
.mr-pagination { display:flex; justify-content:center; align-items:center; gap:6px; margin-top:30px; }
.mr-pagination a,.mr-pagination span { display:grid; place-items:center; min-width:38px; height:38px; color:var(--mr-muted); text-decoration:none; }
.mr-pagination a:hover { color:var(--mr-primary); }
.mr-pagination a.is-current { background:var(--mr-primary); color:var(--mr-primary-foreground); }

.mr-catalog-footer { padding:46px 0; background:var(--mr-foreground); color:var(--mr-background); }
.mr-catalog-footer .mr-container { display:grid; grid-template-columns:1fr 2fr auto; gap:32px; align-items:center; }
.mr-catalog-footer strong,.mr-catalog-footer span { display:block; }
.mr-catalog-footer span { opacity:.65; font:10px/1.5 "Geist Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.mr-catalog-footer p { margin:0; opacity:.65; font-size:12px; }
.mr-catalog-footer a { font-size:12px; }

@media (max-width: 1100px) {
  .mr-catalog-nav { display:none; }
  .mr-catalog-header__inner { grid-template-columns:1fr auto; }
  .mr-catalog-hero__grid,.mr-inner-hero,.mr-contact-panel { grid-template-columns:1fr; }
  .mr-summary { max-width:580px; }
  .mr-section-heading { grid-template-columns:52px 1fr; }
  .mr-section-heading > p { grid-column:2; margin-top:0; max-width:620px; }
  .mr-token-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mr-token:nth-child(3) { border-right:0; }
  .mr-token:nth-child(-n+3) { border-bottom:1px solid var(--mr-border); }
  .mr-process { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mr-process li:nth-child(2) { border-right:0; }
  .mr-process li:nth-child(-n+2) { border-bottom:1px solid var(--mr-border); }
  .mr-state-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .mr-container { width:min(100% - 32px,var(--mr-container)); }
  .mr-catalog-header__inner { min-height:64px; }
  .mr-brand small { display:none; }
  .mr-catalog-hero { padding:74px 0 64px; }
  .mr-catalog-hero h1 { font-size:clamp(44px,13vw,68px); }
  .mr-catalog-hero__grid { gap:48px; }
  .mr-field::before { display:none; }
  .mr-field::after { width:210px;height:210px;right:-90px;top:30px; }
  .mr-catalog-section { padding:78px 0; }
  .mr-section-heading { grid-template-columns:1fr; gap:14px; margin-bottom:46px; }
  .mr-section-heading > p { grid-column:auto; margin-top:0; }
  .mr-showcase { margin-inline:-8px; padding:24px; }
  .mr-showcase__meta { grid-template-columns:42px 1fr; margin-bottom:30px; }
  .mr-showcase__meta code { display:none; }
  .mr-type-specimen > div { grid-template-columns:1fr; gap:8px; }
  .mr-token-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mr-token:nth-child(n) { border-right:1px solid var(--mr-border); border-bottom:1px solid var(--mr-border); }
  .mr-token:nth-child(2n) { border-right:0; }
  .mr-token:nth-last-child(-n+2) { border-bottom:0; }
  .mr-card-grid--3,.mr-card-grid--2 { grid-template-columns:1fr; }
  .mr-card { min-height:280px; }
  .mr-card--feature { min-height:210px; }
  .mr-case-card { grid-template-columns:1fr; }
  .mr-case-card__visual { min-height:300px; }
  .mr-case-card dl { grid-template-columns:1fr; }
  .mr-case-card dl div { border-bottom:1px solid var(--mr-border); padding-bottom:12px; }
  .mr-expert-card { grid-template-columns:70px 1fr; }
  .mr-avatar { width:70px;height:86px; }
  .mr-document { grid-template-columns:48px 1fr 24px; padding:24px; }
  .mr-process { grid-template-columns:1fr; }
  .mr-process li:nth-child(n) { min-height:210px; border-right:0; border-bottom:1px solid var(--mr-border); }
  .mr-process li:last-child { border-bottom:0; }
  .mr-quote footer { display:grid; }
  .mr-contact-panel { padding:30px 24px; }
  .mr-form { grid-template-columns:1fr; }
  .mr-form__wide { grid-column:auto; }
  .mr-form__footer { align-items:stretch; flex-direction:column; }
  .mr-state-grid,.mr-alerts { grid-template-columns:1fr; }
  .mr-catalog-footer .mr-container { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important; }
}

@media (forced-colors: active) {
  .mr-field::before,.mr-field::after { display:none; }
}

/* ==========================================================================
   MERCURY RUS — COMPONENT SYSTEM EXTENSION 08.2
   Portfolio Card / high-density project catalog component
   Marker: mercury-component-extension:portfolio-card:08.2
   ========================================================================== */

.mr-portfolio-card-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mr-portfolio-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
  min-width: 0;
  min-height: 244px;
  background: var(--mr-card);
  color: var(--mr-foreground);
}

.mr-portfolio-card__visual {
  position: relative;
  min-width: 0;
  min-height: 244px;
  overflow: hidden;
  border-right: 1px solid var(--mr-border);
  background:
    linear-gradient(var(--mr-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--mr-grid) 1px, transparent 1px),
    var(--mr-surface);
  background-size: 28px 28px, 28px 28px, auto;
}

.mr-portfolio-card__visual > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 244px;
  object-fit: contain;
  object-position: center;
  background: var(--mr-surface);
}

.mr-portfolio-card__placeholder {
  position: absolute;
  inset: 20px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mr-border);
}

.mr-portfolio-card__placeholder::before,
.mr-portfolio-card__placeholder::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.mr-portfolio-card__placeholder::before {
  width: 82px;
  height: 82px;
  border: 1px solid var(--mr-primary);
}

.mr-portfolio-card__placeholder::after {
  width: 34px;
  height: 34px;
  border: 1px solid var(--mr-primary);
  transform: rotate(45deg);
  opacity: .45;
}

.mr-portfolio-card__index {
  position: absolute;
  z-index: 2;
  top: 18px;
  left: 18px;
  color: var(--mr-primary);
  font: 10px/1 "Geist Mono", monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mr-portfolio-card__media-label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 16px;
  color: var(--mr-muted);
  font: 9px/1.3 "Geist Mono", monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mr-portfolio-card__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 26px 28px 24px;
}

.mr-portfolio-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  margin: 0;
  color: var(--mr-muted);
  font: 10px/1.35 "Geist Mono", monospace;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.mr-portfolio-card__meta span:first-child {
  color: var(--mr-primary);
}

.mr-portfolio-card__title {
  margin: 18px 0 10px;
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 520;
  line-height: 1.08;
  letter-spacing: -.035em;
}

.mr-portfolio-card__description {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: var(--mr-muted);
  font-size: 13px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.mr-portfolio-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 18px 0 0;
}

.mr-portfolio-card__tags span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border: 1px solid var(--mr-border);
  color: var(--mr-muted);
  font: 9px/1 "Geist Mono", monospace;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.mr-portfolio-card__link {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 10px;
  margin-top: auto;
  padding-top: 20px;
  color: var(--mr-foreground);
  font-size: 12px;
  text-decoration: none;
}

.mr-portfolio-card__link::after {
  content: "↗";
  color: var(--mr-primary);
  font: 14px/1 "Geist Mono", monospace;
}

.mr-portfolio-card__link:hover {
  color: var(--mr-primary);
}

.mr-portfolio-card:focus-within {
  box-shadow: inset 0 0 0 1px var(--mr-focus);
}

@media (max-width: 1100px) {
  .mr-card-grid.mr-portfolio-card-grid {
    grid-template-columns: 1fr;
  }

  .mr-portfolio-card {
    grid-template-columns: minmax(190px, 230px) minmax(0, 1fr);
    min-height: 232px;
  }

  .mr-portfolio-card__visual,
  .mr-portfolio-card__visual > img {
    min-height: 232px;
  }
}

@media (max-width: 767px) {
  .mr-portfolio-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .mr-portfolio-card__visual {
    min-height: 0;
    aspect-ratio: 16 / 9;
    border-right: 0;
    border-bottom: 1px solid var(--mr-border);
  }

  .mr-portfolio-card__visual > img {
    height: 100%;
    min-height: 0;
  }

  .mr-portfolio-card__content {
    min-height: 198px;
    padding: 22px 22px 20px;
  }

  .mr-portfolio-card__title {
    margin-top: 14px;
    font-size: 23px;
  }

  .mr-portfolio-card__description {
    -webkit-line-clamp: 2;
  }

  .mr-portfolio-card__tags {
    margin-top: 14px;
  }

  .mr-portfolio-card__link {
    padding-top: 16px;
  }
}
