/* static/landing.css
   Стилі лендінгу kosht.app. Перенесено з макета kosht-landing-v6.html.
   Шрифти — локальні (fonts.css): Sofia Sans Extra Condensed, IBM Plex Sans,
   JetBrains Mono. Ізольовано від dashboard.css — сторінки не перетинаються. */

:root {
  --paper: #f4f3ef;
  --ink: #101010;
  --red: #de1a12;
  --red-deep: #b81410;
  --muted: #5b584f;
  --hair: #dcd8ce;
  --void: #0c0c0d;
  --panel: #141416;
  --panel2: #1b1b1e;
  --vink: #edebe6;
  --vdim: #8b8a85;
  --vline: #2a2a2e;
  --vred: #ff4438;
  --vgreen: #35d07f;
  --amber: #ffb454;
  --ease: cubic-bezier(0.23, 1, 0.32, 1);
  --sh: 6px 6px 0 var(--ink);
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-radius: 0 !important;
}
html {
  scroll-behavior: smooth;
}
body {
  background: var(--paper);
  color: var(--ink);
  font-family: "IBM Plex Sans", system-ui, sans-serif;
  font-size: 16.5px;
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
::selection {
  background: var(--red);
  color: #fff;
}
h1, h2, h3 {
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  line-height: 0.9;
}
.mono, .sysl {
  font-family: "JetBrains Mono", monospace;
}
.sysl {
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}
.sysl b {
  color: var(--red);
}
.wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 clamp(18px, 4vw, 48px);
}
p {
  text-wrap: pretty;
}
.lead {
  max-width: 58ch;
  font-size: 17.5px;
}

/* Закреслення «маркером» (анімується скриптом landing.js) */
.x {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  color: var(--muted);
}
.x svg {
  position: absolute;
  left: -2.5%;
  top: 50%;
  width: 105%;
  height: 0.24em;
  transform: translateY(-50%);
  overflow: visible;
  pointer-events: none;
}
.x path {
  stroke: var(--red);
  stroke-width: 6.5;
  fill: none;
  stroke-linecap: square;
}
.js .x path {
  stroke-dasharray: 110;
  stroke-dashoffset: 110;
}
.x path {
  transition: stroke-dashoffset 0.5s var(--ease);
}
.x.in path {
  stroke-dashoffset: 0;
}

/* ===== Хедер ===== */
header {
  border-bottom: 2px solid var(--ink);
  position: sticky;
  top: 0;
  z-index: 60;
  background: color-mix(in oklab, var(--paper) 94%, transparent);
  backdrop-filter: blur(10px);
}
.nav {
  display: flex;
  align-items: center;
  gap: 12px;
  height: 58px;
}
.logo {
  display: flex;
  align-items: center;
  gap: 9px;
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  font-size: 25px;
  text-transform: uppercase;
  color: var(--ink);
  text-decoration: none;
  margin-right: auto;
}
.logo b {
  width: 10px;
  height: 10px;
  background: var(--red);
}
.logo sup {
  font-size: 10px;
  color: var(--red);
  transform: translateY(-5px);
}
.navlnk {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink);
  text-decoration: none;
  padding: 8px 10px;
  border: 1.5px solid transparent;
}
.navlnk:hover {
  border-color: var(--ink);
}
.langbox {
  position: relative;
}
.langbtn {
  display: flex;
  align-items: center;
  gap: 7px;
  background: transparent;
  border: 1.5px solid var(--ink);
  cursor: pointer;
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  font-weight: 500;
  padding: 8px 12px;
  color: var(--ink);
}
.langbtn svg {
  width: 13px;
  height: 13px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}
.langmenu {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  background: var(--paper);
  border: 2px solid var(--ink);
  box-shadow: var(--sh);
  min-width: 170px;
  display: none;
  z-index: 70;
}
.langmenu.open {
  display: block;
}
.langmenu button {
  display: flex;
  justify-content: space-between;
  width: 100%;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--hair);
  cursor: pointer;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  padding: 10px 14px;
  color: var(--ink);
  text-align: left;
}
.langmenu button:last-child {
  border-bottom: 0;
}
.langmenu button:hover {
  background: #fff;
}
.langmenu button.on {
  font-weight: 600;
}
.langmenu button.on::after {
  content: "●";
  color: var(--red);
  font-size: 9px;
}
.langmenu .mono {
  font-size: 10px;
  color: var(--muted);
}

