/* 
Theme Name: hellooodesign
Theme URI: https://github.com/elementor/hello-theme/
Description: hellooodesign Child is a child theme, created by the hellooodesign team 
Author: hellooodesign
Author URI: https://hellooodesign.com/
Template: hello-elementor
Version: 5.2.0
Text Domain: hellooodesign
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
*/


/* Adjusting the default Elementor column-gap. Even so, use no-gap. */
.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 16px;
}
.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 8px;
}
.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 24px;
}
.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 32px;
}
.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 40px;
}


html{
padding: env(safe-area-inset);
}

.grecaptcha-badge { visibility: hidden; }

/* Elementor Column wrapping fix */
@media (min-width: 1024px) {
    .col-1-wrap,
    .col-2-wrap,
    .col-3-wrap,
    .col-4-wrap,
    .col-5-wrap,
	.elementor-container {
        flex-wrap: wrap !important;
    }
	/*.elementor-row {
        flex-wrap: wrap;
    } */

    .col-1-wrap .elementor-column {
        flex: 1 1 100%;
    }
    .col-2-wrap .elementor-column {
        flex: 1 1 50%;
    }
    .col-3-wrap .elementor-column {
        flex: 1 1 33%;
    }
    .col-4-wrap .elementor-column {
        flex: 1 1 25%;
    }
	.col-5-wrap .elementor-column {
        flex: 1 1 20%;
    }
}

/* Remove Elementor margin afert the text-editor widget */
.elementor-text-editor p:last-child{
	margin-bottom:0;
}

p:last-child {
	margin-block-end:0!important;
}

/* Add ... after post excerpt */
.elementor-post__excerpt p:after {
content: "...";
}

/* Add margin after a list */
ul + p {
	margin-top: 1rem;
}
ul{
   margin-bottom: 2rem;
}
ul li{
   margin-bottom: 0.5rem;
}

/* Fill Image to column height */
.image-fill, 
.image-fill .elementor-widget-container, 
.image-fill .elementor-widget-image, .fill .elementor-widget-image a {
    height: 100% !important;
}

.image-fill.elementor-widget-image img {
  object-fit: cover !important;
  object-position: 50% 50% !important;
  height: 100% !important;
} 


/* Add .image-box-responsive to CSS Class to make image box keep aligned on mobile */
@media (max-width: 767px) {
.image-box-responsive.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
display: flex;

}
.image-box-responsive.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{
flex-direction: row-reverse;
}

.image-box-responsive.elementor-widget-image-box.elementor-position-left .elementor-image-box-img  {
        margin-right: 1rem !important;
    }
    
.image-box-responsive.elementor-widget-image-box.elementor-position-right .elementor-image-box-img {
        margin-left: 1rem !important;
    }
}

/* Add .image-box-hide to CSS Class to hide image box on mobiles 768px and below */
@media (max-width: 768px) {
.image-box-hide figure.elementor-image-box-img{
display: none!important;
}
}


/* Add .image-box-responsive-hide to CSS Class to make image box keep aligned on mobile and hide image box on mobiles 425px and below */
@media (max-width: 767px) {
.image-box-responsive-hide.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
display: flex;

}
.image-box-responsive-hide.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{
flex-direction: row-reverse;
}

.image-box-responsive-hide.elementor-widget-image-box.elementor-position-left .elementor-image-box-img  {
        margin-right: 1rem !important;
    }
    
.image-box-responsive-hide.elementor-widget-image-box.elementor-position-right .elementor-image-box-img {
        margin-left: 1rem !important;
    }
}

@media (max-width: 425px) {
.image-box-responsive-hide figure.elementor-image-box-img{
display: none!important;
}
}


/* Add .image-box-left-align to CSS Class to make image box left align between 1024px and 768px. */
@media (max-width:1024px) and (min-width:768px) {  
  .image-box-left-align .elementor-image-box-img {
    float: left !important;
    width: auto !important;
    margin: 2rem 0 !important;
    padding-right: 2rem !important;
  }
  .image-box-left-align .elementor-image-box-content {
    text-align: left !important;
  }
}

/* Add .icon-box-hide to CSS Class to hide icon box on mobiles 425px and below */
@media (max-width: 425px) {
.icon-box-hide .elementor-icon-box-icon{
display: none!important;
}
}

/* Add .icon-box-left-align to CSS Class to make icon box left align between 1024px and below. */
@media (max-width:1024px) {  
  .icon-box-left-align .elementor-icon-box-icon {
    float: left !important;
    width: auto !important;
    padding-right: 1rem !important;
  }
  .icon-box-left-align .elementor-icon-box-content {
    text-align: left !important;
  }
}


