:root {
    --p_font_size: ‭1rem;
    --h2_font_size: 1.5rem;
    --h3_font_size: 1.125rem;
    --h4_font_size: 0.8rem;
    --h5_font_size: 0.75rem;
    --h6_font_size: 0.625rem;  
    --banner-heading_size: 2.25rem;
    --banner-description_size: 1.125rem;

    --section_padding: 3.125rem;

    --primary-font-family: "Lato", "sans-serif";

    --heading-font-family: "Lato", "san-serif";

    --link-fong_family: 'Open Sans', sans-serif;

    --primary_color: #d4af37;
    --primary_color_light: #d4af37;

    --secondary_color: #29CCBC;

    --tertiary_color: #AEC6CF;


    --headings_color: #2c2c2c;

    --body_color: #5b5b5b;
    --body_color-dark: #000000;
    
    --body_color-light: #939393;

    --form_field_color: #f5f5f5;
}
@media all and ( max-width: 768px ) {
    :root {
        --section_padding: 2rem;
    }
}
/**********************************************
    GENERAL
**********************************************/

body *:last-child {
    margin-bottom: 0;
}
.elementor-section.overlay-55-right {
    overflow: hidden;
}
.elementor-section.overlay-55-right .elementor-background-overlay {
    bottom: calc( var( --section_padding ) + 2.5rem + 20px );
}
@media all and ( min-width: 767px ) {
    .elementor-section.overlay-55-right > .elementor-background-overlay {
        left: 45%;
        right: auto;
        top: auto;
    }
}
/**********************************************
    NAVIGATION
**********************************************/
.main-navigation {
    border-bottom: 2px solid var( --form_field_color );
}
#mobile-header .inside-navigation, 
.main-navigation.has-branding .inside-navigation, 
.main-navigation.has-sticky-branding.navigation-stick .inside-navigation {
    max-width: 1370px;
    margin-left: auto;
    margin-right: auto;
}
.main-navigation ul ul {
    width: 250px;
}
nav ul ul .menu-item-has-children .dropdown-menu-toggle {
    position: absolute;;
    top: 0;
    margin-top: 0;
    right: 0
    
}
.main-navigation .main-nav ul li > a {
    position: relative;
}
.main-navigation .main-nav ul li.menu-item-has-children > a {
    padding-left: 35x;
}
#mega-menu-wrap-secondary #mega-menu-secondary > li.mega-menu-item > a.mega-menu-link:after,
.main-navigation .main-nav ul li:not( .nav-button ) > a:not( .shopping-cart )::after {
    content: ' ';
    display: block;
    position: absolute;
    bottom: 0;
    border-top-style: solid;
    border-top-width: 2px;
    width: 0;
    left: 50%;
    margin-left: -35%;
    transition: all 320ms;
}
.main-navigation .main-nav ul li:not( .nav-button ) > a:not( .shopping-cart )::after
#mega-menu-wrap-secondary #mega-menu-secondary ul li:hover > a,
#mega-menu-wrap-secondary #mega-menu-secondary ul li[class*="mega-current-menu"] > a{
    background-color: rgba( 0, 0, 0, 0.5 ) !important;
    color: #fff !important;
}
#mega-menu-wrap-secondary #mega-menu-secondary > li[class*="mega-current-menu"] > a.mega-menu-link::after,
#mega-menu-wrap-secondary #mega-menu-secondary > li > a.mega-menu-link:hover::after,
#mega-menu-wrap-secondary #mega-menu-secondary > li.mega-toggle-on > a:after,
.main-navigation .main-nav ul li > a:hover::after,
.main-navigation .main-nav ul li[class*="current-menu-"] > a:after {
    width: 70% !important;
}
#generate-slideout-menu.main-navigation .main-nav ul li[class*="current-menu-"] > a:after,
#generate-slideout-menu.main-navigation .main-nav ul li > a:hover::after, 
#generate-slideout-menu.main-navigation .main-nav ul li[class*="current-menu-"] > a:after{
    width: 100% !important;
    margin-left: -50%;
}
#generate-slideout-menu .main-nav.secondary {
    margin-bottom: 0;
}
/**********************************************
    SECTION
**********************************************/

