/*
Theme Name: James MacGowan
Theme URI: 
Description: The James MacGowan is a theme that support a Redux Framework (<a href='https://reduxframework.com/' target='_blank'>reduxframework.com</a>).
Author: 
Author URI: 
Version: 1.0
Tags: light, three-columns, right-sidebar, flexible-width, custom-colors, custom-header, custom-background, custom-menu, theme-options, threaded-comments, sticky-post, translation-ready, reduxframework, redux-framework
License: GNU/GPL Version 2 or later
License URI: http://www.gnu.org/licenses/gpl.html
*/

:root {
    --color-heading: #121212;
    --color-body: #414141;
    --color-white: #ffffff;
    --color-brand: #4682B4;
    --color-dark-blue: #036;
    --color-green: #6B8E23;
    --color-invert: #E7E7E7;
    --color-black: #000000;
}

.container {
    max-width: 1140px;
}

.section {
    position: relative;
    padding-left: 30px;
    padding-right: 30px;
}

h1, .h1 {
    font-family: "Libre Baskerville", serif;
    font-size: 70px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -1.4px;
    color: var(--color-heading);
}

h2, .h2 {
    font-family: "Libre Baskerville", serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.8px;
    color: var(--color-heading);
}

h3, .h3 {
    font-family: "Libre Baskerville", serif;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.64px;
    color: var(--color-heading);
}

h4, .h4 {
    font-family: "Libre Baskerville", serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.48px;
    color: var(--color-heading);
}

h5, h6 {
    font-family: "Libre Baskerville", serif;
    color: var(--color-heading);
}

body {
    font-family: "Raleway", sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    color: var(--color-body);
}

.small-reg {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}

.button {
    font-family: "Raleway", sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    padding: 20px 30px;
    border-radius: 0;
    color: var(--color-white);
    background-color: var(--color-brand);
    border: solid 1px var(--color-brand);
}

.button:hover {
    background-color: var(--color-dark-blue);
    border: solid 1px var(--color-dark-blue);
}

.button.outline {
    background-color: transparent;
    color: var(--color-white);
    border-color: var(--color-white);
}

.button.outline:hover {
    background-color: var(--color-dark-blue);
    border: solid 1px var(--color-dark-blue);
}

.subheadline {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    color: var(--color-green);
    margin-bottom: 10px;
}


/* Header Section */
.site-header {
    z-index: 9999;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.20);
    padding: 24px 30px;
}

.site-header .container {
    max-width: 1320px;
}

.header-inner-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-inner-wrap .nav-menu {
    margin: 0;
    gap: 32px;
    justify-content: flex-end;
}

.header-inner-wrap .nav-menu>li {
    padding: 0;
}

.header-inner-wrap .nav-menu>li a {
    display: block;
    padding: 0;
    opacity: 0.7;
    color: var(--color-white);
    margin: 0;
    text-decoration: none;
    transition: all 0.3s ease;
}

.header-inner-wrap .nav-menu>li.current-menu-item a {
    opacity: 1;
    font-weight: 700;
}

.header-inner-wrap .nav-menu>li:hover a {
    opacity: 1;
}

.header-inner-wrap .nav-menu>li.btn-contact {
    width: 100%;
    max-width: 173px;
}

.header-inner-wrap .nav-menu>li.btn-contact a {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    padding: 20px;
    border-radius: 0;
    color: var(--color-white);
    background-color: var(--color-brand);
    border: solid 1px var(--color-brand);
    opacity: 1;
    width: 100%;
    text-transform: uppercase;
    text-align: center;
}

.header-inner-wrap .nav-menu>li.btn-contact a:hover {
    background-color: var(--color-dark-blue);
}

.menu-toggle {
    width: 40px;
    height: 40px;
    padding: 0 !important;
    border-radius: 0;
    font-size: 24px;
}

.menu-toggle,
.main-navigation.toggled ul {
    display: block;
}

.menu-main-navigation-container {
    width: 100%;
}

