/*!******************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./assets/src/scss/frontend.scss ***!
  \******************************************************************************************************************************************************************/
@charset "UTF-8";
/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio, input):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: pointer;
}

strong,
b {
  font-weight: inherit;
  font-weight: bolder;
}

/* Remove list styles (bullets/numbers) */
menu,
summary {
  list-style: none;
}

/* Firefox: solve issue where nested ordered lists continue numbering from parent (https://bugzilla.mozilla.org/show_bug.cgi?id=1881517) */
ol {
  counter-reset: revert;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't work */
input,
textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
   display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
   - fix for the content editable attribute will work properly.
   - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
  display: none;
}

:root {
  --dl-primary: #860a4e;
  --dl-secondary: #e41e18;
  --dl-tertiary: #fce8e8;
  --dl-danger: #e41e18;
  --dl-gray: #ccc;
  --dl-lightgray: #f5f5f5;
  --dl-body-bg: #fff;
  --dl-body-color: #000000;
  --dl-body-line-height: 1.5;
  --dl-font-family: "Satoshi", var(--dl-font-family-fallback);
  --dl-font-family-fallback: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
  	sans-serif;
  --dl-admin-bar-height: 0px;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 100%;
  text-rendering: optimizeLegibility !important;
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  overflow-x: hidden;
}
html:has(dialog[open]) {
  overflow: hidden;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  font-family: var(--dl-font-family);
  line-height: var(--dl-body-line-height);
  background-color: var(--dl-body-bg);
  color: var(--dl-body-color);
  overflow-x: hidden;
  scroll-margin-top: var(--dl-below-navbar);
}

:root:has(body.admin-bar) {
  --dl-admin-bar-height: 32px;
}
@media screen and (max-width: 782px) {
  :root:has(body.admin-bar) {
    --dl-admin-bar-height: 46px;
  }
}

#wpadminbar {
  position: fixed !important;
}

::selection {
  background: var(--dl-tertiary);
  color: contrast-color(var(--dl-tertiary));
}

a {
  color: var(--dl-secondary);
}

a:not(:hover) {
  text-decoration: none;
}

svg {
  transform: translateZ(0);
  backface-visibility: hidden;
}

ol,
ul,
dl {
  margin-bottom: 1em;
  padding-left: 1em;
}

.scroller {
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
  max-width: 100%;
  max-width: calc(100% + 2rem);
}
.scroller::-webkit-scrollbar {
  display: none;
}
.scroller {
  -ms-overflow-style: none;
  scrollbar-width: none;
  mask-image: linear-gradient(to right, rgb(0, 0, 0) 0 calc(100% - 2rem), rgba(0, 0, 0, 0) 100%);
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  mask-position: right;
}

.wp-block-paragraph {
  font-size: 1.125rem;
  margin-bottom: 2rem;
  line-height: 1.66;
}

.wp-block-image {
  margin-bottom: 2rem;
}

.wp-block-list {
  font-size: 1.125rem;
  margin-bottom: 2rem;
  line-height: 1.8;
}

/**
* This is a variable font
* You can control variable axes as shown below:
* font-variation-settings: wght 900.0;
*
* available axes:
'wght' (range from 300.0 to 900.0
*/
@font-face {
  font-family: "Satoshi";
  src: url(../fonts/Satoshi-Variable.woff2) format("woff2"), url(../fonts/Satoshi-Variable.woff) format("woff"), url(../fonts/Satoshi-Variable.ttf) format("truetype");
  font-weight: 300 900;
  font-display: swap;
  font-style: normal;
}
/**
* This is a variable font
* You can control variable axes as shown below:
* font-variation-settings: wght 900.0;
*
* available axes:
'wght' (range from 300.0 to 900.0
*/
:root {
  --dl-h1-font-size: clamp(2rem, 3vw, 3rem);
  --dl-h2-font-size: clamp(1.75rem, 2.5vw, 2.5rem);
  --dl-h3-font-size: clamp(1.5rem, 2vw, 2rem);
  --dl-h4-font-size: clamp(1.25rem, 1.75vw, 1.75rem);
  --dl-h5-font-size: clamp(1.125rem, 1.5vw, 1.5rem);
  --dl-h6-font-size: clamp(1rem, 1.25vw, 1.25rem);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  line-height: var(--dl-heading-line-height, 1.2);
  margin-bottom: var(--dl-heading-margin-bottom, 0.75rem);
  font-weight: var(--dl-heading-font-weight, 700);
  font-family: var(--dl-heading-font-family, inherit);
}

h1,
.h1 {
  font-size: var(--dl-h1-font-size);
}

h2,
.h2 {
  font-size: var(--dl-h2-font-size);
}

h3,
.h3 {
  font-size: var(--dl-h3-font-size);
}

h4,
.h4 {
  font-size: var(--dl-h4-font-size);
}

h5,
.h5 {
  font-size: var(--dl-h5-font-size);
}

h6,
.h6 {
  font-size: var(--dl-h6-font-size);
}

p {
  margin-bottom: var(--dl-paragraph-margin-bottom, 1rem);
}

small,
.small {
  font-size: var(--dl-small-font-size, 0.75em);
}