.elementor-section {
    padding-top: var( --section_padding );
    padding-bottom: var( --section_padding );
}
.elementor-section.no-padding-top {
    padding-top: 0;
    
}
.elementor-section.no-padding-bottom {
    padding-bottom: 0;
}
.banner-section.elementor-section {
    padding-top: 0;
    padding-bottom: 0;
}
@media all and ( max-width: 767px ) {
    .elementor-section.elementor-inner-section:first-child{
        padding-top: 0;
    }
    .elementor-section.elementor-inner-section{
        padding-bottom: 0;
    }
    .ee-breadcrumbs>li, .ee-button-group-gap-default .ee-button-group {
        margin: 0;
    }
    .ee-breadcrumbs>li, .ee-button-group-gap-default .ee-button-group>li {
        width: 100%;
    }
}
@media all and ( max-width: 480px ) {
    
}
.elementor-widget.elementor-widget-template:not( :last-child ) {
    margin-bottom: 0;
}
/**********************************************
    COLUMNS
**********************************************/
.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated,
.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated,
.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated {
    padding-top: 10px;
    padding-bottom: 10px;
}
.elementor-column-gap-extended>.elementor-row {
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
    width: calc( 100% + 1.875rem );
}
.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
.elementor-column-gap-wide>.elementor-row{
    margin-left: -1.5625rem;
    margin-right: -1.5625rem;
    width: calc( 100% + 3.125rem );
}
.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated {
    padding-left: 2.1875rem;
    padding-right: 2.1875rem;
}
.elementor-column-gap-wider>.elementor-row {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
    width: calc( 100% + 5rem );
}
.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated {
    padding-left: 3.125rem;
    padding-right: 3.125rem;
}
/************************************************
GRID
************************************************/
.display-grid.elementor-column > .elementor-column-wrap > .elementor-widget-wrap,
.display-grid.elementor-section > .elementor-container > .elementor-row{
    display: -ms-grid;
    display: grid;
}
.display-grid.elementor-column > .elementor-column-wrap > .elementor-widget-wrap > *,
.display-grid  > .elementor-container > .elementor-row > * {
    width: 100%;;
}
.display-grid > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element {
    margin-bottom: 0;
}
@media all and ( min-width: 768px ){
    .display-grid.elementor-column.grid-column-2 > .elementor-column-wrap > .elementor-widget-wrap,
    .display-grid.grid-column-2  > .elementor-container > .elementor-row{
        -ms-grid-columns: 1fr 2rem 1fr;
        grid-template-columns: repeat( 2,1fr );
        grid-gap: 2rem;
    }
    .display-grid.elementor-column.grid-column-3 > .elementor-column-wrap > .elementor-widget-wrap,
    .display-grid.grid-column-3  > .elementor-container > .elementor-row{
        -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
        grid-template-columns: repeat( 3 ,1fr );
        grid-gap: 2rem;
    }
}
/**********************************************
    ELEMENTOR TITLE
**********************************************/
.elementor-widget-heading .elementor-heading-title {
    line-height: 1.2em;
}
.elementor-widget-heading.section-title .elementor-heading-title {
    font-weight: 700;
}
.elementor-widget-heading .product_title.entry-title {
    font-weight: 700;
}
/**********************************************
    ELEMENTOR IMAGE BOX
**********************************************/
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-wrapper {
    position: relative;
    line-height: 0;
}
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-img {
    line-height: 0;
    margin-bottom: 0;
}
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-img img {
    width: 100%;
}
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-content{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row wrap;
    background-color: rgba( 0, 0, 0, 0.5 );
    color: #fff;
    pointer-events: none;
    line-height: 1.5em;
}
.elementor-widget-image-box.elementor-position-top.details-inside.no-background-color .elementor-image-box-content {
    background-color: transparent;
}
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-title {
    font-weight: 700;
}
.elementor-widget-image-box.elementor-position-top.details-inside .elementor-image-box-content > * {
    flex: 0 0 auto;
    width: 100%;
}
.elementor-widget-image-box > .elementor-widget-container {
    height: 100%;
}
.box-shadow.elementor-widget-image-box > .elementor-widget-image-box {
    box-shadow: 0px 0px 10px 0px #EBEBEB;
}
.justify-caption.elementor-widget-image-box .elementor-image-box-content {
    text-align: justify;
    text-align-last: center;
}
/**********************************************
   SWIPER
**********************************************/
.swiper-pagination-bullet {
    background: #aaaaaa;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var( --primary_color );
}
/**********************************************
    ELEMENTOR FORM
**********************************************/
.elementor-field-textual.elementor-size-sm {
    min-height: 40px;
}
.elementor-field-group .elementor-field-textual {
    border-width: 2px;
    border-color: var( --primary_color );
}
/**********************************************
    TYPOGRAPH
**********************************************/
body {
    color: var( --body_color );
    font-size: var( --p_font_size );
    font-family: "Lato", "sans-serif";
}
h1, h2 {
    font-size: var( --h2_font_size );
    line-height: 1.2em;
}
h3 {
    font-size: var( --h3_font_size );
    line-height: 1.5em;
}
h4 {
    font-size: var( --h4_font_size );
    line-height: 1.5em;
}
h5 {
    font-size: var( --h5_font_size );
    line-height: 1.5em;
}
h6 {
    font-size: var( --h6_font_size );
    line-height: 1.5em;
}
body,
p {
    font-size: var( --p_font_size );
    line-height: 1.5em;
}

