/*
Theme Name: Blank
Author: 405mediagroup
Author URI: https://www.405mediagroup.com
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: blank
Tags: 
*/

:root {
    --color-acc: #f58c1f;
    --color-text: #000;
    --color-gray: #929292;
    --font-acc: 'Chonburi', sans-serif;
    --font-text: 'Montserrat', sans-serif;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    color: var(--color-text);
    font-family: var(--font-text);
    font-size: 16px;
    line-height: 1.5;
}

.text-text {
    color: var(--color-text);
}

.text-acc {
    color: var(--color-acc);
}

.text-gray {
    color: var(--color-gray);
}

.text-white {
    color: #fff;
}

.font-acc {
    font-family: var(--font-acc);
}

.font-text {
    font-family: var(--font-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-acc);
}

h1,
.h1 {
    font-size: 48px;
    font-weight: 400;
    line-height: 1;
}

h2,
.h2 {
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
}

h3,
.h3 {
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
}

.h4 {
    font-size: 24px;
}

.h5 {
    font-size: 20px;
}

.h6 {
    font-size: 18px;
}

@media (max-width: 767px) {
    h1,
    .h1 {
        font-size: 36px;
    }
    h2,
    .h2 {
        font-size: 30px;
    }
    h3,
    .h3 {
        font-size: 24px;
    }
    .h4 {
        font-size: 20px;
    }
    .h5 {
        font-size: 18px;
    }
    .h6 {
        font-size: 16px;
    }
}

.container,
.container-lg {
    width: 100%;
    max-width: 1300px;
    padding-left: 64px;
    padding-right: 64px;
    margin-left: auto;
    margin-right: auto;
}

.container-lg {
    max-width: 1500px;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
    grid-row-gap: 30px;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
    padding-left: 15px;
    padding-right: 15px;
}

.col-1 {
    width: 8.333333%;
}

.col-2 {
    width: 16.666666%;
}

.col-3 {
    width: 25%;
}

.col-4 {
    width: 33.333333%;
}

.col-5 {
    width: 41.666666%;
}

.col-6 {
    width: 50%;
}

.col-7 {
    width: 58.333333%;
}

.col-8 {
    width: 66.666666%;
}

.col-9 {
    width: 75%;
}

.col-10 {
    width: 83.333333%;
}

.col-11 {
    width: 91.666666%;
}

.col-12 {
    width: 100%;
}

@media (max-width: 767px) {
    .container,
    .container-lg {
        padding-left: 15px;
        padding-right: 15px;
    }
    .col-1,
    .col-2,
    .col-3,
    .col-4,
    .col-5,
    .col-6,
    .col-7,
    .col-8,
    .col-9,
    .col-10,
    .col-11 {
        width: 100%;
    }
    .reverse> :first-child {
        order: 2;
    }
    .reverse> :last-child {
        order: 1;
    }
}

.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.flex-1 {
    flex: 1;
}

.items-center {
    align-items: center;
}

.items-stretch {
    align-items: stretch;
}

