@charset "UTF-8";
:root {
  /*
   * Root-Schriftgröße: normalerweise 16px
   * Body-Grundschrift: 1.125rem = 18px
   */
  --site-content-narrow: 56.25rem;
  --site-content-width: 75rem; /* 1200px */
  --site-content-wide: 90rem; /* 1440px */
  --page-gutter: clamp(1rem, 2.5vw, 2rem);
  --section-spacing: clamp(4rem, 7vw, 7rem);
  /* Micro spacing */
  --space-2xs: 0.3125rem; /* 5px */
  --space-xs: 0.625rem; /* 10px */
  /* Core spacing */
  --space-sm: 0.9375rem; /* 15px */
  --space-md: 1.25rem; /* 20px */
  --space-lg: 1.875rem; /* 30px */
  --space-xl: 3.75rem; /* 60px */
  /* Larger spacing */
  --space-2xl: 5rem; /* 80px */
  --space-3xl: 7.5rem; /* 120px */
  /* Semantic aliases */
  --gap-small: var(--space-sm);
  --gap-default: var(--space-md);
  --gap-large: var(--space-lg);
  /*
   * Diese Werte wurden angepasst, damit die bisherigen
   * Mindest- und Maximalgrößen erhalten bleiben.
   */
  --section-padding-2xs: clamp(1.5rem, 3vw, 2.625rem);
  /* 24px – 42px */
  --section-padding-xs: clamp(2.25rem, 4vw, 3.75rem);
  /* 36px – 60px */
  --section-padding-sm: clamp(3.375rem, 6vw, 5.625rem);
  /* 54px – 90px */
  --section-padding-md: clamp(4.5rem, 8vw, 7.5rem);
  /* 72px – 120px */
  --section-padding-lg: clamp(5.625rem, 10vw, 9rem);
  /* 90px – 144px */
  --section-bg-padding-block: clamp(2.25rem, 4vw, 3.375rem);
  /* 36px – 54px */
  --container-padding: var(--space-md);
  --card-padding: var(--space-lg);
  --grid-gap: var(--space-sm);
  --space-text-button: clamp(1rem, 2vw, 1.875rem);
  --color-text: #FFF;
  --color-primary: #FDC52C;
  --color-primary-hover: color-mix(in srgb, var(--color-primary), black 12%);
  --color-primary-active: color-mix(in srgb, var(--color-primary), black 20%);
  --color-primary-light: color-mix(in srgb, var(--color-primary), white 85%);
  --color-grey: #efeff0;
  --color-grey-light: color-mix(in srgb, var(--color-grey), white 60%);
  --color-grey-dark: color-mix(in srgb, var(--color-grey), black 12%);
  --color-black: #242728;
  --color-red: #CC0A2F;
  --color-red-hover: color-mix(in srgb, var(--color-red), black 10%);
  --color-red-accent: #6b0824;
  --color-red-accent-hover: color-mix(in srgb, var(--color-red-accent), black 10%);
  --color-blue: #0a264b;
  --color-blue-hover: color-mix(in srgb, var(--color-blue), black 10%);
  --color-accent-blue: #154284;
  --color-accent-blue-hover: color-mix(in srgb, var(--color-accent-blue), black 10%);
  /* Element colors */
  --button-bg: var(--color-primary);
  --button-bg-hover: var(--color-primary-hover);
  --section-bg: var(--color-grey);
  --card-bg: var(--color-white);
  --link-color: var(--color-primary);
  --link-hover: var(--color-primary-hover);
  /* Quick Nav */
  --color-quicknav-anthracite: #343839;
  --font-sans: "FCBARCELONA", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-heading: "FCBARCELONA", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  /* Base */
  --fs-base: 1.125rem;
  /* 18px (bei 16px Standard-Browserschriftgröße) */
  /*
   * Textgrößen wurden so umgerechnet, dass sie bei einer
   * Root-Größe von 16px den bisherigen Pixelwerten entsprechen.
   */
  --fs-2xs: 0.84375rem; /* 13.5px */
  --fs-xs: 0.9140625rem; /* 14.625px */
  --fs-sm: 0.984375rem; /* 15.75px */
  --fs-md: 1.265625rem; /* 20.25px */
  --fs-lg: 1.40625rem; /* 22.5px */
  --fs-xl: 1.6875rem; /* 27px */
  --fs-2xl: 1.96875rem; /* 31.5px */
  --fs-3xl: 2.25rem; /* 36px */
  --fs-4xl: 2.8125rem; /* 45px */
  --fs-5xl: 3.375rem; /* 54px */
  --fs-6xl: 3.9375rem; /* 63px */
  /* Headlines */
  --fs-h1: clamp(
  	2.25rem,
  	1.3rem + 3.3vw,
  	4.0rem
  );
  /* 30px – 56px */
  --fs-h2: clamp(
  	1.5rem,
  	1.15rem + 1.7vw,
  	2.64375rem
  );
  /* 24px – 42.3px */
  --fs-h3: clamp(
  	1.25rem,
  	1.05rem + 1.1vw,
  	2.25rem
  );
  /* 20px – 36px */
  --fs-h4: clamp(
  	1.25rem,
  	1.1rem + 0.7vw,
  	1.6875rem
  );
  /* 20px – 27px */
  --fs-h5: clamp(
  	1.125rem,
  	1rem + 0.4vw,
  	1.40625rem
  );
  /* 18px – 22.5px */
  --fs-h6: 1.125rem;
  /* 18px */
  --lh-none: 1;
  --lh-tight: 1.1;
  --lh-snug: 1.2;
  --lh-heading: 1.05;
  --lh-normal: 1.5;
  --lh-relaxed: 1.65;
  --lh-loose: 1.8;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;
  --fw-heavy: 900;
  --ls-tight: -0.03em;
  --ls-slight-tight: -0.015em;
  --ls-normal: 0;
  --ls-wide: 0.03em;
  --ls-uppercase: 0.06em;
  --text-meta: var(--fs-sm);
  --text-small: var(--fs-sm);
  --text-body: var(--fs-base);
  --text-lead: var(--fs-md);
  --text-large: var(--fs-lg);
  --text-button: var(--fs-base);
  --text-nav: var(--fs-base);
  --text-caption: var(--fs-xs);
  --heading-1: var(--fs-h1);
  --heading-2: var(--fs-h2);
  --heading-3: var(--fs-h3);
  --heading-4: var(--fs-h4);
  --heading-5: var(--fs-h5);
  --heading-6: var(--fs-h6);
  --font-size-nav-main: 1.125rem;
  /* 18px */
  --font-size-nav-top: 1.0125rem;
  /* 16.2px */
  --font-size-nav-mobile: 1.18125rem;
  /* 18.9px */
  --heading-space-default: 0.65em;
  --heading-space-tight: 0.35em;
  --heading-space-loose: 1em;
  --body-font-family: var(--font-sans);
  --body-font-size: var(--text-body);
  --body-line-height: var(--lh-normal);
  --body-font-weight: var(--fw-regular);
  --heading-font-family: var(--font-heading);
  --heading-line-height: var(--lh-heading);
  --heading-font-weight: var(--fw-extrabold);
  --heading-letter-spacing: var(--ls-slight-tight);
  --trans-medium: all 0.3s ease;
}