/**********************************************
    BUTTONS
**********************************************/
a.button, 
a.button:visited,
a.elementor-button,
.elementor-button.elementor-size-sm,
.elementor-form button.elementor-button,
.transparent-primary.elementor-widget-button .elementor-button:hover,
.woocommerce #respond input#submit, 
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button,
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled],
.woocommerce a.button.alt,
.woocommerce #payment #place_order, 
.woocommerce-page #payment #place_order,
.woocommerce .coupon .button{
    background-color: var( --primary_color );
    border-color: var( --primary_color );
    font-weight: 700;
    padding: 1rem 2rem;
    font-family: var( --link-fong_family );
    color: #fff;
    font-size: var( --p_font_size );
    line-height: 1.2em;
    border-style: solid;
    border-width: 2px;
}
.single-product.woocommerce .quantity .qty {
    height: 3.75rem;
}
.transparent-primary.elementor-widget-button .elementor-button {
    background-color: transparent;
    border-color: var( --primary_color );
    color: var( --primary_color );
    border-width: 2px;
    border-style: solid;
}

/**********************************************
    NAVIGATION
**********************************************/
.main-navigation {
    position: relative;
}
.main-navigation .main-nav ul li a {
    font-family: var( --link-fong_family );
    line-height: 50px;
    font-weight: 700;
}
.main-navigation .wc-menu-item {
    position: relative;
    padding-left: calc( 3.75rem - 20px);
}
.main-navigation .wc-menu-item:before {
    border-right: 1px solid #dddddd;
    content: ' ';
    display: block;
    position: absolute;
    height: 100%;
    left: 1.875em;
    top: 0;
}
.inside-navigation.secondary-nav-inside .main-nav.secondary,
.inside-navigation.secondary-nav-inside .mega-menu-wrap {
    order: 2;
    margin-right: auto !important;
}
.main-navigation:not(.grid-container):not(.mobile-header-navigation) .inside-navigation.secondary-nav-inside .navigation-branding {
    margin-right: 0;
}
.main-navigation a.cart-contents:not(.has-svg-icon):before, 
.secondary-navigation a.cart-contents:not(.has-svg-icon):before {
    display: inline-flex;
    height: 1.83em;
    width: 1.83em;
    border-radius: 50%;
    background: var( --primary_color );
    color: #fff;
    align-items: center;
    justify-content: center;
    line-height: inherit;
    font-size: 1.4em;
    vertical-align: middle;
}
.nav-button.menu-item > a{
    border-width: 2px;
    border-style: solid;
    color: var( --primary_color ) !important;
    border-radius: 3px;
    font-weight: 700;
    line-height: 1.2em !important;
    padding-top: 10px;
    padding-bottom: 10px;
}
/**********************************************
    BANNER
**********************************************/
.banner.elementor-widget-slides .elementor-slides .swiper-slide-inner .elementor-slide-heading {
    font-family: var( --heading-font-family );
    font-size: var( --banner-heading_size );
    text-transform: uppercase;
    letter-spacing: 0.075em;
}
.banner.elementor-widget-slides .elementor-slides .swiper-slide-inner .elementor-slide-description {
    font-size: var( --banner-description_size );
    font-family: var( --primary-font-family );
    font-weight: 700;
}
.banner.elementor-widget-slides .elementor-slides .swiper-slide-inner .elementor-slide-button, 
.banner.elementor-widget-slides .elementor-slides .swiper-slide-inner .elementor-slide-button:hover {
    font-family: var( --link-fong_family );
    background-color: var( --primary_color );
    border-color: var( --primary_color );
    font-weight: 700;
    padding: 1.1rem 2rem;
}
.content-slides-container .title-wrap > .content-title {
    font-weight: 700;
}
.content-slides-container .content-details {
    font-size: var( --h3_font_size );
}
.content-slides-container .elementor-button {
    background-color: transparent;
    border-width: 2px;
    border-style: solid;
    color: var( --primary_color );
}
.banner-column-details-wrap > .elementor-column-wrap {
    background-color: #F5F5F5;
    padding: 10%;
}
.banner-column-details-wrap > .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget.elementor-widget-button:last-child {
    margin-top: 1rem;
}
/**********************************************
    LIST
**********************************************/
ul:not( [ class ] ) {
    margin-left: 0;
}
ul:not( [ class ] ),
ul:not( [ class ] ) > li {
    list-style: none;
    
}
ul:not( [ class ] ) > li {
    padding-left: 1.5rem;
    position: relative;
    margin-bottom: 1rem;
}
ul:not( [ class ] ) > li:last-child {
    margin-bottom: 0;
}
ul:not( [ class ] ) > li:before {
    content: "\f111";
    font-family: FontAwesome;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    line-height: inherit;
    font-size: 0.625rem;
    color: var( --primary_color );
}
.woocommerce-MyAccount-navigation > ul:not( [ class] ) > li {
    padding-left: 0;
    margin-bottom: 0;
}
.woocommerce-MyAccount-navigation > ul:not( [ class] ) > li:before {
    display: none;
}
/***********************************************
FORMS
************************************************/
.gform_wrapper {
    margin-top: 0;
}
@media all and ( min-width: 768px ) {
	.gform_wrapper .gform_body {
		margin-right: -16px;
		width: calc( 100% + 16px );
	}
}