.items-end {
    align-items: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-evenly {
    justify-content: space-evenly;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

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

.text-justify {
    text-align: justify;
}

.align-baseline {
    vertical-align: baseline;
}

.align-middle {
    vertical-align: middle;
}

.align-text-top {
    vertical-align: text-top;
}

.align-bottom {
    vertical-align: bottom;
}

.font-black {
    font-weight: 900;
}

.font-extrabold {
    font-weight: 800;
}

.font-bold {
    font-weight: 700;
}

.font-semibold {
    font-weight: 600;
}

.font-medium {
    font-weight: 500;
}

.font-normal {
    font-weight: 400;
}

.font-light {
    font-weight: 300;
}

.font-extralight {
    font-weight: 200;
}

.font-thin {
    font-weight: 100;
}

.leading-1 {
    line-height: 1;
}

.leading-1\.2 {
    line-height: 1.2;
}

.leading-1\.5 {
    line-height: 1.5;
}

.leading-2 {
    line-height: 2;
}

.italic {
    font-style: italic;
}

.uppercase {
    text-transform: uppercase;
}

.capitalize {
    text-transform: capitalize;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.inset-0 {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.pt-15 {
    padding-top: 15px;
}

.pb-15 {
    padding-bottom: 15px;
}

.pt-30 {
    padding-top: 30px;
}

.pb-30 {
    padding-bottom: 30px;
}

.pt-40 {
    padding-top: 40px;
}

.pb-40 {
    padding-bottom: 40px;
}

.pt-60 {
    padding-top: 60px;
}

.pb-60 {
    padding-bottom: 60px;
}

.pt-80 {
    padding-top: 80px;
}

.pb-80 {
    padding-bottom: 80px;
}

.mt-auto {
    margin-top: auto;
}

.mt-0 {
    margin-top: 0;
}

.mb-0 {
    margin-bottom: 0;
}

.mt-15 {
    margin-top: 15px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mt-30 {
    margin-top: 30px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mt-40 {
    margin-top: 40px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mt-60 {
    margin-top: 60px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mt-80 {
    margin-top: 80px;
}

.mb-80 {
    margin-bottom: 80px;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.clear,
.clearfix {
    clear: both;
}

p {
    margin-block-start: 0;
    margin-block-end: 1em;
}

p:last-child {
    margin-block-end: 0;
}

a {
    color: var(--color-acc);
    text-decoration: none;
    transition: .2s;
}

a svg {
    transition: .2s;
}

input,
textarea,
select {
    font-family: var(--font-text);
    font-size: 16px;
}

input[type=submit],
input[type=button] {
    cursor: pointer;
    transition: .2s;
}

select {
    appearance: none;
}

img,
iframe {
    vertical-align: middle;
    max-width: 100%;
}

.alignleft {
    float: left;
    margin-right: 30px;
    margin-bottom: 30px;
}

.alignright {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
}

@media (max-width: 767px) {
    .alignleft {
        float: none;
        margin-right: 0;
    }
    .alignright {
        float: none;
        margin-left: 0;
    }
}

@media (max-width: 767px) {
    .desktop {
        display: none;
    }
}

@media (min-width: 768px) {
    .mobile {
        display: none;
    }
}

@media (min-width: 768px) {
    .columns-2 {
        columns: 2;
    }
    .columns-3 {
        columns: 3;
    }
}


/* custom style */

.page-content:after {
    content: "";
    display: block;
    clear: both;
}

.mobile-overlay {
    content: "";
    position: fixed;
    z-index: 3;
    visibility: hidden;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    transition: .2s;
}

.mobile-overlay .close {
    position: absolute;
    top: 0;
    right: 10px;
    color: #fff;
    font-size: 48px;
}

.header-mobile {
    display: none;
    padding: 20px 10px;
    background-color: var(--color-text);
}

.mobile-phone a {
    color: var(--color-acc);
    font-family: var(--font-acc);
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
}

.mobile-bars {
    width: 48px;
    height: 24px;
    background-image: url(../../uploads/2024/08/mobile-bars.png);
}

.mobile-open .mobile-bars {
    visibility: hidden;
}

@media (max-width: 1024px) {
    .mobile-open .mobile-overlay {
        visibility: visible;
        opacity: 1;
    }
    .header-mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

.header {
    position: relative;
    z-index: 2;
    background-color: #fff;
    width: 100%;
    line-height: 1;
}

.header-top {
    margin-bottom: 0;
    background-color: #000;
    border-bottom: 2px solid var(--color-acc);
    padding: 10px;
}

.header-top .h4 {
    vertical-align: middle;
}

.header-top .h6 {
    letter-spacing: .1em;
    vertical-align: middle;
}

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

.header-logo {
    padding: 10px 25px;
}

.header-right {
    padding-right: 30px;
}

.header-info {
    text-align: right;
}

.header-social {
    margin-right: 20px;
    font-size: 30px;
}

.header-phone {
    font-family: var(--font-acc);
    font-size: 36px;
    font-weight: 400;
}

.header-info a {
    /*color: var(--color-text);*/
    vertical-align: middle;
}

.header-info a:hover {
    /*color: var(--color-acc);*/
}

.header-info a svg {
    fill: var(--color-text);
}

.header-info a:hover svg {
    fill: var(--color-acc);
}

.header-nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

@media (min-width: 1025px) {
    .sticky .header {
        position: fixed;
        top: 0;
    }
    .sticky:not(.home) {
        padding-top: 169px;
    }
    .header-nav ul.menu {
        margin-top: 10px;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }
    .header-nav ul.menu>li {
        position: relative;
    }
    .header-nav ul.menu>li>a {
        display: block;
        border-radius: 5px;
        color: var(--color-text);
        font-weight: 600;
        padding: 10px 25px;
        position: relative;
    }
    .header-nav ul.menu>li.menu-item-has-children>a:after {
        content: "\f107";
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        margin-left: 5px;
        vertical-align: middle;
    }
    .header-nav ul.menu>li>a:hover {
        background-color: var(--color-acc);
        color: var(--color-text);
    }
    .header-nav ul.menu>li:last-child>a {
        background-color: var(--color-acc);
        color: var(--color-text);
        font-weight: 700;
    }
    .header-nav ul.menu>li:not(:first-child):not(:last-child)>a:before {
        content: "";
        position: absolute;
        top: 16px;
        left: -3px;
        width: 4px;
        height: 4px;
        border-radius: 3px;
        background-color: var(--color-text);
    }
    .header-nav ul.menu>li ul {
        position: absolute;
        right: 0;
        background-color: #fff;
        border: 1px solid #aaa;
        width: max-content;
        max-width: 240px;
        min-width: 100%;
        visibility: hidden;
        opacity: 0;
        transition: .2s;
    }
    .header-nav ul.menu>li:hover>ul {
        visibility: visible;
        opacity: 100;
    }
    .header-nav ul.menu>li ul li {
        position: relative;
    }
    .header-nav ul.menu>li ul li a {
        display: block;
        padding: 10px 20px;
        color: var(--color-text);
    }
    .header-nav ul.menu>li ul li a:hover {
        background-color: var(--color-acc);
        color: #fff;
    }
    .header-nav ul.menu>li>ul li.menu-item-has-children>a:before {
        content: "\f104";
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        position: absolute;
        left: 5px;
        top: 50%;
        transform: translateY(-50%);
    }
    .header-nav ul.menu>li ul li ul {
        top: 0;
        right: 100%;
        min-width: unset;
    }
    .header-nav ul.menu>li ul li:hover>ul {
        visibility: visible;
        opacity: 1;
    }
    .home:not(.sticky) .header {
        position: absolute;
        top: 0;
        background-color: transparent;
    }
    .home:not(.sticky) .header-logo img {
        visibility: hidden;
    }
    .home:not(.sticky) .header-info a {
        /*color: #fff;*/
    }
    .home:not(.sticky) .header-info a:hover {
        /*color: var(--color-acc);*/
    }
    .home:not(.sticky) .header-nav ul.menu>li>a {
        color: #fff;
    }
    .home:not(.sticky) .header-nav ul.menu>li>a:hover {
        color: var(--color-text);
    }
    .home:not(.sticky) .header-nav ul.menu>li:last-child>a {
        color: var(--color-text);
    }
    .home:not(.sticky) .header-nav ul.menu>li:last-child>a:hover {}
    .home:not(.sticky) .header-nav ul.menu>li:not(:first-child):not(:last-child)>a:before {
        background-color: #fff;
    }
}

@media (max-width: 1024px) {
    .header-top .h4 {
        display: block;
    }
    .header-inner {
        justify-content: center;
    }
    .header-logo {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .header-right {
        padding-right: 0
    }
    .header-info {
        display: none;
    }
    .header-nav {
        position: fixed;
        z-index: 3;
        top: 0;
        bottom: 0;
        left: -75%;
        width: 75%;
        overflow-y: auto;
        background-color: var(--color-acc);
        transition: .2s;
    }
    .mobile-open .header-nav {
        left: 0;
    }
    .header-nav ul.menu {
        display: block;
        margin: 10px 0 0 0;
        list-style-type: none;
    }
    .header-nav ul.menu>li.menu-item-has-children>a:after {
        content: "\25bc";
        position: absolute;
        right: 20px;
        color: var(--color-text);
        cursor: pointer;
    }
    .header-nav ul.menu>li.menu-item-has-children>ul {
        max-height: 0;
        transition: .2s;
        overflow: hidden;
    }
    .header-nav ul.menu>li.open>ul {
        max-height: max-content;
    }
    .header-nav ul.menu li>a {
        display: block;
        border-bottom: 1px solid var(--color-text);
        color: var(--color-text);
        padding: 10px 20px;
        text-transform: uppercase;
        position: relative;
    }
    .header-nav ul.menu ul li>a {
        padding-left: 40px;
    }
    .header-nav ul.menu ul li li>a {
        padding-left: 60px;
    }
}

.side-button {
    z-index: 9;
    position: fixed;
    padding: 15px 30px 10px;
    font-family: var(--font-acc);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    background-color: var(--color-acc);
    color: var(--color-text);
    text-align: center;
}

@media (min-width: 768px) {
    .side-button {
        top: 330px;
        right: 0;
        transform: rotateZ(-90deg) translateY(120px);
        border-radius: 15px 15px 0 0;
    }
}

@media (max-width: 767px) {
    body {
        padding-bottom: 64px;
    }
    .side-button {
        bottom: 0;
        width: 100%;
        padding: 20px 15px;
    }
}

.gform_wrapper {
    position: relative;
}

.gform_heading {
    display: none;
}

@media (max-width: 640px) {
    .gform_wrapper.gravity-theme .ginput_complex span:last-child {
        margin-bottom: 0;
    }
}

.banner {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 960px;
    padding-top: 80px;
}

.banner-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.banner-bg:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.banner-bg-inner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.banner-bg-inner:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: repeat-y;
    background-position: left;
}

.banner-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-content {
    position: relative;
/*     max-width: 830px; */
    width: 60%;
    padding-left: 15px;
    padding-right: 15px;
}

.banner-content .text-white {
    margin-top: -40px;
    margin-left: 30px;
    max-width: 585px;
}

.banner-form {
/*     max-width: 390px; */
	width: 40%;
    border-radius: 10px;
    background-color: rgba(0, 0, 0, .5);
    padding: 40px 30px 50px;
    position: relative;
}

.banner-form .gform_wrapper.gravity-theme .gform_fields {
    grid-gap: 8px;
}

.banner-form .gform_wrapper.gravity-theme .gfield input,
.banner-form .gform_wrapper.gravity-theme .gfield select,
.banner-form .gform_wrapper.gravity-theme .gfield textarea {
    border-radius: 3px;
    border: 1px solid #d4d4d4;
    background-color: #fff;
}

.banner-form .gform_wrapper.gravity-theme .gfield select {
    padding: 8px 6px;
}

.banner-form .gform_wrapper.gravity-theme .gfield select option {
    color: #333;
}

.banner-form .gform_wrapper.gravity-theme .gform_footer {
    margin: 0;
    padding: 0;
}

.banner-form .gform_wrapper.gravity-theme .gform_footer input {
    margin-top: 10px;
    margin-bottom: 0;
    padding: 20px;
    border: none;
    border-radius: 5px;
    background-color: var(--color-acc);
    color: var(--color-text);
    width: 100%;
    font-family: var(--font-acc);
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
}

.banner-form .gform_wrapper.gravity-theme .gform_footer input:hover {
    background-color: #fff;
}

@media (max-width: 1024px) {
    .banner {
        min-height: auto;
        padding-top: 240px;
        padding-bottom: 200px;
    }
    .banner-bg:after {}
    .banner-bg-inner:after {}
    .banner-content .text-white {
        margin-top: -20px;
        margin-left: 15px;
    }
    .banner-form {
        display: none;
    }
}

.rounded-bg {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 40px), 50% 100%, 0 calc(100% - 40px));
}

.banner.rounded-bg>p {
    display: none;
}

.about-bg h1 {
    margin-top: 0;
    color: var(--color-acc);
    display: inline-block;
    background-image: url(../../uploads/2024/08/title-map.png);
    background-repeat: no-repeat;
    background-position: right;
    padding: 25px 25px;
    font-size: 36px;
    font-weight: 400;
}

.about-bg h1 strong {
    font-size: 42px;
    font-weight: 400;
}

.about-bg h1 u {
    text-decoration-thickness: 1px;
    text-underline-offset: 10px;
}

@media (max-width: 767px) {
    .about-bg h1 {
        padding-top: 40px;
        padding-bottom: 40px;
        font-size: 22px;
    }
    .about-bg h1 strong {
        font-size: 26px;
    }
}

.service-bg {
    background-image: url(../../uploads/2024/08/service-bg.jpg);
    background-size: cover;
    background-position: center;
    padding-bottom: 140px;
}

.service-item {
    position: relative;
}

.service-image {
    position: relative;
    padding-top: 85%;
    border-radius: 30px;
    overflow: hidden;
}

.service-image:after {
    content: "";
    position: absolute;
    top: 25px;
    left: 25px;
    right: 25px;
    bottom: 25px;
    transition: .2s;
    border: 3px solid transparent;
    border-radius: 25px;
}

.service-item:hover .service-image:after {
    border-color: #fff;
}

.service-image-inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.service-image-inner:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: .2s;
}

.service-item:hover .service-image-inner:after {
    background-color: rgba(245, 140, 31, .9);
}

.service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-inner {
    text-align: center;
    padding-top: 30px;
    padding-bottom: 20px;
}

.service-inner h2 {
    margin-top: 0;
    margin-bottom: 5px;
    line-height: 1;
}

.feature-bg {
    background-size: cover;
    background-position: center;
}

.feature-inner {
    padding-right: 80px;
}

.feature-inner ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    grid-gap: 50px;
}

.feature-inner ul li {
    min-height: 80px;
    padding-left: 130px;
    font-size: 18px;
    position: relative;
}

.feature-inner ul li strong {
    font-family: var(--font-acc);
    font-size: 24px;
    font-weight: 400;
    text-transform: uppercase;
}

.feature-inner ul li:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 80px;
    height: 100%;
    background-image: url(../../uploads/2024/08/feature-icon.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 73px 73px;
    transition: .2s;
}

.feature-inner ul li:hover:before {
    background-size: 80px 80px;
}

@media (max-width: 767px) {
    .feature-inner {
        padding-right: 0;
        margin-bottom: 30px;
    }
    .feature-inner ul li {
        padding-left: 0;
        padding-top: 100px;
        text-align: center;
        justify-content: center;
    }
    .feature-inner ul li:before {
        width: 100%;
        height: 90px;
    }
}

.area-bg {
    background-image: url(../../uploads/2024/08/area-bg.jpg);
    background-size: cover;
    background-position: center;
    padding-top: 200px;
    padding-bottom: 180px;
}

.area-inner {
    max-width: 640px;
    margin-left: auto;
    text-align: right;
}

.area-inner .cta-button {
    margin-top: 100px;
}

@media (max-width: 767px) {
    .area-bg {
        background-image: url(../../uploads/2024/08/area-bg-1.jpg);
        padding-top: 80px;
        padding-bottom: 600px;
    }
    .area-inner {
        text-align: center;
    }
    .area-bg .cta-button {
        margin-top: 40px;
    }
}

.cta-button {
    display: inline-block;
    background-color: var(--color-acc);
    color: var(--color-text);
    padding: 20px;
    width: 320px;
    text-align: center;
    border-radius: 40px;
    font-size: 18px;
    font-weight: 700;
}

.cta-button:hover {
    background-color: #fff;
}

.ranch-bg .cta-button {
    margin-top: 30px;
}

.ranch-bg .cta-button:hover {
    background-color: var(--color-text);
    color: var(--color-acc);
}

@media (max-width: 767px) {
    .ranch-bg {
        text-align: center;
    }
    .ranch-bg .cta-button {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}

.cta-bg {
    background-image: url(../../uploads/2024/08/cta-bg.jpg);
    background-size: cover;
    background-position: center;
    padding-top: 160px;
    padding-bottom: 160px;
}

.cta-inner {
    max-width: 660px;
}

.cta-bg .cta-button {
    margin-top: 30px;
}

@media (max-width: 767px) {
    .cta-bg {
        background-image: url(../../uploads/2024/08/cta-bg-1.jpg);
        padding-top: 80px;
        padding-bottom: 600px;
        text-align: center;
    }
}

.testi-bg .owl-carousel .owl-stage {
    display: flex;
}

.testi-bg .owl-carousel .owl-item img {
    display: inline-block;
    width: auto;
}

.review-item {
    padding: 30px 30px;
    height: 100%;
}

.review-inner {
    height: 100%;
    padding: 50px 50px 20px;
    border-radius: 15px;
    background-color: rgb(28, 28, 28);
    color: #fff;
    box-shadow: 0px 6px 25.92px 6.08px rgba(0, 0, 0, 0.13);
    display: flex;
    flex-direction: column;
    position: relative;
}

.map-bg {
    border-top: 7px solid var(--color-acc);
    border-bottom: 7px solid var(--color-acc);
}

.map-bg iframe {
    width: 100%;
    height: 420px;
}

.footer-bg {
    padding-top: 120px;
    padding-bottom: 160px;
    background-color: #231f20;
    background-image: url(../../uploads/2024/08/footer-bg.jpg);
    background-size: cover;
    background-position: center;
    line-height: 2;
}

@media (min-width: 1280px) {
    .footer-about {
        padding-right: 100px;
    }
}

.menu-footernav-container ul {
    padding-left: 0;
    list-style: none;
}

.menu-footernav-container ul li {
    margin-bottom: 5px;
}

.menu-footernav-container ul li a {
    color: inherit;
}

.menu-footernav-container ul li a:before {
    content: "\f0c1";
    font-family: "Font Awesome 6 Free";
    font-size: 14px;
    font-weight: 900;
    margin-right: 10px;
    color: var(--color-acc);
}

.menu-footernav-container ul li a:hover {
    color: var(--color-acc);
}

.footer-social {
    display: flex;
    align-items: center;
    column-gap: 20px;
    line-height: 1;
}

.footer-social a {
    color: var(--color-text);
}

.footer-social a:hover {
    color: var(--color-acc);
}

.footer-social a svg {
    fill: var(--color-text);
}

.footer-social a:hover svg {
    fill: var(--color-acc);
}

@media (max-width: 767px) {
    .footer-bg {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .subfooter-bg {
        padding-left: 15px;
        padding-right: 15px;
        text-align: center
    }
    .footer-social {
        width: 100%;
        justify-content: center;
    }
}

.page-header-wrap {
    padding-top: 220px;
    padding-bottom: 220px;
}

.page-header-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page-header-overlay {
    background-repeat: repeat-y;
    background-position: left;
}

.page-header h1 {
    margin: 0;
    font-size: 60px;
    font-weight: 400;
    text-transform: uppercase;
    color: #fff;
    line-height: 0.8;
    text-align: center;
    text-shadow: 0px 10px 30.08px rgba(0, 0, 0, 0.64);
}

@media (max-width: 767px) {
    .page-header-wrap {
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .page-header-overlay {
        background-position: center;
    }
    .page-header h1 {
        font-size: 30px;
        text-align: center;
    }
}

.contact-map,
.contact-map iframe {
    width: 100%;
    height: 100%;
}

.contact-map,
.contact-content {
    border: 2px solid #bebebe;
    border-radius: 15px;
    overflow: hidden;
}

.contact-content {
    padding: 70px 60px;
    background-color: #f4f4f4;
}

@media (max-width: 767px) {
    .contact-content {
        padding: 40px 15px;
    }
    .contact-map {
        height: 320px;
    }
}

#gform_wrapper_2 {
    margin: 0;
    position: relative;
}

#gform_wrapper_2 .gform_fields {
    grid-row-gap: 10px;
}

#gform_wrapper_2 input,
#gform_wrapper_2 textarea,
#gform_wrapper_2 select {
    background-color: #f4f4f4;
    border: 2px solid #bebebe;
    border-radius: 30px;
    padding: 15px 15px;
    vertical-align: middle;
}

#gform_wrapper_2 input::placeholder,
#gform_wrapper_2 textarea::placeholder {
    color: #8f8f8f;
}

#gform_wrapper_2 textarea {
    height: 140px;
}

#gform_wrapper_2 .gfield_checkbox {
    margin: 40px auto 30px;
    max-width: 560px;
    columns: 2;
}

#gform_wrapper_2 .gfield_checkbox .gchoice {
    margin-bottom: 20px;
}

#gform_wrapper_2 .gfield-choice-input+label {
    max-width: 100%;
}

#gform_wrapper_2 .gform_footer {
    margin-top: 40px;
    padding: 0;
}

