:root {
  --text: #ffc882;
  --text-secondary: #ffc882;
  --muted: #ffc882;
  --structured-header-gradient: radial-gradient(circle at 50% 50%, #661600 50%, #661600 100%);
}

thead th,
.list-card__label,
.step-list li::before,
.step-list__text {
  background: var(--structured-header-gradient) !important;
  border-color: #ffc8824d !important;
}

.step-list li::before {
  color: #fff !important;
}

thead th,
.list-card__label {
  color: #ffc882 !important;
}

.table-scroll {
  background: transparent !important;
}

/* Keep the icon and the two-line label as one compact, centered group. */
.app-download-button__text,
.app-promo-banner .app-download-button__text,
.app-platform-panel .app-download-button__text {
  flex: 0 1 auto !important;
  width: auto !important;
  padding-inline: 4px;
}

.content-section:not(.image-copy-section) {
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160099 100%),
    linear-gradient(#000000e6, #000000e6);
}

.image-copy-section__copy {
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160042 100%),
    #000000bd;
}

.main-content .image-copy-section:not(#anbieter)::after {
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160099 100%),
    linear-gradient(90deg, #000000e6 0 100%);
}

.list-media-block .step-list li::before,
.list-media-block .step-list__text {
  background:
    radial-gradient(circle at 50% 50%, #ffc88200 0%, #ffc88299 100%),
    linear-gradient(#000000e6, #000000e6);
}

.list-media-block {
  background:
    radial-gradient(circle at 50% 50%, #ffc88200 0%, #ffc88299 100%),
    linear-gradient(#000000e6, #000000e6) !important;
  border-color: #ffc8824d !important;
  box-shadow: 0 0 30px #ffc8824d !important;
}

.list-media-block .step-list li::before {
  color: #fff;
}

.review-card--hidden {
  display: none;
}

.bonus-card,
.info-card,
.list-card,
.review-card,
.subsection-panel,
.promotion-art-card.info-card,
.promotion-art-card__copy,
.bonus-option-card,
.bonus-option-card:nth-child(2),
.bonus-terms-list > li,
.limit-list li,
.app-platform-panel,
.app-feature-card,
.app-feature-card:nth-child(2),
.app-feature-card:nth-child(3),
.app-benefit-card,
.app-comparison-card,
.responsible-info-card,
.self-exclusion-panel,
.support-link-list li,
.player-control-list li,
.responsible-principles li {
  background:
    radial-gradient(circle at 50% 50%, #ffc88200 0%, #ffc88299 100%),
    #000000e6 !important;
}

.list-card__label,
.review-card__score {
  color: #ffc882 !important;
  background:
    radial-gradient(circle at 50% 50%, #ffc88200 0%, #ffc88299 100%),
    #000000e6 !important;
}

.list-card__label {
  background: var(--structured-header-gradient) !important;
}

.app-platform-panel {
  background: transparent !important;
}

.main-content .list-media-block .step-list li::before,
.main-content .list-media-block .step-list__text {
  background: var(--structured-header-gradient) !important;
  border-color: #ffc8824d !important;
}

.brand-menu__badge {
  color: var(--dark) !important;
  background: linear-gradient(180deg, var(--gold), var(--peach)) !important;
}

.bonus-card h3,
.info-card h3,
.list-card h3,
.review-card h3,
.subsection-panel h3,
.promotion-art-card h3,
.bonus-option-card h3,
.app-platform-panel h3,
.app-feature-card h3,
.app-benefit-card h3,
.app-comparison-card h3,
.responsible-info-card h3,
.self-exclusion-panel h3,
.support-link-list strong,
.player-control-list strong,
.responsible-principles strong {
  color: #ff9c1a !important;
}

.bonus-card p,
.bonus-card li,
.info-card p,
.info-card li,
.info-card dd,
.list-card li,
.review-card p,
.review-card blockquote,
.subsection-panel p,
.subsection-panel li,
.promotion-art-card p,
.bonus-option-card p,
.bonus-option-card li,
.app-platform-panel p,
.app-platform-panel li,
.app-feature-card p,
.app-feature-card li,
.app-benefit-card p,
.app-benefit-card li,
.app-comparison-card p,
.app-comparison-card li,
.responsible-info-card p,
.responsible-info-card li,
.self-exclusion-panel p,
.self-exclusion-panel li,
.support-link-list small,
.player-control-list li > span,
.responsible-principles li > span,
.list-media-block p,
.list-media-block li,
.list-media-block .step-list__text {
  color: #fff !important;
}

.main-content p,
.main-content li,
.main-content td,
.main-content dd,
.technical-page p,
.technical-page li,
.site-footer__legal-copy,
.site-footer__navigation {
  color: #ffc882;
}

.main-content .promotion-banner__title {
  color: #fff !important;
}

.site-footer__payment-card {
  background: #fff !important;
}

/* Navigation colors follow the approved header, sidebar, and footer references. */
.desktop-nav__link,
.mobile-primary-nav > a {
  color: #94897a;
}

.desktop-nav__link.is-active,
.desktop-nav__link:hover,
.mobile-primary-nav > a.is-active,
.mobile-primary-nav > a:hover {
  color: #fffaf3;
}

.brand-menu__item,
.brand-menu__item:hover {
  color: #d4c5b1;
}

.brand-menu__application strong {
  color: #fffaf3;
}

/* The Bonusy i Promocje artwork should sit directly in the section. */
#boni-und-aktionen .rtp-strip-scroll {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 719px) {
  #boni-und-aktionen .rtp-strip-scroll {
    overflow-x: hidden;
  }

  #boni-und-aktionen .rtp-strip-image {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: auto;
    object-fit: contain;
  }
}

/* Figma content-block composition (nodes 1:411, 1:421, 1:575 and 1:691).
   The site keeps its own typography; only layout, surfaces and colour treatment
   are taken from the reference. */
.content-section {
  border-color: #ffc8824d;
  border-radius: 4px;
}

.content-section > h2 {
  padding: 12px 20px;
  margin-bottom: 20px;
  color: #ffc882;
  background: var(--structured-header-gradient);
  border-radius: 4px;
}

.content-section > h2::after {
  display: none;
}

/* Standard editorial block: copy and image share the same central axis. */
.main-content .image-copy-section:not(#anbieter) {
  min-height: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas:
    "title media"
    "copy media";
  align-items: stretch;
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160099 100%),
    linear-gradient(#000000e6, #000000e6);
}

.main-content .image-copy-section:not(#anbieter)::after {
  display: none;
}

.main-content .image-copy-section:not(#anbieter) > h2 {
  grid-area: title;
  width: auto;
  margin: 0;
  padding: 12px 20px;
  border-radius: 0;
  background: var(--structured-header-gradient);
}

.main-content .image-copy-section:not(#anbieter) > .image-copy-section__copy {
  grid-area: copy;
  width: 100%;
  padding: 20px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.main-content .image-copy-section:not(#anbieter) > .image-copy-section__image {
  grid-area: media;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}

.main-content .image-copy-section:not(#anbieter) > .image-copy-section__overlay {
  display: none;
}

/* Alternate only the second block in consecutive image/copy runs. */
.main-content .image-copy-section#turniere:not(#anbieter),
.main-content .image-copy-section:where(#vip-aufstieg):not(#anbieter),
.main-content .image-copy-section#verantwortungsvolles-spielen:not(#anbieter),
.main-content .image-copy-section#warum-aktionen-lohnen:not(#anbieter),
.main-content .image-copy-section#verantwortungsvoll-spielen-boni:not(#anbieter) {
  grid-template-areas:
    "media title"
    "media copy";
}

/* Tables: one full-width row with the reference header and quiet separators. */
.table-scroll {
  padding: 0 12px;
  border-color: #ffc8824d !important;
  border-radius: 4px;
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160042 100%),
    #000000bd !important;
}

.table-scroll table {
  backdrop-filter: blur(7.5px);
}

.table-scroll th,
.table-scroll td {
  padding: 20px 12px;
  border-bottom-color: #ffc88233;
}

.table-scroll thead th {
  color: #b52701 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none;
}

.table-scroll thead th:first-child,
.table-scroll thead th:last-child {
  border-radius: 0;
}

.table-scroll thead tr {
  border-bottom: 1px solid #ffc88233;
}

/* Numbered-list block: a single purple panel with ruled rows and 50/50 media. */
.main-content .list-media-block {
  gap: 20px;
  padding: 16px;
  background:
    radial-gradient(circle at 50% 50%, #66160000 0, #66160099 100%),
    linear-gradient(#000000e6, #000000e6) !important;
  border-color: #ffc8824d !important;
  border-radius: 4px;
  box-shadow: 0 0 15px #ffc8824d !important;
}

.main-content .list-media-block .step-list {
  gap: 12px;
}

.main-content .list-media-block .step-list li {
  min-height: 0;
  padding: 0 0 12px;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  border: 0;
  border-bottom: 1px solid #ffc8824d;
  border-radius: 0;
}

.main-content .list-media-block .step-list li::before,
.main-content .list-media-block .step-list__text {
  min-height: 0;
  padding: 0;
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0;
  backdrop-filter: none;
}

.main-content .list-media-block .step-list li::before {
  width: auto;
  height: auto;
  font: inherit;
  font-weight: 700;
}

.main-content .list-media-block__media,
.main-content .list-media-block__media img {
  border-radius: 4px;
}

/* Full-width editorial media remains between the surrounding paragraphs. */
.lobby-map-scroll,
.rtp-strip-scroll,
.boni-event-art-frame {
  padding: 0;
  border-color: #ffc8824d;
  border-radius: 4px;
  background: #000000e6;
}

.lobby-map-image,
.rtp-strip-image,
.boni-event-art__item {
  border-radius: 4px;
}

@media (max-width: 900px) {
  .main-content .image-copy-section:not(#anbieter),
  .main-content .image-copy-section#turniere:not(#anbieter),
  .main-content .image-copy-section#verantwortungsvolles-spielen:not(#anbieter),
  .main-content .image-copy-section#warum-aktionen-lohnen:not(#anbieter),
  .main-content .image-copy-section#verantwortungsvoll-spielen-boni:not(#anbieter) {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    grid-template-areas:
      "title"
      "copy"
      "media";
  }

  .main-content .image-copy-section:not(#anbieter) > .image-copy-section__image {
    min-height: 0;
    /* Resolve the media row from its width, including after orientation changes.
       A percentage height creates a cycle with the auto-sized grid row. */
    height: auto !important;
    aspect-ratio: 16 / 9;
    align-self: start;
  }
}

@media (max-width: 719px) {
  .content-section,
  .image-copy-section,
  .promotion-banner {
    border-radius: 4px;
  }

  .main-content .image-copy-section:not(#anbieter) {
    padding-top: 0;
    background:
      radial-gradient(circle at 50% 50%, #66160000 0, #66160099 100%),
      linear-gradient(#000000e6, #000000e6);
  }

  .main-content .image-copy-section:not(#anbieter) > .image-copy-section__image {
    position: relative !important;
    height: auto !important;
  }
}

.brand-menu__application p {
  color: #d4c5b1;
}

.section-links a {
  color: #94897a;
}

.section-links a:hover {
  color: #d4c5b1;
}

.section-links a.is-active {
  color: #fffaf3;
}

.site-footer__navigation,
.site-footer__navigation ul,
.site-footer__legal-copy {
  color: #94897a;
}

.site-footer__navigation a:hover {
  color: #d4c5b1;
}

.site-footer__copyright {
  color: #fffaf3;
}

/* Bonus cards follow the Figma composition: raised artwork, copy, then CTA. */
.locale-bonus-grid,
.boni-welcome-grid,
.boni-reload-grid,
.boni-spins-grid {
  row-gap: 40px;
}

.promotion-art-card.info-card {
  display: flex;
  flex-direction: column;
  min-height: 490px;
  padding: 252px 12px 16px;
  overflow: visible;
}

.promotion-art-card__media {
  position: absolute;
  z-index: 2;
  top: -28px;
  left: 50%;
  width: min(calc(100% - 24px), 286px);
  min-height: 0;
  aspect-ratio: 1;
  border: 0;
  border-radius: 0;
  background: transparent;
  transform: translateX(-50%);
  overflow: visible;
  pointer-events: none;
}

.promotion-art-card__image {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 14px 18px #00000080);
}

.promotion-art-card__content,
.promotion-art-card--wide .promotion-art-card__content {
  flex: 1;
  width: 100%;
}

.promotion-art-card__copy,
.boni-promotion-card .promotion-art-card__copy {
  padding: 16px 8px 0;
  background: transparent !important;
}

.promotion-art-card h3,
.promotion-art-card p {
  text-align: center;
}

.promotion-art-card__copy > p {
  margin-bottom: var(--space-content) !important;
}

.promotion-art-card__action {
  margin-top: 0;
}

@media (max-width: 719px) {
  .promotion-art-card.info-card {
    min-height: 0;
    padding: 224px 12px 16px;
  }

  .promotion-art-card__media {
    top: -20px;
    width: min(calc(100% - 24px), 250px);
  }

  .promotion-art-card__copy,
  .boni-promotion-card .promotion-art-card__copy {
    padding: 12px 4px 0;
  }
}

/* Austria-wide presentation adjustments approved on 2026-08-28. */

/* Every H2 follows the same left-aligned editorial axis. */
h2 {
  text-align: left !important;
}

/* Ordinary content CTAs sit below the copy at its left edge.
   Bonus-card and promotional-banner actions intentionally keep their layout. */
.main-content .content-section__action {
  margin-left: 0;
  margin-right: 0;
}

.main-content .standard-split-section > .content-section__action {
  justify-self: start;
}

/* Editorial lists: top-left copy, gold text, and an 8px number/copy gap. */
.main-content :is(ol, ul) li,
.main-content :is(ol, ul) li > span {
  color: #ffc882 !important;
  text-align: left;
}

.main-content :is(.step-list, .feature-list, .bonus-terms-list, .limit-list) li,
.main-content :is(.step-list, .feature-list, .bonus-terms-list, .limit-list) li > span,
.main-content .list-card li {
  color: #ffc882 !important;
}

.main-content .step-list li,
.main-content .list-media-block .step-list li {
  align-items: start;
  gap: 8px;
}

.main-content .step-list li::before,
.main-content .list-media-block .step-list li::before {
  content: counter(steps) ".";
  color: #ffc882 !important;
  text-align: left;
}

.main-content .step-list__text,
.main-content .list-media-block .step-list__text {
  color: #ffc882 !important;
  text-align: left;
}

/* The App definition mirrors the preceding image/copy block on desktop. */
#ti-einai-pragmatika-i-efarmogi {
  min-height: 436px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas:
    "media title"
    "media copy"
    "media action";
  align-items: stretch;
}

#ti-einai-pragmatika-i-efarmogi > h2 {
  grid-area: title;
  margin: 0;
}

#ti-einai-pragmatika-i-efarmogi .app-definition-layout {
  display: contents;
}

#ti-einai-pragmatika-i-efarmogi .app-definition-copy {
  grid-area: copy;
  padding: 20px;
}

#ti-einai-pragmatika-i-efarmogi .app-definition-art {
  grid-area: media;
  min-height: 436px;
  border: 0;
}

#ti-einai-pragmatika-i-efarmogi > .content-section__action {
  grid-area: action;
  justify-self: start;
  margin: 0 20px 20px;
}

/* App explanatory copy uses the site's standard gold text colour. */
.app-content .app-platform-panel > p,
.app-content .app-benefit-card > p,
.app-content .app-benefits-reward-copy > p {
  color: #ffc882 !important;
}

@media (max-width: 900px) {
  #ti-einai-pragmatika-i-efarmogi {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto auto;
    grid-template-areas:
      "title"
      "copy"
      "action"
      "media";
  }

  #ti-einai-pragmatika-i-efarmogi .app-definition-art {
    min-height: 0;
    aspect-ratio: 16 / 9;
  }
}

