:root {
  --gg-font-heading: "Funnel Display", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --gg-bg: #050505;
  --gg-surface: #0d0d0d;
  --gg-text: #f2f0ea;
  --gg-muted: rgba(242, 240, 234, 0.68);
  --gg-muted-soft: rgba(242, 240, 234, 0.46);
  --gg-border: rgba(242, 240, 234, 0.14);
  --gg-border-soft: rgba(242, 240, 234, 0.08);

  --gg-accent-red: #ff1100;
  --gg-accent-orange: #ff7700;
  --gg-accent-yellow: #ffdd00;
  --gg-accent-glow: rgba(255, 119, 0, 0.34);
  --gg-accent-glow-soft: rgba(255, 119, 0, 0.14);
}

html,
body,
.wp-site-blocks {
  background: var(--gg-bg) !important;
  color: var(--gg-text) !important;
}

body {
  color: var(--gg-text) !important;
}

main,
header,
footer,
.gg-page-shell,
.gg-main-content,
.gg-left-sidebar,
.gg-right-sidebar,
.gg-piece-sidebar,
.gg-site-header,
.gg-site-footer {
  background: transparent !important;
  color: var(--gg-text) !important;
}

a {
  color: var(--gg-text) !important;
}

a:hover {
  color: var(--gg-text) !important;
}

.gg-site-logo,
.gg-site-header .wp-block-site-title,
.gg-footer-logo,
.gg-site-footer .wp-block-site-title,
.gg-main-content .wp-block-post-title,
.gg-sidebar-title,
.gg-piece-kicker,
.gg-site-nav a,
.gg-footer-nav a,
.gg-bottom-nav-inner a,
.gg-piece-map-nav::before,
.gg-piece-map-tooltip {
  font-family: var(--gg-font-heading) !important;
}

.gg-page-shell {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 64px 0 64px !important;
  overflow: visible !important;
}

.gg-page-layout {
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) 220px !important;
  align-items: flex-start !important;
  gap: 48px !important;

  overflow: visible !important;
}

.gg-left-sidebar {
  width: 260px !important;
  max-width: 260px !important;
  min-width: 0 !important;

  position: static !important;
  align-self: flex-start !important;

  overflow: visible !important;
  color: var(--gg-text) !important;
}

.gg-right-sidebar {
  width: 220px !important;
  max-width: 220px !important;
  min-width: 0 !important;

  position: sticky !important;
  top: 112px !important;
  align-self: flex-start !important;
  height: fit-content !important;

  overflow: visible !important;
  z-index: 2;
  color: var(--gg-text) !important;
}

.gg-right-sidebar-inner {
  width: 220px !important;
  max-width: 220px !important;
  overflow: visible !important;
}

.gg-main-content {
  width: 100% !important;
  max-width: 700px !important;
  min-width: 0 !important;
  overflow: visible !important;
  color: var(--gg-text) !important;
}

.gg-main-content > .gg-genolie-intro {
  display: none !important;
}

