@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root {
  --pm-bg: #454545;
  --pm-surface: #3b3b3b;
  --pm-surface-2: #424242;
  --pm-card: #3d3d3d;
  --pm-card-top: #2f3f52;
  --pm-text: #f2f2f2;
  --pm-text-muted: #aaaaaa;
  --pm-text-dark: #1a1a1a;
  --pm-border: #5c5c5c;
  --pm-border-light: #4a4a4a;
  --pm-primary: #0780C5;
  --pm-primary-dark: #0565a0;
  --pm-secondary: #030303;
  --pm-secondary-hover: #1c1c1c;
  --pm-accent: #f0a520;
  --pm-success: #22c55e;
  --pm-warning: #f59e0b;
  --pm-error: #ef4444;
  --pm-info: #38bdf8;
  --pm-radius: 8px;
  --pm-radius-lg: 14px;
  --pm-radius-xl: 20px;
  --pm-header-h: 68px;
  --pm-gap: 24px;
  --pm-max-w: 1240px;
  --pm-font: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --pm-shadow: 0 2px 12px rgba(0,0,0,.35);
  --pm-shadow-lg: 0 8px 32px rgba(0,0,0,.45);
  --pm-transition: 200ms ease;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
body {
  font-family: var(--pm-font);
  background: var(--pm-bg);
  color: var(--pm-text);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--pm-primary); text-decoration: none; }