@media (max-width: 425px) {
.image-box-responsive-hide figure.elementor-image-box-img{
display: none!important;
}
}

/* Add .responsive-posts to CSS Class to make posts deduce */
@media only screen and (max-width: 1024px) {
    
.responsive-post .elementor-post:last-child {
    display: none;
}
}

@media only screen and (max-width: 767px) {
    
    .responsive-post .elementor-post:first-child {
    display: unset;
}

.responsive-post .elementor-post {
    display: none;
}
    
}

/* Small text next to price */
.add-price {
      font-size: 1.125rem !important;
}

/* Resize icons */
.icon-sized img {
    max-width: 72px !important;
    width: 100% !important;
}


/* Breaking Bad Column text and image */
.breaking-bad-right .elementor-section {
	display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative;
	overflow: hidden;
}

.breaking-bad-right .elementor-container {
    justify-content: flex-end !important;
    flex-direction: row;
        margin: 0;
    width: 100%;
}

/* Breaking Bad Column img and text */
.breaking-bad-left .elementor-section {
	display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative;
	overflow: hidden;
}

.breaking-bad-left .elementor-container {
    justify-content: flex-start !important;
    flex-direction: row;
        margin: 0;
    width: 100%;
}
/* @media screen and (max-width: 568px) {
.breaking-bad-left .elementor-container {
flex-direction: column-reverse;
}
} */

@media screen and (max-width: 767px) {
.breaking-bad-left .elementor-container {
flex-direction: column-reverse;
}
}

/* @media screen and (max-width: 568px) {
.breaking-bad-col, .breaking-bad-img-col{
    width: 100% !important;
    max-width: 100%;
}
.breaking-bad-col .elementor-widget-wrap.elementor-element-populated{
	padding: 4rem 2rem 4rem 2rem !important;
}
} */

@media screen and (max-width: 767px) {
.breaking-bad-col, .breaking-bad-img-col{
    width: 100% !important;
    max-width: 100%;
}
.breaking-bad-col .elementor-widget-wrap.elementor-element-populated{
	padding: 2rem !important;
}
}



/* Breaking Bad Column */
.breaking-bad-col{
    width: calc(754px + 1rem) !important;
    max-width: 50%;
}
@media screen and (max-width: 1024px) {
.breaking-bad-col{
    width: 50% !important;
    max-width: 50%;
}
}
@media screen and (max-width: 767px) {
.breaking-bad-col{
    width: unset !important;
    max-width: unset;
}
}

/* 
@media screen and (max-width: 767px) and (min-width: 568px) {
.breaking-bad-col, .breaking-bad-img-col{
    width: 50% !important;
    max-width: 100%;
}
} */


/* Breaking Bad Img */
.breaking-bad-img-lg.elementor-widget.elementor-widget-image, .breaking-bad-img-md.elementor-widget.elementor-widget-image, .breaking-bad-img-sm.elementor-widget.elementor-widget-image {
    height: 100% !important;
}

.breaking-bad-img-lg .elementor-widget-container {
    height: 100%;
    max-height: 800px;
}

.breaking-bad-img-md .elementor-widget-container {
    height: 100%;
    max-height: 600px;
}

.breaking-bad-img-sm .elementor-widget-container {
    height: 100%;
    max-height: 400px;
}

@media screen and (max-width: 1024px) {
.breaking-bad-img-lg .elementor-widget-container, .breaking-bad-img-md .elementor-widget-container, .breaking-bad-img-sm .elementor-widget-container {
    max-height: unset !important;
}
}

.breaking-bad-img-lg img, .breaking-bad-img-md img, .breaking-bad-img-sm img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    object-position: center; 
    display: block;
}

/* Reset fonts to base */
.reset-elementor-font h1, .reset-elementor-font h2, .reset-elementor-font h3, .reset-elementor-font h4 {
    font-family: unset !important;
	padding-top: 1rem !important;
}

.reset-elementor-font h1 {font-size: 3rem !important;}
.reset-elementor-font h2 {font-size: 2.25rem !important;}
.reset-elementor-font h3 {font-size: 1.75rem !important;}
.reset-elementor-font h4 {font-size: 1.125rem !important;}
.reset-elementor-font h5 {font-size: 1rem !important;}


