/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

:root {

    /* Layout */
    --content-layout-width: 1588px;
    --content-layout-width-medium: 1366px;
    --content-layout-width-small: 1184px;

    /* Colors */
    --primary-color: #ffed00;
    --accent-color: #000;
    --text-color: var(--accent-color);

    /* Grey Scale */
    --color-white: #FFFFFF;
    --color-black: #000000;

    --color-grey-light: #b7b7b7;
    --color-grey-medium: #898989;
    --color-grey-dark: #5c5c5c;

    /* Typography */
    --font-family-heading: "PP Monument Extended", Arial, Helvetica, sans-serif;
    --font-family-body: "Silka", Arial, Helvetica, sans-serif;
    --font-family-icon: "ms-iconfont";

    --fontsize-h1: clamp(23px, 1.3608rem + 0.3409vw, 26px);
    --fontsize-h2: clamp(21px, 1.2614rem + 0.2273vw, 23px);
    --fontsize-h3: clamp(18px, 1.2244rem + 0.1136vw, 21px);
    --fontsize-h4: clamp(18px, 1.0994rem + 0.1136vw, 19px);
    --fontsize-h5: clamp(16px, 0.9744rem + 0.1136vw, 17px);
    --fontsize-h6: clamp(14px, 0.8494rem + 0.1136vw, 15px);

    --fontsize-xxl: clamp(32px, 0.9684rem + 4.4013vw, 100px);
    --fontsize-xl: clamp(28px, 1.113rem + 2.718vw, 70px);
    --fontsize-l: clamp(26px, 1.2609rem + 1.5534vw, 50px);
    --fontsize-lead: clamp(18px, 1.0739rem + 0.2273vw, 20px);
    --fontsize-body: clamp(16px, 0.9489rem + 0.2273vw, 18px);
    --fontsize-label: clamp(12px, 0.6989rem + 0.2273vw, 14px);
    --fontsize-link: clamp(14px, 0.8239rem + 0.2273vw, 16px);
}

/* General START */

.bg-dotted {
    --dotted-size: 6px;
    --dotted-radial-gradient: circle 1px at 25% 50%, #807000 10%;
    --dotted-top-layer-color: transparent;
    --dotted-bottom-layer-color: var(--primary-color);
    --dotted-top-layer: radial-gradient(var(--dotted-radial-gradient), var(--dotted-top-layer-color) 100%, var(--dotted-top-layer-color));
    --dotted-bottom-layer: radial-gradient(var(--dotted-radial-gradient), var(--dotted-bottom-layer-color) 100%, var(--dotted-bottom-layer-color));
    background: var(--dotted-top-layer), var(--dotted-bottom-layer) calc(var(--dotted-size) / 2) calc(var(--dotted-size) / 2) !important;
    background-size: var(--dotted-size) var(--dotted-size) !important;
}

.elementor-widget-n-carousel .swiper {
    padding-bottom: 0 !important;
}

body .elementor .elementor-widget-text-editor p a {
    font-size: var(--fontsize-body);
    text-transform: unset;
    text-decoration: underline;
}

body .elementor .offset-title-small .elementor-heading-title {
    line-height: .3em !important;
}

body .elementor .offset-title-medium .elementor-heading-title {
    line-height: .5em !important;
}

body .elementor .offset-title-large .elementor-heading-title {
    line-height: .75em !important;
}

body .elementor .offset-title-small b,
body .elementor .offset-title-medium b,
body .elementor .offset-title-large b {
    font-weight: inherit;
}

body .elementor .offset-title-small b {
    font-size: 35%;
}

body .elementor .offset-title-medium b {
    font-size: 60%;
}

body .elementor .offset-title-large b {
    font-size: 80%;
}

body .elementor .offset-spacing-small b {
    padding-left: 10%;
}

body .elementor .offset-spacing-medium b {
    padding-left: 27%;
}

body .elementor .offset-spacing-large b {
    padding-left: 37%;
}

/* General END */

/* GSAP Animations START */

.scroll-zoom-wrap,
.scroll-zoom-wrap .e-con-inner {
    transition: none !important;
    transform-style: preserve-3d;
    perspective: 100dvh;
    min-height: 100vh;
}


.scroll-zoom-wrap .zoom-element {
    transform: translate(-50%, -50%) translate3D(0dvh, 0dvh, -200dvh);
    z-index: 1;
}

/* GSAP Animations END */

/* WooCommerce Messages START */

body .woocommerce-info,
body.e-wc-info-notice .woocommerce-info,
body .woocommerce-error,
body.e-wc-info-notice .woocommerce-error,
body .woocommerce-message,
body.e-wc-info-notice .woocommerce-message{
    background-color: var(--color-black);
    display: flex;
    align-items: center;
    border: unset;
    flex-direction: row-reverse;
    justify-content: space-between;
    color: var(--primary-color);
}

body .woocommerce-info:before,
body.e-wc-info-notice .woocommerce-info:before,
body .woocommerce-error:before,
body.e-wc-info-notice .woocommerce-error:before,
body .woocommerce-message:before,
body.e-wc-info-notice .woocommerce-message:before{
    color: var(--primary-color);
    font-size: 20px;
    top: 50%;
    transform: translateY(-50%);
}

body .woocommerce-info a.button,
body.e-wc-info-notice .woocommerce-info a.button,
body .woocommerce-error a.button,
body.e-wc-info-notice .woocommerce-error a.button,
body .woocommerce-message a.button,
body.e-wc-info-notice .woocommerce-message a.button{
    border-color: var(--primary-color);
    color: var(--primary-color);
    transition: all .3s ease;
}

body .woocommerce-info a.button:hover,
body.e-wc-info-notice .woocommerce-info a.button:hover,
body .woocommerce-error a.button:hover,
body.e-wc-info-notice .woocommerce-error a.button:hover,
body .woocommerce-message a.button:hover,
body.e-wc-info-notice .woocommerce-message a.button:hover{
    border-color: var(--primary-color);
    background-color: var(--primary-color);
    color: var(--color-black);
    transition: all .3s ease;
}

/* WooCommerce Messages END */

/* Buttons START */

.elementor-widget-button .elementor-button {
    background-color: var(--e-global-color-primary);
}

body .elementor .elementor-widget-button .elementor-button:hover {
    background-color: var(--color-black);
    border-color: var(--color-black);
}

.elementor-widget-button.button-inverted .elementor-button {
    border-color: var(--color-white);
    color: var(--color-white);
    background-color: var(--color-black);
    box-shadow: 4px 4px 0px 0px var(--color-white);
}

body .elementor .elementor-widget-button.button-inverted .elementor-button:hover {
    color: var(--color-black);
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    box-shadow: none;
}

body.single-product .elementor .elementor-widget-button .elementor-button {
    box-shadow: 4px 4px 0px 0px var(--color-black);
}

body.single-product .elementor .elementor-widget-button.button-inverted .elementor-button {
    box-shadow: 4px 4px 0px 0px var(--color-white);
}

body .elementor .elementor-widget-button .elementor-button:hover,
body .elementor .elementor-widget-button.button-inverted .elementor-button:hover {
    box-shadow: none;
}

/* Buttons END */

/* Header START */

.elementor-location-header .elementor-sticky {
    transition: .3s all ease;
}

.elementor-location-header .elementor-sticky--effects {
    top: -30px !important;
}

.elementor-location-header .elementor-sticky--effects > .e-con-inner {
    align-items: flex-end;
}

body .elementor-location-header .elementor-sticky--effects .header-logo {
    padding-bottom: 12px;
}