/* ===== Кнопки ===== */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--red);
  color: #fff;
  text-decoration: none;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 10px 17px;
  border: 2px solid var(--ink);
  transition:
    transform 0.13s var(--ease),
    box-shadow 0.13s var(--ease),
    background 0.13s;
  cursor: pointer;
}
.btn:active {
  transform: scale(0.97);
}
@media (hover: hover) {
  .btn:hover {
    background: var(--red-deep);
    box-shadow: 4px 4px 0 var(--ink);
    transform: translate(-2px, -2px);
  }
}
.btn.tg {
  background: var(--paper);
  color: var(--ink);
}
@media (hover: hover) {
  .btn.tg:hover {
    background: #fff;
  }
}
.btn.big {
  padding: 15px 28px;
  font-size: 13.5px;
  box-shadow: var(--sh);
}
@media (hover: hover) {
  .btn.big:hover {
    box-shadow: 9px 9px 0 var(--ink);
    transform: translate(-3px, -3px);
  }
}
.tg-ic {
  width: 14px;
  height: 14px;
  fill: currentColor;
}

/* ===== Hero ===== */
.hero {
  padding: clamp(56px, 9vh, 104px) 0;
}
.hero h1 {
  font-size: clamp(2.7rem, 8.4vw, 5.8rem);
}
.hero h1 .l {
  display: block;
}
.js .hero h1 .l {
  clip-path: inset(0 0 110% 0);
  transform: translateY(0.3em);
}
.hero h1 .l {
  transition: clip-path 0.65s var(--ease), transform 0.65s var(--ease);
}
.hero.on h1 .l {
  clip-path: inset(-12% 0 -12% 0);
  transform: none;
}
.hero.on h1 .l:nth-child(2) {
  transition-delay: 0.09s;
}
.red {
  color: var(--red);
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: clamp(28px, 5vw, 64px);
  align-items: end;
}
.hero .sub {
  margin: 26px 0 30px;
  font-size: 18px;
  max-width: 44ch;
}
.js .fade {
  opacity: 0;
  transform: translateY(14px);
}
.fade {
  transition: opacity 0.55s var(--ease), transform 0.55s var(--ease);
}
.hero.on .fade {
  opacity: 1;
  transform: none;
}
.hero.on .sub {
  transition-delay: 0.3s;
}
.hero.on .cta {
  transition-delay: 0.4s;
}
.panel-l {
  background: #fff;
  border: 2px solid var(--ink);
  box-shadow: var(--sh);
}
.chat .phead {
  display: flex;
  justify-content: space-between;
  border-bottom: 2px solid var(--ink);
  padding: 10px 14px;
}
.chat .body {
  padding: 16px 14px;
}
.msg {
  max-width: 88%;
  padding: 9px 13px;
  margin-bottom: 9px;
  font-size: 14.5px;
  line-height: 1.45;
  border: 1.5px solid var(--ink);
}
.msg.user {
  background: var(--ink);
  color: #fff;
  margin-left: auto;
}
.msg.bot {
  background: var(--paper);
}
.kbd {
  display: inline-block;
  border: 1.5px solid var(--ink);
  background: #fff;
  padding: 3px 9px;
  margin: 5px 5px 0 0;
  font-size: 13px;
}

/* ===== Секції ===== */
section {
  border-top: 2px solid var(--ink);
  padding: clamp(64px, 11vh, 124px) 0;
  position: relative;
}
section > .wrap {
  position: relative;
}
.cross {
  position: absolute;
  top: -9px;
  font-family: "JetBrains Mono", monospace;
  font-size: 13px;
  color: var(--red);
  user-select: none;
}
.cross.l {
  left: 6px;
}
.cross.r {
  right: 6px;
}
.shead {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: clamp(22px, 4vh, 40px);
}
section h2 {
  font-size: clamp(2.2rem, 5.4vw, 4rem);
}
.cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(32px, 6vw, 72px);
  align-items: center;
}
.js .rv {
  opacity: 0;
  transform: translateY(20px);
}
.rv {
  transition: opacity 0.6s var(--ease), transform 0.6s var(--ease);
}
.rv.in {
  opacity: 1;
  transform: none;
}
.note {
  font-size: 14px;
  color: var(--muted);
  margin-top: 16px;
  max-width: 54ch;
}

