/* Ad banner in main filter toolbar */

:root {
  /* Fixed live slot heights — shared by live main filter and ads manager preview */
  --gb-ad-slot-height-desktop: 3.5rem; /* 56px — main filter ad budget */
  --gb-ad-slot-height-mobile: 3rem;    /* 48px */

  /* Back-compat aliases (same fixed budget; never grow with image height) */
  --gb-ad-slot-max-height: var(--gb-ad-slot-height-desktop);
  --gb-ad-slot-max-height-mobile: var(--gb-ad-slot-height-mobile);
  --gb-ad-slot-max-height-large: var(--gb-ad-slot-height-desktop);
  --gb-ad-slot-max-height-compact: var(--gb-ad-slot-height-desktop);

  --gb-ad-slot-padding-x: 0.5rem;
  --gb-ad-slot-padding-y: 0.35rem;
  --gb-ad-slot-padding-block: var(--gb-ad-slot-padding-y);
  --gb-ad-slot-gap: 0.75rem;
  --gb-ad-slot-radius: var(--gb-radius, 0.75rem);

  /* Image height is clamped to the inner slot (fixed height − vertical padding) */
  --gb-ad-image-max-height: calc(
    var(--gb-ad-slot-height-desktop) - (var(--gb-ad-slot-padding-block) * 2)
  );

  --gb-ad-image-height-compact: 1.5rem;   /* 24px */
  --gb-ad-image-height-default: 2.25rem;  /* 36px */
  --gb-ad-image-height-large: var(--gb-ad-image-max-height); /* max safe in slot */
  --gb-ad-image-max-width-compact: 5.5rem;
  --gb-ad-image-max-width-default: 8rem;
  --gb-ad-image-max-width-large: 10.5rem;

  --gb-ad-custom-image-min-px: 24;
  --gb-ad-custom-image-max-px: 46;

  --gb-ad-image-height: var(--gb-ad-image-height-default);
  --gb-ad-image-max-width: var(--gb-ad-image-max-width-default);
}

.gb-ad-slot {
  height: var(--gb-ad-slot-height-desktop);
  min-height: var(--gb-ad-slot-height-desktop);
  max-height: var(--gb-ad-slot-height-desktop);
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  align-items: stretch;
}

.gb-ad-slot--scale-preview,
.gb-ad-slot--scale-compact,
.gb-ad-slot--scale-large {
  height: var(--gb-ad-slot-height-desktop);
  min-height: var(--gb-ad-slot-height-desktop);
  max-height: var(--gb-ad-slot-height-desktop);
  overflow: hidden;
}

.main-filter--has-ad .main-filter-center {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
}

/*
 * Side strips (Filter / Reklama) are absolute children of .main-filter and stretch
 * top:0 / bottom:0 — escaping toolbar padding-block (the prior grid-in-padded-center
 * inset). Only the center content zone keeps normal toolbar padding.
 */
.main-filter--reklama {
  --main-filter-create-ad-width: 4.25rem;
  --gb-main-slot-side-width: var(--main-filter-create-ad-width);
}

.main-filter--reklama.gb-app-toolbar {
  padding-right: var(--main-filter-create-ad-width);
}

.main-filter--has-ad.main-filter--reklama.gb-app-toolbar {
  padding-left: var(--main-filter-create-ad-width);
}

.main-filter--reklama .main-filter-center {
  min-width: 0;
  max-width: 100%;
}