@media screen and (max-width: 1024px) {
.reset-elementor-font h1 {font-size: 2.5rem !important;}
.reset-elementor-font h2 {font-size: 2rem !important;}
.reset-elementor-font h3 {font-size: 1.5rem !important;}
.reset-elementor-font h4 {font-size: 1.125rem !important;}
.reset-elementor-font h5 {font-size: 1rem !important;}
}

@media screen and (max-width: 767px) {
.reset-elementor-font h1 {font-size: 2rem !important;}
.reset-elementor-font h2 {font-size: 1.625rem !important;}
.reset-elementor-font h3 {font-size: 1.375rem !important;}
.reset-elementor-font h4 {font-size: 1.125rem !important;}
.reset-elementor-font h5 {font-size: 1rem !important;}
}

/* Reset fonts to base - smaller */
.reset-elementor-font-sm h1, .reset-elementor-font-sm h2, .reset-elementor-font-sm h3, .reset-elementor-font-sm h4 {
    font-family: unset !important;
	padding-top: 1rem !important;
}

.reset-elementor-font-sm h1 {font-size: 3rem !important;}
.reset-elementor-font-sm h1 {font-size: 2.25rem !important;}
.reset-elementor-font-sm h2 {font-size: 1.75rem !important;}
.reset-elementor-font-sm h3 {font-size: 1.125rem !important;}
.reset-elementor-font-sm h4 {font-size: 1rem !important;}
.reset-elementor-font-sm h5 {font-size: 1rem !important;}


@media screen and (max-width: 1024px) {
.reset-elementor-font-sm h1 {font-size: 2.5rem !important;}
.reset-elementor-font-sm h1 {font-size: 2rem !important;}
.reset-elementor-font-sm h2 {font-size: 1.5rem !important;}
.reset-elementor-font-sm h3 {font-size: 1.125rem !important;}
.reset-elementor-font-sm h4 {font-size: 1rem !important;}
.reset-elementor-font-sm h5 {font-size: 1rem !important;}
}

@media screen and (max-width: 767px) {
.reset-elementor-font-sm h1 {font-size: 2rem !important;}
.reset-elementor-font-sm h1 {font-size: 1.625rem !important;}
.reset-elementor-font-sm h2 {font-size: 1.375rem !important;}
.reset-elementor-font-sm h3 {font-size: 1.125rem !important;}
.reset-elementor-font-sm h4 {font-size: 1rem !important;}
.reset-elementor-font-sm h5 {font-size: 1rem !important;}
}


/*  PMPro Paid Membership Pro - No Access Page */

.pmpro-no-access {
    background-color: #FBF5F4;
    padding: 1rem 1rem 1rem 1rem;
}

.pmpro-no-access .page-content {
    background-color: white;
    max-width: 900px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    padding: 2rem;
}

.pmpro-no-access .pmpro_content_message {
    margin-right: auto;
    margin-left: auto;
    position: relative;
}

/* Recolour LearnDash - Course Buttons */
.ld-course-list-items .ld_course_grid .btn-primary{
background-color: #C7CDC1 !important;
border-color: #C7CDC1 !important;
text-transform: uppercase;
letter-spacing: 0.08rem;
font-weight: bold;
}

.ld-course-list-items .ld_course_grid .btn-primary:hover{
background-color: #9FA995 !important;
border-color: #9FA995 !important;
}

/* Recolour LearnDash - Enrolled ribbon */
.ld-course-list-items .ld_course_grid .thumbnail.course .ld_course_grid_price.ribbon-enrolled {
    background-color: #595E48 !important;
}

.ld-course-list-items .ld_course_grid .thumbnail.course .ld_course_grid_price.ribbon-enrolled:before {
    border-top: 4px solid #2f2138!important;
    border-right: 4px solid #2f2138!important;
}


/* WooCommerce - Quick Basket/Cart */
.elementor-menu-cart__footer-buttons {
	grid-template-columns: unset !important;
}

.elementor-menu-cart__footer-buttons .elementor-button {
    background-color: #C7CDC1 !important;
    border-color: #C7CDC1 !important;
}


/* Recolour LearnDash - Wordpress Block Buttons */
a.wp-block-button__link {
    font-family: "Roboto", Sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none !important;
    letter-spacing: 1px;
    color: #FFFFFF !important;
    background-color: #C7CDC1;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #C7CDC1;
    border-radius: 0px 0px 0px 0px;
}

a.wp-block-button__link:hover {
    background-color: #9FA995;
    border-style: solid;
    border-color: #9FA995;
}

a.wp-block-button__link {
    text-decoration: none !important;
}

.has-text-align-left {
	margin-block-end:1rem!important;
}