/* ===== [01] Темна секція «жива статистика» ===== */
.reveal {
  position: relative;
  background: var(--void);
  color: var(--vink);
  padding: 0;
}
.curt {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 51%;
  background: var(--paper);
  z-index: 5;
  pointer-events: none;
}
.curt.cl {
  left: 0;
  border-right: 2px solid var(--ink);
}
.curt.cr {
  right: 0;
  border-left: 2px solid var(--ink);
}
.reveal .inner {
  padding: clamp(72px, 12vh, 132px) 0;
}
.reveal .sysl {
  color: var(--vdim);
}
.reveal .sysl b {
  color: var(--vred);
}
.reveal h2 {
  color: var(--vink);
}
.reveal .cross {
  color: var(--vred);
}
.cockpit {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 12px;
  margin-top: 32px;
}
.cpanel {
  background: var(--panel);
  border: 1.5px solid var(--vline);
  padding: 14px 16px;
  position: relative;
}
.cp12 {
  grid-column: span 12;
}
.cp3 {
  grid-column: span 3;
}
.ck {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 8px;
  flex-wrap: wrap;
  gap: 6px;
}
.ck h3 {
  font-size: 17px;
  color: var(--vink);
  letter-spacing: 0.02em;
}
/* Підпис-лід під заголовком картки кокпіту */
.cklead {
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--vdim);
  max-width: 74ch;
  margin: 0 0 12px;
}
.kv {
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  font-size: 29px;
  line-height: 1;
  margin-top: 4px;
  color: var(--vink);
}
.kv.pos {
  color: var(--vgreen);
}
.kv.am {
  color: var(--amber);
}
.kd {
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  color: var(--vdim);
  margin-top: 5px;
}
#battle {
  height: 330px;
}
.pulse {
  display: grid;
  grid-template-columns: repeat(52, 1fr);
  gap: 2px;
  margin-top: 8px;
}
.pulse i {
  aspect-ratio: 1;
  background: #1a1a1d;
  cursor: crosshair;
}
.pulse i.g {
  background: transparent;
  border: 1.3px solid var(--vgreen);
}
.ptip {
  position: fixed;
  z-index: 98;
  background: var(--panel2);
  border: 1.5px solid var(--vline);
  color: var(--vink);
  font-family: "JetBrains Mono", monospace;
  font-size: 11.5px;
  padding: 10px 12px;
  pointer-events: none;
  display: none;
  line-height: 1.6;
  max-width: 240px;
}
.ptip b {
  color: var(--vred);
}
.ptip .g {
  color: var(--vgreen);
}
.locked {
  filter: blur(6px);
  pointer-events: none;
  user-select: none;
}
.lockwrap {
  position: relative;
}
.lockcap {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  z-index: 2;
}
.lockcap span {
  background: var(--void);
  border: 1.5px solid var(--vred);
  color: var(--vred);
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 9px 14px;
}
.btnrow {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}
.btn.demo {
  background: var(--vred);
  border-color: #000;
}
.btn.ghostd {
  background: transparent;
  color: var(--vink);
  border-color: var(--vline);
}
@media (hover: hover) {
  .btn.ghostd:hover {
    background: var(--panel2);
    box-shadow: 4px 4px 0 #000;
  }
}

/* ===== [02] Карта польотів ===== */
.flights {
  border: 2px solid var(--ink);
  background: #fff;
  box-shadow: var(--sh);
  position: relative;
}
#flights {
  height: 380px;
}
.flights .cap {
  position: absolute;
  left: 12px;
  bottom: 10px;
  z-index: 2;
}

/* ===== «<7 СЕК» ===== */
.seven {
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  font-size: clamp(8rem, 22vw, 15rem);
  line-height: 0.8;
  color: var(--red);
}
.seven small {
  font-size: 0.17em;
  color: var(--ink);
}

