/*--------------------------------------------------------------
## Global Styles
--------------------------------------------------------------*/
:root {
    --accent: #ffd800;
    --blue: #03a9f4;
    --light-blue: #f2faff; 
    --orange: #f90;
    --yellow: #fff3ba;
    --light-gray: #eee;
    --highlight: #e6f7cf;
    --default-padding: 2.5em;
}


h1,h2,h3,h4,h5,h6,
ul, p,
.wp-block-embed {
    margin: 0;
}

h1,h2,h3,h4,h5,h6 {
    line-height: 1.15;
}

a, a:hover, a:visited, a:active {
    color: inherit;
    text-decoration: none;
}

p a:not(:hover) {
    color: var(--blue)
}

img {
    display: block;
    box-sizing: inherit;
}

header:not(.no-side-padding),
section:not(.no-side-padding) {
    padding-left: 25px;
    padding-right: 25px;
} 

.has-default-padding {
    padding-bottom: var(--default-padding);
    padding-top: var(--default-padding);
}

.has-highlight {
    background-color: var(--highlight);
    padding: 10px 15px;
    line-height: 1.25;
    margin-bottom: 1rem;
}

.has-yellow-highlight {
    background-color: var(--yellow);
    border: 1px solid var(--orange);
    padding: 1em;
}

.has-blue-color {
    color: var(--blue);
}

.img-has-shadow img {
    box-shadow: 0 0 5px -2px rgba(0,0,0,.25);
}

.wp-block-media-text__content > * + * {
    margin-top: 1em;
}

.wp-block-buttons.schedule-button .wp-block-button__link {
    transition: filter .25s ease-in-out;
}

.wp-block-buttons.schedule-button .wp-block-button__link:hover {
    filter: hue-rotate(-20deg);
}

.site-footer {
    background-color: #000;
    color: rgba(255,255,255,.35);
    font-size: .8rem;
    padding: 15px;
}

#top {
    display: none;
}

.custom-logo-link {
    pointer-events: none;
}


/*--------------------------------------------------------------
## Content Styles
--------------------------------------------------------------*/
.site-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.custom-logo-link {
    margin-top: 1em;
}

.custom-logo {
    max-width: 300px;
}

body.page-id-13 .site-header,
body.page-id-3949 .site-header,
body.page-id-3996 .site-header {
    position: absolute;
    width: 100%;
}

body.page-id-13 .custom-logo {
    filter: brightness(255);
}

#entry-header.schedule-call::after {
    background-color: #128cc9;
    background-blend-mode: multiply;
}

#entry-header.schedule-call .subtitle {
    color: #fff;
}

#entry-header.schedule-call .subtitle {
    text-transform: capitalize;
}

#entry-header.schedule-call,
#entry-header.free-guide {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 3em;
    padding-top: 2em;
    text-transform: uppercase;
}

#entry-header.schedule-call .entry-title {
    color: var(--accent);
    margin-bottom: 1rem;
}

#entry-header.free-guide .entry-title {
    border-bottom: 1px solid rgba(0,0,0,.15);
    color: var(--orange);
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

#entry-header.thank-you-page > * + * {
    margin-top: 2rem;
}

#entry-header.thank-you-page .entry-title {
    font-size: 2rem;
}

#entry-header.thank-you-page .subtitle {
    font-size: 1.8rem;
    margin-top: .5em;
}

#entry-header.thank-you-page .subtitle + p {
    border-bottom: 1px solid var(--light-gray);
    border-top: 1px solid var(--light-gray);
    padding-bottom: 1rem;
    padding-top: 1rem;
}

body.page-id-13 .wp-block-buttons .wp-block-button,
body.page-id-13 .wp-block-buttons .wp-block-button__link {
    display: block;
}

body.page-id-13 .wp-block-buttons .wp-block-button__link {
    font-size: 1.5rem;
    font-weight: bold;
    text-transform: uppercase;
}

#schedule-call {
    padding-bottom: var(--default-padding);
    padding-top: var(--default-padding);
}

#free-guide .wp-block-media-text__content p {
    color: #999;
}

#free-guide .wp-block-media-text__content em {
    display: block;
    color: var(--orange);
}

#schedule-call ul,
#free-guide .wp-block-media-text__content ul {
    list-style: none;
    margin: 1em 0 0;
    padding: 0;
    text-align: left;
}

#schedule-call li,
#free-guide .wp-block-media-text__content li {
    position: relative;
    padding-left: 2.5rem;
}

#schedule-call li::before,
#free-guide .wp-block-media-text__content li::before {
    content: "\f14a";
    color: #1ead02;
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    left: 0;
    position: absolute;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}


#schedule-call ul {
    display: inline-block
}

#schedule-call li::before {
    content: '\f35a';
    font-weight: 400;
}


#free-guide .wp-block-media-text__content {
    padding: 0;
}

#schedule-call li,
#free-guide .wp-block-media-text__content ul > li {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-bottom: 1rem;
}


