:root {
  --aff-ink: #101827;
  --aff-muted: #5c6979;
  --aff-line: #d5dee9;
  --aff-surface: #f6f8fb;
  --aff-brand: #2f80ed;
  --aff-brand-600: #1463c4;
  --aff-brand-700: #0f4f9c;
  --aff-brand-900: #0a2647;
  --aff-accent: #f9b233;
  --aff-accent-600: #e08c12;
  --aff-danger: #b42318;
}
* { box-sizing: border-box; }
body.affioro-theme {
  margin: 0;
  color: var(--aff-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    linear-gradient(180deg, #fff1d1 0, #fff8ec 420px, #f6f8fb 100%),
    repeating-linear-gradient(90deg, rgba(47, 128, 237, 0.05) 0 1px, transparent 1px 64px);
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
.aff-container { width: min(100% - 32px, 1216px); margin-inline: auto; }
.site-header-dark {
  background: linear-gradient(180deg, rgba(10, 38, 71, .96), rgba(10, 38, 71, .92)), var(--aff-brand-900);
  border-bottom: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 48px rgba(8, 27, 53, .18);
}
.aff-header__inner { min-height: 76px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; }
.aff-header__inner--no-country { grid-template-columns: auto 1fr; }
.aff-brand { display: inline-flex; align-items: center; gap: 11px; color: #fff; font-weight: 900; font-size: 20px; }
.aff-brand__mark { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 8px; background: var(--aff-accent); color: var(--aff-brand-900); }
.aff-brand__logo { width: 40px; height: 40px; border-radius: 10px; filter: drop-shadow(0 10px 18px rgba(0,0,0,.18)); }
.aff-brand__wordmark { display: inline-flex; align-items: baseline; color: #fff; font-size: 22px; font-weight: 950; letter-spacing: 0; }
.aff-brand__wordmark span:last-child { color: var(--aff-accent); }
.aff-brand .custom-logo { max-width: 260px; max-height: 48px; width: auto; height: auto; }
.aff-nav__list { display: flex; justify-content: center; align-items: center; gap: 26px; margin: 0; padding: 0; list-style: none; color: #eff6ff; font-weight: 800; font-size: 14px; }
.aff-nav__list a:hover { color: var(--aff-accent); }
.aff-country select, .aff-country button { min-height: 42px; border-radius: 8px; border: 1px solid var(--aff-line); background: #fff; padding: 0 12px; font-weight: 800; }
.aff-menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.2); border-radius: 8px; background: transparent; }
.aff-menu-toggle span:not(.screen-reader-text) { display: block; width: 22px; height: 2px; margin: 5px auto; background: #fff; }
.hero-shell { position: relative; overflow: hidden; background: radial-gradient(circle at 16% 16%, rgba(47,128,237,.52), transparent 34%), radial-gradient(circle at 84% 20%, rgba(249,178,51,.34), transparent 32%), linear-gradient(135deg, #081b35 0%, var(--aff-brand-900) 44%, var(--aff-brand-700) 100%); }
.hero-shell:before { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 72px), repeating-linear-gradient(0deg, rgba(255,255,255,.045) 0 1px, transparent 1px 72px), linear-gradient(115deg, transparent 0 47%, rgba(249,178,51,.22) 47% 56%, rgba(255,122,89,.16) 56% 64%, transparent 64% 100%); }
.hero-shell:after { content: ""; position: absolute; inset: auto 0 0; height: 8px; background: linear-gradient(90deg, var(--aff-accent), #ff7a59, var(--aff-brand), var(--aff-brand-900)); }
.aff-hero { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, .98fr) minmax(420px, .86fr); gap: 56px; align-items: start; min-height: min(800px, calc(100vh - 76px)); padding-block: 48px 56px; }
.aff-hero__copy { max-width: 690px; transform: none; }
.aff-hero h1 { margin: 18px 0; color: #fff; font-size: clamp(44px, 5.2vw, 72px); line-height: .96; letter-spacing: 0; font-weight: 950; }
.aff-hero p { color: #dbeafe; font-size: 18px; line-height: 1.75; max-width: 680px; }
.aff-badges { display: flex; flex-wrap: wrap; gap: 8px; }
.aff-badges span { border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: #fff; border-radius: 999px; padding: 6px 12px; font-size: 12px; font-weight: 900; }
.aff-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.aff-button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; border-radius: 8px; padding: 12px 18px; font-weight: 900; }
.aff-button--accent { background: var(--aff-accent); color: var(--aff-brand-900); }
.aff-button--primary { background: var(--aff-brand); color: #fff; }
.aff-button--ghost { border: 1px solid rgba(255,255,255,.35); color: #fff; background: rgba(255,255,255,.1); }
.aff-feature-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 32px; }
.aff-feature-row div { border: 1px solid rgba(255,255,255,.2); border-radius: 10px; background: rgba(255,255,255,.1); padding: 18px; color: #fff; }
.aff-feature-row span { display: block; margin-top: 6px; color: #dbeafe; }
.hero-board { position: relative; overflow: hidden; width: min(100%, 560px); justify-self: end; border: 1px solid rgba(255,255,255,.24); border-radius: 18px; padding: 24px; background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(239,247,255,.94)); box-shadow: 0 32px 90px rgba(2,10,24,.32); }
.hero-board:before { content: ""; position: absolute; right: -74px; top: -74px; width: 180px; height: 180px; border: 1px solid rgba(47,128,237,.18); border-radius: 999px; box-shadow: inset 0 0 0 36px rgba(249,178,51,.06); pointer-events: none; }
.hero-board > * { position: relative; z-index: 1; }
.aff-hero__image { border-radius: 12px; border: 1px solid #fde68a; background: #fff; }
.hero-board .aff-toplist { gap: 12px; }
.aff-market-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; border: 1px solid rgba(10,38,71,.12); border-radius: 9px; background: #f9fbff; padding: 13px 16px; }
.aff-market-row:first-child { background: linear-gradient(90deg, rgba(249,178,51,.28), rgba(47,128,237,.14)); }
.aff-market-row__main { min-width: 0; }
.aff-market-row__main strong { display: block; color: var(--aff-ink); font-size: 16px; font-weight: 950; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aff-market-row__main span { display: block; margin-top: 4px; color: var(--aff-muted); font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aff-market-row__rating { min-width: 58px; text-align: right; }
.aff-market-row__rating strong { display: block; color: var(--aff-accent-600); font-size: 20px; font-weight: 950; }
.aff-market-row__rating span { display: block; color: var(--aff-muted); font-size: 11px; font-weight: 800; }
.aff-eyebrow { color: var(--aff-accent-600); text-transform: uppercase; font-size: 13px; font-weight: 950; letter-spacing: 0; }
.hero-board .aff-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  margin: 18px 0 10px;
  padding: 6px 11px;
  border: 1px solid rgba(249,178,51,.7);
  border-radius: 999px;
  background: linear-gradient(135deg, #081b35, var(--aff-brand-900));
  color: #fff;
  box-shadow: 0 10px 24px rgba(8,27,53,.14);
}
.hero-board .aff-eyebrow:before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--aff-accent);
  box-shadow: 0 0 0 3px rgba(249,178,51,.18);
}
.aff-section { padding-block: 48px; border-bottom: 1px solid var(--aff-line); }
.aff-section--editorial { background: linear-gradient(135deg, #f8fbff 0%, #fff0c8 52%, #eaf4ff 100%); }
.aff-section__head { max-width: 780px; margin-bottom: 24px; }
.aff-section__head h1, .aff-section__head h2 { margin: 0 0 10px; font-size: clamp(32px, 4vw, 46px); line-height: 1.05; font-weight: 950; }
.aff-section__links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.aff-section__links a { display: inline-flex; min-height: 42px; align-items: center; border: 1px solid rgba(47,128,237,.22); border-radius: 999px; background: #fff; padding: 9px 14px; color: var(--aff-brand-700); font-weight: 900; }
.aff-panel { border: 1px solid var(--aff-line); border-radius: 12px; background: #fff; box-shadow: 0 20px 60px rgba(22,32,27,.08); }
.aff-page { padding-block: 36px; }
.aff-article h1 { font-size: clamp(40px, 5vw, 64px); line-height: 1; margin-bottom: 16px; }
.aff-lead { color: var(--aff-muted); font-size: 19px; line-height: 1.7; }
.aff-content { padding: 28px; color: #1f2a3a; }
.aff-content h2 { margin-top: 2rem; margin-bottom: .65rem; font-size: clamp(1.45rem, 2vw, 1.9rem); line-height: 1.2; font-weight: 850; }
.aff-content p, .aff-content li { color: #4d5b6c; line-height: 1.75; }
.aff-content img { border-radius: 18px; }
.aff-breadcrumbs { margin-bottom: 18px; color: var(--aff-muted); font-weight: 700; font-size: 14px; }
.aff-card-list { display: grid; gap: 16px; }
.aff-casino-card { position: relative; overflow: hidden; display: grid; grid-template-columns: 56px minmax(0, 1fr) 220px 220px; align-items: center; gap: 18px; padding: 20px; border: 1px solid rgba(47,128,237,.24); border-radius: 12px; background: linear-gradient(90deg, rgba(47,128,237,.09), transparent 46%), linear-gradient(180deg, #fff, #fffaf0); box-shadow: 0 20px 60px rgba(22,32,27,.08); }
.aff-casino-card:before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: linear-gradient(180deg, var(--aff-brand), var(--aff-accent), #ff7a59); }
.aff-casino-card__rank { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 8px; background: var(--aff-brand-900); color: #fff; font-weight: 950; }
.aff-casino-card__brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
.aff-casino-card__brand img { width: 90px; height: 58px; object-fit: contain; border: 1px solid var(--aff-line); border-radius: 8px; background: #fff; padding: 8px; }
.aff-casino-card h2 { margin: 0 0 6px; font-size: 20px; }
.aff-casino-card p, .aff-casino-card span { color: var(--aff-muted); }
.aff-casino-card__facts, .aff-casino-card__bonus { display: grid; gap: 6px; }
.aff-review__hero { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; align-items: start; margin-bottom: 28px; }
.aff-review__cta { padding: 20px; }
.aff-review__meta { display: inline-flex; align-items: baseline; gap: 8px; border: 1px solid var(--aff-line); border-radius: 999px; background: #fff; padding: 8px 14px; }
.aff-payment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.aff-payment-card { display: grid; gap: 18px; border: 1px solid rgba(47,128,237,.22); border-radius: 14px; background: linear-gradient(145deg, #fff, #f5f9ff 60%, #fff7e5); padding: 22px; box-shadow: 0 20px 60px rgba(22,32,27,.08); }
.aff-payment-card img { width: 100%; max-height: 160px; object-fit: cover; border-radius: 10px; border: 1px solid var(--aff-line); }
.aff-payment-card h2 { margin: 0 0 8px; font-size: 24px; line-height: 1.1; }
.aff-payment-card p { color: var(--aff-muted); line-height: 1.65; }
.aff-payment-card dl, .aff-fact-list { display: grid; gap: 10px; margin: 0; }
.aff-payment-card dl div, .aff-fact-list div { display: grid; gap: 3px; border-top: 1px solid var(--aff-line); padding-top: 10px; }
.aff-payment-card dt, .aff-fact-list dt { color: var(--aff-muted); font-size: 12px; font-weight: 950; text-transform: uppercase; }
.aff-payment-card dd, .aff-fact-list dd { margin: 0; color: var(--aff-ink); font-weight: 800; line-height: 1.45; }
.aff-related-inline { max-width: none; margin-top: 32px; }
.aff-footer { padding-block: 40px 18px; background: #081b35; color: #dbeafe; }
.aff-footer__grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 32px; }
.aff-footer__brand { color: #fff; font-size: 22px; }
.aff-footer__links { display: grid; gap: 10px; list-style: none; margin: 0; padding: 0; }
.aff-footer__legal { margin-top: 24px; border-top: 1px solid rgba(255,255,255,.14); padding-top: 16px; font-size: 13px; color: #bcd5f7; }
.aff-compliance-logos { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.aff-compliance-logos img { height: 34px; width: auto; border-radius: 7px; background: rgba(255,255,255,.08); }
.aff-casino-card--incomplete { display: block; min-height: 0; padding: 22px 24px; }
.aff-casino-card--incomplete .aff-casino-card__brand { display: block; }
.aff-casino-card--incomplete .aff-casino-card__brand h2 { margin: 0 0 8px; }
.aff-casino-card--incomplete .aff-casino-card__brand p,
.aff-casino-card--incomplete .aff-casino-card__facts { display: block; margin: 0; line-height: 1.45; }
.aff-casino-card--incomplete .aff-casino-card__facts { margin-top: 6px; }
@media (max-width: 900px) {
  .aff-header__inner { grid-template-columns: auto auto 1fr; }
  .aff-header__inner--no-country { grid-template-columns: auto 1fr auto; }
  .aff-menu-toggle { display: block; order: 2; }
  .aff-header__inner--no-country .aff-menu-toggle { order: 3; justify-self: end; }
  .aff-nav { display: none; grid-column: 1 / -1; order: 4; }
  .aff-nav.is-open { display: block; }
  .aff-nav__list { display: grid; justify-content: start; padding: 14px 0 20px; }
  .aff-country { justify-self: end; order: 3; }
  .aff-hero, .aff-review__hero, .aff-footer__grid { grid-template-columns: 1fr; min-height: auto; padding-block: 32px 40px; }
  .aff-hero__copy { transform: none; }
  .hero-board { justify-self: stretch; }
  .aff-feature-row, .aff-payment-grid { grid-template-columns: 1fr; }
  .aff-casino-card { grid-template-columns: 1fr; }
}
.aff-casino-card--verified{display:block!important;grid-template-columns:none!important;min-height:0!important;height:auto!important;padding:22px 24px!important;overflow:hidden!important}
.aff-casino-card--verified .aff-casino-card__brand,.aff-casino-card--verified .aff-casino-card__facts{display:block!important;width:100%!important;position:static!important;float:none!important;clear:both!important;margin:0 0 10px!important}
.aff-casino-card--verified .aff-casino-card__facts span{display:block!important;white-space:normal!important;overflow-wrap:anywhere!important}
.aff-latam-card{display:block!important;box-sizing:border-box;width:100%;min-height:0!important;height:auto!important;padding:22px 26px!important;border:1px solid rgba(47,128,237,.24);border-radius:12px;background:linear-gradient(90deg,rgba(47,128,237,.09),transparent 46%),linear-gradient(180deg,#fff,#fffaf0);box-shadow:0 20px 60px rgba(22,32,27,.08);overflow:hidden!important}
.aff-latam-card .aff-casino-card__brand,.aff-latam-card .aff-casino-card__facts{display:block!important;width:100%!important;position:static!important;float:none!important;clear:both!important;margin:0 0 12px!important}
.aff-latam-card .aff-casino-card__brand h2{margin:0 0 8px!important;line-height:1.25!important}.aff-latam-card .aff-casino-card__brand p{margin:0!important;line-height:1.45!important}.aff-latam-card .aff-casino-card__facts span{display:block!important;line-height:1.45!important;overflow-wrap:anywhere!important}
.aff-latam-card .aff-casino-card__brand p{color:#101827!important;font-weight:500!important;opacity:1!important}.aff-latam-card .aff-casino-card__brand p strong{color:#0f4f9c!important;font-weight:900!important}.aff-latam-card .aff-casino-card__facts{color:#101827!important}.aff-latam-card .aff-casino-card__facts a{color:#0f4f9c!important;font-weight:800!important}
.aff-latam-card{display:grid!important;grid-template-columns:56px minmax(0,1fr) 220px 220px!important;align-items:center!important;gap:18px!important;padding:20px!important;min-height:0!important;height:auto!important}.aff-latam-card .aff-casino-card__brand{display:flex!important;margin:0!important}.aff-latam-card .aff-casino-card__brand h2{font-size:20px!important}.aff-latam-card .aff-casino-card__facts,.aff-latam-card .aff-casino-card__bonus{display:grid!important;gap:6px!important}.aff-latam-card .aff-casino-card__bonus .aff-button{margin-top:8px}.aff-latam-extra{grid-column:2/-1;color:#52667a;font-size:13px;line-height:1.35}.aff-legacy-note{font-size:11px;color:#52667a}@media(max-width:900px){.aff-latam-card{grid-template-columns:48px minmax(0,1fr)!important}.aff-latam-card .aff-casino-card__facts,.aff-latam-card .aff-casino-card__bonus{grid-column:2}.aff-latam-extra{grid-column:2}}