a:hover { text-decoration: underline; }
img { display: block; max-width: 100%; height: auto; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
input, textarea, select { font-family: inherit; }
ul, ol { list-style: none; }
table { border-collapse: collapse; }
:focus-visible { outline: 3px solid var(--pm-primary); outline-offset: 2px; border-radius: 4px; }

.pm-x7k2-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

.pm-x7k2-container {
  max-width: var(--pm-max-w);
  margin-inline: auto;
  padding-inline: 20px;
}

.pm-x7k2-section {
  padding-block: 56px;
}
.pm-x7k2-section + .pm-x7k2-section {
  border-top: 1px solid var(--pm-border-light);
}
.pm-x7k2-section__header {
  margin-bottom: 32px;
}
.pm-x7k2-section__title {
  font-size: clamp(1.4rem, 3vw, 1.9rem);
  font-weight: 700;
  color: var(--pm-text);
  margin-bottom: 8px;
}
.pm-x7k2-section__title svg {
  display: inline-block;
  vertical-align: -4px;
  margin-right: 8px;
}
.pm-x7k2-section__lead {
  color: var(--pm-text-muted);
  max-width: 720px;
}

/* ===== Buttons ===== */
.pm-x7k2-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 11px 22px; border-radius: var(--pm-radius);
  font-size: .9rem; font-weight: 600; line-height: 1.2;
  text-align: center; text-decoration: none;
  transition: background var(--pm-transition), color var(--pm-transition), transform var(--pm-transition);
  white-space: nowrap;
}
.pm-x7k2-btn:hover { text-decoration: none; transform: translateY(-1px); }
.pm-x7k2-btn:active { transform: translateY(0); }
.pm-x7k2-btn--primary { background: var(--pm-primary); color: #fff; }
.pm-x7k2-btn--primary:hover { background: var(--pm-primary-dark); }
.pm-x7k2-btn--secondary { background: var(--pm-secondary); color: #fff; border: 1px solid #333; }
.pm-x7k2-btn--secondary:hover { background: var(--pm-secondary-hover); }
.pm-x7k2-btn--ghost { background: transparent; color: var(--pm-text); border: 1.5px solid var(--pm-border); }
.pm-x7k2-btn--ghost:hover { border-color: var(--pm-primary); color: var(--pm-primary); }
.pm-x7k2-btn--sm { padding: 7px 14px; font-size: .8rem; }
.pm-x7k2-btn--full { width: 100%; justify-content: center; }
.pm-x7k2-btn--accent { background: var(--pm-accent); color: #1a1a1a; }
.pm-x7k2-btn--accent:hover { background: #d49018; }

/* ===== Badges ===== */
.pm-x7k2-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px; border-radius: 100px;
  font-size: .78rem; font-weight: 600;
  white-space: nowrap;
}
.pm-x7k2-badge--success { background: rgba(34,197,94,.15); color: var(--pm-success); }
.pm-x7k2-badge--info    { background: rgba(7,128,197,.18); color: var(--pm-info); }
.pm-x7k2-badge--warning { background: rgba(245,158,11,.15); color: var(--pm-warning); }
.pm-x7k2-badge--error   { background: rgba(239,68,68,.15); color: var(--pm-error); }
.pm-x7k2-badge--neutral { background: var(--pm-surface); color: var(--pm-text-muted); }
.pm-x7k2-badge--gold    { background: rgba(240,165,32,.2); color: var(--pm-accent); }

/* ===== Header ===== */
.pm-x7k2-header {
  position: sticky; top: 0; z-index: 100;
  background: var(--pm-surface);
  border-bottom: 1px solid var(--pm-border-light);
  height: var(--pm-header-h);
  box-shadow: var(--pm-shadow);
}
.pm-x7k2-header__inner {
  display: flex; align-items: center; gap: 20px;
  height: 100%; max-width: var(--pm-max-w);
  margin-inline: auto; padding-inline: 20px;
}
.pm-x7k2-header__logo {
  display: flex; align-items: center; gap: 10px;
  font-size: 1.05rem; font-weight: 700; color: var(--pm-text);
  text-decoration: none; flex-shrink: 0;
}
.pm-x7k2-header__logo:hover { text-decoration: none; color: var(--pm-primary); }
.pm-x7k2-header__logo img { width: 34px; height: 34px; }
.pm-x7k2-header__logo-text { line-height: 1.1; }
.pm-x7k2-header__logo-sub { display: block; font-size: .68rem; font-weight: 400; color: var(--pm-text-muted); text-transform: uppercase; letter-spacing: .06em; }
.pm-x7k2-header__flag { display: flex; align-items: center; flex-shrink: 0; }
.pm-x7k2-header__flag img { border-radius: 2px; }
.pm-x7k2-nav { flex: 1; display: flex; align-items: center; }
.pm-x7k2-nav__list { display: flex; align-items: center; gap: 4px; flex-wrap: nowrap; }
.pm-x7k2-nav__link {
  display: flex; align-items: center; gap: 5px;
  padding: 6px 11px; border-radius: var(--pm-radius);
  font-size: .83rem; font-weight: 500; color: var(--pm-text-muted);
  transition: color var(--pm-transition), background var(--pm-transition);
  white-space: nowrap;
}
.pm-x7k2-nav__link:hover { color: var(--pm-text); background: var(--pm-surface-2); text-decoration: none; }
.pm-x7k2-nav__link svg { flex-shrink: 0; opacity: .8; }
.pm-x7k2-header__ctas { display: flex; gap: 8px; flex-shrink: 0; margin-left: auto; }
.pm-x7k2-burger {
  display: none; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: var(--pm-radius);
  color: var(--pm-text); transition: background var(--pm-transition);
  margin-left: auto;
}
.pm-x7k2-burger:hover { background: var(--pm-surface-2); }
.pm-x7k2-burger__bar {
  display: block; width: 22px; height: 2px;
  background: currentColor; border-radius: 2px;
  transition: transform var(--pm-transition), opacity var(--pm-transition);
  position: relative;
}
.pm-x7k2-burger__bar::before,
.pm-x7k2-burger__bar::after {
  content: ''; display: block; width: 22px; height: 2px;
  background: currentColor; border-radius: 2px;
  position: absolute; left: 0;
  transition: transform var(--pm-transition), opacity var(--pm-transition);
}
.pm-x7k2-burger__bar::before { top: -7px; }
.pm-x7k2-burger__bar::after { bottom: -7px; }
.pm-x7k2-burger[aria-expanded="true"] .pm-x7k2-burger__bar { background: transparent; }
.pm-x7k2-burger[aria-expanded="true"] .pm-x7k2-burger__bar::before { transform: rotate(45deg); top: 0; }
.pm-x7k2-burger[aria-expanded="true"] .pm-x7k2-burger__bar::after { transform: rotate(-45deg); bottom: 0; }

.pm-x7k2-mobile-cta { display: none; }

.pm-x7k2-nav__mobile {
  display: none; position: absolute; top: var(--pm-header-h); left: 0; right: 0;
  background: var(--pm-surface); border-bottom: 2px solid var(--pm-primary);
  padding: 16px 20px; box-shadow: var(--pm-shadow-lg);
  flex-direction: column; gap: 6px;
}
.pm-x7k2-nav__mobile.is-open { display: flex; }
.pm-x7k2-nav__mobile .pm-x7k2-nav__link { width: 100%; border-radius: var(--pm-radius); padding: 10px 14px; }
.pm-x7k2-nav__mobile-ctas { display: flex; gap: 10px; margin-top: 10px; padding-top: 12px; border-top: 1px solid var(--pm-border); }
.pm-x7k2-nav__mobile-ctas .pm-x7k2-btn { flex: 1; justify-content: center; }

/* ===== Hero ===== */
.pm-x7k2-hero {
  background: linear-gradient(135deg, #2a3a4d 0%, #333f4e 50%, var(--pm-surface) 100%);
  padding-block: 60px 48px;
  overflow: hidden;
}
.pm-x7k2-hero__inner {
  display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center;
  max-width: var(--pm-max-w); margin-inline: auto; padding-inline: 20px;
}
.pm-x7k2-hero__title {
  font-size: clamp(1.7rem, 4vw, 2.6rem);
  font-weight: 700; line-height: 1.2; margin-bottom: 16px;
  color: #fff;
}
.pm-x7k2-hero__lead {
  font-size: 1.05rem; color: rgba(255,255,255,.72); margin-bottom: 24px;
  max-width: 520px;
}
.pm-x7k2-hero__badges {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px;
}
.pm-x7k2-hero__ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.pm-x7k2-hero__visual { position: relative; }
.pm-x7k2-hero__visual img {
  width: 100%; max-width: 480px; border-radius: var(--pm-radius-xl);
  box-shadow: var(--pm-shadow-lg);
}

/* ===== Breadcrumbs ===== */
.pm-x7k2-breadcrumbs {
  background: var(--pm-surface);
  border-bottom: 1px solid var(--pm-border-light);
  padding-block: 10px;
}
.pm-x7k2-breadcrumbs__list {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  font-size: .83rem; color: var(--pm-text-muted);
}
.pm-x7k2-breadcrumbs__list li + li::before {
  content: '/'; margin-right: 8px; color: var(--pm-border);
}
.pm-x7k2-breadcrumbs__list a { color: var(--pm-text-muted); }
.pm-x7k2-breadcrumbs__list a:hover { color: var(--pm-primary); }
.pm-x7k2-breadcrumbs__list [aria-current="page"] { color: var(--pm-text); }

/* ===== TOC ===== */
.pm-x7k2-toc {
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  padding: 24px 28px;
  margin-block: 32px;
}
.pm-x7k2-toc__title {
  font-size: 1rem; font-weight: 700; margin-bottom: 14px;
  color: var(--pm-text);
}
.pm-x7k2-toc__list {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 6px 20px; list-style: decimal; padding-left: 20px;
}
.pm-x7k2-toc__list li { color: var(--pm-text-muted); font-size: .9rem; }
.pm-x7k2-toc__list a {
  color: var(--pm-primary); font-size: .9rem;
  transition: color var(--pm-transition);
}
.pm-x7k2-toc__list a:hover { color: var(--pm-info); }

/* ===== Filters ===== */
.pm-x7k2-filters {
  display: flex; flex-wrap: wrap; gap: 10px; align-items: center;
  margin-bottom: 24px; padding: 16px 20px;
  background: var(--pm-surface); border-radius: var(--pm-radius-lg);
  border: 1px solid var(--pm-border-light);
}
.pm-x7k2-filters__group { display: flex; align-items: center; gap: 8px; }
.pm-x7k2-filters__label { font-size: .8rem; color: var(--pm-text-muted); font-weight: 500; white-space: nowrap; }
.pm-x7k2-filter-btn {
  padding: 5px 14px; border-radius: 100px; font-size: .8rem; font-weight: 500;
  border: 1.5px solid var(--pm-border); color: var(--pm-text-muted);
  cursor: pointer; transition: all var(--pm-transition);
  background: transparent;
}
.pm-x7k2-filter-btn:hover, .pm-x7k2-filter-btn.is-active {
  border-color: var(--pm-primary); color: var(--pm-primary); background: rgba(7,128,197,.1);
}
.pm-x7k2-filters__sort {
  margin-left: auto; display: flex; align-items: center; gap: 8px;
}
.pm-x7k2-sort-select {
  background: var(--pm-card); border: 1.5px solid var(--pm-border);
  color: var(--pm-text); padding: 5px 10px; border-radius: var(--pm-radius);
  font-size: .83rem; cursor: pointer;
}

/* ===== Casino Cards ===== */
.pm-x7k2-casinos-list { display: flex; flex-direction: column; gap: 16px; }

.pm-x7k2-casino-card {
  background: var(--pm-card);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  overflow: hidden;
  transition: box-shadow var(--pm-transition), transform var(--pm-transition);
}
.pm-x7k2-casino-card:hover { box-shadow: var(--pm-shadow-lg); transform: translateY(-2px); }
.pm-x7k2-casino-card--top {
  border-color: rgba(7,128,197,.4);
  background: var(--pm-card-top);
}
.pm-x7k2-casino-card--top-1 { border-color: rgba(240,165,32,.5); border-width: 2px; }
.pm-x7k2-casino-card__inner { display: flex; gap: 0; }
.pm-x7k2-casino-card__rank-col {
  display: flex; align-items: center; justify-content: center;
  flex-direction: column; gap: 4px;
  width: 64px; flex-shrink: 0;
  background: var(--pm-surface);
  border-right: 1px solid var(--pm-border-light);
  padding-block: 16px;
}
.pm-x7k2-casino-card--top-1 .pm-x7k2-casino-card__rank-col { background: rgba(240,165,32,.12); }
.pm-x7k2-casino-card--top-2 .pm-x7k2-casino-card__rank-col { background: rgba(148,163,184,.1); }
.pm-x7k2-casino-card--top-3 .pm-x7k2-casino-card__rank-col { background: rgba(180,120,60,.1); }
.pm-x7k2-casino-card__rank-num {
  font-size: 1.4rem; font-weight: 800; line-height: 1;
}
.pm-x7k2-casino-card--top-1 .pm-x7k2-casino-card__rank-num { color: var(--pm-accent); }
.pm-x7k2-casino-card--top-2 .pm-x7k2-casino-card__rank-num { color: #94a3b8; }
.pm-x7k2-casino-card--top-3 .pm-x7k2-casino-card__rank-num { color: #b47c3c; }
.pm-x7k2-casino-card__rank-label { font-size: .65rem; color: var(--pm-text-muted); text-transform: uppercase; letter-spacing: .05em; }
.pm-x7k2-casino-card__body { flex: 1; padding: 20px 22px; min-width: 0; }
.pm-x7k2-casino-card__head {
  display: flex; align-items: flex-start; gap: 16px;
  margin-bottom: 12px; flex-wrap: wrap;
}
.pm-x7k2-casino-card__logo {
  background: rgba(255,255,255,.06); border-radius: var(--pm-radius);
  padding: 8px 12px; flex-shrink: 0; display: flex; align-items: center;
  border: 1px solid var(--pm-border);
}
.pm-x7k2-casino-card__logo img { width: 100px; height: 38px; object-fit: contain; }
.pm-x7k2-casino-card__title-row { flex: 1; min-width: 200px; }
.pm-x7k2-casino-card__name {
  font-size: 1.1rem; font-weight: 700; color: var(--pm-text); margin-bottom: 4px;
}
.pm-x7k2-casino-card__geo {
  display: flex; align-items: center; gap: 6px;
  font-size: .8rem; color: var(--pm-text-muted); margin-bottom: 6px;
}
.pm-x7k2-casino-card__geo img { border-radius: 2px; }
.pm-x7k2-casino-card__pay-badges { display: flex; flex-wrap: wrap; gap: 5px; }
.pm-x7k2-casino-card__rating {
  display: flex; align-items: center; gap: 4px;
  font-size: .85rem; font-weight: 600; color: var(--pm-accent);
  flex-shrink: 0;
}
.pm-x7k2-casino-card__grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 8px 12px; margin-bottom: 14px;
}
.pm-x7k2-casino-card__stat {
  background: rgba(0,0,0,.2); border-radius: var(--pm-radius);
  padding: 8px 10px;
}
.pm-x7k2-casino-card__stat-label { font-size: .7rem; color: var(--pm-text-muted); margin-bottom: 3px; text-transform: uppercase; letter-spacing: .05em; }
.pm-x7k2-casino-card__stat-value { font-size: .9rem; font-weight: 600; color: var(--pm-text); }
.pm-x7k2-casino-card__bonus {
  background: rgba(7,128,197,.1); border: 1px solid rgba(7,128,197,.25);
  border-radius: var(--pm-radius); padding: 10px 14px; margin-bottom: 12px;
}
.pm-x7k2-casino-card__bonus-label { font-size: .7rem; color: var(--pm-info); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 4px; }
.pm-x7k2-casino-card__bonus-value { font-size: .95rem; font-weight: 700; color: #fff; margin-bottom: 2px; }
.pm-x7k2-casino-card__bonus-terms { font-size: .77rem; color: var(--pm-text-muted); }
.pm-x7k2-casino-card__pros {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px;
}
.pm-x7k2-casino-card__pro {
  display: flex; align-items: center; gap: 5px;
  font-size: .8rem; color: var(--pm-text-muted);
}
.pm-x7k2-casino-card__pro::before {
  content: ''; display: inline-block; width: 6px; height: 6px;
  border-radius: 50%; background: var(--pm-success); flex-shrink: 0;
}
.pm-x7k2-casino-card__footer {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  padding-top: 12px; border-top: 1px solid var(--pm-border-light);
}
.pm-x7k2-casino-card__license {
  font-size: .75rem; color: var(--pm-text-muted); flex: 1; min-width: 160px;
}
.pm-x7k2-casino-card__actions { display: flex; gap: 8px; flex-wrap: wrap; }
.pm-x7k2-casino-card__details-toggle {
  font-size: .8rem; color: var(--pm-primary); cursor: pointer;
  border: none; background: none; padding: 0;
}
.pm-x7k2-casino-card__details-toggle:hover { text-decoration: underline; }
.pm-x7k2-casino-card__expand {
  display: none; padding: 16px 22px;
  border-top: 1px solid var(--pm-border-light);
  background: rgba(0,0,0,.15);
}
.pm-x7k2-casino-card__expand.is-open { display: block; }
.pm-x7k2-casino-card__expand-table { width: 100%; font-size: .83rem; }
.pm-x7k2-casino-card__expand-table td { padding: 5px 8px; vertical-align: top; }
.pm-x7k2-casino-card__expand-table td:first-child { color: var(--pm-text-muted); width: 180px; }
.pm-x7k2-casino-card__expand-table td:last-child { color: var(--pm-text); }
.pm-x7k2-casino-card__source { font-size: .72rem; color: var(--pm-text-muted); margin-top: 8px; }

.pm-x7k2-casinos-list[data-filtered="true"] .pm-x7k2-casino-card { display: none; }
.pm-x7k2-casinos-list[data-filtered="true"] .pm-x7k2-casino-card.is-visible { display: flex; }
.pm-x7k2-no-results {
  display: none; text-align: center; padding: 40px; color: var(--pm-text-muted);
  background: var(--pm-surface); border-radius: var(--pm-radius-lg);
  border: 1px dashed var(--pm-border);
}
.pm-x7k2-no-results.is-visible { display: block; }

/* ===== Info Table ===== */
.pm-x7k2-info-table-wrap { overflow-x: auto; border-radius: var(--pm-radius-lg); }
.pm-x7k2-info-table {
  width: 100%; min-width: 480px;
  background: var(--pm-surface);
  border-radius: var(--pm-radius-lg);
  overflow: hidden;
  border: 1px solid var(--pm-border-light);
}
.pm-x7k2-info-table thead {
  background: rgba(7,128,197,.15);
  border-bottom: 2px solid var(--pm-border);
}
.pm-x7k2-info-table th {
  padding: 12px 18px; text-align: left;
  font-size: .8rem; font-weight: 600; color: var(--pm-info);
  text-transform: uppercase; letter-spacing: .06em;
}
.pm-x7k2-info-table td {
  padding: 11px 18px; text-align: left;
  font-size: .88rem; color: var(--pm-text);
  border-bottom: 1px solid var(--pm-border-light);
  vertical-align: middle;
}
.pm-x7k2-info-table tbody tr:last-child td { border-bottom: none; }
.pm-x7k2-info-table tbody tr:nth-child(even) td { background: rgba(0,0,0,.12); }
.pm-x7k2-info-table td:first-child {
  color: var(--pm-text-muted); font-size: .83rem; width: 220px;
  display: flex; align-items: center; gap: 8px;
}
.pm-x7k2-info-table td:first-child svg { flex-shrink: 0; opacity: .8; }
.pm-x7k2-info-table .pm-x7k2-badge { font-size: .75rem; }

/* ===== Steps ===== */
.pm-x7k2-steps { display: flex; flex-direction: column; gap: 0; }
.pm-x7k2-step {
  display: flex; gap: 20px;
  padding-bottom: 28px; position: relative;
}
.pm-x7k2-step:not(:last-child)::before {
  content: ''; position: absolute;
  left: 19px; top: 44px; bottom: 0;
  width: 2px; background: var(--pm-border);
}
.pm-x7k2-step__num {
  width: 40px; height: 40px; border-radius: 50%;
  background: var(--pm-primary); color: #fff;
  font-weight: 700; font-size: .95rem;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; position: relative; z-index: 1;
}
.pm-x7k2-step__body { flex: 1; padding-top: 8px; }
.pm-x7k2-step__title { font-size: 1rem; font-weight: 600; margin-bottom: 6px; }
.pm-x7k2-step__text { font-size: .88rem; color: var(--pm-text-muted); }
.pm-x7k2-step__note {
  margin-top: 8px; padding: 8px 12px;
  background: rgba(245,158,11,.1); border-left: 3px solid var(--pm-warning);
  border-radius: 0 var(--pm-radius) var(--pm-radius) 0;
  font-size: .83rem; color: var(--pm-warning);
}

/* ===== Payment Timeline ===== */
.pm-x7k2-timeline {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0;
  background: var(--pm-surface); border-radius: var(--pm-radius-lg);
  border: 1px solid var(--pm-border-light); overflow: hidden;
}
.pm-x7k2-timeline__step {
  padding: 20px 16px; text-align: center;
  border-right: 1px solid var(--pm-border-light);
  position: relative;
}
.pm-x7k2-timeline__step:last-child { border-right: none; }
.pm-x7k2-timeline__step:not(:last-child)::after {
  content: '›'; position: absolute; right: -12px; top: 50%;
  transform: translateY(-50%); font-size: 1.4rem; color: var(--pm-primary); z-index: 1;
}
.pm-x7k2-timeline__icon {
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(7,128,197,.15); border: 2px solid rgba(7,128,197,.3);
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 10px;
}
.pm-x7k2-timeline__icon--done { background: rgba(34,197,94,.15); border-color: rgba(34,197,94,.3); }
.pm-x7k2-timeline__label { font-size: .8rem; font-weight: 600; margin-bottom: 4px; }
.pm-x7k2-timeline__time { font-size: .78rem; color: var(--pm-primary); font-weight: 600; }
.pm-x7k2-timeline__note { font-size: .73rem; color: var(--pm-text-muted); margin-top: 4px; }
.pm-x7k2-timeline-delays {
  margin-top: 20px; background: var(--pm-surface);
  border-radius: var(--pm-radius-lg); border: 1px solid var(--pm-border-light);
  padding: 20px 24px;
}
.pm-x7k2-timeline-delays__title { font-size: .95rem; font-weight: 600; margin-bottom: 12px; }
.pm-x7k2-timeline-delays__list { display: flex; flex-direction: column; gap: 8px; }
.pm-x7k2-timeline-delays__item {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: .85rem; color: var(--pm-text-muted);
}
.pm-x7k2-timeline-delays__item::before {
  content: '⚠'; font-size: .8rem; margin-top: 2px; flex-shrink: 0;
}

/* ===== Bonus Cards ===== */
.pm-x7k2-bonus-scroll {
  display: flex; gap: 16px; overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 8px;
  scrollbar-width: thin;
  scrollbar-color: var(--pm-border) transparent;
}
.pm-x7k2-bonus-scroll::-webkit-scrollbar { height: 4px; }
.pm-x7k2-bonus-scroll::-webkit-scrollbar-thumb { background: var(--pm-border); border-radius: 4px; }
.pm-x7k2-bonus-card {
  min-width: 280px; flex: 0 0 280px;
  scroll-snap-align: start;
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  padding: 20px; display: flex; flex-direction: column; gap: 12px;
}
.pm-x7k2-bonus-card__casino { font-size: .8rem; color: var(--pm-text-muted); font-weight: 500; }
.pm-x7k2-bonus-card__offer {
  font-size: 1.05rem; font-weight: 700; color: var(--pm-text); line-height: 1.3;
}
.pm-x7k2-bonus-card__tag { font-size: .75rem; color: var(--pm-accent); font-weight: 600; }
.pm-x7k2-bonus-card__details { display: flex; flex-direction: column; gap: 5px; }
.pm-x7k2-bonus-card__detail { font-size: .82rem; color: var(--pm-text-muted); }
.pm-x7k2-bonus-card__detail strong { color: var(--pm-text); }
.pm-x7k2-bonus-card__compat {
  padding: 8px 10px; border-radius: var(--pm-radius);
  background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2);
  font-size: .78rem; color: var(--pm-success);
  display: flex; align-items: center; gap: 6px;
}
.pm-x7k2-bonus-card__compat::before { content: '✓'; font-weight: 700; }
.pm-x7k2-bonus-card .pm-x7k2-btn { margin-top: auto; }

/* ===== How To Use (visual steps) ===== */
.pm-x7k2-howto-slider {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 16px;
}
.pm-x7k2-howto-step {
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  overflow: hidden; text-align: center;
}
.pm-x7k2-howto-step__img {
  width: 100%; aspect-ratio: 4/3;
  background: var(--pm-card); display: flex; align-items: center; justify-content: center;
}
.pm-x7k2-howto-step__img img { width: 100%; height: 100%; object-fit: cover; }
.pm-x7k2-howto-step__body { padding: 12px 14px; }
.pm-x7k2-howto-step__num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--pm-primary); color: #fff;
  font-size: .8rem; font-weight: 700; margin-bottom: 8px;
}
.pm-x7k2-howto-step__label { font-size: .88rem; font-weight: 600; color: var(--pm-text); margin-bottom: 4px; }
.pm-x7k2-howto-step__desc { font-size: .78rem; color: var(--pm-text-muted); }
.pm-x7k2-howto-note {
  margin-top: 16px; padding: 10px 14px;
  background: var(--pm-surface); border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius); font-size: .83rem; color: var(--pm-text-muted);
}

/* ===== Alternatives Table ===== */
.pm-x7k2-alt-table-wrap { overflow-x: auto; border-radius: var(--pm-radius-lg); }
.pm-x7k2-alt-table {
  width: 100%; min-width: 600px;
  border-radius: var(--pm-radius-lg); overflow: hidden;
  border: 1px solid var(--pm-border-light);
}
.pm-x7k2-alt-table thead { background: var(--pm-surface); border-bottom: 2px solid var(--pm-border); }
.pm-x7k2-alt-table th {
  padding: 11px 14px; text-align: left;
  font-size: .78rem; font-weight: 600; color: var(--pm-text-muted);
  text-transform: uppercase; letter-spacing: .05em;
}
.pm-x7k2-alt-table th:first-child { width: 140px; }
.pm-x7k2-alt-table td {
  padding: 10px 14px; font-size: .84rem;
  border-bottom: 1px solid var(--pm-border-light);
  background: var(--pm-card); vertical-align: top;
}
.pm-x7k2-alt-table tbody tr:last-child td { border-bottom: none; }
.pm-x7k2-alt-table .pm-x7k2-alt-table__highlight td { background: rgba(7,128,197,.08); }
.pm-x7k2-alt-table__method { font-weight: 600; color: var(--pm-text); }
.pm-x7k2-alt-table__type { font-size: .75rem; color: var(--pm-text-muted); }

/* ===== Accordion ===== */
.pm-x7k2-accordion { display: flex; flex-direction: column; gap: 8px; }
.pm-x7k2-accordion__item {
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg); overflow: hidden;
}
.pm-x7k2-accordion__trigger {
  width: 100%; text-align: left;
  display: flex; align-items: center; gap: 12px;
  padding: 14px 20px; cursor: pointer;
  background: none; border: none; color: var(--pm-text);
  font-size: .92rem; font-weight: 600; font-family: inherit;
  transition: background var(--pm-transition);
}
.pm-x7k2-accordion__trigger:hover { background: rgba(7,128,197,.08); }
.pm-x7k2-accordion__trigger[aria-expanded="true"] { background: rgba(7,128,197,.1); }
.pm-x7k2-accordion__icon {
  margin-left: auto; width: 20px; height: 20px; flex-shrink: 0;
  transition: transform var(--pm-transition); color: var(--pm-primary);
}
.pm-x7k2-accordion__trigger[aria-expanded="true"] .pm-x7k2-accordion__icon { transform: rotate(180deg); }
.pm-x7k2-accordion__panel {
  display: none; padding: 0 20px 16px;
  font-size: .88rem; color: var(--pm-text-muted);
}
.pm-x7k2-accordion__panel.is-open { display: block; }
.pm-x7k2-accordion__panel strong { color: var(--pm-text); }
.pm-x7k2-accordion__panel p + p { margin-top: 6px; }

/* ===== Content Area ===== */
.pm-x7k2-content-wrap {
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  padding: 32px 36px;
}
.pm-x7k2-content-wrap h2 { font-size: 1.35rem; font-weight: 700; margin: 24px 0 12px; color: var(--pm-text); }
.pm-x7k2-content-wrap h3 { font-size: 1.1rem; font-weight: 600; margin: 20px 0 10px; color: var(--pm-text); }
.pm-x7k2-content-wrap h4 { font-size: .95rem; font-weight: 600; margin: 16px 0 8px; color: var(--pm-text); }
.pm-x7k2-content-wrap p { margin-bottom: 14px; font-size: .93rem; color: rgba(242,242,242,.85); line-height: 1.75; }
.pm-x7k2-content-wrap a { color: var(--pm-primary); }
.pm-x7k2-content-wrap ul, .pm-x7k2-content-wrap ol { padding-left: 20px; margin-bottom: 14px; list-style: initial; }
.pm-x7k2-content-wrap ol { list-style: decimal; }
.pm-x7k2-content-wrap li { margin-bottom: 6px; font-size: .93rem; color: rgba(242,242,242,.85); }
.pm-x7k2-content-wrap table { width: 100%; margin-bottom: 16px; border: 1px solid var(--pm-border); border-radius: var(--pm-radius); overflow: hidden; }
.pm-x7k2-content-wrap th { background: var(--pm-card); padding: 8px 12px; font-size: .83rem; text-align: left; border-bottom: 2px solid var(--pm-border); }
.pm-x7k2-content-wrap td { padding: 8px 12px; font-size: .83rem; border-bottom: 1px solid var(--pm-border-light); }
.pm-x7k2-content-wrap blockquote {
  border-left: 3px solid var(--pm-primary); padding-left: 16px;
  color: var(--pm-text-muted); font-style: italic; margin: 16px 0;
}
.pm-x7k2-content-wrap img { border-radius: var(--pm-radius); margin-block: 16px; }

/* ===== Reviews ===== */
.pm-x7k2-reviews-empty {
  text-align: center; padding: 32px 20px;
  background: var(--pm-surface);
  border: 1px dashed var(--pm-border);
  border-radius: var(--pm-radius-lg); margin-bottom: 24px;
  color: var(--pm-text-muted);
}
.pm-x7k2-reviews-empty__icon { font-size: 2rem; margin-bottom: 12px; }
.pm-x7k2-reviews-empty__title { font-size: 1rem; font-weight: 600; color: var(--pm-text); margin-bottom: 6px; }

/* ===== Forms ===== */
.pm-x7k2-form { display: flex; flex-direction: column; gap: 16px; }
.pm-x7k2-form__group { display: flex; flex-direction: column; gap: 6px; }
.pm-x7k2-form__label { font-size: .85rem; font-weight: 500; color: var(--pm-text); }
.pm-x7k2-form__label small { color: var(--pm-text-muted); font-weight: 400; }
.pm-x7k2-form__input {
  background: var(--pm-card);
  border: 1.5px solid var(--pm-border);
  border-radius: var(--pm-radius);
  color: var(--pm-text); padding: 10px 14px;
  font-size: .9rem; transition: border-color var(--pm-transition);
  width: 100%;
}
.pm-x7k2-form__input:focus { outline: none; border-color: var(--pm-primary); }
.pm-x7k2-form__input.is-invalid { border-color: var(--pm-error); }
.pm-x7k2-form__textarea { min-height: 100px; resize: vertical; }
.pm-x7k2-form__error { font-size: .78rem; color: var(--pm-error); min-height: 16px; }
.pm-x7k2-form__group--check { flex-direction: row; align-items: flex-start; gap: 10px; flex-wrap: wrap; }
.pm-x7k2-form__check-label {
  display: flex; gap: 8px; cursor: pointer; font-size: .84rem;
  color: var(--pm-text-muted); align-items: flex-start;
}
.pm-x7k2-form__check-label input[type="checkbox"] { margin-top: 2px; flex-shrink: 0; }
.pm-x7k2-form__notice {
  padding: 10px 14px; border-radius: var(--pm-radius);
  font-size: .85rem; background: rgba(7,128,197,.12);
  border: 1px solid rgba(7,128,197,.3); color: var(--pm-info);
  display: none;
}
.pm-x7k2-form__notice.is-visible { display: block; }

/* ===== FAQ ===== */
.pm-x7k2-faq__intro { color: var(--pm-text-muted); margin-bottom: 24px; font-size: .9rem; }

/* ===== Author ===== */
.pm-x7k2-author-box {
  display: flex; gap: 24px; align-items: flex-start;
  background: var(--pm-surface);
  border: 1px solid var(--pm-border-light);
  border-radius: var(--pm-radius-lg);
  padding: 28px 30px; flex-wrap: wrap;
}
.pm-x7k2-author-box__avatar {
  width: 80px; height: 80px; border-radius: 50%;
  background: rgba(7,128,197,.2); border: 2px solid var(--pm-primary);
  overflow: hidden; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; font-weight: 700; color: var(--pm-primary);
}
.pm-x7k2-author-box__body { flex: 1; min-width: 240px; }
.pm-x7k2-author-box__name { font-size: 1.05rem; font-weight: 700; margin-bottom: 4px; }
.pm-x7k2-author-box__role { font-size: .83rem; color: var(--pm-info); margin-bottom: 10px; }
.pm-x7k2-author-box__bio { font-size: .88rem; color: var(--pm-text-muted); margin-bottom: 12px; line-height: 1.65; }
.pm-x7k2-author-box__links { display: flex; gap: 10px; flex-wrap: wrap; }
.pm-x7k2-author-box__link {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: .82rem; color: var(--pm-primary);
}
.pm-x7k2-methodology {
  margin-top: 20px; padding-top: 20px;
  border-top: 1px solid var(--pm-border-light);
}
.pm-x7k2-methodology__title { font-size: .9rem; font-weight: 600; margin-bottom: 10px; }
.pm-x7k2-methodology__list {
  display: flex; flex-wrap: wrap; gap: 8px;
}
.pm-x7k2-methodology__item {
  font-size: .78rem; color: var(--pm-text-muted);
  background: var(--pm-card); border: 1px solid var(--pm-border);
  border-radius: 100px; padding: 4px 12px;
}
.pm-x7k2-affiliate-note {
  margin-top: 16px; padding: 12px 16px;
  background: rgba(240,165,32,.08); border: 1px solid rgba(240,165,32,.2);
  border-radius: var(--pm-radius); font-size: .82rem; color: var(--pm-text-muted);
}
.pm-x7k2-review-dates { font-size: .78rem; color: var(--pm-text-muted); margin-top: 10px; }

/* ===== Footer ===== */
.pm-x7k2-footer {
  background: var(--pm-secondary);
  border-top: 2px solid var(--pm-border);
  padding-top: 48px;
}
.pm-x7k2-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr repeat(3, 1fr);
  gap: 32px; padding-bottom: 40px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.pm-x7k2-footer__brand { }
.pm-x7k2-footer__logo {
  display: flex; align-items: center; gap: 10px;
  font-size: 1.05rem; font-weight: 700; color: var(--pm-text);
  text-decoration: none; margin-bottom: 12px;
}
.pm-x7k2-footer__logo:hover { text-decoration: none; color: var(--pm-primary); }
.pm-x7k2-footer__logo img { width: 30px; height: 30px; }
.pm-x7k2-footer__tagline { font-size: .83rem; color: var(--pm-text-muted); margin-bottom: 14px; line-height: 1.6; }
.pm-x7k2-footer__geo {
  display: flex; align-items: center; gap: 8px;
  font-size: .8rem; color: var(--pm-text-muted);
}
.pm-x7k2-footer__col-title { font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: .07em; color: var(--pm-text-muted); margin-bottom: 14px; }
.pm-x7k2-footer__links { display: flex; flex-direction: column; gap: 7px; }
.pm-x7k2-footer__links a { font-size: .84rem; color: rgba(255,255,255,.55); transition: color var(--pm-transition); }
.pm-x7k2-footer__links a:hover { color: var(--pm-primary); text-decoration: none; }
.pm-x7k2-footer__bottom { padding-block: 24px; }
.pm-x7k2-footer__bottom-inner { display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-start; }
.pm-x7k2-footer__disclaimer { font-size: .77rem; color: rgba(255,255,255,.35); line-height: 1.65; flex: 1; min-width: 280px; }
.pm-x7k2-footer__disclaimer a { color: rgba(255,255,255,.45); }
.pm-x7k2-footer__rg { flex-shrink: 0; text-align: right; }
.pm-x7k2-footer__rg-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--pm-radius); padding: 6px 12px;
  font-size: .75rem; color: rgba(255,255,255,.5);
}
.pm-x7k2-footer__age {
  margin-top: 14px; padding: 10px 14px;
  background: rgba(239,68,68,.08); border: 1px solid rgba(239,68,68,.2);
  border-radius: var(--pm-radius); font-size: .78rem; color: rgba(239,68,68,.8);
  font-weight: 600;
}
.pm-x7k2-footer__copyright { font-size: .77rem; color: rgba(255,255,255,.25); margin-top: 12px; }
.pm-x7k2-footer__payment-logos { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; align-items: center; }
.pm-x7k2-footer__payment-logos img { height: 28px; width: auto; opacity: .55; border-radius: 4px; filter: grayscale(.4); }
.pm-x7k2-footer__trust-logos { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 8px; align-items: center; }
.pm-x7k2-footer__trust-logos img { height: 22px; width: auto; opacity: .4; }

