@font-face {
  font-family: "Formular";
  src: url("../fonts/formular-regular.woff2") format("woff2"),
       url("../fonts/formular-regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Formular";
  src: url("../fonts/formular-medium.woff2") format("woff2"),
       url("../fonts/formular-medium.woff") format("woff");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

:root {
  --br-red: #ff001f;
  --br-red-dark: #d9001a;
  --br-graphite: #1e1e1e;
  --br-ink: #292522;
  --br-muted: #6d6966;
  --br-paper: #f6f4f1;
  --br-white: #ffffff;
  --br-line: #dedbd7;
  --br-positive: #18794e;
  --br-warning: #a45b00;
  --br-danger-soft: #fff0f2;
  --br-radius: 2px;
  --br-max: 1240px;
  --br-shadow: 0 18px 50px rgba(30, 30, 30, .08);
  --br-logo-height: 21px;
  --br-logo-safe: var(--br-logo-height);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--br-ink);
  background: var(--br-paper);
  font-family: "Formular", "Arial", sans-serif;
  font-size: 16px;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, .br-button { touch-action: manipulation; }
:focus-visible { outline: 3px solid rgba(255, 0, 31, .35); outline-offset: 3px; }

.br-skip {
  position: fixed; top: 8px; left: 8px; z-index: 100;
  transform: translateY(-160%); background: var(--br-white); padding: 10px 14px;
}
.br-skip:focus { transform: translateY(0); }
.br-shell { min-height: 100vh; }
.br-container { width: min(var(--br-max), calc(100% - 40px)); margin: 0 auto; }

.br-header {
  position: sticky; top: 0; z-index: 30; background: rgba(246, 244, 241, .94);
  border-bottom: 1px solid var(--br-line); backdrop-filter: blur(14px);
}
.br-header .br-container { width: min(var(--br-max), calc(100% - (var(--br-logo-safe) * 2))); }
.br-header-row { min-height: max(72px, calc(var(--br-logo-height) * 3)); display: flex; align-items: center; justify-content: space-between; gap: var(--br-logo-safe); }
.br-brand { display: inline-flex; align-items: center; gap:8px; text-decoration: none; font-weight: 500; letter-spacing: -.02em; }
.br-brand-mark { width: 17px; height: 17px; border-radius: 50% 50% 44% 54%; background: var(--br-red); transform: rotate(-15deg); }
.br-brand-name { font-size: 19px; }
.br-brand-logo { display:block; width:134px; height:21px; overflow:visible; color:var(--br-ink); }
.br-brand-separator, .br-brand-product { color:var(--br-muted); font-size:22px; font-weight:500; line-height:21px; letter-spacing:-.018em; white-space:nowrap; }
.br-brand-product { transform:translateY(-.5px); }
.br-nav { display: flex; align-items: center; gap: 6px; }
.br-nav a { padding: 10px 13px; text-decoration: none; color: var(--br-muted); font-size: 14px; }
.br-nav a:hover, .br-nav a[aria-current="page"] { color: var(--br-ink); }
.br-menu-toggle { display:none; }
.br-mobile-nav-signature { display:none; }

.br-button {
  display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 9px;
  border: 1px solid var(--br-ink); border-radius: var(--br-radius); padding: 11px 18px;
  background: var(--br-ink); color: var(--br-white); font-weight: 500; text-decoration: none; cursor: pointer;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.br-button:hover { transform: translateY(-1px); background: #000; }
.br-button--red { border-color: var(--br-red); background: var(--br-red); }
.br-button--red:hover { background: var(--br-red-dark); border-color: var(--br-red-dark); }
.br-button--light { background: transparent; color: var(--br-ink); border-color: var(--br-line); }
.br-button--light:hover { background: var(--br-white); border-color: var(--br-ink); }
.br-button--small { min-height: 38px; padding: 8px 12px; font-size: 14px; }
.br-button[disabled] { opacity: .45; cursor: not-allowed; transform: none; }

.br-hero { position: relative; overflow: hidden; padding: 72px 0 64px; background: var(--br-red); color: var(--br-white); }
.br-hero::after {
  content: ""; position: absolute; right: -8vw; bottom: -21vw; width: 48vw; height: 48vw;
  border: clamp(36px, 6vw, 90px) solid rgba(255,255,255,.18); border-radius: 50%;
}
.br-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, .5fr); gap: 56px; align-items: end; }
.br-kicker { margin: 0 0 22px; text-transform: uppercase; letter-spacing: .11em; font-size: 12px; font-weight: 500; }
.br-hero h1 { max-width: 900px; margin: 0; font-size: clamp(46px, 7vw, 104px); font-weight: 400; line-height: .92; letter-spacing: -.055em; }
.br-hero-copy { max-width: 430px; margin: 24px 0 0; font-size: clamp(17px, 2vw, 22px); }
.br-hero-meta { border-top: 1px solid rgba(255,255,255,.45); padding-top: 18px; }
.br-hero-meta strong { display: block; font-size: 28px; font-weight: 400; letter-spacing: -.03em; }
.br-hero-meta span { display: block; margin-top: 4px; opacity: .8; font-size: 13px; }

.br-section { padding: 72px 0; }
.br-section--white { background: var(--br-white); }
.br-section-head { display: grid; grid-template-columns: 1fr 2fr; gap: 40px; margin-bottom: 36px; }
.br-section-head h2 { margin: 0; font-size: clamp(30px, 4vw, 56px); font-weight: 400; line-height: 1; letter-spacing: -.04em; }
.br-section-head p { max-width: 640px; margin: 0; color: var(--br-muted); font-size: 18px; }

.br-facts { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--br-line); }
.br-fact { min-height: 185px; padding: 22px 24px 26px 0; border-right: 1px solid var(--br-line); }
.br-fact + .br-fact { padding-left: 24px; }
.br-fact:last-child { border-right: 0; }
.br-fact-index { color: var(--br-red); font-size: 12px; }
.br-fact h3 { margin: 45px 0 8px; font-size: 23px; font-weight: 400; }
.br-fact p { margin: 0; color: var(--br-muted); font-size: 14px; }

.br-main { padding: 42px 0 80px; }
.br-page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.br-page-head h1 { margin: 0; font-size: clamp(34px, 5vw, 68px); font-weight: 400; line-height: 1; letter-spacing: -.045em; }
.br-page-head p { max-width: 620px; margin: 10px 0 0; color: var(--br-muted); }

.br-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 16px; }
.br-span-12 { grid-column: span 12; }
.br-span-8 { grid-column: span 8; }
.br-span-7 { grid-column: span 7; }
.br-span-6 { grid-column: span 6; }
.br-span-5 { grid-column: span 5; }
.br-span-4 { grid-column: span 4; }
.br-span-3 { grid-column: span 3; }