.svg-icon {
  width: 1em;
  height: 1em;
  font-size: 1em;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
.gsap-hidden {
  visibility: hidden;
}
@media (prefers-reduced-motion: reduce) {
  .gsap-hidden {
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }
}

@keyframes fade-in {
  to {
    opacity: 1;
  }
}
@keyframes modal {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes drawer {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes dialog-backdrop {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes ButtonIconRight {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  40% {
    transform: translateX(200%);
    opacity: 1;
  }
  50% {
    transform: translateX(200%);
    opacity: 0;
  }
  51% {
    transform: translateX(-200%);
    opacity: 0;
  }
  60% {
    transform: translateX(-200%);
    opacity: 1;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes ButtonIconDown {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  40% {
    transform: translateY(200%);
    opacity: 1;
  }
  50% {
    transform: translateY(200%);
    opacity: 0;
  }
  51% {
    transform: translateY(-200%);
    opacity: 0;
  }
  60% {
    transform: translateY(-200%);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@view-transition {
  navigation: auto;
}
.h-100 {
  height: 100% !important;
}

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

.center {
  place-content: center;
}

.d-none {
  display: none !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.alignwide {
  width: 100%;
}

img.alignwide {
  height: auto;
}

.alignfull {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

img.alignfull {
  height: auto;
  border-radius: 0;
}

@media (min-width: ) {
  .d-xs-none {
    display: none !important;
  }
  .d-xs-block {
    display: block !important;
  }
  .d-xs-flex {
    display: flex !important;
  }
  .d-xs-inline-flex {
    display: inline-flex !important;
  }
  .d-xs-grid {
    display: grid !important;
  }
}
@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-grid {
    display: grid !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
}
@media (min-width: 1400px) {
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
}
:root {
  --dl-navbar-padding-y: 0.5rem;
  --dl-navbar-padding-x: 0rem;
  --dl-navbar-gap: clamp(1rem, 2vw, 2rem);
  --dl-navbar-transition: box-shadow 0.2s ease-out, margin-top 0.2s ease-out;
  --dl-navbar-logo-max-width: clamp(150px, 15vw, 250px);
  --dl-navbar-bg: rgba(255, 255, 255, 0.7);
  --dl-navbar-border-width: 1px;
  --dl-navbar-border-color: rgba(#fff, 0.1);
  --dl-navbar-height: 54px;
  --dl-navbar-margin-top: 1.25rem;
  --dl-below-navbar: calc(var(--dl-navbar-height, 0) + var(--dl-navbar-top, 0));
}
@media (min-width: 768px) {
  :root {
    --dl-navbar-height: 83px;
    --dl-navbar-margin-top: 1.75rem;
  }
}
:root:has(body.admin-bar) {
  --dl-navbar-top: 46px;
}
@media screen and (min-width: 783px) {
  :root:has(body.admin-bar) {
    --dl-navbar-top: 32px;
  }
}

.navbar-wrapper {
  width: 100%;
  position: fixed;
  top: var(--dl-navbar-top, 0);
  z-index: var(--dl-navbar-z-index, 1000);
  pointer-events: none;
  --dl-container-max-width: 1420px;
}
.navbar {
  display: flex;
  backdrop-filter: blur(20px);
  border: var(--dl-navbar-border-width) solid var(--dl-navbar-border-color);
  padding: var(--dl-navbar-padding-y) var(--dl-navbar-padding-x);
  background: var(--dl-navbar-bg, var(--dl-body-bg));
  color: var(--dl-navbar-color, inherit);
  transition: var(--dl-navbar-transition);
  border-radius: 100px;
  pointer-events: all;
  margin-top: var(--dl-navbar-margin-top);
  height: var(--dl-navbar-height);
}
.navbar-inner {
  padding: 0 1rem;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: var(--dl-navbar-gap);
}
@media (min-width: 768px) {
  .navbar-inner {
    padding: 0 2.5rem;
  }
}
.navbar .navbar-logo {
  margin-right: auto;
}
.navbar .custom-logo-link {
  display: flex;
}
.navbar .custom-logo {
  max-width: var(--dl-navbar-logo-max-width, 200px);
  height: auto;
}
.navbar .navbar-nav {
  display: none;
}
.navbar .navbar-nav .nav-item .nav-dropdown-toggle {
  position: relative;
  left: -1em;
  z-index: 2;
}
.navbar .navbar-nav .nav-link {
  position: relative;
  text-align: center;
  justify-content: center;
  padding: 0.25rem 1rem;
}
.navbar .navbar-nav .nav-link-inner {
  position: relative;
}
.navbar .navbar-nav .nav-link-inner::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  content: "";
  width: 0;
  height: 1.5px;
  background-color: currentColor;
  transform: translateX(-50%);
  transition: width 0.3s ease, color 0.3s ease;
}
.navbar .navbar-nav .nav-link:hover .nav-link-inner::after, .navbar .navbar-nav .nav-link:focus .nav-link-inner::after {
  width: 100%;
}
.navbar .navbar-nav .nav-item.active > .nav-link {
  color: var(--dl-secondary);
  font-weight: 700;
}
.navbar .navbar-nav .nav-item.active > .nav-link::after {
  width: 100%;
}
.navbar .navbar-nav .nav-dropdown-item .nav-dropdown-toggle {
  padding: var(--dl-dropdown-item-padding, 0.5rem 1rem);
  margin-left: auto;
}
.navbar .navbar-nav .nav-dropdown-item .nav-dropdown-toggle::after {
  transform: rotate(-90deg);
}
.navbar .navbar-buttons {
  display: none;
  gap: 1rem;
  margin-right: -1.5rem;
}
@media (min-width: 768px) {
  .navbar .navbar-buttons {
    display: flex;
  }
}
.navbar .navbar-drawer {
  --dl-nav-gap: 0.75rem;
}
@media (min-width: 768px) {
  .navbar .navbar-toggle {
    display: none;
  }
  .navbar .navbar-drawer {
    display: none;
  }
  .navbar .navbar-nav {
    display: flex;
    margin-inline: auto;
  }
}

.navbar-toggle {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: var(--dl-primary);
  gap: 3px;
}
.navbar-toggle > span {
  width: 18px;
  height: 2px;
  border-radius: 50px;
  background: var(--dl-primary);
}

body.scrolled .navbar {
  margin-top: 0;
}

.navbar-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5em;
  height: 1.5em;
  font-size: 1.5em;
  cursor: pointer;
}

.header {
  --dl-header-padding: 0.5rem;
  position: relative;
  padding: var(--dl-header-padding);
  --dl-container-padding-x: calc(clamp(1.25rem, 2vw, 4rem) - var(--dl-header-padding));
}
@media (min-width: 768px) {
  .header {
    display: flex;
    padding: 0;
  }
}
.header-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  border-radius: 20px;
  background-image: none;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
@media (min-width: 768px) {
  .header-inner {
    background-image: linear-gradient(0deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0.25) 100%), linear-gradient(81.89deg, rgba(231, 220, 217, 0.65) 0%, rgba(198, 198, 198, 0) 60%), var(--dl-header-background-image);
  }
}
.header-inner::before {
  display: block;
  content: "";
  height: calc(var(--dl-navbar-height) + var(--dl-navbar-margin-top) + var(--dl-admin-bar-height, 0px));
  width: 100%;
}
@media (max-width: 767.98px) {
  .header-inner::before {
    display: none;
  }
}
.header-inner {
  background-size: cover, cover, 120%;
}
@media (prefers-reduced-motion: no-preference) {
  .header-inner {
    will-change: background-size, background-position;
    background-position: center, center, 50% calc(var(--y, 0) + 50%);
  }
}
.header .container {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .header {
    min-height: 800px;
  }
}

.header-img {
  position: relative;
  max-width: 100%;
  object-fit: cover;
}
@media (min-width: 768px) {
  .header-img {
    display: none;
  }
}
.header-img {
  height: clamp(330px, 40vh, 500px);
  border-radius: 20px;
}
.header-img-wrapper {
  position: relative;
  margin-bottom: 0.75rem;
}
@media (max-width: 767.98px) {
  .header-img-wrapper {
    border-radius: 20px;
    overflow: hidden;
  }
}
@media (min-width: 768px) {
  .header-img-wrapper {
    display: none;
  }
}
.header-img-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(0deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0.25) 100%), linear-gradient(81.89deg, rgba(231, 220, 217, 0.65) 0%, rgba(198, 198, 198, 0) 60%);
}
.header-img-wrapper svg {
  width: 100%;
  color: var(--dl-body-bg);
  position: absolute;
  z-index: 1;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 20vw;
  pointer-events: none;
}

.header-curve {
  pointer-events: none;
  width: 100%;
  color: var(--dl-body-bg);
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  left: 0;
  right: 0;
  display: none;
}
@media (min-width: 768px) {
  .header-curve {
    display: block;
  }
}
.header-curve svg {
  width: 100%;
  height: clamp(150px, 25vw, 300px);
}

.header-content {
  width: 100%;
}
@media (min-width: 768px) {
  .header-content {
    max-width: 600px;
  }
}

.header-date {
  font-weight: 700;
  color: var(--dl-primary);
  font-size: 1.25rem;
}

.header-title {
  font-size: 2rem;
  font-weight: inherit;
}
@media (min-width: 768px) {
  .header-title {
    font-size: 4rem;
  }
}
.header-title b,
.header-title strong {
  font-weight: 700;
}

.header-text {
  font-size: 1rem;
}
@media (min-width: 768px) {
  .header-text {
    font-size: 1.5rem;
  }
}

.header-buttons {
  margin-top: 2rem;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.875rem;
}

.header-data {
  color: var(--dl-primary);
  font-size: 1.25rem;
}

.header_singular {
  min-height: 0;
  padding-top: 1rem;
}
@media (max-width: 767.98px) {
  .header_singular {
    padding-top: calc(var(--dl-navbar-height) + var(--dl-navbar-margin-top) + 1rem);
  }
}
.header_singular .header-content {
  width: 100%;
  max-width: 100%;
}
.header_singular .header-title {
  width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .header_singular .header-title {
    font-size: 3.125rem;
  }
}

.header_image {
  position: relative;
}
@media (min-width: 768px) {
  .header_image .header-img {
    display: block;
    position: absolute;
    z-index: 1;
    top: 40%;
    left: 40%;
    width: 120%;
    max-width: 120%;
    object-fit: cover;
    height: 120%;
    aspect-ratio: 1/1;
  }
}
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
  .header_image .header-img {
    will-change: transform;
    transform: translate3d(-50%, calc(var(--y, 0%) - 50%), 0);
  }
}
@media (min-width: 768px) {
  .header_image .header-img-wrapper {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: 100%;
    aspect-ratio: 1/1;
    max-width: 50%;
    pointer-events: none;
    overflow: hidden;
    mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%22819%22%20height%3D%22734%22%20viewBox%3D%220%200%20819%20734%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill%3D%22black%22%20fill-rule%3D%22evenodd%22%20d%3D%22%20%20%20%20%20%20M0%200H819V734H0V0Z%20%20%20%20%20%20M677.995%20692.527C193.864%20712.236%20-3.76484%20416.908%20100.673%20-6.53711H0V734H889V631.962C889%20678.156%20749.414%20689.62%20677.995%20692.527Z%20%20%20%20%22%20%2F%3E%3C%2Fsvg%3E");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: 100% 0;
  }
  .header_image .header-img-wrapper svg {
    display: none !important;
  }
}
.header_image .header-content {
  position: relative;
  z-index: 5;
}

@media (min-width: 768px) {
  .header_frontpage {
    padding: 0.5rem;
    min-height: clamp(600px, 100vh, 800px);
  }
}

.header_event {
  min-height: 0;
  padding: 0;
}
@media (max-width: 767.98px) {
  .header_event {
    padding-top: calc(var(--dl-navbar-height) + var(--dl-navbar-margin-top));
  }
}
.header_event .breadcrumb {
  margin-top: 1rem;
  margin-bottom: 4rem;
}
.header_event .header-title {
  font-weight: 700;
}
.header_event .header-text {
  max-width: 420px;
}
.header_event .header-img-wrapper {
  display: block;
  border-radius: 0;
  width: 100%;
  height: clamp(300px, 50vw, 450px);
  margin-top: clamp(1.5rem, 3vw, 3rem);
  overflow: hidden;
}
.header_event .header-img-wrapper::after {
  opacity: 0.4;
}
.header_event .header-img-wrapper img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 120%;
  object-fit: cover;
  border-radius: 0;
  transform: translateY(calc(var(--y) * 0.66 - 10%));
}
.header_event .row {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
}
@media (min-width: 768px) {
  .header_event .row {
    flex-direction: row;
  }
}
.header_event .header-time,
.header_event .header-location {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  font-weight: 500;
  margin-bottom: 0.75rem;
}
.header_event .header-time .svg-icon,
.header_event .header-location .svg-icon {
  font-size: 1.125em;
}
.header_event .header-location {
  margin-bottom: 1.75rem;
}

:root {
  --dl-main-padding-y: clamp(1.5rem, 3vw, 3rem);
  --dl-main-padding-x: 0;
  --dl-main-padding: var(--dl-main-padding-y) var(--dl-main-padding-x);
}

.main {
  padding: var(--dl-main-padding);
}
.main:not(:has(.entry-header)):has(.entry-content > .section:first-child) {
  padding-top: 0;
}
.main:has(.entry-content > .section:last-child) {
  padding-bottom: 0;
}
.main:has(.entry-content.background_swirl) {
  position: relative;
}

> .entry-content p,
> .entry-content h1,
> .entry-content h2,
> .entry-content h3,
> .entry-content h4,
> .entry-content h5,
> .entry-content h6,
> .entry-content ul,
> .entry-content ol,
> .entry-content dl {
  margin-inline: auto;
}
.entry-content.background_swirl .background-swirl {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  min-height: 800px;
  transform: translate(-50%, -50%);
  z-index: -1;
  color: var(--dl-tertiary);
}
@media (max-width: 767.98px) {
  .entry-content.background_swirl .background-swirl {
    min-width: 800px;
    min-height: max(800px, 100vh);
  }
}
.entry-content.background_swirl .background-swirl svg {
  width: 100%;
  height: 100%;
}
.entry-content.posts {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: clamp(1rem, 1.25vw, 1.25rem);
  justify-content: center;
  width: 100%;
}
@media (min-width: 768px) {
  .entry-content.posts {
    grid-template-columns: repeat(2, 1fr);
  }
}
.entry-content.posts .col.hidden {
  opacity: 0;
  pointer-events: none;
  display: none;
}

:root {
  --dl-footer-padding-y: 2rem;
  --dl-footer-padding-x: 0;
  --dl-footer-bg: transparent;
}

.footer {
  padding: var(--dl-footer-padding-y) var(--dl-footer-padding-x);
  background: var(--dl-footer-bg, transparent);
  color: var(--dl-footer-color, inherit);
}
@media (max-width: 767.98px) {
  .footer {
    padding-bottom: 0;
  }
}

.footer-middle {
  padding-bottom: 3rem;
}
.footer-middle .container {
  display: flex;
  gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .footer-middle .container {
    flex-direction: row;
  }
}
.footer-middle .col {
  width: 100%;
}
.footer-middle .col:nth-child(1) {
  text-align: center;
}
@media (max-width: 767.98px) {
  .footer-middle .col:nth-child(1) img {
    width: 220px;
  }
}
@media (min-width: 768px) {
  .footer-middle .col {
    width: 20%;
  }
  .footer-middle .col:nth-child(1) {
    width: 40%;
    text-align: inherit;
  }
}
.footer-middle .widget {
  margin-bottom: 1rem;
}
.footer-middle .widget-title {
  color: var(--dl-secondary);
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 1.5rem;
}
.footer-middle .menu {
  font-weight: 500;
  padding: 0;
  list-style: none;
}
.footer-middle .menu li {
  margin-bottom: 0.5rem;
}
.footer-middle .menu a {
  position: relative;
  display: inline-block;
  color: inherit;
  text-decoration: none;
}
.footer-middle .menu a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1.5px;
  background-color: currentColor;
  transition: width 0.3s ease-in-out;
}
.footer-middle .menu a:hover::after, .footer-middle .menu a:focus::after {
  width: 100%;
}
.footer-middle .socials {
  display: inline-flex;
  gap: 0.75rem;
  margin-top: 1rem;
}
.footer-middle .socials .social-icon {
  font-size: 1.375rem;
  border-radius: 999px;
  background: var(--dl-tertiary);
  color: var(--dl-primary);
  width: 3.125rem;
  height: 3.125rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.3s ease;
}
.footer-middle .socials .social-icon:hover, .footer-middle .socials .social-icon:focus {
  transform: scale(1.1);
}

.container-footer-bottom-bar {
  --dl-container-max-width: 1420px;
}
@media (max-width: 767.98px) {
  .container-footer-bottom-bar {
    --dl-container-padding: 0;
  }
}

.footer-bottom-bar {
  background: var(--dl-primary);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.75rem;
  color: #fff;
  font-size: 0.625rem;
}
@media (min-width: 768px) {
  .footer-bottom-bar {
    border-radius: 50px;
    font-size: 0.75rem;
  }
}

:root {
  --dl-container-padding-y: 0;
  --dl-container-padding-x: clamp(1.5rem, 2vw, 4rem);
  --dl-container-padding: var(--dl-container-padding-y) var(--dl-container-padding-x);
  --dl-container-max-width: 1200px;
}

.container {
  width: 100%;
  margin-inline: auto;
  max-width: var(--dl-container-max-width, none);
  padding: var(--dl-container-padding);
}

:root {
  --dl-section-padding-y: clamp(2rem, 5vw, 5rem);
  --dl-section-padding-x: 0;
  --dl-section-padding: var(--dl-section-padding-y) var(--dl-section-padding-x);
}

.section {
  padding: var(--dl-section-padding);
}
.container .section {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.section-inner {
  width: 100%;
}

.section-title {
  font-size: 2.75rem;
  font-weight: 400;
  margin-bottom: 1.25rem;
}
@media (max-width: 767.98px) {
  .section-title {
    font-size: 1.5rem;
  }
}
.section-title b,
.section-title strong {
  font-weight: 700;
}

.section-subtitle {
  font-size: 1.5rem;
  margin-bottom: 0.75rem;
}

.section-text b,
.section-text strong {
  font-weight: 700;
}
.section-text a {
  font-weight: bold;
  color: var(--dl-secondary);
}

.section-img {
  max-width: 100%;
  height: auto;
}

.section-video iframe {
  width: 100%;
}

.section-buttons {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.875rem;
}

:root {
  --dl-form-input-font-size: 20px;
  --dl-form-input-font-weight: 500;
  --dl-form-input-border-radius: 10px;
  --dl-form-input-border-width: 2px;
  --dl-form-input-bg: var(--dl-lightgray);
  --dl-form-input-border-color: transparent;
  --dl-form-input-focus-border-color: var(--dl-primary);
  --dl-form-input-color: inherit;
  --dl-form-input-padding-y: clamp(0.5rem, 1.25vw, 1.25rem);
  --dl-form-input-padding-x: clamp(1rem, 1.5vw, 1.5rem);
  --dl-form-input-padding: var(--dl-form-input-padding-y) var(--dl-form-input-padding-x);
  --dl-form-input-placeholder-color: rgba(0, 0, 0, 0.25);
  --dl-form-check-box-size: 1.25em;
  --dl-form-check-mark-size: 0.5em;
  --dl-form-check-gap: 0.5em;
  --dl-form-check-bg: var(--dl-body-bg);
  --dl-form-check-color: var(--dl-primary);
  --dl-form-check-border-radius: 5px;
  --dl-form-check-border-width: 1px;
  --dl-form-check-border-color: var(--dl-gray);
  --dl-form-check-focus-border-color: var(--dl-primary);
  --dl-form-invalid-color: var(--dl-danger);
  --dl-form-valid-color: var(--dl-success);
}

body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector,
.form-input,
body .wc-block-components-form .wc-block-components-text-input input[type=email],
body .wc-block-components-form .wc-block-components-text-input input[type=number],
body .wc-block-components-form .wc-block-components-text-input input[type=password],
body .wc-block-components-form .wc-block-components-text-input input[type=tel],
body .wc-block-components-form .wc-block-components-text-input input[type=text],
body .wc-block-components-form .wc-block-components-text-input input[type=url],
body .wc-block-components-text-input input[type=email],
body .wc-block-components-text-input input[type=number],
body .wc-block-components-text-input input[type=password],
body .wc-block-components-text-input input[type=tel],
body .wc-block-components-text-input input[type=text],
body .wc-block-components-text-input input[type=url],
body.woocommerce .input-text,
body.woocommerce form .form-row .input-text,
.woocommerce .input-text,
.woocommerce form .form-row .input-text,
.style-form textarea,
body .gform_wrapper textarea,
.style-form input[type=email],
body .gform_wrapper input[type=email],
.style-form input[type=number],
body .gform_wrapper input[type=number],
.style-form input[type=password],
body .gform_wrapper input[type=password],
.style-form input[type=tel],
body .gform_wrapper input[type=tel],
.style-form input[type=text],
body .gform_wrapper input[type=text],
.style-form input[type=url],
body .gform_wrapper input[type=url],
.style-form input[type=search],
body .gform_wrapper input[type=search],
.style-form input[type=color],
body .gform_wrapper input[type=color],
.style-form input[type=date],
body .gform_wrapper input[type=date] {
  min-width: 0;
  min-height: 0;
  cursor: text;
  font-size: var(--dl-form-input-font-size);
  font-weight: var(--dl-form-input-font-weight);
  padding: var(--dl-form-input-padding);
  background: var(--dl-form-input-bg);
  border: var(--dl-form-input-border-width) solid var(--dl-form-input-border-color);
  border-radius: var(--dl-form-input-border-radius);
  transition: border-color 0.15s ease-in-out, color 0.15s ease-in-out;
  outline: none !important;
  box-shadow: none !important;
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector:focus,
.form-input:focus,
body .wc-block-components-text-input input[type=email]:focus,
body .wc-block-components-text-input input[type=number]:focus,
body .wc-block-components-text-input input[type=password]:focus,
body .wc-block-components-text-input input[type=tel]:focus,
body .wc-block-components-text-input input[type=text]:focus,
body .wc-block-components-text-input input[type=url]:focus,
.woocommerce .input-text:focus,
.woocommerce form .form-row .input-text:focus,
.style-form textarea:focus,
body .gform_wrapper textarea:focus,
.style-form input[type=email]:focus,
body .gform_wrapper input[type=email]:focus,
.style-form input[type=number]:focus,
body .gform_wrapper input[type=number]:focus,
.style-form input[type=password]:focus,
body .gform_wrapper input[type=password]:focus,
.style-form input[type=tel]:focus,
body .gform_wrapper input[type=tel]:focus,
.style-form input[type=text]:focus,
body .gform_wrapper input[type=text]:focus,
.style-form input[type=url]:focus,
body .gform_wrapper input[type=url]:focus,
.style-form input[type=search]:focus,
body .gform_wrapper input[type=search]:focus,
.style-form input[type=color]:focus,
body .gform_wrapper input[type=color]:focus,
.style-form input[type=date]:focus,
body .gform_wrapper input[type=date]:focus {
  border-color: var(--dl-form-input-focus-border-color, var(--dl-form-input-border-color));
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector::placeholder,
.form-input::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=email]::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=number]::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=password]::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=tel]::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=text]::placeholder,
body .wc-block-components-form .wc-block-components-text-input input[type=url]::placeholder,
body .wc-block-components-text-input input[type=email]::placeholder,
body .wc-block-components-text-input input[type=number]::placeholder,
body .wc-block-components-text-input input[type=password]::placeholder,
body .wc-block-components-text-input input[type=tel]::placeholder,
body .wc-block-components-text-input input[type=text]::placeholder,
body .wc-block-components-text-input input[type=url]::placeholder,
body.woocommerce .input-text::placeholder,
.woocommerce .input-text::placeholder,
.woocommerce form .form-row .input-text::placeholder,
.style-form textarea::placeholder,
body .gform_wrapper textarea::placeholder,
.style-form input[type=email]::placeholder,
body .gform_wrapper input[type=email]::placeholder,
.style-form input[type=number]::placeholder,
body .gform_wrapper input[type=number]::placeholder,
.style-form input[type=password]::placeholder,
body .gform_wrapper input[type=password]::placeholder,
.style-form input[type=tel]::placeholder,
body .gform_wrapper input[type=tel]::placeholder,
.style-form input[type=text]::placeholder,
body .gform_wrapper input[type=text]::placeholder,
.style-form input[type=url]::placeholder,
body .gform_wrapper input[type=url]::placeholder,
.style-form input[type=search]::placeholder,
body .gform_wrapper input[type=search]::placeholder,
.style-form input[type=color]::placeholder,
body .gform_wrapper input[type=color]::placeholder,
.style-form input[type=date]::placeholder,
body .gform_wrapper input[type=date]::placeholder {
  color: var(--dl-form-input-placeholder-color, var(--dl-form-input-color));
}

.form-select,
body .wc-blocks-components-select .wc-blocks-components-select__select,
body.woocommerce select.orderby,
.woocommerce select.orderby,
.style-form select,
body .gform_wrapper select {
  min-height: 0;
  appearance: base-select;
  cursor: pointer;
  font-size: var(--dl-form-input-font-size);
  font-weight: var(--dl-form-input-font-weight);
  background: var(--dl-form-input-bg);
  border-radius: var(--dl-form-input-border-radius);
  border: var(--dl-form-input-border-width) solid var(--dl-form-input-border-color);
  padding: var(--dl-form-input-padding-y) var(--dl-form-input-padding-x);
  transition: border-color 0.15s ease-in-out, color 0.15s ease-in-out;
  outline: none !important;
  box-shadow: none !important;
}
.form-select:focus,
body .wc-blocks-components-select .wc-blocks-components-select__select:focus,
.woocommerce select.orderby:focus,
.style-form select:focus,
body .gform_wrapper select:focus {
  border-color: var(--dl-form-input-focus-border-color, var(--dl-form-input-border-color));
}
.form-select::picker-icon,
body .wc-blocks-components-select .wc-blocks-components-select__select::picker-icon,
.woocommerce select.orderby::picker-icon,
.style-form select::picker-icon,
body .gform_wrapper select::picker-icon {
  display: none;
}
.form-select::picker(select),
body .wc-blocks-components-select .wc-blocks-components-select__select::picker(select),
.woocommerce select.orderby::picker(select),
.style-form select::picker(select),
body .gform_wrapper select::picker(select) {
  appearance: base-select;
  border-radius: var(--dl-dropdown-border-radius, var(--dl-dropdown-border-radius));
  border: var(--dl-dropdown-border-width, 1px) solid var(--dl-dropdown-border-color, #ccc);
  background: var(--dl-dropdown-bg, #fff);
  padding: var(--dl-form-input-padding);
  box-shadow: var(--dl-dropdown-shadow, 0 0 5px rgba(0, 0, 0, 0.3));
}
.form-select option,
body .wc-blocks-components-select .wc-blocks-components-select__select option,
.woocommerce select.orderby option,
.style-form select option,
body .gform_wrapper select option {
  padding: 0.25rem 0;
}
.form-select option::checkmark,
body .wc-blocks-components-select .wc-blocks-components-select__select option::checkmark,
.woocommerce select.orderby option::checkmark,
.style-form select option::checkmark,
body .gform_wrapper select option::checkmark {
  display: none;
}
@supports not (appearance: base-select) {
  .form-select,
  body .wc-blocks-components-select .wc-blocks-components-select__select,
  body.woocommerce select.orderby,
  .woocommerce select.orderby,
  .style-form select,
  body .gform_wrapper select {
    -webkit-appearance: none; /* For WebKit-based browsers */
    -moz-appearance: none; /* For Firefox */
  }
}
.form-select,
body .wc-blocks-components-select .wc-blocks-components-select__select,
body.woocommerce select.orderby,
.woocommerce select.orderby,
.style-form select,
body .gform_wrapper select {
  background-image: url("data:image/svg+xml;utf8,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 9L12 15L18 9\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke=\"currentColor\"/></svg>");
  background-repeat: no-repeat;
  background-position: right var(--dl-form-input-padding-x) center;
  background-size: 1.5rem;
  padding-right: calc(var(--dl-form-input-padding-x) * 2 + 1rem);
}

body .gform_wrapper .gfield_checkbox .gchoice,
body .gform_wrapper .ginput_container_consent,
.form-check,
body .gform_wrapper .gfield_radio .gchoice,
.form-radio {
  display: inline-grid;
  grid-template-columns: var(--dl-form-check-box-size) auto;
  align-items: center;
  gap: var(--dl-form-check-gap, 0.5rem);
}
body .gform_wrapper .gfield_checkbox .gchoice input[type=checkbox],
body .gform_wrapper .ginput_container_consent input[type=checkbox],
body .gform_wrapper .gfield_checkbox .gchoice input[type=radio],
body .gform_wrapper .ginput_container_consent input[type=radio],
.form-check input[type=checkbox],
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox],
.form-radio input[type=checkbox],
.form-check input[type=radio],
body .gform_wrapper .gfield_radio .gchoice input[type=radio],
.form-radio input[type=radio] {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  position: relative;
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--dl-form-check-bg);
  margin: 0;
  font: inherit;
  width: 1em;
  height: 1em;
  min-width: 1em;
  border: var(--dl-form-check-border-width) solid var(--dl-form-check-border-color);
  border-radius: var(--dl-form-check-border-radius);
  font-size: var(--dl-form-check-box-size);
  color: var(--dl-form-check-color, currentColor);
}
body .gform_wrapper .gfield_checkbox .gchoice input[type=checkbox]:disabled,
body .gform_wrapper .ginput_container_consent input[type=checkbox]:disabled,
body .gform_wrapper .gfield_checkbox .gchoice input[type=radio]:disabled,
body .gform_wrapper .ginput_container_consent input[type=radio]:disabled,
.form-check input[type=checkbox]:disabled,
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox]:disabled,
.form-radio input[type=checkbox]:disabled,
.form-check input[type=radio]:disabled,
body .gform_wrapper .gfield_radio .gchoice input[type=radio]:disabled,
.form-radio input[type=radio]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
body .gform_wrapper .gfield_checkbox .gchoice input[type=checkbox]::before,
body .gform_wrapper .ginput_container_consent input[type=checkbox]::before,
body .gform_wrapper .gfield_checkbox .gchoice input[type=radio]::before,
body .gform_wrapper .ginput_container_consent input[type=radio]::before,
.form-check input[type=checkbox]::before,
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox]::before,
.form-radio input[type=checkbox]::before,
.form-check input[type=radio]::before,
body .gform_wrapper .gfield_radio .gchoice input[type=radio]::before,
.form-radio input[type=radio]::before {
  display: block;
  content: "";
  width: var(--dl-form-check-mark-size);
  height: var(--dl-form-check-mark-size);
  transform: scale(0);
  transition: 0.1s transform ease-in-out;
  background: currentColor;
  transform-origin: center;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
body .gform_wrapper .gfield_checkbox .gchoice input[type=checkbox]:checked::before,
body .gform_wrapper .ginput_container_consent input[type=checkbox]:checked::before,
body .gform_wrapper .gfield_checkbox .gchoice input[type=radio]:checked::before,
body .gform_wrapper .ginput_container_consent input[type=radio]:checked::before,
.form-check input[type=checkbox]:checked::before,
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox]:checked::before,
.form-radio input[type=checkbox]:checked::before,
.form-check input[type=radio]:checked::before,
body .gform_wrapper .gfield_radio .gchoice input[type=radio]:checked::before,
.form-radio input[type=radio]:checked::before {
  transform: scale(1);
}

