/*
Theme Name: Ashley Beggs Child Theme
Theme URI: https://ashleybeggs.co.za/
Template: astra
Author: 404 Marketing Ltd
Author URI: https://404marketing.co.uk/
Description: This is a child theme of Astra, developed for the sole use on https://ashleybeggs.co.za/.
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.8.1754204637
Updated: 2025-08-03 09:03:57

*/

.site-content {overflow-x: hidden;}
.grecaptcha-badge {visibility: hidden !important;}

:root {
    --wp--preset--shadow--natural: 0 5px 9px rgba(0, 0, 0, 0.2);
    color-scheme: light only; 
}

/* PAGE PADDING */
.ast-single-post.ast-page-builder-template .site-main > article {
    padding-top: 0px !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
}
.ast-plain-container .site-content {padding: 5%;}

/* HEADINGS */
.single .entry-title {font-size: 50px !important;}

/* MEGA MENU */
.ast-mm-widget-item {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
}
.mega-block-title {
    margin-top: 20px;
    margin-bottom: 0px;
}

/* HOME PAGE */
.home-page-hero-section {
    h1 {font-size: 70px;}
    p {max-width: 75%;}
}

/* HERO SECTIONS */
.page-hero-image {min-height: calc(80vh - 133px);}

/* SERVICES SECTION */
.services-section {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;

    h2 {
        font-family: 'Fredoka', sans-serif;
        font-weight: 600;
    }
}
.services-column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.services-column:hover {box-shadow: 0 7px 9px rgba(0,0,0,0.4) !important;}

/* WHY US SECTION */
.why-us-section {
    h4 {
        font-family: 'Fredoka', sans-serif;
        font-weight: 600;
    }
}

.bio-section {
    max-width: 90% !important;
    margin: auto;
}

/* SMALL CTA */
.small-cta {
    max-width: 90% !important;
    font-weight: 600;
}

/* SERVICES PAGES */
.services-how-I-help-section {
    max-width: 90% !important;
    margin: auto;
}

/* TESTIMONIALS */
.wp-block-pullquote {padding: 0px;}
.has-text-align-left > blockquote {border-left: none;}
.wp-block-pullquote p, .wp-block-pullquote cite {
    font-size: 18px;
    padding-left: 50px;
}
.wp-block-pullquote blockquote::before {
    font-family: "Playfair Display", sans-serif;
    color: var(--ast-global-color-0);
}
.wp-block-cb-carousel-v2 .cb-button-next, .wp-block-cb-carousel-v2 .cb-button-prev {color: var(--ast-global-color-0);}
.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet {background: var(--ast-global-color-0);}
.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet.swiper-pagination-bullet-active {background: var(--ast-global-color-0);}

/* CONTACT PAGE */
.contact-form-section {
    max-width: 70% !important;
    text-align: center;
    margin: auto;
    border-radius: 25px;
    outline: 1px solid var(--ast-global-color-0);
    outline-offset: 10px;
}
.contact-form-section::before {
    content: "";
    display: block;
    height: 60%;
    width: 100vw;
    background-color: var(--ast-global-color-7);
    position: absolute;
    top: -15%;
    left: calc(-50vw + 50%);
    z-index: -1;
}
.wpforms-submit {
    font-family: "Fredoka" !important;
    font-size: 16px !important;
    Font-weight: bold !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    border-radius: 40px !important;
}

/* SUCCESS PAGE */
.thank-you-section {
    max-width: 70% !important;
    text-align: center;
    margin: auto;
    border-radius: 25px;
    outline: 1px solid var(--ast-global-color-0);
    outline-offset: 10px;
}
.thank-you-section::before {
    content: "";
    display: block;
    height: 80%;
    width: 100vw;
    background-color: var(--ast-global-color-7);
    position: absolute;
    top: -35%;
    left: calc(-50vw + 50%);
    z-index: -1;
}

/* FOOTER */
.footer-widget-area h2 {
    font-family: 'Fredoka', sans-serif;
    font-weight: 600;
    font-size: 20px;
}
.widget_media_image img {
    border-radius: 50%;
}