/* —— Center stage only (sides are absolute rails on .main-filter) —— */
.main-filter-slot,
.main-filter-stage {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  height: var(--gb-ad-slot-height-desktop);
  min-height: var(--gb-ad-slot-height-desktop);
  max-height: var(--gb-ad-slot-height-desktop);
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

.main-filter-slot__stage {
  position: relative;
  min-width: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.main-filter-slot__panel {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
  transition: opacity 220ms ease, transform 220ms ease;
}

.main-filter-slot__panel.is-active {
  opacity: 1;
  transform: none;
  pointer-events: auto;
  z-index: 1;
}

.main-filter-slot__panel.is-exit {
  opacity: 0;
  transform: translateY(-4px);
  pointer-events: none;
  z-index: 0;
}

.main-filter-slot__panel--ad .gb-ad-banner.gb-ad-slot,
.main-filter-slot__panel--ad .gb-ad-slot {
  width: 100%;
  max-width: 100%;
  flex: 1 1 auto;
}

.main-filter-slot__panel--filter {
  justify-content: center;
}

.main-filter-slot-toggle__label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Ad mode: entire filter panel (incl. lightbulb) takes no space / no interaction */
.main-filter--has-ad[data-main-slot-mode="ad"] .main-filter-slot__panel--filter {
  visibility: hidden;
}

.gb-ad-banner {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border-radius: var(--gb-radius, 0.75rem);
  border: none;
  background: transparent;
  display: flex;
  align-items: stretch;
  position: relative;
}

/* Same node is always .gb-ad-banner.gb-ad-slot in live + preview — keep fixed height */
.gb-ad-banner.gb-ad-slot {
  height: var(--gb-ad-slot-height-desktop);
  min-height: var(--gb-ad-slot-height-desktop);
  max-height: var(--gb-ad-slot-height-desktop);
}

.gb-ad-slot-skeleton {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.04),
    rgba(255, 255, 255, 0.08),
    rgba(255, 255, 255, 0.04)
  );
  background-size: 200% 100%;
  animation: gb-ad-slot-shimmer 1.1s ease-in-out infinite;
  pointer-events: none;
  z-index: 2;
}

.gb-ad-slot.is-media-ready .gb-ad-slot-skeleton,
.gb-ad-slot-skeleton[hidden] {
  display: none !important;
}

@keyframes gb-ad-slot-shimmer {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
  .main-filter-slot__panel {
    transition: none;
  }
  .gb-ad-slot-skeleton {
    animation: none;
  }
  .gb-ad-banner--media-video video {
    /* Static first frame / poster path — JS also pauses autoplay */
  }
}

.gb-ad-banner-link {
  display: flex;
  align-items: center;
  gap: var(--gb-ad-slot-gap);
  padding: var(--gb-ad-slot-padding-y) var(--gb-ad-slot-padding-x);
  text-decoration: none;
  color: inherit;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 0;
  max-height: 100%;
  overflow: hidden;
  flex-wrap: nowrap;
  position: relative;
}

.gb-ad-banner-image {
  /* Slider / presets set --gb-ad-image-height only; never the slot */
  height: clamp(
    var(--gb-ad-image-height-compact),
    var(--gb-ad-image-height),
    var(--gb-ad-image-max-height)
  );
  max-height: var(--gb-ad-image-max-height);
  width: auto;
  max-width: var(--gb-ad-image-max-width);
  object-fit: contain;
  flex: 0 0 auto;
  border-radius: 0.35rem;
}

.gb-ad-banner--fit-cover .gb-ad-banner-image,
.gb-ad-banner--fit-cover .gb-ad-banner-video {
  object-fit: cover;
}

.gb-ad-banner--fit-contain .gb-ad-banner-image,
.gb-ad-banner--fit-contain .gb-ad-banner-video {
  object-fit: contain;
}

.gb-ad-banner-media {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  max-width: 100%;
  max-height: 100%;
}

.gb-ad-banner-video {
  background: transparent;
}

/* Play/pause sits outside the <a> (no nested interactive), anchored to the slot. */
.gb-ad-banner--media-video {
  position: relative;
}

.gb-ad-media-control {
  position: absolute;
  right: 0.35rem;
  bottom: 0.35rem;
  z-index: 3;
  width: 1.5rem;
  height: 1.5rem;
  min-width: 1.5rem;
  min-height: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  background: rgba(0, 0, 0, 0.45);
  color: #fff;
  font-size: 0.65rem;
  cursor: pointer;
  opacity: 0.85;
  pointer-events: auto;
}

.gb-ad-media-control:hover,
.gb-ad-media-control:focus-visible {
  opacity: 1;
  outline: 2px solid rgba(var(--gb-primary-rgb, 90, 170, 255), 0.55);
  outline-offset: 1px;
}

/* Full-bleed banner creative fills the slot canvas */
.gb-ad-banner--full-bleed .gb-ad-banner-link {
  padding: 0;
  gap: 0;
  justify-content: center;
  background: transparent;
}

.gb-ad-banner--full-bleed .gb-ad-banner-image,
.gb-ad-banner--full-bleed .gb-ad-banner-video,
.gb-ad-banner--full-bleed .gb-ad-banner-media {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  border-radius: 0;
  flex: 1 1 auto;
}