body .gform_wrapper .gfield_radio .gchoice input[type=radio],
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox],
.form-radio input[type=radio],
.form-radio input[type=checkbox] {
  border-radius: 50%;
}
body .gform_wrapper .gfield_radio .gchoice input[type=radio]::before,
body .gform_wrapper .gfield_radio .gchoice input[type=checkbox]::before,
.form-radio input[type=radio]::before,
.form-radio input[type=checkbox]::before {
  border-radius: 50%;
  clip-path: none;
}

body .gform_wrapper .gfield_radio,
body .gform_wrapper .gfield_checkbox {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
  flex-wrap: wrap;
}
body .gform_wrapper .gfield_checkbox .gchoice,
body .gform_wrapper .ginput_container_consent {
  display: flex;
  align-items: inherit;
}
@media (max-width: -0.02) {
  body .gform_wrapper .gfield_checkbox .gchoice,
  body .gform_wrapper .ginput_container_consent {
    flex-wrap: wrap;
  }
}
body .gform_wrapper .gfield_radio .gchoice {
  display: flex;
  align-items: inherit;
}
@media (max-width: -0.02) {
  body .gform_wrapper .gfield_radio .gchoice {
    flex-wrap: wrap;
  }
}
body .gform_wrapper .gform-grid-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 2%;
}
body .gform_wrapper .gform-grid-row .gform-grid-col select,
body .gform_wrapper .gform-grid-row .gform-grid-col input,
body .gform_wrapper .gform-grid-row .gform-grid-col textarea {
  width: 100%;
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  cursor: pointer;
  height: 100%;
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector .gform-phone__dial-code {
  line-height: 1;
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__country-selector:hover {
  border: var(--dl-form-input-border-width) solid var(--dl-form-input-border-color);
  background: var(--dl-form-input-bg);
}
body .gform_wrapper.gravity-theme .gfield--type-phone .gform-phone__dropdown {
  border-radius: var(--dl-form-input-border-radius);
  border: var(--dl-form-input-border-width) solid var(--dl-form-input-border-color);
}

.wc-blocks-components-select__expand {
  display: none;
}

:root {
  --dl-btn-font-size: clamp(0.75rem, 1.5vw, 1rem);
  --dl-btn-border-width: 1.5px;
  --dl-btn-font-weight: 500;
  --dl-btn-border-color: transparent;
  --dl-btn-padding-y: clamp(0.5rem, 0.75vw, 0.875rem);
  --dl-btn-padding-x: clamp(1rem, 1.5vw, 1.5rem);
  --dl-btn-border-radius: 9999px;
  --dl-btn-transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.3s ease;
}

.btn, .gform_button, .woocommerce-account .addresses .title .edit, body.woocommerce a.add_to_cart_button,
body.woocommerce .woocommerce-Button,
body.woocommerce button.button,
body.woocommerce button.button.alt,
body.woocommerce .wc-block-components-button,
.woocommerce a.add_to_cart_button,
.woocommerce .woocommerce-Button,
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce .wc-block-components-button,
body.woocommerce-page a.add_to_cart_button,
body.woocommerce-page .woocommerce-Button,
body.woocommerce-page button.button,
body.woocommerce-page button.button.alt,
body.woocommerce-page .wc-block-components-button {
  display: inline-flex;
  align-items: center;
  gap: 0;
  cursor: pointer;
  font-size: var(--dl-btn-font-size);
  border: var(--dl-btn-border-width) solid var(--dl-btn-border-color);
  font-weight: var(--dl-btn-font-weight);
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  padding: var(--dl-btn-padding-y) var(--dl-btn-padding-x);
  color: var(--dl-btn-color, contrast-color(var(--dl-btn-bg)));
  background-color: var(--dl-btn-bg);
  border-radius: var(--dl-btn-border-radius);
  transition: var(--dl-btn-transition);
  min-height: 40px;
}
.btn:hover, .gform_button:hover, .woocommerce-account .addresses .title .edit:hover,
.woocommerce a.add_to_cart_button:hover,
.woocommerce .woocommerce-Button:hover,
.woocommerce button.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce .wc-block-components-button:hover,
body.woocommerce-page a.add_to_cart_button:hover,
body.woocommerce-page .woocommerce-Button:hover,
body.woocommerce-page button.button:hover,
body.woocommerce-page .wc-block-components-button:hover {
  color: var(--dl-btn-hover-color, var(--dl-btn-color, contrast-color(var(--dl-btn-hover-bg))));
  background-color: var(--dl-btn-hover-bg, var(--dl-btn-bg));
  border-color: var(--dl-btn-hover-border-color, var(--dl-btn-border-color));
}
.btn:active, .gform_button:active, .woocommerce-account .addresses .title .edit:active,
.woocommerce a.add_to_cart_button:active,
.woocommerce .woocommerce-Button:active,
.woocommerce button.button:active,
.woocommerce button.button.alt:active,
.woocommerce .wc-block-components-button:active,
body.woocommerce-page a.add_to_cart_button:active,
body.woocommerce-page .woocommerce-Button:active,
body.woocommerce-page button.button:active,
body.woocommerce-page .wc-block-components-button:active, .btn.active, .active.gform_button, .woocommerce-account .addresses .title .active.edit,
.woocommerce a.active.add_to_cart_button,
.woocommerce .active.woocommerce-Button,
.woocommerce button.active.button,
.woocommerce button.active.button.alt,
.woocommerce .active.wc-block-components-button,
body.woocommerce-page a.active.add_to_cart_button,
body.woocommerce-page .active.woocommerce-Button,
body.woocommerce-page button.active.button,
body.woocommerce-page .active.wc-block-components-button {
  color: var(--dl-btn-active-color, var(--dl-btn-color, contrast-color(var(--dl-btn-active-bg))));
  background-color: var(--dl-btn-active-bg, var(--dl-btn-bg));
  border-color: var(--dl-btn-active-border-color, var(--dl-btn-border-color));
}
.btn:focus, .gform_button:focus, .woocommerce-account .addresses .title .edit:focus,
.woocommerce a.add_to_cart_button:focus,
.woocommerce .woocommerce-Button:focus,
.woocommerce button.button:focus,
.woocommerce button.button.alt:focus,
.woocommerce .wc-block-components-button:focus,
body.woocommerce-page a.add_to_cart_button:focus,
body.woocommerce-page .woocommerce-Button:focus,
body.woocommerce-page button.button:focus,
body.woocommerce-page .wc-block-components-button:focus {
  color: var(--dl-btn-focus-color, var(--dl-btn-color, contrast-color(var(--dl-btn-focus-bg))));
  background-color: var(--dl-btn-focus-bg, var(--dl-btn-bg));
  border-color: var(--dl-btn-focus-border-color, var(--dl-btn-border-color));
}
.btn:focus, .gform_button:focus, .woocommerce-account .addresses .title .edit:focus,
.woocommerce a.add_to_cart_button:focus,
.woocommerce .woocommerce-Button:focus,
.woocommerce button.button:focus,
.woocommerce button.button.alt:focus,
.woocommerce .wc-block-components-button:focus,
body.woocommerce-page a.add_to_cart_button:focus,
body.woocommerce-page .woocommerce-Button:focus,
body.woocommerce-page button.button:focus,
body.woocommerce-page .wc-block-components-button:focus {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.btn:focus:not(:focus-visible), .gform_button:focus:not(:focus-visible), .woocommerce-account .addresses .title .edit:focus:not(:focus-visible),
.woocommerce a.add_to_cart_button:focus:not(:focus-visible),
.woocommerce .woocommerce-Button:focus:not(:focus-visible),
.woocommerce button.button:focus:not(:focus-visible),
.woocommerce .wc-block-components-button:focus:not(:focus-visible),
body.woocommerce-page a.add_to_cart_button:focus:not(:focus-visible),
body.woocommerce-page .woocommerce-Button:focus:not(:focus-visible),
body.woocommerce-page button.button:focus:not(:focus-visible),
body.woocommerce-page .wc-block-components-button:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
.btn:focus-visible, .gform_button:focus-visible, .woocommerce-account .addresses .title .edit:focus-visible,
.woocommerce a.add_to_cart_button:focus-visible,
.woocommerce .woocommerce-Button:focus-visible,
.woocommerce button.button:focus-visible,
.woocommerce button.button.alt:focus-visible,
.woocommerce .wc-block-components-button:focus-visible,
body.woocommerce-page a.add_to_cart_button:focus-visible,
body.woocommerce-page .woocommerce-Button:focus-visible,
body.woocommerce-page button.button:focus-visible,
body.woocommerce-page .wc-block-components-button:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.btn:disabled, .gform_button:disabled, .woocommerce-account .addresses .title .edit:disabled,
.woocommerce a.add_to_cart_button:disabled,
.woocommerce .woocommerce-Button:disabled,
.woocommerce button.button:disabled,
.woocommerce button.button.alt:disabled,
.woocommerce .wc-block-components-button:disabled,
body.woocommerce-page a.add_to_cart_button:disabled,
body.woocommerce-page .woocommerce-Button:disabled,
body.woocommerce-page button.button:disabled,
body.woocommerce-page .wc-block-components-button:disabled, .btn.disabled, .disabled.gform_button, .woocommerce-account .addresses .title .disabled.edit,
.woocommerce a.disabled.add_to_cart_button,
.woocommerce .disabled.woocommerce-Button,
.woocommerce button.disabled.button,
.woocommerce button.disabled.button.alt,
.woocommerce .disabled.wc-block-components-button,
body.woocommerce-page a.disabled.add_to_cart_button,
body.woocommerce-page .disabled.woocommerce-Button,
body.woocommerce-page button.disabled.button,
body.woocommerce-page .disabled.wc-block-components-button {
  opacity: var(--dl-btn-disabled-opacity, 0.5);
  cursor: not-allowed;
}
.btn.loading, .loading.gform_button, .woocommerce-account .addresses .title .loading.edit,
.woocommerce a.loading.add_to_cart_button,
.woocommerce .loading.woocommerce-Button,
.woocommerce button.loading.button,
.woocommerce button.loading.button.alt,
.woocommerce .loading.wc-block-components-button,
body.woocommerce-page a.loading.add_to_cart_button,
body.woocommerce-page .loading.woocommerce-Button,
body.woocommerce-page button.loading.button,
body.woocommerce-page .loading.wc-block-components-button {
  cursor: wait;
  opacity: var(--dl-btn-loading-opacity, 0.75);
}
.btn .svg-icon, .gform_button .svg-icon, .woocommerce-account .addresses .title .edit .svg-icon,
.woocommerce a.add_to_cart_button .svg-icon,
.woocommerce .woocommerce-Button .svg-icon,
.woocommerce button.button .svg-icon,
.woocommerce button.button.alt .svg-icon,
.woocommerce .wc-block-components-button .svg-icon,
body.woocommerce-page a.add_to_cart_button .svg-icon,
body.woocommerce-page .woocommerce-Button .svg-icon,
body.woocommerce-page button.button .svg-icon,
body.woocommerce-page .wc-block-components-button .svg-icon {
  margin-right: 0.75em;
}
.btn:has(.btn-icon), .gform_button:has(.btn-icon), .woocommerce-account .addresses .title .edit:has(.btn-icon),
.woocommerce a.add_to_cart_button:has(.btn-icon),
.woocommerce .woocommerce-Button:has(.btn-icon),
.woocommerce button.button:has(.btn-icon),
.woocommerce button.button.alt:has(.btn-icon),
.woocommerce .wc-block-components-button:has(.btn-icon),
body.woocommerce-page a.add_to_cart_button:has(.btn-icon),
body.woocommerce-page .woocommerce-Button:has(.btn-icon),
body.woocommerce-page button.button:has(.btn-icon),
body.woocommerce-page .wc-block-components-button:has(.btn-icon) {
  padding: 0.425rem 0.425rem 0.425rem var(--dl-btn-padding-x);
}
.btn .btn-icon-outer, .gform_button .btn-icon-outer, .woocommerce-account .addresses .title .edit .btn-icon-outer,
.woocommerce a.add_to_cart_button .btn-icon-outer,
.woocommerce .woocommerce-Button .btn-icon-outer,
.woocommerce button.button .btn-icon-outer,
.woocommerce button.button.alt .btn-icon-outer,
.woocommerce .wc-block-components-button .btn-icon-outer,
body.woocommerce-page a.add_to_cart_button .btn-icon-outer,
body.woocommerce-page .woocommerce-Button .btn-icon-outer,
body.woocommerce-page button.button .btn-icon-outer,
body.woocommerce-page .wc-block-components-button .btn-icon-outer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #fff;
  border-radius: 999px;
  padding: 0.625em;
  width: 2.5em;
  height: 2.5em;
  aspect-ratio: 1/1;
  color: var(--dl-secondary);
  transition: transform 0.4s ease-out;
  margin-left: 1em;
  margin-right: 0;
  overflow: hidden;
}
.btn .btn-icon-outer .svg-icon, .gform_button .btn-icon-outer .svg-icon, .woocommerce-account .addresses .title .edit .btn-icon-outer .svg-icon,
.woocommerce a.add_to_cart_button .btn-icon-outer .svg-icon,
.woocommerce .woocommerce-Button .btn-icon-outer .svg-icon,
.woocommerce button.button .btn-icon-outer .svg-icon,
.woocommerce .wc-block-components-button .btn-icon-outer .svg-icon,
body.woocommerce-page a.add_to_cart_button .btn-icon-outer .svg-icon,
body.woocommerce-page .woocommerce-Button .btn-icon-outer .svg-icon,
body.woocommerce-page button.button .btn-icon-outer .svg-icon,
body.woocommerce-page .wc-block-components-button .btn-icon-outer .svg-icon {
  margin: 0;
}
.btn .btn-icon-outer img, .gform_button .btn-icon-outer img, .woocommerce-account .addresses .title .edit .btn-icon-outer img,
.woocommerce a.add_to_cart_button .btn-icon-outer img,
.woocommerce .woocommerce-Button .btn-icon-outer img,
.woocommerce button.button .btn-icon-outer img,
.woocommerce .wc-block-components-button .btn-icon-outer img,
body.woocommerce-page a.add_to_cart_button .btn-icon-outer img,
body.woocommerce-page .woocommerce-Button .btn-icon-outer img,
body.woocommerce-page button.button .btn-icon-outer img,
body.woocommerce-page .wc-block-components-button .btn-icon-outer img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.btn:not(.btn-no-animation):not(.btn-link):hover, .gform_button:not(.btn-no-animation):not(.btn-link):hover, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):hover,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):hover,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):hover,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover, .btn:not(.btn-no-animation):not(.btn-link):focus, .gform_button:not(.btn-no-animation):not(.btn-link):focus, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):focus,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):focus,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):focus,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus {
  transform: scale(1.05);
}
.btn:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .gform_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .btn:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right, .gform_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right {
  animation: ButtonIconRight 0.4s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .gform_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  .woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  .woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  .woocommerce button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  .woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-right, .btn:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right, .gform_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  .woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  .woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  .woocommerce button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  .woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right,
  body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-right {
    animation: none;
  }
}
.btn:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .gform_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .btn:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down, .gform_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
.woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
.woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
.woocommerce button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
.woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down {
  animation: ButtonIconDown 0.4s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .gform_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  .woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  .woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  .woocommerce button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  .woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):hover .btn-icon-outer .svg-arrow-down, .btn:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down, .gform_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down, .woocommerce-account .addresses .title .edit:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  .woocommerce a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  .woocommerce .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  .woocommerce button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  .woocommerce .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page a.add_to_cart_button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page .woocommerce-Button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page button.button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down,
  body.woocommerce-page .wc-block-components-button:not(.btn-no-animation):not(.btn-link):focus .btn-icon-outer .svg-arrow-down {
    animation: none;
  }
}