#wpadminbar {
  z-index: 999999 !important;
}

.site-header {
  z-index: 99999 !important;
}
@media all and (max-width: 1023px) {
  .site-header {
    z-index: 999999 !important;
  }
}

.elementor-location-header .elementor-sticky {
  background: var(--color-blue);
  transition: box-shadow 0.25s ease;
}
.elementor-location-header .elementor-sticky__spacer {
  margin-bottom: 0;
}
.elementor-location-header .header-inner {
  width: 100%;
  max-width: var(--site-content-width);
  margin: 0 auto;
}
@media all and (max-width: 1023px) {
  .elementor-location-header .header-inner {
    padding-inline: 20px;
  }
}

html.is-scrolled .elementor-location-header .elementor-sticky {
  box-shadow: 0 2px 0 var(--color-primary);
}

.e-con.e-parent .e-con-inner .elementor-element .elementor-widget-text-editor .elementor-widget-container p:last-child {
  margin-block-end: 0;
}

.e-con.section,
.e-con.sectionbox {
  padding-inline: max(var(--page-gutter), (100% - var(--site-content-width)) / 2);
  padding-block-end: var(--space-lg);
}
.e-con.section--xs-padding-top,
.e-con.sectionbox--xs-padding-top {
  padding-block-start: var(--section-padding-xs);
}
@media all and (max-width: 767px) {
  .e-con.section--xs-padding-top,
  .e-con.sectionbox--xs-padding-top {
    padding-block-start: 30px;
  }
}
.e-con.section--ultra-narrow-padding-bottom,
.e-con.sectionbox--ultra-narrow-padding-bottom {
  padding-block-end: 1rem;
}
.e-con.section--zero-padding-bottom,
.e-con.sectionbox--zero-padding-bottom {
  padding-block-end: 0;
}
.e-con.section--2xs-padding-bottom,
.e-con.sectionbox--2xs-padding-bottom {
  padding-block-end: var(--section-padding-xs);
}
.e-con.section--xs-padding-bottom,
.e-con.sectionbox--xs-padding-bottom {
  padding-block-end: var(--section-padding-xs);
}
@media all and (max-width: 767px) {
  .e-con.section--xs-padding-bottom,
  .e-con.sectionbox--xs-padding-bottom {
    padding-block-end: 30px;
  }
}
.e-con.section--sm-padding-bottom,
.e-con.sectionbox--sm-padding-bottom {
  padding-block-end: var(--section-padding-sm);
}
.e-con.section--lg-padding-bottom,
.e-con.sectionbox--lg-padding-bottom {
  padding-block-end: var(--section-padding-lg);
}
.e-con.section--narrow,
.e-con.sectionbox--narrow {
  padding-inline: max(var(--page-gutter), (100% - var(--site-content-narrow)) / 2);
}
.e-con.section--wide,
.e-con.sectionbox--wide {
  padding-inline: max(var(--page-gutter), (100% - var(--site-content-wide)) / 2);
}
.e-con.section--full,
.e-con.sectionbox--full {
  padding-inline: 0;
}
@media all and (max-width: 767px) {
  .e-con.section--box-content-main-with-btn,
  .e-con.sectionbox--box-content-main-with-btn {
    margin-block-end: var(--section-padding-md);
    padding-block-end: var(--section-padding-md);
  }
}
.e-con.section--bg-white,
.e-con.sectionbox--bg-white {
  padding-block-start: var(--section-padding-xs);
}
@media all and (max-width: 767px) {
  .e-con.section > .e-flexbox-base,
  .e-con.sectionbox > .e-flexbox-base {
    padding: 0;
  }
}
@media all and (max-width: 767px) {
  .e-con.section > .e-con-inner > .e-flexbox-base,
  .e-con.sectionbox > .e-con-inner > .e-flexbox-base {
    padding: 0;
  }
}

