@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

         
            
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {  
    color: #1e74ab!important;
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    }
            
            
        header .menu-main-nav-container a {
            text-decoration: none!important;
        }

      footer a {
          text-decoration: none!important;
      } 
      
      .card.type-3 a {
          text-decoration: none!important;
      }
  
  @media (min-width: 1024px) {
    .page-id-51 .pb-contact_3_columns .columns-3 {
        grid-template-columns: 1.2fr 1fr;
    }
    }
    
    
   .page-id-51 .nf-form-fields-required {
        color: #000000!important;
    }

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

.skip-link {
    position: absolute;
    left: -999px;
    top: auto;
    background: #fff;
    color: #000;
    padding: 0.5rem 1rem;
    z-index: 1000;
    text-decoration: none;
}

.skip-link:focus {
    left: 1rem;
    top: 1rem;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled {
    opacity: 1!important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid #ffcc00 !important; /* bright yellow, high contrast */
    outline-offset: 2px !important;       /* offset so it doesn’t overlap text */
}
.button:focus::after {
    content: '';
    position: absolute;
    top: -4px;
    left: -4px;
    right: -4px;
    bottom: -4px;
    border: 3px solid #ffcc00; /* bright, visible */
    border-radius: 8px; /* optional */
    pointer-events: none;
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity .3s;
    transform: translateZ(0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform .2s, top .2s
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white {
    --swiper-pagination-color: #fff
}

.swiper-pagination-black {
    --swiper-pagination-color: #000
}

.swiper-pagination-lock {
    display: none
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/44*27);
    height: var(--swiper-navigation-size);
    margin-top: calc(var(--swiper-navigation-size)*-1/2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 30px;
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: normal;
    line-height: 1
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-next.swiper-button-white,
.swiper-button-prev.swiper-button-white {
    --swiper-navigation-color: #fff
}

.swiper-button-next.swiper-button-black,
.swiper-button-prev.swiper-button-black {
    --swiper-navigation-color: #000
}

.swiper-button-lock {
    display: none
}

/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden] {
    display: none
}

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}

body {
    margin: 0
}

a:focus {
    outline: thin dotted
}

a:active,
a:hover {
    outline: 0
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

hr {
    box-sizing: content-box;
    height: 0
}

mark {
    background: #ff0;
    color: #000
}

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em
}

pre {
    white-space: pre-wrap
}

q {
    quotes: "\201C""\201D""\2018""\2019"
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 0
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

button,
input,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    margin: 0
}

button,
input {
    line-height: normal
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    vertical-align: top
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

@-webkit-keyframes textShift {
    0% {
        transform: translateY(20px);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes textShift {
    0% {
        transform: translateY(20px);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes colorShift-teal {
    0% {
        color: #fff
    }

    to {
        color: #ccc
    }
}

@keyframes colorShift-teal {
    0% {
        color: #fff
    }

    to {
        color: #ccc
    }
}

.animate-in.intro h1,
.animate-in.intro p {
    opacity: 0;
    transition: 1s ease;
    transform: translateY(20px)
}

.animate-in.intro.in-view h1,
.animate-in.intro.in-view p {
    opacity: 1;
    transform: translateY(0)
}

.animate-in.intro.in-view p {
    opacity: 0;
    -webkit-animation: textShift .5s;
    animation: textShift .5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.alignnone {
    margin: 5px 20px 20px 0
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto
}

@media(max-width:900px) {

    .aligncenter,
    div.aligncenter {
        margin-bottom: 30px
    }
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

a img.alignnone {
    margin: 0 0 20px
}

img.size-full {
    display: block;
    width: 100%
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center
}

.wp-caption.alignleft,
.wp-caption.alignnone {
    margin: 5px 20px 20px 0
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px
}

.wp-caption img {
    border: 0;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important
}

.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

[data-aos][data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
    transition-duration: 50ms
}

[data-aos][data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
    transition-delay: 50ms
}

[data-aos][data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
    transition-duration: .1s
}

[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
    transition-delay: .1s
}

[data-aos][data-aos][data-aos-duration="150"],
body[data-aos-duration="150"] [data-aos] {
    transition-duration: .15s
}

[data-aos][data-aos][data-aos-delay="150"],
body[data-aos-delay="150"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="150"].aos-animate,
body[data-aos-delay="150"] [data-aos].aos-animate {
    transition-delay: .15s
}

[data-aos][data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
    transition-duration: .2s
}

[data-aos][data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
    transition-delay: .2s
}

[data-aos][data-aos][data-aos-duration="250"],
body[data-aos-duration="250"] [data-aos] {
    transition-duration: .25s
}

[data-aos][data-aos][data-aos-delay="250"],
body[data-aos-delay="250"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="250"].aos-animate,
body[data-aos-delay="250"] [data-aos].aos-animate {
    transition-delay: .25s
}

[data-aos][data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
    transition-duration: .3s
}

[data-aos][data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
    transition-delay: .3s
}

[data-aos][data-aos][data-aos-duration="350"],
body[data-aos-duration="350"] [data-aos] {
    transition-duration: .35s
}

[data-aos][data-aos][data-aos-delay="350"],
body[data-aos-delay="350"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="350"].aos-animate,
body[data-aos-delay="350"] [data-aos].aos-animate {
    transition-delay: .35s
}

[data-aos][data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
    transition-duration: .4s
}

[data-aos][data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
    transition-delay: .4s
}

[data-aos][data-aos][data-aos-duration="450"],
body[data-aos-duration="450"] [data-aos] {
    transition-duration: .45s
}

[data-aos][data-aos][data-aos-delay="450"],
body[data-aos-delay="450"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="450"].aos-animate,
body[data-aos-delay="450"] [data-aos].aos-animate {
    transition-delay: .45s
}

[data-aos][data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
    transition-duration: .5s
}

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
    transition-delay: .5s
}

[data-aos][data-aos][data-aos-duration="550"],
body[data-aos-duration="550"] [data-aos] {
    transition-duration: .55s
}

[data-aos][data-aos][data-aos-delay="550"],
body[data-aos-delay="550"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="550"].aos-animate,
body[data-aos-delay="550"] [data-aos].aos-animate {
    transition-delay: .55s
}

[data-aos][data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
    transition-duration: .6s
}

[data-aos][data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
    transition-delay: .6s
}

[data-aos][data-aos][data-aos-duration="650"],
body[data-aos-duration="650"] [data-aos] {
    transition-duration: .65s
}

[data-aos][data-aos][data-aos-delay="650"],
body[data-aos-delay="650"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="650"].aos-animate,
body[data-aos-delay="650"] [data-aos].aos-animate {
    transition-delay: .65s
}

[data-aos][data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
    transition-duration: .7s
}

[data-aos][data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
    transition-delay: .7s
}

[data-aos][data-aos][data-aos-duration="750"],
body[data-aos-duration="750"] [data-aos] {
    transition-duration: .75s
}

[data-aos][data-aos][data-aos-delay="750"],
body[data-aos-delay="750"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="750"].aos-animate,
body[data-aos-delay="750"] [data-aos].aos-animate {
    transition-delay: .75s
}

[data-aos][data-aos][data-aos-duration="800"],
body[data-aos-duration="800"] [data-aos] {
    transition-duration: .8s
}

[data-aos][data-aos][data-aos-delay="800"],
body[data-aos-delay="800"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="800"].aos-animate,
body[data-aos-delay="800"] [data-aos].aos-animate {
    transition-delay: .8s
}

[data-aos][data-aos][data-aos-duration="850"],
body[data-aos-duration="850"] [data-aos] {
    transition-duration: .85s
}

[data-aos][data-aos][data-aos-delay="850"],
body[data-aos-delay="850"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="850"].aos-animate,
body[data-aos-delay="850"] [data-aos].aos-animate {
    transition-delay: .85s
}

[data-aos][data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
    transition-duration: .9s
}

[data-aos][data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
    transition-delay: .9s
}

[data-aos][data-aos][data-aos-duration="950"],
body[data-aos-duration="950"] [data-aos] {
    transition-duration: .95s
}

[data-aos][data-aos][data-aos-delay="950"],
body[data-aos-delay="950"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="950"].aos-animate,
body[data-aos-delay="950"] [data-aos].aos-animate {
    transition-delay: .95s
}

[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
    transition-duration: 1s
}

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
    transition-delay: 1s
}

[data-aos][data-aos][data-aos-duration="1050"],
body[data-aos-duration="1050"] [data-aos] {
    transition-duration: 1.05s
}

[data-aos][data-aos][data-aos-delay="1050"],
body[data-aos-delay="1050"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1050"].aos-animate,
body[data-aos-delay="1050"] [data-aos].aos-animate {
    transition-delay: 1.05s
}

[data-aos][data-aos][data-aos-duration="1100"],
body[data-aos-duration="1100"] [data-aos] {
    transition-duration: 1.1s
}

[data-aos][data-aos][data-aos-delay="1100"],
body[data-aos-delay="1100"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1100"].aos-animate,
body[data-aos-delay="1100"] [data-aos].aos-animate {
    transition-delay: 1.1s
}

[data-aos][data-aos][data-aos-duration="1150"],
body[data-aos-duration="1150"] [data-aos] {
    transition-duration: 1.15s
}

[data-aos][data-aos][data-aos-delay="1150"],
body[data-aos-delay="1150"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1150"].aos-animate,
body[data-aos-delay="1150"] [data-aos].aos-animate {
    transition-delay: 1.15s
}

[data-aos][data-aos][data-aos-duration="1200"],
body[data-aos-duration="1200"] [data-aos] {
    transition-duration: 1.2s
}

[data-aos][data-aos][data-aos-delay="1200"],
body[data-aos-delay="1200"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1200"].aos-animate,
body[data-aos-delay="1200"] [data-aos].aos-animate {
    transition-delay: 1.2s
}

[data-aos][data-aos][data-aos-duration="1250"],
body[data-aos-duration="1250"] [data-aos] {
    transition-duration: 1.25s
}

[data-aos][data-aos][data-aos-delay="1250"],
body[data-aos-delay="1250"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1250"].aos-animate,
body[data-aos-delay="1250"] [data-aos].aos-animate {
    transition-delay: 1.25s
}

[data-aos][data-aos][data-aos-duration="1300"],
body[data-aos-duration="1300"] [data-aos] {
    transition-duration: 1.3s
}

[data-aos][data-aos][data-aos-delay="1300"],
body[data-aos-delay="1300"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1300"].aos-animate,
body[data-aos-delay="1300"] [data-aos].aos-animate {
    transition-delay: 1.3s
}

[data-aos][data-aos][data-aos-duration="1350"],
body[data-aos-duration="1350"] [data-aos] {
    transition-duration: 1.35s
}

[data-aos][data-aos][data-aos-delay="1350"],
body[data-aos-delay="1350"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1350"].aos-animate,
body[data-aos-delay="1350"] [data-aos].aos-animate {
    transition-delay: 1.35s
}

[data-aos][data-aos][data-aos-duration="1400"],
body[data-aos-duration="1400"] [data-aos] {
    transition-duration: 1.4s
}

[data-aos][data-aos][data-aos-delay="1400"],
body[data-aos-delay="1400"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1400"].aos-animate,
body[data-aos-delay="1400"] [data-aos].aos-animate {
    transition-delay: 1.4s
}

[data-aos][data-aos][data-aos-duration="1450"],
body[data-aos-duration="1450"] [data-aos] {
    transition-duration: 1.45s
}

[data-aos][data-aos][data-aos-delay="1450"],
body[data-aos-delay="1450"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1450"].aos-animate,
body[data-aos-delay="1450"] [data-aos].aos-animate {
    transition-delay: 1.45s
}

[data-aos][data-aos][data-aos-duration="1500"],
body[data-aos-duration="1500"] [data-aos] {
    transition-duration: 1.5s
}

[data-aos][data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
    transition-delay: 1.5s
}

[data-aos][data-aos][data-aos-duration="1550"],
body[data-aos-duration="1550"] [data-aos] {
    transition-duration: 1.55s
}

[data-aos][data-aos][data-aos-delay="1550"],
body[data-aos-delay="1550"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1550"].aos-animate,
body[data-aos-delay="1550"] [data-aos].aos-animate {
    transition-delay: 1.55s
}

[data-aos][data-aos][data-aos-duration="1600"],
body[data-aos-duration="1600"] [data-aos] {
    transition-duration: 1.6s
}

[data-aos][data-aos][data-aos-delay="1600"],
body[data-aos-delay="1600"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1600"].aos-animate,
body[data-aos-delay="1600"] [data-aos].aos-animate {
    transition-delay: 1.6s
}

[data-aos][data-aos][data-aos-duration="1650"],
body[data-aos-duration="1650"] [data-aos] {
    transition-duration: 1.65s
}

[data-aos][data-aos][data-aos-delay="1650"],
body[data-aos-delay="1650"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1650"].aos-animate,
body[data-aos-delay="1650"] [data-aos].aos-animate {
    transition-delay: 1.65s
}

[data-aos][data-aos][data-aos-duration="1700"],
body[data-aos-duration="1700"] [data-aos] {
    transition-duration: 1.7s
}

[data-aos][data-aos][data-aos-delay="1700"],
body[data-aos-delay="1700"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1700"].aos-animate,
body[data-aos-delay="1700"] [data-aos].aos-animate {
    transition-delay: 1.7s
}

[data-aos][data-aos][data-aos-duration="1750"],
body[data-aos-duration="1750"] [data-aos] {
    transition-duration: 1.75s
}

[data-aos][data-aos][data-aos-delay="1750"],
body[data-aos-delay="1750"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1750"].aos-animate,
body[data-aos-delay="1750"] [data-aos].aos-animate {
    transition-delay: 1.75s
}

[data-aos][data-aos][data-aos-duration="1800"],
body[data-aos-duration="1800"] [data-aos] {
    transition-duration: 1.8s
}

[data-aos][data-aos][data-aos-delay="1800"],
body[data-aos-delay="1800"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1800"].aos-animate,
body[data-aos-delay="1800"] [data-aos].aos-animate {
    transition-delay: 1.8s
}

[data-aos][data-aos][data-aos-duration="1850"],
body[data-aos-duration="1850"] [data-aos] {
    transition-duration: 1.85s
}

[data-aos][data-aos][data-aos-delay="1850"],
body[data-aos-delay="1850"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1850"].aos-animate,
body[data-aos-delay="1850"] [data-aos].aos-animate {
    transition-delay: 1.85s
}

[data-aos][data-aos][data-aos-duration="1900"],
body[data-aos-duration="1900"] [data-aos] {
    transition-duration: 1.9s
}

[data-aos][data-aos][data-aos-delay="1900"],
body[data-aos-delay="1900"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1900"].aos-animate,
body[data-aos-delay="1900"] [data-aos].aos-animate {
    transition-delay: 1.9s
}

[data-aos][data-aos][data-aos-duration="1950"],
body[data-aos-duration="1950"] [data-aos] {
    transition-duration: 1.95s
}

[data-aos][data-aos][data-aos-delay="1950"],
body[data-aos-delay="1950"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="1950"].aos-animate,
body[data-aos-delay="1950"] [data-aos].aos-animate {
    transition-delay: 1.95s
}

[data-aos][data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
    transition-duration: 2s
}

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
    transition-delay: 2s
}

[data-aos][data-aos][data-aos-duration="2050"],
body[data-aos-duration="2050"] [data-aos] {
    transition-duration: 2.05s
}

[data-aos][data-aos][data-aos-delay="2050"],
body[data-aos-delay="2050"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2050"].aos-animate,
body[data-aos-delay="2050"] [data-aos].aos-animate {
    transition-delay: 2.05s
}

[data-aos][data-aos][data-aos-duration="2100"],
body[data-aos-duration="2100"] [data-aos] {
    transition-duration: 2.1s
}

[data-aos][data-aos][data-aos-delay="2100"],
body[data-aos-delay="2100"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2100"].aos-animate,
body[data-aos-delay="2100"] [data-aos].aos-animate {
    transition-delay: 2.1s
}

[data-aos][data-aos][data-aos-duration="2150"],
body[data-aos-duration="2150"] [data-aos] {
    transition-duration: 2.15s
}

[data-aos][data-aos][data-aos-delay="2150"],
body[data-aos-delay="2150"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2150"].aos-animate,
body[data-aos-delay="2150"] [data-aos].aos-animate {
    transition-delay: 2.15s
}

[data-aos][data-aos][data-aos-duration="2200"],
body[data-aos-duration="2200"] [data-aos] {
    transition-duration: 2.2s
}

[data-aos][data-aos][data-aos-delay="2200"],
body[data-aos-delay="2200"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2200"].aos-animate,
body[data-aos-delay="2200"] [data-aos].aos-animate {
    transition-delay: 2.2s
}

[data-aos][data-aos][data-aos-duration="2250"],
body[data-aos-duration="2250"] [data-aos] {
    transition-duration: 2.25s
}

[data-aos][data-aos][data-aos-delay="2250"],
body[data-aos-delay="2250"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2250"].aos-animate,
body[data-aos-delay="2250"] [data-aos].aos-animate {
    transition-delay: 2.25s
}

[data-aos][data-aos][data-aos-duration="2300"],
body[data-aos-duration="2300"] [data-aos] {
    transition-duration: 2.3s
}

[data-aos][data-aos][data-aos-delay="2300"],
body[data-aos-delay="2300"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2300"].aos-animate,
body[data-aos-delay="2300"] [data-aos].aos-animate {
    transition-delay: 2.3s
}

[data-aos][data-aos][data-aos-duration="2350"],
body[data-aos-duration="2350"] [data-aos] {
    transition-duration: 2.35s
}

[data-aos][data-aos][data-aos-delay="2350"],
body[data-aos-delay="2350"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2350"].aos-animate,
body[data-aos-delay="2350"] [data-aos].aos-animate {
    transition-delay: 2.35s
}

[data-aos][data-aos][data-aos-duration="2400"],
body[data-aos-duration="2400"] [data-aos] {
    transition-duration: 2.4s
}

[data-aos][data-aos][data-aos-delay="2400"],
body[data-aos-delay="2400"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2400"].aos-animate,
body[data-aos-delay="2400"] [data-aos].aos-animate {
    transition-delay: 2.4s
}

[data-aos][data-aos][data-aos-duration="2450"],
body[data-aos-duration="2450"] [data-aos] {
    transition-duration: 2.45s
}

[data-aos][data-aos][data-aos-delay="2450"],
body[data-aos-delay="2450"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2450"].aos-animate,
body[data-aos-delay="2450"] [data-aos].aos-animate {
    transition-delay: 2.45s
}

[data-aos][data-aos][data-aos-duration="2500"],
body[data-aos-duration="2500"] [data-aos] {
    transition-duration: 2.5s
}

[data-aos][data-aos][data-aos-delay="2500"],
body[data-aos-delay="2500"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2500"].aos-animate,
body[data-aos-delay="2500"] [data-aos].aos-animate {
    transition-delay: 2.5s
}

[data-aos][data-aos][data-aos-duration="2550"],
body[data-aos-duration="2550"] [data-aos] {
    transition-duration: 2.55s
}

[data-aos][data-aos][data-aos-delay="2550"],
body[data-aos-delay="2550"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2550"].aos-animate,
body[data-aos-delay="2550"] [data-aos].aos-animate {
    transition-delay: 2.55s
}

[data-aos][data-aos][data-aos-duration="2600"],
body[data-aos-duration="2600"] [data-aos] {
    transition-duration: 2.6s
}

[data-aos][data-aos][data-aos-delay="2600"],
body[data-aos-delay="2600"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2600"].aos-animate,
body[data-aos-delay="2600"] [data-aos].aos-animate {
    transition-delay: 2.6s
}

[data-aos][data-aos][data-aos-duration="2650"],
body[data-aos-duration="2650"] [data-aos] {
    transition-duration: 2.65s
}

[data-aos][data-aos][data-aos-delay="2650"],
body[data-aos-delay="2650"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2650"].aos-animate,
body[data-aos-delay="2650"] [data-aos].aos-animate {
    transition-delay: 2.65s
}

[data-aos][data-aos][data-aos-duration="2700"],
body[data-aos-duration="2700"] [data-aos] {
    transition-duration: 2.7s
}

[data-aos][data-aos][data-aos-delay="2700"],
body[data-aos-delay="2700"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2700"].aos-animate,
body[data-aos-delay="2700"] [data-aos].aos-animate {
    transition-delay: 2.7s
}

[data-aos][data-aos][data-aos-duration="2750"],
body[data-aos-duration="2750"] [data-aos] {
    transition-duration: 2.75s
}

[data-aos][data-aos][data-aos-delay="2750"],
body[data-aos-delay="2750"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2750"].aos-animate,
body[data-aos-delay="2750"] [data-aos].aos-animate {
    transition-delay: 2.75s
}

[data-aos][data-aos][data-aos-duration="2800"],
body[data-aos-duration="2800"] [data-aos] {
    transition-duration: 2.8s
}

[data-aos][data-aos][data-aos-delay="2800"],
body[data-aos-delay="2800"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2800"].aos-animate,
body[data-aos-delay="2800"] [data-aos].aos-animate {
    transition-delay: 2.8s
}

[data-aos][data-aos][data-aos-duration="2850"],
body[data-aos-duration="2850"] [data-aos] {
    transition-duration: 2.85s
}

[data-aos][data-aos][data-aos-delay="2850"],
body[data-aos-delay="2850"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2850"].aos-animate,
body[data-aos-delay="2850"] [data-aos].aos-animate {
    transition-delay: 2.85s
}

[data-aos][data-aos][data-aos-duration="2900"],
body[data-aos-duration="2900"] [data-aos] {
    transition-duration: 2.9s
}

[data-aos][data-aos][data-aos-delay="2900"],
body[data-aos-delay="2900"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2900"].aos-animate,
body[data-aos-delay="2900"] [data-aos].aos-animate {
    transition-delay: 2.9s
}

[data-aos][data-aos][data-aos-duration="2950"],
body[data-aos-duration="2950"] [data-aos] {
    transition-duration: 2.95s
}

[data-aos][data-aos][data-aos-delay="2950"],
body[data-aos-delay="2950"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="2950"].aos-animate,
body[data-aos-delay="2950"] [data-aos].aos-animate {
    transition-delay: 2.95s
}

[data-aos][data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
    transition-duration: 3s
}

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
    transition-delay: 0s
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
    transition-delay: 3s
}

[data-aos] {
    pointer-events: none
}

[data-aos].aos-animate {
    pointer-events: auto
}

[data-aos][data-aos][data-aos-easing=linear],
body[data-aos-easing=linear] [data-aos] {
    transition-timing-function: cubic-bezier(.25, .25, .75, .75)
}

[data-aos][data-aos][data-aos-easing=ease],
body[data-aos-easing=ease] [data-aos] {
    transition-timing-function: ease
}

[data-aos][data-aos][data-aos-easing=ease-in],
body[data-aos-easing=ease-in] [data-aos] {
    transition-timing-function: ease-in
}

[data-aos][data-aos][data-aos-easing=ease-out],
body[data-aos-easing=ease-out] [data-aos] {
    transition-timing-function: ease-out
}

[data-aos][data-aos][data-aos-easing=ease-in-out],
body[data-aos-easing=ease-in-out] [data-aos] {
    transition-timing-function: ease-in-out
}

[data-aos][data-aos][data-aos-easing=ease-in-back],
body[data-aos-easing=ease-in-back] [data-aos] {
    transition-timing-function: cubic-bezier(.6, -.28, .735, .045)
}

[data-aos][data-aos][data-aos-easing=ease-out-back],
body[data-aos-easing=ease-out-back] [data-aos] {
    transition-timing-function: cubic-bezier(.175, .885, .32, 1.275)
}

[data-aos][data-aos][data-aos-easing=ease-in-out-back],
body[data-aos-easing=ease-in-out-back] [data-aos] {
    transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55)
}

[data-aos][data-aos][data-aos-easing=ease-in-sine],
body[data-aos-easing=ease-in-sine] [data-aos] {
    transition-timing-function: cubic-bezier(.47, 0, .745, .715)
}

[data-aos][data-aos][data-aos-easing=ease-out-sine],
body[data-aos-easing=ease-out-sine] [data-aos] {
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}

[data-aos][data-aos][data-aos-easing=ease-in-out-sine],
body[data-aos-easing=ease-in-out-sine] [data-aos] {
    transition-timing-function: cubic-bezier(.445, .05, .55, .95)
}

[data-aos][data-aos][data-aos-easing=ease-in-quad],
body[data-aos-easing=ease-in-quad] [data-aos] {
    transition-timing-function: cubic-bezier(.55, .085, .68, .53)
}

[data-aos][data-aos][data-aos-easing=ease-out-quad],
body[data-aos-easing=ease-out-quad] [data-aos] {
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quad],
body[data-aos-easing=ease-in-out-quad] [data-aos] {
    transition-timing-function: cubic-bezier(.455, .03, .515, .955)
}

[data-aos][data-aos][data-aos-easing=ease-in-cubic],
body[data-aos-easing=ease-in-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(.55, .085, .68, .53)
}

[data-aos][data-aos][data-aos-easing=ease-out-cubic],
body[data-aos-easing=ease-out-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}

[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],
body[data-aos-easing=ease-in-out-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(.455, .03, .515, .955)
}

[data-aos][data-aos][data-aos-easing=ease-in-quart],
body[data-aos-easing=ease-in-quart] [data-aos] {
    transition-timing-function: cubic-bezier(.55, .085, .68, .53)
}

[data-aos][data-aos][data-aos-easing=ease-out-quart],
body[data-aos-easing=ease-out-quart] [data-aos] {
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quart],
body[data-aos-easing=ease-in-out-quart] [data-aos] {
    transition-timing-function: cubic-bezier(.455, .03, .515, .955)
}

@media screen {
    html:not(.no-js) [data-aos^=fade][data-aos^=fade] {
        opacity: 0;
        transition-property: opacity, transform
    }

    html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate {
        opacity: 1;
        transform: none
    }

    html:not(.no-js) [data-aos=fade-up] {
        transform: translate3d(0, 100px, 0)
    }

    html:not(.no-js) [data-aos=fade-down] {
        transform: translate3d(0, -100px, 0)
    }

    html:not(.no-js) [data-aos=fade-right] {
        transform: translate3d(-100px, 0, 0)
    }

    html:not(.no-js) [data-aos=fade-left] {
        transform: translate3d(100px, 0, 0)
    }

    html:not(.no-js) [data-aos=fade-up-right] {
        transform: translate3d(-100px, 100px, 0)
    }

    html:not(.no-js) [data-aos=fade-up-left] {
        transform: translate3d(100px, 100px, 0)
    }

    html:not(.no-js) [data-aos=fade-down-right] {
        transform: translate3d(-100px, -100px, 0)
    }

    html:not(.no-js) [data-aos=fade-down-left] {
        transform: translate3d(100px, -100px, 0)
    }

    html:not(.no-js) [data-aos^=zoom][data-aos^=zoom] {
        opacity: 0;
        transition-property: opacity, transform
    }

    html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate {
        opacity: 1;
        transform: translateZ(0) scale(1)
    }

    html:not(.no-js) [data-aos=zoom-in] {
        transform: scale(.6)
    }

    html:not(.no-js) [data-aos=zoom-in-up] {
        transform: translate3d(0, 100px, 0) scale(.6)
    }

    html:not(.no-js) [data-aos=zoom-in-down] {
        transform: translate3d(0, -100px, 0) scale(.6)
    }

    html:not(.no-js) [data-aos=zoom-in-right] {
        transform: translate3d(-100px, 0, 0) scale(.6)
    }

    html:not(.no-js) [data-aos=zoom-in-left] {
        transform: translate3d(100px, 0, 0) scale(.6)
    }

    html:not(.no-js) [data-aos=zoom-out] {
        transform: scale(1.2)
    }

    html:not(.no-js) [data-aos=zoom-out-up] {
        transform: translate3d(0, 100px, 0) scale(1.2)
    }

    html:not(.no-js) [data-aos=zoom-out-down] {
        transform: translate3d(0, -100px, 0) scale(1.2)
    }

    html:not(.no-js) [data-aos=zoom-out-right] {
        transform: translate3d(-100px, 0, 0) scale(1.2)
    }

    html:not(.no-js) [data-aos=zoom-out-left] {
        transform: translate3d(100px, 0, 0) scale(1.2)
    }

    html:not(.no-js) [data-aos^=slide][data-aos^=slide] {
        transition-property: transform;
        visibility: hidden
    }

    html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate {
        visibility: visible;
        transform: translateZ(0)
    }

    html:not(.no-js) [data-aos=slide-up] {
        transform: translate3d(0, 100%, 0)
    }

    html:not(.no-js) [data-aos=slide-down] {
        transform: translate3d(0, -100%, 0)
    }

    html:not(.no-js) [data-aos=slide-right] {
        transform: translate3d(-100%, 0, 0)
    }

    html:not(.no-js) [data-aos=slide-left] {
        transform: translate3d(100%, 0, 0)
    }

    html:not(.no-js) [data-aos^=flip][data-aos^=flip] {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transition-property: transform
    }

    html:not(.no-js) [data-aos=flip-left] {
        transform: perspective(2500px) rotateY(-100deg)
    }

    html:not(.no-js) [data-aos=flip-left].aos-animate {
        transform: perspective(2500px) rotateY(0)
    }

    html:not(.no-js) [data-aos=flip-right] {
        transform: perspective(2500px) rotateY(100deg)
    }

    html:not(.no-js) [data-aos=flip-right].aos-animate {
        transform: perspective(2500px) rotateY(0)
    }

    html:not(.no-js) [data-aos=flip-up] {
        transform: perspective(2500px) rotateX(-100deg)
    }

    html:not(.no-js) [data-aos=flip-up].aos-animate {
        transform: perspective(2500px) rotateX(0)
    }

    html:not(.no-js) [data-aos=flip-down] {
        transform: perspective(2500px) rotateX(100deg)
    }

    html:not(.no-js) [data-aos=flip-down].aos-animate {
        transform: perspective(2500px) rotateX(0)
    }
}

:root {
    --black: #000;
    --white: #fff;
    --white-transparent: hsla(0, 0%, 100%, 0.2);
    --red: red;
    --green: #1db954;
    --orange: #e12e00;
    --blue: #1e74ab;
    --grey: #757575;
    --grey-medium: #4c4e4e;
    --grey-light: #e6e6e6;
    --text-colour: #5f5f5f;
    --text-colour-dark: #4c4e4e
}

body,
html {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility
}

body {
    font-family: Open Sans, Times New Roman, Times, serif;
    font-size: 16px;
    line-height: 1.5;
    color: var(--text-colour);
    font-weight: 400;
    font-size: 18px;
    line-height: 28px
}

.h1,
.h2,
.h3,
.h4,
.h5,
h1,
h2,
h3,
h4,
h5 {
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    margin-top: 0;
    margin-bottom: var(--spacer-half);
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 400;
    color: var(--text-colour-dark)
}

a {
    color: #404041
}

.h1,
h1 {
    font-size: 50px;
    text-align: center
}

.h2,
h2 {
    font-size: 24px;
    font-weight: 400
}

@media only screen and (min-width:800px) {

    .h2,
    h2 {
        font-size: 36px
    }
}

.the-content,
.the_content {
    width: 100%;
    max-width: var(--max-width);
    margin-bottom: var(--spacer-3)
}

.the-content h1,
.the-content h2,
.the-content h3,
.the-content h4,
.the_content h1,
.the_content h2,
.the_content h3,
.the_content h4 {
    text-align: left;
    margin-top: var(--spacer-2);
    margin-bottom: var(--spacer-1)
}

.the-content ul,
.the_content ul {
    margin-left: var(--spacer-half);
    margin-bottom: 1rem
}

.the-content blockquote,
.the_content blockquote {
    margin-top: var(--spacer-1);
    margin-bottom: var(--spacer-1);
    padding: var(--spacer-1);
    color: var(--black)
}

.the-content blockquote p,
.the_content blockquote p {
    color: inherit
}

.the-content blockquote p:last-child,
.the_content blockquote p:last-child {
    margin-bottom: 0 !important
}

html {
    box-sizing: border-box
}

*,
:after,
:before {
    box-sizing: inherit
}

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

body,
body html {
    overflow-x: hidden
}

body footer {
    margin-top: auto
}

main {
    overflow-x: hidden;
    max-width: 100vw
}

.row {
    max-width: none;
    width: 100%
}

.no-pad {
    padding: 0
}

.max-width {
    max-width: 1080px;
    display: block;
    margin: 0 auto
}

.max-width.pad-content {
    padding: 80px 0 60px;
    overflow: hidden
}

.clear {
    clear: both
}

.title-container {
    display: block;
    margin: 0 auto 60px;
    text-align: center
}

nav ul {
    list-style-type: none
}

.the-content a {
    text-decoration: underline
}

.the-content p {
    font-size: 18px;
    font-weight: 300;
    margin-top: 0
}

.the-content p:last-child {
    margin-bottom: 0
}

#SignUp h2 {
    color: #fff
}

.signup-container p.privacy {
    text-align: center;
    margin: 20px 0 40px
}

.signup-container p.privacy label {
    color: #fff;
    font-size: 17px
}

.signup-container p.privacy label a {
    color: #fff;
    transition: all .3s;
    text-decoration: underline
}

.signup-container p.privacy label a:hover {
    color: #000
}

@media only screen and (max-width:639px) {
    .no-mob {
        display: none
    }

    .no-mob-pad {
        padding: 0
    }
}

:root {
    --max-width: 1200px;
    --max-width-large: 1360px;
    --swiper-theme-color: $brand-primary;
    --trans-duration: 0.2s;
    --trans-duration-slow: 0.4s
}

ol[class],
ul[class] {
    margin: 0;
    padding: 0;
    list-style: none
}

a:not(.button, .a-wrap) {
    opacity: var(--opacity, 1);
    transform: scale(var(--scale, 1));
    text-decoration-line: underline;
    text-decoration-thickness: var(--underline-thickness, 1px);
    text-underline-offset: var(--underline-offset, 2px);
    /*text-decoration-color: var(--underline-color, var(--white));*/
    transition: text-underline-offset, text-decoration-color, text-decoration-thickness;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

a:not(.button, .a-wrap):active,
a:not(.button, .a-wrap):focus,
a:not(.button, .a-wrap):focus-visible,
a:not(.button, .a-wrap):hover {
    color: inherit;
    text-underline-offset: var(--underline-offset, 2px) !important;
    --underline-offset: 3px;
    --underline-color: var(--white);
    --transition-duration: 0.3s
}

:root {
    --spacer: 20px;
    --spacer-half: calc(var(--spacer)*0.5);
    --spacer-third: calc(var(--spacer)*0.33);
    --spacer-two-thirds: calc(var(--spacer)*0.66);
    --spacer-1: calc(var(--spacer)*1);
    --spacer-1-and-half: calc(var(--spacer)*1.5);
    --spacer-2: calc(var(--spacer)*2);
    --spacer-3: calc(var(--spacer)*3);
    --spacer-4: calc(var(--spacer)*4);
    --spacer-5: calc(var(--spacer)*5)
}

@media only screen and (min-width:600px) {
    :root {
        --spacer: 30px
    }
}

.full-bleed,
.full_bleed {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%)
}

.margin-bottom {
    margin-bottom: var(--spacer-2)
}

.test2 ul {
    list-style: none;
    --gap: var(--spacer-1);
    gap: var(--gap);
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    --columns: 1
}

@media only screen and (min-width:600px) {
    .test2 ul {
        --columns: 3
    }
}

@media only screen and (min-width:1000px) {
    .test2 ul {
        --columns: 5
    }
}

.test2 ul li {
    background: orange
}

@-webkit-keyframes topGoToMiddle {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(10px)
    }
}

@-webkit-keyframes topGoBack {
    0% {
        transform: translateY(10px)
    }

    to {
        transform: translateY(0)
    }
}

@-webkit-keyframes bottomGoToMiddle {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(-10px)
    }
}

@-webkit-keyframes bottomGoBack {
    0% {
        transform: translateY(-10px)
    }

    to {
        transform: translateY(0)
    }
}

@-webkit-keyframes goBack1 {
    0% {
        transform: translateY(calc(30% + var(--line-height)/2)) translateX(-30%) rotate(45deg)
    }

    35% {
        transform: translateY(calc(30% + var(--line-height)))
    }

    to {
        transform: translateY(0)
    }
}

@-webkit-keyframes goToMiddle1 {
    0% {
        transform: translateY(0)
    }

    35% {
        transform: translateY(calc(30% + var(--line-height)))
    }

    to {
        transform: translateY(calc(30% + var(--line-height)/2)) translateX(-30%) rotate(45deg)
    }
}

@-webkit-keyframes goBack3 {
    0% {
        transform: translateY(-30%) translateX(-30%) rotate(-45deg)
    }

    35% {
        transform: translateY(calc(-30% - 4px))
    }

    to {
        transform: translateY(0)
    }
}

@-webkit-keyframes goToMiddle3 {
    0% {
        transform: translateY(0)
    }

    35% {
        transform: translateY(calc(-30% - 4px))
    }

    to {
        transform: translateY(-30%) translateX(-30%) rotate(-45deg)
    }
}

@-webkit-keyframes fadeInSubtle {
    0% {
        transform: translateX(20%);
        opacity: 0
    }

    to {
        transform: translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes fadeOut {
    0% {
        transform: translateX(0);
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translateX(100%)
    }
}

.menu-open,
header {
    --nav-background: linear-gradient(180deg, rgba(0, 0, 0, 0.73) 11%, transparent)
}

header {
    --link-padding: var(--spacer-half);
    --burger-fill-color: var(--white, #fff);
    --links-color: var(--white);
    --sub-menu-chevron: url(../img/icons/chevron-down-white.svg)
}

header.scrolled {
    --logo-height: 45px;
    --link-padding: var(--spacer-third);
    --nav-background: var(--white);
    --links-color: var(--black);
    --burger-fill-color: var(--links-color);
    --logo-name-color: var(--blue) !important;
    --sub-menu-chevron: url(../img/icons/chevron-down-black.svg)
}

header+* {
    transition: margin .1s ease-in-out
}

header .logo-container {
    opacity: 1;
    pointer-events: all;
    transition: padding ease-in-out, opacity ease-in-out;
    transition-duration: var(--trans-duration);
    filter: drop-shadow(0 0 10px var(--black-semi-light));
    width: auto;
    flex-grow: 0
}

header .logo-container path,
header .logo-container svg {
    transition: fill;
    transition-timing-function: ease;
    transition-duration: .2s;
    transition-delay: .3s
}

header .logo-container a {
    padding: 0;
    display: block;
    transform: scale(var(--scale, 1));
    transition: transform;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

header .logo-container a:focus-visible,
header .logo-container a:hover {
    --scale: 1.04;
    --transition-duration: 0.3s
}

header .logo-container a svg {
    max-height: var(--logo-height, 60px);
    display: block;
    width: auto;
    height: auto;
    transition: max-height .4s ease;
    transform-origin: left center
}

header .menu-main-nav-container {
    margin: 0 auto
}

header .menu-main-nav-container a {
    padding: var(--spacer-half);
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    color: var(--links-color);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    --underline-thickness: 0px;
    --underline-color: transparent;
    line-height: 1
}

header .menu-main-nav-container a:active,
header .menu-main-nav-container a:focus-visible,
header .menu-main-nav-container a:hover {
    color: var(--links-color);
    --underline-offset: 5px;
    --underline-thickness: 1px;
    --underline-color: var(--links-color)
}

header nav {
    position: fixed;
    top: 0;
    left: 0;
    max-width: 100vw;
    width: 100%;
    margin-bottom: 100% !important;
    z-index: 200;
    background: var(--nav-background);
    display: flex;
    gap: var(--spacer-1);
    justify-content: space-between;
    align-items: center;
    padding: var(--link-padding) var(--spacer-1);
    transition: background, padding;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

header nav [class*=menu] {
    display: none;
    margin-left: auto
}

@media only screen and (min-width:1080px) {
    header nav [class*=menu] {
        display: flex
    }
}

header nav [class*=menu] ul {
    display: flex
}

header nav [class*=menu] li:focus-within,
header nav [class*=menu] li:hover {
    --sub-pointer-events: all;
    --sub-opacity: 1;
    --sub-scale: 1;
    --sub-x: -50%;
    --sub-y: 0
}

header nav [class*=menu] li:focus-visible {
    --sub-pointer-events: all;
    --sub-opacity: 1;
    --sub-scale: 1;
    --sub-x: -50%;
    --sub-y: 0
}

header nav .menu-item-has-children {
    position: relative
}

header nav .menu-item-has-children>a {
    position: relative
}

header nav .menu-item-has-children>a:after {
    content: "";
    display: block;
    position: relative;
    --size: 20px;
    width: var(--size);
    height: var(--size);
    margin-left: 4px;
    background-image: var(--sub-menu-chevron);
    background-repeat: no-repeat;
    background-position: 50%
}

header nav .sub-menu {
    pointer-events: var(--sub-pointer-events, none);
    opacity: var(--sub-opacity, 0);
    transform-origin: top left;
    transform: translateY(var(--sub-y, -10px)) scale(var(--sub-scale, .7)) translateX(var(--sub-x, -50%));
    transition: opacity, transform;
    transition-duration: .2s;
    transition-timing-function: ease;
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content;
    position: absolute;
    left: 50%;
    top: 100%;
    display: flex;
    flex-direction: column;
    padding: var(--spacer-two-thirds) var(--spacer-1);
    align-items: flex-start;
    background: #fff;
    box-shadow: 0 12px 16px -4px rgba(16, 24, 40, .08), 0 4px 6px -2px rgba(16, 24, 40, .03)
}

header nav .sub-menu li {
    margin-left: unset
}

header nav .sub-menu a {
    color: var(--black);
    padding: var(--spacer-half) 0;
    white-space: nowrap
}

header nav .sub-menu a:active,
header nav .sub-menu a:focus-visible,
header nav .sub-menu a:hover {
    color: var(--black);
    --underline-offset: 5px;
    --underline-thickness: 1px;
    --underline-color: var(--black)
}

.cart-icon,
header nav button.hamburger_toggle {
    display: flex
}

.cart-icon {
    justify-content: center;
    align-items: center;
    --padding: 10px;
    padding: var(--padding);
    padding-right: 0;
    margin-left: auto;
    transform: scale(var(--scale, 1));
    transition: transform, opacity;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

.cart-icon:focus-visible,
.cart-icon:hover {
    --scale: 1.04;
    --transition-duration: 0.3s
}

.hamburger_toggle {
    box-sizing: border-box;
    margin-left: 0;
    margin-top: 0;
    background-color: transparent;
    transition: background .6s ease-in-out;
    --padding: 10px;
    padding: var(--padding);
    --size: 42px;
    width: var(--size);
    height: var(--size);
    border: 0 !important;
    position: relative
}

.hamburger_toggle:active,
.hamburger_toggle:focus,
.hamburger_toggle:hover {
    background-color: hsla(0, 0%, 100%, .062745098);
    transition: background .3s ease-in-out
}

.hamburger_toggle span {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute
}

.hamburger_toggle svg {
    --line-height: 2px;
    width: 100%;
    height: 100%;
    transition: transform .2s ease-in-out
}

.hamburger_toggle svg>* {
    transition: opacity .2s ease-in-out, transform .2s ease-in-out, fill .3s ease-in-out;
    height: var(--line-height) !important;
    -webkit-animation-duration: .4s;
    animation-duration: .4s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.hamburger_toggle svg g,
.hamburger_toggle svg path {
    transform-origin: center center !important
}

.hamburger_toggle svg #line1,
.hamburger_toggle svg #line2,
.hamburger_toggle svg #line3 {
    -webkit-animation-duration: .2s;
    animation-duration: .2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.hamburger_toggle svg #line1 {
    -webkit-animation-name: topGoBack;
    animation-name: topGoBack
}

.hamburger_toggle svg #line3 {
    -webkit-animation-name: bottomGoBack;
    animation-name: bottomGoBack
}

.hamburger_toggle.first-load #line1,
.hamburger_toggle.first-load #line2,
.hamburger_toggle.first-load #line3 {
    -webkit-animation-duration: .3s;
    animation-duration: .3s
}

.hamburger_toggle #close {
    opacity: 0;
    transition: opacity .3s ease-in-out !important
}

.hamburger_toggle.toggled svg {
    transform: rotate(135deg)
}

.hamburger_toggle.toggled #close {
    transition-delay: 0;
    opacity: 1
}

.hamburger_toggle.toggled #line1 {
    -webkit-animation-name: topGoToMiddle;
    animation-name: topGoToMiddle;
    width: 0;
    height: 11px
}

.hamburger_toggle.toggled #line2 {
    opacity: 0
}

.hamburger_toggle.toggled #line3 {
    -webkit-animation-name: bottomGoToMiddle;
    animation-name: bottomGoToMiddle
}

@keyframes topGoToMiddle {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(10px)
    }
}

@keyframes topGoBack {
    0% {
        transform: translateY(10px)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes bottomGoToMiddle {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(-10px)
    }
}

@keyframes bottomGoBack {
    0% {
        transform: translateY(-10px)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes goBack1 {
    0% {
        transform: translateY(calc(30% + var(--line-height)/2)) translateX(-30%) rotate(45deg)
    }

    35% {
        transform: translateY(calc(30% + var(--line-height)))
    }

    to {
        transform: translateY(0)
    }
}

@keyframes goToMiddle1 {
    0% {
        transform: translateY(0)
    }

    35% {
        transform: translateY(calc(30% + var(--line-height)))
    }

    to {
        transform: translateY(calc(30% + var(--line-height)/2)) translateX(-30%) rotate(45deg)
    }
}

@keyframes goBack3 {
    0% {
        transform: translateY(-30%) translateX(-30%) rotate(-45deg)
    }

    35% {
        transform: translateY(calc(-30% - 4px))
    }

    to {
        transform: translateY(0)
    }
}

@keyframes goToMiddle3 {
    0% {
        transform: translateY(0)
    }

    35% {
        transform: translateY(calc(-30% - 4px))
    }

    to {
        transform: translateY(-30%) translateX(-30%) rotate(-45deg)
    }
}

footer {
    background: var(--grey-medium);
    padding: 0;
    padding: var(--spacer-2) var(--spacer-1);
    padding-bottom: 0;
    color: var(--white);
    position: relative
}

footer:before {
    content: "";
    position: absolute;
    background: var(--grey-medium);
    width: 100%;
    height: 1px;
    top: -1px;
    left: 0;
    z-index: 9999
}

footer a {
    color: inherit
}

footer .wrapper {
    position: relative;
    z-index: 2;
    max-width: var(--max-width);
    margin: 0 auto;
    padding-top: var(--spacer-2);
    padding-bottom: var(--spacer-3)
}

@media only screen and (min-width:900px) {
    footer .wrapper {
        padding-bottom: var(--spacer-2);
        padding-top: var(--spacer-1)
    }
}

footer .menu-footer-container ul.menu {
    list-style: none;
    -moz-columns: 2;
    column-count: 2;
    -moz-column-gap: var(--spacer-1);
    column-gap: var(--spacer-1);
    text-align: center
}

@media only screen and (min-width:900px) {
    footer .menu-footer-container ul.menu {
        text-align: left
    }
}

footer .menu-footer-container ul.menu li {
    -moz-column-break-inside: avoid;
    break-inside: avoid-column
}

footer .column-left {
    display: none
}

@media only screen and (min-width:900px) {
    footer .column-left {
        display: flex
    }
}

footer .sponsors {
    background-color: var(--grey-light);
    padding: 0 var(--spacer-1)
}

footer .sponsors ul {
    padding: 0;
    padding: var(--spacer-1) 0;
    max-width: var(--max-width);
    margin: 0 auto;
    list-style: none;
    display: flex;
    gap: var(--spacer);
    align-items: center;
    flex-wrap: wrap;
    overflow: auto;
    justify-content: center
}

@media only screen and (min-width:900px) {
    footer .sponsors ul {
        justify-content: space-between
    }
}

footer .sponsors ul li {
    flex-shrink: 0;
    margin-bottom: 0
}

footer .sponsors ul li img {
    max-height: 44px;
    width: auto
}

footer .menu-footer-meta-menu-container {
    width: 100%;
    padding: 0
}

footer .menu-footer-meta-menu-container ul {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: calc(var(--max-width)*0.75);
    margin: 0 auto;
    gap: var(--spacer-1);
    flex-wrap: wrap
}

@media only screen and (min-width:600px) {
    footer .menu-footer-meta-menu-container ul {
        flex-direction: row
    }
}

@media only screen and (min-width:900px) {
    footer .menu-footer-meta-menu-container ul {
        justify-content: space-between
    }
}

footer .menu-footer-meta-menu-container ul li {
    display: flex;
    justify-content: center
}

footer a {
    line-height: 1.2;
    text-align: center !important;
    --underline-thickness: 0px;
    --underline-color: transparent
}

footer a:active,
footer a:focus-visible,
footer a:hover {
    --underline-thickness: 1px;
    --underline-color: var(--white)
}

footer .reviews {
    width: 100%
}

footer .reviews .reviews-list {
    display: flex;
    gap: var(--spacer-2);
    justify-content: center
}

footer .reviews .reviews-list img {
    max-height: 55px;
    width: auto
}

footer .menu-footer-container ul {
    -moz-columns: 2 !important;
    column-count: 2 !important
}

footer .menu-footer-container ul li {
    margin-bottom: var(--spacer-two-thirds)
}

footer .menu-footer-container ul a {
    font-size: 18px;
    font-weight: 700
}

@media only screen and (min-width:900px) {
    footer .socials {
        display: flex;
        justify-content: center
    }
}

footer .contact-details {
    text-align: center
}

footer .contact-details .contact {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-1);
    justify-content: center;
    align-items: center
}

@media only screen and (min-width:900px) {
    footer .contact-details .contact {
        align-items: flex-start
    }
}
/* 
footer .contact-details .email a {
    color: var(--orange)
} */

@media only screen and (min-width:900px) {
    footer .contact-details .email a {
        color: var(--white)
    }
}

@media only screen and (min-width:900px) {
    footer .contact-details .address {
        display: flex;
        flex-direction: column;
        justify-content: flex-start
    }

    footer .contact-details .address a,
    footer .contact-details .address p {
        text-align: left;
        margin-right: auto
    }
}

footer .contact-details .address a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(var(--spacer)/5)
}

footer .contact-details .address a:before {
    content: "";
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    top: 0;
    left: 0;
    --sub-menu-chevron: url(../img/icons/pin.svg);
    background-image: var(--sub-menu-chevron);
    background-size: contain;
    background-repeat: no-repeat
}

footer .contact-details a {
    --underline-thickness: 0px;
    --underline-color: transparent
}

footer .contact-details a:active,
footer .contact-details a:focus-visible,
footer .contact-details a:hover {
    --underline-thickness: 1px;
    --underline-color: var(--white)
}

footer .wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacer-3)
}

footer .wrapper .menu-footer-meta-menu-container {
    order: 10
}

@media only screen and (min-width:900px) {
    footer .wrapper {
        display: grid;
        align-items: unset;
        grid-auto-columns: 1fr;
        grid-template-areas: "menu reviews contact""menu social contact""menu social contact""meta meta meta"
    }

    footer .wrapper .column-left {
        grid-area: menu
    }

    footer .wrapper .contact-details {
        grid-area: contact;
        display: flex;
        justify-content: flex-end
    }

    footer .wrapper .socials {
        grid-area: social
    }

    footer .wrapper .reviews {
        grid-area: reviews
    }

    footer .wrapper .menu-footer-meta-menu-container {
        grid-area: meta
    }
}

.button_wrapper {
    display: flex;
    gap: 15px;
    margin-bottom: var(--spacer-third);
    flex-wrap: wrap;
    width: 100%;
    gap: var(--spacer-half);
    row-gap: var(--spacer-1);
    justify-content: center
}

@media only screen and (min-width:800px) {
    .button_wrapper.left {
        justify-content: flex-start
    }
}

.button_wrapper.right {
    justify-content: flex-end
}

.button_wrapper.center {
    justify-content: center
}

.button_wrapper.count-2 {
    /* gap: 0; */
    row-gap: var(--spacer-third)
}

/* .button_wrapper.count-2 .button:first-child {
    -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 100%, 0 100%);
    padding-right: 35px !important
} */

@media only screen and (min-width:600px) {
    .button_wrapper.count-2 .button:first-child {
        padding-right: 45px !important
    }
}

/* .button_wrapper.count-2 .button:nth-child(2) {
    -webkit-clip-path: polygon(15px 0, 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(15px 0, 100% 0, 100% 100%, 0 100%);
    padding-left: 35px !important
} */

@media only screen and (min-width:600px) {
    .button_wrapper.count-2 .button:nth-child(2) {
        padding-left: 45px !important
    }
}

@-webkit-keyframes slide-in-left {
    0% {
        transform: translateX(-50px) skew(-20deg)
    }

    to {
        transform: translateX(400%) skew(-20deg)
    }
}

@keyframes slide-in-left {
    0% {
        transform: translateX(-50px) skew(-20deg)
    }

    to {
        transform: translateX(400%) skew(-20deg)
    }
}

.button,
.single_add_to_cart_button,
.woocommerce a.button {
    --bg-color: radial-gradient(50% 50% at 50% 50%, hsla(0, 0%, 100%, 0.294) 0%, hsla(0, 0%, 100%, 0) 100%), #2b93d1;
    --text-color: var(--white);
    --border-radius: 0;
    --scale: 1;
    --opacity: 1;
    --transition-speed: 0.7s;
    --drop-shadow: unset;
    --icon-translateX: 0px;
    --icon-scale: 1;
    filter: var(--drop-shadow);
    overflow: hidden !important;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2 !important;
    padding: 6px 20px !important;
    font-size: 14px;
    font-weight: 300;
    border: none;
    text-transform: uppercase;
    font-weight: 700;
    background: var(--bg-color) !important;
    color: var(--text-color) !important;
    border-radius: var(--border-radius) !important;
    text-decoration: none !important;
    text-align: center;
    min-width: 100px;
    opacity: var(--opacity);
    width: auto !important;
    transform-origin: bottom center;
    transform: scale(var(--scale));
    transition: all ease-in-out;
    transition-duration: var(--transition-speed);
    box-shadow: 0 4px 4px rgba(0, 0, 0, .05);
    position: relative
}

.button:before,
.single_add_to_cart_button:before,
.woocommerce a.button:before {
    position: absolute;
    content: "";
    background: #fff;
    opacity: var(--sheen-opacity, 0);
    width: 50px;
    height: 100%;
    top: 0;
    left: var(--sheen-offset, -50px);
    transform: skew(-20deg);
    transition: opacity var(--sheen-opacity-duration, .7s) ease-in-out, left var(--sheen-offset-duration, .7s) ease-in-out
}

@media only screen and (min-width:600px) {

    .button,
    .single_add_to_cart_button,
    .woocommerce a.button {
        padding: 6px 35px !important
    }
}

.button.orange,
.single_add_to_cart_button.orange,
.woocommerce a.button.orange {
    --bg-color: var(--orange);
}

.button.blue,
.single_add_to_cart_button.blue,
.woocommerce a.button.blue {
    --bg-color: var(--blue);
    box-shadow: 0 4px 4px rgba(0, 0, 0, .05);
    border-radius: 1px
}

.button:active,
.button:focus,
.button:hover,
.single_add_to_cart_button:active,
.single_add_to_cart_button:focus,
.single_add_to_cart_button:hover,
.woocommerce a.button:active,
.woocommerce a.button:focus,
.woocommerce a.button:hover {
    --sheen-offset: calc(100% + 50px);
    --sheen-offset-duration: 0.7s;
    --sheen-opacity-duration: 0.4s;
    --sheen-opacity: 0.5;
    --scale: 1.03;
    --opacity: 1;
    --text-color: var(--white);
    --drop-shadow: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25))
}

.button:active.orange,
.button:focus.orange,
.button:hover.orange,
.single_add_to_cart_button:active.orange,
.single_add_to_cart_button:focus.orange,
.single_add_to_cart_button:hover.orange,
.woocommerce a.button:active.orange,
.woocommerce a.button:focus.orange,
.woocommerce a.button:hover.orange {
    --bg-color: radial-gradient(50% 50% at 50% 50%, hsla(0, 0%, 100%, 0.294) 0%, hsla(0, 0%, 100%, 0) 100%), #fd3a00
}

.button:active.blue,
.button:focus.blue,
.button:hover.blue,
.single_add_to_cart_button:active.blue,
.single_add_to_cart_button:focus.blue,
.single_add_to_cart_button:hover.blue,
.woocommerce a.button:active.blue,
.woocommerce a.button:focus.blue,
.woocommerce a.button:hover.blue {
    --bg-color: radial-gradient(50% 50% at 50% 50%, hsla(0, 0%, 100%, 0.294) 0%, hsla(0, 0%, 100%, 0) 100%), #2b93d1
}

.button.outlined,
.single_add_to_cart_button.outlined,
.woocommerce a.button.outlined {
    --text-color: var(--white);
    --bg-color: transparent;
    --bg-color: var(--white);
    text-transform: none;
    font-size: 16px;
    padding: 6px 15px !important;
    border: 2px solid var(--text-color)
}

@media only screen and (min-width:600px) {

    .button.outlined,
    .single_add_to_cart_button.outlined,
    .woocommerce a.button.outlined {
        padding: 8px 18px !important
    }
}

.button.outlined:before,
.single_add_to_cart_button.outlined:before,
.woocommerce a.button.outlined:before {
    background-color: var(--text-color)
}

.button.outlined.orange,
.single_add_to_cart_button.outlined.orange,
.woocommerce a.button.outlined.orange {
    --text-color: var(--orange)
}

.button.outlined.blue,
.single_add_to_cart_button.outlined.blue,
.woocommerce a.button.outlined.blue {
    --text-color: var(--blue)
}

.button.outlined:active,
.button.outlined:focus,
.button.outlined:hover,
.single_add_to_cart_button.outlined:active,
.single_add_to_cart_button.outlined:focus,
.single_add_to_cart_button.outlined:hover,
.woocommerce a.button.outlined:active,
.woocommerce a.button.outlined:focus,
.woocommerce a.button.outlined:hover {
    --bg-color: var(--white);
    --opacity: 1
}

.button.outlined:active.orange,
.button.outlined:focus.orange,
.button.outlined:hover.orange,
.single_add_to_cart_button.outlined:active.orange,
.single_add_to_cart_button.outlined:focus.orange,
.single_add_to_cart_button.outlined:hover.orange,
.woocommerce a.button.outlined:active.orange,
.woocommerce a.button.outlined:focus.orange,
.woocommerce a.button.outlined:hover.orange {
    --text-color: var(--orange)
}

.button.outlined:active.blue,
.button.outlined:focus.blue,
.button.outlined:hover.blue,
.single_add_to_cart_button.outlined:active.blue,
.single_add_to_cart_button.outlined:focus.blue,
.single_add_to_cart_button.outlined:hover.blue,
.woocommerce a.button.outlined:active.blue,
.woocommerce a.button.outlined:focus.blue,
.woocommerce a.button.outlined:hover.blue {
    --text-color: var(--blue)
}

.single_add_to_cart_button {
    --bg-color: var(--orange);
}



.nf-form-fields-required {
    padding: 20px 0;
    font-size: 12px;
    font-style: italic;
    color: #999
}

.nf-form-content input:not([type=button]) {
    background: #fff
}

.nf-field-element .ninja-forms-field.nf-element,
.ninja-forms-field.nf-element {
    background-color: #fff
}

.submit-wrap .ninja-forms-field[type=button] {
    background: #0e9990;
    color: #fff
}

.input-field input {
    background: transparent;
    border: 1px solid #fff;
    border-top: none;
    border-right: none;
    box-shadow: none
}

.input-field input :-ms-input-placeholder {
    color: #fff
}

.input-field input ::-moz-placeholder {
    color: #fff
}

.input-field input ::placeholder {
    color: #fff
}

@media only screen and (max-width:46em) {
    .input-field {
        width: 100%
    }
}

#SignUp input[type=checkbox] {
    position: relative;
    margin: .4rem
}

#SignUp input[type=checkbox]:before {
    content: " ";
    background: #000;
    border: 1px solid #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    width: 20px;
    height: 20px;
    transition: background .3s ease-in-out
}

#SignUp input[type=checkbox]:checked:before {
    background: #5d5d5d
}

#SignUp input[type=checkbox]:checked:after {
    content: none
}

.form_block {
    max-width: var(--max-width);
    width: 100%;
    margin: 0 auto;
    margin-bottom: var(--spacer-2);
    text-align: center
}

.form_block .wrapper {
    padding: var(--spacer-2);
    background-color: #ebe1e0;
    width: 100%
}

.form_block #nf-field-4-container.button {
    padding-bottom: 0 !important
}

.form_block input.ninja-forms-field.button {
    padding: unset;
    color: #4d4d4d !important;
    padding: 0 !important
}

body.menu-open .full-menu.hamburger-content,
html.menu-open .full-menu.hamburger-content {
    opacity: 1;
    pointer-events: all;
    display: flex;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: .3s;
    animation-duration: .3s
}

body.menu-open #menu-mobile a,
html.menu-open #menu-mobile a {
    -webkit-animation-name: fadeInSubtle;
    animation-name: fadeInSubtle;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: .53s;
    animation-duration: .53s;
    -webkit-animation-delay: var(--stagger);
    animation-delay: var(--stagger)
}

@keyframes fadeInSubtle {
    0% {
        transform: translateX(20%);
        opacity: 0
    }

    to {
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        transform: translateX(100%);
        opacity: 0
    }

    to {
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes fadeOut {
    0% {
        transform: translateX(0);
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translateX(100%)
    }
}

.full-menu.hamburger-content {
    max-width: 450px;
    overflow-x: hidden;
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    color: #fff;
    pointer-events: none;
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: var(--grey-medium);
    z-index: 999;
    padding: var(--spacer-2);
    padding-top: var(--nav-bar-height)
}

.full-menu.hamburger-content .cart-icon,
.full-menu.hamburger-content.first-load,
.full-menu.hamburger-content.hidden {
    display: none
}

.full-menu.hamburger-content a {
    color: inherit
}

.full-menu.hamburger-content .hamburger_toggle {
    position: absolute;
    top: 0;
    right: 0;
    margin-right: var(--spacer-1);
    margin-top: var(--spacer-1);
    z-index: 9999
}

.full-menu.hamburger-content .wrapper {
    width: 100%;
    overflow-x: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.full-menu.hamburger-content .logo {
    background: #428bca;
    display: flex;
    position: absolute;
    position: fixed;
    top: var(--spacer-1);
    top: calc(var(--spacer-1) + 3px);
    left: var(--spacer-1)
}

@media only screen and (min-width:800px) {
    .full-menu.hamburger-content .logo {
        left: var(--spacer-2)
    }
}

.full-menu.hamburger-content .logo:before {
    content: "";
    background: #428bca;
    width: 100%;
    height: 110%;
    position: absolute;
    top: -105%
}

.full-menu.hamburger-content nav#hamburger-nav {
    max-width: 800px;
    display: flex;
    height: 100%;
    align-items: flex-start;
    margin-top: var(--spacer-1);
    width: 100%;
    margin-right: auto;
    overflow: auto
}

.full-menu.hamburger-content nav#hamburger-nav .menu-mobile-container {
    width: 100%;
    overflow-x: hidden
}

.full-menu.hamburger-content nav#hamburger-nav ul {
    display: flex;
    flex-direction: column
}

.full-menu.hamburger-content nav#hamburger-nav ul li {
    display: flex
}

.full-menu.hamburger-content nav#hamburger-nav a {
    flex-basis: 100%;
    line-height: 1;
    opacity: 0;
    padding: var(--spacer-two-thirds);
    padding-left: 0;
    font-size: 18px;
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
    transition: background .5s ease, color .5s ease, padding .7s ease;
    padding-left: var(--translateX, 0) !important;
    transform: scaleX(--scale)
}

@media only screen and (min-width:800px) {
    .full-menu.hamburger-content nav#hamburger-nav a {
        padding: var(--spacer-third)
    }
}

.full-menu.hamburger-content nav#hamburger-nav a:active,
.full-menu.hamburger-content nav#hamburger-nav a:focus,
.full-menu.hamburger-content nav#hamburger-nav a:hover {
    --scale: 1.05;
    --translateX: var(--spacer-third);
    transition: background .2s ease, color .2s ease, padding .4s ease
}

.full-menu.hamburger-content #hamburger-nav {
    flex-direction: column;
    position: relative
}

.full-menu.hamburger-content #hamburger-nav:before {
    pointer-events: none;
    z-index: 2;
    content: "";
    position: absolute;
    background: red;
    background: linear-gradient(.92deg, #4c4e4e .43%, rgba(76, 78, 78, 0) 98.87%);
    width: 100%;
    height: calc(var(--spacer-5) + var(--spacer-2));
    top: calc(100% - var(--spacer-5) - var(--spacer-2));
    left: 0
}

.full-menu.hamburger-content #menu-mobile {
    padding-bottom: var(--spacer-5)
}

.full-menu.hamburger-content .nav-footer {
    width: 100%;
    padding-top: var(--spacer-half);
    display: flex;
    flex-direction: column;
    gap: var(--spacer-half)
}

.full-menu.hamburger-content .nav-footer a {
    text-decoration: none
}

.full-menu.hamburger-content .nav-footer .socials {
    margin-top: var(--spacer-third)
}

.page-intro {
    background-color: #ebe1e0;
    background-image: url(../img/paper_texture.png);
    align-self: flex-start;
    z-index: 1;
    position: relative
}

.page-intro h2 span {
    font-style: italic;
    display: block;
    font-weight: 400;
    font-size: 70%;
    margin-bottom: var(--spacer-half)
}

@media only screen and (min-width:700px) {
    .page-intro h2 span {
        transform: translateX(calc(var(--spacer-2)*-1))
    }
}

.page-intro .wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    position: relative;
    justify-content: center;
    align-items: center
}

.page-intro .wrapper .image-wrapper {
    order: 2;
    width: 100%;
    height: 100%;
    position: relative;
    display: block
}

.page-intro .wrapper .image-wrapper img {
    mix-blend-mode: darken;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: bottom;
    object-position: bottom;
    max-height: 40vh
}

.page-intro .wrapper .text-content {
    order: 1;
    padding: var(--spacer-1);
    padding-top: var(--spacer-2);
    margin-bottom: 0
}

@media only screen and (min-width:700px) {
    .page-intro .wrapper {
        flex-direction: row;
        justify-content: space-between
    }

    .page-intro .wrapper .text-content {
        padding-top: var(--spacer-1);
        flex-basis: 60%;
        margin-top: var(--spacer-1);
        margin-bottom: var(--spacer-3)
    }

    .page-intro .wrapper .image-wrapper {
        order: 0;
        flex-grow: 2;
        flex-basis: 30%;
        align-self: flex-end
    }

    .page-intro .wrapper .image-wrapper img {
        max-height: unset
    }
}

@media only screen and (min-width:900px) {
    .page-intro .wrapper .text-content {
        padding-bottom: var(--spacer-2);
        flex-basis: 50%
    }

    .page-intro .wrapper .image-wrapper {
        flex-basis: 40%;
        align-self: flex-end
    }
}

.home .homepage_block {
    color: unset
}

.home .homepage_block .wrapper {
    max-width: var(--max-width);
    display: flex;
    flex-direction: column;
    justify-content: center
}

.home .homepage_block .wrapper .text-content {
    order: 0;
    padding: var(--spacer-2) var(--spacer-1);
    padding-bottom: calc(var(--spacer-4)*2)
}

.home .homepage_block .wrapper .image-wrapper {
    order: 1;
    padding: 0 var(--spacer-1);
    margin-top: calc(var(--spacer-3)*-2)
}

.home .homepage_block .wrapper .image-wrapper img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    max-height: 70vh
}

@media only screen and (min-width:800px) {
    .home .homepage_block .wrapper {
        flex-direction: row;
        gap: var(--spacer-2);
        justify-content: space-between;
        padding: var(--spacer-1)
    }

    .home .homepage_block .wrapper .image-wrapper {
        order: 2;
        padding: 0;
        margin-top: 0;
        flex-grow: 0;
        flex-basis: 40%
    }

    .home .homepage_block .wrapper .text-content {
        padding: var(--spacer-2) 0;
        flex-basis: 40%;
        flex-grow: 1;
        position: relative
    }
}

@media only screen and (min-width:1000px) {
    .home .homepage_block .wrapper {
        gap: var(--spacer-4)
    }
}

.home .membership {
    color: #fff;
    margin: var(--spacer-4) 0;
    position: relative
}

.home .membership .wrapper .text-content {
    order: 0;
    background-color: #428bca;
    padding: var(--spacer-2) var(--spacer-1);
    padding-bottom: calc(var(--spacer-4)*2)
}

.home .membership .wrapper .image-wrapper {
    order: 1;
    margin-top: calc(var(--spacer-3)*-2)
}

@media only screen and (min-width:800px) {
    .home .membership .wrapper .image-wrapper {
        order: 0;
        padding: 0;
        margin-top: 0;
        flex-grow: 2;
        flex-basis: 30%;
        background-color: #428bca
    }

    .home .membership .wrapper .text-content {
        padding: var(--spacer-4);
        flex-basis: 60%;
        position: relative
    }

    .home .membership .wrapper .text-content:after {
        position: absolute;
        content: "";
        background-color: inherit;
        height: 100%;
        top: 0;
        left: 100%;
        width: calc(50vw - var(--max-width)/2);
        width: calc(50vw + var(--spacer-2)/2 - var(--max-width)/2);
        min-width: var(--spacer-2)
    }
}

@media only screen and (min-width:1000px) {
    .home .membership .wrapper {
        gap: var(--spacer-4)
    }
}

.home .membership:after,
.home .membership:before {
    z-index: -1;
    background-image: url(../img/flowers_7.png);
    --height: 353px;
    width: 33.3vw;
    max-width: 270px;
    height: var(--height);
    content: "";
    position: absolute;
    bottom: calc(100% - var(--height)*0.66);
    left: 0;
    pointer-events: none;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 100%;
    display: block
}

@media only screen and (min-width:800px) {

    .home .membership:after,
    .home .membership:before {
        left: calc(var(--spacer-1)*-1);
        bottom: 40%;
        width: 207px;
        height: 540px
    }
}

@media only screen and (min-width:1200px) {

    .home .membership:after,
    .home .membership:before {
        left: calc(var(--spacer-1)*-3)
    }
}

.home .membership:after {
    background-image: url(../img/flowers_6.png);
    display: none
}

@media only screen and (min-width:800px) {
    .home .membership:after {
        display: block;
        --height: 600px;
        --width: 200px;
        max-width: unset;
        max-height: unset;
        height: var(--height);
        width: 200px;
        left: 18%;
        bottom: calc(var(--spacer-3)*-2);
        transform: rotate(33deg)
    }
}

.home .house_and_gardens {
    z-index: 1;
    position: relative
}

@media only screen and (min-width:800px) {
    .home .house_and_gardens:before {
        z-index: -1;
        background-image: url(../img/flowers_8.png);
        --height: 500px;
        width: 33.3vw;
        max-width: 500px;
        height: var(--height);
        content: "";
        position: absolute;
        bottom: calc(100% - var(--height)*0.66);
        left: 0;
        pointer-events: none;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: 0 100%;
        display: block;
        bottom: unset;
        left: 45%;
        top: 40%
    }
}

@media only screen and (min-width:800px) {
    .home .house_and_gardens {
        margin-top: calc(var(--spacer-4)*-1)
    }

    .home .house_and_gardens .wrapper {
        align-items: center
    }

    .home .house_and_gardens .text-content {
        transform: translateY(calc(var(--spacer-1)*1));
        padding: 0;
        margin-top: calc(var(--spacer-2));
        margin-bottom: calc(var(--spacer-2))
    }
}

.contact-info {
    max-width: var(--max-width);
    width: 100%;
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.contact-info .contact-info-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-3)
}

@media only screen and (min-width:800px) {
    .contact-info .contact-info-wrapper {
        flex-direction: row
    }
}

.contact-info .contact-info-wrapper>div {
    flex-basis: 50%;
    text-align: center
}

.contact-info .contact-details ul {
    list-style: none;
    margin-bottom: var(--spacer-1)
}

article.post {
    border: 1px solid grey;
    position: relative;
    border-radius: 6px;
    height: 100%;
    display: flex;
    flex-direction: column;
    max-width: 400px
}

article.post .image-wrapper {
    margin-bottom: var(--spacer)
}

article.post .text-wrapper {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
    padding: 0 var(--spacer)
}

article.post .text-wrapper h2 {
    font-size: 24px;
    margin-bottom: 0;
    text-align: center
}

article.post .text-wrapper h2 a {
    padding-bottom: var(--spacer);
    display: block
}

article.post .text-wrapper .button_wrapper {
    margin-top: auto
}

.map_embed {
    max-width: var(--max-width);
    width: 100%;
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.map_embed .wrapper {
    padding: var(--spacer-2);
    background-color: #ebe1e0;
    width: 100%
}

.map_embed .wrapper iframe {
    width: 100%
}

.socials ul {
    display: flex;
    margin: 0;
    padding: 0;
    gap: var(--spacer-2)
}

@media only screen and (min-width:800px) {
    .socials ul {
        gap: var(--spacer-1)
    }
}

.socials ul li {
    --size: 36px;
    width: var(--size);
    height: var(--size);
    display: inline-block
}

.socials ul li a {
    display: flex;
    width: 100%;
    height: 100%;
    transform: scale(1);
    transition: transform;
    transition-timing-function: ease;
    transition-duration: var(--trans-duration-slow)
}

.socials ul li a:focus-within,
.socials ul li a:hover {
    transition-duration: var(--trans-duration);
    transform: scale(1.09)
}

.socials ul li a img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center
}

.hero-home {
    width: 100%;
    margin-bottom: var(--spacer-1);
    background-color: var(--grey);
    aspect-ratio: 415/275;
    min-height: 300px;
    max-height: 99vh;
    min-width: 100vw;
    display: flex;
    gap: 20px;
    flex-direction: column;
    justify-content: stretch;
    align-items: stretch;
    position: relative;
    overflow: hidden;
    aspect-ratio: 16/9;
    --button-opacity: 1
}

.hero-home:focus-visible,
.hero-home:focus-within,
.hero-home:hover {
    --button-opacity: 0.9;
    --button-scale: 1.04;
    --transition-duration: 0.3s
}

.hero-home.short {
    min-height: 20vh
}

.hero-home .play-pause-btn {
    position: absolute;
    z-index: 8;
    width: 75px;
    height: 75px;
    background: transparent;
    bottom: var(--spacer-1);
    right: var(--spacer-1);
    transform: translate(0) scale(var(--button-scale, 1));
    border: 0;
    border-radius: 99vw;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: var(--button-opacity, 1); /* <-- changed from 0 to 1 */
    transition: transform var(--scale-transition-duration, .3s) ease, opacity var(--scale-transition-duration, .3s) ease;
}

@media only screen and (min-width:900px) {
    .hero-home .play-pause-btn {
        bottom: unset;
        right: unset;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(var(--button-scale, 1))
    }
}

.hero-home .play-pause-btn:hover {
    --button-scale: 1.2;
}

.hero-home .play-pause-btn.large {
    --button-scale: 100;
    --button-opacity: 0;
    --scale-transition-duration: 0.6s;
}

.hero-home .text-content {
    flex-grow: 2;
    display: flex;
    gap: 20px;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    margin: var(--spacer-1);
    z-index: 2;
    pointer-events: none
}

@media only screen and (min-width:600px) {
    .hero-home .text-content {
        margin: var(--spacer-2)
    }
}

.hero-home .text-content h1 {
    margin: 0;
    text-align: left;
    color: var(--white);
    max-width: 65%;
    font-size: 24px
}

@media only screen and (min-width:600px) {
    .hero-home .text-content h1 {
        max-width: 380px;
        font-size: 38px
    }
}

@media only screen and (min-width:800px) {
    .hero-home .text-content h1 {
        max-width: 380px;
        font-size: 50px
    }
}

.hero-home .text-content>* {
    pointer-events: all
}

.hero-home .text-content .button_wrapper {
    justify-content: left
}

.hero-home .text-content .button-wrap {
    display: none
}

@media only screen and (min-width:600px) {
    .hero-home .text-content .button-wrap {
        display: flex
    }
}

.video-wrapper {
    opacity: 1; 
    pointer-events: auto;
}

.hero-home .background-image,
.hero-home .swiper-container,
.hero-home .video-wrapper {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    min-height: 200px
}

.hero-home .background-image img,
.hero-home .background-image video,
.hero-home .swiper-container img,
.hero-home .swiper-container video,
.hero-home .video-wrapper img,
.hero-home .video-wrapper video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: var(--focus-point);
    object-position: var(--focus-point)
}

.hero-home .background-image:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: radial-gradient(50% 50% at 50% 50%, transparent 0, rgba(0, 0, 0, .3) 100%)
}

.hero {
    padding: 0 var(--spacer-1);
    padding-top: var(--nav-bar-height);
    margin-bottom: var(--spacer-1);
    position: relative;
  overflow: hidden; 
}

.hero .hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: rgba(0, 0, 0, 0.7); /* dark black overlay at 70% opacity */
}

.hero.no-negative {
    transition: padding .2s ease-in-out;
    padding-top: calc(var(--nav-bar-height, 70px)*1.4);
    padding-bottom: calc(var(--nav-bar-height, 70px)*1.3)
}

.hero.no-negative:before {
    height: 100%
}

.hero.no-negative:after {
    bottom: 0
}

.hero.no-negative h1 {
    margin-bottom: 0
}

.hero.no-negative .tagline {
    text-align: center;
    color: var(--white)
}

.hero.no-negative .background-image {
    height: 100%
}

/* .hero:before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.8));
    z-index: 0;
} */

.hero h1,
.hero p {
    color: #fff;
    text-shadow: 0 2px 6px rgba(0,0,0,0.6);
}

.hero:after {
    z-index: 0;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/hero-curve.svg);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: 180%;
    left: 0;
    top: unset;
    bottom: calc(var(--spacer-5) - 1px)
}

.hero>* {
    position: relative;
    z-index: 2;
}

.hero .image-content {
    position: relative;
    z-index: 1;
    max-width: 750px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center
}

.hero .image-content img {
    max-width: 100%;
    height: auto
}

.hero h1 {
    position: relative;
    z-index: 1;
    color: var(--white);
    font-size: 24px
}

@media only screen and (min-width:800px) {
    .hero h1 {
        font-size: 36px
    }
}

.hero .background-image {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
    height: calc(100% - var(--spacer-5))
}

.hero .background-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    filter: grayscale(1)
}

.hero .bottom-curve {
    outline: 0 solid green;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.pb-tripadvisor_reviews {
    padding: var(--spacer-2) var(--spacer-1)
}

.pb-tripadvisor_reviews .wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-2)
}

.pb-tripadvisor_reviews .title {
    display: flex;
    gap: var(--spacer-half);
    flex-direction: row;
    align-items: center
}

.pb-tripadvisor_reviews .title h2 {
    margin-bottom: 0
}

.pb-tripadvisor_reviews .author {
    font-weight: 600
}

.pb-tripadvisor_reviews .reviews {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-2)
}

@media only screen and (min-width:700px) {
    .pb-tripadvisor_reviews .reviews {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr
    }
}

.pb-tripadvisor_reviews .button_wrapper,
.pb-tripadvisor_reviews .button_wrapper .button {
    margin-bottom: 0
}

.pb-page_intro {
    display: flex;
    justify-content: flex-end;
    padding: var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.pb-page_intro h2 {
    margin-top: 0;
    text-align: center
}

.pb-page_intro p {
    text-align: center;
    max-width: 70ch;
    margin-bottom: var(--spacer-1)
}

.pb-page_intro .toggle_paragraphs {
    margin: var(--spacer-1) auto 0 auto;
    color: var(--orange);
    border: unset;
    background-color: unset;
    opacity: var(--opacity, 1);
    transform: scale(var(--scale, 1));
    transition: transform, opacity;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

.pb-page_intro .toggle_paragraphs:focus-visible,
.pb-page_intro .toggle_paragraphs:hover {
    --opacity: 0.9;
    --scale: 1.04;
    --transition-duration: 0.3s
}

.pb-page_intro .button_wrapper {
    margin-top: var(--spacer-1)
}

.pb-page_intro .swiper-slide {
    display: flex;
    flex-direction: column
}

.pb-page_intro .swiper-slide .wrapper {
    max-height: var(--start-height, 220px);
    transition: .3s ease;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    --line-clamp: 4;
    -webkit-line-clamp: var(--line-clamp);
    line-clamp: var(--line-clamp);
    min-height: var(--start-height, 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.pb-page_intro .swiper-slide .wrapper h2 {
    font-size: 21.06px;
}

@media only screen and (min-width:800px) {
    .pb-page_intro .swiper-slide .wrapper {
        --line-clamp: 5
    }
}

.pb-page_intro .swiper-slide .wrapper.show-all {
    --line-clamp: unset;
    overflow: unset;
    min-height: var(--max-height, 100%);
    max-height: var(--max-height)
}

.pb-page_intro .swiper-container {
    width: 100%
}

.pb-page_intro .swiper-container .swiper-wrapper {
    display: flex
}

.pb-page_intro .swiper-container .swiper-wrapper .swiper-slide {
    min-width: 100%;
    box-sizing: border-box !important;
    margin-bottom: 0
}

.group-bookings {
    margin-bottom: var(--spacer-4);
    padding: 0 var(--spacer-1);
    position: relative
}

@media only screen and (min-width:600px) {
    .group-bookings {
        margin-bottom: var(--spacer-2)
    }
}

.group-bookings:before {
    content: "";
    position: absolute;
    background: var(--blue);
    z-index: 9;
    width: 100%;
    height: 2px;
    top: -2px;
    left: 0
}

.group-bookings .wrapper {
    --overhang: calc(var(--spacer-5)*1.5)
}

.group-bookings .wrapper header {
    background-color: var(--blue);
    padding: var(--spacer-2) var(--spacer-1);
    margin-bottom: var(--spacer-1-and-half);
    padding-bottom: var(--overhang);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.group-bookings .wrapper header h2,
.group-bookings .wrapper header h3,
.group-bookings .wrapper header p {
    color: #fff;
    text-align: center
}

.group-bookings .wrapper header .h3 {
    transform: scale(.8)
}

ul.cards {
    z-index: 1;
    position: relative;
    margin-top: calc(var(--overhang)*-1);
    display: flex;
    flex-direction: column;
    gap: var(--spacer-1);
    row-gap: var(--spacer-1-and-half)
}

@media only screen and (min-width:600px) {
    ul.cards {
        display: grid;
        grid-template-columns: 1fr 1fr
    }
}

@media only screen and (min-width:900px) {
    ul.cards {
        grid-template-columns: 1fr 1fr 1fr
    }
}

.card {
    overflow: hidden
}

.card.type-1 {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 15px rgba(0, 0, 0, var(--shadow-intensity, .05));
    width: 100%;
    min-height: 400px;
    opacity: var(--opacity, 1);
    transform: scale(var(--card-scale, 1));
    transition: transform, box-shadow;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

.card.type-1 .image-wrapper {
    display: flex
}

.card.type-1 .image-wrapper img {
    width: 100%;
    height: auto
}

.card.type-1 .text-wrapper {
    height: 100%;
    flex-grow: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacer-two-thirds);
    padding: var(--spacer-1-and-half)
}

@media only screen and (min-width:600px) {
    .card.type-1 .text-wrapper {
        padding: var(--spacer-1-and-half) var(--spacer-1)
    }
}

.card.type-1 .text-wrapper a,
.card.type-1 .text-wrapper h3,
.card.type-1 .text-wrapper p {
    margin: 0;
    text-align: center
}

.card.type-1 .text-wrapper a {
    color: var(--orange);
    display: flex;
    align-items: center;
    margin-top: auto;
    font-weight: 700;
    position: relative
}

.card.type-1 .text-wrapper a:focus-visible,
.card.type-1 .text-wrapper a:hover {
    --arrow-right: 4px
}

.card.type-1 .text-wrapper a:after {
    content: "";
    display: inline-block;
    --size: 20px;
    width: var(--size);
    height: var(--size);
    margin-left: 4px;
    --sub-menu-chevron: url(../img/icons/arrow-right.svg);
    background-image: var(--sub-menu-chevron);
    background-repeat: no-repeat;
    background-position: 50%;
    transform: translateX(var(--arrow-right, 0));
    transition: transform;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

.card.type-1 .text-wrapper a:active,
.card.type-1 .text-wrapper a:focus,
.card.type-1 .text-wrapper a:focus-visible,
.card.type-1 .text-wrapper a:hover {
    text-decoration-color: var(--orange)
}

.card.type-1:focus,
.card.type-1:focus-within,
.card.type-1:hover {
    --transition-duration: 0.3s;
    --shadow-intensity: 0.081;
    --card-scale: 1.015
}

.card.type-2 {
    position: relative;
    width: auto;
    height: 100%
}

.card.type-2:focus,
.card.type-2:focus-within,
.card.type-2:hover {
    --transition-duration: 0.3s;
    --shadow-intensity: 0.081;
    --card-scale: 1.015
}

.card.type-2 .text-wrapper {
    pointer-events: none;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: var(--spacer-1);
    background: linear-gradient(0deg, rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)), radial-gradient(50% 50% at 50% 50%, transparent 0, rgba(0, 0, 0, .08) 100%)
}

.card.type-2 .text-wrapper>* {
    pointer-events: all
}

.card.type-2 .text-wrapper h2,
.card.type-2 .text-wrapper h3,
.card.type-2 .text-wrapper p {
    color: var(--white);
    margin: 0
}

.card.type-2 .text-wrapper h2 {
    font-size: 21.06px;
}


.card.type-2 .text-wrapper p {
    font-weight: 700
}

.card.type-2 .text-wrapper .button_wrapper {
    margin: 0;
    margin-top: var(--spacer-half)
}

.card.type-2 .image-wrapper {
    display: flex;
    width: 100%;
    height: 100%;
    position: relative
}

.card.type-2 .image-wrapper img {
    height: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.card.type-2 .image-wrapper:before {
    z-index: 1;
    content: "";
    position: absolute;
    background: red;
    background: linear-gradient(180deg, transparent 43.5%, rgba(0, 0, 0, .1)), radial-gradient(50% 50% at 50% 50%, transparent 0, transparent 100%);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.card.type-3 {
    transform: scale(var(--card-scale, 1));
    transition: transform;
    transition-timing-function: ease;
    transition-duration: var(--scale-transition-duration, 1s);
    text-align: center;
    display: flex;
    flex-direction: column;
    height: 100%
}

.card.type-3:focus-visible,
.card.type-3:focus-within,
.card.type-3:hover {
    --card-scale: 1.01;
    --image-scale: 1.02;
    --scale-transition-duration: 0.3s;
    --transition-duration: 1s !important
}

.card.type-3 h2 {
    font-size: 24px;
    margin: 0;
    margin-bottom: var(--spacer-third)
}

.card.type-3 h2+p {
    margin: 0;
    margin-bottom: var(--spacer-1)
}

.card.type-3 .button_wrapper {
    margin-top: auto !important
}

.card.type-3 .text-wrapper {
    height: 100%;
    flex-grow: 1;
    flex-basis: 100%;
    display: flex;
    flex-direction: column
}

.card.type-3 .text-wrapper p {
    margin-bottom: var(--spacer-half)
}

.card.type-3 .image-wrapper {
    margin-bottom: var(--spacer-1);
    display: flex;
    flex-direction: column;
    position: relative
}

.card.type-3 .image-wrapper:before {
    z-index: 2;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none
}

.card.type-3 .image-wrapper>a {
    display: flex
}

.card.type-3 .image-wrapper .a-wrap {
    overflow: hidden
}

.card.type-3 .image-wrapper .exp_info {
    z-index: 3;
    pointer-events: none;
    position: absolute;
    bottom: 0;
    padding-bottom: var(--spacer-1);
    color: var(--white)
}

.card.type-3 .image-wrapper img {
    width: 100%;
    height: 100%;
    aspect-ratio: 96/58;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center 90%;
    object-position: center 90%;
    -o-object-position: center;
    object-position: center;
    transform: scale(var(--image-scale, 1));
    transition: transform;
    transition-timing-function: ease;
    transition-duration: var(--transition-duration, .5s)
}

.exp_info {
    width: 100%;
    justify-content: center;
    text-align: center;
    gap: var(--spacer-1-and-half);
    color: var(--grey-medium);
    margin-bottom: var(--spacer-1) !important;
    font-size: 14px;
    line-height: 1
}

.exp_info,
.exp_info li {
    display: flex;
    align-items: center
}

.exp_info li {
    pointer-events: all;
    flex-direction: column;
    gap: var(--spacer-third)
}

.exp_info .title {
    text-transform: uppercase;
    font-weight: 700;
    margin: 0
}

@media only screen and (min-width:800px) {
    .pb-social_media_newsletter {
        background: linear-gradient(90deg, var(--grey) 50%, var(--blue) 0)
    }
}

.pb-social_media_newsletter .social {
    background-color: var(--grey)
}

.pb-social_media_newsletter .newsletter {
    background-color: var(--blue)
}

.pb-social_media_newsletter .newsletter form[name=sensorProForm] .sufContainer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacer-half);
    justify-content: center
}

.pb-social_media_newsletter .newsletter .opt-in,
.pb-social_media_newsletter .newsletter label {
    color: #fff
}

.pb-social_media_newsletter .newsletter .opt-in input,
.pb-social_media_newsletter .newsletter label input {
    margin-right: var(--spacer-third);
    accent-color: var(--orange)
}

.pb-social_media_newsletter .newsletter .news_wrapper {
    display: flex;
    gap: var(--spacer-half);
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.pb-social_media_newsletter .newsletter .news_wrapper>div {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 15px;
}


.news_wrapper {
    display: flex;
    flex-direction: column; /* stack vertically */
    gap: 0.5rem; /* spacing between input/button and checkbox */
}

.input-button-wrapper {
    display: flex;
    flex-direction: column; /* stack label above input, input + button row handled inside input-wrapper */
    gap: 0.25rem;
}

.input-wrapper {
    display: flex;
    flex-direction: column; /* stack label and input vertically */
}

.input-wrapper input {
    margin-top: 0.25rem;
}

.button-wrapper {
    margin-top: 0.5rem;
}

.opt-in {
    display: flex;
    align-items: center!important;
    margin-top: 0.5rem; /* spacing below input/button */
}


@media only screen and (min-width:500px) {
    .pb-social_media_newsletter .newsletter .news_wrapper {
        flex-direction: column;
    }
}

.pb-social_media_newsletter .newsletter .news_wrapper .input-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}


.pb-social_media_newsletter .newsletter .news_wrapper #spro_email {
    border: 0;
    flex-shrink: 112;
    min-width: none;
    width: unset;
    color: #555555;
    height: 44px;
}

.pb-social_media_newsletter a,
.pb-social_media_newsletter h1,
.pb-social_media_newsletter h2,
.pb-social_media_newsletter p {
    color: var(--white);
    margin: 0;
    text-align: center
}

.pb-social_media_newsletter p {
    margin-bottom: var(--spacer-half)
}

.pb-social_media_newsletter .wrapper {
    display: flex;
    flex-direction: column
}

@media only screen and (min-width:800px) {
    .pb-social_media_newsletter .wrapper {
        flex-direction: row
    }
}

.pb-social_media_newsletter .socials li {
    --size: 45px !important
}

.pb-social_media_newsletter .inner-block {
    flex: 1
}

.pb-social_media_newsletter .inner-block .wrap {
    flex: 1;
    padding: var(--spacer-2);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: var(--spacer-two-thirds)
}

.pb-experience_category_cards {
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-2);
    --columns: 1fr
}

.pb-experience_category_cards:last-child {
    margin-bottom: var(--spacer-2)
}

@media only screen and (min-width:800px) {
    .pb-experience_category_cards {
        --columns: 1fr 1fr
    }
}

.pb-experience_category_cards.small {
    --columns: 1fr
}

@media only screen and (min-width:500px) {
    .pb-experience_category_cards.small {
        --columns: 1fr 1fr
    }
}

@media only screen and (min-width:1000px) {
    .pb-experience_category_cards.small {
        --columns: 1fr 1fr 1fr 1fr
    }
}

.pb-experience_category_cards.small .type-2 .image-wrapper {
    aspect-ratio: 1/1
}

.pb-experience_category_cards.small .type-2 .text-wrapper {
    padding: var(--spacer-half)
}

.pb-experience_category_cards .promo .image-wrapper {
    aspect-ratio: unset !important
}

.pb-experience_category_cards .wrapper {
    max-width: var(--max-width-large) !important
}

.pb-experience_category_cards .wrapper h2 {
    text-align: center;
    color: var(--blue);
    margin-bottom: var(--spacer-1-and-half)
}

.pb-experience_category_cards .wrapper .cards {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    display: grid;
    gap: var(--spacer-1);
    grid-template-columns: var(--columns)
}

.pb-experience_category_cards .wrapper .cards li.promo {
    grid-column: 1/-1
}

@media only screen and (min-width:800px) {
    .pb-experience_category_cards .wrapper .cards li.promo img {
        aspect-ratio: 3/1;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.pb-experience_cards_details {
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.pb-experience_cards_details .wrapper {
    max-width: var(--max-width-large);
    margin: 0 auto
}

.pb-experience_cards_details .cards {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-2)
}

@media only screen and (min-width:800px) {
    .pb-experience_cards_details .cards {
        gap: var(--spacer-1);
        row-gap: var(--spacer-2);
        display: grid;
        grid-template-columns: 1fr 1fr
    }
}

.pb-experience_cards_details li.even {
    grid-column: 1/-1
}

.pb-experience_cards_details .any-questions {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--spacer-two-thirds);
    align-items: center;
    text-align: center
}

@media only screen and (min-width:800px) {
    .pb-experience_cards_details .any-questions {
        align-items: flex-start;
        text-align: left;
        padding-left: 15%
    }

    .pb-experience_cards_details .any-questions.even {
        align-items: center;
        text-align: center;
        padding-left: 0
    }
}

.pb-experience_cards_details .any-questions>* {
    margin: 0
}

.pb-experience_cards_details .any-questions .icon-and-text a {
    display: flex;
    flex-direction: row;
    gap: var(--spacer-two-thirds);
    align-items: center;
    font-weight: 700;
    color: var(--orange)
}

.pb-columns_with_icons {
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-3)
}

.pb-columns_with_icons .wrapper {
    max-width: var(--max-width-large) !important
}

.pb-columns_with_icons .iconswithtext {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacer-2)
}

@media only screen and (min-width:500px) {
    .pb-columns_with_icons .iconswithtext {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: flex-start
    }
}

@media only screen and (min-width:1100px) {
    .pb-columns_with_icons .iconswithtext {
        gap: var(--spacer-2);
        grid-template-columns: 1fr 1fr 1fr 1fr
    }
}

.pb-columns_with_icons .iconwithtext {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center
}

.pb-columns_with_icons .iconwithtext__title {
    font-size: 21.06px;
}

.pb-columns_with_icons .iconwithtext__image {
    display: flex;
    margin-bottom: var(--spacer-1)
}

.pb-columns_with_icons .iconwithtext__image img {
    max-height: 70px;
    width: auto
}

.pb-columns_with_icons .iconwithtext__byline {
    margin-bottom: 0
}

.video_block {
    margin-bottom: var(--spacer-3);
    padding: 0 var(--spacer-1);
    padding-top: var(--spacer-3);
    text-align: center;
    position: relative
}

.video_block:before {
    content: "";
    position: absolute;
    background: var(--blue);
    width: 100%;
    height: 70%;
    top: 0;
    left: 0;
    z-index: -1;
    -webkit-clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0, calc(50% + var(--spacer-4)) var(--spacer-third), 50% var(--spacer-2), calc(50% - var(--spacer-4)) var(--spacer-third));
    clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0, calc(50% + var(--spacer-4)) var(--spacer-third), 50% var(--spacer-2), calc(50% - var(--spacer-4)) var(--spacer-third))
}

@media only screen and (min-width:800px) {
    .video_block:before {
        height: 50%
    }
}

@media only screen and (min-width:800px) {
    .video_block:before {
        -webkit-clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0, calc(50% + var(--spacer-4)) var(--spacer-1), 50% var(--spacer-2), calc(50% - var(--spacer-4)) var(--spacer-1));
        clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0, calc(50% + var(--spacer-4)) var(--spacer-1), 50% var(--spacer-2), calc(50% - var(--spacer-4)) var(--spacer-1))
    }
}

.video_block .text-wrapper {
    padding: 0 var(--spacer-1);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-bottom: var(--spacer-1);
    background-color: var(--blue);
    color: var(--white)
}

.video_block .text-wrapper h2 {
    color: var(--white);
    margin: 0
}

.video_block .text-wrapper p {
    max-width: 60ch
}

.video_block .video-embed {
    aspect-ratio: 16/9;
    max-width: 100%
}

.video_block .video-embed iframe {
    height: 100%
}

.pb-our_clients {
    margin-bottom: var(--spacer-2);
    padding: var(--spacer-2) 0 0 0
}

.pb-our_clients .wrapper {
    max-width: var(--max-width-large) !important;
    margin: 0 auto
}

.pb-our_clients h2 {
    text-align: center;
    color: var(--blue);
    margin-bottom: var(--spacer-1);
    padding: 0 var(--spacer-1)
}

.pb-our_clients .swiper-wrapper {
    display: flex;
    align-items: center
}

.pb-our_clients .swiper-slide {
    width: 100%;
    max-width: 200px;
    height: 100%;
    display: flex;
    flex-grow: 1
}

.pb-our_clients img {
    width: 100%;
    height: auto;
    max-height: 150px;
    -o-object-fit: contain;
    object-fit: contain
}

.pb-gallery_large {
    margin-bottom: var(--spacer-3);
    padding: 0 var(--spacer-half)
}

.pb-gallery_large .wrapper {
    max-width: var(--max-width-large) !important;
    -moz-columns: 1;
    column-count: 1;
    -moz-column-gap: var(--spacer-1);
    column-gap: var(--spacer-1)
}

@media only screen and (min-width:800px) {
    .pb-gallery_large .wrapper {
        -moz-columns: 2;
        column-count: 2
    }
}

@media only screen and (min-width:1200px) {
    .pb-gallery_large .wrapper {
        -moz-columns: 3;
        column-count: 3
    }
}

.pb-gallery_large .image-wrapper {
    display: flex;
    margin-bottom: var(--spacer-1);
    flex-direction: column;
    position: relative
}

.pb-gallery_large .image-wrapper .text-wrapper {
    position: absolute;
    bottom: 0;
    padding: 5px 10px;
    left: 5px;
    bottom: 5px
}

.pb-gallery_large .image-wrapper .text-wrapper p {
    position: relative;
    margin: 0;
    z-index: 2
}

.pb-gallery_large .image-wrapper .text-wrapper:before {
    z-index: 1;
    content: "";
    position: absolute;
    background: var(--white);
    opacity: .8;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.pb-gallery_large img {
    width: 100%;
    height: auto
}

.pb-local_attractions {
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.pb-local_attractions h2 {
    text-align: center
}

.pb-all_experiences_small_tiles,
.pb-local_attractions h2 {
    margin-bottom: var(--spacer-2)
}

.pb-all_experiences_small_tiles .wrapper {
    max-width: var(--max-width-large) !important;
    padding: 0 var(--spacer-1)
}

.pb-all_experiences_small_tiles .wrapper h2 {
    text-align: center;
    color: var(--blue)
}

.pb-all_experiences_small_tiles .wrapper .cards {
    display: grid;
    grid-template-columns: var(--columns) !important;
    --columns: 1fr;
    row-gap: var(--spacer-1)
}

@media only screen and (min-width:700px) {
    .pb-all_experiences_small_tiles .wrapper .cards {
        --columns: 1fr 1fr
    }
}

@media only screen and (min-width:1100px) {
    .pb-all_experiences_small_tiles .wrapper .cards {
        --columns: 1fr 1fr 1fr
    }
}

.pb-all_experiences_small_tiles .wrapper .text-wrapper {
    padding: var(--spacer-half)
}

.pb-all_experiences_small_tiles .type-3 .exp_info {
    margin-bottom: var(--spacer-1) !important;
    margin: auto 0
}

.pb-all_experiences_small_tiles .type-3 .button_wrapper {
    margin-top: auto
}

.pb-contact_3_columns {
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-3)
}

.pb-contact_3_columns .wrapper {
    max-width: var(--max-width-large) !important
}

.pb-contact_3_columns .columns-3 {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: 1fr;
    gap: var(--spacer-1)
}

@media only screen and (min-width:700px) {
    .pb-contact_3_columns .columns-3 {
        grid-template-columns: 1fr 1fr
    }

    .pb-contact_3_columns .columns-3 .map {
        grid-column: 1/-1;
        display: flex
    }

    .pb-contact_3_columns .columns-3 .map p {
        width: 100%;
        height: 100%
    }

    .pb-contact_3_columns .columns-3 .map iframe {
        width: 100%;
        height: 100%;
        min-height: 400px
    }
}

@media only screen and (min-width:1000px) {
    .pb-contact_3_columns .columns-3 {
        grid-template-columns: 1fr 1fr 1fr
    }

    .pb-contact_3_columns .columns-3 .map {
        grid-column: unset
    }
}

.pb-contact_3_columns .form {
    background-color: #f1f1f1;
    padding: var(--spacer-half)
}

@media only screen and (min-width:500px) {
    .pb-contact_3_columns .form {
        padding: var(--spacer-1)
    }
}

.pb-contact_3_columns h2,
.pb-contact_3_columns h3 {
    color: var(--blue);
    font-size: 20px;
    margin-bottom: 0
}

.pb-contact_3_columns p {
    margin-top: 0;
    margin-bottom: var(--spacer-1)
}

.pb-contact_3_columns .ninja-forms-field.button {
    width: 100% !important
}

.client_carousel {
    min-height: 100px;
    padding: 40px
}

.client_carousel h2 {
    text-align: center
}

.client_carousel .swiper-slide {
    display: flex;
    gap: 40px
}

.client_carousel .swiper-slide img {
    width: 300px;
    height: 300px;
    -o-object-fit: cover;
    object-fit: cover
}

.client_carousel .swiper-slide blockquote {
    border-left: 0;
    flex-grow: 1;
    margin-bottom: 0;
    background: wheat
}

.client_carousel .swiper-slide blockquote .author {
    font-weight: 700;
    text-align: right
}

.image_text_cta {
    background: rgba(0, 0, 0, .1);
    display: flex;
    gap: var(--spacer-2);
    flex-direction: column
}

@media only screen and (min-width:600px) {
    .image_text_cta {
        flex-direction: row
    }
}

.image_text_cta .image-wrapper {
    flex-basis: 40%
}

.image_text_cta .image-wrapper img {
    width: auto;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    max-height: 400px
}

.image_text_cta .text-content {
    padding: var(--spacer-2);
    padding-top: 0;
    flex-basis: 60%;
    flex-shrink: 1
}

@media only screen and (min-width:600px) {
    .image_text_cta .text-content {
        padding: var(--spacer-2);
        padding-left: 0
    }

    .image_text_cta.flipped .text-content {
        padding: var(--spacer-2);
        padding-right: 0
    }

    .image_text_cta.flipped .image-wrapper {
        order: 2
    }

    .image_text_cta.flipped .text-content {
        order: 1
    }
}

.links_with_background_images {
    background: #ffdab9 !important;
    min-height: 20px;
    padding: 40px
}

.links_with_background_images ul {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    list-style: none;
    margin: 0;
    padding: 0
}

.links_with_background_images ul li {
    flex-grow: 1
}

.links_with_background_images .link_wrapper {
    flex-basis: 30%;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: rgba(255, 125, 233, .1254901961);
    overflow: hidden;
    position: relative
}

.links_with_background_images .link_wrapper .img_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.links_with_background_images .link_wrapper .img_wrapper img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.links_with_background_images .link_wrapper .img_wrapper:before {
    opacity: .7;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff
}

.links_with_background_images .link_wrapper h3 {
    margin-bottom: 0;
    z-index: 2;
    display: flex;
    width: 100%;
    height: 100%
}

.links_with_background_images .link_wrapper h3 a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1
}

.testimonials {
    min-height: 100px;
    --swiper-theme-color: #0ff
}

.testimonials h2 {
    text-align: center
}

.testimonials .swiper-slide {
    display: flex;
    gap: var(--spacer-1);
    flex-direction: column
}

@media only screen and (min-width:700px) {
    .testimonials .swiper-slide {
        flex-direction: row
    }
}

.testimonials .swiper-slide img {
    width: 300px;
    height: 300px;
    -o-object-fit: cover;
    object-fit: cover
}

.testimonials .swiper-slide blockquote {
    border-left: 0;
    flex-grow: 1;
    margin-bottom: 0;
    background: rgba(0, 0, 0, .2)
}

.testimonials .swiper-slide blockquote .author {
    font-weight: 700;
    text-align: right
}

.image_gallery_slider {
    margin-bottom: var(--spacer-1);
    --swiper-theme-color: $grey-dark
}

.image_gallery_slider .wrapper {
    max-width: unset !important;
    margin-left: 50% !important
}

.image_gallery_slider [class*=swiper-button] {
   background: white;
    border-radius: 100%;
   padding: 40px;
}

.image_gallery_slider .button_wrapper {
    z-index: 2;
    position: relative
}

.image_gallery_slider .swiper-container {
    margin-bottom: var(--spacer-2);
    overflow: hidden;
    position: relative
}

@media only screen and (min-width:600px) {
    .image_gallery_slider .swiper-container {
        margin-bottom: var(--spacer-1)
    }
}

.image_gallery_slider .swiper-container:after,
.image_gallery_slider .swiper-container:before {
    content: "";
    position: absolute;
    background: var(--white);
    --height: 10%;
    width: 110%;
    height: var(--height);
    z-index: 99;
    pointer-events: none;
    top: 0;
    left: -5%;
    opacity: 1;
    border-radius: 100%;
    --translate-y: 100%;
    transform: translateY(var(--translate-y)) scaleX(1.1)
}

.image_gallery_slider .swiper-container:after {
    --translate-y: -100%;
    bottom: 0;
    top: unset
}

.image_gallery_slider .swiper-container .swiper-wrapper {
    display: flex;
    align-items: center
}

.image_gallery_slider .swiper-container .swiper-wrapper .swiper-slide {
    display: flex;
    width: auto;
    width: 80%
}

@media only screen and (min-width:500px) {
    .image_gallery_slider .swiper-container .swiper-wrapper .swiper-slide {
        width: 40%
    }
}

@media only screen and (min-width:1000px) {
    .image_gallery_slider .swiper-container .swiper-wrapper .swiper-slide {
        width: 30%
    }
}

.image_gallery_slider .swiper-container .swiper-wrapper .swiper-slide img {
    max-width: 80vw;
    width: 100%;
    height: auto;
    max-height: var(--max-height)
}

.timeline {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacer-1);
    padding: 40px 0;
    max-width: unset !important;
    position: relative
}

.timeline .bg-image-wrapper {
    z-index: -1;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.timeline .bg-image-wrapper img {
    filter: brightness(1.2) opacity(.015) saturate(0);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.timeline ol {
    max-width: var(--max-width);
    position: relative;
    margin: 0;
    padding: var(--spacer-1);
    padding-top: 0
}

@media only screen and (min-width:800px) {
    .timeline ol {
        padding-left: var(--spacer-1)
    }
}

.timeline ol:before {
    top: 5px;
    height: calc(100% - 5px);
    position: absolute;
    --width: 1px;
    background-color: var(--blue);
    width: var(--width);
    left: calc(var(--spacer-1) + var(--spacer-half))
}

@media only screen and (min-width:800px) {
    .timeline ol:before {
        content: "";
        left: calc(50% - var(--width)/2);
        top: 0;
        height: 100%
    }
}

.timeline ol h2 {
    font-size: 18px;
    color: var(--blue)
}

.timeline ol li {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-1);
    margin-bottom: var(--spacer-5);
    position: relative
}

@media only screen and (min-width:800px) {
    .timeline ol li {
        margin-bottom: var(--spacer-3)
    }
}

.timeline ol li:last-child {
    margin-bottom: 0
}

.timeline ol li:last-child:before {
    content: unset
}

@media only screen and (min-width:800px) {
    .timeline ol li:last-child:before {
        content: ""
    }
}

.timeline ol li:before {
    height: 100%;
    content: "";
    position: absolute;
    --size: 20px;
    background-color: var(--blue);
    background-size: contain;
    width: 1px;
    height: 40px;
    left: 50%;
    top: calc(100% + var(--spacer-1));
    transform: translateX(-50%)
}

@media only screen and (min-width:800px) {
    .timeline ol li:before {
        width: 40px;
        height: 1px;
        top: 0;
        left: calc(50% - var(--offset, 20px))
    }
}

@media only screen and (min-width:800px) {
    .timeline ol li .text-content {
        padding-top: var(--spacer-half)
    }
}

@media only screen and (min-width:800px) {
    .timeline ol li:nth-child(2n):before {
        left: calc(50% - var(--offset, 20px));
        --offset: -20px
    }
}

.timeline ol li .image-wrapper {
    order: 2;
    max-height: 40vh;
    overflow: hidden
}

.timeline ol li .image-wrapper img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
}

@media only screen and (min-width:1200px) {
    .timeline ol li .image-wrapper img {
        width: 100%;
        height: auto;
        -o-object-fit: unset;
        object-fit: unset
    }
}

.timeline ol li .image-wrapper.no-crop img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: top center;
    object-position: top center
}

@media only screen and (min-width:800px) {
    .timeline ol li {
        gap: calc(var(--spacer-2)*2);
        flex-direction: row
    }

    .timeline ol li .image-wrapper,
    .timeline ol li .text-content {
        flex-basis: 50%
    }

    .timeline ol li:nth-child(2n) {
        flex-direction: row-reverse
    }
}

@media only screen and (min-width:800px) {
    .timeline {
        flex-direction: row
    }
}

.pb-full_width_cta_bar {
    background-color: var(--grey-medium);
    position: relative;
    padding-bottom: var(--spacer-1-and-half)
}

.pb-full_width_cta_bar+.image_gallery_slider {
    margin-top: var(--spacer-2) !important
}

.pb-full_width_cta_bar .wrapper {
    max-width: var(--max-width-large) !important;
    padding: 0 var(--spacer-1)
}

.pb-full_width_cta_bar img {
    height: auto;
    width: 100%
}

.pb-full_width_cta_bar .text-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    color: var(--white)
}

.pb-full_width_cta_bar .text-content h2 {
    color: var(--white)
}

.pb-full_width_cta_bar .text-content h2+p {
    margin-top: 0
}

@media only screen and (min-width:800px) {
    .pb-full_width_cta_bar .text-content p {
        max-width: 400px
    }
}

.pb-full_width_cta_bar {
    --car-overhang: 20%;
    --image-width: 120%;
    --translate-amount: 10%;
    --translate-amount-negative: calc(var(--translate-amount)*-1);
    overflow-x: clip;
    margin-top: var(--car-overhang)
}

.pb-full_width_cta_bar .wrapper {
    display: flex;
    flex-direction: column
}

.pb-full_width_cta_bar .wrapper .text-content {
    z-index: 2;
    padding-top: var(--spacer-1)
}

.pb-full_width_cta_bar .wrapper .image-wrapper {
    order: -1;
    margin-top: calc(var(--car-overhang)*-1)
}

.pb-full_width_cta_bar .wrapper img {
    height: auto;
    max-width: 120vw;
    width: 150vw;
    transform: translate(var(--translate-amount-negative), var(--translate-amount))
}

.pb-full_width_cta_bar .wrapper .button_wrapper {
    margin-bottom: 0;
    width: auto
}

.pb-full_width_cta_bar .button-wrap {
    width: 100%;
    display: flex;
    gap: var(--spacer-third);
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

@media only screen and (min-width:400px) {
    .pb-full_width_cta_bar .button-wrap {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        justify-content: flex-start
    }
}

@media only screen and (min-width:800px) {
    .pb-full_width_cta_bar .button-wrap {
        flex-direction: column;
        align-items: flex-start
    }
}

@media only screen and (min-width:1000px) {
    .pb-full_width_cta_bar .button-wrap {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start
    }
}

.pb-full_width_cta_bar .button-wrap p {
    margin: 0
}

.pb-full_width_cta_bar .button-wrap p a {
    color: #fff
}

@media only screen and (min-width:800px) {
    .pb-full_width_cta_bar {
        --car-overhang: 0px
    }

    .pb-full_width_cta_bar .wrapper {
        display: grid;
        grid-template-columns: 1fr 1.5fr
    }

    .pb-full_width_cta_bar .wrapper .image-wrapper {
        order: unset
    }

    .pb-full_width_cta_bar .wrapper img {
        width: var(--image-width);
        transform: translate(var(--translate-amount-negative), var(--translate-amount))
    }
}

@media only screen and (min-width:1100px) {
    .pb-full_width_cta_bar {
        --car-overhang: 150px
    }

    .pb-full_width_cta_bar .wrapper {
        grid-template-columns: 1.25fr 2fr
    }

    .pb-full_width_cta_bar .wrapper img {
        transform: translate(var(--translate-amount-negative), var(--translate-amount))
    }
}

.nav_bar {
    max-width: 100vw !important;
    justify-content: flex-start;
    align-self: flex-start;
    align-items: center
}

.nav_bar,
.nav_bar ul {
    display: flex;
    justify-content: center
}

.nav_bar ul {
    width: 100%;
    max-width: var(--max-width);
    margin: 0;
    padding: 0;
    gap: calc(var(--spacer-half)*0.5);
    list-style: none
}

@media only screen and (min-width:800px) {
    .nav_bar ul {
        gap: var(--spacer-3)
    }
}

.nav_bar ul li.current a:after {
    opacity: 1;
    transform: translateY(0)
}

.nav_bar ul a {
    display: block;
    padding: var(--spacer-half);
    text-align: center;
    position: relative;
    text-transform: uppercase
}

@media only screen and (min-width:800px) {
    .nav_bar ul a {
        padding: var(--spacer-1)
    }
}

.nav_bar ul a:focus:after,
.nav_bar ul a:hover:after,
.nav_bar ul a li.current a:after {
    opacity: 1;
    transform: translateY(-1px);
    transition-duration: .2s
}

.nav_bar ul a:after {
    opacity: 0;
    transform: translateY(-4px);
    transition: transform ease, opacity ease;
    transition-duration: .5s;
    content: "";
    width: calc(100% - var(--spacer-1));
    height: 1px;
    border-bottom: 1px solid;
    bottom: var(--spacer-half);
    left: var(--spacer-half);
    position: absolute
}

@media only screen and (min-width:800px) {
    .nav_bar ul a:after {
        bottom: var(--spacer-1);
        left: var(--spacer-1);
        width: calc(100% - var(--spacer-2))
    }
}
  
.accordions {
    padding: var(--spacer-1);
    margin-bottom: var(--spacer-2)
}

.accordions h2 {
    color: var(--grey-medium);
    text-align: center;
    margin-bottom: var(--spacer-1-and-half)
}

.accordions .wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-half)
}

.accordions .single_accordion {
    max-width: 80ch;
    background: #fff;
    border: .2px solid rgba(16, 24, 40, .1);
    box-shadow: 0 12px 16px -4px rgba(16, 24, 40, .08), 0 4px 6px -2px rgba(16, 24, 40, .03);
    border-radius: 3px;
    /* overflow: visible;  */
}

.accordions .single_accordion {
overflow: visible!important;
}

.accordions button.accordion {
    background-color: transparent;
    cursor: pointer;
    padding: var(--spacer-two-thirds);
    padding-right: var(--spacer-2);
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    transition: .4s;
    z-index: 2;
    position: relative;
    display: flex;
    align-items: center;
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    color: var(--blue);
    font-size: 16px;
    text-transform: uppercase
}

.accordions button.accordion:after {
    --size: 30px;
    content: "+";
    font-size: 13px;
    margin-left: 5px;
    position: absolute;
    right: var(--spacer-half);
    color: var(--orange) !important;
    border: 3px solid var(--orange);
    font-size: 30px;
    width: var(--size);
    height: var(--size);
    font-family: Open Sans, Times New Roman, Times, serif;
    border-radius: 3px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1
}

.accordions button.accordion.active:after {
    content: "-";
    padding-bottom: 5px
}

.accordions .panel {
    padding: 0 var(--spacer-two-thirds);
    max-height: 0;
    overflow: hidden;
    transition: max-height .6s ease;
    position: relative;
    color: var(--grey-medium);
    z-index: 1;
    --inset: 3px;
    transform: translateY(calc(var(--inset)*-2));
    border-radius: var(--inset)
}

.accordions .panel:after,
.accordions .panel:before {
    content: "";
    width: 50%;
    margin: 0 auto;
    height: var(--spacer-half);
    background: #fff;
    opacity: 0;
    display: block;
    top: 0;
    left: 0;
    height: 0
}


.text_area {
    width: 100%;
    padding: 0 var(--spacer-1);
    margin-bottom: var(--spacer-1)
}

.text_area .wrapper {
    width: 100%;
    max-width: 80ch;
    margin: 0 auto
}

.text_area .columns {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: var(--spacer-2);
    column-gap: var(--spacer-2)
}

.text_area .columns h3 {
    margin-top: 0
}

.text_area .columns ul {
    margin-left: 0;
    padding-left: var(--spacer-half)
}

@media only screen and (min-width:600px) {
    .text_area .columns {
        display: grid;
        grid-template-columns: 1fr 1fr
    }
}

ol.posts-listing {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(275px, 1fr));
    gap: var(--spacer)
}

.page-id-1264 .hero {
    margin-bottom: var(--spacer-2, 2rem)
}

.page_builder {
    display: flex;
    flex-direction: column
}

.page_builder>*>.wrapper {
    max-width: var(--max-width);
    margin: 0 auto
}

.single-experience-lead {
    margin-top: var(--spacer-2);
    margin-bottom: var(--spacer-2);
    padding: 0 var(--spacer-1)
}

.single-experience-lead .wrapper {
    display: flex;
    gap: var(--spacer-2);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    --spacing: var(--spacer-2)
}

@media only screen and (min-width:800px) {
    .single-experience-lead .wrapper {
        display: grid;
        align-items: flex-start;
        grid-template-columns: 1fr 1fr;
        --spacing: var(--spacer-1-and-half)
    }
}

.single-experience-lead .wrapper .text-wrapper .exp_info {
    margin-bottom: var(--spacer)
}

@media only screen and (min-width:800px) {
    .single-experience-lead .wrapper .text-wrapper .exp_info {
        justify-content: flex-start
    }
}

.single-experience-lead .wrapper .text-wrapper .button_wrapper {
    margin-top: var(--spacing)
}

.single-experience-lead .wrapper .image-wrapper {
    width: 100%
}

.single-experience-lead .wrapper .image-wrapper img {
    width: 100%;
    height: auto
}

.single-product.woocommerce-page .max-width {
    max-width: var(--max-width-large)
}

.single-product.woocommerce-page .the-content {
    padding: 0 var(--spacer-1);
    max-width: var(--max-width-large);
    margin-bottom: 0
}

.single-product.woocommerce-page .the-content .woocommerce .related.products,
.single-product.woocommerce-page .the-content .woocommerce .woocommerce-tabs {
    display: none
}

.single-product.woocommerce-page .woocommerce-product-details__short-description>ul {
    margin-left: 0;
    padding-left: var(--spacer-half)
}

.single-product.woocommerce-page .woocommerce-product-details__short-description>ul:first-child {
    margin-top: 0
}

.single-product.woocommerce-page .value {
    width: 100%;
    max-width: 500px;
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.single-product.woocommerce-page .value .reset_variations {
    color: var(--grey-medium)
}

.single-product.woocommerce-page label {
    text-transform: uppercase;
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif
}

.single-product.woocommerce-page .woocommerce-variation-price {
    color: var(--orange) !important;
    margin-top: var(--spacer-1);
    margin-bottom: var(--spacer-1)
}

.single-product.woocommerce-page .woocommerce-variation-price bdi {
    font-family: Fugaz One, Helvetica Neue, Helvetica, Arial, sans-serif;
    color: var(--blue) !important
}

.single-product.woocommerce-page input[name=quantity] {
    display: none
}

.single-product.woocommerce-page .variations_button .quantity {
    display: none
}

.single-product.woocommerce-page .reset_variations {
    display: none !important
}

.single-product.woocommerce-page .reset_variations[style*="visibility: visible"] {
    display: block !important
}

.single-product.woocommerce-page .single_variation_wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.single-product.woocommerce-page .single_variation_wrap .quantity {
    display: none
}

.single-product.woocommerce-page .single_variation_wrap>.variations_button {
    width: 100%
}

.single-product.woocommerce-page .single_variation_wrap>.variations_button>p {
    display: flex;
    flex-direction: column
}

.single-product.woocommerce-page .single_variation_wrap>.variations_button>p input {
    border: 1px solid var(--orange);
    border-radius: 6px;
    margin: 0 !important;
    background-color: var(--white);
    padding: var(--spacer-third);
    padding-right: calc(var(--spacer-1) + var(--spacer-third));
    width: 100%;
    max-width: 500px
}

.single-product.woocommerce-page select {
    border: 1px solid var(--orange);
    border-radius: 6px;
    margin: 0 !important;
    background-color: var(--white);
    padding: var(--spacer-third);
    padding-right: calc(var(--spacer-1) + var(--spacer-third));
    --sub-menu-chevron: url(../img/icons/chevron-down-orange.svg);
    background-image: var(--sub-menu-chevron);
    background-position: calc(100% - var(--spacer-third));
    background-repeat: no-repeat;
    color: var(--grey-medium);
    max-width: 100%;
    width: 100%;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    position: relative
}

.single-product.woocommerce-page .variations {
    max-width: 100%;
    margin-bottom: var(--spacer-half) !important
}

.single-product.woocommerce-page .variations tr {
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.single-product.woocommerce-page .woocommerce-notices-wrapper+.product {
    display: flex;
    flex-direction: column;
    gap: var(--spacer-1)
}

.single-product.woocommerce-page .woocommerce-notices-wrapper+.product>* {
    width: unset;
    float: unset
}

@media only screen and (min-width:700px) {
    .single-product.woocommerce-page .woocommerce-notices-wrapper+.product {
        display: grid;
        grid-template-columns: 1fr 1fr
    }
}

.single-product.woocommerce-page .woocommerce-notices-wrapper+.product .woocommerce-product-gallery {
    margin-bottom: 0
}

.single-product.woocommerce-page .woocommerce-notices-wrapper+.product .woocommerce-product-gallery+.entry-summary {
    margin-bottom: 0;
    float: unset
}

.single-product.woocommerce-page #pagination {
    display: none
}

:not(.single) article.post {
    border-radius: unset;
    border: 0;
    max-width: unset
}

#product-1106 .entry-summary>.price,
#product-1107 .entry-summary>.price {
    display: none
}

#product-1106 .entry-summary .product_meta,
#product-1107 .entry-summary .product_meta {
    display: none
}

#product-1106 .reset_variations,
#product-1107 .reset_variations {
    display: none !important
}