.btn-square {
  border-radius: 14px;
  font-size: clamp(1rem, 1.25vw, 1.25rem);
}
.btn-square .svg-icon {
  font-size: 0.875em;
}
.btn-square:hover, .btn-square:focus {
  transform: scale(1.05);
}

.btn-primary, .gform_button, .woocommerce-account .addresses .title .edit, body.woocommerce a.add_to_cart_button,
body.woocommerce .woocommerce-Button,
body.woocommerce button.button,
body.woocommerce button.button.alt,
body.woocommerce .wc-block-components-button,
.woocommerce a.add_to_cart_button,
.woocommerce .woocommerce-Button,
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce .wc-block-components-button,
body.woocommerce-page a.add_to_cart_button,
body.woocommerce-page .woocommerce-Button,
body.woocommerce-page button.button,
body.woocommerce-page button.button.alt,
body.woocommerce-page .wc-block-components-button {
  --dl-btn-bg: var(--dl-primary);
  --dl-btn-border-color: var(--dl-primary);
  --dl-btn-color: #fff;
}

.btn-secondary {
  --dl-btn-bg: var(--dl-secondary);
  --dl-btn-border-color: var(--dl-secondary);
  --dl-btn-color: #fff;
}

.btn-tertiary {
  --dl-btn-bg: var(--dl-tertiary);
  --dl-btn-border-color: var(--dl-tertiary);
  --dl-btn-color: #000;
}

