@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Black+Ops+One&display=swap');
:root {
  --c-primary: #0c0c0c;
  --c-secondary: #151515;
  --c-accent: #e62e00;
  --c-bg: #161f27;
  --c-surface: #2b2222;
  --c-text: #eee4af;
  --c-text-muted: #e0bc0b;
  --c-btn: #f2be02;
  --c-btn-text: #fbfbf4;
  --c-border: #262121;
  --c-grad-start: #0c0c0c;
  --c-grad-end: #221a1a;
  --c-logo-text: #ffffff;
}
.iw-logo-text { color: var(--c-logo-text) !important; font-size: 29px !important; font-family: 'Black Ops One', sans-serif !important; }
[class*="_logo"] { font-family: 'Black Ops One', sans-serif !important; color: #ffffff !important; }


/* ─── Logo Icon ─── */
.iw-logo-icon {
  border-radius: 8px !important;
  font-size: 15px !important;
  font-family: 'Black Ops One', sans-serif !important;
}

.h14_backdrop {
    background: color-mix(in srgb, var(--c-bg) 70%, transparent);
    padding: 10px 16px;
  }
  .h14_pill {
    max-width: 965px;
    margin: 0 auto;
    background: var(--c-primary);
    border-radius: 50px;
    border: 1px solid color-mix(in srgb, var(--c-text) 12%, transparent);
    box-shadow: 0 4px 24px rgba(0,0,0,0.134), 0 1px 4px rgba(0,0,0,0.138);
    display: flex;
    align-items: center;
    height: 53px;
    padding: 0 8px 0 16px;
    gap: 8px;
  }
  .h14_logo {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
  }
  .h14_logo-icon {
    width: 31px;
    height: 33px;
    background: var(--c-accent);
    color: var(--c-bg);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 0.732rem;
  }
  .h14_logo-text {
    font-weight: 700;
    font-size: 1.006rem;
    color: var(--c-text);
  }
  .h14_divider {
    width: 1px;
    height: 23px;
    background: color-mix(in srgb, var(--c-text) 12%, transparent);
    flex-shrink: 0;
    margin: 0 4px;
  }
  .h14_nav {
    display: flex;
    align-items: center;
    gap: 0;
    flex: 1;
    justify-content: center;
  }
  .h14_nav a {
    color: color-mix(in srgb, var(--c-text) 70%, transparent);
    text-decoration: none;
    font-size: 0.792rem;
    font-weight: 500;
    padding: 5px 12px;
    border-radius: 50px;
    white-space: nowrap;
    transition: background 0.151s, color 0.15s;
  }
  .h14_nav a:hover {
    background: color-mix(in srgb, var(--c-text) 8%, transparent);
    color: var(--c-text);
  }
  .h14_cta {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
  }
  .h14_btn-login {
    background: transparent;
    color: color-mix(in srgb, var(--c-text) 75%, transparent);
    border: none;
    padding: 6px 14px;
    border-radius: 51px;
    font-size: 0.806rem;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.148s, color 0.152s;
  }
  .h14_btn-login:hover {
    background: color-mix(in srgb, var(--c-text) 8%, transparent);
    color: var(--c-text);
  }
  .h14_btn-register {
    background: var(--c-accent);
    color: var(--c-bg);
    border: none;
    padding: 7px 18px;
    border-radius: 51px;
    font-size: 0.825rem;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
    transition: opacity 0.146s;
    white-space: nowrap;
  }
  .h14_btn-register:hover { opacity: 0.9; }
  .h14_menu-btn {
    display: none;
    background: color-mix(in srgb, var(--c-text) 8%, transparent);
    border: none;
    color: var(--c-text);
    width: 33px;
    height: 34px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }
  @media (max-width: 768px) {
    .h14_nav { display: none; }
    .h14_cta-desktop { display: none !important; }
    .h14_menu-btn { display: flex !important; }
    .h14_divider { display: none; }
    .h14_pill { padding: 0 6px 0 12px; }
  }
  .h14_sroot { position: sticky; top: 0; z-index: 100; }
@media (min-width: 769px) {
  .h14_cta-desktop { display: flex !important; align-items: center; gap: 6px; }
}
  .h14_mnav { flex-direction: column; align-items: flex-start; padding: 12px 0; }
  .h14_mrow { padding: 12px 0; border-top: 1px solid var(--c-border); display: flex; gap: 8px; }
  .h14_mbtn { flex: 1; justify-content: center; }

.zr53-card {
  position: relative;
  border-radius: 27px;
  overflow: hidden;
  min-height: 359px;
  background: linear-gradient(137deg,
    color-mix(in srgb, var(--c-accent) 28%, var(--c-bg)) 0%,
    color-mix(in srgb, var(--c-accent) 8%, var(--c-bg)) 100%);
  border: 1px solid rgba(255,255,255,0.016);
  box-shadow: 0 18px 51px rgba(0,0,0,0.417);
  display: flex;
  align-items: center;
}
.zr53-bg-img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: 0;
}
.zr53-overlay {
  position: absolute; inset: 0;
  background:
    linear-gradient(91deg, rgba(0,0,0,0.865) 0%, rgba(0,0,0,0.623) 35%, rgba(0,0,0,0.162) 70%, rgba(0,0,0,0.0) 100%);
  z-index: 1;
}
.zr53-content {
  position: relative; z-index: 2;
  padding: 47px 50px;
  max-width: 602px;
}
.zr53-title {
  font-size: 39px;
  font-weight: 900;
  line-height: 1.05;
  color: #fff;
  margin: 0 0 16px;
  letter-spacing: -0.015em;
  text-shadow: 0 2px 16px rgba(0,0,0,0.556);
}
.zr53-sub {
  font-size: 15px;
  color: rgba(255,255,255,0.844);
  line-height: 1.55;
  margin: 0 0 27px;
  max-width: 466px;
  text-shadow: 0 1px 8px rgba(0,0,0,0.448);
}
.zr53-cta-row {
  display: flex; gap: 12px;
  flex-wrap: nowrap;
  align-items: stretch;
}
/* Variant 02 signature: clean solid-accent rectangular buttons,
   icon on the left, bold uppercase text. Hover halo borrows the brand
   accent so the glow always matches the button colour. */
