/*------------------------------------*\
  #MOBILE MENU TOGGLE
\*------------------------------------*/
@media only screen and (min-width: 1024px) {
  .c-menu-toggle__checkbox,
  .c-menu-toggle {
    display: none; } }

.c-menu-toggle {
  width: auto !important;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2300;
  font-size: 1rem;
  margin: 0 !important;
  background: none !important; }
  @media not screen and (min-width: 1024px) {
    .c-menu-toggle {
      display: block !important; } }
  .c-menu-toggle__checkbox:checked ~ .c-menu-toggle {
    --sm-current-bg-color: var(--sm-bg-color-5);
    --sm-current-accent-color: var(--sm-accent-color-5);
    --sm-current-fg1-color: var(--sm-fg1-color-5);
    --sm-current-fg2-color: var(--sm-fg2-color-5); }
    .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--top {
      transform: rotate(45deg); }
    .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--middle {
      opacity: 0; }
    .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--bottom {
      transform: rotate(-45deg); }

.c-menu-toggle__slice {
  transition: var(--theme-transition);
  transition-property: transform; }

.c-menu-toggle__wrap {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 1em var(--nb-wrapper-sides-spacings, 0);
  cursor: pointer; }

.c-menu-toggle__checkbox {
  display: none; }

.c-menu-toggle__label {
  margin-left: 0.5em; }

.c-menu-toggle__icon {
  position: relative;
  display: block;
  width: 1em; }

.c-menu-toggle__slice {
  display: block;
  width: 21px;
  height: 2px;
  background: currentColor; }

.c-menu-toggle__slice--top,
.c-menu-toggle__slice--bottom {
  position: absolute;
  top: 0;
  left: 0; }

.c-menu-toggle__slice--middle {
  width: 16px; }

.c-menu-toggle__slice--top {
  transform: translate3d(0, -7px, 0); }

.c-menu-toggle__slice--bottom {
  transform: translate3d(0, 7px, 0); }

.c-reading-bar__progress {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: var(--theme-reading-progress-width);
  border: none;
  background-color: transparent; }
  :is(.c-reading-bar__progress, #specific) {
    margin: 0; }
  .c-reading-bar__progress:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background-color: var(--nb-accent-color);
    will-change: transform;
    transform: scale(var(--progress, 0), 1);
    transform-origin: 0 50%; }

:root {
  --theme-reading-progress-width: 3px;
  --theme-reading-progress-color: var(--sm-current-accent-color); }

.c-reading-bar,
.c-reading-bar__progress {
  display: none; }
  @media not screen and (min-width: 1024px) {
    .c-reading-bar,
    .c-reading-bar__progress {
      display: none !important; } }

.c-reading-bar {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  max-width: none;
  height: 100%;
  overflow: hidden;
  --nb-block-top-spacing: 0 !important; }
  .c-reading-bar > * {
    flex-basis: calc(100% / 3); }
  .c-reading-bar[class] {
    background: none; }

.c-reading-bar__layer--current .post-title__label {
  display: none; }

.c-reading-bar__layer-wrapper,
.c-reading-bar__layer--next {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

.c-reading-bar__layer--next {
  transform: translateY(100%);
  overflow: hidden; }
  .c-reading-bar__layer--next > .c-reading-bar__layer-wrapper {
    transform: translateY(-100%); }

:is(.c-reading-bar__layer--next, .c-reading-bar__layer--next > .c-reading-bar__layer-wrapper) {
  transition: var(--nb-transition); }
  .nb-header--next :is(.c-reading-bar__layer--next, .c-reading-bar__layer--next > .c-reading-bar__layer-wrapper) {
    transform: none; }

.c-reading-bar__layer-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: var(--nb-navigation-item-spacing);
       column-gap: var(--nb-navigation-item-spacing);
  padding: 0 var(--nb-wrapper-sides-spacings); }
  .c-reading-bar__layer-wrapper > :not(.c-reading-bar__title) {
    flex: 0 0 auto; }

.c-reading-bar__title {
  display: flex;
  margin-left: auto;
  margin-right: auto; }

@keyframes reading-bar-show-overflow {
  to {
    overflow: visible; } }