body .elementor-location-header .header-logo img {
    transition: .3s all ease;
}

body .elementor-location-header .elementor-sticky--effects .header-logo img {
    max-width: 110px;
}

body .elementor-location-header .elementor-sticky--effects .nav-wrap {
    padding-bottom: 10px;
    padding-top: 5px;
}

body .elementor-location-header .elementor-sticky--effects .elementor-widget-n-menu .e-n-menu-content {
    --n-menu-title-distance-from-content: 10px;
}

body .elementor-location-header #header-search-wrap {
    top: 75px;
    transition: top .4s ease;
}

body.admin-bar .elementor-location-header #header-search-wrap {
    top: calc(75px + 32px);
}

body .elementor-location-header:has(.elementor-sticky--effects) #header-search-wrap {
    top: 48px;
}

body.admin-bar .elementor-location-header:has(.elementor-sticky--effects) #header-search-wrap {
    top: calc(48px + 32px);
}

body .elementor-location-header.search-active .search-trigger i:before {
    content: "\e903";
    font-size: 14px;
}

body .top-nav .elementor-nav-menu li a:hover,
body .top-nav .elementor-nav-menu li.current-menu-item a {
    text-decoration: underline;
}

.e-n-menu-heading > li > a {
    color: var(--primary-color) !important;
    padding: 8px 16px;
    border-bottom: 3px solid transparent;
    transition: .3s all ease;
}

body:not(.logged-in) .top-nav .elementor-nav-menu li.logged-in {
    display: none !important;
}

body:not(.logged-out) .top-nav .elementor-nav-menu li:nth-last-child(2):after,
body.logged-in .top-nav .elementor-nav-menu li.logged-out {
    display: none !important;
}

body .elementor-location-header .elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter]{
    border: 2px solid var(--primary-color);
}

/* Header END */

/* Mega Menu START */

.elementor-location-header .e-n-menu-dropdown-icon {
    display: none !important;
}

.elementor-location-header .mega-menu > li > a {
    display: none;
!important;
}

.elementor-location-header .mega-menu > li > .sub-menu {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    gap: 10px;
}

.elementor-location-header .mega-menu,
.elementor-location-header .mega-menu ul {
    padding: 0;
    list-style: none;
}

.elementor-location-header .mega-menu li,
.elementor-location-header .mega-menu li a {
    font-size: 12px;
    font-weight: 500;
    font-family: var(--font-family-body);
    line-height: 1.5;
}

.elementor-location-header .mega-menu li a:hover {
    text-decoration: underline;
}

.elementor-location-header .mega-menu li.menu-item-has-children > a {
    font-weight: 700;
}

.elementor-location-header .mega-menu > li > .sub-menu > li.menu-item-has-children > .sub-menu {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.elementor-location-header .e-n-menu-content .elementor-widget-button .elementor-button {
    background-color: transparent !important;
    box-shadow: none !important;
}

.elementor-location-header .e-n-menu-content .elementor-widget-button .elementor-button:hover {
    text-decoration: underline;
}

/* Mega Menu END */

/* Opener Swiper START */

body .opener-swiper .swiper {
    height: calc(100vh - 79px);
}

body.admin-bar .opener-swiper .swiper {
    height: calc(100vh - (79px + 32px)) !important;
}

.opener-swiper .elementor-button {
    background-color: transparent;
    color: var(--color-white);
    border-color: var(--color-white);
}

.opener-swiper .swiper .swiper-pagination {
    top: unset;
    bottom: 0;
}

.elementor-widget-n-carousel .swiper-pagination-bullet {
    opacity: .5;
}

.elementor-widget-n-carousel .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--primary-color);
}

.teaser-link {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

/* Opener Swiper END */

/* Cards START */

body .ur-message-content,
body .elementor .teaser-box,
.accordion-card .e-n-accordion-item,
body > .elementor .card {
    border: 3px solid var(--color-black);
    box-shadow: 6px 6px 0px 0px var(--color-black);
    -webkit-box-shadow: 6px 6px 0px 0px var(--color-black);
    -moz-box-shadow: 6px 6px 0px 0px var(--color-black);
    background: var(--color-white);
}

body .ur-message-content {
    padding: 30px;
}

body .elementor .teaser-box:hover,
.accordion-card .e-n-accordion-item:hover,
body > .elementor .card:hover {
    box-shadow: 8px 8px 0px 0px var(--color-black);
    -webkit-box-shadow: 8px 8px 0px 0px var(--color-black);
    -moz-box-shadow: 8px 8px 0px 0px var(--color-black);
    background: var(--color-white);
}

.teaser-card .elementor-widget-image {
    overflow: hidden;
}

.teaser-box .elementor-widget-image {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.teaser-box .elementor-widget-image:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 35%;
    left: 0;
    bottom: 0;
    background: RGBA(0, 0, 0, 0.2);
    background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0.89) 0%, rgba(0, 0, 0, 0) 100%);
    background: -moz-linear-gradient(0deg, rgba(0, 0, 0, 0.89) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.89) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000033", endColorstr="#000000", GradientType=0);
}

.teaser-box.inverted .elementor-widget-image:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 35%;
    left: 0;
    bottom: 0;
    background: RGBA(255, 255, 255, 0.2);
    background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 0.89) 0%, rgba(255, 255, 255, 0) 100%);
    background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 0.89) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.89) 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff33", endColorstr="#ffffff", GradientType=0);
}

.teaser-box .elementor-widget-image img {
    transition: .4s all ease;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.teaser-box:hover .elementor-widget-image img {
    transform: scale(1.1);
}

.teaser-card > .e-con {
    flex: 1;
}

.teaser-card .elementor-widget-image img {
    transition: .3s all ease;
}

.teaser-card:hover .elementor-widget-image img {
    transform: scale(1.1);
}

/* Cards END */

/* Contact Form START */

.wpforms-container-full,
.wpforms-form {
    margin: 0 !important;
}

div.wpforms-container-full .wpforms-form h1,
div.wpforms-container-full .wpforms-form h2,
div.wpforms-container-full .wpforms-form h3,
div.wpforms-container-full .wpforms-form h4,
div.wpforms-container-full .wpforms-form h5,
div.wpforms-container-full .wpforms-form h6 {
    text-transform: uppercase;
}

body div.wpforms-container-full .wpforms-field-container {
    display: flex;
    flex-flow: column wrap;
    gap: 12px;
}

body .newsletter-form {
    justify-content: center;
}

body .newsletter-form .wpforms-form {
    justify-content: center;
}

body .newsletter-form div.wpforms-container-full .wpforms-field-container {
    flex-flow: row wrap;
}

body .newsletter-form .wpforms-form {
    display: flex;
    flex-flow: row wrap;
}

body .newsletter-form div.wpforms-container-full .wpforms-field-container,
body .newsletter-form .wpforms-form {
    align-items: flex-start;
}

body .newsletter-form .wpforms-form .wpforms-submit-container{
    margin-top: 0 !important;
}

body .newsletter-form div.wpforms-container-full .wpforms-field-captcha input {
    width: 100%;
    min-width: 250px;
}

body .newsletter-form div.wpforms-container-full input[type="text"],
body .newsletter-form div.wpforms-container-full input[type="email"] {
    height: 48px !important;
    padding: 10px 20px !important;
    border-width: 2px !important;
}

body .newsletter-form div.wpforms-container-full input::placeholder {
    color: var(--color-black) !important;
    opacity: 1;
}

body .newsletter-form div.wpforms-container-full .wpforms-submit {
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-link);
    font-weight: 800;
}