/* ===== [05] Маніфест ===== */
.manifesto {
  background: linear-gradient(160deg, var(--red) 0%, #c01310 70%, #a80f0d 100%);
  color: #fff;
}
.manifesto h2 {
  font-size: clamp(2.3rem, 6vw, 4.6rem);
  text-transform: none;
  line-height: 1.05;
}
.manifesto h2 span {
  display: block;
}
.manifesto .hollow {
  color: transparent;
  -webkit-text-stroke: 2.2px #fff;
}
.manifesto .note {
  color: #ffd9d9;
  max-width: 62ch;
  font-size: 15.5px;
}
.manifesto .cross {
  color: #fff;
}

/* ===== [06] Безкоштовно ===== */
.free h2 {
  font-size: clamp(3.6rem, 12vw, 6rem);
  color: var(--red);
}
.plist {
  display: grid;
  gap: 2px;
  background: var(--ink);
  border: 2px solid var(--ink);
  max-width: 780px;
  margin-top: 22px;
  box-shadow: var(--sh);
}
.plist > div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  background: #fff;
  padding: 14px 20px;
  font-size: 15.5px;
}
.plist .mono {
  color: var(--red);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  letter-spacing: 0.05em;
  text-align: right;
}

/* ===== [07] Ексклюзиви Pro ===== */
.prowrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 8px;
}
.procard {
  border: 2px solid var(--ink);
  background: #fff;
  padding: 20px;
  box-shadow: var(--sh);
  position: relative;
  overflow: hidden;
}
.probadge {
  display: inline-block;
  background: var(--ink);
  color: var(--paper);
  font-family: "JetBrains Mono", monospace;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  padding: 4px 9px;
}
.probadge.plus {
  background: var(--red);
}
.procard h3 {
  font-size: 22px;
  margin: 12px 0 8px;
}
.procard p {
  font-size: 14px;
  color: var(--muted);
}
.redact {
  margin-top: 14px;
}
.redact i {
  display: block;
  height: 13px;
  background: var(--ink);
  margin-bottom: 7px;
}
.redact i:nth-child(1) {
  width: 82%;
}
.redact i:nth-child(2) {
  width: 64%;
}
.redact i:nth-child(3) {
  width: 73%;
}
.procard .cls {
  position: absolute;
  right: -28px;
  top: 14px;
  transform: rotate(35deg);
  background: var(--red);
  color: #fff;
  font-family: "JetBrains Mono", monospace;
  font-size: 9px;
  letter-spacing: 0.16em;
  padding: 3px 34px;
}

/* ===== [08] Плани (env-removable: LANDING_PRICING_ENABLED) ===== */
.plans {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 8px;
  align-items: stretch;
}
.plan {
  border: 2px solid var(--ink);
  background: #fff;
  padding: 24px 22px;
  box-shadow: var(--sh);
  display: flex;
  flex-direction: column;
  position: relative;
}
.plan.hot {
  border-color: var(--red);
  box-shadow: 6px 6px 0 var(--red);
}
.plan.dark {
  background: var(--ink);
  color: var(--paper);
}
.plan .pop {
  position: absolute;
  top: -13px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--red);
  color: #fff;
  border: 2px solid var(--ink);
  font-family: "JetBrains Mono", monospace;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 3px 12px;
}
.plan h3 {
  font-size: 26px;
}
.plan .price {
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  font-size: 52px;
  line-height: 1;
  margin: 14px 0 2px;
}
.plan .price small {
  font-size: 0.34em;
  font-weight: 800;
  color: var(--muted);
}
.plan.dark .price small {
  color: var(--vdim);
}
.plan .price .red {
  color: var(--red);
}
.plan ul {
  list-style: none;
  margin: 18px 0 22px;
  flex: 1;
}
.plan li {
  font-size: 14.5px;
  padding: 8px 0 8px 22px;
  border-bottom: 1px solid var(--hair);
  position: relative;
}
.plan.dark li {
  border-color: #2c2c2f;
}
.plan li::before {
  content: "→";
  position: absolute;
  left: 0;
  color: var(--red);
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
}
.plan li.mut {
  color: var(--muted);
}
.plan .btn {
  justify-content: center;
}
/* Перемикач періоду оплати (islands/landing/PlansGrid.tsx) */
#plans .ptoggle {
  display: inline-flex;
  border: 1.5px solid var(--ink);
  margin-bottom: 26px;
  background: #fff;
}
#plans .ptoggle button {
  position: relative;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-family: "JetBrains Mono", monospace;
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 10px 18px;
  border-right: 1.5px solid var(--ink);
  transition: color 0.15s ease, background 0.15s ease;
}
#plans .ptoggle button:last-child {
  border-right: 0;
}
#plans .ptoggle button.on {
  background: var(--ink);
  color: #fff;
  font-weight: 700;
}
@media (hover: hover) {
  #plans .ptoggle button:hover:not(.on) {
    color: var(--ink);
  }
}
#plans .ptoggle .gift {
  position: absolute;
  top: -12px;
  right: -10px;
  background: var(--red);
  color: #fff;
  border: 1.5px solid var(--ink);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 2px 7px;
  white-space: nowrap;
  pointer-events: none;
}
/* Ціни 6-місячного періоду: закреслена повна + підпис */
#plans .price .was {
  font-size: 0.42em;
  font-weight: 800;
  color: var(--muted);
  text-decoration: line-through;
  text-decoration-color: var(--red);
  text-decoration-thickness: 2.5px;
  margin-right: 10px;
  vertical-align: 0.14em;
}
#plans .plan.dark .price .was {
  color: var(--vdim);
}
#plans .psub {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.04em;
  min-height: 16px;
  margin-top: 2px;
}
#plans .plan.dark .psub {
  color: var(--vdim);
}
/* Рядок довіри під картками */
#plans .trust {
  margin-top: 22px;
  max-width: 640px;
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--muted);
  border-left: 3px solid var(--red);
  padding-left: 14px;
}

