/* 
Theme Name: NerdStuds
Theme URI: https://github.com/elementor/hello-theme/
Description: This is a custom child theme built using the Elementor Hello theme.
Author: Jeremy Cox
Author URI: https://nerdstuds.com/
Template: hello-elementor
*/

:root {
	--green: #6C927B;
    --pink: #DFB0A8;
    --gold: #C3AA6B;
    --tan: #F3EAD8;
    --text: #6C927B;
    --header-font: "thirsty-rough-two", Sans-serif;
    --body-font: "brother-1816-printed", Sans-serif;
    --accent-font: "nexa-rust-sans-black-2", Sans-serif;
    --box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.10);
}

/* General Styles */

*:focus:not(:focus-visible),
body input:focus,
body button:focus,
body a:focus,
body i:focus,
body *:focus,
body input:focus-visible,
body button:focus-visible,
body a:focus-visible,
body i:focus-visible,
body *:focus-visible {
	outline: none !important;
	box-shadow: none !important;
}

body, html {
    overflow-x: clip !important;
}

h4.elementor-icon-box-title {
    margin-bottom: 0 !important;
}

.blog-post-loop .elementor-cta__content {
    flex-direction: row !important;
    gap: 20px !important;
    justify-content: space-between;

    .elementor-cta__button-wrapper,
    .elementor-cta__description {
        width: fit-content !important;
        margin: 0;
    }

    .elementor-cta__description {
        order: 3 !important;
    }
}

.e-off-canvas__content {
    background-image: url('/wp-content/uploads/2022/04/white-texture.png');
}

.bar-h4 h4 {
    display: flex;
    align-items: center;
    gap: 15px;
    white-space: nowrap;
}

.bar-h4 h4:after {
    content: "";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    max-width: 100px;
    width: -webkit-fill-available;
    border: 1px solid;
    border-color: inherit;
}

@media(max-width: 1000px) {
    .bar-h4:not(.hero) h4,
    .bar-h4:not(.hero) h4:after {
        display: block;
        margin: 0 auto;
        text-align: center;
    }

    .bar-h4:not(.hero) h4:after {
        margin-top: 10px;
    }
}

@media(max-width: 800px) {
    .bar-h4.hero h4,
    .bar-h4.hero h4:after {
        display: block;
        margin: 0 auto;
        text-align: center;
    }

    .bar-h4.hero h4:after {
        margin-top: 10px;
    }
}

.elementor-post-navigation__link a span[class*="--label"] {
    background: var(--pink);
    padding: 10px 20px;
    border-radius: 25px;
    color: white;

    &:hover {
        background: var(--green);
        color: white;
    }
}

.elementor-widget-theme-post-content p a {
    color: var(--pink);

    &:hover {
        color: var(--gold);
    }
}

/* Podcast Player Styles */

.pp-podcast {
    background: unset !important;
    border: none !important;
    margin-bottom: 0 !important;

    .ppjs__audio-controls {
        padding: 0 !important;

        .ppjs__img-wrapper {
            width: 250px;
            margin-right: 50px;
            height: auto;
        }

        .ppjs__podcast-title {
            font-family: var(--accent-font);
            color: white;
        }

        .ppjs__episode-title {
            font-family: var(--header-font) !important;
            font-size: 30px;
            color: white;
            font-weight: 500;
            padding-top: 20px;
        }

        .ppjs__episode-excerpt {
            padding-top: 20px !important;

            span {
                color: white !important;
                font-size: 16px;
                line-height: 1.5em !important;
                font-family: var(--body-font) !important;

                &:hover * {
                    color: var(--green) !important;
                }
            }
        }

        .ppjs__button > button,
        .ppjs__button > a.button {
            color: white !important;

            &:hover * {
                color: var(--green) !important;
            }
        }

        .ppjs__button .play-rate-text {
            border-color: white;

            &:hover {
                border-color: var(--green) !important;
            }
        }
    }

    .ppjs__audio-timer span {
        color: white;
    }
}

.newest-ep-shortcode #pp-podcast-1221:not(.modern) .ppjs__audio .ppjs__button.ppjs__playpause-button button * {
    color: white !important;
}

/*.ppjs__controls {*/
/*    display: flex !important;*/
/*    flex-direction: column;*/
/*    gap: 30px;*/
/*}*/

body .pp-podcast.special-style {

    .pod-entry__title {
        margin: 20px 0 10px !important;

        a {
            font-family: var(--header-font) !important;
            font-size: 24px;
            color: var(--green) !important;
            font-weight: 500;

            &:hover {
                color: var(--pink) !important;
            }
        }
    }

    .pod-entry__date {
        font-family: var(--accent-font);
        color: var(--green) !important;
    }
}