.btn-white {
  --dl-btn-bg: #fff;
  --dl-btn-color: var(--dl-primary);
  --dl-btn-border-color: #fff;
}
.btn-white .btn-icon-outer {
  background: var(--dl-secondary);
  color: #fff;
}

.btn-outline-primary {
  --dl-btn-bg: transparent;
  --dl-btn-border-color: var(--dl-primary);
  --dl-btn-color: var(--dl-primary);
}
.btn-outline-primary:hover, .btn-outline-primary:focus {
  --dl-btn-bg: var(--dl-primary);
  --dl-btn-border-color: var(--dl-primary);
  --dl-btn-color: #fff;
}

.btn-outline-secondary {
  --dl-btn-bg: transparent;
  --dl-btn-border-color: var(--dl-secondary);
  --dl-btn-color: var(--dl-secondary);
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus {
  --dl-btn-bg: var(--dl-secondary);
  --dl-btn-border-color: var(--dl-secondary);
  --dl-btn-color: #fff;
}

.btn-outline-tertiary {
  --dl-btn-bg: transparent;
  --dl-btn-border-color: var(--dl-tertiary);
  --dl-btn-color: var(--dl-tertiary);
}
.btn-outline-tertiary:hover, .btn-outline-tertiary:focus {
  --dl-btn-bg: var(--dl-tertiary);
  --dl-btn-border-color: var(--dl-tertiary);
  --dl-btn-color: #fff;
}

.btn-link {
  --dl-btn-padding-y: 0;
  --dl-btn-padding-x: 0;
  position: relative;
  font-weight: 700;
  color: var(--dl-secondary);
  transition: color 0.3s ease-in-out;
  font-size: clamp(0.875rem, 1vw, 1rem);
  min-height: 0;
  line-height: inherit;
}
.btn-link .btn-icon-outer {
  padding: 0;
  width: auto;
  height: auto;
  color: inherit;
  background: transparent;
}
.btn-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  height: 2px;
  background: currentColor;
  transform: translateX(-50%);
  transition: width 0.3s ease-in-out, transform 0.3s ease-in-out;
}
.btn-link:hover::after, .btn-link:focus::after {
  width: calc(100% + 1em);
}