.e-con.grid {
  gap: var(--space-sm);
}
.e-con.grid.gap-sm {
  gap: var(--space-sm);
}
.e-con.grid.gap-md {
  gap: var(--space-md);
}
.e-con.grid .gap-lg {
  gap: var(--space-lg);
}

.e-con.e-atomic-element.e-grid-base {
  padding: 0;
}

html:is([style*="font-size: 24px"],
[style*="font-size: 28px"],
[style*="font-size: 32px"]) .section.e-con > .e-con-inner {
  max-width: none !important;
  width: 100%;
  padding-left: 2rem;
  padding-right: 2rem;
}

.elementor-location-footer .elementor-widget-text-editor, .elementor-location-footer p, .elementor-location-footer li, .elementor-location-footer a {
  color: var(--color-text);
}
.elementor-location-footer .elementor-widget-heading p {
  font-family: var(--font-heading);
  font-size: var(--heading-4);
  font-weight: 900;
}
.elementor-location-footer .top-footer {
  margin-block-end: 0;
  background: var(--color-blue);
}
.elementor-location-footer .top-footer .footer-inner {
  max-width: var(--site-content-width);
}
.elementor-location-footer .main-footer {
  padding-block: var(--space-lg);
  margin-block-end: 0;
  background: var(--color-blue);
}
.elementor-location-footer .main-footer .footer-inner {
  max-width: var(--site-content-width);
}
.elementor-location-footer .main-footer .footer-inner .elementor-widget-nav-menu .elementor-nav-menu__container .elementor-nav-menu .menu-item {
  margin-block-end: var(--space-xs);
}
.elementor-location-footer .main-footer .footer-inner .elementor-widget-nav-menu .elementor-nav-menu__container .elementor-nav-menu .menu-item .elementor-item {
  word-break: break-all;
  overflow-wrap: break-word;
  hyphens: none;
}
.elementor-location-footer .bottom-footer {
  margin-block-start: 0;
  margin-block-end: 0;
  padding-block-end: var(--space-lg);
  background: var(--color-blue);
}
.elementor-location-footer .bottom-footer .footer-inner {
  max-width: var(--site-content-width);
}
@media all and (max-width: 767px) {
  .elementor-location-footer .bottom-footer .footer-inner .elementor-widget-nav-menu .elementor-nav-menu__container .elementor-nav-menu {
    flex-direction: column;
  }
}
@media all and (max-width: 767px) {
  .elementor-location-footer .bottom-footer .footer-inner .elementor-widget-nav-menu .elementor-nav-menu__container .elementor-nav-menu .menu-item {
    margin-block-end: var(--space-xs);
  }
}
.elementor-location-footer .bottom-footer .footer-inner .elementor-widget-text-editor {
  font-size: var(--text-small);
}