.gb-ad-banner--full-bleed.gb-ad-banner--fit-contain .gb-ad-banner-image,
.gb-ad-banner--full-bleed.gb-ad-banner--fit-contain .gb-ad-banner-video {
  object-fit: contain;
}

.gb-ad-banner--full-bleed.gb-ad-banner--fit-cover .gb-ad-banner-image,
.gb-ad-banner--full-bleed.gb-ad-banner--fit-cover .gb-ad-banner-video {
  object-fit: cover;
}

.gb-ad-banner-text {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.875rem;
  color: var(--gb-text-primary, rgb(235, 240, 248));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gb-ad-banner-cta {
  flex-shrink: 0;
  font-size: 0.75rem;
  padding: 0.25rem 0.65rem;
  max-width: 45%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Text + CTA: vertically centered in the slot */
.gb-ad-banner--format-text_cta .gb-ad-banner-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: var(--gb-ad-slot-gap);
}

.gb-ad-banner--format-text_cta .gb-ad-banner-text {
  flex: 1 1 auto;
  min-width: 0;
}

.gb-ad-banner--format-text_cta .gb-ad-banner-cta {
  flex-shrink: 0;
}

/* Preview slot: keep truncated text readable within fixed height */
.ads-preview-shell--slot .gb-ad-banner-text,
[data-ads-preview-slot] .gb-ad-banner-text {
  flex: 1 1 0;
  min-width: 2.5rem;
}

.ads-preview-shell--slot .gb-ad-banner-cta,
[data-ads-preview-slot] .gb-ad-banner-cta {
  flex-shrink: 0;
  max-width: 40%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.main-filter-compact-icons {
  flex-shrink: 0;
}

/*
 * Original right "Reklama" strip (HEAD baseline) — absolute top/right/bottom on .main-filter.
 * Do not redesign via shared rail classes; left Filter mirrors these computed styles.
 */
.main-filter-create-ad-btn {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--main-filter-create-ad-width, 2.25rem);
  min-width: var(--main-filter-create-ad-width, 2.25rem);
  min-height: 2.75rem;
  flex-shrink: 0;
  margin: 0;
  padding: 0 0.35rem;
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.15;
  text-decoration: none;
  text-transform: none;
  text-align: center;
  white-space: nowrap;
  color: var(--gb-text-secondary, rgb(170, 180, 196));
  background: rgba(var(--gb-primary-rgb, 90, 170, 255), 0.04);
  border: none;
  border-left: 1px solid var(--gb-glass-border, rgba(255, 255, 255, 0.08));
  border-radius: 0;
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease;
  box-sizing: border-box;
  overflow: visible;
}

.main-filter-create-ad-btn:hover {
  color: var(--gb-primary, rgb(90, 170, 255));
  background: rgba(var(--gb-primary-rgb, 90, 170, 255), 0.1);
}

.main-filter-create-ad-btn:focus-visible {
  outline: 2px solid rgba(var(--gb-primary-rgb, 90, 170, 255), 0.45);
  outline-offset: -2px;
}

/* Left Filter = mirror of original Reklama (border on RIGHT instead of LEFT) */
.main-filter-slot-toggle {
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  bottom: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--main-filter-create-ad-width, 2.25rem);
  min-width: var(--main-filter-create-ad-width, 2.25rem);
  min-height: 2.75rem;
  flex-shrink: 0;
  margin: 0;
  padding: 0 0.35rem;
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.15;
  text-decoration: none;
  text-transform: none;
  text-align: center;
  white-space: nowrap;
  color: var(--gb-text-secondary, rgb(170, 180, 196));
  background: rgba(var(--gb-primary-rgb, 90, 170, 255), 0.04);
  border: none;
  border-right: 1px solid var(--gb-glass-border, rgba(255, 255, 255, 0.08));
  border-radius: 0;
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease;
  box-sizing: border-box;
  overflow: visible;
  appearance: none;
  -webkit-appearance: none;
}

.main-filter-slot-toggle:hover {
  color: var(--gb-primary, rgb(90, 170, 255));
  background: rgba(var(--gb-primary-rgb, 90, 170, 255), 0.1);
}

.main-filter-slot-toggle:focus-visible {
  outline: 2px solid rgba(var(--gb-primary-rgb, 90, 170, 255), 0.45);
  outline-offset: -2px;
}