.elementor-field-group .elementor-field-textual {
    border-color: var( --form_field_color );
    /*font-size: var( --h6_font_size );*/
    font-size: var( --p_font_size );
    padding: 1rem;
}
::-webkit-input-placeholder {
    text-transform: uppercase;
    color: #aeaeae;
}
::-moz-placeholder {
    text-transform: none;
    color: #aeaeae;
}
:-ms-input-placeholder {
    text-transform: normal;
    color: #aeaeae;
}
::-ms-input-placeholder {
    text-transform: none;
    color: #aeaeae;
}
::placeholder {
    text-transform: none;
    color: #aeaeae;
}
button, html input[type="button"], input[type="reset"], input[type="submit"]  {
    background-color: var( --primary_color );
    font-weight: 700;
}
body .gform_wrapper .gform_footer input.button, body .gform_wrapper .gform_footer input[type=submit] {
    padding-left: 2rem;
    padding-right: 2rem;
}
body .gform_wrapper li.hidden_label input {
    margin-top: 0;
}
.select2-container--default .select2-selection--single,
input[type="text"], 
input[type="email"], 
input[type="url"], 
input[type="password"], 
input[type="search"], 
input[type="tel"], 
input[type="number"], 
textarea, 
select:not( .ui-datepicker-month ):not( .ui-datepicker-year ),
.gform_wrapper .top_label input.medium, 
.gform_wrapper .top_label select.medium,
div.gform_wrapper .ginput_complex select,
body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper .chosen-container-single .chosen-single,
.gform_wrapper textarea,
body .gform_wrapper .chosen-container .chosen-choices,
.woocommerce #content table.cart td.actions .input-text, 
.woocommerce table.cart td.actions .input-text, 
.woocommerce-page #content table.cart td.actions .input-text, 
.woocommerce-page table.cart td.actions .input-text {
    padding: 1rem;
    border: solid 2px var( --primary_color );
    border-radius: 5px !important;
    background-color: #fff !important;
    background-image:none;
    display: block;
    font-size: var( --p_font_size );
    line-height: 1em;
    width: 100%;
}
body .gform_wrapper .chosen-container-multi .chosen-choices li.search-choice {
    border: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    background-image: none;
}
.ginput_container_date {
    position: relative;
}
body .gform_wrapper .top_label input.datepicker_with_icon {
    padding-left: 40px !important;
}
body .gform_wrapper img.ui-datepicker-trigger {
    position: absolute;
    left: 15px;
    top: 50%;
    -webkit-transform: translateY( -50% );
        -ms-transform: translateY( -50% );
            transform: translateY( -50% );
}
.gform_wrapper textarea.medium {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
}
.chosen-focus-input,
select.ui-datepicker-month,
select.ui-datepicker-year {
    padding: 0px !important;
}
body .form-container .form-row textarea {
    height: auto;
    resize: none;
}
body .gform_wrapper .chosen-container-single .chosen-single {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    line-height: 1.4em;
}
body .gform_wrapper li.gfield.gfield_error, 
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning{
    padding-top: 0;
    background-color: transparent;
    border: none;
}
html body .gform_wrapper select.medium.gfield_select+div.chosen-container-multi[style], 
html body .gform_wrapper select.medium.gfield_select+div.chosen-container-single[style] {
    width: 100% !important;
}
body .select2-container--default .select2-selection--single,
body .select2-container--default .select2-selection--single .select2-selection__arrow,
body .gform_wrapper .chosen-container-single .chosen-single {
    height: auto;
}
body .gform_wrapper .top_label input.medium, 
body .gform_wrapper .top_label select.medium,
body .gform_wrapper.gform_validation_error .top_label input.medium, 
body .gform_wrapper.gform_validation_error .top_label select.medium,
body .gform_wrapper .top_label input.large.datepicker, 
body .gform_wrapper .top_label input.medium.datepicker, 
body .gform_wrapper .top_label input.small.datepicker{
    width: 100%;
}
.woocommerce form .form-row .select2-container,
.select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: inherit;
    max-width: 100%;
}
body .gform_wrapper .chosen-container-single .chosen-single {
    background-image: none;
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    justify-content: flex-start;
}
body .gform_wrapper .chosen-container-single .chosen-single div b {
    background-image: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;

    font-family: "FontAwesome";
}
body .gform_wrapper .chosen-container-single .chosen-single div b:before{
    content: "\f0d7";
    font-size: inherit;
}
.gform_wrapper .chosen-with-drop.chosen-container-single .chosen-single div b:before {
    content: "\f0d8";
}
.gfield.upload-insurance-button .ginput_container_fileupload {
    display: none;
}
.gfield.upload-insurance-button a.button > i:first-child {
    margin-right: 5px;
}
.gform_wrapper .ginput_complex.ginput_container_address .ginput_right {
    margin-right: 0 !important;
}
.gform_wrapper .ginput_complex.ginput_container_address span.ginput_right+span.ginput_left {
    margin-right: 0;
    padding-right: 0 !important;
}
.gform_wrapper.gf_browser_chrome .gfield_checkbox li input, 
.gform_wrapper.gf_browser_chrome .gfield_checkbox li input[type=checkbox], 
.gform_wrapper.gf_browser_chrome .gfield_radio li input[type=radio] {
    margin-top: 0;
    height: 1.5em;
}
body .gform_wrapper ul li.field_description_below div.ginput_container_checkbox, 
body .gform_wrapper ul li.field_description_below div.ginput_container_radio {
    margin-top: 0;
}
.gform_wrapper .gfield_radio li label{
    margin-top: 0;
}
.gform_wrapper .gfield_checkbox li label, 
.gform_wrapper .gfield_radio li label {
    font-size: inherit;
}
.gform_wrapper .field_description_below .gfield_description.validation_message {
    padding-top: 0;
    font-size: 1em;
}
.woocommerce form .form-row label.field-label,
.field-label {
    font-size: var( --h5_font_size );
    font-weight: 700;
    line-height: 1.5em;
    margin-bottom: 5px;
}
.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    padding-right: 0;
}
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    border: none;
    background-color: transparent;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}