.nb-header .nb-header-row {
  overflow: hidden;
  animation: reading-bar-show-overflow 0s linear var(--nb-transition-duration) forwards; }

.nb-header .c-reading-bar {
  pointer-events: none; }

.nb-header .c-reading-bar__container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  transform: translateY(-100%); }

.nb-header .c-reading-bar__container,
.nb-header .nb-header-row__inner-container {
  transition: transform 0.5s ease;
  will-change: transform; }

.nb-header:is(.nb-header--next, .nb-header--reading) .nb-header-row {
  animation: none; }

.nb-header:is(.nb-header--next, .nb-header--reading) .c-reading-bar {
  pointer-events: auto; }

.nb-header:is(.nb-header--next, .nb-header--reading) .c-reading-bar__container {
  transform: translateY(0); }

.nb-header:is(.nb-header--next, .nb-header--reading) .nb-header-row .nb-header-row__inner-container {
  transform: translateY(100%);
  pointer-events: none; }

:is(.c-reading-bar, #specific) .wp-block-button__link {
  display: flex;
  padding: 0;
  border: 0;
  background-color: transparent;
  color: inherit; }
  :is(.c-reading-bar, #specific) .wp-block-button__link span {
    padding: 0;
    margin: 0; }
  :is(.c-reading-bar, #specific) .wp-block-button__link svg {
    display: none; }
  :is(.c-reading-bar, #specific) .wp-block-button__link:before {
    background-color: transparent; }

:is(.c-reading-bar, #specific) .wp-block-buttons {
  margin-top: 0; }

.c-reading-bar .post-title__label[class] {
  margin-bottom: 0; }

.c-reading-bar .post-title__post-name {
  margin-left: 5px; }

/*------------------------------------*\
  #MOBILE HEADER
\*------------------------------------*/
.nb-header--mobile {
  z-index: 2000;
  width: 100%;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--theme-spacing-fluid-smaller) var(--theme-wrapper-sides-spacing);
  --shadow-color: rgba(0, 0, 0, 0.25);
  --shadow-y-offset: 4px;
  --shadow-blur: 4px; }
  .nb-header--mobile:not([style*='fixed'])[class] {
    --header-background-opacity: 0; }
  .nb-header--mobile .menu-item--cart {
    display: flex;
    position: absolute;
    top: 50%;
    right: calc( var(--theme-wrapper-sides-spacing) + 0em);
    transform: translateY(-50%); }
    .nb-header--mobile .menu-item--cart > a {
      color: currentColor;
      transition: color .3s ease; }
    .nb-header--mobile .menu-item--cart .menu-item__label {
      display: none; }

@media only screen and (min-width: 1024px) {
  .nb-header__inner-container {
    padding-top: 0 !important; }
  .nb-header--mobile {
    display: none; } }

/**
 * Adjust the desktop Header for Mobile
 */
@media not screen and (min-width: 1024px) {
  .nb-header--main {
    margin-top: 0 !important; }
  .nb-header--main:before {
    --header-background-opacity: 0.97; }
  .nb-header--main :is(.nb-header-row--logo, .c-branding) {
    display: none !important; }
  .nb-header--main .menu:not(.menu--buttons) .menu-item--cart, .nb-header--main .menu:not(.menu--buttons)
  .menu-item--dark-mode, .nb-header--main .menu:not(.menu--buttons)
  .menu-item--search {
    display: none !important; }
  .nb-navigation .sub-menu {
    margin-left: calc(var(--theme-wrapper-sides-spacing) * -1);
    margin-right: calc(var(--theme-wrapper-sides-spacing) * -1); }
    .nb-navigation .sub-menu > li {
      padding-left: var(--theme-wrapper-sides-spacing);
      padding-right: var(--theme-wrapper-sides-spacing); }
  .nb-navigation > ul > li[class*="current"] {
    color: var(--nb-fg1-color); }
  .c-menu-toggle__checkbox:checked ~ .nb-header .nb-header__inner-container, .c-menu-toggle__checkbox:checked ~ .nb-header
  .nb-header__buttons-menu {
    opacity: 1;
    transition: opacity .3s ease .3s; }
  .c-menu-toggle__checkbox:not(:checked) ~ .nb-header .nb-header__inner-container, .c-menu-toggle__checkbox:not(:checked) ~ .nb-header
  .nb-header__buttons-menu {
    opacity: 0;
    transition: opacity .2s ease 0s; } }