#gform_wrapper_2 .gform_footer .button {
    padding: 20px 120px;
    margin: 0 auto;
    background-color: var(--color-text);
    color: #fff;
    font-family: var(--font-acc);
    font-size: 24px;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: 50px;
}

#gform_wrapper_2 .gform_footer .button:hover {
    background-color: var(--color-acc);
}

@media (max-width: 767px) {
    #gform_wrapper_2 .gfield_checkbox {
        columns: 1;
    }
    #gform_wrapper_2 .gform_footer .button {
        padding-left: 15px;
        padding-right: 15px;
        width: 100%;
    }
}

.city-about-bg h2 {
    margin-top: 0;
    font-family: var(--font-text);
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}

.city-about-bg h2 strong {
    display: block;
    font-family: var(--font-acc);
    font-size: 48px;
    font-weight: 400;
}

@media (max-width: 767px) {
    .city-about-bg h2 {
        font-size: 24px;
    }
    .city-about-bg h2 strong {
        font-size: 30px;
    }
}

.city-service-bg {
    background-color: #2c2c2c;
    position: relative;
    padding-top: 80px;
    padding-bottom: 80px;
}

.city-map {
    border: 2px solid #fff;
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
}

.city-map * {
    width: 100%;
    height: 100%;
}

.city-map iframe {
    min-height: 540px;
}