/* ===== Alert/notice box ===== */
.pm-x7k2-alert {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 12px 16px; border-radius: var(--pm-radius);
  font-size: .85rem; margin-block: 16px;
}
.pm-x7k2-alert--warning { background: rgba(245,158,11,.1); border: 1px solid rgba(245,158,11,.3); color: var(--pm-warning); }
.pm-x7k2-alert--info { background: rgba(56,189,248,.1); border: 1px solid rgba(56,189,248,.25); color: var(--pm-info); }
.pm-x7k2-alert--success { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.25); color: var(--pm-success); }
.pm-x7k2-alert__icon { flex-shrink: 0; margin-top: 1px; }

/* ===== Tile grid (for pros/cons) ===== */
.pm-x7k2-tile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pm-x7k2-tile {
  background: var(--pm-surface); border-radius: var(--pm-radius-lg);
  border: 1px solid var(--pm-border-light); padding: 20px;
}
.pm-x7k2-tile__title { font-size: .9rem; font-weight: 600; margin-bottom: 12px; }
.pm-x7k2-tile--pro .pm-x7k2-tile__title { color: var(--pm-success); }
.pm-x7k2-tile--con .pm-x7k2-tile__title { color: var(--pm-error); }
.pm-x7k2-tile__list { display: flex; flex-direction: column; gap: 7px; }
.pm-x7k2-tile__item {
  display: flex; align-items: flex-start; gap: 7px;
  font-size: .85rem; color: var(--pm-text-muted);
}
.pm-x7k2-tile__item::before { content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; margin-top: 6px; }
.pm-x7k2-tile--pro .pm-x7k2-tile__item::before { background: var(--pm-success); }
.pm-x7k2-tile--con .pm-x7k2-tile__item::before { background: var(--pm-error); }