#free-guide .form-fields {
    display: grid;
    align-items: stretch;
    border: 1px solid #eaeaea;
    gap: 5px;
    background-color: var(--light-gray);
    padding: 2em;
    box-shadow: 0 0 5px -2px rgba(0,0,0,.15);
}

#free-guide .form-fields input {
    width: 100%;
}

#free-guide .form-fields input {
    border: none;
    border-radius: 0;
    flex-grow: 1;
    padding: 10px 15px;
}

#free-guide .form-fields input[type="submit"] {
    border: none;
    background-color: var(--blue);
    border-radius: 0;
    color: #fff;
    cursor: pointer;
}

#free-guide .thank-you-message {
    background-color: rgb(30, 172, 2);
    border: 1px solid rgba(23, 138, 0, 0.25);
    padding: 1em;
    box-shadow: 0 0 5px -2px rgba(5, 29, 0, 0.85);
}

#free-guide .thank-you-message h2 {
    color: #fff;
    font-size: 2rem;
    border-bottom: 1px solid rgba(255,255,255,.15);
    margin-bottom: .5rem;
    padding-bottom: .5rem;
}

#free-guide .thank-you-message p {
    color: rgba(255,255,255,.85);
}

#disclaimer.free-guide {
    background-color: #777777;
    color: rgba(255,255,255,.35);
}

#disclaimer.free-guide p {
    font-size: .8rem;
    line-height: 2;
    max-width: 105ch;
    padding-bottom: calc(var(--default-padding) / 2);
    padding-top: calc(var(--default-padding) / 2);
}


@media screen and (max-width: 800px) {
    .wp-block-media-text,
    .wp-block-media-text.has-media-on-the-right {
        grid-template-columns: 100%;
        grid-template-rows: auto auto;
        text-align: center;
    }
    
    .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
    }

    .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
        margin-bottom: 5rem;
    }

    .wp-block-media-text .wp-block-media-text__media img {
        display: inline-block;
        max-width: max-content;
    }

    .custom-logo {
        display: none;
    }

    #entry-header.free-guide .entry-title {
        font-size: 1.45rem;
    }

    #free-guide .wp-block-media-text__content  {
        display: grid;
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }
    
    #free-guide .wp-block-media-text {
        display: block;
    }
    
    #free-guide .form-fields {
        flex-direction: column;
    }
    
    #free-guide .form-fields input[type="submit"] {
        padding: 1em;
    }

    #free-guide form {
        grid-row: 1;
        margin-bottom: 2em;
    }
}

@media screen and (min-width: 801px) {
    :root {
         --default-padding: 5em;
    }

    .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
        justify-self: end;
    }
    
    body {
        position: relative;
    }

    #top {
        background-color: rgba(50,50,50,.5);
        bottom: 0;
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
        color: #fff;
        cursor: pointer;
        display: block;
        padding: .5em 1em;
        position: fixed;
        left: 1em;
        transition: background .25s ease-in-out;
        z-index: 2;
    }

    #top:hover {
        background-color:  rgba(50,50,50,1);
    }

    body.page-id-16 #page {
        display: grid;
        min-height: 100vh;
    }

    body.page-id-16 .site-footer {
        align-self: end;
    }

    body.page-id-16 #top {
        display: none;
    }

    #entry-header.schedule-call,
    #entry-header.free-guide {
        padding-top: 10em;
    }

    #entry-header.free-guide .entry-title {
        font-size: 2.8rem;
    }

    #entry-header.free-guide .subtitle {
        font-size: 1.8rem;
    }

    #entry-header.schedule-call .entry-title {
        font-size: 2.5rem;
    }

    #entry-header.schedule-call .subtitle {
        font-size: 1.25rem;
        max-width: 90ch;
        margin: auto;
        
    }

    #schedule-call {
        padding-bottom: calc(var(--default-padding) * 2);
        padding-top: calc(var(--default-padding) * 2);
    }

    #schedule-call .wp-block-columns {
        margin-bottom: 5em;
    }

    #free-guide {
        padding-bottom: calc(var(--default-padding) * 2);
        padding-top: calc(var(--default-padding) * 2);
    }

    #free-guide .wp-block-media-text {
        grid-template-columns: auto 50ch;
        column-gap: 3em;
        justify-content: center;
    }

    #free-guide .wp-block-media-text__content p {
        font-size: 1.25rem;
    }

    #schedule-call li,
    #free-guide .wp-block-media-text__content ul > li {
        font-size: 1.65rem;
        margin-bottom: 1rem;
    }

    #free-guide .thank-you-message p {
        font-size: 1.25rem; 
        line-height: 1.25;
        font-style: italic;
    }

    #entry-header.thank-you-page .entry-title {
        font-size: 3rem;
    }

    #entry-header.thank-you-page .subtitle {
        font-size: 2rem;
    }

    #free-guide form {
        margin-top: 3em;
    }

}