/* One restrained radius for rectangular interface surfaces. */
:is(
  .button,
  .brand-menu__promo,
  .brand-menu__item,
  .brand-menu__badge,
  .brand-menu__application,
  .section-links a,
  .hero,
  .content-section,
  .content-section > h2,
  .table-scroll,
  .table-scroll thead th:first-child,
  .table-scroll thead th:last-child,
  .rating-card-layout__media,
  .bonus-card,
  .bonus-card__content,
  .info-card,
  .list-card,
  .list-card__label,
  .review-card,
  .review-card__score,
  .subsection-panel,
  .app-download-button,
  .app-promo-banner,
  .promotion-banner,
  .media-placeholder,
  .lobby-map-scroll,
  .lobby-map-image,
  .rtp-strip-scroll,
  .rtp-strip-image,
  .live-game-strip,
  .live-game-strip__grid li,
  .live-game-strip__image,
  .step-list li,
  .image-copy-section,
  .image-copy-section__copy,
  .registration-signup-card,
  .registration-signup-card__image,
  .provider-showcase,
  .provider-showcase__item,
  .bonus-terms-list > li,
  .limit-list li,
  .faq-list details,
  .promotion-art-card__copy,
  .app-platform-panel,
  .app-platform-title__icon,
  .app-definition-art,
  .app-install-media,
  .list-media-block,
  .list-media-block .step-list__text,
  .list-media-block__media,
  .app-benefits-reward-art,
  .license-feature,
  .self-exclusion-feature,
  .responsible-info-card,
  .self-exclusion-panel,
  .support-link-list li,
  .legal-age-warning,
  .verdict,
  .site-footer__payment-card,
  .menu-toggle,
  .mobile-primary-nav,
  .mobile-primary-nav > a,
  .mobile-section-nav,
  .boni-media-panel,
  .boni-event-art-frame,
  .boni-event-art__item,
  .boni-code-art
) {
  border-radius: 4px !important;
}

