#nmfc-countdown-spacer { display: none; height: 0; }

.nmfc-countdown-bar {
  box-sizing: border-box;
  width: 100%;
  background: var(--nmfc-bg);
  color: var(--nmfc-text);
  font-size: var(--nmfc-font-desktop);
  line-height: 1.2;
  padding: var(--nmfc-pad-y) var(--nmfc-pad-x);
  z-index: var(--nmfc-z);
  font-family: inherit;
  text-align: center;
}

.nmfc-position-fixed { position: fixed; top: 0; left: 0; right: 0; }
.admin-bar .nmfc-position-fixed { top: 32px; }

.nmfc-inner {
  max-width: var(--nmfc-max-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
}

.nmfc-prefix, .nmfc-suffix { font-weight: 600; }
.nmfc-time { display: inline-flex; align-items: baseline; justify-content: center; gap: 10px; white-space: nowrap; }
.nmfc-unit { display: inline-flex; align-items: baseline; gap: 4px; }
.nmfc-unit strong { color: var(--nmfc-accent); font-size: 1.15em; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.nmfc-unit em { color: var(--nmfc-text); font-style: normal; text-transform: uppercase; font-size: .72em; letter-spacing: .03em; }

.nmfc-button,
.nmfc-button:link,
.nmfc-button:visited,
.nmfc-button:hover,
.nmfc-button:active,
.nmfc-button:focus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: calc(.45em * var(--nmfc-button-scale) / 100) calc(.85em * var(--nmfc-button-scale) / 100);
  font-size: calc(1em * var(--nmfc-button-scale) / 100);
  border-radius: var(--nmfc-button-radius);
  background: var(--nmfc-button-bg) !important;
  color: var(--nmfc-button-text) !important;
  text-decoration: none !important;
  font-weight: 800;
  line-height: 1;
  box-shadow: none;
  outline-offset: 2px;
}

.nmfc-button:hover, .nmfc-button:focus { opacity: .92; }

.nmfc-desktop-centered .nmfc-inner { flex-direction: column; gap: 6px; }
.nmfc-desktop-blocks .nmfc-time { gap: 8px; }
.nmfc-desktop-blocks .nmfc-unit { flex-direction: column; align-items: center; min-width: 54px; padding: 4px 8px; border: 1px solid rgba(255,255,255,.25); border-radius: 8px; }
.nmfc-desktop-blocks .nmfc-unit em { font-size: .65em; }

.nmfc-expired-message { display: none; font-weight: var(--nmfc-weight-text); color: var(--nmfc-text); }
.nmfc-expired .nmfc-time, .nmfc-expired .nmfc-prefix, .nmfc-expired .nmfc-suffix, .nmfc-expired .nmfc-button { display: none !important; }
.nmfc-expired .nmfc-expired-message { display: inline-flex; align-items: center; justify-content: center; }
.nmfc-expired .nmfc-inner::before { content: none !important; }

body.nmfc-active.nmfc-fixed #nmfc-countdown-spacer { display: block; }

/* SiteOrigin Corp: integrated mode. The countdown becomes the first child of #masthead. */
#masthead.nmfc-corp-integrated { overflow: visible; }
#masthead.nmfc-corp-integrated #nmfc-countdown-bar {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100%;
  z-index: calc(var(--nmfc-z) + 1);
}
#masthead.nmfc-corp-integrated #nmfc-countdown-spacer { display: none !important; height: 0 !important; }
#masthead.nmfc-corp-integrated .corp-container { position: relative; z-index: 1; margin-top: var(--nmfc-gap-desktop); }
#masthead.nmfc-corp-integrated #nmfc-countdown-bar + .corp-container { margin-top: var(--nmfc-gap-desktop); }

@media screen and (max-width: 782px) { .admin-bar .nmfc-position-fixed { top: 46px; } }

@media screen and (max-width: 720px) {
  #masthead.nmfc-corp-integrated .corp-container, #masthead.nmfc-corp-integrated #nmfc-countdown-bar + .corp-container { margin-top: var(--nmfc-gap-mobile); }
  .nmfc-countdown-bar { font-size: var(--nmfc-font-mobile); padding: 5px 10px; }
  .nmfc-inner { gap: 8px; }
  .nmfc-mobile-centered .nmfc-inner { flex-direction: column; gap: 4px; }
  .nmfc-mobile-inline .nmfc-inner { flex-direction: row; }
  .nmfc-mobile-blocks .nmfc-time { gap: 5px; }
  .nmfc-mobile-blocks .nmfc-unit { flex-direction: column; align-items: center; min-width: 42px; padding: 3px 5px; border: 1px solid rgba(255,255,255,.25); border-radius: 7px; }
  .nmfc-mobile-compact .nmfc-prefix, .nmfc-mobile-compact .nmfc-suffix { font-size: .95em; }
  .nmfc-mobile-compact .nmfc-time { gap: 7px; }
  .nmfc-mobile-compact .nmfc-unit em { font-size: .65em; }
  .nmfc-hide-mobile { display: none !important; }
}