.city-service {
    height: 100%;
    background-color: #fff;
    border-radius: 20px;
    padding: 60px 60px;
}

.city-service h2 {
    margin-top: 0;
    margin-bottom: 60px;
    font-family: var(--font-text);
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}

.city-service h2 strong {
    font-family: var(--font-acc);
    font-size: 30px;
    font-weight: 400;
}

.city-service ul {
    margin: 0;
    font-size: 18px;
    column-count: 2;
    column-gap: 60px;
}

.city-service ul li {
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    .city-service-bg {
        padding-bottom: 80px;
    }
    .city-service-bg:before {
        height: 24px;
        background-size: 100% 24px;
    }
    .city-map iframe {
        min-height: 320px;
    }
    .city-service {
        padding: 60px 15px 30px;
    }
    .city-service h2 {
        margin-bottom: 30px;
    }
    .city-service .mt-60 {
        margin-top: 30px;
    }
    .city-service ul {
        font-size: 18px;
        column-count: 1;
    }
}

.things-bg {
    background-color: #1e1e1e;
}

.things-bg h2 {
    margin-top: 0;
    margin-bottom: 60px;
    font-size: 48px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}

@media (max-width: 767px) {
    .things-bg h2 {
        font-size: 30px;
    }
}

.city-blogs-bg h2 {
    margin-top: 0;
    margin-bottom: 40px;
    font-size: 48px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}

