/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
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: 1.0.1
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
*/
html, body {
	overflow-x: hidden;
}
body {
	position: relative
}
/*-----GRAVITY FORMS-----*/
.gform_required_legend {
    display: none!important;
}
.gform_wrapper .gform_fields {
    grid-row-gap: 15px !important;
	grid-column-gap: 15px !important;
}
/*All input areas text color*/
.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
	color: #000000!important;
}
body .gform_wrapper ::placeholder,
body .gform_wrapper ::-webkit-input-placeholder,
body .gform_wrapper input[placeholder] {
	color: #44769D!important;
}
/*Text fields*/
.gform_wrapper
  input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
	border-radius: 5px;
	padding: 15px 15px 15px 15px;
	border-color: #FFFFFF;
	border-width: 1px;
	border-style: solid;
}
/*Paragraph fields*/
.gform_wrapper textarea {
	padding: 15px 15px 15px 15px !important;
	border-width: 1px;
	border-color: #FFFFFF;
	border-style: solid;
	border-radius: 5px;
}
/*Select fields*/
.gform_wrapper select {
	border-radius: 5px !important;
	border: solid 1px #FFFFFF!important;
	padding: 8px!important;
}
/*Field lables*/
.gform_wrapper label.gfield_label,
.gform_wrapper legend.gfield_label {
	font-weight: 500;
	color:  var( --e-global-color-accent );
}
/*Radio button and checkbox alignment*/
.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: 0px;
}
/*Radio button and checkbox text color*/
.gform_wrapper.gravity-theme .gfield-choice-input+label {
	color: var( --e-global-color-primary );
}
/*'Required' text color*/
.gform_wrapper .gfield_required {
    color:  var( --e-global-color-accent );
}
/*Submit button styling*/
.gform-footer {
	margin-top: 15px!important;
}
.gform-footer .gform_button {
	background-color: var(--e-global-color-accent)!important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-accent-font-size)!important;
    font-weight: var(--e-global-typography-accent-font-weight)!important;
    text-transform: var(--e-global-typography-accent-text-transform)!important;
    font-style: var(--e-global-typography-accent-font-style)!important;
    line-height: var(--e-global-typography-accent-line-height)!important;
    text-decoration: var(--e-global-typography-accent-text-decoration)!important;
	background-image: linear-gradient(152deg, var(--e-global-color-accent) 0%, var(--e-global-color-5179457) 100%)!important;
    border-radius: 29px 29px 29px 29px!important;
    padding: 12px 30px 12px 30px!important;
}

/*----Out of stock notifier----*/

button.button.cwg_popup_submit {
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0px !important;
  color: var(--e-global-color-accent) !important;
  padding-left: 10px !important;
  margin-top: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
  font-size: var(--e-global-typography-accent-font-size) !important;
  font-weight: var(--e-global-typography-accent-font-weight) !important;
  text-transform: var(--e-global-typography-accent-text-transform) !important;
  font-style: var(--e-global-typography-accent-font-style) !important;
  line-height: var(--e-global-typography-accent-line-height) !important;
  text-decoration: var(--e-global-typography-accent-text-decoration) !important;
}

.cwginstock-panel-heading h4 {
	font-size: 18px !important;
}	
	
p.stock.out-of-stock {
  display: inline-block !important;
  background-color: var(--e-global-color-accent)!important;
  color: #ffffff !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 3px 8px !important;
  border-radius: 2px !important;
  line-height: 1.2 !important;
  margin: 8px 0 !important;
}
/*-----PRODUCT SEARCH BAR-----*/
.e-search-submit {
	background-image: none!important;
}
.e-search-results .price {
	font-size: 11px!important;
	color: var(--e-global-color-primary)!important;
}

.e-search-input:focus,
.e-search-input:focus-visible,
.e-search-results-container:focus,
.e-search-results-container:focus-visible,
.e-search-submit:focus,
.e-search-submit:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/* Ensure search container and results drop down appear above the menu */
.e-search-form,
.e-search-results-container {
    z-index: 9999 !important;
}

search.e-search {
    position: relative !important;
    z-index: 9999 !important;
}

.e-search-results-container {
    position: absolute !important;
    z-index: 99999 !important;
}


/*-----SINGLE PRODUCT-----*/
.woocommerce div.product .stock {
    color: var( --e-global-color-primary );
}
.variation table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background-color: #fff;
}
.variation table td, table th {
    padding: 0px;
}
.variation label {
    line-height: 2.5;
    float: left;
}

.single_add_to_cart_button {
background-color: var(--e-global-color-accent)!important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-accent-font-size)!important;
    font-weight: var(--e-global-typography-accent-font-weight)!important;
    text-transform: var(--e-global-typography-accent-text-transform)!important;
    font-style: var(--e-global-typography-accent-font-style)!important;
    line-height: var(--e-global-typography-accent-line-height)!important;
    text-decoration: var(--e-global-typography-accent-text-decoration)!important;
	background-image: linear-gradient(152deg, var(--e-global-color-accent) 0%, var(--e-global-color-5179457) 100%)!important;
    border-radius: 29px 29px 29px 29px!important;
    padding: 12px 30px 12px 30px!important;
}

span.onsale {
    background-color: #db362d !important;
    color: #ffffff;
}

p.stock.out-of-stock {
  line-height: 1;
  margin-bottom: 0;
}

/*-----SINGLE PRODUCT - BETTER TABS-----*/


