/* PROMOMONDO_RUSSIA_HUBS_V1 */
.pm-language-gate-page body {
  min-height: 100vh;
  margin: 0;
  background: #f4f7f5;
}
.pm-language-gate {
  display: grid;
  min-height: 100vh;
  place-content: center;
  justify-items: start;
  gap: 18px;
  width: min(100% - 32px, 680px);
  margin: 0 auto;
}
.pm-language-gate h1 {
  max-width: 680px;
  margin: 8px 0 0;
  font-size: clamp(2.35rem, 7vw, 4.5rem);
  line-height: 1.02;
  letter-spacing: 0;
}
.pm-language-gate p { margin: 0; color: #52605b; }
.pm-language-gate-actions { display: flex; flex-wrap: wrap; gap: 10px; }

.locale-home .home-process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.locale-home .home-process-card {
  min-height: 220px;
  padding: 24px;
  border: 1px solid #d8dfdb;
  border-radius: 8px;
  background: #fff;
}
.locale-home .home-process-card > span {
  display: grid;
  width: 38px;
  height: 38px;
  margin-bottom: 34px;
  place-items: center;
  border-radius: 50%;
  background: #126a4b;
  color: #fff;
  font-weight: 800;
}
.locale-home .home-process-card h3 { margin: 0 0 10px; font-size: 1.16rem; letter-spacing: 0; }
.locale-home .home-process-card p { margin: 0; color: #58645f; }
.locale-home .market-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.locale-home .market-card { border-radius: 8px; }
.locale-home .market-language-links { grid-template-columns: 1fr; }
.locale-home .market-language-link {
  min-height: 50px;
  align-items: center;
  border-radius: 6px;
  white-space: normal;
}
.locale-home .market-language-link span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}
.locale-home .market-store-list { flex-wrap: wrap; }
.locale-ar :is(h1, h2, h3, p, a, summary, strong) { letter-spacing: 0; }

.russia-country {
  --ch-accent: #176b52;
  --ch-dark: #104d3e;
  --ch-soft: #eef5f1;
}
.russia-country .country-hero::after { display: none; }
.russia-country .country-facts,
.russia-country .country-store-card,
.russia-country .country-factor-card { border-radius: 8px; }
.russia-country .country-hero h1,
.russia-country .country-section-heading h2,
.russia-country .country-editorial-grid h2 { letter-spacing: 0; }
.ru-country-store-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ru-country-store-card {
  grid-template-rows: 1fr auto;
  gap: 10px;
  padding: 18px 14px 16px;
}
.ru-country-store-name { font-size: .96rem; font-weight: 800; }
.ru-country-store-card::after { display: none; }

.ru-store-page {
  --ru-ink: #18211e;
  --ru-muted: #56615d;
  --ru-line: #d8dfdb;
  --ru-soft: #f2f6f3;
  background: #fafbf9;
  color: var(--ru-ink);
}
.ru-store-page :is(h1, h2, h3, p, a, span, strong, summary) { letter-spacing: 0; }
.ru-store-page .site-header { background: rgba(255,255,255,.97); }
.ru-store-page main:focus { outline: 0; }
.ru-store-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid var(--ru-line);
  background: #edf3ef url("/assets/promomondo-hero.webp") center / cover no-repeat;
}
.ru-store-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: rgba(247,250,248,.9);
  content: "";
}
.ru-store-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(220px, .6fr);
  min-height: 510px;
  align-items: center;
  gap: clamp(36px, 7vw, 90px);
  padding-block: 64px;
}
.ru-store-page .breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 30px;
  color: var(--ru-muted);
}
.ru-store-page .breadcrumbs a { text-decoration: underline; text-underline-offset: 3px; }
.ru-kicker {
  margin: 0 0 12px;
  color: #176b52;
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
}
.ru-store-hero h1 {
  max-width: 850px;
  margin: 0 0 22px;
  font-size: clamp(2.35rem, 5.2vw, 4.5rem);
  line-height: 1;
  letter-spacing: 0;
}
.ru-store-lead {
  max-width: 760px;
  margin: 0 0 26px;
  color: #3f4b47;
  font-size: clamp(1.02rem, 1.5vw, 1.2rem);
}
.ru-store-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.ru-store-actions .button { border-radius: 6px; background: #176b52; }
.ru-store-actions .button:hover { background: #104d3e; }
.ru-store-actions .button.secondary { border-color: #aebbb5; background: #fff; }
.ru-store-brand-media {
  display: grid;
  min-height: 210px;
  place-items: center;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.92);
  border-radius: 8px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 16px 44px rgba(24,33,30,.12);
}
.ru-store-brand-media img { width: min(100%, 240px); height: auto; }
.ru-store-section { padding-block: 76px; scroll-margin-top: 80px; }
.ru-store-section-alt { border-block: 1px solid var(--ru-line); background: #fff; }
.ru-section-head { max-width: 780px; margin-bottom: 34px; }
.ru-section-head h2 {
  margin: 0 0 12px;
  font-size: clamp(1.9rem, 3.4vw, 3rem);
  line-height: 1.08;
  letter-spacing: 0;
}
.ru-section-head p:last-child { color: var(--ru-muted); }
.ru-query-list { display: flex; flex-wrap: wrap; gap: 10px; }
.ru-query-list span {
  padding: 9px 12px;
  border: 1px solid #bdc9c3;
  border-radius: 4px;
  background: #fff;
  color: #26332e;
  font-weight: 700;
}
.store-skip-link {
  position: fixed;
  z-index: 1000;
  top: -100px;
  left: 16px;
  padding: 11px 15px;
  border-radius: 6px;
  background: #104d3e;
  color: #fff;
  font-weight: 800;
}
.store-skip-link:focus { top: 12px; }
.ru-live-status {
  --pm-brand: #176b52;
  --pm-brand-soft: #e4f0ea;
  display: grid;
  max-width: 1060px;
  gap: 16px;
  margin-top: 16px;
  padding-block: 18px;
  border-block: 1px solid #d9e5e1;
}
.ru-live-status .pm-store-live-status__head {
  display: flex;
  min-width: 0;
  align-items: center;
}
.ru-live-status .pm-store-live-status__date {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 9px;
  margin: 0;
  color: #245341;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.ru-live-status .pm-store-live-status__date::before {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: var(--pm-brand);
  box-shadow: 0 0 0 4px rgba(23, 107, 82, .12);
  content: "";
}
.ru-live-status .pm-store-live-status__metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-block: 1px solid #e4ece9;
  background: #fff;
}
.ru-live-status .pm-store-live-status__metric {
  display: grid;
  min-width: 0;
  gap: 3px;
  align-content: start;
  padding: 16px 18px;
}
.ru-live-status .pm-store-live-status__metric + .pm-store-live-status__metric {
  border-inline-start: 1px solid #e4ece9;
}
.ru-live-status .pm-store-live-status__label,
.ru-live-status .pm-store-live-status__qualifier {
  color: #5c686b;
  font-size: .84rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.ru-live-status .pm-store-live-status__value {
  color: #172a2f;
  font-size: 1.65rem;
  line-height: 1;
}
.ru-live-status .pm-store-live-status__notice {
  display: grid;
  gap: 4px;
  padding: 13px 15px;
  border-inline-start: 4px solid var(--pm-brand);
  background: #f3f8f5;
}
.ru-live-status .pm-store-live-status__notice :is(strong, span) { overflow-wrap: anywhere; }
.ru-live-status .pm-store-live-status__scope {
  margin: 0;
  color: #536368;
  font-size: .9rem;
  line-height: 1.5;
}
.ru-check-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.ru-check-card {
  min-height: 250px;
  padding: 24px;
  border: 1px solid var(--ru-line);
  border-top: 4px solid #176b52;
  border-radius: 0 0 8px 8px;
  background: #fff;
}
.ru-check-card > span {
  display: block;
  margin-bottom: 34px;
  color: #176b52;
  font-size: .8rem;
  font-weight: 800;
  text-transform: uppercase;
}
.ru-check-card h3 { margin: 0 0 10px; font-size: 1.14rem; }
.ru-check-card p { margin: 0; color: var(--ru-muted); }
.ru-editorial-grid {
  display: grid;
  grid-template-columns: minmax(250px, .7fr) minmax(0, 1.3fr);
  gap: clamp(40px, 8vw, 100px);
}
.ru-editorial-copy { color: var(--ru-muted); font-size: 1.04rem; }
.ru-editorial-copy a { color: #104d3e; font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }
.ru-faq { max-width: 900px; }
.ru-faq details { border-top: 1px solid var(--ru-line); }
.ru-faq details:last-child { border-bottom: 1px solid var(--ru-line); }
.ru-faq summary { padding: 21px 44px 21px 0; font-size: 1.06rem; font-weight: 800; cursor: pointer; }
.ru-faq details p { max-width: 760px; margin: 0; padding: 0 44px 22px 0; color: var(--ru-muted); }

@media (max-width: 960px) {
  .locale-home .market-grid,
  .locale-home .home-process-grid { grid-template-columns: 1fr; }
  .ru-store-hero-grid { grid-template-columns: 1fr; min-height: 0; }
  .ru-store-brand-media { width: min(100%, 520px); min-height: 170px; }
  .ru-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ru-editorial-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .ru-country-store-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ru-store-page .site-header { position: static; }
  .ru-store-section { padding-block: 58px; scroll-margin-top: 12px; }
  .ru-store-hero-grid { padding-block: 48px; }
  .ru-store-hero h1 { font-size: clamp(2.2rem, 12vw, 3.25rem); }
  .ru-check-grid { grid-template-columns: 1fr; }
  .ru-check-card { min-height: 0; }
  .ru-live-status .pm-store-live-status__metrics { grid-template-columns: 1fr; }
  .ru-live-status .pm-store-live-status__metric {
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: baseline;
    gap: 8px;
    padding: 14px 12px;
  }
  .ru-live-status .pm-store-live-status__metric + .pm-store-live-status__metric {
    border-inline-start: 0;
    border-block-start: 1px solid #e4ece9;
  }
  .ru-live-status .pm-store-live-status__value { font-size: 1.35rem; }
}
@media (max-width: 420px) {
  .russia-country .country-hero h1 {
    font-size: 2.65rem;
    line-height: 1;
  }
}
@media (max-width: 390px) {
  .ru-country-store-grid { grid-template-columns: 1fr; }
  .pm-language-gate-actions { display: grid; width: 100%; }
  .pm-language-gate-actions .button { width: 100%; }
}

/* PROMOMONDO_BRAND_CATALOG_CANDIDATE_V1 */
.russia-country .ru-country-store-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.ru-brand-card {
  display: grid;
  min-width: 0;
  min-height: 510px;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid #d8dfdb;
  border-radius: 8px;
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ru-brand-card:hover {
  border-color: #aebbb5;
  box-shadow: 0 12px 28px rgba(24, 33, 30, .09);
  transform: translateY(-2px);
}
.ru-brand-card-media {
  display: grid;
  aspect-ratio: 16 / 8;
  place-items: center;
  padding: 26px;
  border-bottom: 1px solid #e0e6e2;
  background: #f5f7f6;
}
.ru-brand-card-media img {
  width: min(100%, 210px);
  height: auto;
}
.ru-brand-card-body {
  display: grid;
  min-width: 0;
  align-content: start;
  padding: 22px;
}
.ru-brand-category {
  min-height: 2.6em;
  margin: 0 0 10px;
  color: #63706b;
  font-size: .75rem;
  font-weight: 800;
  line-height: 1.3;
  text-transform: uppercase;
}
.ru-brand-card h3 {
  margin: 0 0 10px;
  font-size: 1.35rem;
  line-height: 1.15;
}
.ru-brand-card h3 a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: #18211e;
  text-decoration: none;
}
.ru-brand-card h3 a:hover { color: #176b52; }
.ru-brand-summary {
  margin: 0 0 18px;
  color: #56615d;
  font-size: .94rem;
  line-height: 1.55;
}
.ru-brand-intents {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}
.ru-brand-intents li {
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid #d8dfdb;
  border-radius: 4px;
  background: #fafbf9;
  color: #3f4b47;
  font-size: .76rem;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.ru-brand-card-footer {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  column-gap: 14px;
  row-gap: 0;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid #e4e9e6;
}
.ru-brand-card-status {
  display: inline-flex;
  min-width: 0;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  color: #64706c;
  font-size: .8rem;
  font-weight: 700;
  white-space: nowrap;
}
.ru-brand-card-status > span {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #87938e;
}
.ru-brand-card-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  flex: 0 0 auto;
  margin-inline-start: auto;
  color: #104d3e;
  font-size: .86rem;
  font-weight: 800;
  text-underline-offset: 3px;
}

.ru-brand-detail-page {
  --ru-brand-accent: #005bff;
  --ru-brand-accent-dark: #0046c8;
  background: #fbfcfb;
}
.ru-brand-detail-page .site-header { background: rgba(255, 255, 255, .98); }
.ru-brand-detail-page .ru-kicker { color: var(--ru-brand-accent-dark); }
.ru-brand-detail-hero {
  padding-block: 34px 66px;
  border-bottom: 1px solid #d8dfdb;
  background: #f2f5f4;
}
.ru-brand-detail-hero .breadcrumbs {
  margin-bottom: 34px;
  font-size: .9rem;
}
.ru-brand-detail-grid {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  align-items: center;
  gap: 58px;
}
.ru-brand-visual {
  display: grid;
  min-width: 0;
  gap: 14px;
}
.ru-brand-logo-stage {
  display: grid;
  aspect-ratio: 4 / 3;
  place-items: center;
  padding: 38px;
  border: 1px solid #d8dfdb;
  border-radius: 8px;
  background: #fff;
}
.ru-brand-logo-stage img {
  width: min(100%, 300px);
  height: auto;
}
.ru-brand-visual > p {
  margin: 0;
  color: #66726e;
  font-size: .84rem;
  text-align: center;
}
.ru-brand-detail-copy h1 {
  max-width: 760px;
  margin: 0 0 18px;
  font-size: 3.5rem;
  line-height: 1.02;
}
.ru-brand-detail-lead {
  max-width: 760px;
  margin: 0 0 24px;
  color: #46524e;
  font-size: 1.12rem;
  line-height: 1.6;
}
.ru-brand-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 0 24px;
  border-block: 1px solid #d8dfdb;
}
.ru-brand-facts div {
  display: grid;
  min-width: 0;
  gap: 4px;
  padding: 14px 16px 14px 0;
}
.ru-brand-facts div + div {
  padding-inline-start: 16px;
  border-inline-start: 1px solid #d8dfdb;
}
.ru-brand-facts dt {
  color: #66726e;
  font-size: .76rem;
  font-weight: 800;
  text-transform: uppercase;
}
.ru-brand-facts dd {
  margin: 0;
  color: #18211e;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.ru-brand-detail-page .ru-store-actions .button { background: var(--ru-brand-accent); }
.ru-brand-detail-page .ru-store-actions .button:hover { background: var(--ru-brand-accent-dark); }
.ru-telegram-mark {
  width: 20px;
  height: 18px;
  flex: 0 0 20px;
  color: #fff;
}
.ru-inline-action {
  color: #104d3e;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.ru-inline-action:hover { color: var(--ru-brand-accent-dark); }
.ru-brand-detail-page .ru-store-actions .button.secondary {
  border-color: #aebbb5;
  background: #fff;
}
.ru-brand-disclosure {
  max-width: 720px;
  margin: 16px 0 0;
  color: #66726e;
  font-size: .84rem;
  line-height: 1.5;
}
.ru-brand-intent-section { background: #fff; }
.ru-brand-intent-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}
.ru-brand-intent {
  grid-column: span 2;
  min-height: 285px;
  padding: 24px;
  border: 1px solid #d8dfdb;
  border-radius: 8px;
  background: #fff;
}
.ru-brand-intent > span {
  display: block;
  margin-bottom: 44px;
  color: var(--ru-brand-accent-dark);
  font-size: .8rem;
  font-weight: 800;
}
.ru-brand-intent h3 {
  margin: 0 0 12px;
  font-size: 1.22rem;
  line-height: 1.2;
}
.ru-brand-intent p {
  margin: 0;
  color: #56615d;
  line-height: 1.58;
}
.ru-brand-intent:nth-child(4) { grid-column: 2 / span 2; }
.ru-brand-intent:nth-child(5) { grid-column: 4 / span 2; }
.ru-query-evidence {
  display: grid;
  grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
  align-items: center;
  gap: 32px;
  margin-top: 32px;
  padding-top: 26px;
  border-top: 1px solid #d8dfdb;
}
.ru-query-evidence strong { display: block; margin-bottom: 6px; }
.ru-query-evidence p { margin: 0; color: #66726e; font-size: .88rem; }
.ru-brand-detail-page .ru-query-list { justify-content: flex-start; }
.ru-brand-detail-page .ru-query-list span {
  border-color: #cfd8d4;
  background: #f7f9f8;
}
.ru-brand-detail-page .ru-live-status {
  --pm-brand: var(--ru-brand-accent);
  --pm-brand-soft: #e9f0ff;
}
.ru-brand-detail-page .ru-live-status .pm-store-live-status__date { color: #173f9b; }
.ru-brand-detail-page .ru-live-status .pm-store-live-status__notice { background: #f2f6ff; }
.ru-verification-list {
  max-width: 980px;
  border-top: 1px solid #d8dfdb;
}
.ru-verification-list article {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 24px;
  padding: 24px 0;
  border-bottom: 1px solid #d8dfdb;
}
.ru-verification-list article > span {
  color: var(--ru-brand-accent-dark);
  font-size: .82rem;
  font-weight: 800;
}
.ru-verification-list h3 { margin: 0 0 6px; font-size: 1.1rem; }
.ru-verification-list p { margin: 0; color: #56615d; line-height: 1.55; }
.ru-verification-actions { margin-top: 28px; }
.ru-brand-about-grid {
  display: grid;
  grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr);
  gap: 76px;
}
.ru-brand-about-grid .ru-section-head { margin-bottom: 0; }

@media (max-width: 1050px) {
  .russia-country .ru-country-store-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ru-brand-detail-grid { grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr); gap: 38px; }
  .ru-brand-detail-copy h1 { font-size: 3rem; }
  .ru-brand-intent-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ru-brand-intent:nth-child(4) { grid-column: span 2; }
  .ru-brand-intent:nth-child(5) { grid-column: 2 / span 2; }
}
@media (max-width: 760px) {
  .russia-country .ru-country-store-grid { grid-template-columns: 1fr; }
  .ru-brand-card { min-height: 0; }
  .ru-brand-category { min-height: 0; }
  .ru-brand-detail-hero { padding-block: 24px 48px; }
  .ru-brand-detail-grid { grid-template-columns: 1fr; gap: 32px; }
  .ru-brand-visual { width: min(100%, 520px); }
  .ru-brand-logo-stage { aspect-ratio: 16 / 10; }
  .ru-brand-detail-copy h1 { font-size: 2.35rem; }
  .ru-brand-detail-lead { font-size: 1rem; }
  .ru-brand-facts { grid-template-columns: 1fr; }
  .ru-brand-facts div,
  .ru-brand-facts div + div {
    padding: 12px 0;
    border-inline-start: 0;
  }
  .ru-brand-facts div + div { border-block-start: 1px solid #d8dfdb; }
  .ru-brand-intent-grid { grid-template-columns: 1fr; }
  .ru-brand-intent,
  .ru-brand-intent:nth-child(4),
  .ru-brand-intent:nth-child(5) { grid-column: auto; min-height: 0; }
  .ru-brand-intent > span { margin-bottom: 24px; }
  .ru-query-evidence { grid-template-columns: 1fr; gap: 18px; }
  .ru-verification-list article { grid-template-columns: 44px minmax(0, 1fr); gap: 12px; }
  .ru-brand-about-grid { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 420px) {
  .ru-brand-card-body { padding: 18px; }
  .ru-brand-card-footer { align-items: flex-start; flex-direction: column; }
  .ru-brand-card-link { min-height: 44px; display: inline-flex; align-items: center; margin-inline-start: 0; }
}