/* ===== Unused decorative classes (uniqualization) ===== */
.pm-x7k2-widget-sidebar, .pm-x7k2-post-meta, .pm-x7k2-entry-category,
.pm-x7k2-tag-cloud, .pm-x7k2-archive-link, .pm-x7k2-breadcrumb-item--hidden,
.pm-x7k2-card-media-overlay, .pm-x7k2-entry-footer, .pm-x7k2-comment-count,
.pm-x7k2-read-more-link { display: none; }

.pm-x7k2-data-col { display: flex; flex-direction: column; gap: 4px; }
.pm-x7k2-data-row { display: flex; justify-content: space-between; font-size: .82rem; }
.pm-x7k2-data-key { color: var(--pm-text-muted); }
.pm-x7k2-data-val { color: var(--pm-text); font-weight: 500; }
.pm-x7k2-divider { height: 1px; background: var(--pm-border-light); margin-block: 24px; }

.pm-x7k2-scroll-top {
  position: fixed; bottom: 24px; right: 24px;
  width: 40px; height: 40px; border-radius: 50%;
  background: var(--pm-primary); color: #fff;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--pm-shadow); cursor: pointer;
  opacity: 0; pointer-events: none;
  transition: opacity var(--pm-transition);
  z-index: 50;
}
.pm-x7k2-scroll-top.is-visible { opacity: 1; pointer-events: all; }