body div.wpforms-container-full h3,
body div.wpforms-form h3 {
    font-size: var(--fontsize-h1);
    margin: 0;
}

.wpforms-form .wpforms-field {
    position: relative;
}

body .wpforms-container .wpforms-field.first {
    padding-top: 0 !important;
}

body .wpforms-container .wpforms-field,
body .wp-core-ui div.wpforms-container .wpforms-field {
    padding: 0;
}

.wpforms-form .wpforms-field .wpforms-field-label {
    font-size: var(--fontsize-lead);
    position: absolute;
    font-weight: normal;
    top: 27px;
    transition: .2s all ease;
    left: 22px;
    margin: 0;
    z-index: 1;
}

.wpforms-form .wpforms-field.wpforms-field-textarea .wpforms-field-label {
    top: 20px;
    transform: none;
}

.wpforms-form .wpforms-field.wpforms-field-textarea textarea:focus {
    border-color: var(--color-black) !important;
}

body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.choices.is-focused) .wpforms-field-label,
body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.choices.is-open) .wpforms-field-label,
body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.choices.is-open) .wpforms-field-label,
body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.wpforms-valid) .wpforms-field-label,
body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.wpforms-valid) .wpforms-field-label,
body div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern:has(.wpforms-valid) .wpforms-field-label,
.wpforms-form .wpforms-field.focused .wpforms-field-label {
    top: 12px;
    transform: none;
    font-size: 12px;
}

div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices .choices__inner .choices__list--single {
    padding: 12px 16px 0 20px !important;
}

div.wpforms-container-full input[type=date],
div.wpforms-container-full input[type=datetime],
div.wpforms-container-full input[type=datetime-local],
div.wpforms-container-full input[type=email],
div.wpforms-container-full input[type=month],
div.wpforms-container-full input[type=number],
div.wpforms-container-full input[type=password],
div.wpforms-container-full input[type=range],
div.wpforms-container-full input[type=search],
div.wpforms-container-full input[type=tel],
div.wpforms-container-full input[type=text],
div.wpforms-container-full input[type=time],
div.wpforms-container-full input[type=url],
div.wpforms-container-full input[type=week],
div.wpforms-container-full .choices__inner {
    height: 72px;
    border-radius: 0 !important;
    padding: 26px 20px 20px !important;
    border-color: var(--color-black) !important;
}

div.wpforms-container-full .wpforms-field-captcha input{
	width: 50%;
}

div.wpforms-container-full .wpforms-field-captcha .wpforms-field-label{
	left: 86px;
}

div.wpforms-container-full .choices__inner {
    padding: 0 !important;
}

div.wpforms-container-full input[type=tel] {
    padding: 26px 20px 20px 92px !important;
}

div.wpforms-container-full .wpforms-form textarea {
    border-radius: 0 !important;
    padding: 26px 20px 20px !important;
}

div.wpforms-container-full .wpforms-field-phone .iti__country-container {
    width: 72px;
    z-index: 2;
}

div.wpforms-container-full .wpforms-field-phone input::placeholder {
    color: var(--color-white) !important;
}

div.wpforms-container-full .wpforms-field-phone .wpforms-field-label {
    left: 94px;
}

div.wpforms-container-full .wpforms-field-phone .iti__country-container .iti__selected-country-primary {
    width: 100%;
    background-color: var(--primary-color);
    justify-content: center;
}

div.wpforms-container-full .wpforms-field-phone .iti__country-container .iti__selected-country-primary:hover {
    background-color: var(--primary-color) !important;
}

body .iti--allow-dropdown .iti__country-container .iti__dropdown-content .iti__country-list {
    border: none !important;
    border-radius: 0 !important;
}

div.wpforms-container-full input[type=checkbox]:checked:after {
    border-left-color: var(--color-black) !important;
    border-bottom-color: var(--color-black) !important;
}

body div.wpforms-container-full .wpforms-field-container {
    border-left-color: var(--color-black) !important;
    border-bottom-color: var(--color-black) !important;
}

body .elementor div.wpforms-container-full .wpforms-submit {
    font-size: var(--fontsize-link);
    text-transform: uppercase;
    line-height: 1;
    padding: 12px 24px;
    border-radius: 0;
    border: 3px solid var(--color-black);
    box-shadow: 4px 4px 0px 0px var(--color-black);
}

body .elementor div.wpforms-container-full .wpforms-submit:hover {
    background-image: none;
    background-color: var(--color-black);
    color: var(--color-white);
    box-shadow: none;
}

body div.wpforms-container .wpforms-form .choices__list--dropdown {
    border-radius: 0 !important;
    border: 2px solid var(--color-black) !important;
}

body div.wpforms-container .wpforms-form .choices__list--dropdown .choices__item {
    border-bottom: 1px solid #efefef;
}

body div.wpforms-container .wpforms-form .choices__list--dropdown .choices__item.is-highlighted,
body div.wpforms-container .wpforms-form .choices__list--dropdown .choices__item:hover {
    border-color: var(--primary-color);
    background-color: var(--primary-color) !important;
}

/* Contact Form END */

/* Teaser START */

@media screen and (min-width: 768px) {
    .teaser-section > .e-con-inner .e-con.e-child:hover {
        background-size: 110%;
    }
}

.teaser-box:hover .elementor-widget-button .elementor-button,
.teaser-section > .e-con-inner .e-con.e-child:hover .elementor-button {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--color-black);
    box-shadow: none;
}

/* Teaser END */

/* Product START */

body .elementor .product-nav.elementor-sticky--effects {
    top: 79px;
    transition: top .4s ease;
}

body .elementor .product-nav .e-n-menu-heading li a {
    color: var(--primary-color) !important;
    padding: 8px 16px;
    border-bottom: 3px solid transparent;
    transition: .3s all ease;
}

body .elementor .product-nav .e-n-menu-heading li .e-n-menu-title:hover a,
body .elementor .product-nav .e-n-menu-heading li .e-n-menu-title.e-current a {
    border-color: var(--primary-color);
    color: var(--primary-color);
}

body .elementor .product-nav .e-n-menu-heading li .e-n-menu-title {
    transition: .3s all ease;
}

body.admin-bar .elementor .product-nav.elementor-sticky--effects {
    top: calc(79px + 32px) !important;
}

body .elementor-location-header:has(.elementor-sticky--effects) + .elementor:has(.product-nav.elementor-sticky--effects) .product-nav {
    top: 51px !important;
}

body.admin-bar .elementor-location-header:has(.elementor-sticky--effects) + .elementor:has(.product-nav.elementor-sticky--effects) .product-nav {
    top: calc(51px + 32px) !important;
}

.product-info-table .elementor-widget-text-editor {
    border-bottom: 1px solid var(--color-black);
}

.product-info-table .elementor-widget-text-editor p {
    margin: 10px 0;
}

body .elementor .video-zoom-wrapper {
    transform-style: preserve-3d;
}

body .elementor .video-zoom-inner {
    transform: scale(.3);
}

body .elementor .e-hotspot__label {
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    height: 0;
    position: absolute;
    clip: rect(0, 0, 0, 0);
    padding: 0;
    margin: 0;
}

body .elementor .e-hotspot__tooltip {
    border: 3px solid var(--color-black);
    padding: 16px;
    white-space: unset;
}

body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider {
    padding-bottom: 60px;
}

body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button {
    top: unset;
    bottom: 0;
}

body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button-next {
    right: 17%;
}

body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button-prev {
    right: 20%;
    left: unset;
}