.city-blogs h2 {
    font-family: var(--font-text);
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
}

@media (max-width: 767px) {
    .city-blogs-bg h2 {
        font-size: 30px;
    }
    .city-blogs h2 {
        font-size: 20px;
    }
}

.post-content:after {
    content: "";
    display: block;
    clear: both;
}

.page-id-61 .cta-bg,
.error404 .cta-bg {
    display: none;
}

.thank-bg,
.error-bg {
    background-image: url(../../uploads/2024/08/thank-bg.jpg);
    background-size: cover;
    background-position: center;
    min-height: 860px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 40px), 0 100%);
}

@media (max-width: 767px) {
    .thank-bg,
    .error-bg {
        min-height: auto;
        padding-top: 60px;
        padding-bottom: 100px;
    }
	
	.banner-content {
		width: 100%;
	}
}

.thank-bg p {
    margin-top: 40px;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
}

.error-bg p {
    margin-top: 60px;
    margin-bottom: 60px;
    color: #fff;
    font-size: 24px;
    text-transform: uppercase;
}

.error-bg a {
    display: inline-block;
    border: 1px solid #fff;
    border-radius: 15px;
    background-color: var(--color-acc);
    color: #fff;
    padding: 20px 40px;
    font-size: 24px;
}

.error-bg a:hover {
    background-color: var(--color-text);
}