.btn-filter.btn-primary, .btn-filter.gform_button, .woocommerce-account .addresses .title .btn-filter.edit,
.woocommerce a.btn-filter.add_to_cart_button,
.woocommerce .btn-filter.woocommerce-Button,
.woocommerce button.btn-filter.button,
.woocommerce button.btn-filter.button.alt,
.woocommerce .btn-filter.wc-block-components-button,
body.woocommerce-page a.btn-filter.add_to_cart_button,
body.woocommerce-page .btn-filter.woocommerce-Button,
body.woocommerce-page button.btn-filter.button,
body.woocommerce-page .btn-filter.wc-block-components-button {
  --dl-btn-bg: transparent;
  --dl-btn-border-color: var(--dl-primary);
  --dl-btn-color: var(--dl-primary);
}
.btn-filter.btn-primary.active, .btn-filter.active.gform_button, .woocommerce-account .addresses .title .btn-filter.active.edit,
.woocommerce a.btn-filter.active.add_to_cart_button,
.woocommerce .btn-filter.active.woocommerce-Button,
.woocommerce button.btn-filter.active.button,
.woocommerce .btn-filter.active.wc-block-components-button,
body.woocommerce-page a.btn-filter.active.add_to_cart_button,
body.woocommerce-page .btn-filter.active.woocommerce-Button,
body.woocommerce-page button.btn-filter.active.button,
body.woocommerce-page .btn-filter.active.wc-block-components-button {
  --dl-btn-bg: var(--dl-primary);
  --dl-btn-border-color: var(--dl-primary);
  --dl-btn-color: #fff;
}

.woocommerce-account .addresses .title .edit {
  float: none;
}

.close {
  font-size: 1.5em;
  width: 1.5em;
  height: 1.5em;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  opacity: 0.5;
  border-radius: var(--dl-btn-border-radius);
  transition: color 0.15s ease, opacity 0.15s ease;
}
.close::after {
  display: inline;
  content: "×";
}
.close:hover {
  opacity: 1;
}
.close:focus {
  opacity: 1;
}
.close:focus {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.close:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
.close:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}

:root {
  --dl-card-padding: clamp(1rem, 1.5vw, 1.5rem);
  --dl-card-border-radius: 20px;
  --dl-card-border-width: 1px;
  --dl-card-border-color: #ccc;
}

.card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--dl-card-padding);
  border-radius: var(--dl-card-border-radius);
  border: var(--dl-card-border-width) solid var(--dl-card-border-color);
}

a.card,
a:has(> .card) {
  text-decoration: none !important;
}

.card-img {
  margin-bottom: 0.75rem;
}

.card-text p:last-child,
.card-text ol:last-child,
.card-text ul:last-child {
  margin-bottom: 0;
}

