@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url("../fonts/manrope-cyrillic.woff2") format("woff2");
}

:root {
  color-scheme: dark;
  --mp-bg: #000;
  --mp-surface: #101114;
  --mp-surface-2: #191b20;
  --mp-red: #e31e25;
  --mp-red-active: #ff343b;
  --mp-text: #fff;
  --mp-muted: #b8bec9;
  --mp-border: #2c3440;
  --mp-success: #00c853;
  --mp-warning: #ff9800;
  --mp-danger: #f44336;
  --mp-content: 780px;
  --mp-wide: 1680px;
  --mp-header: 5rem;
  --mp-radius: .5rem;
  --mp-ease: cubic-bezier(.2, .8, .2, 1);
}

:root[data-theme="light"] {
  color-scheme: light;
  --mp-bg: #f6f6f4;
  --mp-surface: #fff;
  --mp-surface-2: #ecedea;
  --mp-text: #111214;
  --mp-muted: #535963;
  --mp-border: #d6d8dc;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-wrap: anywhere;
  background: var(--mp-bg);
  color: var(--mp-text);
  font-family: Manrope, Arial, sans-serif;
  text-rendering: optimizeLegibility;
}
img, video, iframe { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
a { color: inherit; text-underline-offset: .2em; }
a:hover { color: var(--mp-red); }
:focus-visible { outline: 3px solid var(--mp-red); outline-offset: 3px; }
::selection { background: var(--mp-red); color: #fff; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  z-index: 100000; top: .75rem; left: .75rem; width: auto; height: auto;
  clip: auto; margin: 0; padding: .75rem 1rem; background: var(--mp-text); color: var(--mp-bg);
}

.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0; }
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { width: min(100%, var(--mp-content)); }
.is-layout-constrained > .alignwide { width: min(100%, var(--mp-wide)); }
.mp-section { padding-block: clamp(4rem, 8vw, 8rem); }
.mp-kicker {
  display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1rem;
  color: var(--mp-red); font-size: .75rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
}
.mp-kicker::before { content: ""; width: 2rem; height: 2px; background: currentColor; }
.mp-display { max-width: 18ch; font-size: clamp(2.25rem, 5vw, 5.5rem); text-transform: uppercase; }
.mp-section-title { max-width: 20ch; font-size: clamp(2rem, 3.5vw, 4rem); text-transform: uppercase; }
.mp-muted { color: var(--mp-muted); }
.mp-surface { background: var(--mp-surface); }
.mp-rule { border-top: 1px solid var(--mp-border); }

.mp-site-header {
  position: sticky; z-index: 100; top: var(--wp-admin--admin-bar--height, 0);
  min-height: var(--mp-header); border-bottom: 1px solid color-mix(in srgb, var(--mp-border), transparent 15%);
  background: color-mix(in srgb, var(--mp-bg), transparent 8%); backdrop-filter: blur(18px);
}
.mp-site-header__inner { min-height: var(--mp-header); gap: clamp(1rem, 3vw, 2.5rem); }
.mp-site-header .wp-block-site-logo img { display: block; width: clamp(10rem, 17vw, 15rem); max-height: 3rem; object-fit: contain; }
.mp-site-header .wp-block-navigation { margin-left: auto; }
.mp-site-header .wp-block-navigation-item__content { padding-block: 1rem; }
.mp-site-header .wp-block-search { width: min(16rem, 22vw); }
.mp-site-header .wp-block-search__input {
  min-height: 2.75rem; border: 1px solid var(--mp-border); border-radius: .25rem; background: var(--mp-surface); color: var(--mp-text);
}
.mp-site-header .wp-block-search__button { min-width: 2.75rem; padding: .65rem; background: var(--mp-red); color: #fff; }
.mp-theme-toggle {
  display: inline-grid; place-items: center; flex: 0 0 auto; min-width: 2.75rem; min-height: 2.75rem;
  border: 1px solid var(--mp-border); border-radius: .25rem; background: transparent; color: var(--mp-text); cursor: pointer;
}
.mp-theme-toggle:hover { border-color: var(--mp-red); color: var(--mp-red); }

.motopuls-hero {
  position: relative; isolation: isolate; min-height: calc(100svh - var(--mp-header));
  display: grid; align-items: center; overflow: clip; padding-block: clamp(3rem, 7vw, 7rem);
}
.motopuls-hero::before {
  content: ""; position: absolute; z-index: -2; inset: 0;
  background:
    radial-gradient(circle at 82% 25%, rgba(227, 30, 37, .24), transparent 32%),
    linear-gradient(115deg, transparent 0 47%, rgba(255,255,255,.035) 47% 47.2%, transparent 47.2%);
}
.motopuls-hero::after {
  content: ""; position: absolute; z-index: -1; inset: 0; opacity: .18;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 5rem 5rem; mask-image: linear-gradient(to right, transparent, #000 55%);
}
.motopuls-hero__grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(32rem, 1.08fr); gap: clamp(2rem, 6vw, 7rem); align-items: center; }
.motopuls-hero__copy p:not(.mp-kicker) { max-width: 55ch; color: var(--mp-muted); }
.motopuls-hero__chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2rem; }
.motopuls-hero__chips .wp-element-button { border: 1px solid var(--mp-border); background: transparent; color: var(--mp-text); }
.motopuls-hero__chips .wp-element-button:hover { border-color: var(--mp-red); background: var(--mp-red); }