body.home .elementor-location-footer .top-footer, body.page-id-41 .elementor-location-footer .top-footer, body.page-id-42 .elementor-location-footer .top-footer, body.page-id-44 .elementor-location-footer .top-footer {
  display: none;
}
body.home .elementor-location-footer .main-footer .col-two, body.home .elementor-location-footer .main-footer .col-three, body.home .elementor-location-footer .main-footer .col-four, body.page-id-41 .elementor-location-footer .main-footer .col-two, body.page-id-41 .elementor-location-footer .main-footer .col-three, body.page-id-41 .elementor-location-footer .main-footer .col-four, body.page-id-42 .elementor-location-footer .main-footer .col-two, body.page-id-42 .elementor-location-footer .main-footer .col-three, body.page-id-42 .elementor-location-footer .main-footer .col-four, body.page-id-44 .elementor-location-footer .main-footer .col-two, body.page-id-44 .elementor-location-footer .main-footer .col-three, body.page-id-44 .elementor-location-footer .main-footer .col-four {
  display: none;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html {
  font-size: 100%;
}

body {
  font-size: var(--fs-base);
}

.e-con.p-no-margin-block-end {
  --widgets-spacing-row: var(--space-xs);
}
.e-con.p-no-margin-block-end .elementor-element .elementor-widget-container p {
  margin-block-start: 0;
  margin-block-end: 0;
}

.elementor-widget-text-editor .elementor-widget-container ul {
  margin-block-start: 0;
}
.elementor-widget-text-editor:last-child p:last-child {
  margin-block-end: 0;
}

.elementor-element.align-end {
  margin-block-start: auto;
}

.elementor-widget-image figure {
  display: flex;
}

/* FCBARCELONA-regular - latin */
@font-face {
  font-display: swap;
  font-family: "FCBARCELONA";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/FCBARCELONA-Regular-web.woff2") format("woff2");
}
/* FCBARCELONA-700 - latin */
@font-face {
  font-display: swap;
  font-family: "FCBARCELONA";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/FCBARCELONA-Bold-web.woff2") format("woff2");
}
/* FCBARCELONA-800 - latin */
@font-face {
  font-display: swap;
  font-family: "FCBARCELONA";
  font-style: normal;
  font-weight: 800;
  src: url("fonts/FCBARCELONA-Extrabold-web.woff2") format("woff2");
}
h1,
.entry-content :where(h1),
h2,
.entry-content :where(h2),
h3,
.entry-content :where(h3),
h4,
.entry-content :where(h4),
h5,
.entry-content :where(h5),
h6,
.entry-content :where(h6) {
  margin-block-start: 0;
  margin-block-end: var(--heading-space-default);
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  letter-spacing: var(--heading-letter-spacing);
  line-height: var(--heading-line-height);
  text-transform: uppercase;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
}
h1 strong,
.entry-content :where(h1) strong,
h2 strong,
.entry-content :where(h2) strong,
h3 strong,
.entry-content :where(h3) strong,
h4 strong,
.entry-content :where(h4) strong,
h5 strong,
.entry-content :where(h5) strong,
h6 strong,
.entry-content :where(h6) strong {
  font-weight: 700 !important;
}
h1 .subline,
.entry-content :where(h1) .subline,
h2 .subline,
.entry-content :where(h2) .subline,
h3 .subline,
.entry-content :where(h3) .subline,
h4 .subline,
.entry-content :where(h4) .subline,
h5 .subline,
.entry-content :where(h5) .subline,
h6 .subline,
.entry-content :where(h6) .subline {
  font-family: var(--font-accent);
  font-weight: 300;
  font-style: italic;
}

h1,
.entry-content :where(h1),
.text-like-h1 p,
.text-like-h1 li {
  margin-block-end: var(--heading-space-tight);
  font-size: var(--heading-1);
  font-weight: var(--fw-extrabold);
}
h1 em,
.entry-content :where(h1) em,
.text-like-h1 p em,
.text-like-h1 li em {
  font-weight: 300;
}

h2,
.entry-content :where(h2),
.text-like-h2 p,
.text-like-h2 li {
  font-size: var(--heading-2);
}
h2 em,
.entry-content :where(h2) em,
.text-like-h2 p em,
.text-like-h2 li em {
  font-weight: 300;
}

h3,
.entry-content :where(h3),
.text-like-h3 p,
.text-like-h3 li {
  font-size: var(--heading-3);
}

h4,
.entry-content :where(h4),
.text-like-h4 p,
.text-like-h4 li {
  font-size: var(--heading-4);
}

h5,
.entry-content :where(h5) {
  font-size: var(--heading-5);
}

h6,
.entry-content :where(h6) {
  margin-block-end: var(--heading-space-tight);
  font-size: var(--heading-6);
}

/* override astra default values (elementor colors always go to parent container instead of headline itself */
.entry-content .elementor h1, .entry-content .elementor h2, .entry-content .elementor h3, .entry-content .elementor h4, .entry-content .elementor h5, .entry-content .elementor h6 {
  color: inherit;
}

.elementor-widget-text-editor p, .elementor-widget-text-editor li, .elementor-widget-text-editor a, .elementor-widget-text-editor span, .elementor-widget-button p, .elementor-widget-button li, .elementor-widget-button a, .elementor-widget-button span {
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
}
.elementor-widget-text-editor p, .elementor-widget-text-editor li, .elementor-widget-button p, .elementor-widget-button li {
  margin-block-end: var(--space-md);
  font-size: var(--text-body);
  line-height: var(--lh-normal);
}
.elementor-widget-text-editor ul, .elementor-widget-button ul {
  list-style: none;
  padding: 0;
}
.elementor-widget-text-editor ul li, .elementor-widget-button ul li {
  position: relative;
  margin-block-end: var(--space-2xs);
  padding-inline-start: var(--space-md);
}
.elementor-widget-text-editor ul li::before, .elementor-widget-button ul li::before {
  content: "›";
  position: absolute;
  color: var(--color-primary);
  inset-inline-start: 0;
  font-weight: 700;
}

.elementor-widget-text-editor.text-xs p,
.elementor-widget-text-editor.text-xs li {
  font-size: var(--fs-xs);
}
.elementor-widget-text-editor.text-sm p,
.elementor-widget-text-editor.text-sm li {
  font-size: var(--fs-sm);
}
.elementor-widget-text-editor.text-lg p,
.elementor-widget-text-editor.text-lg li {
  font-size: var(--fs-lg);
}
.elementor-widget-text-editor.text-xl p,
.elementor-widget-text-editor.text-xl li {
  font-size: var(--fs-xl);
}
.elementor-widget-text-editor a[href^="tel:"] {
  color: var(--color-text);
  text-decoration: none;
  cursor: inherit;
}
.elementor-widget-text-editor a[href^="tel:"]:focus, .elementor-widget-text-editor a[href^="tel:"]:hover {
  color: var(--color-text) !important;
  text-decoration: none;
  cursor: inherit;
}

.e-con.hero {
  padding-block-start: var(--space-xl);
  padding-block-end: 0;
}
.e-con.hero .hero-text {
  padding-block-end: 0;
}
.e-con.hero .hero-img {
  padding-block-end: 0;
}
.e-con.hero--home {
  padding-block-end: 0;
  background: repeating-linear-gradient(to bottom, #0e315f 0, #0e315f 36px, #173f8d 36px, #173f8d 72px, #0849a6 72px, #0849a6 108px, #c5003c 108px, #c5003c 144px, #9e1748 144px, #9e1748 180px, #74143e 180px, #74143e 216px);
}
.e-con.hero--home .hero-text .elementor-widget-text-editor h1 {
  color: var(--color-primary);
  text-transform: uppercase;
}
.e-con.hero--home .hero-text .elementor-widget-text-editor.text-pos-absolute {
  position: absolute;
  bottom: 10px;
  left: 10px;
}
@media all and (max-width: 1023px) {
  .e-con.hero--home .hero-text .elementor-widget-text-editor.text-pos-absolute {
    position: relative;
    left: 0;
  }
}
.e-con.hero--home .hero-text .elementor-widget-text-editor.text-pos-absolute p {
  text-transform: uppercase;
}
.e-con.hero--home .hero-img {
  padding-block: 0;
}
.e-con.hero--default {
  margin-block-end: var(--space-xl);
}
@media all and (max-width: 1023px) {
  .e-con.hero--default {
    margin-block-end: var(--space-lg);
    padding-block-start: 0;
  }
}
@media all and (max-width: 1023px) {
  .e-con.hero--default .hero-text {
    padding-block: var(--space-lg);
  }
}
.e-con.hero--default .hero-text h1 {
  margin-block-end: 0;
}
.e-con.hero--textonly {
  min-height: 400px;
  margin-block-end: var(--space-lg);
  padding-block: 0;
  padding-inline: max(var(--page-gutter), (100% - var(--site-content-narrow)) / 2);
  background: repeating-linear-gradient(to bottom, #0e315f 0, #0e315f 36px, #173f8d 36px, #173f8d 72px, #0849a6 72px, #0849a6 108px, #c5003c 108px, #c5003c 144px, #9e1748 144px, #9e1748 180px, #74143e 180px, #74143e 216px);
}
@media all and (max-width: 767px) {
  .e-con.hero--textonly {
    min-height: 300px;
    margin-block-end: var(--space-md);
  }
}
.e-con.hero--textonly .hero-text {
  padding-block: var(--space-lg);
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu {
  margin: 0;
  padding: 0;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item:focus-visible .elementor-item::after, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item:hover .elementor-item::after {
  transform: scaleX(1);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item .elementor-item {
  color: var(--color-text);
  font-family: var(--font-sans);
  font-weight: 700;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item .elementor-item::after {
  content: "";
  width: 100%;
  height: 3px;
  position: absolute;
  bottom: -2px;
  left: 0;
  background: var(--color-primary);
  transform: scaleX(0);
  transition: var(--trans-medium);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item .elementor-item.has-submenu .sub-arrow {
  display: none;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children:focus-visible .elementor-item::after, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children:hover .elementor-item::after {
  display: none;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu {
  min-width: 230px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(0, 34, 80, 0.16);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item:focus-visible .elementor-sub-item, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item:hover .elementor-sub-item {
  color: var(--color-blue) !important;
  background: var(--color-grey) !important;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item:focus-visible .elementor-sub-item::before, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item:hover .elementor-sub-item::before {
  transform: scaleY(1);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item .elementor-sub-item {
  position: relative;
  padding: 16px 24px !important;
  color: var(--color-black) !important;
  background: #fff !important;
  border-top: 1px solid var(--color-grey);
  border-inline-start: 0;
  transition: var(--trans-medium);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item .elementor-sub-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--color-primary);
  transform: scaleY(0);
  transition: var(--trans-medium);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.menu-item-has-children .sub-menu .menu-item:first-child .elementor-sub-item {
  border-top: 0;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item.nav-hide-desktop {
  display: none;
}
.elementor-location-header .elementor-widget-button {
  margin-inline-start: 10px;
}
.elementor-location-header .elementor-widget-button a.elementor-button {
  padding: var(--space-xs) var(--space-lg) !important;
  font-family: var(--font-sans);
  font-weight: 700;
  text-transform: none;
  background: var(--color-accent);
}
.elementor-location-header .elementor-widget-button a.elementor-button:focus-visible, .elementor-location-header .elementor-widget-button a.elementor-button:hover {
  background: var(--color-accent-hover);
}

body.home .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main, body.page-id-41 .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main, body.page-id-42 .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main, body.page-id-44 .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main {
  display: none;
}
body.home .elementor-location-header .elementor-widget-button, body.page-id-41 .elementor-location-header .elementor-widget-button, body.page-id-42 .elementor-location-header .elementor-widget-button, body.page-id-44 .elementor-location-header .elementor-widget-button {
  display: none;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
  background: var(--color-blue);
  border: 0;
  border-top: 3px solid var(--color-primary);
  box-shadow: 0 1.25rem 2.5rem rgba(0, 0, 0, 0.18);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0 0 0 15px;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li:last-child {
  border-bottom: 0;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 4.25rem;
  padding: 0.75rem 3rem 0.75rem 0;
  color: #fff;
  background: transparent;
  font-size: clamp(1.25rem, 4vw, 1.6rem);
  font-weight: 700;
  line-height: 1.15;
  transition: color 180ms ease, padding-left 180ms ease;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--color-primary);
  transform: translateY(-50%);
  transition: width 180ms ease;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item:hover, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item:focus-visible {
  padding-left: 1.25rem;
  color: var(--color-primary);
  background: transparent;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item:hover::before, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item:focus-visible::before {
  width: 0.75rem;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li.current-menu-item > a.elementor-item, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu > li.current-menu-ancestor > a.elementor-item {
  color: var(--color-primary);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-arrow {
  position: absolute;
  top: 50%;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  transform: translateY(-50%);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-arrow svg {
  width: 0.75rem;
  height: 0.75rem;
  fill: currentColor;
  transition: transform 180ms ease;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown a[aria-expanded=true] .sub-arrow svg {
  transform: rotate(180deg);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu {
  position: static !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 0 1rem !important;
  padding: 0.35rem 0.5rem !important;
  background: var(--color-accent-blue);
  border: 0;
  border-left: 3px solid var(--color-primary);
  box-shadow: none;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu li {
  border: 0;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item {
  position: relative;
  display: block;
  padding: 0.8rem 1rem;
  color: #fff;
  background: transparent;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  transition: color 180ms ease, transform 180ms ease;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item::before {
  content: "→";
  display: inline-block;
  margin-right: 0.6rem;
  color: var(--color-primary);
  transition: transform 180ms ease;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item:hover, .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item:focus-visible {
  color: var(--color-primary);
  background: transparent;
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item:hover::before {
  transform: translateX(0.2rem);
}
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: -2px;
}

body.home .elementor-location-header .elementor-widget-nav-menu, body.page-id-41 .elementor-location-header .elementor-widget-nav-menu, body.page-id-42 .elementor-location-header .elementor-widget-nav-menu, body.page-id-44 .elementor-location-header .elementor-widget-nav-menu {
  display: none !important;
}

.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link {
  margin-block-end: 0;
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link:focus-visible .elementor-post__thumbnail, .elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link:hover .elementor-post__thumbnail {
  overflow: hidden;
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link:focus-visible .elementor-post__thumbnail img, .elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link:hover .elementor-post__thumbnail img {
  transform: translate(-50%, -50%) scale(1.15);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link .elementor-post__thumbnail {
  overflow: hidden;
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__thumbnail__link .elementor-post__thumbnail img {
  transform: translate(-50%, -50%) scale(1.01);
  transform-origin: center;
  transition: var(--trans-medium);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text {
  padding-inline: var(--space-md);
  padding-block: var(--space-lg);
  background: var(--color-blue);
  border-bottom-right-radius: 30px;
  border-bottom-left-radius: 30px;
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__title {
  margin-block-end: var(--space-lg);
  color: var(--color-text);
  font-size: var(--heading-5);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__title a {
  color: var(--color-text);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__title a:focus-visible, .elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__title a:hover {
  color: var(--color-text);
  text-decoration: none;
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__excerpt p {
  color: var(--color-text);
  font-size: var(--text-body);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__read-more-wrapper a {
  color: var(--color-text);
}
.elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__read-more-wrapper a:focus-visible, .elementor-location-archive .elementor-widget-archive-posts .elementor-posts .elementor-post .elementor-post__text .elementor-post__read-more-wrapper a:hover {
  color: var(--color-text);
  text-decoration: underline;
}

.elementor-location-single .product-attr .product-hl p {
  font-size: var(--text-large);
  font-weight: var(--fw-extrabold);
}
.elementor-location-single .elementor-widget-woocommerce-product-title {
  padding-inline-end: var(--space-lg);
}
@media all and (max-width: 1023px) {
  .elementor-location-single .elementor-widget-woocommerce-product-title {
    padding-inline-end: 0;
  }
}
.elementor-location-single .elementor-widget-woocommerce-product-title h1 {
  position: relative;
  padding-block-end: 20px;
}
.elementor-location-single .elementor-widget-woocommerce-product-title h1::after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -20px;
  left: 0;
  background: #71849A;
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 6px;
  font-size: var(--text-body) !important;
  line-height: 1 !important;
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price del, .elementor-location-single .elementor-widget-woocommerce-product-price .price ins {
  font-size: var(--text-body) !important;
  line-height: 1 !important;
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price del .woocommerce-Price-amount bdi, .elementor-location-single .elementor-widget-woocommerce-product-price .price ins .woocommerce-Price-amount bdi {
  font-size: var(--text-body);
  font-weight: var(--fw-bold);
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price del {
  text-decoration: none;
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price del .woocommerce-Price-amount {
  position: relative;
  display: inline-block;
}
.elementor-location-single .elementor-widget-woocommerce-product-price .price del .woocommerce-Price-amount::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 2px;
  background: currentColor;
  transform: translateY(-50%);
}
.elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .variations {
  display: none;
}
.elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .variations label, .elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .variations select {
  color: var(--color-text);
}
.elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .single_variation_wrap .woocommerce-variation-add-to-cart .single_add_to_cart_button {
  display: inline-block;
  padding: var(--space-sm) var(--space-xl);
  color: var(--color-blue);
  font-size: var(--text-button);
  font-weight: var(--fw-bold);
  text-decoration: none !important;
  text-transform: uppercase;
  line-height: var(--lh-snug);
  background: var(--button-bg);
  border: 1px solid var(--button-bg);
  border-radius: var(--space-md);
  transition: var(--trans-medium);
  margin: 0;
}
@media all and (max-width: 767px) {
  .elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .single_variation_wrap .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    padding: var(--space-xs) var(--space-md);
    font-size: 1rem;
  }
}
.elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .single_variation_wrap .woocommerce-variation-add-to-cart .single_add_to_cart_button:focus-visible, .elementor-location-single .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart .cart .single_variation_wrap .woocommerce-variation-add-to-cart .single_add_to_cart_button:hover {
  color: var(--color-blue);
  text-decoration: none !important;
  background: var(--button-bg-hover);
  border: 1px solid var(--button-bg-hover);
}

.elementor-widget-button.btn-center {
  display: flex;
  justify-content: center;
}
.elementor-widget-button a.elementor-button {
  display: inline-block;
  padding: var(--space-sm) var(--space-xl);
  color: var(--color-blue);
  font-size: var(--text-button);
  font-weight: var(--fw-bold);
  text-decoration: none !important;
  text-transform: uppercase;
  line-height: var(--lh-snug);
  background: var(--button-bg);
  border: 1px solid var(--button-bg);
  border-radius: var(--space-md);
  transition: var(--trans-medium);
}
@media all and (max-width: 767px) {
  .elementor-widget-button a.elementor-button {
    padding: var(--space-xs) var(--space-md);
    font-size: 1rem;
  }
}
.elementor-widget-button a.elementor-button:focus-visible, .elementor-widget-button a.elementor-button:hover {
  color: var(--color-blue);
  text-decoration: none !important;
  background: var(--button-bg-hover);
  border: 1px solid var(--button-bg-hover);
}
.elementor-widget-button.btn-blue a.elementor-button {
  color: var(--color-text);
  background: var(--color-blue);
}
.elementor-widget-button.btn-blue a.elementor-button:focus-visible, .elementor-widget-button.btn-blue a.elementor-button:hover {
  color: var(--color-text);
  background: var(--color-blue-hover);
}
.elementor-widget-button.btn-red a.elementor-button {
  color: var(--color-text);
  background: var(--color-red);
}
.elementor-widget-button.btn-red a.elementor-button:focus-visible, .elementor-widget-button.btn-red a.elementor-button:hover {
  color: var(--color-text);
  background: var(--color-red-hover);
}
.elementor-widget-button.btn-textlink {
  padding: 0;
  background: none;
}
.elementor-widget-button.btn-textlink:focus-visible, .elementor-widget-button.btn-textlink:hover {
  background: none;
}

.e-atomic-element .e-button-base {
  display: inline-block;
  padding: var(--space-sm) var(--space-xl);
  color: var(--color-blue);
  font-size: var(--text-button);
  font-weight: var(--fw-bold);
  text-decoration: none !important;
  text-transform: uppercase;
  line-height: var(--lh-snug);
  background: var(--button-bg);
  border: 1px solid var(--button-bg);
  border-radius: var(--space-md);
  transition: var(--trans-medium);
}
@media all and (max-width: 767px) {
  .e-atomic-element .e-button-base {
    padding: var(--space-xs) var(--space-md);
    font-size: 1rem;
  }
}
.e-atomic-element .e-button-base:focus-visible, .e-atomic-element .e-button-base:hover {
  color: var(--color-blue);
  text-decoration: none !important;
  background: var(--button-bg-hover);
  border: 1px solid var(--button-bg-hover);
}

/*# sourceMappingURL=style.css.map */