.step-list li::before {
  border-radius: 4px !important;
}

/* List boundaries remain square across all editorial list patterns. */
.site-shell .page-main .main-content :is(ol, ul),
.site-shell .page-main .main-content :is(ol, ul) > li,
.site-shell .page-main .main-content :is(ol, ul) > li::before,
.site-shell .page-main .main-content :is(ol, ul) > li > span {
  border-radius: 0 !important;
}

/* Table headings form one square row rather than separate outlined cells. */
.site-shell .page-main .table-scroll thead {
  border-bottom: 1px solid #ffc88233;
}

.site-shell .page-main .table-scroll thead tr {
  border-bottom: 1px solid #ffc88233;
  box-shadow: inset 0 -1px 0 #ffc88233;
}

.site-shell .page-main .table-scroll thead th,
.site-shell .page-main .table-scroll thead th:first-child,
.site-shell .page-main .table-scroll thead th:last-child {
  color: #b52701 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0;
  box-shadow: none;
}

/* Bonus Hero copy keeps the authored two-line split below the H1 on desktop. */
.boni-hero .hero__description,
.boni-hero .hero__description .hero__line {
  text-align: left;
}

@media (min-width: 1181px) {
  .boni-hero .hero__description .hero__line {
    display: block;
    white-space: nowrap;
  }
}