/* ===== Responsive ===== */
@media (max-width: 1024px) {
  .pm-x7k2-footer__grid { grid-template-columns: 1fr 1fr; }
  .pm-x7k2-timeline { grid-template-columns: repeat(2, 1fr); }
  .pm-x7k2-timeline__step:nth-child(2n)::after { display: none; }
  .pm-x7k2-timeline__step:nth-child(2) { border-right: none; }
}
@media (max-width: 768px) {
  :root { --pm-header-h: 60px; }
  .pm-x7k2-nav, .pm-x7k2-header__ctas { display: none; }
  .pm-x7k2-burger { display: flex; }
  .pm-x7k2-mobile-cta { display: flex; margin-left: auto; margin-right: 8px; }
  .pm-x7k2-hero__inner { grid-template-columns: 1fr; }
  .pm-x7k2-hero__visual { display: none; }
  .pm-x7k2-toc__list { grid-template-columns: 1fr; }
  .pm-x7k2-casino-card__inner { flex-direction: column; }
  .pm-x7k2-casino-card__rank-col { flex-direction: row; width: 100%; height: 44px; border-right: none; border-bottom: 1px solid var(--pm-border-light); padding-block: 0; padding-inline: 16px; }
  .pm-x7k2-casino-card__grid { grid-template-columns: 1fr 1fr; }
  .pm-x7k2-tile-grid { grid-template-columns: 1fr; }
  .pm-x7k2-footer__grid { grid-template-columns: 1fr 1fr; }
  .pm-x7k2-footer__bottom-inner { flex-direction: column; }
  .pm-x7k2-footer__rg { text-align: left; }
  .pm-x7k2-content-wrap { padding: 20px 18px; }
  .pm-x7k2-author-box { flex-direction: column; }
  .pm-x7k2-howto-slider { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; }
  .pm-x7k2-howto-step { min-width: 180px; flex: 0 0 180px; scroll-snap-align: start; }
}
@media (max-width: 480px) {
  .pm-x7k2-timeline { grid-template-columns: 1fr; }
  .pm-x7k2-timeline__step::after { display: none; }
  .pm-x7k2-timeline__step { border-right: none; border-bottom: 1px solid var(--pm-border-light); }
  .pm-x7k2-timeline__step:last-child { border-bottom: none; }
  .pm-x7k2-filters { flex-direction: column; align-items: flex-start; }
  .pm-x7k2-filters__sort { margin-left: 0; }
  .pm-x7k2-footer__grid { grid-template-columns: 1fr; }
  .pm-x7k2-casino-card__grid { grid-template-columns: 1fr; }
  .pm-x7k2-casino-card__footer { flex-direction: column; align-items: flex-start; }
  .pm-x7k2-hero { padding-block: 36px 28px; }
  .pm-x7k2-section { padding-block: 36px; }
}
@media (min-width: 360px) { }
@media (min-width: 390px) { }

