:root {
    --global-content-width: var(--wp--style--global--content-size, 1320px);
    --global-wide-width: var(--wp--style--global--wide-size, 1600px);
    --global-content-padding: var(--global-content-edge-padding, 1.25rem);
    --global-max-width-full: 100%;
    --black: #1b1b1b;
    --white: white;
    --primary-color: #1b1b1b;
    --secondary-color: #777777;
    --tertiary-color: #5a7310;
    --accent-color: #f6f6f6;
}

/* Fonts */
body {
    font-family: 'Cabin', sans-serif;
}
div, a, p, h1, h2, h3, h4, h5, h6 {
    color: var(--primary-color);
}
p, div, p a {
    font-size: 1.125rem;
    line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
    line-height: 1.1;
    margin-top: 0;
    margin-bottom: 1em;
}


/* Wrapper */
.wrapper {
    max-width: var(--global-content-width);
    padding-left: var(--global-content-padding);
    padding-right: var(--global-content-padding);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.wrapper--wide {
    max-width: var(--global-wide-width);
}

/* Kadence Row Layout */
.wp-block-kadence-rowlayout.alignfull > .kt-row-column-wrap {
    padding-left: 0;
    padding-right: 0;
}

.wp-block-kadence-rowlayout:not(.alignfull) > .kt-row-column-wrap {
    max-width: var(--global-content-width);
    padding-left: var(--global-content-padding);
    padding-right: var(--global-content-padding);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.wp-block-kadence-rowlayout.alignwide > .kt-row-column-wrap {
    max-width: var(--global-wide-width);
}

.wp-block-kadence-rowlayout.aligncenter > .kt-row-column-wrap {
    display: flex;
    align-items: center;
}

.wp-block-kadence-rowlayout.no-center > .kt-row-column-wrap {
    margin-left: initial !important;
    margin-right: initial !important;
}

/* Kadence RowLayout as a WP Block */
.wp-block[data-type="kadence/rowlayout"] > .innerblocks-wrap {
    max-width: var(--global-content-width);
    padding-left: var(--global-content-padding);
    padding-right: var(--global-content-padding);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.wp-block[data-align="wide"] > .innerblocks-wrap {
    max-width: var(--global-wide-width);
}

.wp-block[data-align="full"] > .innerblocks-wrap {
    max-width: var(--global-max-width-full);
    padding-left: 0;
    padding-right: 0;
}

/* ==============================================
Header Styles
============================================== */
.header-row {
    /* position: absolute !important;
    top: 0;
    left: 0;
    width: 100%; */
    z-index: 10;
    .wp-block-navigation {
        ul.wp-block-navigation__container {
            gap: 2.5rem;
            .wp-block-navigation-item {
                a.wp-block-navigation-item__content {
                    transition: all .3s ease;
                    font-size: 1.125rem;
                }
            }
            .wp-block-navigation-item:not(.has-child) {
                a.wp-block-navigation-item__content:hover,
                a.wp-block-navigation-item__content:focus {
                    color: var(--secondary-color);
                }
            }
            .wp-block-navigation__submenu-container {
                background-color: transparent;
                border: unset;
                border-bottom: .25rem solid var(--secondary-color);
                right: 50% !important;
                transform: translateX(50%);
                text-align: center;
                align-items: center;
                li:first-of-type {
                    margin-top: .75rem;
                }
                li.wp-block-navigation-item {
                    background-color: transparent;
                    width: 100%;
                    a.wp-block-navigation-item__content {
                        background: rgba(214, 223, 228, .9);
                        transition: all .3s ease;
                        color: var(--primary-color);
                        justify-content: center;
                        font-size: 1rem;
                    }
                    a.wp-block-navigation-item__content:hover,
                    a.wp-block-navigation-item__content:focus {
                        background: var(--white);
                    }
                }
            }
            .wp-block-navigation-link.header-contact-us a.wp-block-navigation-item__content {
                background: var(--secondary-color);
                border: 2px solid var(--secondary-color);
                transition: all .3s ease;
                border-radius: .25rem;
                padding: .5rem 1.5rem;
            }
            .wp-block-navigation-link.header-contact-us a.wp-block-navigation-item__content:hover,
            .wp-block-navigation-link.header-contact-us a.wp-block-navigation-item__content:focus {
                background: transparent;
                color: var(--white);
            }
        }
    }
    /* .wp-block-navigation__responsive-dialog {
        max-width:1280px;
        margin: auto;
        margin-top: 3rem;
    } */
}

/* @media (max-width: 62rem) { */
    .wp-block-navigation__responsive-container-open {
        opacity: 0;
        display: flex !important;
        padding: .25rem .5rem;
        transition: all .3s ease;
        background: var(--white);
        svg {
            stroke: var(--primary-color);
            transition: all .3s ease;
        }
    }
    .wp-block-navigation__responsive-container-open:hover,
    .wp-block-navigation__responsive-container-open:focus {
        background: var(--white);
        svg {
            stroke: var(--tertiary-color);
        }
    }
    .wp-block-navigation__responsive-container {
        display: none !important;
    }
    .wp-block-navigation__responsive-container.is-menu-open {
        display: flex !important;
        .wp-block-navigation__responsive-close {
            .wp-block-navigation__responsive-dialog {
                padding: 0 1rem;
                max-width: 1320px;
                margin: auto;
                margin-top: 2rem;

                .wp-block-navigation__responsive-container-content {
                    justify-content: center;
                    align-items: center;
                    text-align: center;
                    ul, li {
                        justify-content: center;
                        align-items: center;
                        text-align: center;
                    }
                    .wp-block-navigation__container {
                        li {
                            padding: .5rem 0;
                        }
                        li a {
                            font-size: 1.5rem;
                        }
                        li a:hover,
                        li a:focus {
                            color: var(--secondary-color) !important;
                        }
                        li.header-contact-us {
                            margin-top: 1rem;
                            a {
                                color: var(--white) !important;
                            }
                        }
                        li.header-contact-us a:hover,
                        li.header-contact-us a:focus {
                            color: var(--secondary-color) !important;
                        }
                        .wp-block-navigation-submenu {
                            padding-top: .5rem;
                            li {
                                margin-top: 0;
                                padding: .25rem;
                                a {
                                    background: var(--white);
                                }
                            }
                        }
                    }
                }
                .wp-block-navigation__responsive-container-close {
                    background: var(--white);
                    color: var(--primary-color);
                    padding: .125rem;
                    margin-right: 2.25rem;
                    transition: all .3s ease;
                }
                .wp-block-navigation__responsive-container-close:hover,
                .wp-block-navigation__responsive-container-close:focus {
                    background: var(--secondary-color);
                    color: var(--white);
                }
                .wp-block-navigation__submenu-container {
                    transform: unset !important;
                    left: unset !important;
                    right: unset !important;
                }
                a {
                    color: var(--primary-color) !important;
                }
            }

        }
    }
/* } */

/* ==============================================
Utility Classes
============================================== */
html {
    scroll-behavior: smooth;
  }
.margin-0 {
    margin: 0;
}

.cta-link {
    color: var(--secondary-color);
    transition: all .3s ease;
    font-weight: bold;
    text-decoration: none;
    position: relative;
    display: inline-flex;
}
.cta-link:hover,
.cta-link:focus {
    color: var(--primary-color);
}

a {
    text-decoration: none;
    font-weight: 400;
    color: var(--tertiary-color);
}
a:hover,
a:focus,
a:visited {
    color: var(--secondary-color);
}

.wp-block-button .wp-block-button__link {
    background:  var(--secondary-color);
    color: var(--white);
    border: 2px solid var(--secondary-color);
    transition: all .3s ease;
    border-radius: .25rem;
    padding: .75rem 2rem;
    font-size: 1.25rem;
}
.wp-block-button .wp-block-button__link:hover {
    background:  transparent;
    color: var(--secondary-color);
}

ul.wp-block-list {
    margin: 0;
    li {
        list-style: none;
        position: relative;
        padding-bottom: .5rem;
    }
    li:before {
        content: '';
        position: absolute;
        left: -1.5rem;
        top: 0.5rem;
        width: 0.7em;
        height: 0.7em;
        border: 2px solid var(--secondary-color);
        border-radius: 50%;
        background: transparent;
    }
}
ol.wp-block-list {
    margin: 0;
}
.stylized-numbering {
    counter-reset: item;
    list-style: none;
    padding-left: 2rem;
  }
  
  .stylized-numbering li {
    counter-increment: item;
    position: relative;
    padding-left: 2rem;
    margin-bottom: 1rem;
    line-height: 1.5;
  }
  
  .stylized-numbering li::before {
    content: counter(item);
    position: absolute;
    left: -1.25rem;
    top: 0;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    color: var(--white);
    text-align: center;
    line-height: 2.375rem;
    font-weight: bold;
    font-size: 0.9rem;
    background-color: var(--secondary-color);
    font-size: 1.5rem;
  }


/* ==============================================
PDF Print Styles
============================================== */

@media print {
	.hero-overlay, .print-pdf, footer {
		display: none !important;
	}
	.print-area {
		> .kt-row-column-wrap {
			width: 100%;
			max-width: unset;
			.kt-has-2-columns {
				grid-template-columns: 1fr 1fr;
			}
		}

	}
}  

/* ==============================================
Forminator Styles
============================================== */
form.forminator-design--default {
    text-align: left;
    .forminator-row {
        .forminator-field {
            .forminator-label {
                font-size: 1rem;
                margin-bottom: .75rem;
            }
            .forminator-input, .forminator-textarea {
                border: 1px  solid #cbcbcb;
                border-radius: 0;
            }
        }
        .forminator-description {
            display: none !important;
        }
    }
    .forminator-button {
        background:  var(--tertiary-color);
        color: var(--white);
        transition: all .3s ease;
        border-radius: 0 !important;
        padding: .75rem 2rem;
        box-shadow: none !important;
        font-size: 1.25rem;
    }
    .forminator-button:hover {
        background: var(--secondary-color);
    }
    .forminator-row-last {
        text-align: center !important;
    }
}