/* Match the compact, vertically centered media treatment used by Aktionscodes. */
.boni-claim-layout .boni-media-panel {
  min-height: 0;
  aspect-ratio: 2 / 1;
  align-self: center;
  padding: 12px;
  background: #141213 !important;
}

.boni-claim-layout .boni-media-panel img {
  inset: 12px !important;
  width: calc(100% - 24px) !important;
  height: calc(100% - 24px) !important;
}

/* Responsive polish requested for the Hungary locale. */
.app-download-button__text > span {
  display: block;
  inline-size: 19ch;
  max-inline-size: 100%;
  white-space: normal !important;
  text-wrap: balance;
}

.main-content .content-section > p:last-child,
.main-content .content-subsection > p:last-child,
.main-content .image-copy-section__copy > p:last-child,
.main-content .standard-split-section__copy > p:last-child,
.main-content .list-media-block__copy > p:last-child {
  margin-bottom: 0;
}

@media (min-width: 720px) and (max-width: 1180px) {
  /* Tablet Hero uses the wide composition with the character on the right. */
  .app-hero .hero__image--desktop {
    display: block;
    object-position: left top;
  }

  .app-hero .hero__image--mobile {
    display: none;
  }

  .main-content .list-media-block {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .main-content .app-install-row.list-media-block {
    grid-template-areas: "copy media";
  }

  .main-content .app-install-row.list-media-block.app-install-row--media-first {
    grid-template-areas: "media copy";
  }

  .main-content .list-media-block__media,
  .main-content .app-benefits-reward-art {
    min-height: 100%;
    aspect-ratio: auto;
  }
}

@media (max-width: 1180px) {
  .hero__image,
  .promotion-banner__image {
    filter: brightness(1.1) saturate(1.05);
  }

  .hero__overlay,
  .promotion-banner__overlay {
    background: linear-gradient(
      90deg,
      rgb(0 0 0 / 92%) 0%,
      rgb(0 0 0 / 84%) 38%,
      rgb(0 0 0 / 34%) 56%,
      rgb(0 0 0 / 0%) 74%
    );
  }

  .main-content .image-copy-section:not(#anbieter) > .image-copy-section__image,
  .main-content .list-media-block__media img,
  .main-content .rating-card-layout__media img,
  .main-content .standard-split-section__media img {
    object-position: center top !important;
  }

  .main-content .app-benefits-reward-art img {
    object-position: left top !important;
  }
}

@media (max-width: 719px) {
  .app-hero .hero__overlay {
    background: linear-gradient(
      180deg,
      rgb(0 0 0 / 90%) 0%,
      rgb(0 0 0 / 78%) 48%,
      rgb(0 0 0 / 24%) 70%,
      rgb(0 0 0 / 0%) 86%
    );
  }
}

/* Tablet-specific media corrections from the September 9 review. */
@media (min-width: 720px) and (max-width: 1180px) {
  /* Keep the complete app characters visible instead of cropping portrait art. */
  .main-content .app-benefits-reward-art {
    min-height: 0;
    aspect-ratio: 16 / 9;
    align-self: start;
    background: #141213;
  }

  .main-content .app-benefits-reward-art img {
    object-fit: contain !important;
    object-position: center top !important;
  }

  /* The app reward artwork is a compact row below its checklist on tablet. */
  .main-content .app-benefits-reward-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .main-content .app-benefits-reward-art {
    width: 100%;
    align-self: auto;
  }

  /* The app definition keeps its text left and fills the adjoining media panel. */
  .main-content .app-definition-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }

  .main-content .app-definition-art {
    min-height: 100%;
    aspect-ratio: auto;
    align-self: stretch;
    background: #141213;
  }

  .main-content .app-definition-art img {
    object-fit: cover !important;
    object-position: center top !important;
  }

  /* This registration checklist is the explicit exception to paired tablet media. */
  .main-content .boni-claim-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .main-content .boni-claim-layout .boni-media-panel {
    min-height: 0;
    aspect-ratio: 2 / 1;
    align-self: auto;
  }

  /* Preserve the desktop four-up event artwork row at tablet width. */
  .boni-event-art {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .boni-event-art__item {
    min-height: 0;
    aspect-ratio: 6 / 7;
  }
}

/* Only the text sets the height of side-by-side editorial sections. */
@media (min-width: 901px) {
  .main-content .image-copy-section:not(#anbieter) > .image-copy-section__image {
    position: absolute !important;
    inset: 0 !important;
  }
}

@media (min-width: 901px) and (max-width: 1180px) {
  .main-content .image-copy-section#egy-vilagos-szo-az-apk-fajlokrol > .image-copy-section__image {
    object-position: 16% top !important;
  }

  .main-content .image-copy-section#treuebelohnungen-vip > .image-copy-section__image {
    object-position: 32% top !important;
  }
}