/* ===== [09] Засновник ===== */
.founder {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: clamp(26px, 5vw, 52px);
  align-items: start;
}
.avatar {
  aspect-ratio: 1;
  background: var(--ink);
  border: 2px solid var(--ink);
  box-shadow: var(--sh);
  position: relative;
}
.avatar::after {
  content: "PHOTO";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  letter-spacing: 0.25em;
}
/* Коли з'явиться фото (static/landing/founder.jpg) — <img class="ph"> ховає заглушку */
.avatar img.ph {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
blockquote {
  font-size: clamp(18px, 2.1vw, 21px);
  line-height: 1.6;
  font-weight: 500;
  max-width: 60ch;
}
blockquote em {
  color: var(--red);
  font-style: normal;
}

/* ===== Фінал + футер ===== */
.final {
  text-align: center;
}
.final h2 {
  font-size: clamp(2.6rem, 8.6vw, 5.2rem);
}
footer {
  border-top: 2px solid var(--ink);
  padding: 22px 0;
}
footer .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.barcode {
  display: flex;
  gap: 2px;
  height: 22px;
}
.barcode i {
  width: 2px;
  background: var(--ink);
}
.barcode i:nth-child(3n) {
  width: 4px;
}
.barcode i:nth-child(5n) {
  width: 1px;
}

.toast {
  position: fixed;
  left: 50%;
  bottom: 26px;
  transform: translate(-50%, 80px);
  background: var(--ink);
  color: var(--paper);
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  padding: 12px 18px;
  border: 2px solid var(--red);
  z-index: 99;
  transition: transform 0.4s var(--ease);
  pointer-events: none;
}
.toast.show {
  transform: translate(-50%, 0);
}

/* ===== Сторінка /login ===== */
.loginbox {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
}
.loginbox h1 {
  font-size: clamp(2.2rem, 6vw, 4rem);
}
.alink {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  color: var(--ink);
  text-decoration: none;
  border-bottom: 1.5px solid var(--red);
}

@media (max-width: 900px) {
  .hero-grid, .cols, .founder {
    grid-template-columns: 1fr;
  }
  .cp3 {
    grid-column: span 6;
  }
  .prowrap, .plans {
    grid-template-columns: 1fr;
  }
  .avatar {
    max-width: 170px;
  }
  .nav .btn span.txt, .nav .navlnk {
    display: none;
  }
  .pulse {
    grid-template-columns: repeat(26, 1fr);
  }
  .pulse i:nth-child(n+183) {
    display: none;
  }
  #flights {
    height: 300px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .js .l, .js .fade, .js .rv {
    opacity: 1;
    transform: none;
    clip-path: none;
    transition: none;
  }
  .js .x path {
    stroke-dashoffset: 0;
    transition: none;
  }
  .curt {
    display: none;
  }
}

/* ===== FAQ ===== */
.faq .faq-list {
  max-width: 840px;
  border: 2px solid var(--ink);
  background: #fff;
  box-shadow: var(--sh);
}
.faq details {
  border-bottom: 1.5px solid var(--hair);
}
.faq details:last-child {
  border-bottom: 0;
}
.faq summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  font-weight: 600;
  font-size: 16.5px;
  color: var(--ink);
  transition: background 0.15s ease;
}
.faq summary::-webkit-details-marker {
  display: none;
}
@media (hover: hover) {
  .faq summary:hover {
    background: var(--paper);
  }
}
.faq details[open] summary {
  background: var(--paper);
}
.faq .faq-ic {
  position: relative;
  flex: 0 0 16px;
  height: 16px;
}
.faq .faq-ic::before, .faq .faq-ic::after {
  content: "";
  position: absolute;
  background: var(--red);
  left: 50%;
  top: 50%;
  transition: transform 0.25s var(--ease);
}
.faq .faq-ic::before {
  width: 16px;
  height: 2.5px;
  transform: translate(-50%, -50%);
}
.faq .faq-ic::after {
  width: 2.5px;
  height: 16px;
  transform: translate(-50%, -50%);
}
.faq details[open] .faq-ic::after {
  transform: translate(-50%, -50%) scaleY(0);
}
.faq details[open] .faq-ic::before {
  transform: translate(-50%, -50%) rotate(180deg);
}
.faq .faq-a {
  padding: 2px 20px 20px;
  max-width: 68ch;
}
.faq .faq-a p {
  font-size: 15.5px;
  line-height: 1.65;
  color: var(--ink);
}
.faq .faq-a p + p {
  margin-top: 10px;
}
.faq details .faq-a {
  overflow: hidden;
}
@supports (interpolate-size: allow-keywords) {
  .faq details::details-content {
    block-size: 0;
    overflow: hidden;
    transition:
      block-size 0.35s var(--ease),
      content-visibility 0.35s allow-discrete;
  }
  .faq details[open]::details-content {
    block-size: auto;
  }
}