@media (max-width: 1279px) {
  .main-filter--reklama > .menu-group:last-of-type {
    right: calc(var(--main-filter-create-ad-width) + 0.75rem);
  }

  .main-filter--has-ad.main-filter--reklama > .menu-group:first-of-type {
    left: calc(var(--main-filter-create-ad-width) + 0.75rem);
  }

  .main-filter--reklama .main-filter-create-ad-btn,
  .main-filter--reklama .main-filter-slot-toggle {
    top: 0;
    bottom: 0;
    height: auto;
  }

  /* Mobile/tablet: chat overlays content — do not shift main-filter / Reklama for the drawer. */
}

/* Desktop chat open (1280–1599): #content padding tightens to --gb-spacing-md but the
   filter bar still bleeds with clamp() margins; overflow-x:clip on #content then clips
   the right edge including the Reklama strip. Sync bleed to match chat-open padding. */
@media (min-width: 1280px) and (max-width: 1599px) {
  body.chat-panel-open .main-filter.gb-app-toolbar {
    margin-left: calc(-1 * var(--gb-spacing-md));
    margin-right: calc(-1 * var(--gb-spacing-md));
  }
}

@media (max-width: 640px) {
  .gb-ad-slot,
  .gb-ad-banner.gb-ad-slot,
  .gb-ad-slot--scale-preview,
  .gb-ad-slot--scale-compact,
  .gb-ad-slot--scale-large,
  .main-filter-slot,
  .main-filter-stage {
    --gb-ad-image-max-height: calc(
      var(--gb-ad-slot-height-mobile) - (var(--gb-ad-slot-padding-block) * 2)
    );
    height: var(--gb-ad-slot-height-mobile);
    min-height: var(--gb-ad-slot-height-mobile);
    max-height: var(--gb-ad-slot-height-mobile);
  }

  .main-filter-compact-label {
    display: none;
  }

  .gb-ad-banner-text {
    display: none;
  }
}

.gb-ad-banner--no-image .gb-ad-banner-image,
.gb-ad-banner-image.hidden {
  display: none !important;
}

.gb-ad-banner--no-image .gb-ad-banner-image-placeholder,
.gb-ad-banner--format-text_cta .gb-ad-banner-image,
.gb-ad-banner--format-text_cta .gb-ad-banner-image-placeholder,
.gb-ad-banner--format-text_cta .gb-ad-banner-media {
  display: none !important;
}

.gb-ad-banner--no-image .gb-ad-banner-text {
  flex: 1 1 auto;
}


/* —— Appearance modifiers —— */
.gb-ad-banner-text--strong {
  font-weight: 700;
  color: var(--gb-text-primary, rgb(235, 240, 248));
}

.gb-ad-banner-text--subtle {
  font-size: 0.8125rem;
  font-weight: 400;
  color: var(--gb-text-secondary, rgb(170, 180, 196));
}

.gb-ad-banner--image-compact {
  --gb-ad-image-height: var(--gb-ad-image-height-compact);
  --gb-ad-image-max-width: var(--gb-ad-image-max-width-compact);
}

.gb-ad-banner--image-default {
  --gb-ad-image-height: var(--gb-ad-image-height-default);
  --gb-ad-image-max-width: var(--gb-ad-image-max-width-default);
}

.gb-ad-banner--image-large {
  --gb-ad-image-height: var(--gb-ad-image-height-large);
  --gb-ad-image-max-width: var(--gb-ad-image-max-width-large);
}

.gb-ad-banner--image-custom {
  --gb-ad-image-height: var(--gb-ad-custom-image-height, var(--gb-ad-image-height-default));
  --gb-ad-image-max-width: min(12rem, 100%);
}

.gb-ad-banner--format-banner .gb-ad-banner-text,
.gb-ad-banner--format-banner .gb-ad-banner-cta {
  display: none !important;
}

.gb-ad-banner--format-banner .gb-ad-banner-link {
  cursor: pointer;
  width: 100%;
  justify-content: center;
}

.gb-ad-banner--format-banner:focus-within .gb-ad-banner-link,
.gb-ad-banner--format-banner .gb-ad-banner-link:hover {
  outline: 2px solid rgba(var(--gb-primary-rgb, 90, 170, 255), 0.35);
  outline-offset: 1px;
  opacity: 0.96;
}

.gb-ad-banner--format-banner .gb-ad-banner-link:focus-visible {
  outline: 2px solid rgba(var(--gb-primary-rgb, 90, 170, 255), 0.55);
  outline-offset: 2px;
}

