:root {
  /* Brand Colors */
  --brand-0: #ffffff;
  --brand-100: #ededed;
  --brand-200: #e7e7e7;
  --brand-300: #bfbfbf;
  --brand-400: #6a6a68;
  --brand-500: #404040;
  --brand-600: #262626;
  --brand-700: #1a1a18;
  --brand-800: #101010;
  --brand-900: #2d2020;
  --brand-950: #040404;

  /* Gray Colors */
  --gray-0: #ffffff;
  --gray-50: #f9fafb;
  --gray-100: #f3f4f6;
  --gray-200: #e5e7eb;
  --gray-300: #d1d5dc;
  --gray-400: #99a1af;
  --gray-500: #6a7282;
  --gray-600: #4a5565;
  --gray-700: #364153;
  --gray-800: #1e2939;
  --gray-900: #101828;
  --gray-950: #030712;

  --brand-primary: var(--brand-900);
  --brand-primary-hover: var(--brand-800);
  --text: var(--brand-400);
  --headings: var(--brand-900);

  /* Other Colors */
  --color-white: var(--brand-0);
  --color-black: var(--brand-950);
  --color-transparent: transparent;
  --color-success: #22c55e;
  --color-warning: #f97316;
  --color-error: #ef4444;
}

@media screen and (max-width: 1024px) {
  html #wpadminbar {
    z-index: 99 !important;
  }
}

@media screen and (max-width: 600px) {
  #wpadminbar {
    position: fixed !important;
  }
}

.h-full {
  height: 100% !important;
}

.h-screen {
  height: 100vh !important;
}

.h-auto {
  height: auto !important;
}

.h-fit {
  height: fit-content !important;
}

.h-min {
  height: min-content !important;
}

.h-max {
  height: max-content !important;
}

.w-full {
  width: 100% !important;
}

.w-screen {
  width: 100vh !important;
}

.w-auto {
  width: auto !important;
}

.w-fit {
  width: fit-content !important;
}

.w-min {
  width: min-content !important;
}

.w-max {
  width: max-content !important;
}

.max-w-lg {
  max-width: 32rem !important;
}

.max-w-xl {
  max-width: 36rem !important;
}

.max-w-2xl {
  max-width: 42rem !important;
}

.max-w-3xl {
  max-width: 48rem !important;
}

.max-w-4xl {
  max-width: 56rem !important;
}

.max-w-5xl {
  max-width: 64rem !important;
}

.min-w-lg {
  min-width: 32rem !important;
}

.min-w-xl {
  min-width: 36rem !important;
}

.min-w-2xl {
  min-width: 42rem !important;
}

.min-w-3xl {
  min-width: 48rem !important;
}

.min-w-4xl {
  min-width: 56rem !important;
}

.min-w-5xl {
  min-width: 64rem !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.pointer-events-none {
  pointer-events: none !important;
}

.pointer-events-auto {
  pointer-events: auto !important;
}

.aspect-square img {
  aspect-ratio: 1 !important;
  object-fit: cover !important;
}

.aspect-square-contain img {
  aspect-ratio: 1 !important;
  object-fit: contain !important;
}

.aspect-4\/5 img {
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
}

.aspect-5\/4 img {
  aspect-ratio: 5 / 4 !important;
  object-fit: cover !important;
}

.aspect-5\/3 img {
  aspect-ratio: 5 / 3 !important;
  object-fit: cover !important;
}

.truncate-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-line-clamp: 3;
}

.blog-post-card img {
  position: relative;
  transition: transform 0.3s;
  transform: scale(1);
}

.blog-post-card:hover img {
  transition: transform 0.3s;
  transform: scale(1.05);
}

.scale-on-hover img {
  transition: transform 0.3s;
  transform: scale(1);
}

.scale-on-hover:hover img {
  transition: transform 0.3s;
  transform: scale(1.05);
}