.nb-header__buttons-menu {
  position: absolute;
  top: 0;
  right: 0;
  padding-left: var(--nb-wrapper-sides-spacings);
  padding-right: var(--nb-wrapper-sides-spacings); }
  .nb-header__buttons-menu .menu {
    display: flex;
    align-items: center; }
  @media only screen and (min-width: 1024px) {
    .nb-header__buttons-menu[class] {
      display: none; } }
  .nb-header__buttons-menu a {
    display: block;
    color: inherit; }
  .nb-header__buttons-menu .menu--buttons {
    list-style: none; }
    .nb-header__buttons-menu .menu--buttons li {
      position: relative; }
      .nb-header__buttons-menu .menu--buttons li[class][class] {
        margin-top: 0; }
      .nb-header__buttons-menu .menu--buttons li:not(:first-child) {
        margin-left: 1em; }

.nb-header--secondary {
  width: 100%;
  z-index: 2200;
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s ease-in; }
  .nb-header--secondary.is-visible {
    opacity: 1;
    pointer-events: auto; }
  .nb-header--secondary:after {
    opacity: 0.1; }
  .nb-header--secondary > .nb-header__inner-container:not(:only-child):last-child {
    position: absolute;
    z-index: -1;
    width: 100%;
    opacity: 0;
    pointer-events: none;
    transition: transform 0.2s ease 0s, opacity 0.1s ease 0.1s; }
  .nb-header--secondary:hover > .nb-header__inner-container:not(:only-child):last-child {
    opacity: 1;
    pointer-events: auto; }
  @media not screen and (min-width: 1024px) {
    .nb-header--secondary {
      display: none !important; } }
  .nb-header--secondary .nb-header-row[data-is-primary]:not([data-is-sticky]) {
    display: none; }
  .nb-header--secondary:not(.nb-header--reading):not(.nb-header--next):hover .nb-header-row[data-is-primary] {
    display: block; }

:root {
  --icons-size-multiplier: 1.3;
  --icons-horizontal-spacing-reducer: 2; }

@property --nb-header-vertical-spacing-multiplier {
  syntax: '<number>';
  /* <- defined as type number for the transition to work */
  initial-value: 1;
  inherits: true; }

:is(.nb-header-row, .specificity.x2.x3) {
  padding-top: 0;
  padding-bottom: 0; }
  :is(.nb-header-row, .specificity.x2.x3) .nb-header-row__inner-container > .wp-block {
    --nb-wrapper-sides-spacings: calc(var(--nb-spacing) * var(--nb-header-sides-spacing-setting, 50) * 2 / 100);
    padding-top: calc(var(--nb-emphasis-top-spacing) * var(--nb-current-spacing) * var(--nb-spacing-multiplier-override, 1) * var(--nb-header-vertical-spacing-multiplier, 1));
    padding-bottom: calc(var(--nb-emphasis-bottom-spacing) * var(--nb-current-spacing) * var(--nb-spacing-multiplier-override, 1) * var(--nb-header-vertical-spacing-multiplier, 1)); }

.nb-header[class] {
  width: 100%;
  --nb-navigation-item-spacing: calc(var(--nb-navigation-item-spacing-setting) * var(--nb-spacing) * 2 / 100); }
  @media only screen and (min-width: 1024px) {
    .nb-header[class] :is(.nb-header-row, #specific) {
      transition: --nb-header-vertical-spacing-multiplier .15s ease-out, transform .5s ease; }
    .nb-header[class]:is(.nb-header--sticky, .nb-header--secondary) .nb-header-row {
      --nb-header-vertical-spacing-multiplier: var(--nb-sticky-header-spacing-multiplier, 1); } }

@media only screen and (min-width: 1024px) {
  .nb-header--transparent {
    --header-background-opacity: 0; }
    .nb-header--transparent.nb-header--sticky .nb-header-row {
      --header-background-opacity: 0.95; } }

:is(.nb-header, .nb-header--mobile, #more.specific) {
  --nb-block-top-spacing: 0; }

