.service-card em {
  margin-left: 7px;
  padding: 3px 6px;
  border-radius: 999px;
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 9%, white);
  font: 750 8px "DM Sans", sans-serif;
  font-style: normal;
  letter-spacing: .65px;
  text-transform: uppercase;
  vertical-align: 2px;
}

.brand-logo {
  display: block;
  width: 210px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.footer-logo {
  width: 178px;
  height: auto;
}

@media (max-width: 560px) {
  .brand-logo { width: 156px; }
  .footer-logo { width: 168px; }
}

/* One visual system: a quiet brand-tinted tile and an optically sized mark. */
.service-icon {
  position: relative;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--brand-color) 11%, transparent);
  border-radius: 11px;
  background: var(--brand-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75);
}

.service-icon::before {
  content: attr(data-fallback);
  grid-area: 1 / 1;
  color: var(--brand-color);
  font: 800 12px "Manrope", sans-serif;
  text-transform: uppercase;
}

.service-glyph {
  grid-area: 1 / 1;
  width: 17px;
  height: 17px;
  display: block;
  background: var(--brand-color);
  -webkit-mask: var(--icon-source) center / contain no-repeat;
  mask: var(--icon-source) center / contain no-repeat;
}

.service-icon img {
  grid-area: 1 / 1;
  position: relative;
  z-index: 1;
  background: var(--brand-bg);
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  object-fit: contain;
  filter: none !important;
}

.service-icon img.is-broken { display: none !important; }

.service-strip .service-icon {
  flex-basis: 26px;
  width: 26px;
  height: 26px;
  border-radius: 8px;
}

.service-strip .service-glyph {
  width: 14px;
  height: 14px;
}

.service-strip .service-icon img {
  width: 15px !important;
  height: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
}

.service-card > .service-icon {
  align-self: center;
}

.service-card {
  content-visibility: auto;
  contain-intrinsic-size: 68px;
}

.service-tools {
  max-width: 1040px;
  margin: 28px auto -10px;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 180px 210px auto;
  align-items: center;
  gap: 10px;
}

.service-tools input,
.service-tools select {
  width: 100%;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 12px;
  outline: 0;
  background: #fff;
  color: var(--ink);
  padding: 0 14px;
}

.service-tools input:focus,
.service-tools select:focus {
  border-color: color-mix(in srgb, var(--accent) 55%, var(--line));
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 8%, transparent);
}

.service-tools > span {
  min-width: 78px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-align: right;
}

.service-card[hidden] { display: none; }
.service-grid > *, .engine-grid > *, .extractor-row > *, .source-resolve > * { min-width: 0; }
.service-empty { color: var(--muted); text-align: center; margin: 35px 0; }
.service-group-title { margin: 28px 0 12px; font-size: 17px; letter-spacing: -.25px; }

.locale-selector {
  position: relative;
  border: 0;
  padding: 0;
}

.locale-selector > summary {
  min-height: 40px;
  padding: 7px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  font: 750 13px 'DM Sans', system-ui, sans-serif;
  cursor: pointer;
}

.locale-selector > summary::after { content: "⌄"; color: var(--accent); }
.locale-current-flag,
.locale-grid img {
  display: block;
  width: 24px;
  height: 18px;
  object-fit: cover;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgb(15 23 42 / 10%);
}

.locale-panel {
  position: absolute;
  z-index: 80;
  top: calc(100% + 12px);
  right: 0;
  width: min(760px, calc(100vw - 32px));
  max-height: min(72vh, 680px);
  padding: 18px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 24px 70px rgba(25, 26, 34, .2);
}