.overlay:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  background: rgba(0, 0, 0, 10);
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.8) 0%,
    rgba(0, 0, 0, 0.5) 25%,
    rgba(0, 0, 0, 0) 100%
  );
  z-index: 1;
  pointer-events: none;
}

.cky-consent-bar .cky-notice-content-wrapper {
    padding: 24px !important;
	font-family: var(--e-global-typography-0f4931d-font-family) !important;
}

.cky-preference-center, .cookie-list-table, .cky-category-des {
	font-family: var(--e-global-typography-0f4931d-font-family) !important;
}

.cky-cookie-audit-table th, .cky-cookie-audit-table td {
	border: unset;
	background-color: unset;
	background: unset;
}

.cky-cookie-audit-table tr:nth-child(2n + 1) td {
	background-color: unset;
	background: unset;
}

.cky-consent-bar > div:last-child, .cky-footer-wrapper > div:last-child {
    display: none !important;
}

.cky-notice-btn-wrapper .cky-btn, .cky-btn {
    border-radius: 4px !important;
}

.cky-btn-accept {
    background: var(--e-global-color-primary) !important;
    color: #fff;
    border: 2px solid var(--e-global-color-primary) !important;
}

.cky-btn-customize, .cky-btn-preferences {
    color: var(--e-global-color-primary) !important;
    background: transparent !important;
    border: 2px solid var(--e-global-color-primary) !important;
}

body {
  margin: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

body.admin-bar {
  min-height: calc(100vh - 32px);
}

body.error404 main {
  margin-top: auto;
  margin-bottom: auto;
}

main, article {
  margin-top: -128px;
}

footer {
  margin-top: auto;
}

.elementor-lightbox .elementor-lightbox-image {
  border-radius: 16px;
}

.post-content h1.wp-block-heading {
  font-family: var(--e-global-typography-4ac3e22-font-family), Sans-serif;
  font-size: var(--e-global-typography-4ac3e22-font-size);
  font-weight: var(--e-global-typography-4ac3e22-font-weight);
  line-height: var(--e-global-typography-4ac3e22-line-height);
  color: var(--e-global-color-primary);
}

.post-content h2.wp-block-heading {
  font-family: var(--e-global-typography-04f1a6b-font-family), Sans-serif;
  font-size: var(--e-global-typography-04f1a6b-font-size);
  font-weight: var(--e-global-typography-04f1a6b-font-weight);
  line-height: var(--e-global-typography-04f1a6b-line-height);
  color: var(--e-global-color-primary);
}

.cookie-list-table h3 {
	margin-top: 0 !important;
}

.post-content h3.wp-block-heading, .cookie-list-table h3 {
  font-family: var(--e-global-typography-a2e3968-font-family), Sans-serif;
  font-size: var(--e-global-typography-a2e3968-font-size);
  font-weight: var(--e-global-typography-a2e3968-font-weight);
  line-height: var(--e-global-typography-a2e3968-line-height);
  color: var(--e-global-color-primary);
}

.post-content h4.wp-block-heading {
  font-family: var(--e-global-typography-1f053dc-font-family), Sans-serif;
  font-size: var(--e-global-typography-1f053dc-font-size);
  font-weight: var(--e-global-typography-1f053dc-font-weight);
  line-height: var(--e-global-typography-1f053dc-line-height);
  color: var(--e-global-color-primary);
}

.post-content h5.wp-block-heading {
  font-family: var(--e-global-typography-b7378f2-font-family), Sans-serif;
  font-size: var(--e-global-typography-b7378f2-font-size);
  font-weight: var(--e-global-typography-b7378f2-font-weight);
  line-height: var(--e-global-typography-b7378f2-line-height);
  color: var(--e-global-color-primary);
}

.post-content .wp-block-button {
  display: flex;
  align-items: center;
  justify-content: center;
}

.post-content .wp-block-button a {
  background-color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-af32317-font-family), Sans-serif;
  font-size: var(--e-global-typography-af32317-font-size);
  font-weight: var(--e-global-typography-af32317-font-weight);
  line-height: var(--e-global-typography-af32317-line-height);
  fill: var(--e-global-color-e5a5253);
  color: var(--e-global-color-e5a5253);
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: var(--e-global-color-primary);
  border-radius: 8px 8px 8px 8px;
  padding: 12px 24px 12px 24px;
  transition: all 0.3s;
}