/* Footer */
.site-footer {
    padding: 80px 30px;
    background-image: url(/wp-content/uploads/2024/12/footer-bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.site-footer .footer-widgets-wrap {
    display: grid;
    grid-template-columns: 380px 158px 158px 215px;
    gap: 24px;
    justify-content: space-between;
}

.site-footer .footer-widgets-wrap .footer-site-logo {
    display: inline-block;
    margin-bottom: 32px;
}

.menu-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.menu-list a {
    color: var(--color-black);
    text-decoration: unset;
}

.footer-address strong {
    font-size: 16px;
}

.footer-address a {
    color: inherit;
    text-decoration: unset;
}

.social-menu-list {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-top: 40px;
}

.social-menu-list a {
    color: var(--color-green);
}

.bottom-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: solid 1px #717171;
    padding-top: 32px;
    margin-top: 80px;
}

.bottom-menu-list {
    display: flex;
    gap: 40px;
}

.bottom-menu-list a {
    text-decoration: unset;
    color: inherit;
}

/* Accordion */
.accordion .accord_row {
	border-bottom: 1px solid var(--color-green);
}
.accordion .title {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin: 0;
	padding: 30px 0;
}

.accordion .title svg {
	fill: var(--color-green);
	flex: 1 1 100%;
	max-width: 24px;
	transform: rotate(180deg);
	transition: all .3s ease-in-out;
}

.accordion .active .title svg {
	transform: rotate(0deg);
}

.accordion .content {
	display: none;
	padding: 10px 0 30px;
}

.accordion .content .wrapper {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.accordion .content ul {
	margin: 0;
	padding-left: 25px;
}

.accordion .content p {
	margin: 0;
}

/* Home Section 1 */
.section-1 {
    overflow: hidden;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding-top: 160px;
}

.section-1 .video-bg-overlay {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}

.section-1 .container {
    max-width: 1210px;
}

.section-1 .video-bg-overlay video,
.section-1 .video-bg-overlay img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top center;
}

.section-1 .inner-section {
    display: flex;
    gap: 73px;
}

.section-1 .col {
    position: relative;
    z-index: 3;
}

.section-1 .video-color-overlay {
    width: 100%;
    height: 100%;
    background: linear-gradient(6deg, #0F0F0F 8.93%, rgba(15, 15, 15, 0.25) 119.33%, rgba(15, 15, 15, 0.00) 242.66%);
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/* .section-1 .video-color-overlay-extra {
    width: 100%;
    height: 100%;
    max-width: 262px;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #036;
} */

.section-1 .col.col-2 {
    position: absolute;
    right: 0;
    padding: 65px 70px 109px;
    background-color: #fff;
    max-width: 598px;
    bottom: 0;
}

.testimonial-wrapper .testimonial-header {
    margin-bottom: 29px;
}

.testimonial-wrapper .testimonial-logo {
    margin-bottom: 29px;
}

.testimonial-wrapper .testimonial-logo img {
    display: block;
}

.testimonial-wrapper .testimonial-content {
    margin-bottom: 27px;
}

.testimonial-wrapper .img-rating {
    display: block;
    margin-bottom: 47px;
}

.testimonial-wrapper .testimonial-author-wrap {
    display: flex;
    align-items: center;
    gap: 20px;
}

.author {
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    color: #000000;
}

.section-1 .col-1 {
    max-width: 50%;
    padding-bottom: 70px;
    flex: 1 1 50%;
}

.section-1 .col-1 h1 {
    color: var(--color-white);
    margin-bottom: 9px;
}

.section-1 .col-1 .content p {
    color: var(--color-white);
}

.section-1 .col-1 .client-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.section-1 .col-1 .client-logo svg {
    width: 100%;
    height: auto;
    color: rgba(255, 255, 255, 0.5);
}

.section-1 .col-1 .client-logo svg path {
    fill: currentColor;
}

.section-1 .button-wrap {
    display: flex;
    gap: 20px;
    margin-bottom: 50px;
    flex-wrap: wrap;
}

.section-1 .content {
    margin-bottom: 22px;
}

.section-1 .next-section {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
}

.section-1 .next-section p {
    margin: 0;
    color: var(--color-white);
    font-size: 16px;
}

.section-1 .next-section svg * {
    transition: all 0.3s ease
}

.section-1 .next-section:hover svg * {
    stroke: var(--color-brand);
}

.section-1 .next-section:hover p {
    font-weight: 700;
}

/* Home Section 2 */
.section-2 {
    padding-top: 120px;
    padding-bottom: 120px;
    background-color: var(--color-heading);
}

.section-2 .section-header {
    display: grid;
    grid-template-columns: repeat(2, auto);
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 62px;
}

.section-2 .section-header a.button.primary {
    max-width: fit-content;
}

.section-2 .section-header .header-wrap {
    max-width: 508px;
}

.section-2 .section-header h2 {
    margin: 0;
    color: var(--color-white);
}

.section-2 .section-content {
    margin-bottom: 67px;
}

.section-2 .section-content .img-description {
    max-width: 50%;
    margin-left: auto;
    position: relative;
    padding-top: 70px;
}

.section-2 .section-content .img-description p {
    color: var(--color-white);
}

.section-2 .section-content .img-description .img-curve {
    display: block;
    position: absolute;
    top: -38px;
    left: -136px;
}

.section-2 .section-blurb {
    border: solid 1px var(--color-white);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.section-2 .section-blurb .blurb-item {
    padding: 40px 32px;
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.section-2 .section-blurb .blurb-item-2 {
    border-right: solid 1px var(--color-white);
    border-left: solid 1px var(--color-white);
}

.section-2 .section-blurb .blurb-item h3 {
    margin: 0;
    color: var(--color-white);
    font-size: 24px;
}

.section-2 .section-blurb .blurb-content p {
    color: var(--color-white);
}

.section-2 .section-blurb .blurb-item .blurb-content p:last-of-type {
    margin: 0;
}

/* Home Section 3 */
.section-3 {
    padding-top: 120px;
    padding-bottom: 120px;
}

.section-3 .column-wrap {
    display: grid;
    grid-template-columns: 418px 1fr;
    justify-content: space-between;
    gap: 64px;
}

.section-3 .column-wrap .col-1 h2 {
    margin-bottom: 0;
}

.section-3 .column-wrap .col-1 .img-curve {
    display: block;
    margin-left: auto;
    margin-right: -30px;
    margin-top: -30px;
    margin-bottom: 73px;
}

.section-3 .column-wrap .col-1 .section-content {
    border-left: 1px solid var(--color-green);
    padding-left: 50px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40px - 1rem);
}

.section-3 .col-2 {
    display: flex;
    gap: 32px;
}

.section-3 .col-2 .img-wrap {
	flex: 1 1 45%;
}

.section-3 .col-2 .img-wrap:first-child  {
	flex-basis: 55%;
}

.section-3 .col-2 img {
    width: 100%;
}

/* Home Section 4 */
.section-4 {
    padding-top: 120px;
    padding-bottom: 120px;
    background: rgba(18, 18, 18, 0.03);
}

.section-4 .section-header {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 100px;
}

.section-4 .section-header h2 {
    max-width: 512px;
}

.section-4 .section-header .button-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.section-4 .section-header .button-wrap .section-content p:last-of-type {
    margin: 0;
}

.section-4 .section-blurb {
    grid-template-columns: repeat(3, 1fr);
    display: grid;
    gap: 32px;
}

.section-4 .section-blurb .blurb-box {
    border: 1px solid var(--color-green);
    background: var(--color-white);
    padding: 50px 32px;
    display: flex;
    flex-direction: column;
    min-height: 353px;
    justify-content: space-between;
}

.section-4 .section-blurb .blurb-box .num {
    font-family: "Libre Baskerville";
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -1.6px;
    color: var(--color-green);
    margin-bottom: 20px;
}

.section-4 .section-blurb .blurb-box .blurb-title {
    margin-bottom: 30px;
}

.section-4 .section-blurb .blurb-box .blurb-content p:last-of-type {
    margin: 0;
}

.section-4 .section-blurb .blurb-item {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.section-4 .section-blurb .blurb-item:nth-child(even) {
    flex-direction: column-reverse;
}

.section-4 .section-blurb .img-wrap {
    position: relative;
    padding-top: 60%;
    height: 100%;
}

.section-4 .section-blurb .img-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Home Section 5 */
.section-5 {
    padding-top: 120px;
    padding-bottom: 120px;
    /* background: var(--color-heading); */
}

.section-5 .testimonial-wrapper {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.testimonial-wrap-inner.slick-initialized {
    width: calc(100% - 148px);
    padding-right: 30px;
}

.section-5 .testimonial-wrapper .slider-controls {
    display: flex;
    align-items: center;
    gap: 20px;
    max-width: 148px;
}

.section-5 .testimonial-wrapper .slider-controls button {
    margin: 0;
    border: none;
    background: transparent;
    border-radius: 100%;
    width: 64px;
    height: 64px;
    padding: 0;
}

.section-5 .testimonial-wrapper .slider-controls button * {
    stroke: var(--color-brand);
    transition: all 0.1s ease;
}

.section-5 .testimonial-wrapper .slider-controls button:hover * {
    fill: var(--color-brand);
    stroke: var(--color-white);
}

.section-5 .testimonial-wrapper .testimonial-item {
    display: flex;
    gap: 31px;
    align-items: center;
    /* color: var(--color-white); */
}

.section-5 .testimonial-wrapper .testimonial-item .testimonial-author-wrap {
    border-right: 1px solid #4B4B4B;
    flex-wrap: wrap;
    max-width: 290px;
}

.section-5 .testimonial-wrapper .testimonial-logo img {
    max-width: 157px;
}

.section-5 .testimonial-wrapper .testimonial-logo {
    margin: 0;
    width: 100%;
}

.section-5 .testimonial-wrapper .testimonial-item .rating {
    width: 100%;
}

.section-5 .testimonial-wrapper .testimonial-item .rating img {
    margin: 0;
}

/* .section-5 .testimonial-wrapper .testimonial-item * {
    color: inherit;
} */

.section-5 .testimonial-wrapper .testimonial-item .testimonial-content {
    font-size: 25px;
    width: calc(100% - 290px);
}

.section-5 .testimonial-wrapper .testimonial-item .testimonial-content p {
    font-style: italic;
}

.section-5 .testimonial-wrapper .testimonial-item .testimonial-content p strong {
    color: var(--color-green);
}

.section-5 .testimonial-wrapper .testimonial-item .testimonial-content p:last-of-type {
    margin-bottom: 0;
}

/* Home Section 6 */
.section-6 {
    background: var(--color-heading);
    padding-bottom: 120px;
    padding-top: 120px;
}

.section-6 .video-banner {
    margin: 0 -30px 120px;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    overflow: hidden;
    position: relative;
}

.section-6 .video-banner .video-img {
    display: block;
    width: 100%;
}

.section-6 .video-banner .play-icon {
    position: absolute;
    z-index: 2;
}

.section-6 .video-banner .play-icon img {
    display: block;
}

.section-6 .video-banner a {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.section-6 .video-banner a:after {
    content: '';
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.00) 6.82%, rgba(18, 18, 18, 0.54) 37.99%, #121212 87.97%);
    width: 100%;
    height: 100%;
    max-height: 740px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

.section-6 .section-header {
    text-align: center;
    color: var(--color-white);
}

.section-6 .button-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.section-6 .section-header * {
    color: inherit;
}

.section-6 .section-header h2 {
    max-width: 870px;
    margin: 0 auto 40px;
}

.section-6 .section-header p {
    margin: 0 auto 50px;
    max-width: 618px;
    color: var(--color-invert);
}

/* Home Accordion */
.home_accord {
	padding-top: 120px;
	padding-bottom: 120px;
}

.home_accord .accord_header {
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 50px;
}

.home_accord .accord_header h2 {
	margin: 0;
	max-width: 330px;
}

.home_accord .accord_header p {
	margin: 0;
	max-width: 570px;
}

.home_accord .accord_header p strong {
	color: var(--color-green);	
}

/* Hero Section */
.hero-section {
    background-color: var(--color-dark-blue);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}

.hero-section .row {
    position: relative;
    z-index: 2;
    max-width: 877px;
    margin: 0 auto;
}

.hero-section .row p:last-of-type {
    margin-bottom: 0;
}

.hero-section .section-overlay {
    position: absolute;
    background: linear-gradient(0deg, #0F0F0F 0%, #00336688 100%);
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.hero-section,
.hero-section h1,
.hero-section p {
    color: var(--color-white);
}

.hero-section p {
    max-width: 655px;
    margin-left: auto;
    margin-right: auto;
}

.hero-section {
    text-align: center;
    min-height: 650px;
    align-content: center;
}

/* FAQ */
.faq-sec-2 {
    padding-top: 112px;
    padding-bottom: 112px;
}

.faq-sec-2 .inner-section {
    display: flex;
    gap: 80px;
}

.faq-sec-2 .inner-section .col-1 {
    max-width: 500px;
    position: relative;
}

.faq-sec-2 .inner-section .section-content-wrap {
    position: sticky;
    top: 0;
}

.faq-sec-2 .inner-section .col-2 {
    width: calc(100% - 500px);
}

.faq-wrap {
    display: flex;
    gap: 20px;
    flex-direction: column;
}

.faq-wrap details {
    margin: 0;
    background-color: var(--color-black);
    color: var(--color-white);
}

.faq-wrap details summary {
    color: inherit !important;
    padding: 28.5px 30px;
}

.faq-wrap details summary {
    font-size: 20px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}

.faq-wrap details summary::after {
    transform: rotate(0deg);
    filter: brightness(0) invert(1);
    width: 32px;
    height: 32px;
    background-size: 27px;
    background-position: center;
    margin: 0 !important;
    float: none;
    transition: all 0.3s ease;
}

.faq-wrap details[open] summary::after {
    transform: rotate(180deg);
}

.faq-wrap details[open] p:last-of-type {
    margin: 0;
}

.faq-content {
    padding: 0 30px 30px;
}

.faq-wrap details p {
    color: inherit;
}

/* Responsive CSS */
@media screen and (min-width: 1025px) {
    .menu-toggle {
        display: none;
    }

    .main-navigation ul {
        display: flex;
    }

    #site-navigation {
        width: 50%;
        justify-content: flex-start;
    }
}

@media screen and (max-width: 1300px) {
    .section-1 .col-1 {
        max-width: 50%;
    }


    /* .section-1 {
        padding-top: 210px;
    } */
}

@media screen and (max-width: 1140px) {
    .section-1 .col.col-2 {
        margin-right: -30px;
        position: relative;
    }
}

@media screen and (max-width: 1024px) {

    /* Header */
    .header-inner-wrap .menu-main-navigation-container {
        position: absolute;
        top: -120px;
        left: 0;
        right: 0;
        background-color: var(--color-dark-blue);
        padding: 0px 30px 30px;
        opacity: 0;
        transition: all 0.3s linear;
        z-index: -1;
    }

    .site-header {
        border: none;
        position: relative;
        background-color: var(--color-dark-blue);
    }

    .header-inner-wrap .nav-menu {
        flex-direction: column;
        align-items: flex-start;
    }

    .site-branding {
        position: relative;
        z-index: 2;
    }

    .menu-toggle {
        position: relative;
        z-index: 2;
    }

    #site-navigation.toggled .menu-main-navigation-container {
        z-index: 1;
        top: 120px;
        bottom: unset;
        opacity: 1;
    }

    .main-navigation.toggled ul {
        display: flex;
    }

    /* Footer */
    .site-footer .footer-widgets-wrap {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(2, auto);
    }

    .site-footer .footer-widgets-wrap .footer-widget-1 {
        grid-area: 1 / 1 / 2 / 4;
    }

    .site-footer {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .bottom-bar {
        margin-top: 60px;
    }
	
	/* Accordion */
	.accordion .title {
		padding: 20px 0;
	}
	.accordion .content {
		padding-bottom: 20px;
	}
	.accordion .title svg {
		max-width: 20px;
	}

    /* Home */
    .section-1 .col-1 {
        max-width: 50%;
    }

    .section-1 {
        /* padding-top: 210px; */
/*         min-height: calc(100vh - 85px); */
		min-height: 600px;
        padding-top: 60px;
    }

    h1, .h1 {
        font-size: 50px;
    }

    h2, .h2 {
        font-size: 30px;
    }

    .section-2 .section-blurb .blurb-item h3 {
        font-size: 20px;
    }

    .section-3 .column-wrap .col-1 .img-curve {
        margin-top: 0;
    }

    .section-3 .col-2 {
        align-items: center;
        gap: 20px;
    }

    .section-3 .col-2 {
        flex-direction: column;
    }

    .section-3 .img-wrap {
        width: 100%;
        position: relative;
        padding-top: 100%;
    }

    .section-3 .col-2 img {
        object-fit: cover;
        object-position: top center;
        position: absolute;
        height: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    h4, .h4 {
        font-size: 18px;
    }

    .section-5 .testimonial-wrapper .testimonial-item .testimonial-content {
        font-size: 20px;
    }

    .section-4 .section-blurb .blurb-box .num {
        font-size: 50px;
        margin-bottom: 20px;
    }

    .section-1 .inner-section {
        align-items: center;
        gap: 30px;
    }

    .section-1 .col.col-2 {
        padding: 30px;
        max-width: 100%;
    }

    .section-1 .inner-section {
        flex-direction: column;
    }

    .section-1 .col-1:has(.client-logo) {
        max-width: 100%;
        margin-bottom: 30px;
        order: -1;
    }

    .section-1 .col-1:not(:has(.client-logo)) {
        order: 1;
    }
	
	/* Home Accordion */
	.home_accord .accord_header {
		flex-direction: column;
		margin-bottom: 30px;
	}
	
	.home_accord .accord_header h2,
	.home_accord .accord_header p {
		max-width: 100%;
	}

    /* FAQ */
    .faq-sec-2 .inner-section .col {
        width: 50%;
    }

    .faq-sec-2 .inner-section {
        gap: 30px;
    }
}

@media screen and (max-width: 990px) {
    body {
        font-size: 16px;
    }

    /* Header */
    .header-inner-wrap .custom-logo-link {
        display: block;
        max-width: 140px;
    }

    .site-header {
        padding: 20px;
    }

    #site-navigation.toggled .menu-main-navigation-container {
        top: 84px;
    }

    .header-inner-wrap .menu-main-navigation-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    /* Footer */
    .bottom-menu-list {
        gap: 20px;
    }

    .bottom-bar {
        flex-direction: column;
        gap: 20px;
    }

    /* Home */
    /* .section-1 {
        padding-top: 120px;
    } */

    .section-3 .column-wrap {
        grid-template-columns: repeat(2, 1fr);
    }

    .section-5 .testimonial-wrapper .testimonial-item {
        flex-direction: column;
    }

    .section-5 .testimonial-wrapper .testimonial-item .testimonial-author-wrap {
        max-width: 100%;
        border: none;
        justify-content: center;
    }

    .section-5 .testimonial-wrapper .testimonial-item .testimonial-content {
        width: 100%;
        margin: 0;
        text-align: center;
    }

    .section-5 .testimonial-wrapper {
        justify-content: center;
        flex-direction: column;
        gap: 30px;
        align-items: center;
    }

    .testimonial-wrap-inner.slick-initialized {
        width: 100%;
        padding: 0;
    }


    .testimonial-wrapper .testimonial-logo img {
        margin: 0 auto;
    }

    .section-5 .testimonial-wrapper .testimonial-item .rating img {
        margin: 0 auto;
    }

    .section {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .section-1 .col.col-2 {
        margin: 0;
    }

    .section-4 .section-header {
        margin-bottom: 60px;
    }

    .section-6 .video-banner {
        margin-bottom: 60px;
        margin-left: -20px;
        margin-right: -20px;
    }

    .section-6 .video-banner .play-icon {
        max-width: 80px;
    }
}

@media screen and (max-width: 767px) {
    .section {
        padding-left: 20px;
        padding-right: 20px;
    }

    .container {
        padding-left: 0;
        padding-right: 0;
    }

    .section-1 .inner-section {
        flex-wrap: wrap;
        gap: 30px;
    }

    .section-1 .col-1 {
        max-width: 100%;
        padding: 0;
    }

    h1, .h1 {
        font-size: 35px;
    }

    .section-1 .col.col-2 {
        padding: 30px;
    }

    .section-1 .inner-section {
        flex-direction: column;
    }

    .section-1 .col-1:has(.client-logo) {
        max-width: 100%;
        margin-bottom: 20px;
        order: -1;
    }

    .section-1 .col-1:not(:has(.client-logo)) {
        order: 1;
    }

    .section-2 .section-header {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-bottom: 30px;
    }

    .section-2 .section-content .img-description {
        max-width: 100%;
    }

    h2, .h2 {
        font-size: 25px;
    }

    .section-2 .section-content .img-description .img-curve {
        left: 0;
        right: 0;
        margin: 0 auto;
        max-width: 50px;
        top: -10px;
    }

    .section-2 .section-content {
        margin-bottom: 30px;
    }

    .section-2 .section-blurb {
        grid-template-columns: 1fr;
    }

    .section-2 .section-blurb .blurb-item-2 {
        border: none;
        border-bottom: solid 1px var(--color-white);
        border-top: solid 1px var(--color-white);
    }

    .section-3 .column-wrap {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .section-3 .column-wrap .col-1 .img-curve {
        transform: rotateY(-180deg);
        max-width: 70px;
        margin-bottom: 15px;
        margin-right: 30px;
    }

    .section-3 .column-wrap .col-1 .section-content {
        padding-left: 20px;
    }

    .section-4 .section-header {
        grid-template-columns: 1fr;
    }

    .section-4 .section-blurb {
        grid-template-columns: 1fr;
    }

    .section-4 .section-blurb .blurb-item {
        gap: 0;
        flex-direction: column-reverse;
    }

    .section-4 .section-blurb .blurb-item img {
        display: block;
        width: 100%;
    }

    .section-4 .section-blurb .blurb-box {
        padding: 20px;
        min-height: unset;
    }

    .button {
        width: 100%;
    }

    .section-2 .section-header a.button.primary {
        max-width: 100%;
    }

    /* Footer */
    .site-footer .footer-widgets-wrap {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .site-footer .footer-widgets-wrap .footer-widget-1 {
        grid-area: auto;
    }

    .menu-list {
        gap: 15px;
    }

    .bottom-bar {
        text-align: center;
    }

    .bottom-menu-list {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .site-footer {
        padding-left: 20px;
        padding-right: 20px;
    }

    /* FAQ */
    .faq-sec-2 .inner-section {
        flex-direction: column;
    }

    .faq-sec-2 .inner-section .col {
        width: 100%;
    }

    .faq-wrap details summary {
        padding: 20px;
        font-size: 16px;
    }

    .faq-content {
        padding: 0 20px 20px;
    }
}