.locale-panel-head {
  position: sticky;
  z-index: 2;
  top: -18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: -18px -18px 0;
  padding: 18px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.locale-panel-head small,
.locale-note,
.locale-grid small { color: var(--muted); }
.locale-note { margin: 14px 0; font-size: 12px; line-height: 1.55; }
.locale-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
.locale-panel .locale-grid a,
.locale-panel .locale-grid button {
  width: 100%;
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 9px 8px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: inherit;
  text-align: left;
  text-decoration: none;
  font: inherit;
}
.locale-grid span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.locale-grid small { grid-column: 2; font-size: 10px; line-height: 1; }
.locale-grid .locale-active { background: color-mix(in srgb, var(--accent) 7%, white); box-shadow: inset 3px 0 var(--accent); }
.locale-grid button { opacity: .5; cursor: not-allowed; }
.service-group-other { margin-top: 34px; }
.service-group-setup { margin-top: 42px; color: #9a5b00; }
.service-group-copy { max-width: 720px; margin: -4px 0 15px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.service-card-setup { border-style: dashed; background: #fffdfa; }
.setup-notice { max-width: 760px; margin: 22px auto 0; padding: 16px 18px; border: 1px solid #f0d99a; border-radius: 14px; background: #fffbef; text-align: left; }
.setup-notice > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.setup-notice > div span { color: #906500; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.setup-notice p { margin: 9px 0; color: #655530; font-size: 13px; line-height: 1.55; }
.setup-notice a { color: #7c5500; font-size: 12px; font-weight: 800; }
.text-link { color: var(--accent); font-weight: 700; }

.sources-page { max-width: 1120px; margin: 55px auto 100px; padding: 0 28px; }
.sources-hero { max-width: 820px; margin: 0 auto; text-align: center; }
.sources-hero h1 { margin: 18px 0; font-size: clamp(45px, 7vw, 76px); line-height: 1.03; letter-spacing: -4px; }
.sources-hero p { color: var(--muted); font-size: 17px; line-height: 1.65; }
.source-search { display: block; margin-top: 28px; }
.source-search input { width: 100%; height: 60px; padding: 0 20px; border: 1px solid var(--line); border-radius: 16px; outline: 0; background: #fff; box-shadow: var(--shadow); }
.source-search input:focus { border-color: color-mix(in srgb, var(--accent) 55%, var(--line)); }
.source-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.source-filters select { width: 100%; min-height: 48px; padding: 0 15px; border: 1px solid var(--line); border-radius: 13px; background: #fff; color: var(--ink); outline: 0; }
.source-filters select:focus { border-color: color-mix(in srgb, var(--accent) 55%, var(--line)); }
@media (max-width: 560px) { .source-filters { grid-template-columns: 1fr; } }
.source-resolve { display: flex; gap: 9px; margin-top: 28px; padding: 8px; border: 1px solid rgba(25,26,34,.06); border-radius: 17px; background: #fff; box-shadow: var(--shadow); }
.source-resolve label { flex: 1; }
.source-resolve input { width: 100%; height: 52px; padding: 0 13px; border: 0; outline: 0; }
.source-resolve button { min-width: 165px; border: 0; border-radius: 11px; background: var(--accent); color: #fff; cursor: pointer; font-weight: 800; }
.broken-toggle { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; color: var(--muted); font-size: 12px; cursor: pointer; }
.extractor-panel { max-width: 1200px; margin: 50px auto 0; }
.extractor-summary { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 14px; color: var(--muted); font-size: 12px; }
.extractor-summary strong { color: var(--ink); }
.extractor-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.extractor-row { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 10px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.extractor-row[hidden] { display: none; }
.extractor-copy { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.extractor-icon { flex: 0 0 auto; width: 28px; height: 28px; padding: 3px; border: 1px solid var(--line); border-radius: 8px; background: #f6f7f9; object-fit: contain; }
.extractor-row small { overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.extractor-state { flex: 0 0 auto; padding: 5px 8px; border-radius: 99px; background: #fff0f1; color: #b73542; font-size: 10px; font-weight: 800; }
.extractor-state.is-working { background: #eaf9f1; color: #14824b; }
.catalog-more { display: block; margin: 22px auto; padding: 12px 18px; border: 1px solid var(--line); border-radius: 11px; background: #fff; cursor: pointer; font-weight: 700; }
.catalog-empty { margin: 24px 0; padding: 22px; border: 1px dashed var(--line); border-radius: 13px; color: var(--muted); text-align: center; }
@media (max-width: 980px) { .extractor-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .extractor-list { grid-template-columns: minmax(0, 1fr); } }
.engine-panel { max-width: 1000px; margin: 62px auto 0; }
.engine-panel .section-intro { max-width: 720px; margin-bottom: 24px; }
.engine-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.engine-card { padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.engine-card > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.engine-card p { min-height: 38px; margin: 12px 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.engine-card small { color: var(--muted); font-size: 10px; }
.engine-state { padding: 5px 8px; border-radius: 99px; background: #f0f1f4; color: #69707d; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.engine-state.is-installed { background: #fff6dc; color: #986f00; }
.engine-state.is-active { background: #eaf9f1; color: #14824b; }

.result-placeholder {
  flex: 0 0 190px;
  width: 190px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--preview-color, var(--accent)) 13%, white);
  border-radius: 13px;
  background:
    radial-gradient(circle at 75% 20%, color-mix(in srgb, var(--preview-color, var(--accent)) 22%, transparent), transparent 43%),
    color-mix(in srgb, var(--preview-color, var(--accent)) 8%, white);
}

.result-placeholder:not([hidden]) { display: grid; }
.result-placeholder span {
  color: var(--preview-color, var(--accent));
  font: 800 30px "Manrope", sans-serif;
  letter-spacing: -1.5px;
}

.format-lookup {
  margin-top: 22px;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--accent) 18%, var(--line));
  border-radius: 16px;
  background: linear-gradient(145deg, #fff, color-mix(in srgb, var(--accent) 2.5%, #fff));
  text-align: left;
}
.format-lookup-heading { display: flex; align-items: center; gap: 10px; }
.format-lookup-heading h3 { margin: 0; font-size: 20px; letter-spacing: -.35px; }
.format-lookup-spinner {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border: 2px solid color-mix(in srgb, var(--accent) 18%, transparent);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: format-spinner .85s linear infinite;
}
.format-lookup-track {
  height: 7px;
  overflow: hidden;
  margin-top: 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 7%, #f2f3f7);
}
.format-lookup-track span {
  display: block;
  width: 38%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 72%, #a9c8ff), var(--accent), transparent);
  transform: translateX(-115%);
  animation: format-lookup-progress 1.6s ease-in-out infinite;
}
.format-lookup > p { margin: 9px 0 0; color: var(--muted); font-size: 13px; }
.format-lookup-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 17px 0 0;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.78);
  list-style: none;
}
.format-lookup-steps li {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  color: #9297a5;
  font-size: 11px;
}
.format-lookup-steps li:not(:last-child)::after {
  position: absolute;
  z-index: 0;
  top: 50%;
  right: 10px;
  left: 32px;
  height: 1px;
  background: var(--line);
  content: "";
}
.format-lookup-steps li > span {
  position: relative;
  z-index: 1;
  display: grid;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  place-items: center;
  border: 1px solid #b8bdc8;
  border-radius: 50%;
  background: #fff;
  font-size: 11px;
  font-weight: 850;
}
.format-lookup-steps li > span::before { content: attr(data-step); }
.format-lookup-steps li strong {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-right: 10px;
  background: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.format-lookup-steps li.is-complete { color: #168a51; }
.format-lookup-steps li.is-complete > span { border-color: #2abc70; color: #168a51; }
.format-lookup-steps li.is-complete > span::before { content: "✓"; }
.format-lookup-steps li.is-current { color: var(--accent); }
.format-lookup-steps li.is-current > span { border-color: var(--accent); background: var(--accent); color: #fff; box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 10%, transparent); }
.format-lookup-steps li:nth-child(1) > span::before { content: "1"; }
.format-lookup-steps li:nth-child(2) > span::before { content: "2"; }
.format-lookup-steps li:nth-child(3) > span::before { content: "3"; }
.format-lookup-steps li:nth-child(4) > span::before { content: "4"; }
.format-lookup-steps li.is-complete > span::before { content: "✓"; }
.result-panel.is-resolving .format-heading { display: none; }
.format-list.formats-enter { animation: formats-enter .22s ease-out both; }

.format-row.is-skeleton { min-height: 76px; pointer-events: none; }
.skeleton-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 11px;
  background: linear-gradient(90deg, #eef0f5 25%, #fafbff 43%, #eeeefe 57%, #eef0f5 75%);
  background-size: 220% 100%;
  animation: preview-shimmer 1.5s ease-in-out infinite;
}
.skeleton-line {
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, #eef0f5 25%, #fafbff 43%, #eeeefe 57%, #eef0f5 75%);
  background-size: 220% 100%;
  animation: preview-shimmer 1.5s ease-in-out infinite;
}
.skeleton-line:first-child { width: 128px; }
.skeleton-line:last-child { width: 190px; }
.skeleton-button {
  width: 86px;
  height: 37px;
  flex: 0 0 86px;
  border-radius: 9px;
  background: linear-gradient(90deg, #eef0f5 25%, #fafbff 43%, #eeeefe 57%, #eef0f5 75%);
  background-size: 220% 100%;
  animation: preview-shimmer 1.5s ease-in-out infinite;
}

@keyframes preview-shimmer { to { background-position: -220% 0; } }
@keyframes format-spinner { to { transform: rotate(360deg); } }
@keyframes format-lookup-progress { 0% { transform: translateX(-115%); } 100% { transform: translateX(300%); } }
@keyframes formats-enter { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 560px) {
  .result-placeholder { flex-basis: auto; width: 100%; }
  .service-tools { grid-template-columns: 1fr; }
  .service-tools > span { text-align: left; }
  .source-resolve { flex-direction: column; }
  .source-resolve button { min-height: 50px; }
  .engine-grid { grid-template-columns: 1fr; }
  .extractor-summary { align-items: flex-start; flex-direction: column; gap: 6px; }
  .extractor-row { gap: 10px; }
  .format-lookup { margin-top: 17px; padding: 15px 13px; }
  .format-lookup-heading h3 { font-size: 17px; }
  .format-lookup-steps { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 11px; }
  .format-lookup-steps li:not(:last-child)::after { top: 22px; right: auto; bottom: -9px; left: 11px; width: 1px; height: 12px; }
  .format-lookup-steps li strong { white-space: normal; }
  .format-row.is-skeleton { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; }
  .skeleton-line:first-child { width: min(128px, 80%); }
  .skeleton-line:last-child { width: min(190px, 100%); }
  .skeleton-button { width: 62px; flex-basis: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  .format-lookup-spinner { animation: none; border-color: color-mix(in srgb, var(--accent) 35%, transparent); border-top-color: var(--accent); }
  .format-lookup-track span { width: 55%; animation: none; transform: none; }
  .skeleton-icon, .skeleton-line, .skeleton-button { animation: none; background-position: 50% 0; }
  .format-list.formats-enter { animation: none; }
}

@media (min-width: 561px) and (max-width: 900px) {
  .service-tools { grid-template-columns: minmax(0, 1fr) minmax(170px, .72fr); }
  .service-tools > span { grid-column: 1 / -1; text-align: left; }
  .locale-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .locale-selector > summary { min-width: 62px; }
  .locale-panel { position: fixed; top: 72px; right: 12px; left: 12px; width: auto; max-height: calc(100vh - 88px); }
  .locale-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .locale-grid span { font-size: 12px; }
}
.ad-slot[hidden]{display:none!important}.ad-slot{position:relative;box-sizing:border-box;width:100%;max-width:100%;overflow:hidden;border:1px solid #e4e7f0;border-radius:16px;background:#fff;color:#596176;contain:layout paint}.ad-slot.is-active{display:grid;place-items:center;margin:22px auto;padding:20px;min-height:var(--ad-height,90px)}.ad-slot::before{content:"Sponsored";position:absolute;top:7px;right:9px;font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#8b92a5}.ad-creative{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;width:min(100%,820px);color:#141824;text-decoration:none}.ad-creative img{width:72px;height:72px;border-radius:11px;object-fit:cover}.ad-creative-copy{display:grid;gap:4px}.ad-creative-copy strong{font-size:16px}.ad-creative-copy span{font-size:13px;color:#697187}.ad-creative b{padding:10px 14px;border-radius:9px;background:var(--accent,#6754ff);color:#fff;font-size:12px}.ad-frame{display:block;width:100%;height:var(--ad-height,90px);border:0;background:transparent}.ad-slot-rail{position:fixed;z-index:3;top:140px;width:160px;min-height:600px}.ad-slot-left{left:12px}.ad-slot-right{right:12px}.ad-slot-rail.is-active{margin:0;padding:10px;min-height:600px}.ad-slot-rail .ad-creative{grid-template-columns:1fr;text-align:center}.ad-slot-rail .ad-creative img{width:100%;height:auto;max-height:220px}.ad-slot-rail .ad-frame{height:580px}.ad-slot-content{max-width:1120px}.ad-slot.is-loading{min-height:90px;background:linear-gradient(100deg,#f7f8fb 20%,#fff 40%,#f7f8fb 60%);background-size:220% 100%;animation:ad-slot-shimmer 1.2s linear infinite}@keyframes ad-slot-shimmer{to{background-position-x:-220%}}@media(max-width:1439px){.ad-slot-rail{display:none!important}}@media(max-width:700px){.ad-slot.is-active{margin:16px auto;padding:15px;border-radius:13px}.ad-creative{grid-template-columns:52px 1fr}.ad-creative img{width:52px;height:52px}.ad-creative b{grid-column:1/-1;text-align:center}.ad-slot-formats,.ad-slot-content{--ad-height:250px}}@media(prefers-reduced-motion:reduce){.ad-slot.is-loading{animation:none}}
.ad-slot.is-placeholder{border:1px solid #d5d9e2;background:#f1f3f6;box-shadow:none}.ad-slot.is-placeholder::before{display:none}.ad-placeholder-label{font-size:12px;font-weight:800;letter-spacing:.14em;color:#8a91a0}
.ad-slot-format-break.is-active{margin:0;border-radius:14px}.ad-slot-format-break[hidden]{display:none!important}
.ad-slot-rail{width:var(--ad-rail-width,160px);max-width:300px}.ad-slot-rail.is-active{padding:0;border:0;background:transparent;overflow:visible}.ad-slot-rail .dynamic-geo-banner{position:relative;display:flex;width:100%;height:600px;box-sizing:border-box;flex-direction:column;align-items:center;overflow:hidden;padding:34px 14px 22px;border-radius:18px;background-position:center;background-size:cover;color:#fff;text-align:center;text-decoration:none;box-shadow:0 18px 44px rgba(18,21,34,.26);container-type:inline-size}.ad-slot-rail .dynamic-geo-banner::after{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(2,3,10,.08),rgba(2,3,10,.22) 42%,rgba(2,3,10,.84));content:""}.ad-slot-rail .dynamic-geo-banner>*{position:relative;z-index:1}.ad-slot-rail .dynamic-geo-logo{width:min(74%,170px);height:56px;object-fit:contain}.ad-slot-rail .dynamic-geo-headline{margin-top:auto;font-size:17px;font-weight:850;line-height:1.08}.ad-slot-rail .dynamic-geo-welcome{margin-top:11px;font-size:13px;font-weight:700}.ad-slot-rail .dynamic-geo-amount{margin-top:4px;font-size:31px;line-height:1;white-space:nowrap}.ad-slot-rail .dynamic-geo-spins{margin-top:8px;font-size:13px;font-weight:800}.ad-slot-rail .dynamic-geo-cta{width:100%;box-sizing:border-box;margin-top:17px;padding:12px 8px;border-radius:10px;background:#ffde00;color:#141414;font-size:14px}.ad-slot-rail .dynamic-geo-terms{margin-top:10px;font-size:9px;opacity:.9}.ad-slot-rail .dynamic-geo-banner.is-slim{padding-inline:8px}.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-headline{font-size:14px}.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-amount{font-size:24px}.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-spins{font-size:11px}@container(max-width:219px){.dynamic-geo-banner .dynamic-geo-headline{font-size:14px}.dynamic-geo-banner .dynamic-geo-amount{font-size:24px}.dynamic-geo-banner .dynamic-geo-spins{font-size:11px}}@media(min-width:701px){.ad-slot-rail:not([hidden]){display:grid!important}}@media(max-width:700px){.ad-slot-rail{display:none!important}}
.ad-slot-result:has(.dynamic-geo-banner.is-inline){max-width:1200px;padding:0;border:0;background:transparent;overflow:visible}.ad-slot-result .dynamic-geo-banner.is-inline{position:relative;display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr) minmax(150px,210px);align-items:center;gap:26px;width:100%;min-height:260px;box-sizing:border-box;overflow:hidden;padding:30px 34px;border-radius:20px;background-position:center;background-size:cover;color:#fff;text-decoration:none;box-shadow:0 18px 48px rgba(18,21,34,.22)}.ad-slot-result .dynamic-geo-banner.is-inline::after{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(4,5,12,.82),rgba(4,5,12,.58) 54%,rgba(4,5,12,.8));content:""}.ad-slot-result .dynamic-geo-banner.is-inline>*{position:relative;z-index:1;min-width:0}.dynamic-geo-brand,.dynamic-geo-copy,.dynamic-geo-action{display:grid;align-items:center}.dynamic-geo-brand{justify-items:center;gap:14px}.ad-slot-result .dynamic-geo-logo{width:min(100%,170px);height:60px;object-fit:contain}.dynamic-geo-offer-icon{width:78px;height:78px;object-fit:contain}.dynamic-geo-copy{gap:5px}.dynamic-geo-copy .dynamic-geo-headline{font-size:24px;line-height:1.08}.dynamic-geo-copy .dynamic-geo-welcome,.dynamic-geo-copy .dynamic-geo-prefix{font-size:13px;font-weight:750;opacity:.92}.dynamic-geo-package{font-size:31px;line-height:1.05}.dynamic-geo-bonus-game{font-size:13px;font-weight:800}.dynamic-geo-action{justify-items:stretch;gap:9px;text-align:center}.dynamic-geo-action .dynamic-geo-cta{padding:13px 15px;border-radius:11px;background:#ffde00;color:#151515;font-size:14px}.dynamic-geo-login{font-size:10px;opacity:.9}.dynamic-geo-action .dynamic-geo-terms{font-size:9px;opacity:.8}@media(max-width:700px){.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:76px minmax(0,1fr);gap:12px;min-height:260px;padding:22px 18px}.dynamic-geo-brand{gap:8px}.ad-slot-result .dynamic-geo-logo{height:42px}.dynamic-geo-offer-icon{width:54px;height:54px}.dynamic-geo-copy .dynamic-geo-headline{font-size:17px}.dynamic-geo-package{font-size:21px}.dynamic-geo-action{grid-column:1/-1}.dynamic-geo-action .dynamic-geo-cta{padding:11px 12px}.dynamic-geo-login{display:none}}
.engine-inventory{margin-top:56px}.extractor-letter{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:10px;background:#f4f5f8;color:#252a36;font-size:11px;font-weight:900;letter-spacing:.04em}.adult-badge{display:inline-flex;margin-left:5px;padding:2px 5px;border-radius:5px;background:#21131a;color:#fff;font-size:9px;font-style:normal;letter-spacing:.08em;vertical-align:2px}.family-page{max-width:1000px}.family-breadcrumb{display:flex;gap:8px;margin-bottom:28px;color:var(--muted);font-size:13px}.family-breadcrumb a{color:var(--accent);text-decoration:none}.family-hero{padding-top:10px}.family-capabilities{margin-top:36px}.family-variant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.family-variant-grid article{position:relative;display:grid;gap:7px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.family-variant-grid article small{overflow-wrap:anywhere;color:var(--muted)}.family-variant-grid .extractor-state{justify-self:start}.family-note{margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}.family-note h2{margin:0 0 8px}.family-note p{margin:0;color:var(--muted);line-height:1.65}@media(max-width:760px){.source-filters{grid-template-columns:1fr}.family-variant-grid{grid-template-columns:1fr}.family-page{padding-inline:18px}}
.catalog-source-icon{position:relative;display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#f4f5f8;color:#252a36;font-size:10px;font-weight:900;letter-spacing:.03em}.catalog-source-icon>img{position:absolute;inset:4px;width:26px;height:26px;object-fit:contain;border-radius:6px;background:#f4f5f8}.catalog-source-icon.is-large{flex-basis:46px;width:46px;height:46px;border-radius:13px;font-size:12px}.catalog-source-icon.is-large>img{inset:5px;width:36px;height:36px}.family-title-line{display:flex;align-items:center;justify-content:center;gap:13px}.family-title-line h1{margin:0}.content-mode-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;width:min(100%,900px);margin:24px auto 18px;padding:7px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,#fff 91%,var(--accent) 9%)}.content-mode-tabs button{min-height:38px;padding:8px 13px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:750;cursor:pointer}.content-mode-tabs button:hover{background:#fff;color:var(--ink)}.content-mode-tabs button[aria-pressed="true"]{background:#fff;color:var(--accent);box-shadow:0 5px 18px rgba(22,31,51,.08)}.content-mode-more{position:relative}.content-mode-more summary{display:flex;min-height:38px;align-items:center;padding:8px 13px;border-radius:9px;color:var(--accent);font-size:13px;font-weight:800;cursor:pointer;list-style:none}.content-mode-more summary::-webkit-details-marker{display:none}.content-mode-more>div{position:absolute;z-index:20;top:calc(100% + 8px);right:0;display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:5px;width:min(560px,80vw);max-height:330px;overflow:auto;padding:9px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 18px 50px rgba(22,31,51,.18)}

.extractor-family-section{margin-top:26px}.extractor-variant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.extractor-variant-card{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}.extractor-variant-card>div{display:grid;min-width:0;gap:4px}.extractor-variant-card strong{color:var(--ink);font-size:14px}.extractor-variant-card small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.extractor-variant-card>span{flex:0 0 auto;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase}.extractor-variant-card .is-ready{background:#e5f8ef;color:#08794f}.extractor-variant-card .is-unavailable{background:#fff0f1;color:#ae2434}@media(max-width:820px){.extractor-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.extractor-variant-grid{grid-template-columns:1fr}.extractor-variant-card{padding:13px 14px}}
@media(max-width:760px){.family-title-line{align-items:flex-start;text-align:left}.content-mode-tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.content-mode-tabs button{flex:0 0 auto}.hero .content-mode-tabs{margin-top:18px;margin-bottom:16px}.catalog-source-icon.is-large{margin-top:4px}}

/* Dynamic GEO creative presentation v3: readable foreground cards over artwork. */
.dynamic-geo-banner{isolation:isolate;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.dynamic-geo-logo-badge{display:grid;place-items:center;box-sizing:border-box;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(8,10,24,.88);box-shadow:0 10px 28px rgba(0,0,0,.3);backdrop-filter:blur(10px)}
.dynamic-geo-logo-badge .dynamic-geo-logo{display:block;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.22))}
.ad-brand-safecasino .dynamic-geo-logo-badge,.ad-brand-gg-bet .dynamic-geo-logo-badge{background:rgba(255,255,255,.94);border-color:rgba(255,255,255,.75)}
.dynamic-geo-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;line-height:1.2;text-transform:uppercase;color:#ffdf54}
.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:minmax(150px,188px) minmax(260px,1fr) minmax(160px,205px);gap:18px;min-height:230px;padding:22px 24px;background-position:center 30%;box-shadow:0 20px 50px rgba(18,21,34,.22)}
.ad-slot-result .dynamic-geo-banner.is-inline::before{position:absolute;inset:auto 0 0;z-index:0;height:38%;background:linear-gradient(180deg,rgba(7,5,28,0),rgba(7,5,28,.94) 72%);content:""}
.ad-slot-result .dynamic-geo-banner.is-inline::after{background:linear-gradient(90deg,rgba(5,5,18,.84),rgba(9,7,34,.5) 46%,rgba(4,5,16,.86)),linear-gradient(180deg,rgba(4,5,14,.12),rgba(4,5,14,.58))}
.ad-slot-result .dynamic-geo-brand{align-self:stretch;display:grid;grid-template-rows:auto 1fr;justify-items:center;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.15);border-radius:17px;background:rgba(8,8,25,.58);box-shadow:inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.ad-slot-result .dynamic-geo-logo-badge{width:100%;min-height:60px;padding:9px 12px}
.ad-slot-result .dynamic-geo-logo-badge .dynamic-geo-logo{width:min(100%,160px);height:42px}
.ad-slot-result .dynamic-geo-offer-icon{align-self:end;width:76px;height:76px;border:1px solid rgba(255,255,255,.14);border-radius:15px;box-shadow:0 8px 20px rgba(0,0,0,.24)}
.ad-slot-result .dynamic-geo-copy{align-self:stretch;align-content:center;gap:5px;padding:17px 19px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:rgba(5,7,20,.88);background:color-mix(in srgb,var(--ad-panel-bg,#050714) 82%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.22);color:var(--ad-copy-color,#fff);text-shadow:0 1px 3px rgba(0,0,0,.5);backdrop-filter:blur(11px)}
.ad-slot-result .dynamic-geo-copy .dynamic-geo-headline{max-width:22ch;font-size:22px;line-height:1.08;text-wrap:balance}
.ad-slot-result .dynamic-geo-copy .dynamic-geo-prefix{font-size:12px;font-weight:800;color:#f2f3ff;opacity:.9}
.ad-slot-result .dynamic-geo-package{font-size:30px;line-height:1.02;color:#fff;text-wrap:balance}
.ad-slot-result .dynamic-geo-bonus-game{color:#ffdf54}
.ad-slot-result .dynamic-geo-action{align-self:stretch;align-content:center;gap:10px;padding:16px 14px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:rgba(5,7,20,.9);background:color-mix(in srgb,var(--ad-panel-bg,#050714) 84%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.22);color:var(--ad-copy-color,#fff);backdrop-filter:blur(11px)}
.ad-slot-result .dynamic-geo-action .dynamic-geo-cta{padding:14px 12px;border:1px solid rgba(255,255,255,.45);border-radius:12px;background:var(--ad-cta-bg,#ffd000);box-shadow:0 9px 22px rgba(255,208,0,.22);color:#111;font-size:14px;font-weight:900;transition:transform .18s ease,box-shadow .18s ease}
.ad-slot-result .dynamic-geo-banner:hover .dynamic-geo-cta{transform:translateY(-2px);box-shadow:0 13px 28px rgba(255,208,0,.34)}
.ad-slot-rail{top:120px;width:var(--ad-rail-width,160px);max-width:260px}
.ad-slot-rail .dynamic-geo-banner{height:min(620px,calc(100vh - 145px));min-height:520px;padding:18px 12px 16px;border:1px solid rgba(255,255,255,.18);background-position:center;background-size:cover}
.ad-slot-rail .dynamic-geo-banner::after{background:linear-gradient(180deg,rgba(3,4,14,.2),rgba(3,4,14,.38) 44%,rgba(3,4,14,.92) 72%,rgba(3,4,14,.98))}
.ad-slot-rail .dynamic-geo-logo-badge{width:100%;min-height:62px;padding:9px 10px}
.ad-slot-rail .dynamic-geo-logo-badge .dynamic-geo-logo{width:min(100%,175px);height:44px}
.ad-slot-rail .dynamic-geo-rail-copy{display:grid;align-content:end;gap:7px;width:100%;box-sizing:border-box;margin-top:auto;padding:15px 10px;border:1px solid rgba(255,255,255,.17);border-radius:15px;background:rgba(5,7,20,.9);background:color-mix(in srgb,var(--ad-panel-bg,#050714) 84%,transparent);box-shadow:0 12px 28px rgba(0,0,0,.27);color:var(--ad-copy-color,#fff);text-shadow:0 1px 3px rgba(0,0,0,.6);backdrop-filter:blur(10px)}
.ad-slot-rail .dynamic-geo-headline{margin:0;font-size:17px;font-weight:900;line-height:1.08;text-wrap:balance}
.ad-slot-rail .dynamic-geo-amount{margin:0;font-size:28px;line-height:1;color:#fff;white-space:normal;text-wrap:balance}
.ad-slot-rail .dynamic-geo-amount-secondary{font-size:23px;color:#ffdf54}
.ad-slot-rail .dynamic-geo-spins{margin:0;font-size:12px;line-height:1.2;color:#ffdf54}
.ad-slot-rail .dynamic-geo-rail-action{display:grid;gap:8px;width:100%;margin-top:12px}
.ad-slot-rail .dynamic-geo-rail-action .dynamic-geo-cta{box-sizing:border-box;width:100%;padding:13px 8px;border:1px solid rgba(255,255,255,.5);border-radius:11px;background:var(--ad-cta-bg,#ffd000);box-shadow:0 9px 22px rgba(255,208,0,.22);color:#111;font-size:13px;font-weight:900}
.ad-slot-rail .dynamic-geo-terms{margin:0;font-size:9px;line-height:1.25;opacity:.86}
.ad-slot-rail .dynamic-geo-banner.is-slim{padding-inline:8px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-rail-copy{padding-inline:7px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-headline{font-size:14px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-amount{font-size:22px}
@media(min-width:1440px){.ad-slot-rail:not([hidden]){display:grid!important}}
@media(max-width:1439px){.ad-slot-rail{display:none!important}}
@media(max-width:860px){.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:minmax(118px,150px) minmax(0,1fr);gap:14px}.ad-slot-result .dynamic-geo-action{grid-column:1/-1;grid-template-columns:minmax(180px,1fr) auto;align-items:center;padding:10px 12px}.dynamic-geo-login,.dynamic-geo-action .dynamic-geo-terms{display:none}}
@media(max-width:700px){.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:82px minmax(0,1fr);gap:10px;min-height:0;padding:14px 12px;background-position:center}.ad-slot-result .dynamic-geo-brand{padding:8px;gap:8px}.ad-slot-result .dynamic-geo-logo-badge{min-height:42px;padding:6px}.ad-slot-result .dynamic-geo-logo-badge .dynamic-geo-logo{height:30px}.ad-slot-result .dynamic-geo-offer-icon{width:48px;height:48px}.ad-slot-result .dynamic-geo-copy{padding:12px 13px}.ad-slot-result .dynamic-geo-copy .dynamic-geo-headline{font-size:16px}.ad-slot-result .dynamic-geo-package{font-size:20px}.ad-slot-result .dynamic-geo-action{display:grid;grid-template-columns:1fr;gap:6px;padding:8px}.ad-slot-result .dynamic-geo-action .dynamic-geo-cta{padding:11px}.dynamic-geo-kicker{font-size:8px}}

/* Dynamic GEO creative presentation v4: artwork-first, readable and clickable. */
.dynamic-geo-banner{isolation:isolate;transform:translateZ(0);background:#09051d!important;color:var(--ad-copy-color,#fff);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.dynamic-geo-art{position:absolute!important;inset:0;z-index:0!important;display:block;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;user-select:none;transition:transform .55s ease,filter .35s ease}
.dynamic-geo-banner:hover .dynamic-geo-art{transform:scale(1.025);filter:saturate(1.08) contrast(1.03)}
.dynamic-geo-banner:focus-visible{outline:4px solid color-mix(in srgb,var(--accent,#6754ff) 62%,white);outline-offset:4px}
.dynamic-geo-logo-badge{position:relative;z-index:3;display:grid;place-items:center;box-sizing:border-box;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(0,0,0,.26);backdrop-filter:blur(10px)}
.dynamic-geo-logo-badge .dynamic-geo-logo{display:block;max-width:100%;object-fit:contain;filter:none}
.dynamic-geo-kicker{font-size:10px;font-weight:950;letter-spacing:.13em;line-height:1.2;text-transform:uppercase;color:#ffdc4f;text-shadow:0 2px 10px rgba(0,0,0,.72)}
.ad-slot-rail{top:112px;width:var(--ad-rail-width,220px);max-width:260px;filter:drop-shadow(0 22px 34px rgba(13,9,35,.22))}
.ad-slot-rail.is-active{overflow:visible}
.ad-slot-rail::before{z-index:8;top:9px;right:11px;padding:3px 6px;border-radius:99px;background:rgba(4,5,14,.68);color:rgba(255,255,255,.82);text-shadow:0 1px 2px rgba(0,0,0,.55)}
.ad-slot-rail .dynamic-geo-banner{position:relative;display:flex;width:100%;height:min(620px,calc(100vh - 132px));min-height:520px;box-sizing:border-box;flex-direction:column;align-items:center;overflow:hidden;padding:18px 12px 15px;border:1px solid rgba(255,255,255,.28);border-radius:20px;background-image:none!important;text-align:center;text-decoration:none;box-shadow:inset 0 1px rgba(255,255,255,.18),0 20px 50px rgba(8,5,25,.34)}
.ad-slot-rail .dynamic-geo-banner::before{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(2,3,12,.7) 0%,rgba(3,4,14,.18) 30%,rgba(3,4,14,.03) 63%,rgba(3,4,14,.91) 82%,rgba(3,4,14,.98) 100%);content:"";pointer-events:none}
.ad-slot-rail .dynamic-geo-banner::after{position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 17%,rgba(105,82,255,.2),transparent 35%);content:"";pointer-events:none}
.ad-slot-rail .dynamic-geo-banner>*:not(.dynamic-geo-art){position:relative;z-index:3}
.ad-slot-rail .dynamic-geo-logo-badge{width:calc(100% - 14px);min-height:64px;padding:10px 12px;border-radius:15px}
.ad-slot-rail .dynamic-geo-logo-badge .dynamic-geo-logo{width:min(100%,178px);height:43px}
.ad-slot-rail .dynamic-geo-rail-copy{display:grid;align-content:start;justify-items:center;gap:6px;width:100%;box-sizing:border-box;margin-top:18px;padding:0 6px;border:0;background:transparent;box-shadow:none;color:var(--ad-copy-color,#fff);text-shadow:0 2px 11px rgba(0,0,0,.92);backdrop-filter:none}
.ad-slot-rail .dynamic-geo-headline{max-width:16ch;margin:0;font-size:20px;font-weight:950;line-height:1.02;letter-spacing:-.02em;text-wrap:balance}
.ad-slot-rail .dynamic-geo-amount{margin:5px 0 0;font-size:31px;line-height:.98;font-weight:950;color:#fff;white-space:normal;text-wrap:balance;text-shadow:0 0 18px color-mix(in srgb,var(--ad-cta-bg,#ffd000) 55%,transparent),0 2px 8px #000}
.ad-slot-rail .dynamic-geo-amount-secondary{margin-top:1px;font-size:24px;color:#ffdf54}
.ad-slot-rail .dynamic-geo-spins{margin:2px 0 0;font-size:13px;line-height:1.14;font-weight:900;color:#ffdf54;text-transform:uppercase}
.ad-slot-rail .dynamic-geo-rail-action{display:grid;gap:7px;width:100%;margin-top:auto}
.ad-slot-rail .dynamic-geo-rail-action .dynamic-geo-cta{box-sizing:border-box;width:100%;padding:14px 9px;border:1px solid rgba(255,255,255,.58);border-radius:12px;background:linear-gradient(135deg,var(--ad-cta-bg,#ffd000),color-mix(in srgb,var(--ad-cta-bg,#ffd000) 72%,#ff7200));box-shadow:0 10px 24px color-mix(in srgb,var(--ad-cta-bg,#ffd000) 34%,transparent);color:#101014;font-size:14px;font-weight:950;text-transform:uppercase;transition:transform .18s ease,box-shadow .18s ease}
.ad-slot-rail .dynamic-geo-banner:hover .dynamic-geo-cta{transform:translateY(-2px);box-shadow:0 14px 30px color-mix(in srgb,var(--ad-cta-bg,#ffd000) 44%,transparent)}
.ad-slot-rail .dynamic-geo-terms{margin:0;font-size:9px;line-height:1.2;color:rgba(255,255,255,.82);opacity:1}
.ad-slot-rail .dynamic-geo-banner.is-slim{padding-inline:8px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-logo-badge{width:100%;padding-inline:7px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-headline{font-size:16px}
.ad-slot-rail .dynamic-geo-banner.is-slim .dynamic-geo-amount{font-size:24px}
.ad-brand-gg-bet{--ad-cta-bg:#ff7700}
.ad-brand-gg-bet .dynamic-geo-art{object-position:center bottom;transform-origin:50% 72%;animation:ggbet-wow-motion 4.8s ease-in-out infinite}
.ad-brand-gg-bet .dynamic-geo-logo-badge{background:rgba(255,255,255,.97)}
.ad-brand-22bet{--ad-cta-bg:#f44350}
.ad-brand-22bet .dynamic-geo-logo-badge{background:rgba(4,18,38,.91);border-color:rgba(74,233,237,.34)}
.ad-brand-22bet .dynamic-geo-art{object-position:center bottom;animation:bet-wheel-glow 3.2s ease-in-out infinite}
.ad-brand-22bet .dynamic-geo-amount{color:#ffd34f}
.ad-slot-rail .ad-brand-22bet .dynamic-geo-wheel-motion{position:absolute;left:50%;bottom:72px;z-index:2!important;width:min(78%,174px);aspect-ratio:1;transform:translateX(-50%);border:3px solid rgba(255,211,79,.38);border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,211,79,.5) 0 8deg,transparent 8deg 24deg);opacity:.4;filter:drop-shadow(0 0 12px rgba(255,72,89,.42));pointer-events:none;animation:geo-wheel-spin 7s linear infinite;mask:radial-gradient(circle,transparent 0 57%,#000 58% 66%,transparent 67%)}
.ad-slot-rail .ad-brand-22bet .dynamic-geo-logo-badge,.ad-slot-rail .ad-brand-22bet .dynamic-geo-rail-copy,.ad-slot-rail .ad-brand-22bet .dynamic-geo-rail-action{z-index:4}
@keyframes ggbet-wow-motion{0%,100%{transform:scale(1);filter:saturate(1.02) brightness(1)}48%{transform:scale(1.018) translateY(-2px);filter:saturate(1.1) brightness(1.05)}54%{transform:scale(1.012) translateY(0);filter:saturate(1.06) brightness(1.03)}}
@keyframes bet-wheel-glow{0%,100%{transform:scale(1);filter:saturate(1) brightness(1)}50%{transform:scale(1.012);filter:saturate(1.18) brightness(1.08) hue-rotate(5deg)}}
@keyframes geo-wheel-spin{from{transform:translateX(-50%) rotate(0)}to{transform:translateX(-50%) rotate(360deg)}}
.ad-slot-result:has(.dynamic-geo-banner.is-inline){max-width:1200px;padding:0;border:0;background:transparent;overflow:visible}
.ad-slot-result:has(.dynamic-geo-banner.is-inline)::before{z-index:8;top:10px;right:12px;padding:3px 7px;border-radius:99px;background:rgba(5,6,18,.68);color:rgba(255,255,255,.84)}
.ad-slot-result .dynamic-geo-banner.is-inline{position:relative;display:grid;grid-template-columns:minmax(145px,190px) minmax(260px,1fr) minmax(155px,205px);align-items:center;gap:22px;width:100%;min-height:238px;box-sizing:border-box;overflow:hidden;padding:25px 28px;border:1px solid rgba(255,255,255,.25);border-radius:21px;background-image:none!important;color:#fff;text-decoration:none;box-shadow:inset 0 1px rgba(255,255,255,.16),0 20px 50px rgba(18,21,34,.22)}
.ad-slot-result .dynamic-geo-banner.is-inline::before{position:absolute;inset:0;z-index:1;height:auto;background:linear-gradient(90deg,rgba(7,5,27,.76) 0%,rgba(7,5,27,.35) 34%,rgba(7,5,27,.23) 56%,rgba(7,5,27,.72) 100%);content:"";pointer-events:none}
.ad-slot-result .dynamic-geo-banner.is-inline::after{position:absolute;inset:auto 0 0;z-index:1;height:46%;background:linear-gradient(180deg,transparent,rgba(7,5,27,.86));content:"";pointer-events:none}
.ad-slot-result .dynamic-geo-banner.is-inline>*:not(.dynamic-geo-art){position:relative;z-index:3;min-width:0}
.ad-slot-result .dynamic-geo-brand{align-self:center;display:grid;grid-template-rows:auto auto;justify-items:center;gap:12px;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.ad-slot-result .dynamic-geo-logo-badge{width:100%;min-height:64px;padding:10px 13px;border-radius:15px}
.ad-slot-result .dynamic-geo-logo-badge .dynamic-geo-logo{width:min(100%,165px);height:42px}
.ad-slot-result .dynamic-geo-offer-icon{width:82px;height:82px;border:2px solid rgba(255,255,255,.7);border-radius:18px;object-fit:cover;box-shadow:0 10px 24px rgba(0,0,0,.32)}
.ad-slot-result .dynamic-geo-copy{align-self:center;align-content:center;gap:5px;padding:0;border:0;background:transparent;box-shadow:none;color:var(--ad-copy-color,#fff);text-align:left;text-shadow:0 2px 10px rgba(0,0,0,.92);backdrop-filter:none}
.ad-slot-result .dynamic-geo-copy .dynamic-geo-headline{max-width:23ch;font-size:28px;font-weight:950;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.ad-slot-result .dynamic-geo-copy .dynamic-geo-prefix{font-size:13px;font-weight:850;color:#f7f5ff;opacity:1}
.ad-slot-result .dynamic-geo-package{font-size:34px;font-weight:950;line-height:1;color:#ffdf54;text-wrap:balance}
.ad-slot-result .dynamic-geo-bonus-game{font-size:13px;font-weight:950;color:#ffdf54;text-transform:uppercase}
.ad-slot-result .dynamic-geo-action{align-self:center;display:grid;justify-items:stretch;gap:10px;padding:0;border:0;background:transparent;box-shadow:none;color:#fff;text-align:center;backdrop-filter:none}
.ad-slot-result .dynamic-geo-action .dynamic-geo-cta{padding:15px 13px;border:1px solid rgba(255,255,255,.62);border-radius:13px;background:linear-gradient(135deg,var(--ad-cta-bg,#ffd000),color-mix(in srgb,var(--ad-cta-bg,#ffd000) 72%,#ff7200));box-shadow:0 11px 27px color-mix(in srgb,var(--ad-cta-bg,#ffd000) 35%,transparent);color:#111;font-size:14px;font-weight:950;text-transform:uppercase;transition:transform .18s ease,box-shadow .18s ease}
.ad-slot-result .dynamic-geo-banner:hover .dynamic-geo-cta{transform:translateY(-2px);box-shadow:0 15px 32px color-mix(in srgb,var(--ad-cta-bg,#ffd000) 46%,transparent)}
.dynamic-geo-login{font-size:10px;font-weight:750;text-shadow:0 2px 7px rgba(0,0,0,.9)}
.dynamic-geo-action .dynamic-geo-terms{font-size:9px;color:rgba(255,255,255,.82);opacity:1;text-shadow:0 2px 7px rgba(0,0,0,.9)}
@media(min-width:1440px){.ad-slot-rail:not([hidden]){display:grid!important}}
@media(max-width:1439px){.ad-slot-rail{display:none!important}}
@media(max-width:860px){.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:minmax(120px,155px) minmax(0,1fr);gap:15px;min-height:265px}.ad-slot-result .dynamic-geo-action{grid-column:1/-1;grid-template-columns:minmax(180px,1fr) auto;align-items:center}.dynamic-geo-login,.dynamic-geo-action .dynamic-geo-terms{display:none}}
@media(max-width:700px){.ad-slot-result .dynamic-geo-banner.is-inline{grid-template-columns:78px minmax(0,1fr);gap:11px;min-height:0;padding:16px 13px;background:#10052e!important}.ad-slot-result .dynamic-geo-banner.is-inline::before{background:linear-gradient(90deg,rgba(7,5,27,.78),rgba(7,5,27,.48)),linear-gradient(180deg,rgba(7,5,27,.22),rgba(7,5,27,.8))}.ad-slot-result .dynamic-geo-art{object-position:center;filter:saturate(.92) brightness(.82)}.ad-slot-result .dynamic-geo-brand{gap:8px}.ad-slot-result .dynamic-geo-logo-badge{min-height:44px;padding:7px}.ad-slot-result .dynamic-geo-logo-badge .dynamic-geo-logo{height:29px}.ad-slot-result .dynamic-geo-offer-icon{width:52px;height:52px;border-radius:12px}.ad-slot-result .dynamic-geo-copy{padding:0}.ad-slot-result .dynamic-geo-copy .dynamic-geo-headline{font-size:17px}.ad-slot-result .dynamic-geo-copy .dynamic-geo-prefix{font-size:10px}.ad-slot-result .dynamic-geo-package{font-size:21px}.ad-slot-result .dynamic-geo-bonus-game{font-size:10px}.ad-slot-result .dynamic-geo-action{display:grid;grid-template-columns:1fr;gap:6px;padding:0}.ad-slot-result .dynamic-geo-action .dynamic-geo-cta{padding:12px}.dynamic-geo-kicker{font-size:8px}}
@media(prefers-reduced-motion:reduce){.dynamic-geo-art,.dynamic-geo-cta{transition:none!important}.dynamic-geo-banner:hover .dynamic-geo-art{transform:none}}

/* SafeCasino inline art v2: one clean composition instead of stacked cards over baked-in copy. */
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino{
  grid-template-columns:minmax(280px,43%) minmax(230px,1fr) minmax(160px,195px);
  grid-template-rows:auto 1fr;
  gap:8px 20px;
  min-height:260px;
  padding:24px 28px;
  background-color:#14052f!important;
  background-image:url("/static/ads/safecasino-inline-art-v2-desktop.webp")!important;
  background-position:center!important;
  background-size:cover!important;
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino>.dynamic-geo-art{display:none}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino::before{
  z-index:1;
  background:linear-gradient(90deg,rgba(10,4,29,.08) 0%,rgba(10,4,29,.13) 37%,rgba(10,4,29,.82) 53%,rgba(8,3,26,.97) 100%);
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino::after{
  z-index:2;
  inset:-45% auto -45% -18%;
  width:18%;
  height:auto;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.16),transparent);
  transform:skewX(-16deg);
  animation:safecasino-inline-sheen 7s ease-in-out infinite;
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-brand{
  grid-column:1;
  grid-row:1;
  justify-self:start;
  justify-items:start;
  width:218px;
  padding:0;
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-logo-badge{
  min-height:66px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:13px;
  background:rgba(255,255,255,.96);
  box-shadow:0 9px 24px rgba(0,0,0,.2);
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-logo-badge .dynamic-geo-logo{height:50px}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-offer-icon{display:none}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-copy{
  grid-column:2;
  grid-row:1/3;
  align-self:center;
  gap:4px;
  padding:12px 16px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(10,4,31,.72),rgba(10,4,31,.3));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 12px 28px rgba(0,0,0,.18);
  text-shadow:0 3px 14px rgba(0,0,0,.95);
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-kicker{color:#ffe260;font-size:10px;letter-spacing:.11em}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-headline{max-width:20ch;font-size:25px;line-height:1.04}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-prefix{font-size:11px}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-package{font-size:31px;color:#ffe260;white-space:normal}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-bonus-game{font-size:10px;color:#ffe260}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-action{
  grid-column:3;
  grid-row:1/3;
  align-self:center;
  gap:9px;
}
.ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-cta{
  border-color:rgba(255,239,145,.8);
  background:linear-gradient(135deg,#ffe056,#ffb300);
  box-shadow:0 12px 30px rgba(255,182,0,.3);
}
@keyframes safecasino-inline-sheen{
  0%,62%{left:-18%;opacity:0}
  70%{opacity:1}
  86%,100%{left:112%;opacity:0}
}
@media(max-width:860px){
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino{
    grid-template-columns:minmax(210px,44%) minmax(0,1fr);
    grid-template-rows:auto 1fr auto;
    min-height:310px;
  }
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-brand{grid-column:1;grid-row:1;width:180px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-logo-badge .dynamic-geo-logo{height:42px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-copy{grid-column:2;grid-row:1/3}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-action{grid-column:2;grid-row:3}
}
@media(max-width:700px){
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino{
    display:grid;
    grid-template-columns:42% minmax(0,1fr);
    grid-template-rows:auto 1fr auto;
    gap:8px;
    min-height:330px;
    padding:16px;
    background-image:url("/static/ads/safecasino-inline-art-v2-mobile.webp")!important;
    background-position:center!important;
  }
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino::before{
    background:linear-gradient(90deg,rgba(9,3,27,.08),rgba(9,3,27,.34) 38%,rgba(8,3,25,.9) 62%,rgba(8,3,25,.97));
  }
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-brand{
    grid-column:1;
    grid-row:1;
    width:136px;
  }
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-logo-badge{min-height:48px;padding:6px 9px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-logo-badge .dynamic-geo-logo{height:34px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-copy{grid-column:2;grid-row:1/3;align-self:center;padding:10px 11px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-headline{font-size:18px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-prefix{display:none}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-package{font-size:23px}
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino .dynamic-geo-action{grid-column:1/-1;grid-row:3;margin-top:6px}
}
@media(prefers-reduced-motion:reduce){
  .ad-slot-result .dynamic-geo-banner.is-inline.ad-brand-safecasino::after,.ad-brand-gg-bet .dynamic-geo-art,.ad-brand-22bet .dynamic-geo-art,.dynamic-geo-wheel-motion{animation:none}
}

/* BitStarz after-formats GEO creative: isolated from the SafeCasino/result slot. */
.ad-slot-formats:has(.dynamic-geo-banner.is-inline){
  max-width:1200px;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  overflow:visible;
}
.ad-slot-formats:has(.dynamic-geo-banner.is-inline)::before{
  z-index:8;
  top:10px;
  right:12px;
  padding:3px 7px;
  border-radius:99px;
  background:rgba(4,5,18,.72);
  color:rgba(255,255,255,.88);
}
.ad-slot-formats .dynamic-geo-banner.is-inline.ad-brand-bitstarz{
  --ad-cta-bg:#f72562;
  position:relative;
  display:grid;
  grid-template-columns:minmax(135px,180px) minmax(270px,370px) minmax(0,1fr);
  grid-template-rows:1fr auto;
  align-items:center;
  gap:10px 22px;
  width:100%;
  min-height:260px;
  box-sizing:border-box;
  overflow:hidden;
  padding:24px 30px 19px;
  border:1px solid rgba(181,123,255,.45);
  border-radius:21px;
  background:#090526!important;
  color:#fff;
  text-decoration:none;
  box-shadow:inset 0 1px rgba(255,255,255,.15),0 22px 52px rgba(19,10,70,.25);
}
.ad-slot-formats .ad-brand-bitstarz>.dynamic-geo-art{
  z-index:0!important;
  object-position:center;
  animation:bitstarz-art-pulse 8s ease-in-out infinite;
}
.ad-slot-formats .ad-brand-bitstarz::before{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(4,7,27,.97) 0%,rgba(8,6,39,.9) 38%,rgba(10,5,47,.36) 58%,rgba(6,4,31,.08) 100%);
  content:"";
  pointer-events:none;
}
.ad-slot-formats .ad-brand-bitstarz::after{
  position:absolute;
  inset:-35%;
  z-index:2;
  background:
    radial-gradient(circle at 15% 26%,rgba(247,37,98,.28) 0 2px,transparent 3px),
    radial-gradient(circle at 32% 68%,rgba(255,205,56,.32) 0 2px,transparent 3px),
    radial-gradient(circle at 61% 24%,rgba(91,231,255,.28) 0 2px,transparent 3px);
  background-size:118px 106px,143px 131px,164px 147px;
  content:"";
  opacity:.72;
  pointer-events:none;
  animation:bitstarz-sparks 13s linear infinite;
}
.ad-slot-formats .ad-brand-bitstarz>*:not(.dynamic-geo-art){position:relative;z-index:3;min-width:0}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-brand{
  grid-column:1;
  grid-row:1;
  align-self:start;
  justify-items:start;
  padding-top:3px;
}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-logo-badge{
  width:100%;
  min-height:68px;
  padding:10px 13px;
  border-radius:15px;
}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-logo-badge .dynamic-geo-logo{width:100%;height:48px}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-offer-icon{display:none}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-copy{
  grid-column:2;
  grid-row:1;
  align-self:center;
  gap:5px;
  padding:12px 15px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:17px;
  background:linear-gradient(135deg,rgba(7,8,34,.82),rgba(27,7,67,.46));
  box-shadow:0 16px 34px rgba(3,4,24,.2);
  color:#fff;
  text-shadow:0 3px 14px rgba(0,0,0,.88);
  backdrop-filter:blur(5px);
}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-kicker{color:#ffcf3a}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-headline{max-width:20ch;font-size:27px;line-height:1.02}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-prefix{font-size:11px;color:#fff;opacity:.9}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-package{font-size:27px;line-height:1.04;color:#ffcf3a;white-space:normal}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-bonus-game{display:none}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-action{
  grid-column:1/3;
  grid-row:2;
  display:grid;
  grid-template-columns:minmax(180px,260px) 1fr auto;
  align-items:center;
  gap:10px;
}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-cta{
  padding:13px 17px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:12px;
  background:linear-gradient(135deg,#ff396e,#e9004b);
  box-shadow:0 12px 29px rgba(247,37,98,.38);
  color:#fff;
  font-size:14px;
  font-weight:950;
  text-transform:uppercase;
}
.ad-slot-formats .ad-brand-bitstarz:hover .dynamic-geo-cta{box-shadow:0 16px 34px rgba(247,37,98,.52)}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-login{font-size:10px;color:rgba(255,255,255,.82)}
.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-terms{font-size:9px;color:rgba(255,255,255,.78)}
@keyframes bitstarz-art-pulse{
  0%,100%{transform:scale(1);filter:saturate(1) brightness(1)}
  50%{transform:scale(1.018) translateX(-2px);filter:saturate(1.1) brightness(1.06)}
}
@keyframes bitstarz-sparks{to{transform:translate3d(6%,5%,0) rotate(2deg)}}
@media(max-width:860px){
  .ad-slot-formats .dynamic-geo-banner.is-inline.ad-brand-bitstarz{
    grid-template-columns:125px minmax(0,1fr);
    grid-template-rows:auto 1fr auto;
    min-height:290px;
    gap:10px 14px;
    padding:20px;
  }
  .ad-slot-formats .ad-brand-bitstarz>.dynamic-geo-art{object-position:63% center}
  .ad-slot-formats .ad-brand-bitstarz::before{background:linear-gradient(90deg,rgba(4,7,27,.97),rgba(8,6,39,.82) 53%,rgba(8,5,38,.4))}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-brand{grid-column:1;grid-row:1}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-copy{grid-column:2;grid-row:1/3}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-action{grid-column:1/-1;grid-row:3}
}
@media(max-width:700px){
  .ad-slot-formats .dynamic-geo-banner.is-inline.ad-brand-bitstarz{
    grid-template-columns:92px minmax(0,1fr);
    grid-template-rows:auto 1fr auto;
    min-height:286px;
    gap:9px 11px;
    padding:15px 13px 13px;
    border-radius:17px;
  }
  .ad-slot-formats .ad-brand-bitstarz>.dynamic-geo-art{object-position:70% center;filter:saturate(.95) brightness(.76)}
  .ad-slot-formats .ad-brand-bitstarz::before{background:linear-gradient(90deg,rgba(4,7,27,.97),rgba(8,6,39,.88) 57%,rgba(8,5,38,.44))}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-logo-badge{min-height:48px;padding:7px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-logo-badge .dynamic-geo-logo{height:34px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-copy{gap:3px;padding:10px 11px;border-radius:13px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-kicker{font-size:8px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-headline{font-size:17px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-prefix{display:none}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-package{font-size:19px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-action{grid-template-columns:1fr;gap:5px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-cta{width:100%;padding:12px}
  .ad-slot-formats .ad-brand-bitstarz .dynamic-geo-login,.ad-slot-formats .ad-brand-bitstarz .dynamic-geo-terms{display:none}
}
@media(prefers-reduced-motion:reduce){
  .ad-slot-formats .ad-brand-bitstarz>.dynamic-geo-art,.ad-slot-formats .ad-brand-bitstarz::after{animation:none}
}

/* Verde compact GEO creative between the first and second format groups. */
.ad-slot-format-break:has(.dynamic-geo-banner.is-inline){
  max-width:1200px;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  overflow:visible;
}
.ad-slot-format-break:has(.dynamic-geo-banner.is-inline)::before{
  z-index:8;
  top:7px;
  right:9px;
  padding:2px 6px;
  border-radius:99px;
  background:rgba(29,7,48,.74);
  color:rgba(255,255,255,.9);
}
.ad-slot-format-break .dynamic-geo-banner.is-inline.ad-brand-verde-casino{
  --ad-cta-bg:#98dc00;
  position:relative;
  display:grid;
  grid-template-columns:minmax(106px,145px) minmax(240px,1fr) minmax(132px,168px);
  align-items:center;
  gap:9px 15px;
  width:100%;
  height:100px;
  min-height:100px;
  box-sizing:border-box;
  overflow:hidden;
  padding:9px 15px;
  border:1px solid rgba(238,181,44,.72);
  border-radius:17px;
  background:#3d0a63!important;
  color:#fff;
  text-decoration:none;
  box-shadow:inset 0 1px rgba(255,255,255,.22),0 13px 32px rgba(90,33,6,.22);
}
.ad-slot-format-break .ad-brand-verde-casino>.dynamic-geo-art{
  z-index:0!important;
  object-position:center;
  filter:saturate(1.05) contrast(1.02);
  animation:verde-art-breathe 8s ease-in-out infinite;
}
.ad-slot-format-break .ad-brand-verde-casino::before{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(43,6,57,.3),rgba(45,8,70,.89) 33%,rgba(42,6,69,.92) 68%,rgba(45,6,58,.28));
  content:"";
  pointer-events:none;
}
.ad-slot-format-break .ad-brand-verde-casino::after{
  position:absolute;
  top:-90%;
  bottom:-90%;
  left:-24%;
  z-index:2;
  width:13%;
  background:linear-gradient(105deg,transparent,rgba(255,233,129,.3),transparent);
  content:"";
  transform:skewX(-14deg);
  pointer-events:none;
  animation:verde-compact-sheen 7.5s ease-in-out infinite;
}
.ad-slot-format-break .ad-brand-verde-casino>*:not(.dynamic-geo-art){position:relative;z-index:3;min-width:0}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-brand{grid-column:1;justify-items:start;padding:0}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-logo-badge{
  width:100%;
  min-height:66px;
  padding:6px 9px;
  border:1px solid rgba(185,255,79,.42);
  border-radius:12px;
  background:rgba(13,8,25,.82);
  box-shadow:0 8px 18px rgba(0,0,0,.22);
}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-logo-badge .dynamic-geo-logo{width:100%;height:52px}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-offer-icon{display:none}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-copy{
  grid-column:2;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  gap:0 8px;
  padding:6px 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:linear-gradient(135deg,rgba(45,6,78,.86),rgba(28,5,55,.58));
  text-shadow:0 2px 10px rgba(0,0,0,.9);
  backdrop-filter:blur(4px);
}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-kicker{grid-column:1/-1;color:#b9ff3f;font-size:8px;letter-spacing:.1em}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-headline{grid-column:1;font-size:14px;line-height:1.05;white-space:nowrap}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-prefix{display:none}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-package{grid-column:2;font-size:21px;line-height:1;color:#c6ff3d;white-space:normal}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-bonus-game{display:none}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-action{grid-column:3;display:grid;gap:4px;text-align:center}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-cta{
  padding:13px 14px;
  border:1px solid rgba(235,255,182,.86);
  border-radius:11px;
  background:linear-gradient(135deg,#b8f52b,#78c900);
  box-shadow:0 8px 21px rgba(137,220,0,.36);
  color:#1e2a00;
  font-size:13px;
  font-weight:950;
  text-transform:uppercase;
}
.ad-slot-format-break .ad-brand-verde-casino:hover .dynamic-geo-cta{transform:translateY(-1px);box-shadow:0 11px 25px rgba(137,220,0,.5)}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-login{display:none}
.ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-terms{font-size:8px;color:rgba(255,255,255,.86)}
@keyframes verde-art-breathe{
  0%,100%{transform:scale(1);filter:saturate(1.04) brightness(1)}
  50%{transform:scale(1.025);filter:saturate(1.13) brightness(1.07)}
}
@keyframes verde-compact-sheen{
  0%,66%{left:-24%;opacity:0}
  72%{opacity:1}
  88%,100%{left:114%;opacity:0}
}
@media(max-width:700px){
  .ad-slot-format-break .dynamic-geo-banner.is-inline.ad-brand-verde-casino{
    grid-template-columns:86px minmax(0,1fr) 92px;
    grid-template-rows:1fr auto;
    gap:6px 8px;
    height:140px;
    min-height:140px;
    padding:10px;
    border-radius:15px;
  }
  .ad-slot-format-break .ad-brand-verde-casino>.dynamic-geo-art{object-position:center;filter:saturate(1.02) brightness(.86)}
  .ad-slot-format-break .ad-brand-verde-casino::before{background:linear-gradient(90deg,rgba(40,5,57,.48),rgba(42,7,67,.91) 30%,rgba(41,6,67,.92) 70%,rgba(40,5,57,.48))}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-brand{grid-column:1;grid-row:1}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-logo-badge{min-height:45px;padding:5px 6px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-logo-badge .dynamic-geo-logo{height:35px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-copy{grid-column:2/4;grid-row:1;padding:7px 8px;gap:1px 5px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-kicker{font-size:7px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-headline{font-size:11px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-package{font-size:16px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-action{grid-column:1/-1;grid-row:2;grid-template-columns:1fr auto;align-items:center;gap:8px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-cta{padding:9px 12px;font-size:11px}
  .ad-slot-format-break .ad-brand-verde-casino .dynamic-geo-terms{font-size:7px;text-align:right}
}
@media(prefers-reduced-motion:reduce){
  .ad-slot-format-break .ad-brand-verde-casino>.dynamic-geo-art,.ad-slot-format-break .ad-brand-verde-casino::after{animation:none}
}

/* FieryPlay and Slotoro compact GEO creatives.  Offer copy remains live HTML so
   language and currency can change without baking misleading values into art. */
.ad-slot-format-break .dynamic-geo-banner.is-inline:is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino){
  --compact-accent:#ffb22c;
  --compact-accent-2:#ff3d2e;
  --compact-panel:rgba(25,3,10,.82);
  position:relative;
  display:grid;
  grid-template-columns:minmax(112px,155px) minmax(250px,1fr) minmax(132px,170px);
  align-items:center;
  gap:10px 15px;
  width:100%;
  height:100px;
  min-height:100px;
  box-sizing:border-box;
  overflow:hidden;
  padding:9px 15px;
  border:1px solid color-mix(in srgb,var(--compact-accent) 70%,#fff 30%);
  border-radius:17px;
  background:#250107!important;
  color:#fff;
  text-decoration:none;
  isolation:isolate;
  box-shadow:inset 0 1px rgba(255,255,255,.2),0 13px 32px rgba(55,0,10,.25);
}
.ad-slot-format-break .dynamic-geo-banner.is-inline.ad-brand-slotoro-casino{
  --compact-accent:#fff20a;
  --compact-accent-2:#ff2db5;
  --compact-panel:rgba(36,4,43,.86);
  background:#29052e!important;
}
.ad-slot-format-break .dynamic-geo-banner.is-inline.ad-brand-slotrave-casino{
  --compact-accent:#55fff0;
  --compact-accent-2:#b722ff;
  --compact-panel:rgba(16,8,76,.88);
  background:#10074d!important;
}
.ad-slot-format-break .dynamic-geo-banner.is-inline.ad-brand-betwinner-casino{
  --compact-accent:#ffd928;
  --compact-accent-2:#11b87b;
  --compact-panel:rgba(2,55,39,.9);
  background:#013d2c!important;
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)>.dynamic-geo-art{
  z-index:0!important;
  object-position:center 42%!important;
  filter:saturate(1.16) contrast(1.05) brightness(.82);
  animation:compact-casino-breathe 7s ease-in-out infinite;
}
.ad-slot-format-break .ad-brand-slotoro-casino>.dynamic-geo-art{object-position:center 38%!important;filter:saturate(1.08) brightness(.7)}
.ad-slot-format-break .ad-brand-slotrave-casino>.dynamic-geo-art{object-position:center 43%!important;filter:saturate(1.14) brightness(.76)}
.ad-slot-format-break .ad-brand-betwinner-casino>.dynamic-geo-art{object-position:center 45%!important;filter:saturate(1.04) brightness(.72)}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)::before{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(15,1,6,.5),var(--compact-panel) 25%,var(--compact-panel) 72%,rgba(15,1,6,.56));
  content:"";
  pointer-events:none;
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)::after{
  position:absolute;
  top:-105%;
  bottom:-105%;
  left:-22%;
  z-index:2;
  width:12%;
  background:linear-gradient(105deg,transparent,color-mix(in srgb,var(--compact-accent) 42%,transparent),transparent);
  content:"";
  transform:skewX(-15deg);
  pointer-events:none;
  animation:compact-casino-sheen 6.8s ease-in-out infinite;
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)>*:not(.dynamic-geo-art){position:relative;z-index:3;min-width:0}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-brand{grid-column:1;justify-items:start;padding:0}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-logo-badge{
  width:100%;
  min-height:66px;
  padding:7px 9px;
  border:1px solid color-mix(in srgb,var(--compact-accent) 50%,transparent);
  border-radius:12px;
  background:rgba(7,3,8,.86);
  box-shadow:0 8px 18px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.08);
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-logo{width:100%;height:50px;object-fit:contain}
.ad-slot-format-break .ad-brand-slotoro-casino .dynamic-geo-logo-badge{background:rgba(255,255,255,.94)}
.ad-slot-format-break .ad-brand-slotrave-casino .dynamic-geo-logo-badge{background:rgba(8,5,30,.9)}
.ad-slot-format-break .ad-brand-betwinner-casino .dynamic-geo-logo-badge{background:rgba(0,38,28,.92)}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-offer-icon{display:none}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-copy{
  grid-column:2;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  gap:1px 9px;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  background:linear-gradient(135deg,var(--compact-panel),rgba(8,2,12,.65));
  text-shadow:0 2px 10px rgba(0,0,0,.95);
  backdrop-filter:blur(5px);
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-kicker{grid-column:1/-1;color:var(--compact-accent);font-size:8px;letter-spacing:.11em;text-transform:uppercase}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-headline{grid-column:1;font-size:14px;line-height:1.05;white-space:nowrap}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-prefix{display:none}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-package{grid-column:2;font-size:21px;line-height:1;color:var(--compact-accent);white-space:normal}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-bonus-game{display:none}
.ad-slot-format-break .ad-brand-slotrave-casino .dynamic-geo-bonus-game{
  display:block;
  grid-column:1/-1;
  color:#fff;
  font-size:8px;
  font-weight:850;
  line-height:1;
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-action{grid-column:3;display:grid;gap:4px;text-align:center}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-cta{
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:11px;
  background:linear-gradient(135deg,var(--compact-accent),var(--compact-accent-2));
  box-shadow:0 8px 22px color-mix(in srgb,var(--compact-accent-2) 32%,transparent);
  color:#160307;
  font-size:13px;
  font-weight:950;
  text-transform:uppercase;
  transition:transform .18s ease,box-shadow .18s ease;
}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino):hover .dynamic-geo-cta{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 27px color-mix(in srgb,var(--compact-accent-2) 48%,transparent)}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-login{display:none}
.ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-terms{font-size:8px;color:rgba(255,255,255,.86)}
@keyframes compact-casino-breathe{
  0%,100%{transform:scale(1);filter:saturate(1.08) brightness(.82)}
  50%{transform:scale(1.035);filter:saturate(1.2) brightness(.94)}
}
@keyframes compact-casino-sheen{
  0%,64%{left:-22%;opacity:0}
  70%{opacity:1}
  88%,100%{left:114%;opacity:0}
}
@media(max-width:700px){
  .ad-slot-format-break .dynamic-geo-banner.is-inline:is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino){
    grid-template-columns:86px minmax(0,1fr) 92px;
    grid-template-rows:1fr auto;
    gap:6px 8px;
    height:140px;
    min-height:140px;
    padding:10px;
    border-radius:15px;
  }
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)>.dynamic-geo-art{object-position:center!important;filter:saturate(1.08) brightness(.68)}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)::before{background:linear-gradient(90deg,rgba(18,1,8,.58),var(--compact-panel) 27%,var(--compact-panel) 74%,rgba(18,1,8,.58))}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-brand{grid-column:1;grid-row:1}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-logo-badge{min-height:45px;padding:5px 6px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-logo{height:35px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-copy{grid-column:2/4;grid-row:1;padding:7px 8px;gap:1px 5px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-kicker{font-size:7px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-headline{font-size:11px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-package{font-size:16px}
  .ad-slot-format-break .ad-brand-slotrave-casino .dynamic-geo-bonus-game{font-size:7px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-action{grid-column:1/-1;grid-row:2;grid-template-columns:1fr auto;align-items:center;gap:8px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-cta{padding:9px 12px;font-size:11px}
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino) .dynamic-geo-terms{font-size:7px;text-align:right}
}
@media(prefers-reduced-motion:reduce){
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)>.dynamic-geo-art,
  .ad-slot-format-break :is(.ad-brand-fieryplay-casino,.ad-brand-slotoro-casino,.ad-brand-slotrave-casino,.ad-brand-betwinner-casino)::after{animation:none}
}

/* Public advertising inventory: quiet placeholders now, campaign-ready later. */
.ad-slot[data-ad-phase="public"].is-placeholder{
  border:1px dashed color-mix(in srgb,var(--accent,#6754ff) 26%,#d8deed);
  background:
    repeating-linear-gradient(135deg,rgba(103,84,255,.025) 0,rgba(103,84,255,.025) 10px,transparent 10px,transparent 20px),
    linear-gradient(145deg,#fbfcff,#f7f8fc);
  box-shadow:inset 0 1px rgba(255,255,255,.9);
}
.ad-slot[data-ad-phase="public"].is-placeholder::before{display:none}
.ad-slot[data-ad-phase="public"] .ad-placeholder-label{
  display:grid;
  justify-items:center;
  gap:5px;
  color:#6f7890;
  text-align:center;
}
.ad-slot[data-ad-phase="public"] .ad-placeholder-label small{
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.ad-slot[data-ad-phase="public"] .ad-placeholder-label strong{
  color:#59637d;
  font-size:12px;
  letter-spacing:0;
}
.ad-slot-public-hero{max-width:970px}
.hero>.ad-slot-public-hero.is-active{margin:22px auto 4px}
.ad-slot-public-content{max-width:728px}
.ad-slot-public-anchor.is-active{
  position:fixed;
  z-index:30;
  right:0;
  bottom:12px;
  left:0;
  width:min(calc(100% - 32px),970px);
  margin:0 auto;
  box-shadow:0 16px 45px rgba(34,41,64,.16);
}
.ad-slot-rail[data-ad-phase="public"].is-placeholder{
  min-height:600px;
  padding:14px;
  border-style:dashed;
  background:
    repeating-linear-gradient(135deg,rgba(103,84,255,.035) 0,rgba(103,84,255,.035) 12px,transparent 12px,transparent 24px),
    #f8f9fd;
  filter:drop-shadow(0 18px 32px rgba(34,41,64,.1));
}
@media(max-width:700px){
  .ad-slot-public-hero{--ad-height:100px}
  .ad-slot-public-content{--ad-height:250px}
  .ad-slot-public-anchor.is-active{bottom:8px;width:min(calc(100% - 20px),320px)}
}