@media (max-width: 767px) {
    .error-bg img {
        display: none;
    }
    .error-bg p {
        margin-top: 0;
    }
}

.blog-item {
    height: 100%;
    border-radius: 10px;
    background-color: rgb(255, 255, 255);
    box-shadow: 0px 17px 29px 0px rgba(85, 85, 85, 0.2);
    border: 2px solid transparent;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: .2s;
}

.blog-item:hover {
    border-color: var(--color-acc);
}

.blog-image {
    position: relative;
    padding-top: 66.666667%;
}

.blog-image a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.blog-image a:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: .2s;
}

.blog-item:hover .blog-image a:after {
    background-color: rgba(245, 140, 31, .9);
}

.blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-inner {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    padding: 20px 15px;
}

.blog-title {
    margin-top: 0;
    font-family: var(--font-acc);
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}

.blog-title a {
    color: var(--color-text);
}

.blog-title a:hover {
    color: var(--color-acc);
}

.blog-excerpt {
    margin-bottom: 20px;
    text-align: center;
}

.blog-button {
    margin-top: auto;
    text-align: center;
}

.blog-button a {
    display: inline-block;
    background-color: var(--color-text);
    color: #fff;
    font-size: 16px;
    padding: 10px 30px;
    border-radius: 0;
}

.blog-button a:hover {
    background-color: var(--color-acc);
}

#home-banner 