/**********************************************
    WOOCOMMERCE
**********************************************/
.woocommerce .woocommerce-breadcrumb {
    color: var( --primary_color );
    font-size: 11px;
}
.elementor-widget.elementor-widget-woocommerce-breadcrumb {
    margin-bottom: 0;
}
.woocommerce .woocommerce-breadcrumb a {
    color: #767676;
}
.inside-wc-product-image {
    display: block;
}
.woocommerce ul.products li.product {
    box-shadow: 0 0 10px rgba( 235, 235 , 235 , 0.75 );
    display: flex;
    flex-flow: row wrap;
}
.woocommerce ul.products li.product > * {
    flex: 0 0 auto;
    width: 100%;
}
.woocommerce ul.products li.product .button:last-child {
    margin-top: 2.5rem;
    margin-bottom: 2rem;
}
.woocommerce ul.products li.product .product_short-desc {
    font-size: var( --h4_font_size );
    color: #5b5b5b;
}
.woocommerce-product-details__short-description li,
.woocommerce ul.products li.product .product_short-desc li {
    font-weight: 700;
}
.woocommerce ul.products li.product .button {
    border-color: var( --primary_color );
    color: #fff;
    background-color: var( --primary_color );
    font-weight: 700;
    padding: 1rem 3.125rem;
    align-self: flex-end;
    max-width: 80%;
    text-align: center;
    
}
ul.products li.product a.woocommerce-loop-product__link {
    color: inherit;
}
ul.products li.product a.woocommerce-loop-product__link > :not( .wc-product-image ) {
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link > h2:not(:first-child),
.woocommerce .up-sells ul.products li.product .woocommerce-LoopProduct-link h2, 
.woocommerce .cross-sells ul.products li.product .woocommerce-LoopProduct-link h2, 
.woocommerce .related ul.products li.product .woocommerce-LoopProduct-link h2 {
    margin-top: 10%;
    font-weight: 700;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link .wc-product-image:not( :last-child ) {
    border-bottom: 1px solid rgba( 235, 235 , 235 , 0.75 );
    padding: 10%;
}
@media all and ( min-width: 768px ) {
    .woocommerce div.product div.images.woocommerce-product-gallery {
        margin-bottom: 0;
    }
}
/**********************************************
   WOOCOMMERCE LOGIN
**********************************************/
.woocommerce-form-login__submit,
.woocommerce-form-register .woocommerce-create-account-btn,
.registration-button-wrap a.button{
    width: 100%;
    border-width: 2px;
}
.woocommerce-LostPassword,
.registration-button-wrap {
    text-align: center;
}
.or-register {
    font-weight: 700;
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.woocommerce-privacy-policy-text {
    margin-bottom: 1rem;
}
.login-button-wrap {
    margin-top: 1rem;
    text-align: center;
}
/**********************************************
    ELEMENTOR TOGGLE
**********************************************/
.elementor-toggle .elementor-tab-title {
    font-weight: 700;
}
.elementor-toggle .elementor-tab-title,
.elementor-toggle .elementor-tab-content {
    border-bottom-color: var( --primary_color );
    border-bottom-width: 2px;
}
/**********************************************
    WOOCOMMERCE SINGLE
**********************************************/
.quantity.buttons-added {
    display: flex;
    white-space: nowrap;
}
.woocommerce .add-request-quote-button.button, 
.woocommerce .add-request-quote-button-addons.button,
.woocommerce button.button.alt,
.registration-button-wrap a.button {
    border: 2px solid;
    color: var( --primary_color );
    background-color: #fff;
    font-weight: 700;
    padding: 1rem;
    min-width: 230px;
}
body.woocommerce .add-request-quote-button.button, 
body.woocommerce .add-request-quote-button-addons.button {
    background-color: transparent !important;
    border-width: 2px;
    border-style: solid;
    color: var( --primary_color ) !important;
    text-align: center;
}
.woocommerce li.product button.button.alt:last-child {
    margin-top: 3rem;
}
.product-details-column-wrap .elementor-widget-woocommerce-product-add-to-cart {
    margin-top: 4rem;
}
.woocommerce div.product.elementor .quantity.hidden + .button {
    margin-left: 0;
}
.elementor-widget-woocommerce-product-meta .product_meta,
.elementor-widget-woocommerce-product-meta .product_meta a{
    color: #c0bbbb;
}
.elementor-widget-woocommerce-product-meta .product_meta {
    border-top: none;
    padding-top: 0;
}
.woocommerce-product-details__short-description {
    color: var( --body_color );
}
.product-title-label.elementor-widget-heading .elementor-heading-title {
    position: relative;
    color: var( --primary_color );
    font-weight: 700;
}
.product-title-label.elementor-widget-heading .elementor-heading-title:before{
    position: absolute;
    top: 50%;
    width: 200%;
    left: 0;
    transform: translateX( calc( -100% - 2rem) );
    border-top: 2px solid;
    color: inherit;
    display: block;
    content: ' ';
}
.related.products > h2 {
    display: none;
}
/**********************************************
    PRODUCT ARCHIVE
**********************************************/
.product-image-column-wrap.elementor-column,
.banner-image-column-wrap.elementor-column {
    position: relative;
    min-height: 450px;
}
.product-image-column-wrap.elementor-column .elementor-widget-nerb-product-cat_image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.product-image-column-wrap.elementor-column .elementor-widget-nerb-product-cat_image .elementor-widget-container{
    height: 100%;
}
.product-image-column-wrap.elementor-column .term-image{
    height: 100%;
}
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li {
    border: none;
}
.woocommerce nav.woocommerce-pagination ul li a:focus, 
.woocommerce nav.woocommerce-pagination ul li a:hover, 
.woocommerce nav.woocommerce-pagination ul li span.current {
    background-color: transparent;
    font-weight: 700;
    color: #5b5b5b;
}
.woocommerce nav.woocommerce-pagination ul li a {
    color: #c9c9c9;
    background-color: transparent;
    font-weight: 700;
}
.woo-product-filter .prdctfltr-widget .prdctfltr_wc.prdctfltr_maxheight .prdctfltr_woocommerce_ordering .prdctfltr_filter_wrapper {
    overflow: visible !important;
}
@media all and ( min-width: 768px ) {
    .woo-product-filter .prdctfltr_filter  .prdctfltr_add_scroll  {
        position: absolute;
        min-width: 250px;
        background-color: #fff;
        z-index: 99;
        padding: 10px;
        box-shadow: 0 0 5px rgba( 235, 235 , 235 , 0.75 );
    }
}

.prdctfltr-widget .prdctfltr_terms_customized_select i.prdctfltr-down, 
.prdctfltr-widget .prdctfltr_terms_customized_select i.prdctfltr-up, 
.prdctfltr-widget .pf_default_select i.prdctfltr-down, 
.prdctfltr-widget .pf_default_select i.prdctfltr-up {
    margin-left: 5px;
}
.pfw--has-childeren > span > .prdctfltr-plus {
    position: absolute;
    top: 0;
    right: 0;
}
label.pfw--has-childeren > span{
    position: relative;
    padding-right: 1.2em;
}
/**********************************************
    PRODUCT FILTER
**********************************************/
.woo-product-filter.elementor-widget-sidebar .prdctfltr_filter_inner {
    display: flex;
    flex-flow: row wrap;
}
.widget.widget_woo_sorting_filter {
    line-height: 1.5em;
}
.widget.widget_woo_sorting_filter,
.widget.widget_woo_sorting_filter select,
.woo-product-filter.elementor-widget-sidebar .widget-title,
.woo-product-filter.elementor-widget-sidebar {
    font-size: var( --h4_font_size );
}
.woo-product-filter.elementor-widget-sidebar {
    line-height: 1.5em;
}
.prdctfltr_wc_widget .prdctfltr_collector {
    display: none;
}
.prdctfltr-widget .prdctfltr_widget_title {
    text-transform: uppercase;
}

@media all and ( min-width: 768px ) {
    .woo-product-filter.elementor-widget-sidebar .prdctfltr-widget .prdctfltr_wc .prdctfltr_woocommerce_ordering .prdctfltr_filter {
        width: auto;
    }
    .woo-product-filter.elementor-widget-sidebar .prdctfltr_woocommerce .prdctfltr_filter {
        flex: 0 0 auto;
        margin-right: 4rem !important;
        width: auto;
    }
    .woo-product-filter.elementor-widget-sidebar > .elementor-widget-container {
        display: flex;
    }
    .woo-product-filter.elementor-widget-sidebar > .elementor-widget-container > * {
        flex: 0 0 auto;
    }
    .woo-product-filter.elementor-widget-sidebar > .elementor-widget-container > .prdctfltr-widget {
        margin-bottom: 0;
        flex-basis: auto;
        flex-grow: 1;
    }
    .woo-product-filter.elementor-widget-sidebar > .elementor-widget-container > .widget_woo_sorting_filter {
        flex-basis: auto;
    }
    .prdctfltr-widget .prdctfltr_wc .prdctfltr_woocommerce_ordering .prdctfltr_filter {
        margin-bottom: 0 !important;
    }
    .widget_woo_sorting_filter .filter-wrap {
        display: inline-block;
        
    }
    .widget_woo_sorting_filter .woo-filter + .theme-ppp {
        margin-left: 30px;
    }
}
.prdctfltr_woocommerce_ordering .prdctfltr_buttons {
    display: none;
}

.widget_woo_sorting_filter .filter-wrap {
    text-transform: uppercase;
}
.widget_woo_sorting_filter .filter-wrap a {
    color: inherit;
}
.widget_woo_sorting_filter .filter-wrap .theme-ppp__option.is-active {
    text-decoration: underline;
    color: #000;
    font-weight: 700;
}
.theme-ppp a {
    margin-left: 15px;
}

.pf_rngstyle_modern.prdctfltr_filter .irs-bar,
.pf_rngstyle_modern.prdctfltr_filter .irs-from, 
.pf_rngstyle_modern.prdctfltr_filter .irs-to, 
.pf_rngstyle_modern.prdctfltr_filter .irs-single {
    background-image: none;
    background-color: var( --primary_color );
}
.pf_rngstyle_modern.prdctfltr_filter .irs-from:after, 
.pf_rngstyle_modern.prdctfltr_filter .irs-to:after, 
.pf_rngstyle_modern.prdctfltr_filter .irs-single:after {
    border-top-color: var( --primary_color );
}
.prdctfltr_wc .prdctfltr_woocommerce_ordering .prdctfltr_filter label>span {
    position: relative;
    padding-left: 1.3em;
    display: block;
}
.prdctfltr_wc.prdctfltr_wc_widget.woocommerce .prdctfltr_filter label>span:before,
.prdctfltr_wc.prdctfltr_wc_widget.woocommerce .prdctfltr_filter label.prdctfltr_active>span:before {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 0.5em;
}
.prdctfltr_wc.prdctfltr_wc_widget.woocommerce .prdctfltr_filter label.prdctfltr_active>span:before {
    border-color: var( --primary_color );
}
/**********************************************
    WOOCOMMERCE ARCHIVE
**********************************************/
.wc-columns-container .form-wppp-select {
    height: 1px;
    width: 1px;
    overflow: hidden;
    pointer-events: none;
}

.elementor-page-title .elementor-heading-title {
    font-weight: 700;
}
.wc-columns-container .woocommerce-ordering {
    display: none;
}
.elementor-widget-sidebar .woocommerce-ordering {
    float: none;
    margin: 0;
    display: inline-block;
}
.elementor-widget-sidebar .woocommerce-ordering:after {
    line-height: inherit;
    top: 0;
    right: 0.5em;
    line-height: 1em;
    font-size: inherit;
}
.elementor-widget-sidebar .woocommerce-ordering select {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
    border: none !important;
    color: inherit;
    background-color: transparent;
    width: auto;
    padding-right: 1.5em;
    text-transform: uppercase;
    font-size: inherit;
    font-family: "Lato", sans-serif;
}
li.product .sku {
    font-weight: 700;
    color: #c0bbbb;
    font-size: var( --h5_font_size );
    margin-bottom: 2rem !important;
}
/**********************************************
    CHECKOUT
**********************************************/
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout-payment .woocommerce-form-coupon-toggle {
    margin-bottom: 24px;
}
.checkout_coupon.woocommerce-form-coupon .form-row {
    width: 100%;
}
.woocommerce-notices-wrapper:not( :empty ) {
    margin-bottom: 2rem;
}
.site-content .woocommerce-notices-wrapper {
    margin-bottom: 0 !important;
}
.woocommerce-notices-wrapper + .woocommerce-notices-wrapper {
    margin-bottom: 0;
}
#order_review_heading,
.woocommerce-billing-fields > h3 {
    font-weight: 700;
}
/**********************************************
    FOOTER
**********************************************/
.site-footer #footer-widgets {
    border-top: 2px solid #e4e4e4;
}
.footer-widget-1.grid-33,
.footer-widget-3.grid-33 {
    width: 16.67%;
}
.footer-widget-2.grid-33 {
    width: 66.66%;
    display: inline-grid;
    grid-template-columns: repeat( 4,1fr );
    grid-gap: 2rem;
}
.inside-footer-widgets>div:nth-child(odd) {
    clear: none;
}
.footer-widget-2.grid-33:before,
.footer-widget-2.grid-33:after {
    display: none;
}
body .site-footer .grid-container {
    max-width: 1350px;
}
.site-footer .footer-widgets .widget-title {
    font-size: 1rem;
    color: var( --body_color-dark );
    font-weight: 700;
}
.site-footer,
.site-footer a {
    color: var( --body_color-light );
    font-size: 1rem;
}
.site-footer a {
    font-weight: 700;
}
.site-footer .elementor-social-icons-wrapper {
    line-height: 1em;
}
.site-footer .elementor-icon.elementor-social-icon {
    font-size: 2rem;
}
@media all and ( max-width: 1023px ) {
    .footer-widget-2.grid-33 {
        grid-template-columns: repeat( 2,1fr );
    }
}
@media all and ( max-width: 767px ) {
    .site-footer {
        text-align: center;
    }
    .footer-widget-1.grid-33,
    .footer-widget-3.grid-33 {
        width: 100%;
    }
    .footer-widget-2.grid-33 {
        width: 100%;
        grid-template-columns: repeat( 2,1fr );
    }
}
.site-footer .site-info {
    background-color: var( --primary_color );
}
/**********************************************
    REQUEST A QUOTE PAGE
**********************************************/
.woocommerce.ywraq-wrapper .woocommerce-error, 
.woocommerce.ywraq-wrapper .woocommerce-info, 
.woocommerce.ywraq-wrapper .woocommerce-message {
    margin-top: 2em;
}