.br-panel { background: var(--br-white); border: 1px solid var(--br-line); padding: 24px; }
.br-panel--dark { background: var(--br-graphite); border-color: var(--br-graphite); color: var(--br-white); }
.br-panel--red { background: var(--br-red); border-color: var(--br-red); color: var(--br-white); }
.br-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 20px; }
.br-panel h2, .br-panel h3 { margin: 0; font-weight: 400; letter-spacing: -.025em; }
.br-panel h2 { font-size: 27px; }
.br-panel h3 { font-size: 19px; }

.br-stat-label { color: var(--br-muted); font-size: 12px; text-transform: uppercase; letter-spacing: .07em; }
.br-panel--dark .br-stat-label, .br-panel--red .br-stat-label { color: rgba(255,255,255,.68); }
.br-stat-value { margin-top: 20px; font-size: clamp(38px, 5vw, 66px); line-height: .9; letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.br-stat-note { margin-top: 9px; color: var(--br-muted); font-size: 13px; }

.br-progress { height: 7px; overflow: hidden; background: #e7e4e0; margin: 24px 0 10px; }
.br-progress > span { display: block; height: 100%; width: var(--progress, 0%); background: var(--br-red); }
.br-panel--dark .br-progress { background: rgba(255,255,255,.14); }

.br-table-wrap { overflow-x: auto; }
.br-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.br-table th { padding: 10px 12px; border-bottom: 1px solid var(--br-ink); color: var(--br-muted); text-align: left; font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: .06em; }
.br-table td { padding: 14px 12px; border-bottom: 1px solid var(--br-line); vertical-align: middle; }
.br-table th:first-child, .br-table td:first-child { padding-left: 0; }
.br-table th:last-child, .br-table td:last-child { padding-right: 0; text-align: right; }
.br-rank { display: inline-grid; width: 28px; height: 28px; place-items: center; background: var(--br-paper); font-variant-numeric: tabular-nums; }

.br-badge { display: inline-flex; align-items: center; min-height: 25px; padding: 4px 8px; border-radius: 100px; background: var(--br-paper); color: var(--br-muted); font-size: 12px; white-space: nowrap; }
.br-badge--pending { background: #fff4dd; color: var(--br-warning); }
.br-badge--approved { background: #e8f6ef; color: var(--br-positive); }
.br-badge--rejected { background: var(--br-danger-soft); color: var(--br-red-dark); }

.br-form { display: grid; gap: 18px; }
.br-field { display: grid; gap: 7px; }
.br-field label { font-size: 13px; font-weight: 500; }
.br-field small { color: var(--br-muted); }
.br-input, .br-select, .br-textarea {
  width: 100%; min-height: 48px; border: 1px solid var(--br-line); border-radius: 0;
  background: var(--br-white); color: var(--br-ink); padding: 11px 13px;
}
.br-textarea { min-height: 110px; resize: vertical; }
.br-input:focus, .br-select:focus, .br-textarea:focus { border-color: var(--br-red); outline: 3px solid rgba(255,0,31,.12); }
.br-form-row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.br-help { margin: 0; color: var(--br-muted); font-size: 13px; }

.br-alert { margin-bottom: 18px; padding: 13px 15px; border-left: 3px solid var(--br-ink); background: var(--br-white); }
.br-alert--error { border-left-color: var(--br-red); background: var(--br-danger-soft); }
.br-alert--success { border-left-color: var(--br-positive); background: #e8f6ef; }

.br-auth { min-height: calc(100vh - 73px); display: grid; place-items: center; padding: 48px 20px; }
.br-auth-card { width: min(520px, 100%); background: var(--br-white); padding: clamp(28px, 5vw, 52px); box-shadow: var(--br-shadow); }
.br-auth-card h1 { margin: 0 0 12px; font-size: clamp(34px, 6vw, 54px); font-weight: 400; line-height: 1; letter-spacing: -.045em; }
.br-auth-card p { color: var(--br-muted); }
.br-code-input { text-transform: uppercase; letter-spacing: .22em; font-size: 22px; text-align: center; }

.br-tabs { display: flex; gap: 3px; overflow-x: auto; margin: 0 0 24px; border-bottom: 1px solid var(--br-line); }
.br-tabs a { flex: 0 0 auto; padding: 12px 14px; border-bottom: 2px solid transparent; color: var(--br-muted); text-decoration: none; font-size: 14px; }
.br-tabs a[aria-current="page"] { color: var(--br-ink); border-bottom-color: var(--br-red); }
.br-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.br-empty { padding: 36px 20px; border: 1px dashed var(--br-line); color: var(--br-muted); text-align: center; }

.br-footer { padding: 32px 0; border-top: 1px solid var(--br-line); color: var(--br-muted); font-size: 13px; }
.br-footer-row { display: flex; justify-content: space-between; gap: 20px; }

@media (max-width: 900px) {
  .br-nav a:not(.br-button) { display: none; }
  .br-hero-grid, .br-section-head { grid-template-columns: 1fr; }
  .br-hero { padding-top: 52px; }
  .br-facts { grid-template-columns: 1fr; }
  .br-fact, .br-fact + .br-fact { min-height: 0; padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--br-line); }
  .br-fact h3 { margin-top: 28px; }
  .br-span-8, .br-span-7, .br-span-6, .br-span-5, .br-span-4, .br-span-3 { grid-column: span 12; }
}

@media (max-width: 600px) {
  .br-container { width: min(100% - 24px, var(--br-max)); }
  .br-header-row { min-height: 62px; }
  .br-brand-product, .br-brand-separator { display: none; }
  .br-hero h1 { font-size: 48px; }
  .br-main { padding-top: 28px; }
  .br-page-head { align-items: start; flex-direction: column; }
  .br-panel { padding: 19px; }
  .br-form-row { grid-template-columns: 1fr; }
  .br-footer-row { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Brusnika event direction: sharp editorial fields, one active red, quiet data surfaces. */
:root { --br-paper: #f1f0ed; --br-line: #d5d3ce; --br-ink: #20201f; --br-max: 1360px; --br-shadow: 0 24px 60px rgba(20,20,18,.08); }
body { letter-spacing: -.012em; }
.br-header { background: rgba(241,240,237,.92); }
.br-header-row { min-height: 66px; }
.br-brand { gap: 10px; font-weight: 500; letter-spacing: -.045em; }
.br-brand-name { font-size: 18px; }
.br-brand-product { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.br-nav { gap: 0; }
.br-nav a { font-size: 13px; font-weight: 500; }
.br-button { border-radius: 0; min-height: 44px; font-size: 14px; letter-spacing: -.01em; }
.br-button:active { transform: translateY(1px); }
.br-button--paper { background: var(--br-white); border-color: var(--br-white); color: var(--br-ink); }
.br-button--paper:hover { background: transparent; color: var(--br-white); border-color: rgba(255,255,255,.8); }
.br-hero--editorial { min-height: min(720px, calc(100dvh - 66px)); padding: clamp(52px,8vw,108px) 0 0; display: flex; flex-direction: column; justify-content: space-between; background: var(--br-red); }
.br-hero--editorial::after { width: 34vw; height: 34vw; right: 4vw; bottom: 8vw; border-width: clamp(30px,4vw,62px); border-radius: 50% 50% 0 50%; transform: rotate(32deg); opacity: .8; }
.br-hero-grid { grid-template-columns: minmax(0, 1.18fr) minmax(310px,.82fr); gap: 8vw; align-items: stretch; }
.br-hero-copy-block { position: relative; z-index: 2; }
.br-hero h1 { max-width: 800px; font-size: clamp(64px,8.7vw,146px); letter-spacing: -.08em; line-height: .8; font-weight: 500; }
.br-hero h1 em { display: inline-block; font-style: normal; padding-bottom: .08em; color: rgba(255,255,255,.5); }
.br-hero-copy { max-width: 430px; margin-top: 30px; font-size: 18px; line-height: 1.34; }
.br-hero-actions { margin-top: 34px; gap: 24px; }
.br-text-link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--br-white); font-size: 14px; font-weight: 500; text-underline-offset: 5px; }
.br-text-link span { font-size: 20px; transition: transform .2s ease; }
.br-text-link:hover span { transform: translate(3px,3px); }
.br-hero-poster { position: relative; z-index: 1; align-self: end; width: min(100%,355px); padding: 25px 0 28px 26px; border-left: 1px solid rgba(255,255,255,.55); }
.br-poster-label, .br-hero-poster > span:last-child { display: block; font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: .13em; }
.br-hero-poster strong { display:grid; grid-template-columns:auto auto auto; justify-content:start; align-items:center; gap:.06em; margin:13px 0 20px; font-size:clamp(58px,5.3vw,92px); font-weight:500; letter-spacing:-.09em; line-height:.75; }
.br-hero-dates > span { display:flex; min-width:0; flex-direction:column; }
.br-hero-dates > span:last-child { align-items:flex-end; text-align:right; }
.br-hero-poster strong small { margin-top:11px; font-size:14px; letter-spacing:-.02em; font-weight:500; line-height:1; }
.br-hero-poster strong i { align-self:start; margin:.13em 0 0; font-style:normal; font-size:.48em; line-height:1; opacity:.65; }
.br-hero-poster p { max-width: 260px; margin: 0; font-size: 14px; line-height: 1.35; }
.br-poster-rule { width: 100%; height: 1px; margin: 30px 0 12px; background: rgba(255,255,255,.48); }
.br-hero-marquee { margin-top: clamp(52px,8vw,100px); overflow: hidden; white-space: nowrap; color: rgba(255,255,255,.42); font-size: clamp(38px,6.2vw,100px); line-height: .83; font-weight: 500; letter-spacing: -.07em; transform: translateX(-1.8%); }
.br-section { padding: clamp(70px,9vw,142px) 0; }
.br-rules-layout { display: grid; grid-template-columns: 1.1fr .75fr; gap: 50px 9vw; }
.br-rules-layout h2, .br-principle h2 { margin: 0; font-size: clamp(44px,6vw,94px); line-height: .86; font-weight: 500; letter-spacing: -.075em; }
.br-rules-intro { max-width: 470px; align-self: end; color: var(--br-muted); font-size: clamp(18px,2vw,25px); line-height: 1.26; }
.br-steps { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin: 22px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--br-ink); }
.br-steps li { display: grid; grid-template-columns: 42px 1fr; gap: 16px; min-height: 190px; padding: 20px 28px 16px 0; border-right: 1px solid var(--br-line); }
.br-steps li + li { padding-left: 28px; }
.br-steps li:last-child { border-right: 0; }
.br-steps span { color: var(--br-red); font-size: 12px; font-weight: 500; }
.br-steps h3 { margin: 0 0 48px; font-size: 25px; line-height: 1; font-weight: 500; letter-spacing: -.04em; }
.br-steps p { max-width: 260px; margin: 0; color: var(--br-muted); font-size: 14px; }
.br-section--graphite { background: var(--br-graphite); color: var(--br-white); }
.br-principle { display: grid; grid-template-columns: 1.12fr .68fr; gap: 12vw; align-items: end; }
.br-principle .br-kicker { color: rgba(255,255,255,.54); }
.br-principle h2 { max-width: 820px; }
.br-principle-copy { display: grid; gap: 28px; padding-bottom: 4px; color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.4; }
.br-section--paper { background:var(--br-paper); }
.br-rules-detail { display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:clamp(34px,7vw,110px); }
.br-rules-detail__intro h2, .br-help-layout h2 { margin:0; font-size:clamp(42px,5.7vw,82px); font-weight:500; letter-spacing:-.07em; line-height:.83; }
.br-rules-detail__intro > p:last-child { max-width:310px; margin:28px 0 0; color:var(--br-muted); font-size:17px; line-height:1.4; }
.br-rule-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 30px; margin:0; padding:0; list-style:none; border-top:1px solid var(--br-line); }
.br-rule-list li { display:grid; grid-template-columns:38px minmax(0,1fr); gap:12px; min-height:146px; padding:22px 0; border-bottom:1px solid var(--br-line); }
.br-rule-list strong { color:var(--br-red); font-size:12px; font-weight:500; letter-spacing:.06em; }
.br-rule-list h3 { margin:0 0 8px; font-size:19px; font-weight:500; letter-spacing:-.03em; }
.br-rule-list p { margin:0; color:var(--br-muted); font-size:14px; line-height:1.4; }
.br-help-layout { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(300px,1fr) minmax(220px,.65fr); gap:clamp(28px,5vw,76px); align-items:start; }
.br-faq-list { border-top:1px solid var(--br-line); }
.br-faq-list details { padding:16px 0; border-bottom:1px solid var(--br-line); }
.br-faq-list summary { cursor:pointer; font-size:17px; font-weight:500; letter-spacing:-.02em; }
.br-faq-list summary::marker { color:var(--br-red); }
.br-faq-list p { margin:10px 0 0; color:var(--br-muted); font-size:14px; line-height:1.4; }
.br-help-contact { padding:24px; background:var(--br-red); color:var(--br-white); }
.br-help-contact p { margin:0 0 28px; font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.1em; opacity:.74; }
.br-help-contact h3 { margin:0 0 28px; font-size:clamp(22px,1.9vw,27px); font-weight:500; letter-spacing:-.04em; line-height:1; white-space:nowrap; }
.br-help-contact .br-button { width:100%; border-color:var(--br-white); background:var(--br-white); color:var(--br-ink); }
.br-help-contact .br-button:hover { background:var(--br-graphite); border-color:var(--br-graphite); color:var(--br-white); }
.br-principle-copy p { margin: 0; }
.br-main { padding: 52px 0 110px; }
.br-page-head { padding-bottom: 29px; border-bottom: 1px solid var(--br-ink); margin-bottom: 24px; }
.br-page-head h1 { font-size: clamp(42px,5vw,76px); font-weight: 500; letter-spacing: -.065em; }
.br-page-head p { font-size: 16px; }
.br-grid { gap: 12px; }
.br-panel { position: relative; border: 0; padding: clamp(21px,2.4vw,34px); box-shadow: none; }
.br-panel:not(.br-panel--dark):not(.br-panel--red) { background: var(--br-white); }
.br-panel--dark { background: #272725; }
.br-panel--red { background: var(--br-red); }
.br-panel h2 { font-size: 25px; font-weight: 500; letter-spacing: -.045em; }
.br-stat-value { font-size: clamp(46px,5.4vw,82px); font-weight: 500; }
.br-stat-label { font-weight: 500; }
.br-table th { border-bottom-color: var(--br-ink); }
.br-table td { padding-top: 17px; padding-bottom: 17px; }
.br-rank { background: var(--br-ink); color: var(--br-white); border-radius: 50%; font-size: 12px; }
.br-panel--dark .br-rank { background: var(--br-white); color: var(--br-ink); }
.br-tabs { gap: 24px; border-bottom-color: var(--br-ink); }
.br-tabs a { padding: 11px 0; font-weight: 500; }
.br-input, .br-select, .br-textarea { border-color: #b9b6af; background: #fbfbfa; }
.br-input:hover, .br-select:hover, .br-textarea:hover { border-color: var(--br-ink); }
.br-auth { background: linear-gradient(135deg,var(--br-red) 0 57%,var(--br-paper) 57%); }
.br-auth-card { box-shadow: 16px 16px 0 rgba(32,32,31,.16); }
.br-footer { background: var(--br-ink); border: 0; color: rgba(255,255,255,.62); }
@media (max-width:900px) { .br-hero--editorial { min-height: auto; } .br-hero-grid,.br-rules-layout,.br-principle,.br-rules-detail,.br-help-layout { grid-template-columns: 1fr; gap: 38px; } .br-hero-poster { align-self: start; } .br-steps { grid-template-columns: 1fr; } .br-steps li,.br-steps li + li { min-height: auto; padding: 22px 0; border-right:0; border-bottom:1px solid var(--br-line); } .br-steps h3 { margin-bottom: 14px; } }
@media (max-width:600px) { .br-hero--editorial { padding-top: 48px; } .br-hero h1 { font-size: clamp(57px,18vw,83px); } .br-hero-poster { padding-left: 17px; } .br-hero-poster strong { font-size: 66px; } .br-hero-marquee { margin-top: 58px; font-size: 47px; } .br-steps li { grid-template-columns: 32px 1fr; } .br-nav .br-button { padding: 8px 10px; min-height: 38px; } .br-rule-list { grid-template-columns:1fr; } .br-rule-list li { min-height:0; } .br-help-contact { padding:21px; } }

/* Image-first Brusnika hero, translated from the approved art-direction reference. */
.br-hero--editorial { isolation:isolate; min-height:720px; background:#f4f3f0; color:var(--br-ink); }
.br-hero--editorial::after { display:none; }
.br-hero-image { position:absolute; z-index:-1; inset:0 0 0 auto; width:43%; margin:0; overflow:hidden; clip-path:polygon(21% 0,100% 0,100% 100%,0 100%); }
.br-hero-image::after { display:none; }
.br-hero-image img { width:100%; height:100%; object-fit:cover; object-position:55% 50%; filter:grayscale(1) contrast(1.08); }
.br-hero-grid { grid-template-columns:minmax(0,1fr) minmax(240px,.35fr); min-height:560px; align-items:end; }
.br-hero h1 { max-width:700px; color:#171716; font-size:clamp(78px,9vw,158px); line-height:.76; }
.br-hero h1 em { color:#171716; }
.br-hero-copy { color:#393735; }
.br-text-link { color:#252422; }
.br-hero-poster { border-left-color:#242321; background:rgba(244,243,240,.92); color:#20201f; }
.br-hero-poster p { color:#45413e; }
.br-poster-rule { background:#242321; }
.br-hero-marquee { color:#e4e2de; }
.br-button--paper { background:#20201f; border-color:#20201f; color:#fff; }
.br-button--paper:hover { background:var(--br-red); border-color:var(--br-red); color:#fff; }
@media (max-width:900px) { .br-hero--editorial{min-height:690px}.br-hero-image{width:52%;opacity:.44}.br-hero-poster{max-width:330px}.br-hero-grid{min-height:560px} }
@media (max-width:600px) { .br-hero--editorial{min-height:650px}.br-hero-image{inset:auto 0 0 0;width:100%;height:47%;clip-path:none;opacity:.28}.br-hero-grid{min-height:540px}.br-hero-poster{background:transparent;border-left:0;padding-left:0}.br-hero-poster strong{font-size:60px}.br-hero-copy{max-width:280px}.br-hero-marquee{color:#d6d4d0} }

/* Official brand contrast: Brusnika Red navigation, White wordmark, Graphite type. */
.br-header { background:var(--br-red); border-bottom-color:var(--br-red); backdrop-filter:none; }
.br-brand-logo { color:var(--br-white); }
.br-brand-separator { color:rgba(255,255,255,.76); }
.br-brand-product { color:var(--br-white); }
.br-nav a, .br-nav a:hover, .br-nav a[aria-current="page"] { color:var(--br-white); }
.br-nav a:not(.br-button):hover, .br-nav a:not(.br-button)[aria-current="page"] { background:rgba(255,255,255,.14); }
.br-header .br-button--light { border-color:rgba(255,255,255,.7); background:transparent; color:var(--br-white); }
.br-header .br-button--light:hover { border-color:var(--br-white); background:var(--br-white); color:var(--br-red); }
.br-header a:focus-visible, .br-header .br-menu-toggle:focus-visible { outline-color:var(--br-white); }
.br-hero-marquee { color:var(--br-graphite); transform:none; }
.br-hero-marquee span { display:inline-block; padding-right:.26em; animation:br-marquee 22s linear infinite; will-change:transform; }
@keyframes br-marquee { to { transform:translateX(-25%); } }
@media (prefers-reduced-motion:reduce) { .br-hero-marquee span { animation:none; } }

.br-dashboard-result { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,1fr); margin-bottom:16px; background:var(--br-white); }
.br-dashboard-result__main { display:flex; min-height:390px; flex-direction:column; padding:clamp(28px,4vw,58px); }
.br-dashboard-km { display:flex; align-items:baseline; gap:18px; margin-top:auto; letter-spacing:-.085em; }
.br-dashboard-km strong { font-size:clamp(76px,12vw,178px); font-weight:500; line-height:.72; font-variant-numeric:tabular-nums; }
.br-dashboard-km span { font-size:clamp(25px,3vw,44px); font-weight:500; }
.br-dashboard-team { display:grid; gap:4px; margin:36px 0 0; font-size:clamp(25px,3vw,42px); line-height:1; }
.br-dashboard-team small { color:var(--br-muted); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.br-dashboard-result__image { min-height:390px; margin:0; overflow:hidden; background:var(--br-ink); }
.br-dashboard-result__image img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.08); }
.br-dashboard-positions { grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,1fr); margin:0; border-top:1px solid var(--br-ink); }
.br-dashboard-positions > div { padding:20px 28px; border-right:1px solid var(--br-line); }
.br-dashboard-positions > div:last-child { border:0; }
.br-dashboard-positions dt { color:var(--br-muted); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.br-dashboard-positions dd { margin:7px 0 0; font-size:28px; font-weight:500; }
.br-dashboard-positions small { color:var(--br-muted); font-size:13px; font-weight:400; }
.br-rating-summary { display:grid; grid-template-columns:repeat(3,1fr); margin-bottom:16px; background:var(--br-ink); color:var(--br-white); }
.br-rating-summary div { padding:22px 28px; border-right:1px solid rgba(255,255,255,.22); }.br-rating-summary div:last-child{border:0}.br-rating-summary span,.br-rating-summary small{display:block;color:rgba(255,255,255,.65);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.br-rating-summary strong{display:inline-block;margin:8px 8px 0 0;font-size:35px;font-weight:500;letter-spacing:-.06em}.br-rating-tabs{display:flex;gap:24px;margin:28px 0 18px;border-bottom:1px solid var(--br-ink)}.br-rating-tabs a{padding:10px 0;text-decoration:none;font-weight:500}.br-rating-tabs a[aria-current="page"]{border-bottom:3px solid var(--br-red)}.br-rating-podium{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:12px;margin-bottom:16px}.br-rating-podium__place{min-height:170px;padding:20px;background:var(--br-white)}.br-rating-podium__place--1{min-height:224px;background:var(--br-red);color:#fff}.br-rating-podium__place span{font-size:42px;font-weight:500}.br-rating-podium__place h2{margin:18px 0 5px;font-size:24px}.br-rating-podium__place p{margin:0;color:var(--br-muted);font-size:13px}.br-rating-podium__place--1 p{color:rgba(255,255,255,.75)}.br-rating-podium__place strong{display:block;margin-top:20px;font-size:21px}.br-rating-me{background:#fff0f2}.br-rating-filter{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:8px;margin:0 0 20px}.br-rating-pagination{display:flex;justify-content:space-between;margin-top:20px}.br-rating-pagination a{color:var(--br-red);font-weight:500}@media(max-width:600px){.br-rating-summary{grid-template-columns:1fr}.br-rating-summary div{border-right:0;border-bottom:1px solid rgba(255,255,255,.22)}.br-rating-podium{grid-template-columns:1fr}.br-rating-podium__place,.br-rating-podium__place--1{min-height:0}.br-rating-filter{grid-template-columns:1fr}.br-rating-pagination{font-size:14px}}
.br-rating-podium__place--1{order:2}.br-rating-podium__place--2{order:1}.br-rating-podium__place--3{order:3}.br-rating-podium__label{font-size:12px!important;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.br-rating-podium__label b{font-size:42px;letter-spacing:-.07em;vertical-align:middle}
.br-rating-filter{grid-template-columns:minmax(0,1fr);margin-bottom:8px}.br-rating-team-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px}.br-rating-team-filters a{min-height:38px;padding:8px 12px;border:1px solid var(--br-line);text-decoration:none;font-size:14px}.br-rating-team-filters a[aria-current="page"]{border-color:var(--br-red);background:var(--br-red);color:var(--br-white)}
.br-rating-team-link{color:var(--br-ink);font-weight:500;text-decoration:none}.br-rating-team-link:hover{color:var(--br-red)}
.br-rating-tabs, #rating-list { scroll-margin-top:82px; }
@media (max-width:600px) { .br-dashboard-result { grid-template-columns:1fr; } .br-dashboard-result__main { min-height:310px; padding:25px 20px; } .br-dashboard-result__image { min-height:220px; } .br-dashboard-positions { grid-template-columns:repeat(2,1fr); } .br-dashboard-positions > div { padding:16px 20px; border-bottom:1px solid var(--br-line); } .br-dashboard-positions > div:nth-child(2n) { border-right:0; } }
@media (max-width:600px) {
  body { overflow-x:hidden; }
  .br-header { --br-logo-height:18px; --br-logo-safe:18px; }
  .br-header-row { min-height:60px; gap:var(--br-logo-safe); }
  .br-brand { gap:6px; }
  .br-brand-logo { width:112px; height:18px; }
  .br-brand-separator, .br-brand-product { font-size:13px; line-height:18px; }
  .br-nav a { padding:7px 9px; font-size:12px; }

  .br-hero--editorial { min-height:0 !important; padding:38px 0 0; }
  .br-hero-grid { display:block; min-height:0 !important; }
  .br-hero-copy-block { max-width:100%; }
  .br-kicker { margin-bottom:15px; font-size:10px; letter-spacing:.1em; }
  .br-hero h1 { max-width:330px; font-size:clamp(68px,20vw,88px); line-height:.79; letter-spacing:-.075em; }
  .br-hero-copy { max-width:25ch; margin-top:21px; font-size:16px; line-height:1.34; }
  .br-hero-actions { align-items:flex-start; flex-direction:column; gap:12px; margin-top:24px; }
  .br-hero-actions .br-button { min-width:174px; }

  .br-hero-poster { width:100%; max-width:none; margin-top:37px; padding:18px; border-left:0; background:rgba(228,227,223,.94); }
  .br-poster-label, .br-hero-poster > span:last-child { font-size:10px; letter-spacing:.11em; }
  .br-hero-poster strong { gap:8px; margin:11px 0 17px; font-size:clamp(56px,18vw,68px); }
  .br-hero-poster strong small { margin-top:9px; font-size:12px; }
  .br-hero-poster p { max-width:31ch; font-size:13px; }
  .br-poster-rule { margin:21px 0 11px; }

  .br-hero-image { inset:auto 0 0; width:100%; height:31%; clip-path:none; opacity:.18; }
  .br-hero-image::after { display:none; }
  .br-hero-marquee { position:relative; z-index:1; margin-top:43px; padding-bottom:7px; color:var(--br-graphite); font-size:clamp(38px,14vw,55px); line-height:.82; }

  .br-section { padding:72px 0; }
  .br-rules-layout { gap:30px; }
  .br-rules-layout h2, .br-principle h2 { font-size:clamp(47px,14vw,65px); line-height:.88; }
  .br-rules-intro { font-size:18px; }
  .br-principle { gap:36px; }
  .br-principle-copy { gap:18px; font-size:16px; }
}
@media (min-width:361px) and (max-width:600px) {
  .br-brand-product, .br-brand-separator { display:inline; font-size:10px; line-height:18px; letter-spacing:.07em; }
}

/* Mobile navigation: the complete menu remains available instead of hiding links. */
@media (max-width:900px) {
  .br-header-row { position:relative; }
  .br-menu-toggle {
    display:inline-flex; width:44px; height:44px; flex:0 0 auto; align-items:center; justify-content:center;
    padding:0; border:0; background:transparent; color:var(--br-white); cursor:pointer;
  }
  .br-menu-toggle__icon { display:grid; width:22px; gap:5px; }
  .br-menu-toggle__icon i { display:block; width:20px; height:2px; background:currentColor; transition:transform .18s ease; }
  .br-menu-toggle[aria-expanded="true"] .br-menu-toggle__icon i:first-child { transform:translateY(7px) rotate(45deg); }
  .br-menu-toggle[aria-expanded="true"] .br-menu-toggle__icon i:nth-child(2) { opacity:0; }
  .br-menu-toggle[aria-expanded="true"] .br-menu-toggle__icon i:last-child { transform:translateY(-7px) rotate(-45deg); }
  .br-nav { display:none; position:fixed; z-index:31; top:66px; right:0; bottom:0; left:0; align-items:stretch; flex-direction:column; gap:0; padding:18px max(var(--br-logo-safe), calc((100vw - var(--br-max)) / 2 + var(--br-logo-safe))) 28px; overflow:auto; background:var(--br-red); color:var(--br-white); }
  .br-nav[data-open="true"] { display:flex; }
  .br-nav a, .br-nav a:not(.br-button) { display:flex; min-height:76px; align-items:center; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.34); color:var(--br-white); font-size:clamp(28px,5vw,42px); font-weight:400; line-height:1; letter-spacing:-.055em; }
  .br-nav a[aria-current="page"]::after { content:"↗"; margin-left:auto; font-size:.58em; letter-spacing:0; }
  .br-nav .br-button { min-height:50px; justify-content:center; margin-top:24px; border-color:var(--br-white); background:var(--br-white); color:var(--br-red); font-size:15px; letter-spacing:-.01em; }
  .br-nav .br-button:hover { background:var(--br-ink); border-color:var(--br-ink); color:var(--br-white); }
  .br-mobile-nav-signature { display:grid; gap:4px; margin-top:auto; padding-top:48px; color:rgba(255,255,255,.7); font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
  .br-mobile-nav-signature strong { color:var(--br-white); font-size:20px; font-weight:500; letter-spacing:-.04em; text-transform:uppercase; }
}
@media (max-width:600px) {
  .br-nav { top:60px; padding:18px 18px 24px; }
  .br-menu-toggle { width:40px; height:40px; }
}
@media (max-width:360px) {
  .br-menu-toggle { width:40px; }
}

/* Rating places stay in reading order; without a stepped podium, visual reordering only confuses. */
.br-rating-podium__place--1 { order:1; }
.br-rating-podium__place--2 { order:2; }
.br-rating-podium__place--3 { order:3; }
@media (min-width:601px) {
  .br-rating-podium { align-items:stretch; }
  .br-rating-podium__place, .br-rating-podium__place--1 { min-height:170px; }
}
@media (max-width:600px) {
  .br-rating-podium__place, .br-rating-podium__place--1 { min-height:0; }
}

/* The winner is marked by a restrained brand accent, not a lone red tile. */
.br-rating-podium__place--1 { background:var(--br-white); color:var(--br-ink); border-top:0; }
.br-rating-podium__place--1 p { color:var(--br-muted); }
.br-rating-podium__place--1 .br-rating-podium__label,
.br-rating-podium__place--2 .br-rating-podium__label,
.br-rating-podium__place--3 .br-rating-podium__label { color:var(--br-red); }

/* Rating: a quiet, editorial scoreboard rather than a decorative podium. */
.br-rating-summary { margin:0 0 28px; background:var(--br-ink); }
.br-rating-summary div { padding:18px 24px 20px; }
.br-rating-summary strong { margin-top:7px; font-size:clamp(31px,4vw,44px); }
.br-rating-tabs { gap:28px; margin:0 0 30px; }
.br-rating-tabs a { padding:0 0 13px; font-size:18px; letter-spacing:-.03em; }
.br-rating-tabs a[aria-current="page"] { border-bottom-width:2px; }
.br-rating-list-panel { padding:0; background:transparent !important; }
.br-rating-list-panel .br-panel-head { align-items:flex-end; margin:0; padding:0 0 18px; border-bottom:1px solid var(--br-ink); }
.br-rating-list-panel .br-panel-head h2 { font-size:clamp(29px,3vw,42px); }
.br-rating-table th { padding:12px 10px; color:var(--br-muted); }
.br-rating-table td { padding:20px 10px; font-size:16px; }
.br-rating-table th:first-child, .br-rating-table td:first-child { width:76px; }
.br-rating-table .br-rank { display:block; width:auto; height:auto; background:transparent; color:var(--br-red); font-size:clamp(24px,3vw,34px); font-weight:500; letter-spacing:-.07em; }
.br-rating-table .br-rating-team-link { font-size:18px; }
.br-rating-table tr.br-rating-me { background:transparent; }
.br-rating-table tr.br-rating-me td { background:#fff0f2; }
.br-rating-table tr.br-rating-me td:first-child { padding-left:24px; box-shadow:inset 3px 0 0 var(--br-red); }
@media (max-width:600px) {
  .br-rating-summary { margin-bottom:24px; }
  .br-rating-summary div { padding:16px 18px; }
  .br-rating-tabs { gap:20px; margin-bottom:24px; }
  .br-rating-list-panel .br-panel-head { align-items:start; flex-direction:column; gap:6px; }
  .br-rating-table { min-width:620px; }
  .br-rating-table th:first-child, .br-rating-table td:first-child { width:62px; }
  .br-rating-table td { padding-top:17px; padding-bottom:17px; }
}

.br-rating-pagination { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; margin-top:30px; padding-top:20px; border-top:1px solid var(--br-ink); }
.br-rating-pagination a { display:inline-flex; min-height:44px; align-items:center; gap:9px; padding:10px 14px; border:1px solid var(--br-ink); color:var(--br-ink); font-size:14px; font-weight:500; text-decoration:none; }
.br-rating-pagination a:hover { border-color:var(--br-red); background:var(--br-red); color:var(--br-white); }
.br-rating-pagination__prev { justify-self:start; grid-column:1; }
.br-rating-pagination__next { justify-self:end; grid-column:3; }
.br-rating-pagination__prev::before { content:"←"; font-size:18px; line-height:0; }
.br-rating-pagination__next::after { content:"→"; font-size:18px; line-height:0; }
.br-rating-pagination span { grid-column:2; color:var(--br-muted); font-size:12px; font-weight:500; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap; }
@media (max-width:600px) {
  .br-rating-pagination { gap:8px; margin-top:24px; padding-top:16px; }
  .br-rating-pagination a { min-width:44px; padding:10px 12px; }
  .br-rating-pagination span { font-size:10px; }
}