body.woocommerce-page .woocommerce-orders-table td,
body.woocommerce-page .woocommerce-orders-table th,
body.woocommerce-page .woocommerce-table.order_details th,
body.woocommerce-page .woocommerce-table.order_details td,
body.single-product .wc-attributes-table th,
body.single-product .wc-attributes-table td {
	padding: 10px 0;
	text-align: left;
	border: unset;
	border-bottom: 1px solid var(--color-black);
	background: unset;
}

body.woocommerce-page .woocommerce-orders-table thead th{
    border-top: none !important;
	border-bottom: 2px solid var(--color-black);
}

body.woocommerce-page .woocommerce-orders-table th,
body.woocommerce-page .woocommerce-table.order_details th,
body.single-product .wc-attributes-table th {
	font-weight: 600;
}

body.woocommerce-page .woocommerce-orders-table,
body.woocommerce-page .woocommerce-table.order_details,
body.single-product .wc-attributes-table {
	border-collapse: separate;
    border-spacing: 16px 0;
    border: none;
}

body.woocommerce-page .woocommerce-orders-table,
body.woocommerce-page .woocommerce-table.order_details,
body.single-product .wc-attributes-table-wrapper{
	margin-left: -16px;
	margin-right: -16px;
    width: calc(100% + 32px);
}

body.woocommerce-page .woocommerce-orders-table .woocommerce-button.view{
    border: 2px solid var(--color-black);
    color:  var(--color-black);
    border-radius: 0;
    background-color: transparent;
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-link);
    box-shadow: 4px 4px 0px 0px var(--color-black);
    transition: .3s all ease;
}

body.woocommerce-page .woocommerce-orders-table .woocommerce-button.view:hover,
body.woocommerce-page .woocommerce-orders-table .woocommerce-button.view:focus{
    color:  var(--primary-color);
    background-color: var(--color-black);
    box-shadow: 0px 0px 0px 0px var(--color-black);
}

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


	body.single-product .wc-attributes-table th,
	body.single-product .wc-attributes-table td {
		width: 100%;
	}

	body.single-product .wc-attributes-table th{
		max-width: 33.333334%;
	}
	
	body.single-product .wc-attributes-table td {
		max-width: 66.666667%;
	}
}

.single-product .acoplw-badge,
.elementor-loop-container .e-loop-item .acoplw-badge{
	position: absolute;
    display: flex !important;
    flex-flow: column nowrap;
    align-items: flex-start;
    gap: 10px;
}

.elementor-loop-container .e-loop-item .acoplw-badge span[class^="acoplw-badge-"],
.single-product .acoplw-badge span[class^="acoplw-badge-"]{
	visibility: visible !important;
	font-weight: 800 !important;
	line-height: 1em !important;
	font-family: var(--font-family-heading) !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	position: static !important;
	word-break: unset;
	width: unset !important;
}

.elementor-loop-container .e-loop-item .acoplw-badge .acoplw-blockText,
.single-product .acoplw-badge .acoplw-blockText{
	word-break: normal;
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* Product END */

/* Footer Teaser START */

body .footer-teaser-wrap {
    position: relative;
    overflow: hidden;
}

body .footer-teaser-wrap .elementor-widget-image {
    position: absolute;
    height: 100%;
    width: 100%;
}

body .footer-teaser-wrap .elementor-widget-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    filter: grayscale(1);
    transition: .5s all ease;
}

body .footer-teaser-wrap:hover .elementor-widget-image img {
    transform: scale(1.2);
    filter: grayscale(0);
}

body .footer-teaser-wrap .elementor-widget-heading {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

body:not(.logged-in) .elementor-location-footer .logged-in,
body.logged-in .elementor-location-footer .logged-out {
    display: none;
}

/* Footer Teaser END */

/* Contact Accordion START */

.accordion-card .e-n-accordion-item {
    transition: all .3s ease;
}

.accordion-card.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
    gap: 50px;
}

.accordion-card.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon {
    transform: rotate(90deg);
}

.accordion-card.elementor-widget-n-accordion .e-n-accordion-item a {
    font-size: var(--fontsize-body);
    font-weight: normal;
    text-transform: none;
    text-decoration: underline;
}

/* Contact Accordion END */

/* Login START */

body.user-registration-page .elementor .user-registration {
    margin: 0 !important;
    max-width: unset !important;
}

body.user-registration-page .elementor .user-registration .ur-frontend-form {
    padding: 0 !important;
    border-radius: 0 !important;
    background: unset !important;
    box-shadow: unset !important;
}

body.user-registration-page .elementor .user-registration .ur-frontend-form.login {
    max-width: 840px;
    padding: 0 20px !important;
}

body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid {
    padding: 0;
}

body.user-registration-page .elementor #user-registration:not(.user-registration-MyAccount) .user-registration-ResetPassword .ur-form-row .ur-form-grid .ur-input-with-icon input:not([type=radio]):not([type=checkbox]),
body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input:not([type=radio]):not([type=checkbox])
body.user-registration-page .elementor .user-registration.ur-frontend-form--flat:not(.login) form .ur-form-row .ur-form-grid input:not([type=radio]):not([type=checkbox]), body.user-registration-page .user-registration.ur-frontend-form--flat:not(.login) form .ur-form-row .ur-form-grid input:not([type=checkbox]),
body.user-registration-page .elementor .user-registration.ur-frontend-form--flat:not(.login) form .ur-form-row .ur-form-grid input:not([type=file])
body.user-registration-page .elementor #user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input, body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input,
body.user-registration-page .elementor #user-registration.horizontal .user-registration-MyAccount-content__body .ur-frontend-form.login .ur-form-row .ur-form-grid fieldset .user-registration-form-row .password-input-group .input-text,
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .form-row .user-registration-Input--text {
    border: 2px solid var(--color-black);
    max-height: unset;
    height: 64px;
    border-radius: 0;
    font-size: var(--fontsize-body);
    line-height: 1;
    padding: 26px 20px 12px 20px;
    color: var(--color-black);
}

.elementor .ur-form-row .without_icon {
    padding-left: 20px !important;
}

.elementor .user-registration.ur-frontend-form {
    padding: 0;
}