/* ===== casino logo plates ===== */
.pm-x7k2-logo-plate{width:120px;height:52px;display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border-radius:10px;border:1px solid rgba(0,0,0,.14);overflow:hidden;background:#fff;flex:none;box-sizing:border-box;vertical-align:middle}
.pm-x7k2-logo-plate img{width:auto!important;height:auto!important;max-width:100%;max-height:100%;object-fit:contain!important;border-radius:0!important;display:block}
.pm-x7k2-logo-plate--light{background:#fff}
.pm-x7k2-logo-plate--dark{background:linear-gradient(160deg,#1d2440,#0c1020);border-color:#0c1020}

/* ===== site logo ===== */
.pm-x7k2-header__logo img.pm-x7k2-brand-logo,.pm-x7k2-footer img.pm-x7k2-brand-logo{width:auto;height:34px;max-width:190px;display:block;object-fit:contain}

/* ===== banner as hero background ===== */
.pm-x7k2-hero{background-image:linear-gradient(rgba(4,10,26,.92),rgba(4,10,26,.92)),url('/assets/img/banner.png')!important;background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat;color:#fff;border-radius:22px;overflow:hidden;padding:clamp(28px,4vw,52px);margin:18px auto}
.pm-x7k2-hero,.pm-x7k2-hero h1,.pm-x7k2-hero h2,.pm-x7k2-hero p,.pm-x7k2-hero li,.pm-x7k2-hero span,.pm-x7k2-hero strong{color:#fff}
.pm-x7k2-hero__visual,.pm-x7k2-hero__art,.pm-x7k2-hero__image{display:none}

/* ===== author photo ===== */
img.pm-x7k2-author-photo{width:96px;height:96px;min-width:96px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;display:block}

/* ===== framed content from pages/ ===== */
.pm-x7k2-prose{background:#fff;border:2px solid #0b1b3d;border-radius:14px;padding:28px;max-width:100%;overflow-wrap:break-word;box-sizing:border-box}
.pm-x7k2-prose,.pm-x7k2-prose p,.pm-x7k2-prose li,.pm-x7k2-prose h1,.pm-x7k2-prose h2,.pm-x7k2-prose h3,.pm-x7k2-prose h4,.pm-x7k2-prose h5,.pm-x7k2-prose h6,.pm-x7k2-prose strong,.pm-x7k2-prose b,.pm-x7k2-prose em,.pm-x7k2-prose small,.pm-x7k2-prose blockquote,.pm-x7k2-prose dt,.pm-x7k2-prose dd,.pm-x7k2-prose figcaption{color:#0b1b3d}
.pm-x7k2-prose a{color:#0036c2;text-decoration:underline}
.pm-x7k2-prose table{display:block;overflow-x:auto;width:100%;max-width:100%;min-width:0;border:2px solid #0b1b3d;border-collapse:collapse;margin:18px 0;white-space:nowrap}
.pm-x7k2-prose table,.pm-x7k2-prose thead,.pm-x7k2-prose tbody,.pm-x7k2-prose tr,.pm-x7k2-prose th,.pm-x7k2-prose td{background:#fff;color:#0b1b3d}
.pm-x7k2-prose th,.pm-x7k2-prose td{border:1px solid #cfd8ea;padding:12px;text-align:left;vertical-align:top}
.pm-x7k2-prose thead th{background:#eaf1fd}
.pm-x7k2-prose tbody tr:nth-child(even) td,.pm-x7k2-prose tbody tr:nth-child(even) th{background:#f7faff}
.pm-x7k2-prose blockquote{border-left:5px solid #0036c2;background:#f2f6fd;margin:18px 0;padding:14px 18px;border-radius:0 8px 8px 0}
.pm-x7k2-prose img{max-width:100%;height:auto}

/* ===== no horizontal scroll ===== */
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe{max-width:100%;height:auto}

/* ===== header: everything pushed right, CTAs in the burger on mobile ===== */
.pm-x7k2-header__inner{justify-content:flex-end}
.pm-x7k2-header__logo{margin-right:auto}
@media (max-width: 1024px){
  .pm-x7k2-nav{align-items:flex-end;text-align:right}
  .pm-x7k2-nav .pm-x7k2-header__ctas{display:flex;gap:8px;margin-top:12px;width:100%;justify-content:flex-end;flex-wrap:wrap}
  .pm-x7k2-prose{padding:18px}
  h1,h2,h3{overflow-wrap:anywhere}
}
@media (min-width: 1025px){
  .pm-x7k2-nav .pm-x7k2-header__ctas{display:flex;gap:8px;align-items:center;margin-left:16px}
}
.pm-x7k2-method-logo{margin:0 0 14px}
.pm-x7k2-method-logo img{width:auto;height:46px;max-width:100%;object-fit:contain;display:block;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:8px 14px}

/* ===== author silhouette needs a background to be visible ===== */
img.pm-x7k2-author-photo{background:#1b2a44;border:1px solid rgba(255,255,255,.18);padding:6px;object-fit:contain}