.post-content .wp-block-button a:hover, .post-content .wp-block-button a:focus {
  background-color: var(--e-global-color-accent);
  border-color: var(--e-global-color-accent);
}

.post-content ul.wp-block-list li,
.post-content ol.wp-block-list li {
  margin-block-end: .5em !important;
}

.post-content .wp-block-separator {
  border: 0;
  border-bottom: 1px solid var(--gray-200);
  margin-block: 1.5em;
}

.post-content figure.wp-block-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin-block: 1.5em;
  margin-inline: 0;
  border-radius: 16px;
  overflow: hidden;
}

.post-content figure.wp-block-table, .cookie-list-table .cky-table-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--gray-200);
  width: 100%;
  margin-block: 1.5em;
  margin-inline: 0;
  border-radius: 8px;
  overflow: hidden;
}

.post-content figure.wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-content figure.wp-block-table table, .cookie-list-table .cky-table-wrapper table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.post-content figure.wp-block-table table thead, .cookie-list-table .cky-table-wrapper table thead {
  background-color: var(--e-global-color-primary);
  color: var(--color-white);
}

.post-content figure.wp-block-table table thead th, .cookie-list-table .cky-table-wrapper table thead th {
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: var(--e-global-typography-primary-font-size);
  font-weight: var(--e-global-typography-primary-font-weight);
  line-height: var(--e-global-typography-primary-line-height);
  padding: 12px 16px;
  text-align: left;
}

.post-content figure.wp-block-table table tbody tr, .cookie-list-table .cky-table-wrapper table tbody tr {
  background-color: var(--color-white);
  border-bottom: 1px solid var(--gray-200);
  transition: all 0.3s;
}

.post-content figure.wp-block-table.is-style-stripes table tbody tr {
  background-color: var(--color-white);
}

.post-content figure.wp-block-table.is-style-stripes table tbody tr:nth-child(even) {
  background-color: var(--gray-100);
}

.post-content figure.wp-block-table table tbody tr:hover, .cookie-list-table .cky-table-wrapper table tbody tr:hover {
  background-color: var(--gray-50);
}

.post-content figure.wp-block-table table tbody td, .cookie-list-table .cky-table-wrapper table tbody td {
  font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: var(--e-global-typography-secondary-font-weight);
  line-height: var(--e-global-typography-secondary-line-height);
  color: var(--e-global-color-text);
  border-right: 1px solid var(--gray-200);
  padding: 12px 16px;
}

.post-content figure.wp-block-table table tbody td:last-child, .cookie-list-table .cky-table-wrapper table tbody td:last-child {
  border-right: none;
}

.post-content figure.wp-block-table table tfoot, .cookie-list-table .cky-table-wrapper table tfoot {
  background-color: var(--gray-300);
  color: var(--e-global-color-primary);
}

.post-content figure.wp-block-table table tfoot td, .cookie-list-table .cky-table-wrapper table tfoot td {
  font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: 500;
  line-height: var(--e-global-typography-secondary-line-height);
  padding: 12px 16px;
}

.elementor-widget strong,
.elementor-widget b {
  font-weight: 600 !important;
  color: var(--e-global-color-primary) !important;
}

.elementor-widget.elementor-widget-text-editor a {
  font-weight: 600 !important;
  color: var(--e-global-color-primary) !important;
}

.elementor-widget.elementor-widget-text-editor a:hover {
  color: var(--e-global-color-accent) !important;
}

.elementor-widget.elementor-widget-text-editor ul li,
.elementor-widget.elementor-widget-text-editor ol li {
  margin-block-end: .5em !important;
}

.elementor-button-content-wrapper {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between !important;
}