/* Android stays copy-first; iOS mirrors it with media first on desktop. */
@media (min-width: 1181px) {
  .main-content .app-install-row.list-media-block {
    grid-template-areas: "copy media";
  }

  .main-content .app-install-row.list-media-block.app-install-row--media-first {
    grid-template-areas: "media copy";
  }
}

/* Stacked editorial blocks end with the action after the artwork. */
@media (max-width: 900px) {
  .main-content .image-copy-section:not(#anbieter):has(.content-section__action) {
    display: flex;
    flex-direction: column;
  }

  .main-content .image-copy-section:not(#anbieter):has(.content-section__action)
    > .image-copy-section__copy {
    display: contents;
  }

  .main-content .image-copy-section:not(#anbieter):has(.content-section__action)
    > .image-copy-section__copy > * {
    order: 1;
    width: auto;
    min-width: 0;
    max-width: calc(100% - 40px);
    overflow-wrap: anywhere;
    margin: 20px 20px 0;
  }

  .main-content .image-copy-section:not(#anbieter):has(.content-section__action)
    > .image-copy-section__image {
    order: 2;
    flex: none;
    margin-top: 20px;
  }

  .main-content .image-copy-section:not(#anbieter)
    > .image-copy-section__copy > .content-section__action {
    order: 3;
    align-self: flex-start;
    max-width: calc(100% - 40px);
    margin: 20px;
  }
}

@media (max-width: 719px) {
  .main-content .app-install-row.list-media-block {
    display: flex;
    flex-direction: column;
  }

  .main-content .app-install-row > .app-install-copy {
    display: contents;
  }

  .main-content .app-install-row > .app-install-media {
    order: 1;
    flex: none;
  }

  .main-content .app-install-row .app-install-copy > .app-download-button {
    order: 2;
    margin-bottom: 0;
  }
}
