/* 
Theme Name: ecbd_barebones_v1.0
Theme URI: https://github.com/elementor/hello-theme/
Description: ecbd_barebones_v1.0 is a child theme of Hello Elementor.
Author: eCBD
Author URI: https://e-cbd.com.au
Template: hello-elementor
Version: 3.4.5
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
*/

/**************************** 
 Table of Contents
 - 1.Color Reference
 - 2.Typography 
 - 3.General 
 - 4.Header/Main Navigation
 - 5.Mobile Navigation 
 - 6.Forms
 - 7.Home Page
 - 8.Sub Pages
 - 9.Footer
 - 10.Elementor Overrides
 - 11.Woocommerce
 - 12.Media Queries 
 ***************************/

/**__1.Color Reference__**/
/*
    var(--e-global-color-primary);
    var(--e-global-color-secondary);
    var(--e-global-color-text);
    var(--e-global-color-accent);
*/

html{scroll-behavior: smooth;}
a:hover{cursor:pointer!important;}
.no-scroll{overflow:hidden;}
.ovr-hidden{overflow:hidden!important;}

/**__2.Typography__**/

.no-margin,
.no-margin p,
.no-margin-last p:last-child{margin-bottom:0;}

.h1{font-size:clamp(2.1875rem, 2.0142rem + 0.79vw, 2.6875rem);}
.h2{font-size:clamp(28px, 25.57px + 0.69vw, 35px);}
.h3{font-size:clamp(23px, 21.27px + 0.50vw, 28px);}
.h4{font-size:clamp(20px, 18.96px + 0.30vw, 23px);}
.h5{font-size:clamp(18px, 17.31px + 0.20vw, 20px);}
.h6{font-size:clamp(16px, 15.31px + 0.20vw, 18px);}

.serv-accord h2{font-size:clamp(20px, 18.96px + 0.30vw, 23px);}
.serv-accord h3{font-size:clamp(18px, 17.31px + 0.20vw, 20px);}
.serv-accord h4{font-size:clamp(16px, 15.31px + 0.20vw, 18px);}


/**__3.General__**/
.r-auto {
    margin-left: auto;
    margin-right: 0px!important;
}
.l-auto {
    margin-left:0px!important;
    margin-right: auto;
}
ul + p{margin-top:1em;}
ul.tick{list-style:none;padding: 0;}
ul.tick li {position:relative;padding-left: 46px;padding-bottom: 34px;}
ul.tick li:before{content:'';background: var(--e-global-color-primary);height:32px;width:32px;display:inline-block;border-radius: 3px;position:absolute;left: 3px;top: -5px;}
ul.tick li:after{ content:''; border-top:4px solid #fff; border-right:4px solid #fff; transform:rotate(135deg); height:11px; width:17px; display:inline-block; position:absolute; left: 10px; top: 4px; -webkit-transform:rotate(135deg); -moz-transform:rotate(135deg); -ms-transform:rotate(135deg); -o-transform:rotate(135deg); }
ul.tick.tick-alt li {padding-left:55px;}
ul.tick.tick-alt li:before{top:4px;}
ul.tick.tick-alt li:after{top:12px;}

.mxw-400{max-width:400px!important;}
.mxw-500{max-width:500px!important;}
.mxw-600{max-width:600px!important;}
.mxw-700{max-width:700px!important;}
.mxw-800{max-width:800px!important;}
.mxw-900{max-width:900px!important;}
.mxw-1000{max-width:1000px!important;}

.custom-ol ol {list-style: none;counter-reset: my-counter;padding-left:0;}
.custom-ol ol li {position: relative;margin-bottom: 20px;padding-left:40px;  }
.custom-ol ol li::after {
  content: counter(my-counter);
  counter-increment: my-counter;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5em;
  text-align: center;
  background-color: red;
  color: white;
  font-weight: bold;
  border-radius: 50%;
  margin-right: 15px;
  left:0; 
  top:0; 
  position:absolute;  
}


/**__4. Header/Main Navigation__**/
#main-header{transition:all linear 0.2s;}
#main-header.scrolled-header {position:fixed;z-index:999;margin-top:-50px;transition:all linear 0.2s; box-shadow: 0px 0px 3px 0px rgb(0 0 0 / 50%);}
#main-header .sub-menu {min-width:100%!important;}

.desktop-cta p{margin-bottom:0;}
#mobcta a{text-align:left;}

/**__5.Mobile Navigation__**/
.mob-menu{overflow-y: scroll!important;height:100vh;}
.mob-menu a {width: 100%;justify-content: space-between;}
.mob-menu span.sub-arrow {background: transparent; padding: 14px 18px!important;position: absolute; right: 3px; top: 9px; border-left: 1px solid var(--e-global-color-1a720b9);}
.mob-menu .elementor-nav-menu .sub-arrow i{font-size:20px;}
.mob-menu .has-submenu.highlighted .sub-arrow i{transform:rotate(180deg);}
.mob-menu .menu-item-has-children .sub-menu{background:var(--e-global-color-a69993f)!important;}
.mob-menu .menu-item-has-children .sub-menu a{font-size:14px!important;}

/* edit the hamburger and close icon colors here */
.smdev-button {--hamburger-color: #000;--close-x-color: #000;display: block;height: 18px;cursor: pointer;position: relative;z-index: 101;}
/* must add in elementor template ID number to make the menu full width */
.elementor-43 {width: 100%;}
/* end editing */

.smdev-navigation { position: fixed; top: 0; left: 0; transform: translateX(-100%); overflow: hidden; transition: transform 0.2s; width: 100%; height: 100vh; z-index: 100; -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); -o-transform: translateX(-100%); }
.smdev-navigation {display: flex;justify-content: center;align-items: center;}

/* toggle hamburger*/
.smdev-button .smdev-hamburger {position: relative;}
.smdev-button .smdev-hamburger span{display: block;height: 4px;width: 34px;background: var(--hamburger-color);transform-origin: 50% 50%;transition: all 0.1s 0.2s ease, transform 0.2s ease;}
.smdev-button .smdev-hamburger span:nth-child(2) { transform: translate(0, 6px); -webkit-transform: translate(0, 6px); -moz-transform: translate(0, 6px); -ms-transform: translate(0, 6px); -o-transform: translate(0, 6px); }
.smdev-button .smdev-hamburger span:nth-child(3) { transform: translate(0, 12px); -webkit-transform: translate(0, 12px); -moz-transform: translate(0, 12px); -ms-transform: translate(0, 12px); -o-transform: translate(0, 12px); }
.smdev-nav_control {position: absolute;left: -9999px;width: 100%;clip: rect(0, 0, 0, 0);}
.smdev-nav_control:checked~.smdev-navigation { transform: translateX(0); opacity: 1; transition: transform 0.3s, opacity 0.3s; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); }
.smdev-nav_control:checked~.smdev-button .smdev-hamburger {top: 27px;position: fixed;left: 18px;padding: 17px 0px;}

