@layer molecules {
  .cta {
    font-family: "Inter", sans-serif;
    font-size: var(--button-font-size);
    line-height: var(--button-line-height);
    font-weight: var(--button-weight);
    letter-spacing: var(--button-letter-spacing); 
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
    gap: var(--xs-1);
    outline: none;
    border: none;
    text-decoration: none;
    transition: all 300ms ease-out;
    background: var(--ui-buttons-primary-bg);
    color: var(--ui-buttons-primary-text);
    padding: var(--ui-buttons-primary-padding-top-bottom) var(--ui-buttons-primary-padding-left-right);
    border-radius: var(--ui-buttons-primary-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-primary-border-weight) * 1px) var(--ui-buttons-primary-border-colour);
  }
  .cta__icon {
    font-size: var(--icon-m);
    line-height: var(--icon-m);
    color: var(--ui-buttons-primary-icon);
    transition: all 300ms ease-out;
  }
  .cta:hover, .cta:focus-visible {
    background: var(--ui-buttons-primary-hover-bg);
    color: var(--ui-buttons-primary-hover-text);
  }
  .cta:hover .cta__icon, .cta:focus-visible .cta__icon {
    color: var(--ui-buttons-primary-hover-icon);
  }
  .cta:hover {
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-primary-border-weight) * 1px) var(--ui-buttons-primary-hover-border);
  }
  .cta:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
  }
  .cta--secondary {
    background: var(--ui-buttons-secondary-bg);
    color: var(--ui-buttons-secondary-text);
    padding: var(--ui-buttons-secondary-padding-top-bottom) var(--ui-buttons-secondary-padding-left-right);
    border-radius: var(--ui-buttons-secondary-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-secondary-border-weight) * 1px) var(--ui-buttons-secondary-border-colour);
  }
  .cta--secondary .cta__icon {
    color: var(--ui-buttons-secondary-icon);
  }
  .cta--secondary:hover, .cta--secondary:focus-visible {
    background: var(--ui-buttons-secondary-hover-bg);
    color: var(--ui-buttons-secondary-hover-text);
  }
  .cta--secondary:hover .cta__icon, .cta--secondary:focus-visible .cta__icon {
    color: var(--ui-buttons-secondary-hover-icon);
  }
  .cta--secondary:hover {
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-secondary-border-weight) * 1px) var(--ui-buttons-secondary-hover-border);
  }
  .cta--secondary:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
  }
  .cta--text-link {
    padding: 0;
    background: transparent;
    color: var(--ui-buttons-link-text);
    box-shadow: none;
    justify-content: start;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .cta--text-link .cta__icon {
    color: var(--ui-buttons-link-icon);
  }
  .cta--text-link:hover, .cta--text-link:focus-visible {
    background: transparent;
    color: var(--ui-buttons-link-hover-text);
  }
  .cta--text-link:hover .cta__label, .cta--text-link:focus-visible .cta__label {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .cta--text-link:hover .cta__icon, .cta--text-link:focus-visible .cta__icon {
    color: var(--ui-buttons-link-hover-icon);
  }
  .cta--text-link:focus-visible {
    outline: solid calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
    box-shadow: none;
  }
  .surface-card.card-bg:hover .cta--text-link {
    color: var(--card-hover-fg);
  }
  .surface-card.card-bg:hover .cta--text-link .cta__icon {
    color: var(--card-hover-fg);
  }
  .cta--overlay-card::before {
    content: "";
    position: absolute;
    inset: 0;
  }
  @media (min-width: 576px) {
    .cta {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      max-width: 100%;
    }
  }
  .action-button {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    text-align: center;
    text-decoration: none;
    padding: var(--ui-action-buttons-padding);
    font-size: var(--icon-m);
    line-height: var(--icon-m);
    font-weight: var(--button-weight);
    background-color: var(--ui-action-buttons-bg);
    color: var(--ui-action-buttons-icon);
    border-radius: var(--ui-action-buttons-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-action-buttons-border-weight) * 1px) var(--ui-action-buttons-border-colour);
    outline: none;
    border: none;
    transition: all 0.25s;
  }
  .action-button:hover, .action-button:focus-visible {
    background-color: var(--ui-action-buttons-hover-bg);
    color: var(--ui-action-buttons-hover-icon);
  }
  .action-button:hover {
    box-shadow: inset 0 0 0 calc(var(--ui-action-buttons-border-weight) * 1px) var(--ui-action-buttons-hover-border);
  }
  .action-button:focus-visible {
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
    outline: none;
  }
  .logo-container {
    width: 14rem;
    height: 7rem;
  }
  .logo-container__image {
    max-width: 100%;
  }
  @media (min-width: 992px) {
    .logo-container {
      width: 19.2rem;
      height: 9.6rem;
    }
  }
  .tag-text {
    background-color: var(--ui-category-tags-bg);
    color: var(--ui-category-tags-text);
    padding: var(--ui-category-tags-padding);
    box-shadow: inset 0 0 0 calc(var(--ui-category-tags-border-weight) * 1px) var(--ui-category-tags-border-colour);
    border-radius: var(--ui-category-tags-border-radius);
    text-decoration: none;
    transition: all 0.25s;
  }
  .tag-text[href]:hover {
    background-color: var(--ui-category-tags-hover-bg);
    color: var(--ui-category-tags-hover-text);
    box-shadow: inset 0 0 0 calc(var(--ui-category-tags-border-weight) * 1px) var(--ui-category-tags-hover-border);
    outline: none;
  }
  .tag-text[href]:focus-visible {
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
    outline: none;
  }
  .tag-text--utility {
    padding: 0;
    box-shadow: none;
  }
  .arrow-button {
    font-size: var(--icon-m);
    line-height: var(--icon-m);
    padding: var(--ui-pagination-arrows-fill-padding);
    background-color: var(--ui-pagination-arrows-fill-bg);
    color: var(--ui-pagination-arrows-fill-icon);
    border-radius: var(--ui-pagination-arrows-fill-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-pagination-arrows-fill-border-weight) * 1px) var(--ui-pagination-arrows-fill-border-colour);
    border: none;
    transition: all 0.25s;
  }
  .arrow-button:hover {
    background-color: var(--ui-pagination-arrows-fill-hover-bg);
    color: var(--ui-pagination-arrows-fill-hover-icon);
  }
  .arrow-button:focus-visible {
    background-color: var(--ui-pagination-arrows-fill-hover-bg);
    color: var(--ui-pagination-arrows-fill-hover-icon);
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
    outline: none;
  }
  .arrow-button:disabled, .arrow-button.swiper-button-disabled {
    color: var(--ui-pagination-arrows-fill-icon-disabled);
    background-color: var(--ui-pagination-arrows-fill-bg-disabled);
  }
  .arrow-button:disabled:hover, .arrow-button.swiper-button-disabled:hover {
    box-shadow: none;
  }
  .arrow-button--transparent {
    padding: var(--ui-pagination-arrows-transparent-padding);
    background-color: transparent;
    color: var(--ui-pagination-arrows-transparent-icon);
    border-radius: var(--ui-pagination-arrows-transparent-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-pagination-arrows-transparent-border-weight) * 1px) var(--ui-pagination-arrows-transparent-border-colour);
  }
  .arrow-button--transparent:hover {
    background-color: transparent;
    color: var(--ui-pagination-arrows-transparent-hover-icon);
    box-shadow: inset 0 0 0 calc(var(--ui-pagination-arrows-transparent-border-weight) * 1px) var(--ui-pagination-arrows-transparent-hover-border);
  }
  .arrow-button--transparent:focus-visible {
    background-color: transparent;
    color: var(--ui-pagination-arrows-transparent-hover-icon);
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
    outline: none;
  }
  .arrow-button--transparent:disabled, .arrow-button--transparent.swiper-button-disabled {
    color: var(--ui-pagination-arrows-transparent-icon-disabled);
    background-color: transparent;
  }
  .arrow-button--transparent:disabled:hover, .arrow-button--transparent.swiper-button-disabled:hover {
    box-shadow: none;
  }
  .pagination > div {
    gap: var(--ui-pagination-numbers-gap);
  }
  .pagination__item {
    color: var(--ui-pagination-numbers-colour);
    text-decoration: underline;
    border: none;
    background: transparent;
    outline: none;
    padding: 0;
    transition: all 0.25s;
  }
  .pagination__item:hover {
    color: var(--ui-pagination-numbers-hover);
  }
  .pagination__item:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: 1px;
  }
  .pagination__item.active {
    font-weight: var(--button-weight);
    color: var(--ui-pagination-numbers-active-colour);
    text-decoration: none;
  }
  .pagination__item.truncation {
    text-decoration: none;
  }
  .carousel-lines {
    gap: var(--ui-pagination-carousel-lines-gap);
  }
  .carousel-lines > div {
    gap: var(--ui-pagination-carousel-lines-gap);
  }
  .carousel-lines span {
    position: relative;
    height: 1.2rem;
    width: var(--ui-pagination-carousel-lines-width);
    cursor: pointer;
    background: transparent;
    opacity: 1;
    transition: all 0.25s;
    margin: 0;
  }
  .carousel-lines span::after {
    content: "";
    position: absolute;
    width: 100%;
    height: var(--ui-pagination-carousel-lines-height);
    inset-inline-start: 0;
    top: calc(50% - var(--ui-pagination-carousel-lines-height) / 2);
    background-color: var(--ui-pagination-carousel-lines-colour);
    border-radius: var(--ui-pagination-carousel-lines-border-radius);
    transition: all 0.25s;
  }
  .carousel-lines span:hover::after {
    background: var(--ui-pagination-carousel-lines-hover);
  }
  .carousel-lines span:focus-visible {
    border-radius: 0;
  }
  .carousel-lines span.active, .carousel-lines span.swiper-pagination-bullet-active {
    width: var(--ui-pagination-carousel-lines-active-width);
  }
  .carousel-lines span.active::after, .carousel-lines span.swiper-pagination-bullet-active::after {
    background: var(--ui-pagination-carousel-lines-active-colour);
  }
  .carousel-arrow {
    gap: var(--ui-pagination-carousel-arrows-text-arrow-gap);
  }
  .carousel-arrow__buttons {
    gap: var(--ui-pagination-carousel-arrows-arrow-gap);
  }
  .breadcrumb__list {
    list-style-type: none;
    margin-bottom: 0;
    padding: 0;
    gap: var(--ui-breadcrumb-gap);
  }
  .breadcrumb__list li {
    position: relative;
    -webkit-padding-end: calc(var(--ui-breadcrumb-gap) + var(--icon-m));
            padding-inline-end: calc(var(--ui-breadcrumb-gap) + var(--icon-m));
    white-space: nowrap;
  }
  .breadcrumb__list li::after {
    content: "\e91f";
    font-family: icomoon;
    position: absolute;
    inset-inline-end: 0;
    top: 0;
    font-size: var(--icon-m);
    line-height: var(--icon-m);
    transform: scaleX(var(--dir));
    color: var(--ui-breadcrumb-arrow);
  }
  .breadcrumb__list li:first-child {
    -webkit-padding-start: 0;
            padding-inline-start: 0;
  }
  .breadcrumb__list li:last-child .breadcrumb-text {
    font-weight: var(--breadcrumb-active-weight);
    text-decoration-thickness: auto;
    text-decoration-line: underline;
    text-decoration-color: var(--secondary-3-500);
  }
  .breadcrumb__list li:last-child::after {
    display: none;
  }
  .breadcrumb__list li:last-child a,
  .breadcrumb__list li:last-child span {
    text-decoration: none;
    pointer-events: none;
    font-weight: var(--breadcrumb-active-weight);
    color: var(--ui-breadcrumb-active-text);
  }
  .breadcrumb__list li a {
    color: var(--ui-breadcrumb-text);
    transition: color 0.25s;
  }
  .breadcrumb__list li a:hover {
    color: var(--ui-breadcrumb-hover-text);
  }
  .breadcrumb__list li a:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: var(--xs-1);
    color: var(--ui-breadcrumb-hover-text);
  }
  .breadcrumb__inner {
    scrollbar-width: none;
    overflow: auto hidden;
  }
  @media (min-width: 768px) {
    .breadcrumb__inner {
      overflow: visible;
    }
  }
  .share {
    width: 11.7rem;
  }
  .share.open .share__link {
    transform: translateX(calc(-100% * var(--dir)));
  }
  .share.open .share__wrapper {
    width: 100%;
  }
  .share__link {
    border: none;
    background: var(--ui-buttons-secondary-bg);
    color: var(--ui-buttons-secondary-text);
    border-radius: var(--ui-buttons-secondary-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-secondary-border-weight) * 1px) var(--ui-buttons-secondary-border-colour);
    transition: transform 0.3s ease, background 0.25s, color 0.25s, box-shadow 0.25s;
  }
  .share__link:hover {
    background: var(--ui-buttons-secondary-hover-bg);
    color: var(--ui-buttons-secondary-hover-text);
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-secondary-border-weight) * 1px) var(--ui-buttons-secondary-hover-border);
  }
  .share__link:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 calc(var(--general-focus-border-weight) * 1px) var(--general-focus-border);
  }
  .share__wrapper {
    border: none;
    width: 10%;
    background: var(--ui-buttons-secondary-bg);
    color: var(--ui-buttons-secondary-text);
    border-radius: var(--ui-buttons-secondary-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-buttons-secondary-border-weight) * 1px) var(--ui-buttons-secondary-border-colour);
    transition: width 0.3s ease;
  }
  .back-to-top {
    background-color: var(--ui-back-to-top-bg);
    border: none;
    border-radius: var(--ui-back-to-top-border-radius);
    box-shadow: inset 0 0 0 calc(var(--ui-back-to-top-border-weight) * 1px) var(--ui-back-to-top-border-colour);
    padding: var(--ui-back-to-top-padding);
    position: fixed;
    inset-inline-end: var(--sm-2);
    bottom: var(--sm-2);
    z-index: 5;
    visibility: hidden;
    opacity: 0;
    transition: all 0.25s;
  }
  .back-to-top__icon {
    font-size: var(--icon-m);
    height: var(--icon-m);
    color: var(--ui-back-to-top-icon);
  }
  .back-to-top__label {
    display: none;
    color: var(--ui-back-to-top-text);
  }
  @media (min-width: 1200px) {
    .back-to-top__label {
      display: block;
      max-width: 0;
      overflow: hidden;
      white-space: nowrap;
      transition: all 0.25s ease-out;
      transition-delay: 0s;
    }
    .back-to-top:hover .back-to-top__label {
      max-width: 30rem;
      transition: all 0.25s ease-in;
    }
  }
  .page-down .back-to-top {
    visibility: visible;
    opacity: 1;
  }
  .popover-modal {
    border: none;
    padding: 0;
    margin: auto;
    overflow: auto;
    background: transparent;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    display: none;
    align-items: center;
    justify-content: center;
  }
  .popover-modal:popover-open {
    display: flex;
  }
  .popover-modal::backdrop {
    background: rgba(0, 0, 0, 0.5);
  }
  .popover-modal__header {
    border-bottom: solid 1px var(--panel-border-colour);
  }
  .popover-modal__close {
    flex-shrink: 0;
    font-size: var(--icon-l);
    line-height: var(--icon-l);
    background: transparent;
    color: var(--panel-utility);
    cursor: pointer;
    padding: 0;
  }
  .popover-modal__dialog {
    width: 100%;
    pointer-events: none;
    margin: auto;
  }
  .popover-modal__body {
    padding-bottom: var(--md-4);
  }
  .popover-modal__content {
    pointer-events: auto;
  }
  .footer-links ul {
    padding: 0;
  }
  .footer-links ul li {
    list-style-type: none;
  }
  .footer-links ul li a {
    color: var(--footer-link);
  }
  .footer-links ul li a:hover {
    color: var(--footer-link-hover);
  }
  .footer-links ul li a:focus {
    outline: solid 2px var(--footer-link-hover);
    outline-offset: 2px;
  }
  .quick-links__headline {
    color: var(--footer-heading);
  }
  .quick-links ul li {
    list-style-type: none;
    margin-bottom: var(--xs-1);
  }
  .quick-links ul li a {
    color: var(--footer-link);
  }
  .quick-links ul li a:hover {
    color: var(--footer-link-hover);
  }
  .quick-links ul li a:focus {
    outline: solid 2px var(--footer-link-hover);
    outline-offset: 2px;
  }
  .quick-links ul li:last-child {
    margin-bottom: 0;
  }
  .copyright-text {
    color: var(--footer-copyright);
  }
  .social-links img {
    inset-inline-start: 0;
  }
  .social-links a {
    color: var(--footer-social);
  }
  .social-links a:hover {
    color: var(--footer-social-hover);
  }
  .social-links a:focus {
    outline: solid 2px var(--footer-social-hover);
    outline-offset: 2px;
  }
  .footer-signpost__headline {
    color: var(--footer-heading);
  }
}
@layer molecules {
  .header-search__trigger {
    -webkit-margin-start: var(--sm-2);
            margin-inline-start: var(--sm-2);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    padding: var(--header-main-buttons-padding);
    background: var(--header-main-buttons-bg);
    border: none;
    cursor: pointer;
    color: var(--header-main-buttons-icon);
    border-radius: var(--header-main-buttons-border-radius);
    transition: background 0.2s ease, color 0.2s ease;
  }
  .header-search__trigger:hover {
    background: var(--header-main-buttons-hover-bg);
    color: var(--header-main-buttons-hover-icon);
  }
  .header-search__trigger:focus-visible {
    outline: 2px solid var(--header-main-buttons-icon);
    outline-offset: -2px;
  }
  .header-search__overlay {
    position: absolute;
    inset-inline-start: 0;
    top: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--header-main-search-panel-bg);
    box-shadow: 0 var(--header-main-search-panel-shadow-offset) var(--header-main-search-panel-shadow-blur) var(--header-main-search-panel-shadow);
    border-radius: 0 0 var(--header-main-search-panel-radius) var(--header-main-search-panel-radius);
    z-index: 60;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  }
  .header-search__overlay.header-search__overlay--visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .header-search__overlay-inner {
    width: 100%;
    padding: var(--sm-3) var(--md-3);
  }
  .header-search__input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
  }
  .header-search__input {
    width: 100%;
    border: 0;
    border-bottom: calc(var(--header-main-search-panel-input-field-border-weight) * 1px) solid var(--header-main-search-panel-input-field-border);
    background: var(--header-main-search-panel-input-field-bg);
    border-radius: var(--header-main-search-panel-input-field-border-radius);
    color: var(--header-main-search-panel-active-text);
    padding: var(--header-main-search-panel-input-field-padding) var(--md-3);
    -webkit-padding-end: 8rem;
            padding-inline-end: 8rem;
    transition: border-color 0.2s ease, background 0.2s ease;
  }
  .header-search__input:hover {
    border-bottom-color: var(--header-main-search-panel-input-field-hover-border);
    background: var(--header-main-search-panel-input-field-hover-bg);
  }
  .header-search__input:focus {
    outline: none;
    border-bottom-color: var(--header-main-search-panel-input-field-hover-border);
  }
  .header-search__input::-moz-placeholder {
    color: var(--header-main-search-panel-active-text);
  }
  .header-search__input::placeholder {
    color: var(--header-main-search-panel-active-text);
  }
  .header-search__search-btn {
    position: absolute;
    inset-inline-end: 4rem;
    border: none;
    background: transparent;
    color: var(--header-main-search-panel-input-field-icon);
    cursor: pointer;
    padding: var(--xs-1);
    transition: color 0.2s ease;
  }
  .header-search__search-btn:hover {
    color: var(--header-main-search-panel-input-field-active-text);
  }
  .header-search__search-btn:focus-visible {
    outline: 2px solid var(--header-main-search-panel-input-field-active-text);
  }
  .header-search__close-btn {
    position: absolute;
    inset-inline-end: 0;
    background: transparent;
    border: 0;
    color: var(--header-main-search-panel-input-field-icon);
    cursor: pointer;
    padding: var(--xs-1);
    transition: color 0.2s ease;
  }
  .header-search__close-btn:hover {
    color: var(--header-main-search-panel-input-field-active-text);
  }
  .header-search__close-btn:focus-visible {
    outline: 2px solid var(--header-main-search-panel-input-field-active-text);
  }
  .header-search__results {
    padding-top: var(--sm-1);
    padding-bottom: var(--sm-1);
  }
  .header-search__results-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .header-search__results-item {
    margin-bottom: var(--xs-1);
  }
  .header-search__results-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--header-main-search-panel-text);
    gap: var(--xs-1);
    padding: var(--xs-2);
    border: 1px solid transparent;
    width: 100%;
    transition: background 0.2s ease;
  }
  .header-search__results-link:hover {
    background: var(--header-main-search-panel-hover-bg);
  }
  .header-search__results-link:focus-visible {
    border: 1px solid var(--header-main-search-panel-active-text);
  }
  .header-search__results-link .icon {
    color: var(--header-main-search-panel-icon);
  }
  .header-search__results-link span {
    color: var(--header-main-search-panel-text);
  }
  .header-search__results-link span b {
    color: var(--header-main-search-panel-active-text);
    font-weight: 500;
  }
  .header-search__results-link span strong {
    font-weight: 500;
  }
  .header-search__heading {
    color: var(--header-main-search-panel-heading);
  }
  @media (max-width: 767.98px) {
    .header-search__overlay-inner {
      padding: var(--sm-2) var(--sm-3);
    }
    .header-search__input {
      padding: var(--sm-2) var(--sm-3);
      -webkit-padding-end: 7rem;
              padding-inline-end: 7rem;
    }
  }
}
@layer molecules {
  .menu-top-bar {
    background: var(--header-top-top-bar-bg);
  }
  .menu-top-bar--mobile-only {
    display: none;
  }
  .menu-top-bar__row {
    position: relative;
    z-index: 210;
    background: var(--header-top-top-bar-bg);
  }
  .menu-top-bar__row--no-background {
    background: transparent;
  }
  @media (max-width: 1199.98px) {
    .menu-top-bar__row {
      display: none;
    }
    .menu-top-bar__row.menu-top-bar--mobile-only {
      display: block;
    }
  }
}
@layer molecules {
  .menu-language {
    position: relative;
  }
  .menu-language__trigger {
    display: flex;
    align-items: center;
    gap: var(--header-top-language-switcher-gap);
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--header-top-language-switcher-text);
    padding: 0;
    transition: color 0.2s ease;
  }
  .menu-language__trigger:hover {
    color: var(--header-top-language-switcher-hover-text);
  }
  .menu-language__trigger:hover .menu-language__icon {
    color: var(--header-top-language-switcher-hover-icon);
  }
  .menu-language__trigger:focus-visible {
    outline: 2px solid var(--header-top-language-switcher-text);
    outline-offset: 2px;
  }
  .menu-language__icon {
    transition: transform 0.2s ease, color 0.2s ease;
    color: var(--header-top-language-switcher-icon);
  }
  .menu-language__dropdown {
    position: absolute;
    top: 100%;
    inset-inline-end: 0;
    min-width: 14rem;
    background: var(--header-top-language-switcher-dropdown-bg);
    border: calc(var(--header-top-language-switcher-dropdown-border-weight) * 1px) solid var(--header-top-language-switcher-dropdown-border);
    box-shadow: 0 var(--header-top-language-switcher-dropdown-shadow-offset) var(--header-top-language-switcher-dropdown-shadow-blur) var(--header-top-language-switcher-dropdown-shadow);
    border-radius: var(--header-top-language-switcher-dropdown-border-radius);
    padding: var(--header-top-language-switcher-dropdown-padding-top-bottom) 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: 999999;
    list-style: none;
    margin: 0;
  }
  .menu-language.menu-language--open .menu-language__dropdown {
    opacity: 1;
    visibility: visible;
  }
  .menu-language.menu-language--open .menu-language__icon {
    transform: rotate(180deg);
  }
  .menu-language__option-item {
    margin: 0;
    padding: 0;
  }
  .menu-language__option {
    display: block;
    padding: var(--header-top-language-switcher-dropdown-padding-top-bottom) var(--header-top-language-switcher-dropdown-padding-left-right);
    color: var(--header-top-language-switcher-dropdown-text);
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
  }
  .menu-language__option:hover {
    color: var(--header-top-language-switcher-dropdown-hover-text);
    background: var(--header-top-language-switcher-dropdown-hover-bg);
  }
  .menu-language__option:focus-visible {
    outline: 2px solid var(--header-top-language-switcher-dropdown-text);
    outline-offset: -2px;
  }
  .menu-language__option.menu-language__option--active {
    color: var(--header-top-language-switcher-dropdown-active-text);
    font-weight: var(--primitive-weight-bold);
  }
}
@layer molecules {
  .menu-hamburger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    width: 4rem;
    height: 4rem;
    padding: var(--header-main-buttons-padding);
    background: var(--header-main-buttons-bg);
    border: none;
    cursor: pointer;
    border-radius: var(--header-main-buttons-border-radius);
    transition: background 0.2s ease;
  }
  .menu-hamburger:hover {
    background: var(--header-main-buttons-hover-bg);
  }
  .menu-hamburger:focus-visible {
    outline: 2px solid var(--header-main-buttons-icon);
    outline-offset: -2px;
  }
  .menu-hamburger__line {
    display: block;
    width: 2rem;
    height: 0.2rem;
    background: var(--header-main-buttons-icon);
    border-radius: var(--radius-xs);
    transition: transform 0.3s ease, opacity 0.3s ease;
  }
  .menu-hamburger--active .menu-hamburger__line:nth-child(1) {
    transform: translateY(0.7rem) rotate(45deg);
  }
  .menu-hamburger--active .menu-hamburger__line:nth-child(2) {
    opacity: 0;
  }
  .menu-hamburger--active .menu-hamburger__line:nth-child(3) {
    transform: translateY(-0.7rem) rotate(-45deg);
  }
  @media (max-width: 1199.98px) {
    .menu-hamburger {
      display: flex;
    }
  }
}
@layer molecules {
  .secondary-nav ul {
    display: flex;
    align-items: center;
    gap: var(--header-top-nav-gap);
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .secondary-nav a {
    display: inline-block;
    color: var(--header-top-nav-text);
    text-decoration: none;
    padding: var(--header-top-nav-padding-top-bottom) var(--header-top-nav-padding-left-right);
    border-bottom: calc(var(--header-top-nav-active-indicator-weight) * 1px) solid transparent;
    transition: color 0.2s ease, border-color 0.2s ease;
  }
  .secondary-nav a:hover {
    color: var(--header-top-nav-hover-text);
  }
  .secondary-nav a:focus-visible {
    outline: 2px solid var(--header-top-nav-text);
    outline-offset: 2px;
  }
  .secondary-nav li.active a,
  .secondary-nav a[aria-current] {
    color: var(--header-top-nav-active-text);
    border-bottom-color: var(--header-top-nav-active-indicator);
  }
}
@layer molecules {
  .mob-drawer {
    display: none;
    position: fixed;
    top: var(--mob-drawer-header-h, 0);
    inset-inline-start: 0;
    width: 100%;
    height: calc(100vh - var(--mob-drawer-header-h, 0));
    z-index: 200;
    pointer-events: none;
  }
  .mob-drawer--open {
    pointer-events: auto;
  }
  .mob-drawer--open .mob-drawer__backdrop {
    opacity: 1;
  }
  .mob-drawer--open .mob-drawer__drawer {
    transform: translateX(0);
  }
  .mob-drawer__backdrop {
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 100%;
    background: var(--dark-50);
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }
  .mob-drawer__drawer {
    position: absolute;
    top: 0;
    inset-inline-end: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    background: var(--menu-bg);
    box-shadow: -0.4rem 0 var(--menu-shadow-blur) 0 var(--menu-shadow);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    overflow: hidden;
  }
  .mob-drawer__panels {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .mob-drawer__panel {
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 100%;
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .mob-drawer .mob-drawer__panel--active {
    transform: translateX(0);
  }
  .mob-drawer .mob-drawer__panel--prev {
    transform: translateX(-100%);
  }
  .mob-drawer__panel-scroll {
    padding: 0;
  }
  .mob-drawer__back {
    display: flex;
    align-items: center;
    gap: var(--xs-2);
    padding: var(--sm-2) var(--sm-3);
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--menu-item-item-text);
    transition: background 0.2s ease;
  }
  .mob-drawer__back .icon {
    color: var(--menu-item-item-icon);
  }
  .mob-drawer__back:hover {
    background: var(--menu-item-hover-item-bg);
  }
  .mob-drawer__back:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: calc(var(--general-focus-border-weight) * -1px);
    background: var(--menu-item-hover-item-bg);
  }
  .mob-drawer__panel-title {
    padding: var(--xs-2) var(--sm-3) var(--sm-2);
    margin: 0;
    color: var(--menu-item-item-text);
  }
  .mob-drawer__list {
    list-style: none;
    margin: var(--sm-2) 0 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--sm-3);
  }
  .mob-drawer__link {
    display: block;
    padding: var(--sm-4) var(--sm-3);
    color: var(--menu-item-item-text);
    text-decoration: none;
    transition: background 0.2s ease;
  }
  .mob-drawer__link:hover {
    background: var(--menu-item-hover-item-bg);
    color: var(--menu-item-hover-item-text);
  }
  .mob-drawer__link:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: calc(var(--general-focus-border-weight) * -1px);
    background: var(--menu-item-hover-item-bg);
  }
  .mob-drawer__drill {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: var(--sm-4) var(--sm-3);
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--menu-item-item-text);
    text-align: left;
    transition: background 0.2s ease;
  }
  .mob-drawer__drill:hover {
    background: var(--menu-item-hover-item-bg);
    color: var(--menu-item-hover-item-text);
  }
  .mob-drawer__drill:hover .mob-drawer__drill-icon {
    color: var(--menu-item-hover-item-icon);
  }
  .mob-drawer__drill:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: calc(var(--general-focus-border-weight) * -1px);
    background: var(--menu-item-hover-item-bg);
  }
  .mob-drawer__drill-icon {
    flex-shrink: 0;
    color: var(--menu-item-item-icon);
  }
  .mob-drawer .mob-drawer__item--active > .mob-drawer__link {
    background: var(--menu-item-active-item-bg);
    color: var(--menu-item-active-item-text);
  }
  .mob-drawer .mob-drawer__item--active > .mob-drawer__drill {
    background: var(--menu-item-active-item-bg);
    color: var(--menu-item-active-item-text);
  }
  .mob-drawer .mob-drawer__item--active > .mob-drawer__drill .mob-drawer__drill-icon {
    color: var(--menu-item-active-item-icon);
  }
  .mob-drawer__accordion-icon {
    flex-shrink: 0;
    color: var(--menu-item-item-icon);
    transition: transform 0.3s ease;
  }
  .mob-drawer__accordion-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
  }
  .mob-drawer .mob-drawer__list--nested {
    margin-top: 0;
    -webkit-padding-start: var(--sm-2);
            padding-inline-start: var(--sm-2);
  }
  .mob-drawer .mob-drawer__drill[data-mob-drawer-accordion-trigger][aria-expanded=true] {
    background: var(--menu-item-active-item-bg);
  }
  .mob-drawer .mob-drawer__drill[data-mob-drawer-accordion-trigger][aria-expanded=true] .mob-drawer__accordion-icon {
    transform: rotate(180deg);
  }
  .mob-drawer[data-mob-drawer-mode=accordion] .mob-drawer__panel {
    position: static;
    transform: none;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .mob-drawer[data-mob-drawer-mode=accordion] .mob-drawer__panel:not(.mob-drawer__panel--active) {
    display: none;
  }
  .mob-drawer[data-mob-drawer-mode=accordion] .mob-drawer__back,
  .mob-drawer[data-mob-drawer-mode=accordion] .mob-drawer__panel-title {
    display: none;
  }
  .mob-drawer__secondary {
    padding-top: var(--sm-2);
  }
  .mob-drawer__secondary ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--sm-3);
  }
  .mob-drawer__secondary a {
    display: block;
    padding: var(--sm-4) var(--sm-3);
    text-decoration: none;
    color: var(--header-top-nav-text);
    font-family: var(--nav-s-font-family);
    font-size: var(--nav-s-font-size);
    line-height: var(--nav-s-line-height);
    font-weight: var(--nav-s-weight);
    letter-spacing: var(--nav-s-letter-spacing);
    transition: color 0.2s ease;
  }
  .mob-drawer__secondary a:hover {
    color: var(--header-top-nav-hover-text);
  }
  .mob-drawer__secondary a:focus-visible {
    outline: calc(var(--general-focus-border-weight) * 1px) solid var(--general-focus-border);
    outline-offset: calc(var(--general-focus-border-weight) * -1px);
  }
  .mob-drawer-body-locked {
    overflow: hidden;
  }
  @media (max-width: 1199.98px) {
    .mob-drawer {
      display: block;
    }
  }
}