body.user-registration-page .elementor #user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input, body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input,
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .form-row {
    position: relative;
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item:not(.field-captcha):not(.field-privacy_policy) label:not(.user-registration-error),
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .user-registration-form-row label,
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .ur-captcha-equation {
    font-size: var(--fontsize-body);
    color: var(--color-black);
    z-index: 1;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    transition: .2s all ease;
}


body.user-registration-page .elementor .ur-frontend-form .user-registration-ResetPassword .ur-form-row .ur-form-grid .user-registration-form-row label {
    position: static;
}

body.user-registration-page .elementor #user-registration:not(.user-registration-MyAccount) .user-registration-ResetPassword .ur-form-row .ur-form-grid .ur-input-with-icon input, body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-input-with-icon input {
    padding: 0 14px 0 36px;
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item .form-row.focused label:not(.user-registration-error),
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .user-registration-form-row.focused label,
body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .form-row.focused .ur-captcha-equation {
    top: 12px;
    transform: none;
    font-size: 12px !important;
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item.field-captcha .form-row label:not(.user-registration-error),
body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item.field-captcha .form-row.focused label:not(.user-registration-error) {
    font-size: var(--fontsize-body) !important;
}

body.user-registration-page .elementor .ur-frontend-form .ur-form-row .ur-form-grid .ur-captcha-equation {
    line-height: 1;
}

body.user-registration-page #user-registration:not(.user-registration-MyAccount) .ur-frontend-form
.user-registration-form .ur-form-row .ur-form-grid .user-registration-before-login-btn .user-registration-LostPassword a,
body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-frontend-form
.user-registration-form .ur-form-row .ur-form-grid .user-registration-before-login-btn .user-registration-LostPassword a,
body.user-registration-page #user-registration:not(.user-registration-MyAccount) .ur-frontend-form
.user-registration-form .ur-form-row .ur-form-grid .user-registration-register a,
body.user-registration-page .user-registration:not(.user-registration-MyAccount) .ur-frontend-form
.user-registration-form .ur-form-row .ur-form-grid .user-registration-register a {
    color: var(--color-black);
}

.elementor .ur-form-row {
    margin-bottom: 12px;
}

.elementor .ur-frontend-form form {
    margin: 0 -6px;
}

.elementor .ur-frontend-form form .ur-form-row .ur-form-grid {
    margin: 0 6px;
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-button-container .ur-submit-button,
body .elementor .ur-frontend-form.login .ur-reset-password-btn,
.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-content .user-registration-MyAccount-content__body .ur-frontend-form.login .ur-form-row .ur-form-grid .button,
body.user-registration-page .elementor .ur-frontend-form .ur-submit-button {
    font-size: var(--fontsize-link) !important;
    background-color: var(--primary-color) !important;
    font-weight: 900;
    color: var(--color-black) !important;
    text-transform: uppercase;
    line-height: 1;
    padding: 12px 24px;
    border-radius: 0;
    border: 3px solid var(--color-black);
    box-shadow: 4px 4px 0px 0px var(--color-black);
}

body .elementor .ur-frontend-form.login .ur-reset-password-btn:hover,
.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-content .user-registration-MyAccount-content__body .ur-frontend-form.login .ur-form-row .ur-form-grid .button:hover,
body.user-registration-page .elementor .ur-frontend-form .ur-submit-button:hover {
    background-color: var(--color-black) !important;
    border-color: var(--color-black) !important;
    color: var(--color-white) !important;
    box-shadow: none;
}

body.user-registration-page #user-registration .ur-frontend-form .user-registration-form-login .ur-form-row .ur-form-grid .user-registration-register.register {
    margin-top: 24px;
    border-top: 1px solid var(--color-black);
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-button-container .ur-submit-button:hover,
body.user-registration-page .elementor .ur-frontend-form .ur-submit-button:hover {
    background-color: var(--color-black) !important;
    border-color: var(--color-black) !important;
    color: var(--color-white) !important;
    box-shadow: none;
}

body.user-registration-page #user-registration.vertical,
body.user-registration-page #user-registration.horizontal {
    box-shadow: none;
}

.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-navigation {
    background-color: var(--color-black);
    border: unset;
}

.logged-in.user-registration-account .elementor #user-registration {
    box-shadow: unset;
    background-color: unset;
    position: relative;
}

.logged-in.user-registration-account .elementor #user-registration.horizontal .user-registration-MyAccount-navigation ul,
.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-content {
    max-width: 1288px;
    padding: 0 20px;
    margin: 0 auto;
}

.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-content {
    padding-top: 40px;
}

.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-content h1 {
    text-align: left;
}

.logged-in.user-registration-account .elementor #user-registration .user-registration-MyAccount-navigation ul .user-registration-MyAccount-navigation-link a {
    background-color: var(--color-black);
    color: var(--primary-color);
}

.logged-in.user-registration-account .elementor #user-registration.horizontal .user-registration-MyAccount-navigation ul .user-registration-MyAccount-navigation-link.is-active a,
.logged-in.user-registration-account .elementor #user-registration.horizontal .user-registration-MyAccount-navigation ul .user-registration-MyAccount-navigation-link a:hover {
    background-color: var(--color-black);
    color: var(--primary-color);
    text-decoration: underline;
}

#user-registration .user-registration-MyAccount-navigation ul .user-registration-MyAccount-navigation-link {
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-block;
    position: relative;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    text-align: center;
}

#user-registration .user-registration-MyAccount-navigation ul li:first-child:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 40%;
    width: 1px;
    background-color: var(--primary-color);
}

#user-registration .user-registration-MyAccount-navigation ul .user-registration-MyAccount-navigation-link:last-child {
    margin-left: auto;
}

body #user-registration.vertical .user-registration-MyAccount-content__body h2,
body #user-registration.horizontal .user-registration-MyAccount-content__body h2 {
    color: var(--color-black);
    font-weight: 900;
    font-size: var(--fontsize-h2);
}

body #user-registration p {
    color: var(--color-black);
}

body #user-registration .ur-lost-password-content-container {
    text-align: left;
    align-items: flex-start;
}

body #user-registration .ur-lost-password-content-container .ur-lost-password-title {
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-h3);
    font-weight: 900;
    text-transform: uppercase;
}

body #user-registration .ur-lost-password-content-container .ur-lost-password-message {
    font-size: var(--fontsize-body);
}

body .elementor #user-registration .user-registration-MyAccount-content__body p a {
    color: var(--color-black);
    font-size: var(--fontsize-body);
    text-decoration: underline;
    text-transform: unset;
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item.field-privacy_policy label {
    font-size: var(--fontsize-body);
}

body.user-registration-page .elementor .user-registration:not(.user-registration-MyAccount) .ur-button-container {
    padding: 0 6px !important;
}

/* Login END */

/* FAQs START */

.faq-toggle-item .faq-toggle-title {
    cursor: pointer;
}

.faq-toggle-item .faq-toggle-content {
    width: 100% !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
}

.faq-toggle-item .faq-toggle-title .elementor-icon i {
    transition: .2s all;
}

.faq-toggle-item .faq-toggle-title[aria-expanded=true] .elementor-icon i {
    transform: rotate(270deg) !important;
}

/* FAQs END */

/* Sitemap START */

.sitemap-wrapper .post-type-list,
.sitemap-wrapper .children {
    list-style: none;
}

.sitemap-wrapper .post-type-list .page_item {
    margin-bottom: 10px;
}

.sitemap-wrapper .post-type-list .page_item a {
    line-height: 1;
    padding: 13px 27px;
    border: 2px solid var(--color-black);
    display: block;
    transition: .2s all ease;
}

.sitemap-wrapper .post-type-list .page_item a:hover {
    background-color: var(--color-black);
    color: var(--primary-color);
}

/* Sitemap END */

/* Video Scroll Animation START */

.video-scroll-content {
    position: absolute;
    width: 100%;
    height: 100dvh;
}

.scroll-video:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .40);
}

/* Video Scroll Animation END */

/* Single Product START */