.elementor-button.elementor-size-md,
.elementor-button.elementor-size-sm {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.elementor-button-icon svg {
  min-width: 16px;
}

.header.elementor-sticky--effects {
  background: var(--color-white) !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.header.sticky-top-on-scroll .logo img {
  filter: brightness(100);
  transition: all 0.3s;
}

.header.sticky-top-on-scroll.elementor-sticky--effects .logo img {
  filter: brightness(0);
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  ul
  li
  a.elementor-item,
.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  ul
  li
  a.elementor-item
  .sub-arrow {
  color: var(--color-white) !important;
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  ul
  li
  a.elementor-item
  .sub-arrow
  svg {
  fill: var(--color-white);
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  ul
  li
  a.elementor-item:hover {
  opacity: 0.8 !important;
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  .main-menu-cta-button
  .elementor-button {
  border-color: var(--color-white) !important;
  color: var(--e-global-color-primary) !important;
  background-color: var(--color-white) !important;
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  .main-menu-cta-button:hover
  .elementor-button,
.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  .main-menu-cta-button:focus
  .elementor-button {
  border-color: var(--e-global-color-accent) !important;
  color: var(--color-white) !important;
  background-color: var(--e-global-color-accent) !important;
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  .main-menu-cta-button
  svg
  path {
  fill: var(--e-global-color-accent) !important;
}

.header.sticky-top-on-scroll:not(.elementor-sticky--effects)
  .main-menu-cta-button:hover
  svg
  path {
  fill: var(--color-white) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .main-menu-cta-button
  .elementor-button {
  border-color: var(--e-global-color-primary) !important;
  color: var(--color-white) !important;
  background-color: var(--e-global-color-primary) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .main-menu-cta-button:hover
  .elementor-button {
  border-color: var(--e-global-color-accent) !important;
  color: var(--color-white) !important;
  background-color: var(--e-global-color-accent) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .main-menu-cta-button
  svg
  path {
  fill: var(--color-white) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .main-menu-cta-button:hover
  svg
  path {
  fill: var(--color-white) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .menu-trigger
  a
  svg
  rect {
  fill: var(--e-global-color-primary) !important;
}

.header.sticky-top-on-scroll.elementor-sticky--effects
  .menu-trigger:hover
  a
  svg
  rect {
  fill: var(--e-global-color-accent) !important;
}

p:first-child {
  margin-top: 0 !important;
}

p:last-child {
  margin-bottom: 0 !important;
}

.swiper-button-disabled {
  pointer-events: none;
}

.wpml-ls-menu-item .wpml-ls-flag {
  border-radius: 4px;
}

.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;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #333;
  display: block;
  font-size: 1rem;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 12px 24px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

@media (max-width: 1024px) {
  main, article {
    margin-top: -128px;
  }

  body.admin-bar {
    min-height: calc(100vh - 46px);
  }

  ul.elementor-nav-menu--dropdown li:first-child {
    margin-top: 20px !important;
  }

  ul.elementor-nav-menu--dropdown[aria-expanded="true"] {
    background-color: var(--color-white);
    box-shadow: none !important;
    position: relative !important;
    margin: 0px !important;
  }

  ul.elementor-nav-menu--dropdown .elementor-nav-menu--dropdown {
    padding-left: 16px !important;
  }

  ul.elementor-nav-menu--dropdown .elementor-nav-menu--dropdown li:first-child {
    margin-top: 0px !important;
  }

  ul.elementor-nav-menu--dropdown[aria-expanded="true"] a.elementor-sub-item {
    border-left: none !important;
  }

  ul.elementor-nav-menu--dropdown[aria-expanded="true"]
    .elementor-nav-menu--dropdown
    a.elementor-sub-item {
    padding: 12px 16px !important;
  }

  .md-min-w-unset {
    min-width: unset !important;
  }
}

@media (max-width: 768px) {
  main, article {
    margin-top: -112px;
  }
  .sm-h-auto {
    height: auto !important;
  }

  .sm-min-w-unset {
    min-width: unset !important;
  }
}