.gb-ad-banner-image-placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  height: clamp(
    var(--gb-ad-image-height-compact),
    var(--gb-ad-image-height),
    var(--gb-ad-image-max-height)
  );
  max-height: var(--gb-ad-image-max-height);
  max-width: var(--gb-ad-image-max-width);
  min-width: 3.5rem;
  padding: 0 0.4rem;
  flex: 0 0 auto;
  border-radius: 0.35rem;
  border: 1px dashed rgba(var(--gb-primary-rgb, 110, 181, 255), 0.4);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gb-text-muted, rgb(150, 160, 175));
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
}

.gb-ad-banner-image-placeholder[hidden],
.gb-ad-banner-image-placeholder.hidden {
  display: none !important;
}

.gb-ad-banner-text.is-placeholder,
.gb-ad-banner-cta.is-placeholder {
  opacity: 0.55;
}

.gb-ad-banner .gb-ad-banner-cta.button-style {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  padding: 0.25rem 0.65rem;
  border-radius: var(--gb-radius-sm, 0.5rem);
  border: 1px solid rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.35);
  background: rgb(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)));
  color: var(--gb-ad-cta-text-color, var(--colorTextPermanent, #fff));
  transition: background-color 0.15s ease, border-color 0.15s ease, filter 0.15s ease, color 0.15s ease;
}

.gb-ad-banner .gb-ad-banner-cta.button-style:hover,
.gb-ad-banner .gb-ad-banner-cta.button-style:focus-visible {
  background: var(--gb-ad-cta-hover-bg, rgb(var(--gb-ad-accent-rgb, var(--gb-primary-rgb))));
  filter: var(--gb-ad-cta-hover-filter, brightness(1.08));
  border-color: var(--gb-ad-cta-hover-border, rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.55));
  color: var(--gb-ad-cta-hover-text-color, var(--gb-ad-cta-text-color, var(--colorTextPermanent, #fff)));
}

.gb-ad-banner-cta--outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  padding: 0.25rem 0.65rem;
  border-radius: var(--gb-radius-sm, 0.5rem);
  border: 1px solid rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.45);
  background: transparent;
  color: var(--gb-ad-cta-text-color, rgb(var(--gb-ad-accent-rgb, var(--gb-primary-rgb))));
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
}

.gb-ad-banner-cta--outline:hover {
  border-color: var(--gb-ad-cta-hover-border, rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.75));
  background: var(--gb-ad-cta-hover-bg, rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.1));
  color: var(--gb-ad-cta-hover-text-color, var(--gb-ad-cta-text-color, var(--gb-text-primary)));
}

.gb-ad-banner-cta--solid {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  padding: 0.25rem 0.65rem;
  border-radius: var(--gb-radius-sm, 0.5rem);
  border: 1px solid rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.35);
  background: rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.18);
  color: var(--gb-ad-cta-text-color, var(--gb-text-primary));
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.gb-ad-banner-cta--solid:hover {
  background: var(--gb-ad-cta-hover-bg, rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.3));
  border-color: var(--gb-ad-cta-hover-border, rgba(var(--gb-ad-accent-rgb, var(--gb-primary-rgb)), 0.55));
  color: var(--gb-ad-cta-hover-text-color, var(--gb-ad-cta-text-color, var(--gb-text-primary)));
}

.gb-ad-banner .gb-ad-banner-cta.gb-ad-banner-cta--text-strong {
  font-weight: 800;
  font-size: 0.8125rem;
  letter-spacing: 0.02em;
}

.gb-ad-banner .gb-ad-banner-cta.gb-ad-banner-cta--text-subtle {
  font-weight: 500;
  font-size: 0.6875rem;
  letter-spacing: 0.01em;
}

.gb-ad-banner .gb-ad-banner-cta.button-style.gb-ad-banner-cta--text-subtle {
  opacity: 0.94;
}

.gb-ad-banner .gb-ad-banner-cta.gb-ad-banner-cta--outline.gb-ad-banner-cta--text-subtle,
.gb-ad-banner .gb-ad-banner-cta.gb-ad-banner-cta--solid.gb-ad-banner-cta--text-subtle {
  color: var(--gb-ad-cta-text-color, var(--gb-text-secondary, rgb(170, 180, 196)));
}