.woocommerce div.product .woocommerce-tabs.wc-tabs-wrapper {
    border: none !important;
    margin-top: 0px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin: 0 0 20px 0 !important;
    background-color: transparent !important;
    border-bottom: 2px solid #eaeaea !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    flex: 1;
    text-align: center;
    padding: 12px 30px;
    margin: 0 !important;
    border: none !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    transition: all 0.3s ease;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: #888888;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background-color: transparent !important;
    border-bottom: 5px solid var(--e-global-color-accent) !important; 
    position: relative;
    top: 2px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #000000; 
}


.woocommerce div.product.elementor .woocommerce-tabs .panel {
    padding: 20px 10px; 
    background: transparent !important;
}

.woocommerce table.shop_attributes td, 
.woocommerce-tabs .woocommerce-product-attributes.shop_attributes th {
    background-color: #fcfcfc !important; 
    border: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

@media (max-width: 767px) {
    .woocommerce div.product .woocommerce-tabs ul.tabs {
        flex-direction: column;
        border-bottom: none !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li {
        text-align: left;
        border-bottom: 3px solid #eaeaea !important;
        padding: 10px 0px;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
        border-bottom: 3px solid var(--e-global-color-accent) !important;
        top: 0;
    }
}

/*-----CART-----*/
.coupon .input-text {
	padding: 11px !important;
	border-radius: 0px !important;
}

a.button.wc-backward {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-accent-font-size)!important;
    font-weight: var(--e-global-typography-accent-font-weight)!important;
    line-height: var(--e-global-typography-accent-line-height)!important;
    border-style: solid!important;
    border-width: 2px 2px 2px 2px!important;
    border-radius: 30px!important;
    padding: 10px 20px 10px 20px!important;
    color: #FFFFFF!important;
    background-color: var(--e-global-color-accent)!important;
    border-color: var(--e-global-color-accent)!important;
    transition: all 0.2s!important;
}

/*-----MINI CART IN MENU-----*/
#elementor-menu-cart__toggle_button {
	background-image: none!important;
}

.e-n-menu-toggle {
	background-image: none!important;
}
}

/*-----BITS AND PIECES-----*/
.elementor-widget-woocommerce-products .woocommerce-loop-product__buttons a {
	background-image: linear-gradient(152deg, var(--e-global-color-accent) 0%, var(--e-global-color-5179457) 100%)!important;
}
.elementor-products-grid .products .woocommerce-loop-product__buttons a {
	background-image: linear-gradient(152deg, var(--e-global-color-accent) 0%, var(--e-global-color-5179457) 100%)!important;
}
.woocommerce.widget_product_categories ul {
	font-size: 14px!important;
	padding-left: 20px!important;
}
.woocommerce-ordering select {
	border: solid 1px #FFFFFF!important;
	border-radius: 29px!important;
	color: var( --e-global-color-primary )!important;
}
.woocommerce-loop-category__title .count {
	display: none!important;
}

.woocommerce ul.products li.product a.added_to_cart.wc-forward,
.woocommerce-page ul.products li.product a.added_to_cart.wc-forward,
.site-content a.added_to_cart.wc-forward,
div.product a.added_to_cart.wc-forward {
    background: none !important;
    background-color: transparent !important;
    color: #000000 !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    text-decoration: none !important;
    font-weight: bold !important;
    display: inline-block !important;
    margin-top: 10px !important;
    margin-left: 0 !important;
    width: auto !important;
    height: auto !important;
    line-height: normal !important;
}

/* Target the accordion title ONLY when it is open/expanded */
summary.e-n-accordion-item-title[aria-expanded="true"] {
  border-bottom-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
  transition: border-radius 0s !important; 
}

summary.e-n-accordion-item-title {
  transition: border-radius 0.2s ease-in-out 0.25s !important;
}


/*----WOOCOMMERCE NOTICES----*/

.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  border: 0px !important;
  font-family: var(--e-global-typography-text-font-family), sans-serif !important;
  color: var(--e-global-color-text);
  background-color: #FFFFFF;
  border-radius: 20px !important;
  padding: 20px 20px;
	font-size: 16px!important;
	display: flex!important;
	align-items: center!important;
	flex-wrap: wrap!important;
	gap: 10px;
}

.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-message::before {
  content: none !important;
  display: none !important;
}

.woocommerce-MyAccount-content .button {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-accent-font-size)!important;
    font-weight: var(--e-global-typography-accent-font-weight)!important;
    line-height: var(--e-global-typography-accent-line-height)!important;
    border-style: solid!important;
    border-width: 2px 2px 2px 2px!important;
    border-radius: 30px!important;
    padding: 10px 20px 10px 20px!important;
    color: #FFFFFF!important;
    background-color: var(--e-global-color-accent)!important;
    border-color: var(--e-global-color-accent)!important;
    transition: all 0.2s!important;
} 


/* Custom Red Notice Box Styling */
.woocommerce-error,
.custom-free-shipping-notice {
  background-color: none !important; 
  color: red !important; 
  border-color: none !important;
}

/* Ensure text inside wrapper maintains dark red color */
.custom-free-shipping-notice {
  font-weight: 500;
}

.select2-container .select2-selection--single {
  height: auto !important;
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
}


/*----TICKER TAPE BANNER----*/
.ticker-tape-effect {
  width: max-content !important;
  max-width: none !important; 
  flex-shrink: 0 !important;
  animation: ticker 120s linear infinite !important;
}
.ticker-tape-effect .elementor-widget-container,
.ticker-tape-effect .elementor-heading-title {
  width: max-content !important;
  max-width: none !important;
  display: inline-block !important;
}
@keyframes ticker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
/* ticker tape mobile speed increase */
@media (max-width: 768px) {
  .ticker-tape-effect {
    animation-duration: 90s; 
  }
}