/* closed X */
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span {background: var(--close-x-color);transition: all 0.1s ease, transform 0.1s 0.2s ease;}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:first-child {opacity: 0;display:none;}
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:nth-child(2) { transform: translate(0, 8px) rotate(45deg); -webkit-transform: translate(0, 8px) rotate(45deg); -moz-transform: translate(0, 8px) rotate(45deg); -ms-transform: translate(0, 8px) rotate(45deg); -o-transform: translate(0, 8px) rotate(45deg); }
.smdev-nav_control:checked~.smdev-button .smdev-hamburger span:nth-child(3) { transform: translate(0, 4px) rotate(-45deg); -webkit-transform: translate(0, 4px) rotate(-45deg); -moz-transform: translate(0, 4px) rotate(-45deg); -ms-transform: translate(0, 4px) rotate(-45deg); -o-transform: translate(0, 4px) rotate(-45deg); }

/**__6.Forms__**/

.search-form{margin-bottom:40px;}
.search-form input.elementor-search-form__input,
.search-form .elementor-search-form input[type=search]{font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-weight: var( --e-global-typography-text-font-weight );padding-left: calc(50px / 3);padding-right: calc(50px / 3);}
.search-form button.elementor-search-form__submit {min-width: 50px;background-color: var( --e-global-color-secondary );}
.search-form .elementor-search-form__container {background-color: #ffffff;border-color: #474747;border-width: 1px 1px 1px 1px;border-radius: 0px;max-width: 500px;}

/*form elements*/
.gform_fields{gap:20px!important;}
.gform_required_legend{display: none;}
.gfield_label {/* display: none!important; */}

.gfield textarea,
.gfield select,
.gfield input[type="text"],
.gfield input[type="email"],
.gfield input[type="number"],
.gfield input[type="tel"]{border: 1px solid #03203f4f;border-radius: 4px;padding: 12px!important;}
.gfield input::placeholder,
.gfield textarea::placeholder{color:#000;}
.gfield_checkbox .gchoice {padding-bottom: 1em;}
input[type="checkbox"].gfield-choice-input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid black;
  background:#fff;
  cursor: pointer;
  position: relative;
}
input[type="checkbox"].gfield-choice-input:checked::after {
  content: '\2713'; /* Unicode for checkmark */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 14px;
  color: black;
}

/*form button*/
.gform-button,
.gform_button{background: #cea356;min-width:150px;padding: 11px 30px;color:#fff;border-radius:100px;border:none;text-transform:uppercase;font-weight: 500;/* letter-spacing:2px; */font-family: 'Noto Serif', sans-serif;}
.gform-button:hover,.gform_button:hover,
.gform-button:active,.gform_button:active,
.gform-button:visited,.gform_button_visited,
.gform-button:focus,.gform_button:focus{background: #03203f;color: #ffffff;}

/*name sublabels*/
.gform-field-label--type-sub {font-weight: bold;padding-bottom: 9px;}

/*thankyou message**/
.gform_confirmation_message {font-weight: bold;}

/** select field arrow style***/
select {
  /* Remove default arrow */
  -webkit-appearance: none; /* For Chrome, Safari */
  -moz-appearance: none; /* For Firefox */
  appearance: none; /* Standard */
  
  /* Add custom styling */
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background-color: white;
  font-size: 16px;
  width: 200px;
  cursor: pointer;
  /* Add custom arrow using background image */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2"><path d="M6 9l6 6 6-6"/></svg>');
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 12px;
}
/* Ensure the select is still usable in older browsers */
select::-ms-expand {
  display: none; /* Hide default arrow in IE */
}
/* Optional: Style when focused */
select:focus {
  outline: none;
  border-color: #007bff;
  box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}


/**__7.Home Page__**/


/**__8.Sub Pages__**/
/* #breadcrumbs a:after { content: ''; height: 10px; width: 10px; border-top: 3px solid #9e9e9e; border-right: 3px solid #9e9e9e; transform: rotate(45deg); display: inline-block; margin: 0px 15px; position: relative; top: 0px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); } */
#breadcrumbs .breadcrumb_last {font-weight: 400;}
.smdev-btn {border:solid 2px #fff;background:  var(--e-global-color-primary)0!important;font-weight: 600;font-family: var(--e-global-typography-text-font-family);margin-top: 1em;color: #fff!important;padding: 17px 25px 13px;display: inline-block;border-radius: 6px;transition:all linear 0.2s;}
.smdev-btn:hover{border:solid 2px  var(--e-global-color-primary)0;background: #fff!important;color:  var(--e-global-color-primary)0!important;transition:all linear 0.2s;}
.serv-side-posts a {position:relative;padding-left:18px;padding-bottom:5px;display: inline-block;transition:all linear 0.2s;}
.serv-side-posts a:hover{color:var(--e-global-color-accent)!important;transition:all linear 0.2s;} 
.serv-side-posts a:after{content:'';border-top: 3px solid var(--e-global-color-accent);border-right: 3px solid var(--e-global-color-accent);transform: rotate(45deg);height:8px;width:8px;display:inline-block;position:absolute;left: 0px;top: 6px;1;-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-ms-transform: rotate(45deg);-o-transform: rotate(45deg);}
.serv-accord ul {padding-left: 20px;}

/**__9.Footer__**/
.copy-info p{margin-bottom:0;}
.footer-contact-list a .elementor-icon-list-text,
.footer-contact-list a:hover .elementor-icon-list-text{transition:all linear 0.2s;}
.footer-contact-list strong{font-size:calc(100% + 0.5rem);}
.footer-nav ul {display: flex;flex-wrap: wrap;justify-content:space-between;}
.footer-nav ul li {flex: 1 1 50%;padding-bottom:1em;}
.footer-contact-list .elementor-icon-list-item{align-items:flex-start!important;}
#backtotop{position:absolute;bottom:35px;right:0;}

/**__10.Elementor Overrides__**/
.elementor-select-wrapper .select-caret-down-wrapper svg { display: unset;width: 13px; height: 41px;aspect-ratio: unset; fill: currentColor;}
.elementor-message.elementor-message-success:before {display:none;}
.elementor-widget-theme-post-content p+h2,.elementor-widget-theme-post-content ul+h2,.elementor-widget-theme-post-content ol+h2,
.elementor-widget-theme-post-content p+h3,.elementor-widget-theme-post-content ul+h3,.elementor-widget-theme-post-content ol+h3,
.elementor-widget-theme-post-content p+h4,.elementor-widget-theme-post-content ul+h4,.elementor-widget-theme-post-content ol+h4,
.elementor-widget-theme-post-content p+h5,.elementor-widget-theme-post-content ul+h5,.elementor-widget-theme-post-content ol+h5,
.elementor-widget-theme-post-content p+h6,.elementor-widget-theme-post-content ul+h6,.elementor-widget-theme-post-content ol+h6{margin-top:32px;}

/**__11.Woocommerce__**/


/**__12.Media Queries__**/

@media(min-width:541px){

}
@media(min-width:768px){
    #backtotop{right: 35px;bottom: 85px;}
}
@media(min-width:881px){
/*     #main-header.scrolled-header {top:0;} */
  
}
@media(min-width:992px){

}
@media(min-width:1025px){

}
@media (min-width:1200px){

}
@media (min-width:1400px){
 
}