.card_shortcut {
  background: var(--dl-tertiary);
  color: #000;
  border-radius: 20px;
  border: 0;
  padding: 0;
  overflow: hidden;
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.card_shortcut .card-img {
  width: 100%;
  height: auto;
}
.card_shortcut .card-body {
  width: 100%;
  padding: clamp(1.5rem, 2vw, 1.75rem) clamp(1rem, 1.5vw, 1.5rem);
}
.card_shortcut .card-title-wrapper {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
}
.card_shortcut .card-title-wrapper .card-icon {
  font-size: 1.5rem;
}
.card_shortcut .card-title-wrapper img.card-icon {
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
}
.card_shortcut .svg-arrow-right {
  transition: transform 0.3s ease-in-out;
}
.card_shortcut .card-title {
  font-size: clamp(0.875rem, 1.25vw, 1.25rem);
  font-weight: 500;
  overflow-wrap: break-word;
}
.card_shortcut .card-text:last-child {
  margin-bottom: 0;
}
.card_shortcut_compact .card-body {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  padding: clamp(1.25rem, 2vw, 1.75rem) clamp(1rem, 1.5vw, 1.5rem);
}
.card_shortcut_compact .card-img {
  margin: -0.5rem 0;
  width: 2rem;
  height: 2rem;
  object-fit: cover;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
.card_shortcut_compact .card-title {
  margin: 0;
}
.card_shortcut_compact .svg-arrow-right {
  font-size: 1.25rem;
}
.card_shortcut_large .card-img {
  aspect-ratio: 3/2;
  object-fit: cover;
}
.card_shortcut_large .card-body {
  padding: clamp(2.25rem, 2vw, 2.5rem) clamp(2rem, 2.5vw, 2.5rem);
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: start;
}
.card_shortcut_large .card-icon {
  font-size: 1.5rem;
}
.card_shortcut_large .card-title {
  font-size: clamp(1rem, 1.5vw, 1.5rem);
  font-weight: 700;
  margin-bottom: 1.25rem;
}
.card_shortcut_large .card-text {
  font-size: 0.875rem;
  margin-bottom: clamp(1rem, 1.25vw, 1.25rem);
}
.card_shortcut_large .card-link {
  display: inline-block;
  position: relative;
  font-weight: 700;
  color: var(--dl-secondary);
  transition: color 0.3s ease-in-out;
  font-size: clamp(0.875rem, 1vw, 1rem);
  margin-top: auto;
}
.card_shortcut_large .card-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
}

a.card_shortcut {
  user-select: none;
  cursor: pointer;
  text-decoration: none !important;
}
a.card_shortcut:hover, a.card_shortcut:focus {
  background: var(--dl-secondary);
  color: #fff;
  transform: translateY(-6px);
}
a.card_shortcut:hover .card-link, a.card_shortcut:focus .card-link {
  color: #fff;
}
a.card_shortcut:hover .svg-arrow-right, a.card_shortcut:focus .svg-arrow-right {
  transform: translateX(8px);
}

.card_event, .card_post {
  width: 100%;
  border-radius: 20px;
  border: 0;
  background-color: var(--dl-primary);
  color: #fff;
  padding: 1.5rem;
  position: relative;
  overflow: hidden;
  aspect-ratio: 35/50;
  transition: aspect-ratio 0.3s ease-in-out, margin-top 0.3s ease-in-out, transform 0.3s ease-in-out, height 0.3s ease-in-out;
}
.card_event article, .card_post article {
  height: 100%;
  width: 100%;
}
.card_event::before, .card_post::before {
  background: linear-gradient(180deg, rgba(61, 29, 46, 0.05) 40.87%, rgba(61, 29, 46, 0.85) 100%);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.card_event .card-body, .card_post .card-body {
  height: 100%;
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 1 rem;
  justify-content: space-between;
  align-items: flex-start;
}
.card_event .card-date, .card_post .card-date {
  border-radius: 60px;
  background: #fff;
  color: var(--dl-primary);
  padding: 0.25rem 1rem;
  font-weight: 500;
  font-size: 1rem;
  margin-left: auto;
}
.card_event .card-content, .card_post .card-content {
  margin-top: auto;
}
.card_event .card-title, .card_post .card-title {
  font-weight: 700;
  font-size: 1.5rem;
}
@media (max-width: 767.98px) {
  .card_event .card-title, .card_post .card-title {
    font-size: 1.25rem;
  }
}
.card_event .card-text, .card_post .card-text {
  font-size: 1.125rem;
}
@media (max-width: 767.98px) {
  .card_event .card-text, .card_post .card-text {
    font-size: 0.875rem;
  }
}
.card_event .card-times, .card_post .card-times,
.card_event .card-location,
.card_post .card-location {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  line-height: 2;
}
.card_event .card-times .svg-icon, .card_post .card-times .svg-icon,
.card_event .card-location .svg-icon,
.card_post .card-location .svg-icon {
  font-size: 1.25rem;
  vertical-align: middle;
}
.card_event_wide {
  aspect-ratio: 55/31;
}
.card_event_wide .card-date {
  font-size: 0.875rem;
  padding: 0.375rem 1.5rem;
}
.card_event:hover, .card_post:hover, .card_event:focus, .card_post:focus {
  transform: translateY(-6px);
}

.swiper .swiper-slide-active .card_event, .swiper .swiper-slide-active .card_post {
  aspect-ratio: 30/50;
  margin-top: -2rem;
  height: calc(100% + 4rem) !important;
}

.card_post .card-category {
  font-weight: 500;
}
.card_post_wide {
  aspect-ratio: 55/31;
}
.card_post_wide .card-category {
  margin-bottom: 0;
}

.card_location {
  border: 0;
  border-radius: 0;
  padding: 0;
  color: inherit;
  text-decoration: none;
}
.card_location .card-img {
  aspect-ratio: 55/34;
  object-fit: cover;
  max-width: 100%;
  height: auto;
  border-radius: 20px;
  margin-bottom: 1rem;
}
.card_location .card-title {
  font-weight: 700;
  font-size: 1.5rem;
  margin-bottom: 0.25rem;
}
.card_location .card-text {
  font-size: 1.25rem;
}

.card_generic {
  background: var(--dl-tertiary);
  color: #000;
  border-radius: 20px;
  border: 0;
  padding: 0;
  overflow: hidden;
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.card_generic .card-img {
  width: 100%;
  height: auto;
  margin: 0;
}
.card_generic .card-body {
  width: 100%;
  padding: clamp(1.5rem, 2vw, 1.75rem) clamp(1rem, 1.5vw, 1.5rem);
}
.card_generic .card-body em {
  font-style: italic;
}
.card_generic .card-title-wrapper {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
}
.card_generic .svg-arrow-right {
  transition: transform 0.3s ease-in-out;
}
.card_generic .card-title {
  font-size: clamp(0.875rem, 1.25vw, 1.25rem);
  font-weight: 500;
}
.card_generic .card-text:last-child {
  margin-bottom: 0;
}
.card_generic .card-body {
  padding: clamp(2.25rem, 2vw, 2.5rem) clamp(2rem, 2.5vw, 2.5rem);
}
.card_generic .card-icon {
  font-size: 1.5rem;
}
.card_generic .card-title {
  font-size: clamp(1rem, 1.5vw, 1.5rem);
  font-weight: 700;
  margin-bottom: 1.25rem;
}
.card_generic .card-text {
  font-size: 0.875rem;
  margin-bottom: clamp(1rem, 1.25vw, 1.25rem);
}
.card_generic .card-link {
  display: inline-block;
  position: relative;
  font-weight: 700;
  color: var(--dl-secondary);
  transition: color 0.3s ease-in-out;
  font-size: clamp(0.875rem, 1vw, 1rem);
}
.card_generic .card-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
}

a.card_generic {
  user-select: none;
  cursor: pointer;
  text-decoration: none !important;
}
a.card_generic:hover, a.card_generic:focus {
  background: var(--dl-secondary);
  color: #fff;
  transform: translateY(-6px);
}
a.card_generic:hover .card-link, a.card_generic:focus .card-link {
  color: #fff;
}
a.card_generic:hover .svg-arrow-right, a.card_generic:focus .svg-arrow-right {
  transform: translateX(8px);
}

.card_simple {
  color: inherit;
  text-decoration: none;
  border: 0;
  border-radius: 0;
  padding: 0;
}
.card_simple .card-img {
  aspect-ratio: auto;
  width: 100%;
  height: auto;
  border-radius: var(--dl-card-border-radius);
  margin-bottom: 1.25rem;
}
.card_simple .card-body {
  padding: 0;
}
.card_simple .card-title,
.card_simple .card-text {
  color: inherit;
}
.card_simple .card-buttons {
  margin-top: 1.25rem;
}

.breadcrumb {
  display: block;
  list-style: none;
  padding: 0;
  color: rgba(0, 0, 0, 0.6);
  font-weight: 500;
  overflow-x: scroll;
  max-width: 100%;
  white-space: nowrap;
}
.breadcrumb::-webkit-scrollbar {
  display: none;
}
.breadcrumb {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.breadcrumb-item {
  display: inline-block;
  margin-right: 0.5rem;
}
.breadcrumb-item a {
  text-decoration: none;
  color: inherit;
  display: block;
}
.breadcrumb-item a::after {
  content: "";
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%228%22%20viewBox%3D%220%200%2015%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0%204C0%204.15184%200.0658481%204.29746%200.183058%204.40483C0.300269%204.5122%200.45924%204.57252%200.625%204.57252H12.8663L10.1838%207.02975C10.0699%207.13773%2010.0069%207.28235%2010.0083%207.43246C10.0098%207.58257%2010.0755%207.72617%2010.1914%207.83231C10.3072%207.93846%2010.464%207.99867%2010.6279%207.99998C10.7917%208.00128%2010.9496%207.94358%2011.0675%207.83929L14.8175%204.4042C14.8753%204.35153%2014.9212%204.2889%2014.9525%204.21993C14.9839%204.15096%2015%204.07699%2015%204.00229V4C15%203.92557%2014.9838%203.85115%2014.9513%203.7813C14.9201%203.71189%2014.8742%203.64884%2014.8162%203.5958L11.0662%200.160712C10.9484%200.0564235%2010.7905%20-0.00128279%2010.6266%202.16426e-05C10.4628%200.00132607%2010.306%200.0615368%2010.1901%200.167686C10.0742%200.273835%2010.0085%200.417429%2010.0071%200.567541C10.0057%200.717652%2010.0687%200.862271%2010.1825%200.970249L12.8663%203.42748H0.625C0.45924%203.42748%200.300269%203.4878%200.183058%203.59517C0.0658481%203.70254%200%203.84816%200%204Z%22%20fill%3D%22black%22%20fill-opacity%3D%220.6%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: middle;
}
.breadcrumb-item > span {
  display: inline-block;
  position: relative;
  color: var(--dl-secondary);
}

.badge {
  display: flex;
  place-items: center;
  font-size: var(--dl-badge-font-size, 0.5em);
  font-weight: var(--dl-badge-font-weight, 700);
  line-height: 1;
  height: 1.5em;
  min-width: 1.5em;
  padding: var(--dl-badge-padding, 0.25rem);
  border-radius: var(--dl-badge-border-radius, 9999px);
  background: var(--dl-badge-bg, var(--dl-primary));
  color: var(--dl-badge-color, #fff);
}

:root {
  --dl-accordion-item-border-width: 1px;
  --dl-accordion-item-border-color: #ccc;
  --dl-accordion-item-gap: 0.75rem;
  --dl-accordion-item-padding: 0.75rem 0;
  --dl-accordion-content-padding: 0 0 0.75rem 0;
}

.accordion details.accordion-item {
  border-bottom: var(--dl-accordion-item-border-width) solid var(--dl-accordion-item-border-color);
}
.accordion details.accordion-item summary.accordion-toggle {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: var(--dl-accordion-toggle-font-weight, 700);
  color: var(--dl-accordion-toggle-color, inherit);
  cursor: pointer;
  padding: var(--dl-accordion-item-padding);
}
.accordion details.accordion-item summary.accordion-toggle:focus {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.accordion details.accordion-item summary.accordion-toggle:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
.accordion details.accordion-item summary.accordion-toggle:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.accordion details.accordion-item summary.accordion-toggle::after {
  color: var(--dl-primary);
  font-size: 0.5em;
  content: "▼";
  transition: transform 0.3s ease-in-out;
}
.accordion details.accordion-item {
  /* This is now the animated element */
}
.accordion details.accordion-item .accordion-content {
  padding: var(--dl-accordion-content-padding);
}
.accordion details.accordion-item {
  /* Chrome / Safari: real height animation */
}
@supports (interpolate-size: allow-keywords) {
  .accordion details.accordion-item .accordion-content {
    /* start collapsed */
    height: 0;
    overflow: hidden;
    interpolate-size: allow-keywords;
    transition: height 0.3s ease-in-out;
    transition-behavior: allow-discrete;
    /* keep padding but avoid it affecting closed height */
    padding: 0;
  }
  .accordion details.accordion-item[open] .accordion-content {
    height: auto;
    padding: var(--dl-accordion-content-padding);
  }
  @starting-style {
    .accordion details.accordion-item[open] .accordion-content {
      height: 0;
      padding: 0;
    }
  }
}
.accordion details.accordion-item {
  /* Fallback: no animation, just open/close */
}
@supports not (interpolate-size: allow-keywords) {
  .accordion details.accordion-item .accordion-content {
    /* just normal content, no animation */
    padding: var(--dl-accordion-content-padding);
  }
}
.accordion details.accordion-item[open] summary.accordion-toggle::after {
  transform: rotate(180deg);
}

details.collapse summary {
  cursor: pointer;
  display: inline-flex;
  gap: 0.5em;
  justify-content: flex-start;
  align-items: center;
  padding: var(--dl-collapse-item-padding, 0.75rem 0);
  font-weight: var(--dl-collapse-toggle-font-weight, 600);
  color: var(--dl-collapse-toggle-color, inherit);
}
details.collapse summary:focus {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
details.collapse summary:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
details.collapse summary:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
details.collapse summary::after {
  content: "▼";
  font-size: 0.6em;
  color: var(--dl-primary);
  transition: transform 0.3s ease;
}
details.collapse {
  /* Collapsible content */
}
details.collapse .collapse-content {
  overflow: hidden;
  height: 0; /* JS animates this */
  padding: 0; /* added only when open */
  transition: height 0.3s ease, padding 0.3s ease;
}
details.collapse {
  /* Open state */
}
details.collapse[open] summary::after {
  transform: rotate(180deg);
}
details.collapse[open] .collapse-content {
  padding: var(--dl-collapse-content-padding, 0.75rem 0 0 0);
}

:root {
  --dl-dropdown-border-radius: 20px;
}

.nav, .woocommerce-MyAccount-navigation ul {
  display: flex;
  flex-direction: var(--dl-nav-direction, row);
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--dl-nav-gap, 0);
  color: var(--dl-nav-color, inherit);
}
.nav-vertical {
  --dl-nav-direction: column;
}
.nav .nav-item, .woocommerce-MyAccount-navigation ul .nav-item {
  position: relative;
  display: flex;
}
.nav .nav-link, .woocommerce-MyAccount-navigation ul .nav-link {
  padding: var(--dl-nav-link-padding, 0.25rem);
  position: relative;
  text-decoration: none;
  color: var(--dl-nav-link-color, inherit);
  display: flex;
  align-items: center;
  white-space: nowrap;
  width: 100%;
  transition: color 0.15s ease-in-out;
}
.nav .nav-link .badge, .woocommerce-MyAccount-navigation ul .nav-link .badge {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}
.nav .nav-link:focus, .woocommerce-MyAccount-navigation ul .nav-link:focus {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.nav .nav-link:focus:not(:focus-visible), .woocommerce-MyAccount-navigation ul .nav-link:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
.nav .nav-link:focus-visible, .woocommerce-MyAccount-navigation ul .nav-link:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 2px solid #000 !important;
  outline-offset: 2px !important;
}
.nav, .woocommerce-MyAccount-navigation ul {
  /* Toggle button */
}
.nav .nav-dropdown-toggle, .woocommerce-MyAccount-navigation ul .nav-dropdown-toggle {
  background: none;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  margin-left: 0.25rem;
  transition: color 0.15s ease-in-out;
}
.nav .nav-dropdown-toggle::after, .woocommerce-MyAccount-navigation ul .nav-dropdown-toggle::after {
  display: block;
  content: "";
  width: 1em;
  height: 1em;
  background: currentColor;
  mask-image: url("data:image/svg+xml;utf8,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 9L12 15L18 9\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke=\"currentColor\"/></svg>");
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
}
.nav .nav-dropdown, .woocommerce-MyAccount-navigation ul .nav-dropdown {
  display: none;
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  list-style: none;
  margin: 0;
  padding: var(--dl-dropdown-padding, 0.5rem 0);
  background: var(--dl-dropdown-bg, #fff);
  border: var(--dl-dropdown-border-width, 1px) solid var(--dl-dropdown-border-color, #ccc);
  border-radius: var(--dl-dropdown-border-radius, var(--dl-dropdown-border-radius));
  box-shadow: var(--dl-dropdown-shadow, none);
  transition: opacity 0.3s ease-in-out;
  opacity: 0;
}
@media (hover: hover) {
  .nav .nav-dropdown, .woocommerce-MyAccount-navigation ul .nav-dropdown {
    isolation: isolate;
  }
  .nav .nav-dropdown::before, .woocommerce-MyAccount-navigation ul .nav-dropdown::before {
    background: transparent;
    content: "";
    position: absolute;
    top: -1.125rem;
    left: -1.125rem;
    right: -1.125rem;
    bottom: -1.125rem;
    z-index: -1;
    pointer-events: all;
    border-radius: var(--dl-dropdown-border-radius, var(--dl-dropdown-border-radius));
  }
}
.nav .nav-dropdown.open, .woocommerce-MyAccount-navigation ul .nav-dropdown.open {
  display: block;
  opacity: 1;
}
.nav .nav-dropdown.opening, .woocommerce-MyAccount-navigation ul .nav-dropdown.opening, .nav .nav-dropdown.closing, .woocommerce-MyAccount-navigation ul .nav-dropdown.closing {
  display: block;
}
.nav .nav-dropdown .nav-dropdown-item, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link {
  position: relative;
  text-decoration: none;
  color: var(--dl-nav-dropdown-link-color, inherit);
  display: flex;
  align-items: center;
  white-space: nowrap;
  padding: var(--dl-dropdown-item-padding, 0.5rem 1rem);
  transition: color 0.3s ease-in-out;
}
.nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link .nav-link-inner, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link .nav-link-inner {
  position: relative;
  display: inline-block;
}
.nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link .nav-link-inner::after, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link .nav-link-inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 1.5px;
  background: currentColor;
  transition: width 0.3s ease-in-out;
}
.nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link:hover, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link:hover, .nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link:focus, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link:focus {
  color: var(--dl-secondary);
}
.nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link:hover .nav-link-inner::after, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link:hover .nav-link-inner::after, .nav .nav-dropdown .nav-dropdown-item .nav-dropdown-link:focus .nav-link-inner::after, .woocommerce-MyAccount-navigation ul .nav-dropdown .nav-dropdown-item .nav-dropdown-link:focus .nav-link-inner::after {
  width: 100%;
}
.nav .nav-dropdown .has-dropdown, .woocommerce-MyAccount-navigation ul .nav-dropdown .has-dropdown {
  position: relative;
}
.nav .nav-dropdown .has-dropdown > .nav-dropdown, .woocommerce-MyAccount-navigation ul .nav-dropdown .has-dropdown > .nav-dropdown {
  top: 0;
  left: 100%;
  margin-top: 0;
  margin-left: -0.5rem;
}

.drawer .nav-dropdown,
.modal .nav-dropdown {
  position: static;
}

.woocommerce-MyAccount-navigation ul {
  --dl-nav-direction: column;
}

:root {
  --dl-drawer-radius: 20px;
  --dl-drawer-shadow: 0 0 1rem rgba(0, 0, 0, 0.25);
  --dl-drawer-backdrop-bg: rgba(0, 0, 0, 0.5);
  --dl-drawer-duration: 0.3s;
  --dl-drawer-ease: ease;
}

dialog.drawer {
  display: block;
  border: none;
  padding: 0;
  margin: 0;
  background: var(--dl-drawer-bg, var(--dl-body-bg));
  width: var(--dl-drawer-width, 100%);
  max-width: var(--dl-drawer-max-width, 320px);
  height: 100lvh;
  max-height: 100lvh;
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  overflow-y: auto;
  box-shadow: var(--dl-drawer-shadow);
  opacity: 0;
  transform: translateX(-100%);
  border-radius: 0 var(--dl-drawer-radius) var(--dl-drawer-radius) 0;
  pointer-events: none;
}
dialog.drawer::backdrop {
  background: var(--dl-drawer-backdrop-bg);
  opacity: 0;
}
dialog.drawer[open]:not(.closing) {
  animation: drawer-in var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}
dialog.drawer[open]:not(.closing)::backdrop {
  animation: drawer-backdrop-in var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}
dialog.drawer[open]:not(.closing):not(.opening) {
  pointer-events: auto;
}
dialog.drawer.closing {
  animation: drawer-out var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}
dialog.drawer.closing::backdrop {
  animation: drawer-backdrop-out var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}
@media (min-width: 783px) {
  body.admin-bar dialog.drawer {
    top: var(--wp-admin--admin-bar--height, 32px);
  }
}
dialog.drawer .nav {
  gap: 0;
}
dialog.drawer .nav .nav-item {
  align-items: center;
  flex-wrap: wrap;
  position: relative;
}
dialog.drawer .nav .nav-item .nav-link {
  font-weight: 500;
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--dl-tertiary);
}
dialog.drawer .nav .nav-item.open .nav-link {
  color: var(--dl-secondary);
}
dialog.drawer .nav .nav-item .nav-dropdown {
  width: 100%;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
}
dialog.drawer .nav .nav-item .nav-dropdown-toggle {
  font-size: 1.25rem;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.5rem;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 1rem;
  right: 0;
}
dialog.drawer .nav .nav-item .nav-dropdown-toggle[aria-expanded=true] {
  color: var(--dl-secondary);
}
dialog.drawer .nav .nav-item .nav-dropdown-toggle[aria-expanded=true]::after {
  transform: rotate(180deg);
}
dialog.drawer .nav .nav-item .nav-dropdown-item {
  font-size: 0.875rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--dl-tertiary);
}

.drawer-buttons {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 1rem;
}
.drawer-buttons .btn {
  width: 100%;
  text-align: center;
  justify-content: center;
}
.drawer-buttons .btn .btn-icon-outer {
  display: none;
}

.drawer-box {
  height: 100%;
}

dialog.drawer-right {
  left: auto;
  right: 0;
  transform: translateX(100%);
  border-radius: var(--dl-drawer-radius) 0 0 var(--dl-drawer-radius);
}
dialog.drawer-right[open]:not(.closing) {
  animation: drawer-right-in var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}
dialog.drawer-right.closing {
  animation: drawer-right-out var(--dl-drawer-duration) var(--dl-drawer-ease) forwards;
}

@keyframes drawer-in {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes drawer-out {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0;
    transform: translateX(-100%);
  }
}
@keyframes drawer-right-in {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes drawer-right-out {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0;
    transform: translateX(100%);
  }
}
@keyframes drawer-backdrop-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes drawer-backdrop-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Layout */
.drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.75rem 1.75rem 0;
}

.drawer-body {
  padding: 1.75rem;
}

:root {
  --dl-modal-padding: clamp(1rem, 1.5vw, 1.5rem);
  --dl-modal-border-radius: 0.25rem;
  --dl-modal-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.25);
  --dl-modal-title-font-size: clamp(1.5rem, 2vw, 2rem);
  --dl-modal-backdrop-bg: rgba(0, 0, 0, 0.5);
  --dl-modal-duration: 0.3s;
  --dl-modal-ease: ease;
  --dl-modal-scale: 0.9;
}

dialog.modal {
  border: none;
  padding: var(--dl-modal-padding);
  background: var(--dl-modal-bg, var(--dl-body-bg));
  border-radius: var(--dl-modal-border-radius);
  box-shadow: var(--dl-modal-shadow);
  width: var(--dl-modal-width, 500px);
  max-width: var(--dl-modal-max-width, 90vw);
  pointer-events: none;
  opacity: 0;
  transform: scale(var(--dl-modal-scale));
}
dialog.modal::backdrop {
  background: var(--dl-modal-backdrop-bg);
  opacity: 0;
}
dialog.modal[open]:not(.closing) {
  animation: dl-modal-in var(--dl-modal-duration) var(--dl-modal-ease) forwards;
}
dialog.modal[open]:not(.closing)::backdrop {
  animation: dl-backdrop-in var(--dl-modal-duration) var(--dl-modal-ease) forwards;
}
dialog.modal[open]:not(.closing):not(.opening) {
  pointer-events: auto;
}
dialog.modal.closing {
  animation: dl-modal-out var(--dl-modal-duration) var(--dl-modal-ease) forwards;
}
dialog.modal.closing::backdrop {
  animation: dl-backdrop-out var(--dl-modal-duration) var(--dl-modal-ease) forwards;
}

@keyframes dl-modal-in {
  from {
    opacity: 0;
    transform: scale(var(--dl-modal-scale));
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes dl-modal-out {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0;
    transform: scale(var(--dl-modal-scale));
  }
}
@keyframes dl-backdrop-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes dl-backdrop-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.modal-body {
  overflow-y: auto;
  padding: var(--dl-modal-body-padding, 1rem 0);
}

.modal-header,
.modal-footer {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: var(--dl-modal-header-footer-gap, 1rem);
}

.modal-header {
  align-items: flex-start;
}

.modal-footer {
  align-items: center;
}

.modal-title {
  font-size: var(--dl-modal-title-font-size);
}

:root {
  --dl-progress-bg: #eee;
  --dl-progress-fill: var(--dl-primary);
  --dl-progress-height: 0.75rem;
  --dl-progress-border-width: 0;
  --dl-progress-border-color: transparent;
  --dl-progress-border-radius: 0.25rem;
}

/* Base <progress> element */
progress.progress {
  display: block;
  width: 100%;
  height: var(--dl-progress-height);
  appearance: none;
  border: var(--dl-progress-border-width) solid var(--dl-progress-border-color);
  border-radius: var(--dl-progress-border-radius);
  background: var(--dl-progress-bg);
  overflow: hidden;
  margin-bottom: var(--dl-progress-margin-bottom, 0.75rem);
  color: var(--dl-progress-fill);
  /* Chrome / Safari */
}
progress.progress::-webkit-progress-bar {
  background: var(--dl-progress-bg);
  border-radius: var(--dl-progress-border-radius);
}
progress.progress::-webkit-progress-value {
  background: var(--dl-progress-fill);
  border-radius: var(--dl-progress-border-radius);
}
progress.progress {
  /* Firefox */
}
progress.progress::-moz-progress-bar {
  background: var(--dl-progress-fill);
  border-radius: var(--dl-progress-border-radius);
}

:root {
  --dl-pagination-border-width: 1px;
  --dl-pagination-border-color: var(--dl-gray);
}

.pagination {
  list-style: none;
  display: flex;
  padding: 0;
  gap: 0.5rem;
  margin-top: 2rem;
}

.page-link {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: var(--dl-pagination-border-width) solid var(--dl-pagination-border-color);
  min-width: 2em;
  height: 2em;
  padding: 0.5em;
  text-decoration: none;
  border-radius: 0.25rem;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.page-link.disabled {
  pointer-events: none;
  opacity: 0.33;
}
.page-link:hover {
  background-color: var(--dl-gray);
}
.page-link.current, .page-link.active {
  font-weight: 700;
  background: var(--dl-primary);
  border-color: var(--dl-primary);
  color: #fff;
}
.page-link.dots {
  border-color: transparent;
}

.woocommerce::after,
.woocommerce-page::after {
  display: block;
  clear: both;
  content: "";
}
.woocommerce ul.products,
.woocommerce-page ul.products {
  list-style: none;
}
.woocommerce a.added_to_cart,
.woocommerce-page a.added_to_cart {
  display: none;
}
.woocommerce .quantity:has(.minus) .qty, .woocommerce .quantity:has(.plus) .qty,
.woocommerce-page .quantity:has(.minus) .qty,
.woocommerce-page .quantity:has(.plus) .qty {
  -webkit-appearance: none;
  appearance: none;
  -moz-appearance: textfield;
}

body.single-product .summary .product_title {
  font-size: var(--dl-single-product-title-font-size, var(--dl-h1-font-size));
}
body.single-product .summary .product_meta {
  display: none;
}

.products .product {
  list-style: none;
  padding: 0;
  position: relative;
}
.products .product .woocommerce-loop-product__link {
  text-decoration: none;
}
.products .product img {
  max-width: 100%;
  height: auto;
}
.products .product .woocommerce-loop-product__title {
  font-size: var(--dl-product-title-font-size, 1rem);
}
.products .product .price del {
  opacity: 0.5;
  text-decoration: line-through;
}

/* Load Dashicons if not already loaded */
.star-rating {
  --star-size: 1em;
  --star-color: var(--dl-primary);
  --star-empty-color: var(--star-color);
  position: relative;
  display: inline-block;
  font-size: var(--star-size);
  line-height: 1;
  width: calc(var(--star-size) * 5);
  height: var(--star-size);
  color: var(--star-empty-color);
  overflow: hidden;
  /* 5 empty stars */
}
.star-rating::before {
  content: "\f155\f155\f155\f155\f155";
  font-family: dashicons;
  position: absolute;
  top: 0;
  left: 0;
  color: var(--star-empty-color);
}
.star-rating {
  /* Filled stars overlay */
}
.star-rating span {
  text-indent: -9999px; /* hide the text */
  white-space: nowrap;
  display: block;
  height: 100%;
  overflow: hidden;
  color: var(--star-color);
  position: absolute;
  top: 0;
  left: 0;
}
.star-rating span::before {
  content: "\f155\f155\f155\f155\f155";
  font-family: dashicons;
  position: absolute;
  top: 0;
  left: 0;
  color: var(--star-color);
}

body .nf-form-fields-required {
  display: none;
}
body .nf-form-title h3 {
  font-size: 1.5rem;
}
body .nf-field-label .nf-label-span,
body .nf-field-label label {
  font-size: 1.25rem;
  font-weight: 500;
}
body .nf-error .ninja-forms-field,
body .nf-error.listimage-wrap .nf-field-element ul {
  border: 2px solid var(--dl-danger);
}
body .nf-error-msg,
body .ninja-forms-req-symbol {
  color: var(--dl-danger);
  font-weight: 500;
}

.gform_title {
  font-size: 1.5rem;
}

.gform-field-label {
  font-weight: 500;
  margin-bottom: 0.5rem;
  text-box-trim: trim-both;
  display: block;
}

.gfield_required_text {
  display: none;
}

.gform-footer {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.gform-button--width-full {
  width: 100%;
}

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