/* ---- Сторінка Terms (/terms, EN-only; components/landing/Terms.tsx) ----
   Токени (--paper/--ink/--red/--muted) і шрифти — спільні з лендінгом. */
.terms-link {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  border-bottom: 1px solid var(--muted);
}
.terms-link:hover {
  color: var(--red);
  border-color: var(--red);
}
.terms-page {
  padding: clamp(36px, 7vh, 72px) 0;
}
.terms-body {
  max-width: 760px;
  font-size: 14.5px;
  line-height: 1.65;
  color: var(--ink);
}
.terms-body h4 {
  font-family: "Sofia Sans Extra Condensed", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 18px;
  margin: 20px 0 8px;
  letter-spacing: 0.02em;
}
.terms-body p {
  margin-bottom: 8px;
  max-width: 66ch;
}
.terms-body b {
  font-weight: 600;
}
.terms-upd {
  font-size: 10.5px;
  color: var(--muted);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

/* cyrillic-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f1.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f5.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f4.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f6.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f2.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f3.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f1.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f5.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f4.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f6.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f2.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f3.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f1.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f5.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f4.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f6.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f2.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f3.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f11.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f10.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f9.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f7.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/f8.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f11.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f10.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f9.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f7.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/f8.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f11.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f10.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f9.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f7.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/f8.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/f13.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/f14.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/f15.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/f12.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/f16.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/f13.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/f14.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/f15.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/f12.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Sofia Sans Extra Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/f16.woff2) format("woff2");
  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;
}

/* ===== IBM Plex Sans (лендінг) — файли з @fontsource/ibm-plex-sans ===== */
/* cyrillic-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-ext-400-normal.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-400-normal.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-greek-400-normal.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-vietnamese-400-normal.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-ext-400-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-ext-500-normal.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-500-normal.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-greek-500-normal.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-vietnamese-500-normal.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-ext-500-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2");
  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;
}
/* cyrillic-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-ext-600-normal.woff2) format("woff2");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-cyrillic-600-normal.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-greek-600-normal.woff2) format("woff2");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-vietnamese-600-normal.woff2) format("woff2");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-ext-600-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");
  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;
}