.motopuls-ai-chat {
  min-width: 0; border: 1px solid var(--mp-border); border-radius: 1rem; overflow: hidden;
  background: color-mix(in srgb, var(--mp-surface), transparent 4%); box-shadow: 0 30px 100px rgba(0,0,0,.42);
}
.motopuls-ai-chat__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.25rem; border-bottom: 1px solid var(--mp-border); }
.motopuls-ai-chat__brand { display: flex; align-items: center; gap: .75rem; font-weight: 800; text-transform: uppercase; }
.motopuls-ai-chat__mark { width: 2rem; height: 2rem; border-radius: 50%; background: var(--mp-red); box-shadow: 0 0 0 .35rem rgba(227,30,37,.14); }
.motopuls-ai-chat__status { display: inline-flex; align-items: center; gap: .45rem; color: var(--mp-muted); font-size: .75rem; }
.motopuls-ai-chat__status::before { content: ""; width: .5rem; height: .5rem; border-radius: 50%; background: var(--mp-success); }
.motopuls-ai-chat[data-available="false"] .motopuls-ai-chat__status::before { background: var(--mp-warning); }
.motopuls-ai-chat__messages { min-height: 19rem; max-height: min(43vh, 31rem); overflow-y: auto; padding: 1.25rem; scrollbar-color: var(--mp-border) transparent; }
.motopuls-ai-message { max-width: 88%; margin: 0 0 1rem; padding: .9rem 1rem; border-radius: .25rem .8rem .8rem .8rem; background: var(--mp-surface-2); white-space: pre-wrap; }
.motopuls-ai-message[data-role="user"] { margin-left: auto; border-radius: .8rem .25rem .8rem .8rem; background: var(--mp-red); color: #fff; }
.motopuls-ai-message__actions { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .65rem; }
.motopuls-ai-message__actions button { min-height: 2.25rem; padding: .35rem .55rem; border: 1px solid var(--mp-border); border-radius: .25rem; background: transparent; color: var(--mp-muted); cursor: pointer; }
.motopuls-ai-message__actions button:hover { color: var(--mp-text); border-color: var(--mp-red); }
.motopuls-ai-chat__quick { display: flex; gap: .45rem; overflow-x: auto; padding: 0 1.25rem 1rem; }
.motopuls-ai-chat__quick button { flex: 0 0 auto; min-height: 2.5rem; padding: .45rem .75rem; border: 1px solid var(--mp-border); border-radius: 999px; background: transparent; color: var(--mp-muted); cursor: pointer; }
.motopuls-ai-chat__quick button:hover { border-color: var(--mp-red); color: var(--mp-text); }
.motopuls-ai-chat__form { display: grid; grid-template-columns: 1fr auto auto; gap: .5rem; padding: 1rem 1.25rem 1.25rem; border-top: 1px solid var(--mp-border); }
.motopuls-ai-chat__input { width: 100%; min-height: 3rem; max-height: 9rem; resize: vertical; padding: .8rem 1rem; border: 1px solid var(--mp-border); border-radius: .35rem; background: var(--mp-bg); color: var(--mp-text); }
.motopuls-ai-chat__button { min-width: 3rem; min-height: 3rem; border: 1px solid var(--mp-border); border-radius: .35rem; background: transparent; color: var(--mp-text); cursor: pointer; }
.motopuls-ai-chat__button--send { border-color: var(--mp-red); background: var(--mp-red); color: #fff; }
.motopuls-ai-chat__button[disabled] { cursor: not-allowed; opacity: .5; }
.motopuls-ai-chat__button[data-state="listening"] { border-color: var(--mp-red); color: var(--mp-red); animation: mp-pulse 1.2s infinite; }
.motopuls-ai-chat__notice { min-height: 1.5rem; margin: -.6rem 1.25rem .75rem; color: var(--mp-muted); font-size: .75rem; }
.motopuls-ai-chat__typing::after { content: "•••"; letter-spacing: .2em; animation: mp-fade 1s infinite alternate; }

.mp-editorial-grid .wp-block-post-template,
.motopuls-directory__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; padding: 1px; background: var(--mp-border); }
.motopuls-directory__filters { display: flex; flex-wrap: wrap; align-items: end; gap: .75rem; margin: 0 0 1.5rem; padding: 1rem; border: 1px solid var(--mp-border); background: var(--mp-surface); }
.motopuls-directory__filters label { display: grid; flex: 1 1 13rem; gap: .35rem; color: var(--mp-muted); font-size: .75rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.motopuls-directory__filters input, .motopuls-directory__filters select { min-height: 46px; border: 1px solid var(--mp-border); border-radius: var(--mp-radius-sm); background: var(--mp-bg); color: var(--mp-text); padding: .65rem .8rem; }
.motopuls-directory__filters button { min-height: 46px; }
.motopuls-directory__filters > a { padding: .75rem; font-size: .875rem; font-weight: 800; }
.mp-editorial-card,
.motopuls-directory__card { display: flex; flex-direction: column; min-width: 0; height: 100%; background: var(--mp-bg); transition: background .25s var(--mp-ease); }
.mp-editorial-card:hover,
.motopuls-directory__card:hover { background: var(--mp-surface); }
.mp-editorial-card .wp-block-post-featured-image,
.motopuls-directory__image { overflow: hidden; aspect-ratio: 3 / 2; margin: 0; background: var(--mp-surface-2); }
.mp-editorial-card img,
.motopuls-directory__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--mp-ease); }
.mp-editorial-card:hover img,
.motopuls-directory__card:hover img { transform: scale(1.035); }
.mp-editorial-card__body,
.motopuls-directory__body { display: flex; flex: 1; flex-direction: column; padding: 1.25rem; }
.motopuls-directory__meta { color: var(--mp-red); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.motopuls-directory__title { margin: .55rem 0; font-size: 1.25rem; line-height: 1.15; }
.motopuls-directory__excerpt { color: var(--mp-muted); font-size: .9375rem; }
.motopuls-directory__link { margin-top: auto; padding-top: 1rem; font-size: .8rem; font-weight: 800; text-transform: uppercase; }
.motopuls-directory__empty { padding: 2rem; border: 1px dashed var(--mp-border); background: var(--mp-surface); color: var(--mp-muted); }

.motopuls-breadcrumbs { padding-block: 1rem; color: var(--mp-muted); font-size: .8125rem; }
.motopuls-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.motopuls-breadcrumbs li:not(:last-child)::after { content: "/"; margin-left: .45rem; color: var(--mp-border); }

.motopuls-submission { padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--mp-border); border-radius: .5rem; background: var(--mp-surface); }
.motopuls-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.motopuls-form__field { display: grid; gap: .4rem; }
.motopuls-form__field--wide { grid-column: 1 / -1; }
.motopuls-form label { font-size: .875rem; font-weight: 700; }
.motopuls-form input, .motopuls-form select, .motopuls-form textarea {
  width: 100%; min-height: 3rem; padding: .75rem .85rem; border: 1px solid var(--mp-border); border-radius: .25rem; background: var(--mp-bg); color: var(--mp-text);
}
.motopuls-form textarea { min-height: 8rem; resize: vertical; }
.motopuls-form__help, .motopuls-form__status { color: var(--mp-muted); font-size: .8rem; }
.motopuls-form__actions { grid-column: 1 / -1; display: flex; align-items: center; gap: 1rem; }
.motopuls-form__submit { min-height: 3rem; padding: .75rem 1.25rem; border: 0; border-radius: .25rem; background: var(--mp-red); color: #fff; font-weight: 800; cursor: pointer; }

.motopuls-map { min-height: 26rem; border: 1px solid var(--mp-border); border-radius: .5rem; overflow: hidden; background: var(--mp-surface); }
.motopuls-map__canvas { min-height: 24rem; }
.motopuls-map__fallback { display: grid; place-items: center; gap: .75rem; min-height: 26rem; padding: 2rem; text-align: center; }
.motopuls-map__load { min-height: 2.75rem; padding: .65rem 1rem; border: 1px solid var(--mp-red); border-radius: .25rem; background: var(--mp-red); color: #fff; font-weight: 800; cursor: pointer; }

.mp-article-shell { padding-block: clamp(2.5rem, 7vw, 7rem); }
.mp-article-meta { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; color: var(--mp-muted); font-size: .875rem; }
.mp-article-content > * + * { margin-block-start: 1.25em; }
.mp-article-content :where(h2, h3) { margin-block-start: 1.8em; }
.mp-article-content blockquote { margin-inline: 0; padding-left: 1.25rem; border-left: .25rem solid var(--mp-red); color: var(--mp-muted); }

.mp-site-footer { padding-block: clamp(3rem, 6vw, 6rem) 2rem; border-top: 1px solid var(--mp-border); background: var(--mp-surface); }
.mp-site-footer__grid { display: grid; grid-template-columns: minmax(16rem, 1.5fr) repeat(3, minmax(9rem, 1fr)); gap: 2rem; }
.mp-site-footer .wp-block-navigation { align-items: flex-start; }
.mp-site-footer__legal { margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid var(--mp-border); color: var(--mp-muted); font-size: .75rem; }

.mp-404 { min-height: 65svh; display: grid; place-items: center; text-align: center; }
.mp-404__code { margin: 0; color: var(--mp-red); font-size: clamp(6rem, 20vw, 15rem); font-weight: 800; line-height: .8; }
.mp-404__home .wp-block-navigation-item__content{display:inline-flex;padding:.8rem 1.2rem;border-radius:var(--wp--custom--radius--small);background:var(--mp-red);color:#fff;text-decoration:none;font-weight:700}

@keyframes mp-pulse { 50% { box-shadow: 0 0 0 .55rem rgba(227,30,37,.15); } }
@keyframes mp-fade { to { opacity: .35; } }

@media (max-width: 1100px) {
  .mp-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .mp-site-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
  .motopuls-hero__grid { grid-template-columns: minmax(0, .82fr) minmax(28rem, 1.18fr); gap: 2rem; }
  .mp-editorial-grid .wp-block-post-template, .motopuls-directory__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mp-site-header .wp-block-search { display: none; }
}

@media (max-width: 782px) {
  :root { --mp-header: 4rem; }
  .motopuls-hero { min-height: auto; padding-block: 2.5rem 4rem; }
  .motopuls-hero__grid { grid-template-columns: 1fr; }
  .motopuls-hero__copy { display: contents; }
  .motopuls-hero__copy .mp-kicker, .motopuls-hero__copy .mp-display, .motopuls-hero__copy > p { order: -2; }
  .motopuls-hero__copy .motopuls-hero__chips { order: 2; }
  .motopuls-ai-chat { order: -1; }
  .motopuls-ai-chat__messages { min-height: 14rem; max-height: 20rem; }
  .mp-site-header__inner { flex-wrap: nowrap !important; }
  .mp-site-header .wp-block-site-logo img { width: 10rem; }
  .mp-site-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .motopuls-ai-chat__form { grid-template-columns: 1fr auto; }
  .motopuls-ai-chat__input { grid-column: 1 / -1; }
  .mp-editorial-grid .wp-block-post-template, .motopuls-directory__grid, .motopuls-form { grid-template-columns: 1fr; }
  .motopuls-form__field--wide, .motopuls-form__actions { grid-column: auto; }
  .mp-site-footer__grid { grid-template-columns: 1fr; }
}

@media (min-width: 2200px) {
  :root { --mp-wide: 1800px; }
  body { font-size: clamp(1rem, .25vw + .75rem, 1.25rem); }
}

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

@media print {
  .mp-site-header, .mp-site-footer, .motopuls-ai-chat, .motopuls-map { display: none !important; }
  body { background: #fff; color: #000; }
  a { color: #000; text-decoration: underline; }
}