@media only screen and (min-width: 1024px) {
  .nb-header--mobile {
    display: none; } }

.nb-header--mobile.nb-header--scrolled {
  color: var(--sm-current-fg2-color, var(--nb-fg2-color)); }

@media not screen and (min-width: 1024px) {
  .nb-header__inner-container {
    display: flex;
    flex-direction: column; }
    .nb-header__inner-container > .nb-header-row--primary {
      order: -1; } }

@media only screen and (min-width: 1024px) {
  .nb-header--main {
    top: 0;
    left: 0;
    right: 0;
    z-index: 2001;
    transition: var(--theme-transition);
    transition-property: opacity; }
  .nb-header__inner-container {
    width: 100%; } }

@media not screen and (min-width: 1024px) {
  .nb-header--main[class] {
    --sm-current-bg-color: var(--sm-bg-color-5);
    --sm-current-accent-color: var(--sm-accent-color-5);
    --sm-current-fg1-color: var(--sm-fg1-color-5);
    --sm-current-fg2-color: var(--sm-fg2-color-5); }
    .nb-header--main[class].nb-header-background:before {
      position: fixed; }
  .nb-header {
    display: none;
    overflow-y: auto;
    left: 0;
    z-index: 2100; }
    .c-menu-toggle__checkbox ~ .nb-header {
      display: block; }
    .c-menu-toggle__checkbox:not(:checked) ~ .nb-header, .c-menu-toggle__checkbox:not(:checked) ~ .nb-header:before {
      left: -100%; } }

@media not screen and (min-width: 1024px) {
  .nb-header, .nb-header:before {
    transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
  .c-menu-toggle__slice {
    transition: transform 0.3s ease; }
  .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--top {
    transform: rotate(45deg); }
  .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--middle {
    opacity: 0; }
  .c-menu-toggle__checkbox:checked ~ .c-menu-toggle .c-menu-toggle__slice--bottom {
    transform: rotate(-45deg); } }

:where(.nb-header-background) {
  position: relative;
  background: none !important; }
  :where(.nb-header-background):before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: var(--sm-current-bg-color, var(--nb-bg-color));
    opacity: var(--header-background-opacity, 1);
    transition: var(--nb-transition);
    transition-property: opacity; }

:where(.nb-header-shadow) {
  --header-shadow-opacity: 0; }
  :where(.nb-header-shadow).nb-header--sticky {
    --header-shadow-opacity: 0.1; }
  :where(.nb-header-shadow):after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: var(--shadow-color, #000000) 0 var(--shadow-y-offset, 0.0625em) var(--shadow-blur, 0.125em);
    opacity: var(--header-shadow-opacity, 0);
    pointer-events: none;
    transition: var(--nb-transition);
    transition-property: opacity;
    z-index: -1; }

.nb-header:not(.nb-header--ready) {
  opacity: 0;
  --header-background-opacity: 0; }

.nb-header--mobile.nb-header--transparent {
  --header-background-opacity: 0; }
  .nb-header--mobile.nb-header--transparent.nb-header--sticky {
    --header-background-opacity: 0.95; }

/**
 * Badges for Menu Items
 *
 * Impose a few custom font rules outside of the Design System tokens.
 * Uppercase and letter-spacing helps small font sizes (10-11px) to be legible.
 *
 * @todo: uppercase it's not working well with serif typefaces and we need to
 * find a way to pass some exceptions based on font family
 */
.menu-item-label {
  border: none;
  padding: .21em .6em 0.23em;
  background-color: var(--sm-current-accent-color);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0.6), rgba(0, 0, 0, 0.3));
  background-blend-mode: hue;
  color: #FFFFFF;
  border-radius: 1em;
  border: none;
  --font-size-modifier: 0.7;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 0.03em;
  vertical-align: middle;
  margin-left: var(--navigation-item-sub-elements-spacing); }

.nb-header-neighbour.nb-supernova--card-layout-stacked.nb-supernova--1-columns.nb-supernova--align-full .nb-supernova-item__media-wrapper:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.03) calc(2 * var(--nb-header-height, 0px)), rgba(0, 0, 0, 0) 100%);
  pointer-events: none; }