.gg-main-content .wp-block-post-title {
  max-width: 700px !important;
  margin: -8px 0 32px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: clamp(42px, 5vw, 68px) !important;
  line-height: 0.98 !important;
  font-weight: 650 !important;
  letter-spacing: -0.035em !important;

  color: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content {
  width: 100% !important;
  max-width: 680px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content > * {
  max-width: 680px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.gg-main-content p,
.gg-main-content li,
.gg-main-content h1,
.gg-main-content h2,
.gg-main-content h3,
.gg-main-content h4,
.gg-main-content h5,
.gg-main-content h6 {
  color: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content p {
  margin-top: 0 !important;
  margin-bottom: 28px !important;

  font-size: 19px !important;
  font-weight: 400;
  line-height: 1.55 !important;
  letter-spacing: -0.01em !important;

  color: rgba(242, 240, 234, 0.88) !important;
}

.gg-main-content .wp-block-post-content p,
.gg-main-content .wp-block-post-content li {
  font-weight: 400 !important;
}

.gg-main-content .wp-block-post-content sup {
  font-size: 0.58em !important;
  line-height: 0 !important;
  vertical-align: super !important;
  opacity: 0.75;
}

.gg-piece-sidebar,
.gg-piece-sidebar-inner,
.gg-piece-heading-row,
.gg-sidebar-title,
.gg-piece-kicker {
  display: none !important;
}

.gg-back-to-puzzle {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  color: var(--gg-muted) !important;
}

.gg-back-to-puzzle a {
  color: rgba(242, 240, 234, 0.52) !important;
  text-decoration: none;
}

.gg-back-to-puzzle a:hover {
  color: var(--gg-accent-yellow) !important;
}

.gg-piece-map-nav {
  width: 220px !important;
  max-width: 220px !important;
  margin: 0 !important;
  position: relative !important;
}

.gg-piece-map-nav::before {
  content: attr(data-current-label);
  display: block;
  width: 100% !important;
  margin: 0 0 22px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  text-align: center;

  color: var(--gg-muted-soft);
}

.gg-piece-map-nav svg {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: visible !important;
}

.gg-piece-map-link {
  cursor: pointer;
  outline: none;
}

/* =========================
   PUZZLE MINI MAP GRADIENT
========================= */

.gg-map-piece {
  fill: rgba(255, 255, 255, 0.012);
  stroke: url("#gg-piece-map-outline-gradient");
  stroke-width: 1;
  vector-effect: non-scaling-stroke;

  transition:
    fill 180ms ease,
    stroke 180ms ease,
    opacity 180ms ease,
    filter 180ms ease;
}

.gg-piece-map-link.is-current .gg-map-piece {
  fill: url("#gg-piece-map-active-gradient") !important;
  stroke: url("#gg-piece-map-outline-gradient") !important;

  filter:
    drop-shadow(0 0 5px rgba(255, 221, 0, 0.18))
    drop-shadow(0 0 10px rgba(255, 119, 0, 0.14));
}

.gg-piece-map-link:hover .gg-map-piece,
.gg-piece-map-link:focus .gg-map-piece {
  fill: url("#gg-piece-map-active-gradient") !important;
  stroke: url("#gg-piece-map-outline-gradient") !important;

  filter:
    drop-shadow(0 0 7px rgba(255, 221, 0, 0.24))
    drop-shadow(0 0 14px rgba(255, 119, 0, 0.18));
}

.gg-piece-map-link.is-disabled {
  pointer-events: none;
  opacity: 0.22;
}

.gg-piece-map-tooltip {
  position: fixed !important;
  left: 0;
  top: 0;
  z-index: 9999;

  display: block !important;
  width: 165px !important;
  max-width: 165px !important;
  padding: 7px 9px;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.01em;

  color: #050505 !important;
  background: rgba(255, 221, 0, 0.94) !important;
  border: 1px solid rgba(255, 221, 0, 1) !important;

  box-shadow:
    0 0 12px rgba(255, 119, 0, 0.22),
    0 8px 22px rgba(0, 0, 0, 0.32);

  opacity: 0;
  visibility: hidden;
  transform: translate(14px, 14px);
  transition: opacity 140ms ease;

  pointer-events: none;

  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.gg-piece-map-tooltip.is-visible {
  opacity: 1;
  visibility: visible;
}

.gg-genolie-intro {
  position: relative !important;
  width: 225px !important;
  max-width: 225px !important;
  margin: 0 !important;
  padding: 20px 22px !important;

  border: 1px solid transparent !important;
  background:
    linear-gradient(rgba(5, 5, 5, 0.96), rgba(5, 5, 5, 0.96)) padding-box,
    linear-gradient(
      135deg,
      var(--gg-accent-red) 0%,
      var(--gg-accent-orange) 48%,
      var(--gg-accent-yellow) 100%
    ) border-box !important;

  box-shadow: 0 0 20px rgba(255, 119, 0, 0.05) !important;
  border-radius: 0 !important;
  color: var(--gg-text) !important;
}

.gg-genolie-intro::before,
.gg-genolie-intro::after {
  display: none !important;
}

.gg-genolie-intro p {
  max-width: 100% !important;
  margin: 0 !important;
  color: var(--gg-text) !important;
}

.gg-genolie-intro p:first-child {
  margin-bottom: 12px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 19px !important;
  line-height: 1.08 !important;
  font-weight: 650 !important;
  letter-spacing: -0.015em !important;

  color: rgba(255, 221, 0, 0.9) !important;
}

.gg-genolie-intro p:first-child::after {
  display: none !important;
}

.gg-genolie-intro p:last-child {
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: rgba(242, 240, 234, 0.76) !important;
}

.gg-bottom-nav {
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 56px 0 0 !important;
}

.gg-bottom-nav-inner {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 24px !important;

  width: 100% !important;
  max-width: 100% !important;
  padding-top: 28px !important;

  border-top: 1px solid rgba(242, 240, 234, 0.08) !important;
  position: relative !important;
}

.gg-bottom-nav-inner::before {
  content: "";
  position: absolute;
  top: -1px;
  left: auto;
  right: 0;

  width: 120px;
  height: 1px;

  background: linear-gradient(
    270deg,
    var(--gg-accent-red),
    var(--gg-accent-orange),
    rgba(255, 221, 0, 0)
  );

  box-shadow: 0 0 16px var(--gg-accent-glow-soft);
}

.gg-bottom-nav-inner p {
  margin: 0 !important;
}

.gg-bottom-nav-inner a {
  font-family: var(--gg-font-heading) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 550 !important;
  letter-spacing: -0.01em !important;
  color: rgba(242, 240, 234, 0.82) !important;
  text-decoration: none;
}

.gg-bottom-nav-inner a:hover {
  color: var(--gg-accent-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--gg-accent-orange) !important;
  text-underline-offset: 4px;
}

.gg-bottom-nav-prev {
  text-align: left;
}

.gg-bottom-nav-home {
  text-align: center;
}

.gg-bottom-nav-next {
  text-align: right;
}

.gg-site-header {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;

  border-bottom: 1px solid var(--gg-border-soft) !important;
  background: var(--gg-bg) !important;
  color: var(--gg-text) !important;
}

.gg-site-header-inner {
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) 220px !important;
  align-items: center !important;
  gap: 48px !important;
}

.gg-site-logo-image,
.gg-site-header .wp-block-site-logo,
.gg-site-logo,
.gg-site-header .wp-block-site-title {
  grid-column: 1 !important;
  justify-self: start !important;
  margin: 0 !important;
  line-height: 0 !important;
}

.gg-site-logo-image img,
.gg-site-header .wp-block-site-logo img {
  display: block !important;
  width: auto !important;
  max-width: 172px !important;
  height: auto !important;
  object-fit: contain !important;
}

.gg-site-header-inner > .wp-block-group:has(.gg-site-nav),
.gg-site-header-inner > .wp-block-group:has(.wp-block-navigation) {
  grid-column: 3 !important;
  justify-self: center !important;
  width: 220px !important;
  max-width: 220px !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 !important;
}

.gg-site-nav,
.gg-site-header .wp-block-navigation {
  width: 220px !important;
  max-width: 220px !important;
  margin: 0 !important;

  display: flex !important;
  justify-content: center !important;
}

.gg-site-nav .wp-block-navigation__container,
.gg-site-header .wp-block-navigation__container {
  justify-content: center !important;
  gap: 28px !important;
}

.gg-site-nav a,
.gg-site-header .wp-block-navigation a {
  font-size: 14px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  color: var(--gg-text) !important;
}

.gg-site-nav a:hover,
.gg-site-header .wp-block-navigation a:hover {
  color: var(--gg-accent-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--gg-accent-orange) !important;
  text-underline-offset: 4px;
}

@media (min-width: 1101px) {
  .gg-site-header .wp-block-navigation__responsive-container-open {
    display: none !important;
  }

  .gg-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;

    background: transparent !important;
    color: var(--gg-text) !important;
  }

  .gg-site-header .wp-block-navigation__responsive-container-content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

.wp-block-navigation__responsive-container.is-menu-open {
  background: var(--gg-bg) !important;
  color: var(--gg-text) !important;
}

.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg {
  fill: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content .wp-block-image,
.gg-main-content .wp-block-post-content figure.wp-block-image {
  margin-top: 44px !important;
  margin-bottom: 46px !important;
}

.gg-main-content .wp-block-post-content .wp-block-image img,
.gg-main-content .wp-block-post-content figure.wp-block-image img,
.gg-main-content .wp-block-post-content p img {
  display: block !important;
  max-width: 100% !important;
  height: auto !important;

  filter: grayscale(100%) contrast(1.22) brightness(0.72) saturate(0.55) sepia(0.08) !important;
  opacity: 0.88;

  box-shadow:
    0 0 0 1px rgba(255, 221, 0, 0.08),
    0 18px 42px rgba(0, 0, 0, 0.42);

  transition:
    filter 320ms ease,
    opacity 320ms ease,
    transform 320ms ease,
    box-shadow 320ms ease;
}

.gg-main-content .wp-block-post-content .wp-block-image:hover img,
.gg-main-content .wp-block-post-content figure.wp-block-image:hover img,
.gg-main-content .wp-block-post-content a:hover img,
.gg-main-content .wp-block-post-content p:hover img {
  filter: grayscale(0%) contrast(1.04) brightness(0.96) saturate(1.08) sepia(0) !important;
  opacity: 1;

  box-shadow:
    0 0 0 1px rgba(255, 221, 0, 0.18),
    0 0 24px rgba(255, 119, 0, 0.10),
    0 22px 48px rgba(0, 0, 0, 0.46);
}

.gg-main-content .wp-block-post-content a:focus img,
.gg-main-content .wp-block-post-content figure.wp-block-image:focus-within img {
  filter: grayscale(0%) contrast(1.04) brightness(0.96) saturate(1.08) sepia(0) !important;
  opacity: 1;
}

.gg-main-content .wp-block-post-content .wp-block-image figcaption,
.gg-main-content .wp-block-post-content figure.wp-block-image figcaption {
  margin-top: 10px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  color: rgba(242, 240, 234, 0.52) !important;
}

.gg-site-footer {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 56px 0 40px !important;

  border-top: 1px solid var(--gg-border-soft) !important;
  background: var(--gg-bg) !important;
  color: var(--gg-text) !important;
}

.gg-site-footer-inner {
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


.gg-footer-logo a,
.gg-site-footer .wp-block-site-title a {
  color: var(--gg-text) !important;
  text-decoration: none !important;
}

.gg-footer-description {
  max-width: 560px !important;
  margin: 0 0 24px !important;

  font-size: 14px !important;
  line-height: 1.55 !important;
  color: var(--gg-muted) !important;
  opacity: 1;
}

.gg-footer-nav {
  margin: 0 !important;
}

.gg-footer-nav .wp-block-navigation__container {
  gap: 24px !important;
}

.gg-footer-nav a {
  font-size: 14px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  color: var(--gg-text) !important;
}

.gg-footer-nav a:hover {
  color: var(--gg-accent-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--gg-accent-orange) !important;
  text-underline-offset: 4px;
}

::selection {
  background: rgba(255, 221, 0, 0.62);
  color: #050505;
}

::-moz-selection {
  background: rgba(255, 221, 0, 0.62);
  color: #050505;
}

@media (max-width: 1100px) {
  .gg-page-shell {
    padding: 40px 0 48px !important;
  }

  .gg-page-layout {
    width: min(100% - 28px, 720px) !important;
    max-width: 720px !important;

    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .gg-left-sidebar,
  .gg-right-sidebar,
  .gg-main-content {
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
  }

  .gg-left-sidebar {
    order: 1;
  }

  .gg-right-sidebar {
    order: 2;
  }

  .gg-main-content {
    order: 3;
  }

  .gg-right-sidebar-inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  .gg-piece-map-nav {
    width: 180px !important;
    max-width: 180px !important;
    margin: 0 !important;
  }

  .gg-piece-map-nav::before {
    margin-bottom: 14px !important;
    text-align: center;
  }

  .gg-piece-map-tooltip {
    width: 165px !important;
    max-width: 165px !important;
  }

  .gg-main-content .wp-block-post-title {
    max-width: 100% !important;
    font-size: clamp(38px, 12vw, 52px) !important;
    line-height: 1 !important;
    margin: 0 0 28px !important;
  }

  .gg-main-content .wp-block-post-content,
  .gg-main-content .wp-block-post-content > * {
    max-width: 100% !important;
  }

  .gg-main-content .wp-block-post-content p {
    font-size: 17px !important;
    line-height: 1.55 !important;
    margin-bottom: 24px !important;
  }

  .gg-genolie-intro {
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px !important;
  }

  .gg-genolie-intro p:first-child {
    font-size: 18px !important;
  }

  .gg-genolie-intro p:last-child {
    font-size: 15px !important;
  }

  .gg-bottom-nav {
    width: min(100% - 28px, 720px) !important;
    max-width: 720px !important;
    padding: 32px 0 56px !important;
  }

  .gg-bottom-nav-inner {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .gg-bottom-nav-inner::before {
    width: 88px;
  }

  .gg-bottom-nav-prev,
  .gg-bottom-nav-home,
  .gg-bottom-nav-next {
    text-align: left;
  }

  .gg-site-header {
    padding: 20px 0 !important;
  }

  .gg-site-header-inner {
    width: min(100% - 28px, 720px) !important;
    max-width: 720px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
  }

  header .wp-block-navigation,
  header .gg-site-nav,
  .wp-site-blocks > header .wp-block-navigation,
  .wp-site-blocks > header .gg-site-nav {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;

    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .gg-site-logo,
  .gg-site-header .wp-block-site-title {
    font-size: 14px !important;
  }

  .gg-site-logo-image img,
  .gg-site-header .wp-block-site-logo img {
    max-width: 150px !important;
    max-height: 48px !important;
  }

  .gg-site-nav .wp-block-navigation__container,
  .gg-site-header .wp-block-navigation__container {
    gap: 18px !important;
  }

  .gg-site-nav a,
  .gg-site-header .wp-block-navigation a {
    font-size: 13px !important;
  }

  .gg-site-footer {
    padding: 40px 0 32px !important;
  }

  .gg-site-footer-inner {
    width: min(100% - 28px, 720px) !important;
    max-width: 720px !important;
  }

  .gg-footer-logo,
  .gg-site-footer .wp-block-site-title {
    font-size: 14px !important;
  }

  .gg-footer-description {
    max-width: 100% !important;
    font-size: 13px !important;
  }

  .gg-footer-nav .wp-block-navigation__container {
    gap: 18px !important;
  }

  .gg-footer-nav a {
    font-size: 13px !important;
  }

  .gg-site-header-inner > .wp-block-group:has(.gg-site-nav),
  .gg-site-header-inner > .wp-block-group:has(.wp-block-navigation),
  .gg-site-nav,
  .gg-site-header .wp-block-navigation {
    width: auto !important;
    max-width: none !important;
    justify-self: auto !important;
  }
}

body:has(.gg-about-page) main {
  margin-top: 0 !important;
}

body:has(.gg-about-page) main > .wp-block-group {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body:has(.gg-about-page) .wp-block-post-title {
  display: none !important;
}

body:has(.gg-about-page) .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.gg-about-page {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 60px 0 80px !important;
  background: var(--gg-bg) !important;
  color: var(--gg-text) !important;
}

.gg-about-kicker {
  margin: 0 0 20px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 650 !important;
  letter-spacing: 0.11em !important;
  text-transform: uppercase;

  color: var(--gg-muted-soft) !important;
}

.gg-about-inner {
  width: min(760px, calc(100% - 64px)) !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  transform: translateX(34px);
}

.gg-about-content {
  max-width: 760px !important;
  margin: 0 0 60px !important;
}

.gg-about-content h1 {
  max-width: 760px !important;
  margin: 0 0 34px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: clamp(48px, 7vw, 86px) !important;
  font-weight: 650 !important;
  letter-spacing: -0.045em !important;

  color: var(--gg-text) !important;
}

.gg-about-content p {
  margin: 0 0 26px !important;

  font-size: 20px !important;
  line-height: 1.55 !important;
  letter-spacing: -0.012em !important;

  color: rgba(242, 240, 234, 0.84) !important;
}

.gg-about-orgs-title {
  margin: 0 auto 52px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 20px !important;
  line-height: 1.1 !important;
  font-weight: 650 !important;
  letter-spacing: -0.015em !important;
  text-align: center;

  color: var(--gg-accent-orange) !important;
}

.gg-about-orgs {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 54px 44px !important;

  width: 760px !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}

.gg-about-org {
  position: relative !important;
  flex: 0 0 210px !important;
  width: 210px !important;
  max-width: 210px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.gg-about-logo-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 96px !important;
  margin: 0 0 16px !important;
}

.gg-about-logo-box img {
  display: block !important;
  width: 180px !important;
  height: 66px !important;
  max-width: 180px !important;
  max-height: 66px !important;
  object-fit: contain !important;

}

.gg-about-org-name {
  margin: 0 0 5px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em !important;
  text-align: center;

  color: rgba(242, 240, 234, 0.78) !important;
}

.gg-about-org-country {
  margin: 0 !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  text-align: center;

  color: rgba(242, 240, 234, 0.42) !important;
}

@media (max-width: 781px) {
  body:has(.gg-about-page) main {
    margin-top: 0 !important;
  }

  body:has(.gg-about-page) main > .wp-block-group {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .gg-about-page {
    padding: 32px 0 72px !important;
  }

  .gg-about-inner {
    width: min(100% - 28px, 680px) !important;
    max-width: 680px !important;
    transform: none !important;
  }

  .gg-about-content {
    margin-bottom: 46px !important;
  }

  .gg-about-content h1 {
    font-size: clamp(42px, 13vw, 58px) !important;
    margin-bottom: 28px !important;
  }

  .gg-about-content p {
    font-size: 17px !important;
    line-height: 1.55 !important;
  }

  .gg-about-orgs-title {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 30px !important;
    font-size: 18px !important;
    text-align: center !important;
    color: var(--gg-accent-orange) !important;
  }

  .gg-about-orgs {
    width: 100% !important;
    max-width: 100% !important;

    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 34px 20px !important;
  }

  .gg-about-org {
    flex: 0 0 calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
  }

  .gg-about-logo-box {
    height: 74px !important;
    margin-bottom: 12px !important;
  }

  .gg-about-logo-box img {
    width: 130px !important;
    height: 50px !important;
    max-width: 130px !important;
    max-height: 50px !important;
  }

  .gg-about-org-name {
    font-size: 12px !important;
    line-height: 1.2 !important;
    margin-bottom: 4px !important;
  }

  .gg-about-org-country {
    font-size: 9.5px !important;
  }
}

@media (max-width: 781px) {
  .gg-page-shell {
    padding-bottom: 36px !important;
  }

  .gg-page-layout {
    gap: 20px !important;
  }

  .gg-left-sidebar {
    order: 1 !important;
  }

  .gg-main-content {
    order: 2 !important;
  }

  .gg-right-sidebar {
    position: fixed !important;
    left: auto !important;
    right: 14px !important;
    top: auto !important;
    bottom: 18px !important;
    z-index: 99999 !important;

    width: auto !important;
    max-width: none !important;
    height: auto !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;

    pointer-events: none !important;

    transition:
      opacity 180ms ease,
      visibility 180ms ease,
      transform 180ms ease;
  }

  .gg-right-sidebar-inner {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;

    display: block !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .gg-piece-map-nav {
    width: 136px !important;
    max-width: 136px !important;
    margin: 0 !important;
    padding-top: 6px !important;

    background: rgba(0, 0, 0, 0.94) !important;

    box-shadow:
      0 10px 28px rgba(0, 0, 0, 0.55),
      0 0 14px rgba(255, 119, 0, 0.06) !important;

    pointer-events: auto !important;
  }

  .gg-piece-map-nav::before {
    margin: 0 0 6px !important;

    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 650 !important;
    letter-spacing: 0.08em !important;
    text-align: center !important;
    text-transform: uppercase !important;

    color: rgba(242, 240, 234, 0.56) !important;
  }

  .gg-piece-map-nav svg {
    display: block !important;
    width: 116px !important;
    max-width: 116px !important;
    height: auto !important;
    margin: 0 auto !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding-bottom: 4px !important;
  }

  .gg-map-piece {
    stroke-width: 1.35 !important;
  }

.gg-piece-map-link.is-current .gg-map-piece {
  fill: url("#gg-piece-map-active-gradient") !important;
  stroke: url("#gg-piece-map-outline-gradient") !important;
}

.gg-piece-map-link:hover .gg-map-piece,
.gg-piece-map-link:focus .gg-map-piece {
  fill: url("#gg-piece-map-active-gradient") !important;
  stroke: url("#gg-piece-map-outline-gradient") !important;
}

  .gg-piece-map-tooltip {
    display: none !important;
  }

  body.gg-hide-mobile-puzzle-nav .gg-right-sidebar {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    pointer-events: none !important;
  }
}

@media (max-width: 781px) {
  .gg-genolie-intro p:first-child .gg-intro-mobile-break {
    display: none !important;
  }
}

@media (max-width: 781px) {
  .gg-site-header {
    padding: 0 !important;
  }

  .gg-site-header-inner {
    width: min(100% - 24px, 720px) !important;
    max-width: 720px !important;

    padding-top: 8px !important;
    padding-bottom: 8px !important;

    gap: 14px !important;
  }

  .gg-site-logo-image img,
  .gg-site-header .wp-block-site-logo img {
    max-width: 118px !important;
    max-height: 60px !important;
  }

  .gg-site-nav a,
  .gg-site-header .wp-block-navigation a {
    font-size: 12px !important;
  }

  .wp-block-navigation__responsive-container-open {
    width: 28px !important;
    height: 28px !important;
    padding: 0 !important;
  }

  .wp-block-navigation__responsive-container-open svg {
    width: 20px !important;
    height: 20px !important;
  }
}

@media (max-width: 781px) {
  .gg-bottom-nav {
    width: min(100% - 28px, 720px) !important;
    max-width: 720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 44px 0 28px !important;
  }

  .gg-bottom-nav-inner {
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 8px !important;

    width: 100% !important;
    max-width: 100% !important;
    padding-top: 22px !important;

    border-top: 1px solid rgba(242, 240, 234, 0.10) !important;
    position: relative !important;
    overflow: visible !important;
  }

  .gg-bottom-nav-inner::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;

    width: 92px;
    height: 1px;

    background: linear-gradient(
      90deg,
      var(--gg-accent-red),
      var(--gg-accent-orange),
      rgba(255, 221, 0, 0)
    );

    box-shadow: 0 0 16px rgba(255, 119, 0, 0.14);
  }

  .gg-bottom-nav-inner p {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  .gg-bottom-nav-inner p:empty,
  .gg-bottom-nav-inner p:not(:has(a)) {
    display: none !important;
  }

  .gg-bottom-nav-inner a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 0 8px !important;
    box-sizing: border-box !important;

    border: 1px solid rgba(255, 221, 0, 0.14) !important;
    background: rgba(255, 221, 0, 0.014) !important;

    font-family: var(--gg-font-heading) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    font-weight: 650 !important;
    letter-spacing: -0.01em !important;

    color: rgba(242, 240, 234, 0.84) !important;
    text-decoration: none !important;

    white-space: nowrap !important;
    overflow: hidden !important;
  }

  .gg-bottom-nav-prev a::before {
    content: "← Previous";
    font-size: 12px !important;
  }

  .gg-bottom-nav-home a::before {
    content: "Puzzle";
    font-size: 12px !important;
  }

  .gg-bottom-nav-next a::before {
    content: "Next →";
    font-size: 12px !important;
  }

  .gg-bottom-nav-inner a:hover,
  .gg-bottom-nav-inner a:focus {
    color: var(--gg-accent-yellow) !important;
    border-color: rgba(255, 221, 0, 0.34) !important;
    background: rgba(255, 221, 0, 0.04) !important;
  }
}

@media (max-width: 781px) {
  footer.wp-block-template-part,
  .wp-site-blocks > footer,
  .gg-site-footer {
    display: none !important;
  }
}

@media (max-width: 781px) {
  .gg-site-header .wp-block-navigation__responsive-container-open {
    display: none !important;
  }

  .gg-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: block !important;
    position: static !important;

    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
    background: transparent !important;
    color: var(--gg-text) !important;
  }

  .gg-site-header .wp-block-navigation__responsive-close,
  .gg-site-header .wp-block-navigation__responsive-dialog,
  .gg-site-header .wp-block-navigation__responsive-container-content {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .gg-site-header .wp-block-navigation__container {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
  }

  .gg-site-header .wp-block-navigation-item {
    margin: 0 !important;
  }

  .gg-site-header .wp-block-navigation a {
    display: inline-flex !important;
    align-items: center !important;

    font-size: 13px !important;
    line-height: 1 !important;
    text-decoration: none !important;

    color: var(--gg-text) !important;
  }

  .gg-site-header .wp-block-navigation a:hover {
    color: var(--gg-accent-yellow) !important;
    text-decoration: underline !important;
    text-decoration-color: var(--gg-accent-orange) !important;
    text-underline-offset: 4px;
  }
}

@media (max-width: 781px) {
  .gg-site-header .wp-block-navigation__responsive-container-open,
  .gg-site-header .wp-block-navigation__responsive-container-close {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .gg-site-header .wp-block-navigation__responsive-close {
    display: flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .gg-site-header .wp-block-navigation__responsive-dialog {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

html {
  scroll-behavior: smooth;
}

.gg-main-content .wp-block-post-content .gg-footnote-ref {
  display: inline-block !important;
  margin-left: 2px !important;

  font-size: 0.54rem !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  vertical-align: super !important;

  color: #F3D201 !important;
  text-decoration: none !important;
  opacity: 0.9;
}

.gg-main-content .wp-block-post-content .gg-footnote-ref:hover,
.gg-main-content .wp-block-post-content .gg-footnote-ref:focus {
  color: #F3D201 !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(243, 210, 1, 0.7) !important;
  text-underline-offset: 2px;
  opacity: 1;
}

.gg-main-content .wp-block-post-content mark {
  background-color: #F3D201 !important;
  color: #050505 !important;
  padding: 0 0.12em !important;
}

.gg-main-content .wp-block-post-content .gg-sources-separator,
.gg-main-content .wp-block-post-content hr.wp-block-separator.gg-sources-separator {
  display: none !important;
}

.gg-main-content .wp-block-post-content .gg-sources-title {
  margin: 58px 0 18px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 650 !important;
  letter-spacing: 0.11em !important;
  text-transform: uppercase;

  color: rgba(243, 210, 1, 0.78) !important;
}

.gg-main-content .wp-block-post-content .gg-source-item {
  margin-bottom: 11px !important;

  font-size: 12px !important;
  line-height: 1.45 !important;
  letter-spacing: -0.003em !important;

  color: rgba(242, 240, 234, 0.52) !important;
}

.gg-main-content .wp-block-post-content .gg-footnote-back {
  display: inline-block !important;
  margin-right: 6px !important;

  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 650 !important;

  color: rgba(243, 210, 1, 0.82) !important;
  text-decoration: none !important;
}

.gg-main-content .wp-block-post-content .gg-footnote-back:hover,
.gg-main-content .wp-block-post-content .gg-footnote-back:focus {
  color: #F3D201 !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(243, 210, 1, 0.7) !important;
  text-underline-offset: 2px;
}

.gg-main-content .wp-block-post-content .gg-source-item a:not(.gg-footnote-back) {
  color: rgba(242, 240, 234, 0.58) !important;
  text-decoration: none !important;
  overflow-wrap: anywhere !important;
}

.gg-main-content .wp-block-post-content .gg-source-item a:not(.gg-footnote-back):hover,
.gg-main-content .wp-block-post-content .gg-source-item a:not(.gg-footnote-back):focus {
  color: rgba(243, 210, 1, 0.9) !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(243, 210, 1, 0.45) !important;
  text-underline-offset: 3px;
}

.gg-main-content .wp-block-post-content .gg-source-item:has(.gg-footnote-back:target) {
  background: transparent !important;
  outline: none !important;
}

.gg-main-content .wp-block-post-content a[id^="_ednref"],
.gg-main-content .wp-block-post-content a[id^="_ftnref"] {
  color: #F3D201 !important;
  text-decoration: none !important;
}

@media (max-width: 781px) {
  .gg-main-content .wp-block-post-content .gg-footnote-ref {
    font-size: 0.52rem !important;
  }

  .gg-main-content .wp-block-post-content .gg-sources-title {
    margin-top: 46px !important;
    margin-bottom: 16px !important;
    font-size: 12px !important;
  }

  .gg-main-content .wp-block-post-content .gg-source-item {
    font-size: 11.5px !important;
    line-height: 1.45 !important;
    margin-bottom: 10px !important;
  }

  .gg-main-content .wp-block-post-content .gg-footnote-back {
    font-size: 10.5px !important;
  }
}

.gg-main-content .wp-block-post-content ol.wp-block-list,
.gg-main-content .wp-block-post-content ul.wp-block-list,
.gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes),
.gg-main-content .wp-block-post-content ul {
  max-width: 680px !important;
  margin: 8px 0 34px !important;
  padding-left: 0 !important;

  color: rgba(242, 240, 234, 0.88) !important;
}

.gg-main-content .wp-block-post-content ol.wp-block-list,
.gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes) {
  list-style: none !important;
  counter-reset: gg-article-list;
}

.gg-main-content .wp-block-post-content ol.wp-block-list > li,
.gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes) > li {
  counter-increment: gg-article-list;
  position: relative !important;

  margin: 0 0 18px !important;
  padding-left: 46px !important;

  font-size: 18px !important;
  line-height: 1.46 !important;
  letter-spacing: -0.012em !important;

  color: rgba(242, 240, 234, 0.9) !important;
}

.gg-main-content .wp-block-post-content ol.wp-block-list > li::before,
.gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes) > li::before {
  content: counter(gg-article-list) ".";

  position: absolute !important;
  left: 0 !important;
  top: 0.08em !important;

  width: 30px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 650 !important;
  text-align: right !important;

  color: #F3D201 !important;
}

.gg-main-content .wp-block-post-content ul.wp-block-list,
.gg-main-content .wp-block-post-content ul {
  list-style: none !important;
}

.gg-main-content .wp-block-post-content ul.wp-block-list > li,
.gg-main-content .wp-block-post-content ul > li {
  position: relative !important;

  margin: 0 0 16px !important;
  padding-left: 30px !important;

  font-size: 18px !important;
  line-height: 1.48 !important;
  letter-spacing: -0.012em !important;

  color: rgba(242, 240, 234, 0.9) !important;
}

.gg-main-content .wp-block-post-content ul.wp-block-list > li::before,
.gg-main-content .wp-block-post-content ul > li::before {
  content: "";

  position: absolute !important;
  left: 3px !important;
  top: 0.68em !important;

  width: 6px !important;
  height: 6px !important;

  background: #F3D201 !important;
  border-radius: 50% !important;
  box-shadow: 0 0 10px rgba(243, 210, 1, 0.18) !important;
}

.gg-main-content .wp-block-post-content li strong {
  color: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content li em {
  color: var(--gg-text) !important;
}

.gg-main-content .wp-block-post-content li:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 781px) {
  .gg-main-content .wp-block-post-content ol.wp-block-list,
  .gg-main-content .wp-block-post-content ul.wp-block-list,
  .gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes),
  .gg-main-content .wp-block-post-content ul {
    margin: 6px 0 28px !important;
  }

  .gg-main-content .wp-block-post-content ol.wp-block-list > li,
  .gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes) > li {
    padding-left: 38px !important;

    font-size: 16.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 15px !important;
  }

  .gg-main-content .wp-block-post-content ol.wp-block-list > li::before,
  .gg-main-content .wp-block-post-content ol:not(.wp-block-footnotes) > li::before {
    width: 25px !important;
    font-size: 14px !important;
    top: 0.12em !important;
  }

  .gg-main-content .wp-block-post-content ul.wp-block-list > li,
  .gg-main-content .wp-block-post-content ul > li {
    padding-left: 24px !important;

    font-size: 16.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 14px !important;
  }

  .gg-main-content .wp-block-post-content ul.wp-block-list > li::before,
  .gg-main-content .wp-block-post-content ul > li::before {
    left: 2px !important;
    width: 5px !important;
    height: 5px !important;
  }
}

.gg-main-content .wp-block-post-content .wp-block-video,
.gg-main-content .wp-block-post-content figure.wp-block-video {
  margin-top: 44px !important;
  margin-bottom: 46px !important;

  width: 100% !important;
  max-width: 680px !important;

  background: #000 !important;
}

.gg-main-content .wp-block-post-content .wp-block-video video,
.gg-main-content .wp-block-post-content figure.wp-block-video video {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;

  background: #000 !important;

  filter: grayscale(100%) contrast(1.22) brightness(0.72) saturate(0.55) sepia(0.08) !important;
  opacity: 0.88;

  box-shadow:
    0 0 0 1px rgba(255, 221, 0, 0.08),
    0 18px 42px rgba(0, 0, 0, 0.42);

  transition:
    filter 320ms ease,
    opacity 320ms ease,
    box-shadow 320ms ease;
}

.gg-main-content .wp-block-post-content .wp-block-video:hover video,
.gg-main-content .wp-block-post-content figure.wp-block-video:hover video,
.gg-main-content .wp-block-post-content .wp-block-video:focus-within video,
.gg-main-content .wp-block-post-content figure.wp-block-video:focus-within video {
  filter: grayscale(0%) contrast(1.04) brightness(0.96) saturate(1.08) sepia(0) !important;
  opacity: 1;

  box-shadow:
    0 0 0 1px rgba(255, 221, 0, 0.18),
    0 0 24px rgba(255, 119, 0, 0.10),
    0 22px 48px rgba(0, 0, 0, 0.46);
}

.gg-main-content .wp-block-post-content .wp-block-video figcaption,
.gg-main-content .wp-block-post-content figure.wp-block-video figcaption {
  margin-top: 10px !important;
  margin-bottom: 0 !important;

  font-size: 13px !important;
  line-height: 1.4 !important;
  letter-spacing: -0.004em !important;

  color: rgba(242, 240, 234, 0.52) !important;
}

.gg-main-content .wp-block-post-content .wp-block-video figcaption a,
.gg-main-content .wp-block-post-content figure.wp-block-video figcaption a {
  color: rgba(242, 240, 234, 0.76) !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(243, 210, 1, 0.36) !important;
  text-underline-offset: 3px;
}

.gg-main-content .wp-block-post-content .wp-block-video figcaption a:hover,
.gg-main-content .wp-block-post-content figure.wp-block-video figcaption a:hover {
  color: #F3D201 !important;
  text-decoration-color: #F3D201 !important;
}

@media (max-width: 781px) {
  .gg-main-content .wp-block-post-content .wp-block-video,
  .gg-main-content .wp-block-post-content figure.wp-block-video {
    margin-top: 34px !important;
    margin-bottom: 36px !important;
  }

  .gg-main-content .wp-block-post-content .wp-block-video figcaption,
  .gg-main-content .wp-block-post-content figure.wp-block-video figcaption {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }
}

.gg-main-content .wp-block-post-content figure.gg-genolie-image-frame,
.gg-main-content .wp-block-post-content .gg-genolie-image-frame.wp-block-image {
  position: relative !important;

  margin-top: 44px !important;
  margin-bottom: 46px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.gg-main-content .wp-block-post-content figure.gg-genolie-image-frame img,
.gg-main-content .wp-block-post-content .gg-genolie-image-frame.wp-block-image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;

  padding: 0 !important;
  border: 1px solid transparent !important;
  box-sizing: border-box !important;

  background:
    linear-gradient(rgba(5, 5, 5, 0.96), rgba(5, 5, 5, 0.96)) padding-box,
    linear-gradient(
      135deg,
      var(--gg-accent-red) 0%,
      var(--gg-accent-orange) 48%,
      var(--gg-accent-yellow) 100%
    ) border-box !important;

  filter: none !important;
  opacity: 1 !important;
  transform: none !important;

  box-shadow: 0 0 20px rgba(255, 119, 0, 0.06) !important;
  transition: none !important;
}

.gg-main-content .wp-block-post-content figure.gg-genolie-image-frame:hover img,
.gg-main-content .wp-block-post-content .gg-genolie-image-frame.wp-block-image:hover img {
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  box-shadow: 0 0 20px rgba(255, 119, 0, 0.06) !important;
}

.gg-main-content .wp-block-post-content figure.gg-genolie-image-frame figcaption,
.gg-main-content .wp-block-post-content .gg-genolie-image-frame.wp-block-image figcaption {
  margin: 10px 0 0 !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;
  box-shadow: none !important;

  font-size: 13px !important;
  line-height: 1.4 !important;
  color: rgba(242, 240, 234, 0.52) !important;
}

@media (max-width: 781px) {
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame) img,
  .gg-main-content .wp-block-post-content figure.wp-block-video video,
  .gg-main-content .wp-block-post-content .wp-block-embed iframe,
  .gg-main-content .wp-block-post-content video {
    transition:
      filter 420ms ease,
      opacity 420ms ease,
      transform 420ms ease,
      box-shadow 420ms ease !important;
  }

  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible img,
  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible video,
  .gg-main-content .wp-block-post-content .wp-block-embed.is-scroll-visible iframe,
  .gg-main-content .wp-block-post-content video.is-scroll-visible {
    filter: grayscale(0%) contrast(1.04) brightness(0.96) saturate(1.08) sepia(0) !important;
    opacity: 1 !important;
    transform: translateY(-2px) scale(1.01) !important;

    box-shadow:
      0 18px 44px rgba(0, 0, 0, 0.36),
      0 0 22px rgba(255, 119, 0, 0.09) !important;
  }

  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame):not(.is-scroll-visible):hover img,
  .gg-main-content .wp-block-post-content figure.wp-block-video:not(.is-scroll-visible):hover video,
  .gg-main-content .wp-block-post-content .wp-block-embed:not(.is-scroll-visible):hover iframe,
  .gg-main-content .wp-block-post-content video:not(.is-scroll-visible):hover {
    filter: grayscale(100%) contrast(1.22) brightness(0.72) saturate(0.55) sepia(0.08) !important;
    transform: none !important;
  }
}

.gg-main-content .wp-block-post-content .gg-next-piece-highlight {
  margin-top: 34px !important;
}

.gg-main-content .wp-block-post-content .gg-next-piece-highlight-link {
  display: inline-block !important;

  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.gg-main-content .wp-block-post-content .gg-next-piece-highlight-link mark {
  cursor: pointer !important;

  transition:
    background-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease !important;
}

.gg-main-content .wp-block-post-content .gg-next-piece-highlight-link:hover mark,
.gg-main-content .wp-block-post-content .gg-next-piece-highlight-link:focus-visible mark {
  background-color: #ffdd00 !important;
  color: #050505 !important;

  box-shadow: 0 0 18px rgba(255, 221, 0, 0.18) !important;
}



body:has(.gg-about-page) .gg-about-inner {
  width: min(860px, calc(100% - 64px)) !important;
  max-width: 860px !important;
  transform: none !important;
}

body:has(.gg-about-page) .gg-about-content {
  width: 100% !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
	text-align: center !important;
}

body:has(.gg-about-page) .gg-about-orgs-title {
  width: 100% !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:has(.gg-about-page) .gg-about-orgs {
  width: 100% !important;
  max-width: 760px !important;

  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-start !important;

  gap: 58px 34px !important;

  margin: 0 auto !important;
}

body:has(.gg-about-page) .gg-about-org {
  flex: 0 0 calc((100% - 102px) / 4) !important;
  width: calc((100% - 102px) / 4) !important;
  max-width: calc((100% - 102px) / 4) !important;
}

body:has(.gg-about-page) .gg-about-logo-box {
  height: 68px !important;
  margin: 0 0 14px !important;
}

body:has(.gg-about-page) .gg-about-logo-box img {
  width: 126px !important;
  height: 48px !important;
  max-width: 126px !important;
  max-height: 48px !important;
  object-fit: contain !important;
}

body:has(.gg-about-page) .gg-about-org-name {
  max-width: 150px !important;
  margin: 0 auto 5px !important;

  font-size: 14px !important;
  line-height: 1.22 !important;
  font-weight: 650 !important;
  text-align: center !important;
	color: white !important;
}

body:has(.gg-about-page) .gg-about-org-country {
  max-width: 150px !important;
  margin: 0 auto !important;

  font-size: 9px !important;
  line-height: 1.25 !important;
  text-align: center !important;
	color: var(--gg-accent-yellow) !important;
}

/* Tablet */
@media (max-width: 980px) and (min-width: 782px) {
  body:has(.gg-about-page) .gg-about-inner {
    width: min(760px, calc(100% - 48px)) !important;
    max-width: 760px !important;
  }

  body:has(.gg-about-page) .gg-about-orgs {
    max-width: 680px !important;
    gap: 50px 34px !important;
  }

  body:has(.gg-about-page) .gg-about-org {
    flex: 0 0 calc((100% - 68px) / 3) !important;
    width: calc((100% - 68px) / 3) !important;
    max-width: calc((100% - 68px) / 3) !important;
  }
}

/* Mobile */
@media (max-width: 781px) {
  body:has(.gg-about-page) .gg-about-inner {
    width: min(100% - 28px, 680px) !important;
    max-width: 680px !important;
    transform: none !important;
  }

  body:has(.gg-about-page) .gg-about-content,
  body:has(.gg-about-page) .gg-about-orgs-title,
  body:has(.gg-about-page) .gg-about-orgs {
    width: 100% !important;
    max-width: 100% !important;
  }

  body:has(.gg-about-page) .gg-about-orgs {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;

    gap: 38px 22px !important;
  }

  body:has(.gg-about-page) .gg-about-org {
    flex: 0 0 calc((100% - 22px) / 2) !important;
    width: calc((100% - 22px) / 2) !important;
    max-width: calc((100% - 22px) / 2) !important;
  }

  body:has(.gg-about-page) .gg-about-logo-box {
    height: 64px !important;
    margin-bottom: 12px !important;
  }

  body:has(.gg-about-page) .gg-about-logo-box img {
    width: 118px !important;
    height: 46px !important;
    max-width: 118px !important;
    max-height: 46px !important;
  }

  body:has(.gg-about-page) .gg-about-org-name {
    max-width: 145px !important;
    font-size: 11.5px !important;
    line-height: 1.2 !important;
  }

  body:has(.gg-about-page) .gg-about-org-country {
    max-width: 145px !important;
    font-size: 8.8px !important;
    line-height: 1.25 !important;
  }
}



/* =========================
   ABOUT PAGE CONTACT SIDEBAR
========================= */

body:has(.gg-about-page) .gg-about-layout {
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 72px 0 96px !important;

  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
  gap: 64px !important;
  align-items: start !important;
}

body:has(.gg-about-page) .gg-about-sidebar {
  position: relative !important;
  top: auto !important;
  align-self: start !important;
  width: 100% !important;
  max-width: 300px !important;
}

body:has(.gg-about-page) .gg-about-contact-box {
  position: relative !important;
  width: 100% !important;
  padding: 24px 22px 22px !important;
  box-sizing: border-box !important;

  background:
    radial-gradient(circle at top left, rgba(255, 119, 0, 0.10), transparent 42%),
    rgba(8, 8, 8, 0.96) !important;

  color: var(--gg-text) !important;
  font-family: var(--gg-font-heading) !important;
  box-shadow:
    0 0 18px rgba(255, 119, 0, 0.10),
    0 0 38px rgba(255, 17, 0, 0.06) !important;
}

body:has(.gg-about-page) .gg-about-contact-box::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  padding: 1px !important;
  box-sizing: border-box !important;

  background: linear-gradient(
    135deg,
    var(--gg-accent-red) 0%,
    var(--gg-accent-orange) 48%,
    var(--gg-accent-yellow) 100%
  ) !important;

  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0) border-box;
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0) border-box;
  mask-composite: exclude;

  pointer-events: none !important;
}

body:has(.gg-about-page) .gg-about-contact-box h2 {
  position: relative !important;
  z-index: 1 !important;

  margin: 0 0 14px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  font-weight: 750 !important;
  letter-spacing: -0.03em !important;
  color: var(--gg-accent-yellow) !important;
}

body:has(.gg-about-page) .gg-about-contact-intro {
  position: relative !important;
  z-index: 1 !important;

  margin: 0 0 22px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: rgba(242, 240, 234, 0.88) !important;
}

body:has(.gg-about-page) .gg-about-contact-box .wpcf7 {
  position: relative !important;
  z-index: 1 !important;
}

body:has(.gg-about-page) .gg-about-contact-box form {
  margin: 0 !important;
}

body:has(.gg-about-page) .gg-about-contact-box label {
  display: block !important;
  margin: 0 0 14px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 650 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: rgba(242, 240, 234, 0.68) !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="text"],
body:has(.gg-about-page) .gg-about-contact-box input[type="email"],
body:has(.gg-about-page) .gg-about-contact-box textarea {
  width: 100% !important;
  margin-top: 7px !important;
  padding: 11px 12px !important;
  box-sizing: border-box !important;

  border: 1px solid rgba(242, 240, 234, 0.18) !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, 0.045) !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  color: #ffffff !important;

  outline: none !important;
  box-shadow: none !important;
}

body:has(.gg-about-page) .gg-about-contact-box textarea {
  min-height: 108px !important;
  resize: vertical !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="text"]:focus,
body:has(.gg-about-page) .gg-about-contact-box input[type="email"]:focus,
body:has(.gg-about-page) .gg-about-contact-box textarea:focus {
  border-color: rgba(255, 221, 0, 0.72) !important;
  background: rgba(255, 255, 255, 0.07) !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="file"] {
  width: 100% !important;
  margin-top: 8px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  color: rgba(242, 240, 234, 0.76) !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="file"]::file-selector-button {
  margin-right: 10px !important;
  padding: 8px 11px !important;

  border: 1px solid rgba(255, 221, 0, 0.46) !important;
  border-radius: 0 !important;
  background: transparent !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--gg-accent-yellow) !important;

  cursor: pointer !important;
}

body:has(.gg-about-page) .gg-about-contact-box .gg-form-checkbox {
  margin-top: 2px !important;
  margin-bottom: 18px !important;

  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  letter-spacing: -0.005em !important;
  text-transform: none !important;
  color: rgba(242, 240, 234, 0.82) !important;
}

body:has(.gg-about-page) .gg-about-contact-box .wpcf7-list-item {
  margin: 0 !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="checkbox"] {
  margin: 0 8px 0 0 !important;
  accent-color: var(--gg-accent-yellow) !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="submit"],
body:has(.gg-about-page) .gg-about-contact-box .wpcf7-submit {
  width: 100% !important;
  display: block !important;

  margin: 4px 0 0 !important;
  padding: 12px 18px !important;

  border: 1px solid rgba(255, 221, 0, 0.62) !important;
  border-radius: 0 !important;
  background: linear-gradient(
    135deg,
    var(--gg-accent-red) 0%,
    var(--gg-accent-orange) 46%,
    var(--gg-accent-yellow) 100%
  ) !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #050505 !important;

  cursor: pointer !important;
  box-shadow:
    0 0 12px rgba(255, 119, 0, 0.22),
    0 0 24px rgba(255, 17, 0, 0.12) !important;
  transition:
    transform 160ms ease,
    filter 160ms ease,
    box-shadow 160ms ease !important;
}

body:has(.gg-about-page) .gg-about-contact-box input[type="submit"]:hover,
body:has(.gg-about-page) .gg-about-contact-box .wpcf7-submit:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.08) !important;
  box-shadow:
    0 0 16px rgba(255, 221, 0, 0.24),
    0 0 32px rgba(255, 119, 0, 0.22) !important;
}

body:has(.gg-about-page) .gg-about-contact-box .wpcf7-spinner {
  display: block !important;
  margin: 12px auto 0 !important;
}

body:has(.gg-about-page) .gg-about-contact-box .wpcf7-response-output {
  margin: 16px 0 0 !important;
  padding: 11px 12px !important;

  border: 1px solid rgba(255, 221, 0, 0.34) !important;
  color: rgba(242, 240, 234, 0.88) !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

body:has(.gg-about-page) .gg-about-contact-box .wpcf7-not-valid-tip {
  margin-top: 6px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  color: var(--gg-accent-orange) !important;
}

/* התאמה של התוכן הקיים כשהוא יושב לצד הסיידבאר */
body:has(.gg-about-page) .gg-about-layout .gg-about-inner {
  width: 100% !important;
  max-width: 860px !important;
  margin: 0 auto !important;
}

/* מובייל וטאבלט */
@media (max-width: 980px) {
  body:has(.gg-about-page) .gg-about-layout {
    width: min(860px, calc(100% - 40px)) !important;
    max-width: 860px !important;
    padding: 56px 0 76px !important;

    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 56px !important;
  }

  body:has(.gg-about-page) .gg-about-sidebar {
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box {
    padding: 24px 22px 22px !important;
  }
}

@media (max-width: 430px) {
  body:has(.gg-about-page) .gg-about-layout {
    width: min(100% - 32px, 520px) !important;
    padding: 44px 0 64px !important;
    gap: 44px !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box h2 {
    font-size: 22px !important;
  }

  body:has(.gg-about-page) .gg-about-contact-intro {
    font-size: 14px !important;
  }
}


/* =========================
   ABOUT CONTACT FORM - MOBILE CENTERING
========================= */

@media (max-width: 768px) {
  body:has(.gg-about-page) .gg-about-contact-box {
    text-align: center !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box h2,
  body:has(.gg-about-page) .gg-about-contact-intro,
  body:has(.gg-about-page) .gg-about-contact-box label,
  body:has(.gg-about-page) .gg-about-contact-box .gg-form-checkbox,
  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-list-item-label,
  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-response-output,
  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-not-valid-tip {
    text-align: center !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box input[type="text"],
  body:has(.gg-about-page) .gg-about-contact-box input[type="email"],
  body:has(.gg-about-page) .gg-about-contact-box textarea {
    text-align: center !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box input[type="file"] {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-list-item {
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box input[type="checkbox"] {
    flex: 0 0 auto !important;
    margin: 2px 0 0 !important;
  }

  body:has(.gg-about-page) .gg-about-contact-box .wpcf7-submit {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}



/* Hide About page featured image visually, but keep it available for SEO/schema */
body:has(.gg-about-page) .wp-block-post-featured-image,
body:has(.gg-about-page) .wp-block-post-featured-image img,
body:has(.gg-about-page) .post-thumbnail,
body:has(.gg-about-page) .post-thumbnail img,
body:has(.gg-about-page) figure.wp-block-post-featured-image {
  display: none !important;
}



/* =========================
   PRIVACY POLICY PAGE
========================= */

body.privacy-policy {
  background: var(--gg-bg) !important;
}

/* Remove default WP spacing from the page template */
body.privacy-policy main.wp-block-group {
  margin-top: 0 !important;
}

/* Remove default top/bottom padding from the inner WordPress wrapper */
body.privacy-policy main.wp-block-group > .wp-block-group.alignfull {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide default WordPress page title outside the content */
body.privacy-policy main.wp-block-group > .wp-block-group.alignfull > .wp-block-post-title,
body.privacy-policy main > .wp-block-post-title,
body.privacy-policy .wp-block-post-title {
  display: none !important;
}

/* Main content container */
body.privacy-policy .wp-block-post-content {
  width: min(780px, calc(100% - 40px)) !important;
  max-width: 780px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 30px 0 96px !important;
  box-sizing: border-box !important;
}

/* Main title */
body.privacy-policy .wp-block-post-content h1 {
  margin: 0 0 12px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: clamp(44px, 5vw, 70px) !important;
  line-height: 0.96 !important;
  font-weight: 760 !important;
  letter-spacing: -0.055em !important;
  color: #ffffff !important;
}

/* Updated date */
body.privacy-policy .wp-block-post-content .gg-privacy-updated {
  margin: 54px 0 54px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 650 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--gg-accent-yellow) !important;
}

/* First heading after updated date */
body.privacy-policy .wp-block-post-content .gg-privacy-updated + h2 {
  margin-top: 0 !important;
}

/* Section headings */
body.privacy-policy .wp-block-post-content h2 {
  margin: 44px 0 14px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 25px !important;
  line-height: 1.08 !important;
  font-weight: 720 !important;
  letter-spacing: -0.035em !important;
  color: #ffffff !important;
}

/* Paragraphs */
body.privacy-policy .wp-block-post-content p {
  margin: 0 0 20px !important;
  font-family: var(--gg-font-heading) !important;
  font-size: 17px !important;
  line-height: 1.62 !important;
  font-weight: 400 !important;
  letter-spacing: -0.008em !important;
  color: rgba(242, 240, 234, 0.84) !important;
}

/* Links */
body.privacy-policy .wp-block-post-content a {
  color: var(--gg-accent-yellow) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255, 221, 0, 0.45) !important;
}

body.privacy-policy .wp-block-post-content a:hover {
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* Mobile */
@media (max-width: 768px) {
  body.privacy-policy main.wp-block-group {
    margin-top: 0 !important;
  }

  body.privacy-policy main.wp-block-group > .wp-block-group.alignfull {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.privacy-policy .wp-block-post-content {
    width: min(100% - 32px, 780px) !important;
    padding: 24px 0 72px !important;
  }

  body.privacy-policy .wp-block-post-content h1 {
    font-size: 42px !important;
    line-height: 0.98 !important;
    letter-spacing: -0.045em !important;
  }

  body.privacy-policy .wp-block-post-content .gg-privacy-updated {
    margin-bottom: 44px !important;
	  margin-top: 44px !important;
  }

  body.privacy-policy .wp-block-post-content h2 {
    margin-top: 38px !important;
    font-size: 22px !important;
    line-height: 1.12 !important;
  }

  body.privacy-policy .wp-block-post-content .gg-privacy-updated + h2 {
    margin-top: 0 !important;
  }

  body.privacy-policy .wp-block-post-content p {
    font-size: 16px !important;
    line-height: 1.62 !important;
  }
}


/* =========================
   COOKIEYES – GAZA GENOLIE STYLE
========================= */

/* Full-width banner container */
.cky-consent-container {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Main compact banner */
.cky-consent-container .cky-consent-bar {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 12px 28px !important;
  box-sizing: border-box !important;

  background: rgba(8, 8, 8, 0.98) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0 !important;
  box-shadow: 0 -8px 28px rgba(0, 0, 0, 0.32) !important;
}

/* Main row: text left, buttons right */
.cky-notice-group {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Text block */
.cky-notice {
  flex: 1 1 auto !important;
  max-width: none !important;
  width: auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Title inline */
.cky-title {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: "Funnel Display", sans-serif !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 760 !important;
  letter-spacing: -0.03em !important;
  white-space: nowrap !important;
}

/* Description inline */
.cky-notice-des {
  flex: 1 1 auto !important;
  max-width: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cky-notice-des,
.cky-notice-des p {
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(242, 240, 234, 0.82) !important;
  font-family: "Funnel Display", sans-serif !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  letter-spacing: -0.004em !important;
}

/* Policy link */
.cky-notice-des a,
.cky-preference-body-wrapper a,
.cky-preference-content-wrapper a {
  color: #ffdd00 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255, 221, 0, 0.45) !important;
  white-space: nowrap !important;
}

.cky-notice-des a:hover,
.cky-preference-body-wrapper a:hover,
.cky-preference-content-wrapper a:hover {
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* Buttons right */
.cky-btn-wrapper,
.cky-notice-btn-wrapper {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  margin: 0 !important;
  margin-left: auto !important;
  padding: 0 !important;
}

/* Compact buttons */
.cky-btn-wrapper .cky-btn,
.cky-notice-btn-wrapper .cky-btn,
.cky-btn {
  min-width: 96px !important;
  width: auto !important;
  max-width: none !important;
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  border-radius: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-family: "Funnel Display", sans-serif !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Accept button */
.cky-btn-accept {
  background: linear-gradient(90deg, #ff4d00 0%, #ff9f00 55%, #ffdd00 100%) !important;
  border: 1px solid rgba(255, 221, 0, 0.42) !important;
  color: #050505 !important;
}

/* Reject button */
.cky-btn-reject {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #ffffff !important;
}

/* Customize button */
.cky-btn-customize {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  color: rgba(255, 255, 255, 0.92) !important;
}

/* Hover states */
.cky-btn-accept:hover {
  filter: brightness(1.05) !important;
}

.cky-btn-reject:hover,
.cky-btn-customize:hover {
  border-color: rgba(255, 221, 0, 0.68) !important;
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.035) !important;
}

/* Hide Powered by CookieYes */
[data-cky-tag="powered-by"],
.cky-powered-by,
.cky-brand-logo,
.cky-brand-logo-wrapper {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}

/* Preference popup */
.cky-preference-center,
.cky-modal {
  background: #0b0b0b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0 !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
}

/* Preference popup headings */
.cky-preference-header .cky-preference-title,
.cky-accordion-header-des,
.cky-accordion-header .cky-accordion-btn {
  color: #ffffff !important;
  font-family: "Funnel Display", sans-serif !important;
}

/* Popup text */
.cky-preference-center *,
.cky-preference-center p,
.cky-preference-center span,
.cky-preference-center label {
  font-family: "Funnel Display", sans-serif !important;
}

/* Category rows */
.cky-accordion-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Save preferences button */
.cky-btn-preferences,
.cky-btn-save {
  background: linear-gradient(90deg, #ff4d00 0%, #ff9f00 55%, #ffdd00 100%) !important;
  border: 1px solid rgba(255, 221, 0, 0.42) !important;
  color: #050505 !important;
  border-radius: 0 !important;
  font-weight: 720 !important;
}

/* Revisit button hidden */
.cky-btn-revisit-wrapper,
.cky-revisit-bottom-left,
.cky-revisit-bottom-right,
[data-cky-tag="revisit-consent"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Medium screens */
@media (max-width: 1100px) and (min-width: 769px) {
  .cky-consent-container .cky-consent-bar {
    padding: 12px 22px !important;
  }

  .cky-notice-group {
    gap: 20px !important;
  }

  .cky-notice {
    gap: 14px !important;
  }

  .cky-title {
    font-size: 17px !important;
  }

  .cky-notice-des,
  .cky-notice-des p {
    font-size: 12.5px !important;
  }

  .cky-btn-wrapper .cky-btn,
  .cky-notice-btn-wrapper .cky-btn,
  .cky-btn {
    min-width: 88px !important;
    padding: 0 12px !important;
    font-size: 11.5px !important;
  }
}

/* =========================
   COOKIEYES - MOBILE
========================= */

@media (max-width: 768px) {
  .cky-consent-container {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .cky-consent-container .cky-consent-bar {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 18px 0 !important;
    box-sizing: border-box !important;
    border-radius: 0 !important;
  }
	
	.cky-consent-container .cky-consent-bar .cky-notice-content-wrapper {
		padding: 12px 0 12px 0 !important;
	}

  .cky-notice-group {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 11px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .cky-notice {
    width: 100% !important;
    max-width: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .cky-title {
    display: block !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
    font-weight: 760 !important;
    letter-spacing: -0.03em !important;
  }

  .cky-notice-des {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .cky-notice-des,
  .cky-notice-des p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.34 !important;
	  padding-bottom: 4px !important;
  }

  .cky-notice-des a {
    font-size: 12.5px !important;
    line-height: 1.2 !important;
  }

  .cky-btn-wrapper,
  .cky-notice-btn-wrapper {
    width: 100% !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    align-items: stretch !important;
  }

  .cky-btn-wrapper .cky-btn,
  .cky-notice-btn-wrapper .cky-btn,
  .cky-btn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    box-sizing: border-box !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: 10.8px !important;
    line-height: 1 !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
  }

  .cky-btn-customize {
    order: 1 !important;
  }

  .cky-btn-reject {
    order: 2 !important;
  }

  .cky-btn-accept {
    order: 3 !important;
  }
}

/* =========================
   COOKIEYES - HIDE ON MOBILE HOMEPAGE ONLY
========================= */

@media (max-width: 768px) {
  body.home .cky-consent-container,
  body.front-page .cky-consent-container,
  body.home .cky-consent-bar,
  body.front-page .cky-consent-bar {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}


/* =========================
   MOBILE MEDIA COLOR LOCK
   Once media becomes color, tap/hover/focus/active will not change it
========================= */

@media (max-width: 781px) {
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible img,
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible:hover img,
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible:focus img,
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible:active img,
  .gg-main-content .wp-block-post-content figure.wp-block-image:not(.gg-genolie-image-frame).is-scroll-visible:focus-within img,

  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible video,
  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible:hover video,
  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible:focus video,
  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible:active video,
  .gg-main-content .wp-block-post-content figure.wp-block-video.is-scroll-visible:focus-within video,

  .gg-main-content .wp-block-post-content .wp-block-embed.is-scroll-visible iframe,
  .gg-main-content .wp-block-post-content .wp-block-embed.is-scroll-visible:hover iframe,
  .gg-main-content .wp-block-post-content .wp-block-embed.is-scroll-visible:focus iframe,
  .gg-main-content .wp-block-post-content .wp-block-embed.is-scroll-visible:active iframe,

  .gg-main-content .wp-block-post-content video.is-scroll-visible,
  .gg-main-content .wp-block-post-content video.is-scroll-visible:hover,
  .gg-main-content .wp-block-post-content video.is-scroll-visible:focus,
  .gg-main-content .wp-block-post-content video.is-scroll-visible:active {
    filter: grayscale(0%) contrast(1.04) brightness(0.96) saturate(1.08) sepia(0) !important;
    opacity: 1 !important;
    transform: translateY(-2px) scale(1.01) !important;

    box-shadow:
      0 18px 44px rgba(0, 0, 0, 0.36),
      0 0 22px rgba(255, 119, 0, 0.09) !important;
  }

  .gg-main-content .wp-block-post-content figure,
  .gg-main-content .wp-block-post-content figure img,
  .gg-main-content .wp-block-post-content img,
  .gg-main-content .wp-block-post-content video,
  .gg-main-content .wp-block-post-content iframe {
    -webkit-tap-highlight-color: transparent !important;
    outline: none !important;
  }
}

/* =========================
   SITE FOOTER - FINAL
========================= */

.gg-site-footer {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 44px 0 36px !important;

  border-top: 1px solid rgba(242, 240, 234, 0.08) !important;
  background:
    radial-gradient(circle at top right, rgba(255, 119, 0, 0.08), transparent 34%),
    var(--gg-bg) !important;

  color: var(--gg-text) !important;
}

.gg-site-footer-inner {
  position: relative !important;

  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas:
    "brand nav"
    "copyright copyright" !important;

  align-items: start !important;
  gap: 26px 48px !important;
}

.gg-site-footer-inner::before {
  content: "" !important;
  position: absolute !important;
  top: -45px !important;
  left: 0 !important;

  width: 160px !important;
  height: 1px !important;

  background: linear-gradient(
    90deg,
    var(--gg-accent-red),
    var(--gg-accent-orange),
    rgba(255, 221, 0, 0)
  ) !important;

  box-shadow: 0 0 16px rgba(255, 119, 0, 0.18) !important;
}

.gg-footer-brand {
  grid-area: brand !important;
  margin: 0 !important;
}

.gg-footer-logo {
  margin: 0 0 10px !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 760 !important;
  letter-spacing: 0.08em !important;
  color: #ffffff !important;
}

.gg-footer-description {
  max-width: 520px !important;
  margin: 0 !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: -0.006em !important;

  color: rgba(242, 240, 234, 0.58) !important;
}

.gg-footer-nav {
  grid-area: nav !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 26px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.gg-footer-nav a {
  display: inline-flex !important;
  align-items: center !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 560 !important;
  letter-spacing: -0.004em !important;

  color: rgba(242, 240, 234, 0.78) !important;
  text-decoration: none !important;
}

.gg-footer-nav a:hover,
.gg-footer-nav a:focus {
  color: var(--gg-accent-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--gg-accent-orange) !important;
  text-underline-offset: 4px !important;
}

.gg-footer-copyright {
  grid-area: copyright !important;

  margin: 8px 0 0 !important;
  padding-top: 20px !important;

  border-top: 1px solid rgba(242, 240, 234, 0.06) !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 450 !important;
  letter-spacing: 0.02em !important;

  color: rgba(242, 240, 234, 0.36) !important;
}

/* Mobile footer */
@media (max-width: 781px) {
  .gg-site-footer {
    padding: 36px 0 32px !important;
  }

  .gg-site-footer-inner {
    width: min(100% - 32px, 720px) !important;
    max-width: 720px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 22px !important;
  }

  .gg-site-footer-inner::before {
    top: -37px !important;
    width: 112px !important;
  }

  .gg-footer-logo {
    font-size: 13px !important;
    margin-bottom: 9px !important;
  }

  .gg-footer-description {
    max-width: 100% !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  .gg-footer-nav {
    width: 100% !important;

    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 16px 22px !important;
  }

  .gg-footer-nav a {
    font-size: 13px !important;
  }

  .gg-footer-copyright {
    width: 100% !important;
    margin-top: 0 !important;
    padding-top: 18px !important;
    font-size: 10.5px !important;
  }
}

/* =========================
   FOOTER VISIBILITY - FINAL
   Show footer only on About + Privacy Policy
========================= */

/* Hide footer globally */
footer.wp-block-template-part,
.wp-site-blocks > footer,
.gg-site-footer {
  display: none !important;
}

/* Show footer on About page */
body:has(.gg-about-page) footer.wp-block-template-part,
body:has(.gg-about-page) .wp-site-blocks > footer,
body:has(.gg-about-page) .gg-site-footer {
  display: block !important;
}

/* Show footer on Privacy Policy page */
body.privacy-policy footer.wp-block-template-part,
body.privacy-policy .wp-site-blocks > footer,
body.privacy-policy .gg-site-footer {
  display: block !important;
}

/* Make sure About + Privacy footer is visible on mobile too */
@media (max-width: 781px) {
  body:has(.gg-about-page) footer.wp-block-template-part,
  body:has(.gg-about-page) .wp-site-blocks > footer,
  body:has(.gg-about-page) .gg-site-footer,
  body.privacy-policy footer.wp-block-template-part,
  body.privacy-policy .wp-site-blocks > footer,
  body.privacy-policy .gg-site-footer {
    display: block !important;
  }
}


/* =========================
   FOOTER OUTER WP WRAPPER FIX
   Make footer touch full browser width
========================= */

/* Remove WordPress default padding around the footer template part */
footer.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part,
.wp-site-blocks footer.wp-block-template-part {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Remove the inner WP group padding that wraps the custom footer */
footer.wp-block-template-part > .wp-block-group,
footer.wp-block-template-part > .wp-block-group.has-global-padding,
footer.wp-block-template-part .wp-block-group.has-global-padding {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Make sure the actual custom footer owns the spacing/background */
footer.wp-block-template-part .gg-site-footer,
.gg-site-footer {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}


/* =========================
   BACK TO TOP BUTTON
========================= */

.gg-back-to-top {
  position: fixed !important;
  right: 28px !important;
  bottom: 28px !important;
  z-index: 99998 !important;

  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border: 1px solid transparent !important;
  border-radius: 0 !important;

  background:
    linear-gradient(rgba(5, 5, 5, 0.96), rgba(5, 5, 5, 0.96)) padding-box,
    linear-gradient(
      135deg,
      var(--gg-accent-red) 0%,
      var(--gg-accent-orange) 48%,
      var(--gg-accent-yellow) 100%
    ) border-box !important;

  color: #ffffff !important;

  font-family: var(--gg-font-heading) !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 650 !important;

  cursor: pointer !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) !important;

  box-shadow:
    0 0 16px rgba(255, 119, 0, 0.16),
    0 12px 28px rgba(0, 0, 0, 0.42) !important;

  transition:
    opacity 180ms ease,
    visibility 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease !important;
}

.gg-back-to-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.gg-back-to-top:hover,
.gg-back-to-top:focus {
  color: var(--gg-accent-yellow) !important;

  box-shadow:
    0 0 18px rgba(255, 221, 0, 0.20),
    0 0 30px rgba(255, 119, 0, 0.20),
    0 12px 28px rgba(0, 0, 0, 0.46) !important;

  outline: none !important;
}

.gg-back-to-top span {
  display: block !important;
  transform: translateY(-1px) !important;
}

/* Mobile */
@media (max-width: 781px) {
  .gg-back-to-top {
    right: 16px !important;
    bottom: 16px !important;

    width: 40px !important;
    height: 40px !important;

    font-size: 22px !important;
  }

  /* On puzzle pages, keep it slightly above the floating puzzle mini-map */
  body:not(.home):not(.front-page) .gg-back-to-top {
    bottom: 166px !important;
  }

  /* On About + Privacy, no floating puzzle mini-map, so keep it low */
  body:has(.gg-about-page) .gg-back-to-top,
  body.privacy-policy .gg-back-to-top {
    bottom: 16px !important;
  }
}