.pod-content__episode {
    border-bottom: unset !important;
    box-shadow: var(--box-shadow) !important;

    .btn-icon-wrap {
        color: var(--green) !important;
    }

    .episode-single__close:hover,
    .episode-single__close:focus {
        background: var(--green) !important;
        box-shadow: var(--box-shadow) !important;

        .btn-icon-wrap {
            color: white !important;
        }
    }

    .episode-single__wrapper {

        .episode-single__title {
            font-family: var(--header-font) !important;
            font-size: 30px !important;
            color: var(--green) !important;
        }

        .episode-single__author span {
            font-family: var(--accent-font) !important;
            font-weight: bold !important;
            color: var(--green) !important;
        }

        .episode-single__description {
            margin-bottom: 0 !important;

            p {
                font-family: var(--body-font) !important;
                color: var(--green) !important;
            }
        }
    }

}

@media(max-width: 1300px) {
    .ppjs__img-wrapper {
        margin-right: 30px !important;
    }

    .pod-entry__title a {
        font-size: 22px !important;
    }
}

@media(max-width: 690px) {
    .ppjs__img-wrapper {
        max-width: 200px !important;
    }

    .pod-entry__title a {
        font-size: 20px !important;
    }
}

@media(max-width: 480px) {
    .ppjs__img-wrapper {
        margin: 0 auto !important;
    }

    .ppjs__audio-controls {
        margin: 0 !important;
    }

    .ppjs__episode-title {
        font-size: 28px !important;
    }
}

/* Gravity Form Styles */

.gfield_required span,
.grecaptcha-badge,
.gform_heading {
    display: none !important;
}

.gform-body label,
.gform-body legend {
    font-weight: 900 !important;
    font-size: 14px !important;
    letter-spacing: 1.6px !important;
    color: var(--green) !important;
    font-family: var(--accent-font) !important;
    text-transform: uppercase !important;
}

.gform-body input:not([type="checkbox"]):not([type=button]):not([type=submit]),
.gform-body textarea,
.gform-body select {
    background-color: white !important;
    color: var(--text) !important;
    border: none !important;
    padding: 10px 15px !important;
    font-size: 16px !important;
    line-height: 1.4em !important;
    min-height: 46px !important;
    border-radius: 4px;
    box-shadow: var(--box-shadow) !important;
}

.gform-theme--foundation .gform_fields {
    row-gap: 25px !important;
}

.gform-theme--framework .gform-loader {
    border-block-end-color: var(--green) !important;
    border-block-start-color: rgba(255,255,255,.3) !important;
    border-inline-end-color: rgba(255,255,255,.3) !important;
    border-inline-start-color: var(--green) !important;
}

.gfield--type-submit input,
.gform_page_footer input[type="submit"],
.gform_footer input {
    line-height: 1em !important;
    color: white !important;
    border: none !important;
    background: var(--pink) !important;
    font-family: var(--accent-font) !important;
    letter-spacing: 1.6px !important;
    margin-bottom: 0 !important;
    font-weight: 500 !important;
    padding: 16px 32px !important;
    border-radius: 25px !important;
    font-size: 15px !important;
    transition: all 250ms ease !important;

    &:hover {
        background: var(--green) !important;
    }
}

.gform_footer {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 30px !important;
}

.gform_confirmation_message {
    padding: 30px;
    background: var(--green);
    border: none;
    border-radius: 4px;
    text-align: center;
    font-size: 21px;
    line-height: 1.5em;
    font-weight: normal !important;
    color: white !important;
    box-shadow: var(--box-shadow);
}

.gform-body input:-webkit-autofill,
.gform-body input:-webkit-autofill:hover,
.gform-body input:-webkit-autofill:focus,
.gform-body input:-webkit-autofill:active,
.gform-body select:-webkit-autofill,
.gform-body select:-webkit-autofill:hover,
.gform-body select:-webkit-autofill:focus,
.gform-body select:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

input:-webkit-autofill,
select:-webkit-autofill {
    -webkit-text-fill-color: var(--text) !important;
}

/*Error Message Styles*/

.gform_validation_errors {
    display: none !important;
}

.gform_wrapper.gravity-theme .gfield_error label,
.gform_wrapper.gravity-theme .gfield_error legend,
.gfield_required_asterisk {
    color: salmon !important;
}

.gform_body input[aria-invalid=true],
.gform_body select[aria-invalid=true],
.gform_body textarea[aria-invalid=true] {
    border: 1px solid salmon !important;
}