.rm-static-campaign-host {
  width: 100%;
}

html.page-static-campaign-host body,
body.page-template-page-static-campaign-host {
  margin: 0 !important;
}

.page-template-page-static-campaign-host .header__logos {
  display: flex;
  align-items: center;
}

@media (min-width: 1024px) {
  .page-template-page-static-campaign-host a.logo.logo-fixed img {
    height: 74px !important;
    margin-left: -10px;
  }

  .page-template-page-static-campaign-host body header .header__logos .logo-small,
  body.page-template-page-static-campaign-host header .header__logos .logo-small {
    margin-left: -20px;
  }
}

/* object-fit/object-position only work predictably when the image has a box to fit into. */
body.page-template-page-static-campaign-host :is(header, footer, .ontvang-analyse) img[style*="object-fit"],
body.page-template-page-static-campaign-host :is(header, footer, .ontvang-analyse) img[style*="object-position"],
body.page-template-page-static-campaign-host :is(.header__logos .logo, .header__logos .logo-small, .cloud-top, .cont-sec-bottom, .footer-logo-container, .ranking-footer-bottom, .footer-bottom-emerce, .footer-google-partner) > img {
  display: block;
}

body.page-template-page-static-campaign-host :is(.cloud-top, .cont-sec-bottom) > img {
  width: 100%;
  height: 100%;
}

@media (min-width: 1001px) {
  .page-template-page-static-campaign-host a.logo.logo-fixed {
    width: 220px;
    max-width: 220px;
    flex: 0 0 220px;
  }
}

.page-template-page-static-campaign-host img.skewy.skewy-fixed {
  width: 100%;
}

.page-template-page-static-campaign-host .main-navigation ul,
.page-template-page-static-campaign-host .main-navigation li,
.page-template-page-static-campaign-host #primary-menu,
.page-template-page-static-campaign-host #primary-menu > li {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

@media (min-width: 1001px) {
  .page-template-page-static-campaign-host #primary-menu {
    display: flex;
    align-items: center;
  }

  .page-template-page-static-campaign-host #primary-menu > li {
    padding: 12px;
  }
}

.page-template-page-static-campaign-host #primary-menu > li::before,
.page-template-page-static-campaign-host .main-navigation li::before {
  content: none;
  display: none;
}

.rm-static-campaign-host__shell {
  width: 100%;
}

.rm-static-campaign-body {
  all: revert;
  display: block;
  width: 100%;
  position: relative;
  isolation: isolate;
}

.rm-static-campaign-body,
.rm-static-campaign-body *,
.rm-static-campaign-body *::before,
.rm-static-campaign-body *::after {
  box-sizing: border-box;
}

.rm-static-campaign-body :where(img, picture, video, canvas, svg, iframe) {
  max-width: 100%;
}

.rm-static-campaign-body :where(img, picture, video, canvas) {
  height: auto;
}

.rm-static-campaign-body :where(button, input, select, textarea) {
  font: inherit;
  color: inherit;
}

.rm-static-campaign-body :where(table) {
  border-collapse: collapse;
  border-spacing: 0;
}

.rm-static-campaign-body .cloud-top > img {
  object-fit: contain;
  object-position: top;
}

.rm-static-campaign-body .ontvang-analyse .cont-sec-bottom > img {
  object-fit: contain;
  object-position: bottom;
}

.rm-static-campaign-body #rm-static-header-shell,
.rm-static-campaign-body #rm-static-footer-shell,
.rm-static-campaign-body #scroll-progress,
.rm-static-campaign-body > nav,
.rm-static-campaign-body > footer {
  display: none !important;
}

/* Hide the React app's own header and footer — WP header/footer are used instead */
.rm-static-campaign-body header,
.rm-static-campaign-body footer {
  display: none !important;
}

/* Hide footer team photo and torn-paper section on campaign pages */
section.ontvang-analyse {
  display: none !important;
}

.rm-static-campaign-host__notice {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 48px 20px 72px;
}

/*
 * Fix: WordPress theme has non-layered `button {}` CSS that wins over Tailwind's
 * `@layer utilities` rules (non-layered always beats @layer in CSS cascade).
 * These rules use higher specificity to restore the Tailwind utility values
 * that the WP theme overrides — specifically `border-radius`, `padding`, and `border`.
 */

/* Remove WP theme's gray border + square corners from ALL buttons in campaign pages */
.rm-static-campaign-body button {
  border: none;
  cursor: pointer;
}

/* Restore Tailwind border-radius utilities (.rounded-full etc.) */
.rm-static-campaign-body .rounded-full {
  border-radius: 9999px;
}

.rm-static-campaign-body .rounded-xl {
  border-radius: 0.75rem;
}

/* Restore Tailwind vertical padding utilities (overridden by WP's button padding) */
.rm-static-campaign-body .py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.rm-static-campaign-body .py-3\.5 {
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

/* Restore Tailwind horizontal padding utilities */
.rm-static-campaign-body .px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