.zr53-cta {
  display: inline-flex; align-items: center;
  gap: 12px;
  padding: 15px 25px;
  border-radius: 12px;
  background: var(--c-accent, #f59e0b);
  color: var(--c-bg, var(--c-bg));
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: box-shadow .25s ease, filter .18s;
  box-shadow: 0 6px 20px rgba(0,0,0,0.266);
}
.zr53-cta:hover {
  filter: brightness(1.04);
  box-shadow:
    0 0 0 4px color-mix(in srgb, var(--c-accent, #f59e0b) 22%, transparent),
    0 10px 28px color-mix(in srgb, var(--c-accent, #f59e0b) 38%, transparent),
    0 6px 18px rgba(0,0,0,0.311);
}
.zr53-cta svg { flex-shrink: 0; }
@media (max-width: 768px) {
  .zr53-card { min-height: 314px; }
  .zr53-overlay {
    background: linear-gradient(179deg, rgba(0,0,0,0.495) 0%, rgba(0,0,0,0.857) 100%);
  }
  .zr53-content { padding: 32px 24px; max-width: 100%; }
  .zr53-title { font-size: 27px; }
  .zr53-cta-row { flex-wrap: wrap; }
  .zr53-cta { padding: 13px 16px; font-size: 12px; }
}

.mf13-wrap { max-width: 1164px; margin: 0 auto; }
  .mf13-intro { max-width: none; margin-bottom: 26px; }
  .mf13-title { color: var(--c-text); margin: 0 0 14px; }
  .mf13-lead { font-size: 15px; line-height: 1.75; color: var(--c-text-muted); margin: 0 0 14px; }
  .mf13-lead:last-child { margin-bottom: 0; }
  .mf13-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .mf13-card { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: 14px; padding: 26px 27px; display: flex; flex-direction: column; gap: 12px; }
  .mf13-tag { font-size: 0.671rem; font-weight: 800; color: var(--c-accent); text-transform: uppercase; letter-spacing: 0.143em; }
  .mf13-h3 { color: var(--c-text); margin: 0; font-size: 1.067rem; font-weight: 700; }
  .mf13-p { font-size: 14px; line-height: 1.8; color: var(--c-text-muted); margin: 0 0 12px; }
  .mf13-p:last-child { margin-bottom: 0; }
  @media (max-width: 920px) { .mf13-row { grid-template-columns: 1fr; gap: 18px; } }

.zu26-wrap { max-width: 1138px; margin: 0 auto; }
  .zu26-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    gap: 36px;
    align-items: start;
    margin-bottom: 25px;
  }
  .zu26-title { color: var(--c-text); margin: 0 0 18px; }
  .zu26-p { font-size: 15px; line-height: 1.8; color: var(--c-text-muted); margin: 0 0 16px; }
  .zu26-spec {
    width: 100%;
    border-collapse: collapse;
    background: var(--c-surface);
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--c-accent) 22%, var(--c-border));
    box-shadow:
      0 18px 51px -25px color-mix(in srgb, var(--c-accent) 55%, transparent),
      0 0 0 1px color-mix(in srgb, var(--c-accent) 6%, transparent);
    table-layout: fixed;
  }
  .zu26-spec thead th {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.136em;
    text-align: left;
    padding: 14px 18px;
    color: var(--c-bg);
    background: linear-gradient(134deg,
      var(--c-accent) 0%,
      color-mix(in srgb, var(--c-accent) 60%, var(--c-grad-end)) 100%);
    border-bottom: 1px solid color-mix(in srgb, var(--c-accent) 45%, transparent);
  }
  .zu26-spec tbody th, .zu26-spec tbody td {
    padding: 13px 18px;
    font-size: 13px;
    line-height: 1.5;
    vertical-align: top;
    text-align: left;
    border-bottom: 1px solid var(--c-border);
  }
  .zu26-spec tbody tr:last-child th,
  .zu26-spec tbody tr:last-child td { border-bottom: none; }
  .zu26-spec tbody tr:nth-child(odd) {
    background: color-mix(in srgb, var(--c-accent) 3%, transparent);
  }
  .zu26-spec tbody tr:hover {
    background: color-mix(in srgb, var(--c-accent) 8%, transparent);
  }
  .zu26-spec tbody th {
    font-weight: 700;
    color: var(--c-text);
    width: 44%;
  }
  .zu26-spec tbody th::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--c-accent);
    margin-right: 10px;
    vertical-align: 0.179em;
  }
  .zu26-spec tbody td { color: var(--c-text-muted); }
  @media (max-width: 880px) {
    .zu26-grid {
      grid-template-columns: 1fr;
      gap: 24px;
    }
  }
  @media (max-width: 640px) {
    .zu26-spec thead th { padding: 11px 14px; }
    .zu26-spec tbody th, .zu26-spec tbody td { padding: 11px 14px; font-size: 13px; }
    .zu26-spec tbody th::before { width: 4px; height: 4px; margin-right: 8px; }
  }