#product-1106 .woocommerce-variation-price {
    display: none
}

#product-1107 .new-title {
    margin-top: 0
}

.page-id-51 .page_builder>#intro:first-child {
    margin-bottom: var(--spacer-1)
}

.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content {
    padding: 0 var(--spacer-1)
}

.woocommerce-cart .coupon,
.woocommerce-checkout .coupon {
    display: flex;
    gap: var(--spacer-third)
}

.woocommerce-cart .coupon #coupon_code,
.woocommerce-checkout .coupon #coupon_code {
    width: 100%;
    max-width: 150px
}

.woocommerce-cart [style="font-size:smaller"],
.woocommerce-checkout [style="font-size:smaller"] {
    display: flex
}

.woocommerce-cart [style="font-size:smaller"] dt,
.woocommerce-checkout [style="font-size:smaller"] dt {
    position: relative
}

.woocommerce-cart [style="font-size:smaller"] dt:after,
.woocommerce-checkout [style="font-size:smaller"] dt:after {
    content: ":";
    position: relative
}

.woocommerce-cart [style="font-size:smaller"] dd,
.woocommerce-checkout [style="font-size:smaller"] dd {
    margin-left: var(--spacer-third) !important
}

@media only screen and (max-width:770px) {

    .woocommerce-cart .product-remove,
    .woocommerce-checkout .product-remove {
        display: flex !important;
        justify-content: flex-end !important
    }
}

.woocommerce-notices-wrapper {
    margin-bottom: var(--spacer-1)
}

.woocommerce-error {
    min-height: 50px;
    clear: both;
    float: unset;
    display: flex;
    flex-direction: column;
    gap: var(--spacer-third);
    align-items: flex-start;
    padding: var(--spacer-third) !important
}

.woocommerce-error:before {
    position: relative;
    top: unset;
    left: unset
}