/* NM v3.0: SiteOrigin/Theme-Schutz für Linkzustände und ruhige Ziffern */
.nmfc-countdown-bar a.nmfc-button,
.nmfc-countdown-bar a.nmfc-button:link,
.nmfc-countdown-bar a.nmfc-button:visited,
.nmfc-countdown-bar a.nmfc-button:hover,
.nmfc-countdown-bar a.nmfc-button:active,
.nmfc-countdown-bar a.nmfc-button:focus {
  background-color: var(--nmfc-button-bg) !important;
  color: var(--nmfc-button-text) !important;
  border-color: transparent !important;
}
.nmfc-countdown-bar, .nmfc-countdown-bar * { font-variant-numeric: tabular-nums; }

/* NM v3.1: Typografie, Layout-Feinschliff, Button-Zustände */
.nmfc-inner { gap: var(--nmfc-item-gap-desktop); }
.nmfc-time { gap: var(--nmfc-time-gap-desktop); }
.nmfc-prefix, .nmfc-suffix { font-weight: var(--nmfc-weight-text); }
.nmfc-unit strong { font-weight: var(--nmfc-weight-numbers); }
.nmfc-unit em { font-weight: var(--nmfc-weight-units); letter-spacing: var(--nmfc-letter-spacing); }
.nmfc-units-uppercase .nmfc-unit em { text-transform: uppercase; }
.nmfc-units-lowercase .nmfc-unit em { text-transform: lowercase; }
.nmfc-units-none .nmfc-unit em { text-transform: none; }
.nmfc-tabular, .nmfc-tabular * { font-variant-numeric: tabular-nums; }
.nmfc-density-compact { padding-top: max(3px, calc(var(--nmfc-pad-y) - 3px)); padding-bottom: max(3px, calc(var(--nmfc-pad-y) - 3px)); }
.nmfc-density-generous { padding-top: calc(var(--nmfc-pad-y) + 4px); padding-bottom: calc(var(--nmfc-pad-y) + 4px); }
.nmfc-border-top { border-top: 1px solid var(--nmfc-border-color); }
.nmfc-border-bottom { border-bottom: 1px solid var(--nmfc-border-color); }
.nmfc-shadow { box-shadow: 0 4px 16px rgba(0,0,0,.18); }
.nmfc-gradient { background: linear-gradient(180deg, color-mix(in srgb, var(--nmfc-bg), #fff 8%), var(--nmfc-bg)); }
.nmfc-countdown-bar a.nmfc-button:hover,
.nmfc-countdown-bar a.nmfc-button:focus {
  background-color: var(--nmfc-button-hover-bg) !important;
  color: var(--nmfc-button-hover-text) !important;
  opacity: 1;
}
.nmfc-countdown-bar a.nmfc-button { border: 1px solid var(--nmfc-button-border) !important; }
.nmfc-expired .nmfc-expired-button { display: inline-flex !important; }
.nmfc-expired-button { display: none; }

@media screen and (max-width: 720px) {
  .nmfc-inner { gap: var(--nmfc-item-gap-mobile); }
  .nmfc-time { gap: var(--nmfc-time-gap-mobile); }
  .nmfc-button-hide-mobile .nmfc-button { display: none !important; }
}

/* NM Event Countdown v3.2: hochwertigere Button-Designs */
.nmfc-countdown-bar a.nmfc-button,
.nmfc-countdown-bar a.nmfc-button:link,
.nmfc-countdown-bar a.nmfc-button:visited,
.nmfc-countdown-bar a.nmfc-button:hover,
.nmfc-countdown-bar a.nmfc-button:active,
.nmfc-countdown-bar a.nmfc-button:focus {
  min-height: var(--nmfc-button-height) !important;
  min-width: var(--nmfc-button-min-width) !important;
  padding: 0 var(--nmfc-button-padding-x) !important;
  font-size: calc(var(--nmfc-button-font-size) * var(--nmfc-button-scale) / 100) !important;
  font-weight: var(--nmfc-button-font-weight) !important;
  line-height: 1 !important;
  border-width: var(--nmfc-button-border-width) !important;
  border-style: solid !important;
  border-color: var(--nmfc-button-border) !important;
  border-radius: var(--nmfc-button-radius) !important;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  white-space: nowrap;
}

.nmfc-button-style-classic a.nmfc-button,
.nmfc-button-style-classic a.nmfc-button:link,
.nmfc-button-style-classic a.nmfc-button:visited {
  border-radius: min(var(--nmfc-button-radius), 10px) !important;
}

.nmfc-button-style-modern a.nmfc-button,
.nmfc-button-style-modern a.nmfc-button:link,
.nmfc-button-style-modern a.nmfc-button:visited {
  border-radius: var(--nmfc-button-radius) !important;
}

.nmfc-button-style-outline a.nmfc-button,
.nmfc-button-style-outline a.nmfc-button:link,
.nmfc-button-style-outline a.nmfc-button:visited {
  background-color: transparent !important;
  color: var(--nmfc-button-bg) !important;
  border-color: var(--nmfc-button-bg) !important;
}

.nmfc-button-style-outline a.nmfc-button:hover,
.nmfc-button-style-outline a.nmfc-button:focus {
  background-color: var(--nmfc-button-hover-bg) !important;
  color: var(--nmfc-button-hover-text) !important;
  border-color: var(--nmfc-button-hover-bg) !important;
}

.nmfc-button-shadow a.nmfc-button { box-shadow: 0 6px 16px rgba(0,0,0,.16) !important; }
.nmfc-button-effect-lift a.nmfc-button:hover,
.nmfc-button-effect-lift a.nmfc-button:focus { transform: translateY(-1px); }
.nmfc-button-effect-grow a.nmfc-button:hover,
.nmfc-button-effect-grow a.nmfc-button:focus { transform: scale(1.025); }
.nmfc-button-effect-glow a.nmfc-button:hover,
.nmfc-button-effect-glow a.nmfc-button:focus { box-shadow: 0 0 0 3px rgba(255,255,255,.18), 0 8px 18px rgba(0,0,0,.18) !important; }
.nmfc-countdown-bar a.nmfc-button:active { transform: translateY(0) scale(1); }

@media screen and (max-width: 720px) {
  .nmfc-countdown-bar a.nmfc-button,
  .nmfc-countdown-bar a.nmfc-button:link,
  .nmfc-countdown-bar a.nmfc-button:visited,
  .nmfc-countdown-bar a.nmfc-button:hover,
  .nmfc-countdown-bar a.nmfc-button:active,
  .nmfc-countdown-bar a.nmfc-button:focus {
    min-height: max(30px, calc(var(--nmfc-button-height) - 6px)) !important;
    padding-left: max(12px, calc(var(--nmfc-button-padding-x) - 6px)) !important;
    padding-right: max(12px, calc(var(--nmfc-button-padding-x) - 6px)) !important;
    font-size: max(12px, calc(var(--nmfc-button-font-size) - 1px)) !important;
  }
}

/* NM Event Countdown v3.4: Smart-Sticky */
.nmfc-countdown-bar {
  transition: transform .32s ease, opacity .24s ease, max-height .32s ease, padding-top .32s ease, padding-bottom .32s ease;
  max-height: 240px;
  overflow: hidden;
}

.nmfc-countdown-bar.nmfc-scroll-hidden {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
  max-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top-width: 0 !important;
  border-bottom-width: 0 !important;
}

#masthead.nmfc-corp-integrated.nmfc-countdown-hidden .corp-container,
#masthead.nmfc-corp-integrated.nmfc-countdown-hidden #nmfc-countdown-bar + .corp-container {
  margin-top: 0 !important;
}

.nmfc-countdown-bar.nmfc-scroll-compact-active {
  padding-top: max(3px, calc(var(--nmfc-pad-y) - 5px));
  padding-bottom: max(3px, calc(var(--nmfc-pad-y) - 5px));
  font-size: calc(var(--nmfc-font-desktop) * .88);
}

.nmfc-countdown-bar.nmfc-scroll-compact-active .nmfc-inner {
  gap: max(6px, calc(var(--nmfc-item-gap-desktop) - 6px));
}

.nmfc-countdown-bar.nmfc-scroll-compact-active .nmfc-suffix,
.nmfc-countdown-bar.nmfc-scroll-compact-active .nmfc-button {
  display: none !important;
}

.nmfc-countdown-bar.nmfc-scroll-compact-active .nmfc-unit em {
  font-size: .65em;
}

#masthead.nmfc-corp-integrated.nmfc-countdown-compact .corp-container,
#masthead.nmfc-corp-integrated.nmfc-countdown-compact #nmfc-countdown-bar + .corp-container {
  margin-top: max(4px, calc(var(--nmfc-gap-desktop) - 12px));
}

@media screen and (max-width: 720px) {
  .nmfc-countdown-bar.nmfc-scroll-compact-active {
    font-size: calc(var(--nmfc-font-mobile) * .9);
    padding-top: 3px;
    padding-bottom: 3px;
  }
  .nmfc-countdown-bar.nmfc-scroll-compact-active .nmfc-inner {
    gap: max(4px, calc(var(--nmfc-item-gap-mobile) - 4px));
  }
  #masthead.nmfc-corp-integrated.nmfc-countdown-compact .corp-container,
  #masthead.nmfc-corp-integrated.nmfc-countdown-compact #nmfc-countdown-bar + .corp-container {
    margin-top: max(2px, calc(var(--nmfc-gap-mobile) - 8px));
  }
}

@media (prefers-reduced-motion: reduce) {
  .nmfc-countdown-bar { transition: none; }
}


/* NM Event Countdown v3.5.2: SiteOrigin Corp stable integrated mode.
   The header stays responsible for sticky positioning; the plugin no longer
   adjusts geometry continuously while scrolling. */
#masthead.nmfc-corp-integrated #nmfc-countdown-bar {
  flex-shrink: 0;
}
html.nmfc-scroll-at-top #masthead.nmfc-corp-integrated #nmfc-countdown-bar {
  transform: none;
}