.vp88-card {
  position: relative;
  border-radius: 21px;
  overflow: hidden;
  min-height: 354px;
  background: linear-gradient(132deg,
    color-mix(in srgb, var(--c-accent) 28%, var(--c-bg)) 0%,
    color-mix(in srgb, var(--c-accent) 8%, var(--c-bg)) 100%);
  border: 1px solid rgba(255,255,255,0.031);
  box-shadow: 0 16px 49px rgba(0,0,0,0.467);
  display: flex;
  align-items: center;
  justify-content: center;
}
.vp88-bg-img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: 0;
}
.vp88-overlay {
  position: absolute; inset: 0;
  background:
    linear-gradient(134deg, rgba(0,0,0,0.652) 0%, rgba(0,0,0,0.398) 50%, rgba(0,0,0,0.661) 100%);
  z-index: 1;
}
.vp88-content {
  position: relative; z-index: 2;
  text-align: center;
  padding: 43px 29px;
  max-width: 737px;
}
.vp88-title {
  font-size: 32px;
  font-weight: 900;
  color: var(--c-accent, #f59e0b);
  line-height: 1.1;
  margin: 0 0 18px;
  text-transform: uppercase;
  letter-spacing: 0.005em;
  text-shadow: 0 2px 14px rgba(0,0,0,0.509);
}
.vp88-amount-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 0 0 27px;
}
.vp88-diamond {
  display: inline-block;
  width: 14px; height: 14px;
  border: 2px solid var(--c-accent, #f59e0b);
  transform: rotate(45deg);
  flex-shrink: 0;
}
.vp88-amount {
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.02em;
  text-shadow: 0 1px 8px rgba(0,0,0,0.434);
}
.vp88-cta {
  display: inline-block;
  padding: 13px 38px;
  border-radius: 12px;
  background: #22c55e;
  color: #0a1f12;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(34,197,94,0.357);
  transition: box-shadow .25s ease, filter .18s;
}
.vp88-cta:hover {
  filter: brightness(1.06);
  box-shadow:
    0 0 0 4px rgba(34,197,94,0.211),
    0 10px 28px rgba(34,197,94,0.404);
}
@media (max-width: 768px) {
  .vp88-card { min-height: 342px; }
  .vp88-content { padding: 32px 18px; }
  .vp88-title { font-size: 22px; }
  .vp88-amount { font-size: 14px; }
  .vp88-amount-row { gap: 10px; flex-wrap: wrap; justify-content: center; }
}

.oe51-wrap { max-width: 926px; margin: 0 auto; }
  .oe51-title { color: var(--c-text); margin: 0 0 18px; }
  .oe51-intro { font-size: 15px; line-height: 1.85; color: var(--c-text-muted); margin: 0 0 22px; }
  .oe51-sec { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: 12px; padding: 22px 26px; margin-bottom: 14px; }
  .oe51-sec:last-child { margin-bottom: 0; }
  .oe51-sh3 { color: var(--c-text); margin: 0 0 10px; font-size: 1.034rem; }
  .oe51-sp { font-size: 14px; line-height: 1.8; color: var(--c-text-muted); margin: 0 0 10px; }
  .oe51-sp:last-child { margin-bottom: 0; }

.rp93-wrap { max-width: 1063px; margin: 0 auto; display: flex; flex-direction: column; gap: 23px; }
  .rp93-intro { max-width: 799px; }
  .rp93-title { color: var(--c-text); margin: 0 0 14px; }
  .rp93-lead { font-size: 15px; line-height: 1.75; color: var(--c-text-muted); margin: 0; }
  .rp93-row { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
  .rp93-col-h { font-size: 0.692rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.159em; margin: 0 0 14px; }
  .rp93-col-h-pro { color: var(--c-accent); }
  .rp93-col-h-con { color: var(--c-text); }
  .rp93-stack { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
  .rp93-pill { display: flex; align-items: flex-start; gap: 10px; padding: 12px 16px; border-radius: 983px; font-size: 14px; line-height: 1.45; }
  .rp93-pill-pro { background: color-mix(in srgb, var(--c-accent) 14%, var(--c-surface)); color: var(--c-text); border: 1px solid color-mix(in srgb, var(--c-accent) 30%, transparent); }
  .rp93-pill-con { background: var(--c-surface); color: var(--c-text-muted); border: 1px dashed color-mix(in srgb, var(--c-text-muted) 30%, var(--c-border)); }
  .rp93-pill svg { flex-shrink: 0; width: 16px; height: 16px; margin-top: 1px; }
  .rp93-pill-pro svg { color: var(--c-accent); }
  .rp93-pill-con svg { color: var(--c-text-muted); }
  @media (max-width: 768px) { .rp93-row { grid-template-columns: 1fr; gap: 24px; } }

.sw15-wrap { max-width: 776px; margin: 0 auto; }
  .sw15-title { color: var(--c-text); margin: 0 0 21px; }
  .sw15-lead { font-size: 18px; line-height: 1.7; color: var(--c-text); font-weight: 500; margin: 0 0 20px; }
  .sw15-p { font-size: 15px; line-height: 1.85; color: var(--c-text-muted); margin: 0 0 16px; }
  .sw15-p:last-child { margin-bottom: 0; }

.pp24-card {
  position: relative;
  border-radius: 27px;
  overflow: hidden;
  min-height: 385px;
  background: linear-gradient(131deg,
    color-mix(in srgb, var(--c-accent) 28%, var(--c-bg)) 0%,
    color-mix(in srgb, var(--c-accent) 8%, var(--c-bg)) 100%);
  border: 1px solid rgba(255,255,255,0.103);
  box-shadow: 0 18px 50px rgba(0,0,0,0.453);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 36px;
}
.pp24-bg-img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: 0;
}
.pp24-overlay {
  position: absolute; inset: 0;
  background:
    linear-gradient(91deg, rgba(0,0,0,0.473) 0%, rgba(0,0,0,0.13) 60%, rgba(0,0,0,0) 100%);
  z-index: 1;
}
.pp24-glass {
  position: relative;
  z-index: 2;
  max-width: 515px;
  padding: 32px 32px;
  border-radius: 18px;
  background: rgba(15, 17, 23, 0.517);
  border: 1px solid rgba(255,255,255,0.155);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  box-shadow: 0 12px 35px rgba(0,0,0,0.438);
}
.pp24-title {
  font-size: 30px;
  font-weight: 900;
  line-height: 1.1;
  color: #fff;
  margin: 0 0 12px;
  letter-spacing: -0.01em;
  text-shadow: 0 1px 8px rgba(0,0,0,0.324);
}
.pp24-sub {
  font-size: 14px;
  color: rgba(255,255,255,0.863);
  line-height: 1.55;
  margin: 0 0 23px;
}
.pp24-cta-row {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
/* Variant 05 signature: authentic black "App Store / Google Play" badges
   with two-line label (small "Download on" / big "App Store"). */
.pp24-badge {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  padding: 10px 18px;
  border-radius: 10px;
  background: #000;
  color: #fff;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,0.184);
  transition: border-color .2s ease, box-shadow .25s ease;
  min-height: 50px;
  box-sizing: border-box;
}
.pp24-badge:hover {
  border-color: rgba(255,255,255,0.313);
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.115),
    0 8px 22px rgba(255,255,255,0.108);
}
.pp24-badge svg { flex-shrink: 0; }
.pp24-badge-label {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
  text-align: left;
}
.pp24-badge-label small {
  font-size: 9px;
  font-weight: 500;
  opacity: 0.78;
  letter-spacing: 0.062em;
  text-transform: uppercase;
  margin-bottom: 2px;
}
.pp24-badge-label-text {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
}
@media (max-width: 768px) {
  .pp24-card {
    min-height: 353px;
    padding: 24px;
    justify-content: center;
  }
  .pp24-overlay {
    background: linear-gradient(181deg, rgba(0,0,0,0.335) 0%, rgba(0,0,0,0.716) 100%);
  }
  .pp24-glass { padding: 25px 21px; max-width: 100%; }
  .pp24-title { font-size: 22px; }
  .pp24-badge { padding: 8px 14px; min-height: 45px; }
  .pp24-badge-label-text { font-size: 14px; }
}

.ui91-wrap { max-width: 882px; margin: 0 auto; }
  .ui91-title { color: var(--c-text); margin: 0 0 18px; }
  .ui91-intro { font-size: 15px; line-height: 1.85; color: var(--c-text-muted); margin: 0 0 24px; }
  .ui91-sec { border-left: 3px solid var(--c-accent); padding: 4px 0 14px 23px; margin-bottom: 20px; }
  .ui91-sec:last-child { margin-bottom: 0; padding-bottom: 0; }
  .ui91-sh3 { color: var(--c-text); margin: 0 0 8px; font-size: 1.104rem; }
  .ui91-sp { font-size: 14px; line-height: 1.8; color: var(--c-text-muted); margin: 0 0 10px; }
  .ui91-sp:last-child { margin-bottom: 0; }

.so11-wrap { max-width: 1077px; margin: 0 auto; }
  .so11-intro { max-width: 744px; margin-bottom: 22px; }
  .so11-title { color: var(--c-text); margin: 0 0 12px; }
  .so11-lead { font-size: 15px; line-height: 1.7; color: var(--c-text-muted); margin: 0; }
  .so11-scroll { overflow-x: auto; }
  .so11-table { width: 100%; min-width: 739px; border-collapse: separate; border-spacing: 0 8px; }
  .so11-table thead th { background: linear-gradient(91deg, var(--c-accent) 0%, color-mix(in srgb, var(--c-accent) 50%, var(--c-grad-end)) 100%); color: var(--c-bg); padding: 14px 22px; font-size: 0.707rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.119em; text-align: left; }
  .so11-table thead th:first-child { border-radius: 12px 0 0 12px; }
  .so11-table thead th:last-child { border-radius: 0 12px 12px 0; }
  .so11-table tbody td { background: var(--c-surface); padding: 18px 22px; font-size: 14px; line-height: 1.5; color: var(--c-text-muted); border-top: 1px solid var(--c-border); border-bottom: 1px solid var(--c-border); }
  .so11-table tbody td:first-child { border-left: 1px solid var(--c-border); border-radius: 12px 0 0 12px; }
  .so11-table tbody td:last-child { border-right: 1px solid var(--c-border); border-radius: 0 12px 12px 0; }
  .so11-table tbody tr.so11-active td { background: linear-gradient(90deg, color-mix(in srgb, var(--c-accent) 14%, var(--c-surface)), var(--c-surface) 80%); border-color: color-mix(in srgb, var(--c-accent) 30%, var(--c-border)); }
  .so11-rank { display: inline-flex; align-items: center; gap: 12px; }
  .so11-badge { width: 38px; height: 39px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; color: var(--c-bg); font-weight: 800; font-size: 0.97rem; flex-shrink: 0; }
  .so11-badge-bronze { background: #a0785a; }
  .so11-badge-silver { background: #8a8e94; }
  .so11-badge-gold { background: #c5a03f; }
  .so11-badge-plat { background: #6a7b8b; }
  .so11-badge-diamond { background: linear-gradient(138deg, var(--c-accent), color-mix(in srgb, var(--c-accent) 50%, #6a7b8b)); box-shadow: 0 0 14px -2px color-mix(in srgb, var(--c-accent) 60%, transparent); }
  .so11-rank-name { display: block; font-size: 1.026rem; font-weight: 800; color: var(--c-text); }
  .so11-rank-vol { display: block; font-size: 11px; color: var(--c-text-muted); margin-top: 2px; }
  .so11-pct { font-weight: 800; color: var(--c-accent); font-size: 1.027rem; font-variant-numeric: tabular-nums; }
  .so11-here { display: inline-block; font-size: 0.623rem; font-weight: 800; color: var(--c-accent); text-transform: uppercase; letter-spacing: 0.162em; padding: 3px 9px; border: 1px solid var(--c-accent); border-radius: 996px; }

.ft12_footer { background: var(--c-primary); border-top: 1px solid var(--c-border); }
/* Top row — single "command bar": [logo] [nav+extra links] [payments] [18+].
   Payments migrated up from the bottom row so the entire actionable
   surface (links + payments + compliance badge) lives on one line; the
   bottom row shrinks to pure copyright + "play responsibly" text.
   `margin-left: auto` on the payments block pushes it (and the 18+
   badge right after it) to the right edge while the nav grows to fill
   whatever gap is left between logo and that group. */
.ft12_top { display: flex; align-items: center; gap: 0.507rem 1.247rem; padding: 14px 0; flex-wrap: wrap; }

/* Nav — primary multipage links followed by legal/extra links, both
   inline with pipe separators. `:empty` collapses the whole row on
   landing sites without any of those placeholders producing links. */
.ft12_nav { display: flex; align-items: center; gap: 0; flex-wrap: wrap; flex: 1 1 auto; min-width: 0; }
.ft12_nav:empty { display: none; }
.ft12_nav a { color: var(--c-text-muted); font-size: 0.785rem; text-decoration: none; padding: 0.245rem 0.754rem; border-right: 1px solid var(--c-border); transition: color 0.2s; white-space: nowrap; }
.ft12_nav a:first-child { padding-left: 0; }
.ft12_nav a:last-child { border-right: none; }
.ft12_nav a:hover { color: var(--c-accent); }

/* Payments inline with the nav row — smaller than default so they read
   as a compliance strip rather than a marketing showcase. Scoped
   override of .iw-pay-logo: height trimmed from 22→16 px, padding
   squeezed so ten pill badges still fit next to a full nav bar. */
.ft12_pay { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-left: auto; }
.ft12_pay:empty { display: none; }
.ft12_pay .iw-pay-logo {
  height: 20px;
  max-width: 51px;
  padding: 4px 8px;
  border-radius: 5px;
}

.ft12_badge_row { display: flex; gap: 0.487rem; align-items: center; flex-shrink: 0; }

/* Bottom row — now just a thin compliance line (copyright +
   "play responsibly"). Centre-aligned for balance regardless of how
   wide the text happens to be after brand substitution. */
.ft12_bottom {
  border-top: 1px solid var(--c-border);
  padding: 10px 0;
  display: flex; align-items: center; justify-content: center;
  gap: 6px 20px; flex-wrap: wrap;
}
.ft12_legal { color: var(--c-text-muted); font-size: 0.716rem; display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }

@media (max-width: 768px) {
  .ft12_top { gap: 0.489rem 0.746rem; }
  .ft12_pay { margin-left: 0; width: 100%; justify-content: flex-start; }
  .ft12_badge_row { margin-left: auto; }
}
@media (max-width: 600px) {
  .ft12_top { flex-direction: column; align-items: flex-start; }
  .ft12_pay { justify-content: flex-start; }
  .ft12_badge_row { margin-left: 0; }
  .ft12_nav { flex: 1 1 100%; }
}

/* ── mobile header: hide desktop CTA, hamburger to right edge ── */
@media (max-width: 768px) {
  .h14_cta { margin-left: auto; }
  body .h14_cta-desktop { display: none !important; }
}

/* ── oe81 hero_img_01 ── */
.oe81-hero {
  position: relative;
  min-height: 493px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--c-bg) center/cover no-repeat;
  overflow: hidden;
}
.oe81-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
    rgb(0 0 0 / calc(.5 + var(--hi-offset, 0))) 0%,
    rgb(0 0 0 / calc(.62 + var(--hi-offset, 0))) 100%);
}
.oe81-content {
  position: relative; z-index: 1;
  text-align: center;
  max-width: 691px;
  padding: 40px 24px;
}
.oe81-title { color: #fff; margin: 0 0 16px; text-shadow: 0 2px 12px rgba(0,0,0,0.435); }
.oe81-sub {
  font-size: 17px;
  color: rgba(255,255,255,0.77);
  line-height: 1.6;
  margin: 0 0 29px;
}
.oe81-cta {
  display: inline-block;
  padding: 14px 35px;
  background: var(--c-accent);
  color: var(--c-bg);
  font-size: 15px;
  font-weight: 700;
  border-radius: var(--radius-full);
  text-decoration: none;
  transition: filter .2s, box-shadow .2s;
}
.oe81-cta:hover {
  filter: brightness(1.06);
  box-shadow:
    0 0 0 4px color-mix(in srgb, var(--c-accent) 22%, transparent),
    0 12px 27px -8px color-mix(in srgb, var(--c-accent) 80%, transparent);
}
@media (max-width: 600px) { .oe81-hero { min-height: 378px; } }

.ky94-wrap { max-width: 796px; margin: 0 auto; }
.ky94-list { display: flex; flex-direction: column; gap: 10px; margin-top: 39px; }
.ky94-item {
  background: var(--c-surface);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.ky94-item:hover {
  border-color: color-mix(in srgb, var(--c-accent) 35%, transparent);
  box-shadow: 0 4px 20px color-mix(in srgb, var(--c-accent) 6%, transparent);
}
.ky94-item.iw-faq-open {
  border-color: color-mix(in srgb, var(--c-accent) 55%, transparent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--c-accent) 25%, transparent),
              0 8px 33px color-mix(in srgb, var(--c-accent) 8%, transparent);
}
.ky94-q {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 24px;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.ky94-q::-webkit-details-marker { display: none; }
.ky94-num {
  font-size: 20px;
  font-weight: 900;
  color: color-mix(in srgb, var(--c-accent) 25%, transparent);
  min-width: 27px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  transition: color .2s;
  line-height: 1;
}
.ky94-item.iw-faq-open .ky94-num,
.ky94-item:hover .ky94-num { color: var(--c-accent); }
.ky94-qtext {
  flex: 1;
  font-size: 15px;
  font-weight: 600;
  color: var(--c-text);
  line-height: 1.4;
}
.ky94-chevron {
  width: 24px; height: 24px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  color: var(--c-text-muted);
  transition: transform .25s;
}
.ky94-item.iw-faq-open .ky94-chevron { transform: rotate(182deg); color: var(--c-accent); }
.ky94-body {
  padding: 0 24px 22px 70px;
  font-size: 14px;
  line-height: 1.8;
  color: var(--c-text-muted);
  border-top: 1px solid var(--c-border);
  padding-top: 18px;
}
.ky94-body a { color: var(--c-accent); }
.ky94-cta {
  margin-top: 32px;
  background: color-mix(in srgb, var(--c-accent) 6%, var(--c-surface));
  border: 1px solid color-mix(in srgb, var(--c-accent) 20%, transparent);
  border-radius: var(--radius-lg);
  padding: 24px 29px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.ky94-cta-text { font-size: 15px; font-weight: 600; color: var(--c-text); }
.ky94-cta-sub { font-size: 13px; color: var(--c-text-muted); margin-top: 3px; }
.ky94-header { text-align: center; }
.ky94-title { margin-top: 8px; }
.ky94-lead { margin-top: 10px; max-width: 557px; margin-left: auto; margin-right: auto; }

/* ── Two-line app CTA buttons ── */
.zr53-cta-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.18;
  gap: 1px;
}
.zr53-cta-top {
  font-size: .7em;
  font-weight: 400;
  opacity: .78;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.zr53-cta-bot {
  font-size: 1em;
  font-weight: 800;
  text-transform: uppercase;
}