body.single-product .elementor-widget-woocommerce-product-price .price{
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

body.single-product .elementor-widget-woocommerce-product-price .price ins{
    margin-right: 20px;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart{
    display: flex;
    flex-direction: column-reverse;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart .stock{
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 0;
    margin-top: 20px;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart .stock:before{
    content: '';
    width: 15px;
    height: 15px;
    border-radius: 30px;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart .stock.in-stock:before{
    background-color: #00b755;
}

body.single-product .elementor-add-to-cart .variations,
body.single-product .elementor-add-to-cart .variations tr,
body.single-product .elementor-add-to-cart .variations td,
body.single-product .elementor-add-to-cart .variations th{
    padding: unset;
    border: unset;
    background-color: unset;
    text-align: left;
}

body.single-product .elementor-add-to-cart .variations{
    max-width: 400px;
}

/* Single Product END */

/* Mini Cart START */

body .elementor-location-header .elementor-widget-woocommerce-menu-cart{
    line-height: 1;
}

body .elementor-location-header .elementor-menu-cart__wrapper{
    padding-bottom: 0 !important;
}

body .elementor-location-header .elementor-menu-cart__toggle_button{
    border: unset !important;
    background-color: unset !important;
}

body .elementor-menu-cart__footer-buttons{
    display: flex;
    flex-flow: column-reverse nowrap;
}

/* Mini Cart END */

/* Checkout & Cart START */

body .page-content .wp-block-woocommerce-checkout,
body .page-content .wp-block-woocommerce-cart{
    padding: 60px 20px;
    margin: 0 !important;
}

body .page-content .wp-block-woocommerce-checkout .wc-block-components-product-metadata__description,
body .page-content .wp-block-woocommerce-cart .wc-block-components-product-metadata__description{
    display: none !important;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button,
body.woocommerce-account > .woocommerce .woocommerce-EditAccountForm  .woocommerce-Button,
body.woocommerce-account > .woocommerce .woocommerce-form .woocommerce-button,
body .page-content .wp-block-woocommerce-cart .wc-block-components-button,
body .page-content .wp-block-woocommerce-cart .wc-block-cart__submit-button,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-button,
body.single-product .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button{
    border-radius: 0;
    background-color: var(--primary-color);
    color: var(--color-black);
    border: 3px solid var(--color-black);
    font-size: var(--fontsize-link);
    font-family: var(--font-family-heading);
    text-decoration: none;
    box-shadow: 4px 4px 0px 0px var(--color-black);
    transition: .3s all ease;
}

body .elementor-menu-cart__footer-buttons .elementor-button.elementor-button--view-cart{
    background-color: var(--color-white);
}

:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button:hover,
body.woocommerce-account > .woocommerce .woocommerce-EditAccountForm .woocommerce-Button:hover,
body.woocommerce-account > .woocommerce .woocommerce-form .woocommerce-button:hover,
body .elementor-menu-cart__footer-buttons .elementor-button:hover,
body .page-content .wp-block-woocommerce-cart .wc-block-components-button:hover,
body .page-content .wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-button:hover,
body.single-product .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button:hover{
    background-color: var(--color-black);
    color: var(--primary-color);
    box-shadow: 0px 0px 0px 0px var(--color-black) !important;
}

body .page-content .wp-block-woocommerce-checkout .wc-block-components-product-name,
body .page-content .wp-block-woocommerce-checkout .wc-block-cart-item__quantity,
body .page-content .wp-block-woocommerce-cart .wc-block-components-product-name,
body .page-content .wp-block-woocommerce-cart .wc-block-cart-item__quantity{
    font-size: var(--fontsize-body);
}

body .page-content .wp-block-woocommerce-checkout .wc-block-components-product-metadata,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-product-metadata p,
body .page-content .wp-block-woocommerce-cart .wc-block-components-product-metadata,
body .page-content .wp-block-woocommerce-cart .wc-block-components-product-metadata p{
    font-size: var(--fontsize-label);
}

body .page-content .wp-block-woocommerce-checkout .wc-block-cart-item__prices,
body .page-content .wp-block-woocommerce-cart .wc-block-cart-item__prices{
    font-size: var(--fontsize-h6);
    font-family: var(--font-family-heading);
    font-weight: 800;
}

body .page-content .wp-block-woocommerce-cart .wc-block-cart__totals-title,
body .page-content .wp-block-woocommerce-cart table.wc-block-cart-items tr th,
body .page-content .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-totals-item__label,
body .page-content .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-totals-item__value,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-title,
body .page-content .wp-block-woocommerce-cart .wc-block-components-title{
    font-family: var(--font-family-heading);
    font-weight: 800;
}

body .page-content .wp-block-woocommerce-cart .wc-block-cart__totals-title,
body .page-content .wp-block-woocommerce-cart table.wc-block-cart-items tr th,
body .page-content .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices,
body .page-content .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body .page-content .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-totals-item__label,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-totals-item__value{
    font-size: var(--fontsize-h6);
}

body .page-content .wp-block-woocommerce-checkout .wc-block-components-sidebar.is-sticky{
    top: 115px;
}

body.admin-bar .page-content .wp-block-woocommerce-checkout .wc-block-components-sidebar.is-sticky{
    top: calc(115px + 32px);
}

body .page-content .wp-block-woocommerce-checkout:has(.elementor-sticky--effects) .wc-block-components-sidebar.is-sticky{
    top: 88px;
}

body.admin-bar .page-content .wp-block-woocommerce-checkout:has(.elementor-sticky--effects) .wc-block-components-sidebar.is-sticky{
    top: calc(88px + 32px);
}

body.single-product .elementor-add-to-cart .variations select,
body .page-content .wp-block-woocommerce-checkout .wc-blocks-components-select__select,
body .page-content .wp-block-woocommerce-cart .wc-block-components-text-input input,
body .page-content .wp-block-woocommerce-checkout .wc-block-components-text-input input{
    font-size: var(--fontsize-body);
    border-radius: 0;
    border: 2px solid var(--color-black);
}

body.single-product .elementor-add-to-cart .quantity {
    border: 2px solid var(--color-black);
    max-width: 90px;
    width: 100%;
    position: relative;
    box-shadow: 4px 4px 0px 0px var(--color-black);
    transition: .3s all ease;
}

body.single-product .elementor-add-to-cart .quantity:hover {
    box-shadow: 0 0 0 0 var(--color-black);
}

body.single-product .elementor-add-to-cart .quantity .qty {
    width: 100%;
    padding-inline: 30px;
    border: unset;
    text-align: center !important;
}

body.single-product .elementor-add-to-cart .quantity .qty::-webkit-outer-spin-button,
body.single-product .elementor-add-to-cart .quantity .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

body.single-product .elementor-add-to-cart .quantity .qty[type=number] {
    -moz-appearance:textfield;
}

body.single-product .elementor-add-to-cart .quantity .quantity-button {
    position: absolute;
    top: 0;
    cursor: pointer;
    height: 100%;
    width: 30px;
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-h6);
    font-weight: 800;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s all ease;
}

body.single-product .elementor-add-to-cart .quantity .quantity-button:hover {
    background-color: var(--primary-color);
}

body.single-product .elementor-add-to-cart .quantity .quantity-button.min {
    left: 0;
}

body.single-product .elementor-add-to-cart .quantity .quantity-button.plus {
    right: 0;
}

body .wc-block-components-product-badge{
    background-color: var(--color-black);
    color: var(--primary-color);
}

body .page-content .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block{
    border-radius: 0;
    border: 2px solid;
    background-color: var(--color-white);
}

body .page-content .wp-block-woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox__label{
    font-size: var(--e-global-typography-accent-font-size);
}

body .page-content .wp-block-woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox__label a{
    text-transform: none !important;
}

body.woocommerce-page .woocommerce .woocommerce-customer-details address{
    border: none;
    padding: 0;
}

body.woocommerce-cart #content,
body.woocommerce-checkout #content{
    max-width: 1288px;
}

body.woocommerce-page .woocommerce-order-overview.woocommerce-thankyou-order-details{
    padding: 0;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
}

body.woocommerce-page .woocommerce-notice.woocommerce-thankyou-order-received{
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-h1);
    text-align: center;
    text-transform: uppercase;
    line-height: 1.2;
    font-weight: 800;
    margin-bottom: 40px;
}

body .woocommerce ul.order_details li:not(:last-child){
    border-right: 1px solid #000;
}

body .woocommerce-checkout .fortispayment iframe body,
body .woocommerce-checkout .fortispayment iframe input,
body .woocommerce-checkout .fortispayment iframe optgroup,
body .woocommerce-checkout .fortispayment iframe select,
body .woocommerce-checkout .fortispayment iframe textarea{
    font-family: var(--font-family-body);
}

body .woocommerce-checkout .fortispayment iframe button,
body .woocommerce-checkout .fortispayment iframe .button{
    border: 2px solid var(--color-black);
    font-family: var(--font-family-heading);
    font-size: var(--fontsize-link);
    font-weight: 800;
    text-transform: uppercase;
    box-shadow: 4px 4px 0px 0px var(--color-black);
}


body .woocommerce-checkout .fortispayment iframe button:hover,
body .woocommerce-checkout .fortispayment iframe .button:hover,
body .woocommerce-checkout .fortispayment iframe button.is-selected,
body .woocommerce-checkout .fortispayment iframe .button.is-selected{
    box-shadow: 0px 0px 0px 0px var(--color-black);
}


/* Checkout & Cart END */

/* Woo Account START */

body.woocommerce-account > .woocommerce:before,
body.woocommerce-account > .woocommerce:after{
    display: none !important;
}

body.woocommerce-account > .woocommerce{
    padding: 60px 20px;
    position: relative;
    min-height: 47vh;
}

body.woocommerce-account > .woocommerce .woocommerce-ResetPassword,
body.woocommerce-account > .woocommerce .woocommerce-MyAccount-content,
body.woocommerce-account > .woocommerce .woocommerce-notices-wrapper,
body.woocommerce-account > .woocommerce h2,
body.woocommerce-account > .woocommerce .woocommerce-form{
    max-width: 800px;
    border: unset;
    padding: 0;
    margin: 0 auto;
}

body.woocommerce-account > .woocommerce .woocommerce-ResetPassword input{
    width: 100%;
    max-width: 100%;
}


body.woocommerce-account > .woocommerce form h2{
    max-width: unset;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-content{
    max-width: 1288px;
    padding: 60px 20px;
}

body:not(.woocommerce-checkout) .woocommerce form .form-row .input-text,
body:not(.woocommerce-checkout) .woocommerce form .form-row select,
body.woocommerce-account > .woocommerce .woocommerce-EditAccountForm input:not([type="checkbox"]),
body.woocommerce-account > .woocommerce .woocommerce-form input:not([type="checkbox"]),
body.woocommerce-account > .woocommerce .woocommerce-address-fields input:not([type="checkbox"]),
body.woocommerce-account > .woocommerce .woocommerce-billing-fields input:not([type="checkbox"]),
body.woocommerce-account > .woocommerce .woocommerce-address-fields .select2-selection,
body.woocommerce-account > .woocommerce .woocommerce-billing-fields .select2-selection,
body.woocommerce-account > .woocommerce .woocommerce-address-fields select,
body.woocommerce-account > .woocommerce .woocommerce-billing-fields select{
    border-radius: 0;
    border: 2px solid var(--color-black);
    height: 50px;
    font-size: var(--fontsize-body);
}

body.woocommerce-account > .woocommerce .woocommerce-address-fields .select2-selection__rendered,
body.woocommerce-account > .woocommerce .woocommerce-billing-fields .select2-selection__rendered{
    height: 48px;
    align-content: center;
}

body.woocommerce-account > .woocommerce .woocommerce-form .form-row:last-child{
    display: flex;
    flex-flow: row wrap;
}

body.woocommerce-account > .woocommerce .woocommerce-form .woocommerce-button{
    width: 100%;
    padding: 15px 24px;
    order: 1;
}

body.woocommerce-account > .woocommerce .woocommerce-form .woocommerce-form-login__rememberme{
    order: 2;
    display: flex;
    gap: 10px;
    align-items: center;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation{
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--color-black);
    padding: 7px 20px;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul{
    list-style: none;
    display: flex;
    max-width: 1248px;
    margin: 0 auto;
    gap: 30px;
    padding: 0;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul li a{
    color: var(--primary-color);
    font-weight: normal;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a{
    text-decoration: underline;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul li:last-child{
    margin-left: auto;
}

body.woocommerce-account > .woocommerce .woocommerce-MyAccount-content,
body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation{
    width: 100%;
    float: none;
}

body.woocommerce-account > .woocommerce .woocommerce-EditAccountForm fieldset{
    border: 2px solid var(--color-black);
    margin-bottom: 30px;
}

body.woocommerce-account > .woocommerce .woocommerce-EditAccountForm fieldset legend{
    padding: 0 5px;
}

body.woocommerce-account > .woocommerce .woocommerce-Address-title{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body.woocommerce-account > .woocommerce .woocommerce-Address-title h2{
    margin: unset;
}

body.woocommerce-account > .woocommerce .woocommerce-Address-title:before,
body.woocommerce-account > .woocommerce .woocommerce-Address-title:after{
    display: none !important;
}

body.woocommerce-account > .woocommerce .woocommerce-customer-details h2,
body.woocommerce-account > .woocommerce .woocommerce-order-details__title{
    max-width: 100%;
}

body.woocommerce-account > .woocommerce .woocommerce-customer-details h2{
    margin-bottom: 20px;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
    border: 1em solid var(--color-white);
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 20px !important;
    margin: 1em 0;
    font-size: .92em;
    border-radius: 2px;
    line-height: 1.5;
    background-color: var(--color-white);
    color: var(--color-black);
}

#add_payment_method #payment div.payment_box hr,
.woocommerce-cart #payment div.payment_box hr,
.woocommerce-checkout #payment div.payment_box hr {
    border: 1px solid var(--color-black);
}

/* Woo Account END */

/* Newsletter Form START */

.newsletter-form{
    display: flex;
}

.newsletter-form .wpforms-field-container{
    flex-direction: row;
}

/* Newsletter Form END */

/* Accessibility START */

.e-n-menu-item:not([data-closed]):focus-within > .e-n-menu-content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.e-n-menu-item:not([data-closed]):focus-within > .e-n-menu-content > .e-con {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.e-n-menu-item:not([data-closed]):focus-within .mega-menu .sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
}

.e-n-menu a:focus-visible,
.e-n-menu button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.e-n-menu-content .e-con.kb-open .sub-menu {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.elementor-location-header .e-fas-book-open path{
    display: none;
}
.elementor-location-header .e-fas-book-open:hover{
    opacity: 0.5;
}
.elementor-location-header .e-fas-book-open{
    background-image: url(./icons/book.svg);
    background-repeat: no-repeat;
    background-position: 100% 80%;
    background-size: 100%;
    width: 25px;
    height: 25px;
}
/* Accessibility END */


/* Responsive START */

@media screen and (max-width: 1919px) {
}

@media screen and (max-width: 1679px) {
}

@media screen and (max-width: 1365px) {

    /* Product Hotspots START */
    body.single-product .hotspot-wrap {
        overflow: hidden;
    }

    /* Product Hotspots END */
    /* Contact START */
    body .elementor .contact-wrap .e-con-inner {
        grid-template-columns: 1fr 1fr;
    }

    /* Contact END */
}

@media screen and (max-width: 1279px) {

    /* General START */
    .scroll-zoom-wrap, .scroll-zoom-wrap .e-con-inner {
        min-height: 42vh;
    }

    /* General END */
    /* Opener Swiper START */
    .opener-swiper .elementor-swiper-button-next,
    .opener-swiper .elementor-swiper-button-prev {
        display: none !important;
    }

    /* Opener Swiper END */
    /* Teaser Card START */
    body .teaser-card .elementor-element.elementor-widget-image img {
        height: 306px;
    }

    /* Teaser Card END */
    /* Product USPs Slider START */
    body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button-prev {
        right: 24%;
    }

    /* Product USPs Slider END */
    /* Product Hotspots START */
    body.single-product .e-hotspot__tooltip {
        display: none !important;
        opacity: 0;
        overflow: hidden;
        height: 0;
        clip: rect(0, 0, 0, 0);
        visibility: hidden;
    }

    body.single-product .e-hotspot .e-hotspot__button {
        transition: .3s all ease;
    }

    body.single-product .e-hotspot.e-hotspot--active .e-hotspot__button {
        transform: scale(1.4);
    }

    /* Product Hotspots END */
    /* Footer Teaser START */
    body .footer-teaser .elementor-element.footer-teaser-wrap {
        --min-height: 230px;
    }

    body.woocommerce-page > .woocommerce .woocommerce-Address{
        margin-bottom: 30px;
    }

    /* Footer Teaser END */
}

@media screen and (max-width: 1023px) {

    /* Contact Accordion START */
    .accordion-card.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-text {
        font-size: var(--fontsize-h4);
    }

    /* Contact Accordion END */
}

@media screen and (max-width: 767px) {
	
	div.wpforms-container-full .wpforms-field-captcha .wpforms-captcha-math{
		display: flex;
		align-items: center;
	}

	
	div.wpforms-container-full .wpforms-field-captcha input{
		width: unset;
		flex: 1;
	}
	
    /* Header START */
    body .elementor-location-header .header-inner.mobile .header-logo {
        padding-bottom: 0;
    }

    body .elementor-location-header .header-inner.mobile .e-con.e-child {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    body .elementor .product-nav.elementor-sticky--effects {
        top: 106px !important;
    }

    body .elementor-location-header:has(.elementor-sticky--effects) + .elementor:has(.product-nav.elementor-sticky--effects) .product-nav {
        top: 72px !important;
    }

    body .elementor-location-header #header-search-wrap {
        top: 102px !important;
    }

    body.admin-bar .elementor-location-header #header-search-wrap {
        top: calc(102px + 46px) !important;
    }

    body .elementor-location-header:has(.elementor-sticky--effects) #header-search-wrap {
        top: 67px !important;
    }

    body.admin-bar .elementor-location-header:has(.elementor-sticky--effects) #header-search-wrap {
        top: calc(67px + 46px);
    }

    .mobile-nav-holder .elementor-widget-nav-menu .elementor-nav-menu li a {
        justify-content: space-between;
    }

    .mobile-nav-holder .elementor-widget-nav-menu .elementor-nav-menu li a > .sub-arrow {
        padding: 0;
        margin: 0;
        transform: rotate(90deg);
        transition: all .3s ease;
    }

    .mobile-nav-holder .elementor-widget-nav-menu .elementor-nav-menu li a.highlighted > .sub-arrow {
        transform: rotate(-90deg);
    }

    .mobile-nav-holder .elementor-widget-nav-menu .elementor-nav-menu .sub-menu li a {
        font-weight: normal !important;
        border: none !important;
    }

    .mobile-nav-holder .elementor-nav-menu > li > .sub-menu > li > .sub-menu > li > a {
        padding-left: 5px !important;
    }

    /* Header END */
    /* Product START */
	
    .product-infobox.no-highlight .product-title b {
        padding-left: 15%;
    }

    .product-info-table .elementor-widget-text-editor:nth-child(odd) {
        border-bottom: none;
    }

    .product-info-table .elementor-widget-text-editor:nth-child(odd) p {
        margin-bottom: 0;
    }

    .product-info-table .elementor-widget-text-editor p {
        margin: 0;
    }

    .product-info-table .elementor-widget-text-editor:nth-child(even) p {
        margin-bottom: 5px;
    }

    .product-info-table .elementor-widget-text-editor:nth-child(odd) p {
        margin-top: 5px;
    }

    body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider {
        padding-bottom: 32px;
    }

    body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button-next {
        right: unset;
        left: 50%;
        transform: translateX(calc(-50% + 30px));
    }

    body .elementor .elementor-element .elementor-widget-n-carousel.product-usps-slider .elementor-swiper-button-prev {
        right: unset;
        left: 50%;
        transform: translateX(calc(-50% - 30px));
    }

    .scroll-zoom-wrap,
    .scroll-zoom-wrap .e-con-inner {
        perspective: 26dvh;
        min-height: 26vh;
    }

    .scroll-zoom-wrap .zoom-element {
        transform: translate(-50%, -50%) translate3D(0dvh, 0dvh, -100dvh);
        z-index: 1;
    }

    /* Product END */
    /* Login START */
	
    .elementor .ur-frontend-form form {
        margin: 0;
    }

    .elementor .ur-frontend-form .ur-form-row {
        margin-bottom: 0;
    }

    .elementor .ur-frontend-form form .ur-form-row .ur-form-grid {
        margin: 0 0 12px;
    }

    /* Login END */
    /* Taxonomy Filter START */
	
    body .elementor .elementor-widget-taxonomy-filter .e-filter-item {
        box-sizing: border-box;
        white-space: normal;
    }

    /* Taxonomy Filter END */
    /* Footer START */
	
    body .footer-teaser .elementor-element.footer-teaser-wrap {
        --min-height: 160px;
    }

    body .elementor-element.teaser-section .elementor-heading-title,
    body .footer-teaser .elementor-element.footer-teaser-wrap .elementor-heading-title {
        font-size: var(--fontsize-h6) !important;
    }

    /* Footer END */
	
    .faq-toggle-content img {
        width: 100%;
    }

    /* Account START */


    body.woocommerce-account > .woocommerce .woocommerce-MyAccount-content {
        padding: 60px 0 0;
    }

    body.woocommerce-account > .woocommerce .woocommerce-Address-title{
        flex-flow: column nowrap;
        align-items: flex-start;
    }

    /* Account END */
    /* Checkout START */

    body .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
        padding: 0;
        text-align: center;
    }

    body .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {display: none !important; }

    body .page-content .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title{
        margin: 0;
        border-top: unset !important;
    }

    body .page-content .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title,
    body .page-content .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__content{
        padding: 20px;
    }

    body .page-content .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-step__heading {
        padding: 20px 20px 0;
    }

    body .page-content .wp-block-woocommerce-checkout .wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block .wp-block-woocommerce-checkout-order-summary-block{
        margin-bottom: 30px;
        padding-bottom: 0;
    }

    /* Checkout END */

    /* Account START */

    body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation {
        width: calc(100% + 40px);
        position: static;
        margin: -60px -20px 0;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul{
        flex-flow: column nowrap;
        gap: 15px;
    }

    body.woocommerce-account > .woocommerce .woocommerce-MyAccount-navigation ul li:last-child {
        margin-left: unset;
    }

    /* Account END */
}

/* Responsive END */

.outtra-frame-wrapper {
    height: 0;
    z-index: 9999;
    position: fixed;
    width: 100%;
    display: none;
}

.outtra-frame {
    -webkit-tap-highlight-color: transparent;
    background: rgba(0, 0, 0, .5);
    border: 0 transparent;
    display: block;
    height: 0;
    left: 0;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%;
    z-index: 99999;
}

body.outtra-active {
    overflow: hidden; /* Locks scroll when class is present */
}

body.outtra-active .outtra-frame-wrapper {
    height: 100%;
    display: block;
    background: rgba(0, 0, 0, .5);
}

body.outtra-active .outtra-frame-wrapper .brlbs-cmpnt-content-blocker{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

body.outtra-active .outtra-frame {
    visibility: visible;
    height: 100%;
    opacity: 1;
}