/* COMING SOON PAGE */
.coming-soon-sign-up-section {
    max-width: 70% !important;
    text-align: center;
    margin: auto;
    outline: 1px solid var(--ast-global-color-0);
    outline-offset: 10px;
}
.coming-soon-sign-up-section::before {
    content: "";
    display: block;
    height: 60%;
    width: 100vw;
    background-color: var(--ast-global-color-7);
    position: absolute;
    top: -20%;
    left: calc(-50vw + 50%);
    z-index: -1;
}

/* MAILPOET FORMS */
.mailpoet_paragraph {
    border-radius: 3px;
    color: rgba( 0, 0, 0, 0.7);
    border-width: 1px solid var(--ast-global-color-0);
}
.mailpoet_submit {
    width: auto !important;
    font-family: "Fredoka" !important;
    font-size: 16px !important;
    Font-weight: bold !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    border-radius: 40px !important;
}
.mailpoet_form_columns {margin-bottom: 0px !important;}
.mailpoet_text {
    border: 1px solid var(--ast-global-color-0) !important;
    border-radius: 3px !important;
    padding-left: 14px !important; 
    padding-right: 14px !important;
}

/* MAILPOET PAGES */
.mailpoet-section {
    max-width: 70% !important;
    margin: auto;
    border-radius: 25px;
    outline: 1px solid var(--ast-global-color-0);
    outline-offset: 10px;

    .mailpoet_paragraph {margin-bottom: 15px;}
    .mailpoet_select {
        border: 1px solid var(--ast-global-color-0) !important;
        border-radius: 3px !important;
    }
}
.mailpoet-section::before {
    content: "";
    display: block;
    height: 80%;
    width: 100vw;
    background-color: var(--ast-global-color-7);
    position: absolute;
    top: -35%;
    left: calc(-50vw + 50%);
    z-index: -1;
}

/* SINGLE POST */
.single-post .small-cta {
    max-width: 100% !important;
    margin-bottom: 5%;
}

/* DOWNLOADS */
.page-id-1004 .entry-header {margin: 0px !important;}
.page-id-1004 .entry-title {
    text-align: center;
    background-color: var(--ast-global-color-7);
    padding: 5%;
}
.download-column {
    outline: 1px solid var(--ast-global-color-0);
    outline-offset: 10px;
}


@media only screen and (max-width: 1460px) {
    /* HOME PAGE */
        .home-page-hero-section .wp-block-columns:last-child {flex-basis: 45% !important;}
}

@media only screen and (max-width: 1440px) {
    /* HOME PAGE */
    .home-page-hero-section h1 {font-size: 55px;}
    .home-page-hero-section .wp-block-column:last-child {flex-basis: 40% !important;}
    /* SERVICES SECTION */
    .service-section-row {
        flex-wrap: wrap !important;
    
        .wp-block-column {flex-basis: 45% !important;}
    }
}

@media only screen and (max-width: 1210px) and (min-width: 1024px) {
    /* WHY US SECTION */
        .why-us-list-group {
            .wp-block-columns {flex-wrap: wrap !important;}
            .wp-block-column {flex-basis: 100% !important;}
        }
}

@media only screen and (max-width: 1024px) {
    /* HOME PAGE */
        .home-page-hero-section h1 {font-size: 55px;}
        .home-page-hero-section {
            flex-direction: column;
            padding: 5% !important;
        }
    /* WHY US SECTION */
        .why-us-section-img-column {display: none;}
}

@media only screen and (max-width: 921px) /* TABLET */ {
    /* FONTS */
        h1, .single .entry-title {font-size: 30px;}
    /* COMING SOON PAGE */
        .coming-soon-sign-up-section {max-width: 90% !important;}
    /* CONTACT PAGE */
        .contact-form-section {max-width: 90% !important;}
    /* SUCCESS PAGE */
        .thank-you-section {max-width: 90% !important;}
    /* MAILPOET PAGE */
        .mailpoet-section {max-width: 90% !important;}
}

@media only screen and (max-width: 781px) {
    /* HERO SECTIONS */
        .page-hero-image {flex-direction: column-reverse;}
}
@media only screen and (max-width: 600px) {
        /* HOME PAGE */
        .home-page-hero-section h1 {font-size: 40px;}
}
@media only screen and (max-width: 544px) /* MOBILE */ {
    /* FONTS */
        h1, .entry-title {font-size: 30px;}
}
@media only screen and (max-width: 425px) {}
@media only screen and (max-width: 375px) {}


@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: light only;
  }
}

