/*
 Theme Name:   Twenty Twenty One Child
 Theme URI:    http://example.com/twenty-twenty-one-child/
 Description:  Twenty Twenty Child Theme
 Author:       John Doe
 Author URI:   http://example.com
 Template:     twentytwentyone
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twentyfifteenchild
*/

:root {
    --light-blue: #b7d7e2;
	--medium-blue: #6ca0b5;
	--dark-blue: #14324a;
	--darker-blue: #0d2435;
	--yellow: #F0DA83;
	--black: #333333;
	--white: #ffffff;
	--grey: #f2f2f2;
    --primary-font: 'Open Sans',sans-serif;
    --secondary-font: 'Josefin Sans',sans-serif;
    --third-font: 'Bebas Neue',sans-serif;
    --site-max-width: 120rem;
}
html {
    font-size: 62.5%;
    width: 100%;
	scroll-behavior: smooth;
}
@media only screen and (min-width: calc(98.1 * 10px)) {
    .mobile-only {
        display: none !important;
    }
}
@media only screen and (max-width: calc(98 * 10px)) {
    .desktop-only {
        display: none !important;
    }
}
/*@media screen and (max-width: 48rem) {
  html {
    font-size: 58%;
  }
}*/
/*----------thme settings--------*/
.entry-content, .entry-summary{
    font-family: inherit;
}
header *, main *, footer *{
    max-width: initial;
}
.site-header, .site-main, .widget-area, .site-footer{
    padding-top: 0rem;
    padding-bottom:0rem;
    width: 100%;
    max-width: inherit;
}
.site-main > *{
    margin-top:0rem;
    margin-bottom: 0rem;
}
span.edit-link,
header#masthead,
a.skip-link {
    display: none;
}
.site-main > article > *,
.site-main > .not-found > *,
.entry-content > *,
[class*=inner-container] > *,
.wp-block-template-part > *,
.wp-block-post-template :where(li > *){
    width: 100%;
    max-width: 100%;
    margin: 0rem;
}
section{
    max-width: inherit !important;
    margin-left: 0rem !important;
    margin-right: 0rem !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
div {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
footer.entry-footer{
    display: none;
}
select:focus{
    outline-offset: 0;
    outline: 0px;
}
.site .button:focus,
button:focus, input[type=submit]:focus, input[type=reset]:focus, .wp-block-search .wp-block-search__button:focus,
.wp-block-button .wp-block-button__link:focus, .wp-block-file a.wp-block-file__button:focus{
    outline-offset: 0;
    outline: 0px;
}
/*----------eo thme settings--------*/
*, *::after, *::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    width: 100%;
    color: var(--black);
    font-size: 1.8rem;
    font-family: var(--primary-font);
    background-color: var(--white);
}
#page{
    overflow: hidden;
}
h1, h2, h3, h4{
    line-height: 110%;
    padding-bottom: 2rem;
}
h1, h2 {
    font-family: var(--secondary-font);
    font-weight: 700;
}
h1 {
    font-size: 5rem;
}
h2 {
    color: var(--dark-blue);
	text-transform: uppercase;
	font-size: 4.2rem;
    margin-bottom: 0.3rem;
    line-height: 130%;
	padding-bottom: 0.5rem;
}
h2 span {
	font-size: 3.2rem;
	color: var(--medium-blue);
	text-transform: none;
	display: block;
	line-height: 120%;
}
h3 {
    font-size: 2.4rem;
    font-weight: 500;
    font-family: var(--secondary-font);
    text-transform: none;
}
h4 {
    font-size: 1.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
}
img {
    max-width: 100%;
    height: auto;
}
p {
    padding-bottom: 2rem;
    line-height: 180%;
	color: var(--dark-blue);
}
a, a:focus{
    text-decoration: none;
}
a:focus{
    outline: inherit !important;
    background: initial !important;
    text-decoration: none !important;
}
a:focus img{
    outline: inherit !important;
}
a:visited {
    color: inherit;
}
ul{
    list-style: disc;
    padding-left: 1.5rem;
}
ol{
    padding-left: 1.5rem;
}
ul li, ol li {
    line-height: 180%;
    font-weight: 400;
}
.dark * {
    color: var(--white);
}
.dark {
	background-color: var(--dark-blue);
}
.grey{
    background-color: var(--grey);
}
::selection {
    background: var(--dark-blue);
    color: var(--light-blue);
}
/* ------------------ Gradient Layout on Hero ------------------*/
section[class*="overlay-"] {
    position: relative;
}
section[class*="overlay-"]:before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.6;
    z-index: 1;
}
section[class*="overlay-"] > * {
    z-index: 2 !important;
    position: relative;
}
.overlay-color:before {
    background: var(--dark-blue);
}
.overlay-dark:before {
    background: var(--black);
}
/* ------------------ EO Gradient Layout on Hero ------------------*/
/* Menu Style */
.nav ul {
    list-style: none;
}
.nav ul li a {
    text-decoration: none;
    position: relative;
}
.nav .navigation-nav > ul {
    display: flex;
    justify-content: flex-end;
}

body.open-menu{
    overflow: hidden;
    position: fixed;
}
body.open-menu .header {
    overflow-x: hidden;
    height: 100vh;
    width: 100%;
    position: fixed;
}
.header {
    position: relative;
    z-index: 999;
}
.header-container{
    background: var(--dark-blue);
    z-index: 3;
    position: relative;
}
.nav {
    display: grid;
    grid-template-columns: auto 4fr;
    align-items: center;
    max-width: var(--site-max-width);
    margin: auto;
    text-align: right;
    padding: 4rem 3.5rem 0rem 3.5rem;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}
.nav .logo-box {
    width: 12rem;
    height: auto;
	transform: translateY(-1.5rem);
}
.nav ul li.contact a {
    color: var(--dark-blue);
    font-weight: 600;
}

.logo-mobile{
    display: none;
}
@media only screen and (min-width: 981px) {
    .nav ul li.contact a {
      background: var(--yellow) !important;
      padding: 1.8rem 2.2rem;
   }  
}
/*--------------Mega menu header---------*/
.menu-listing .learn-more{
    color:var(--black);
    text-transform: inherit;
    padding: 0;
    font-weight:500;
}
.menu-listing .learn-more::after{
    display: inline-block;
    margin-left: 0.5rem;
    content: "\35";
    font-weight: bold;
    text-decoration: none !important;
    transition: all 0.5s;
    font-size: calc(1.8rem - 0.2rem) !important;
    font-weight:600;
    letter-spacing:.1rem;
    font-family: 'ElegantIcons';
}


.menu-listing li button:focus{
    outline: initial;
}
.menu-listing li button {
    position: absolute;
    right: 0;
    top: 0;
    padding: 1rem 1.5rem;
    background: transparent !important;
    border: none;
    border-radius: 0rem;
    width: 4rem;
    height: 4rem;
    top: 0.7rem;
    margin: auto;
    right: 2rem;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    transform: none;
    z-index: 9999;
}
.menu-listing li button i::before{
    font-family: eleganticons;
    content:"\4c";
    speak: none;
    font-weight: 700;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-size: 3rem;
    display: inline-block;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    left: 0;
    top: 0;
    position: absolute;
}
.menu-listing li button.active-button i::before{
    transform: rotate(45deg);
}

/*.menu-listing .active-parent-current{
    border-bottom: 1.5px solid #888888;
    margin-bottom: 0;
}*/
.menu-listing>li:last-child.active-parent-current>a{
    border-bottom: 1.5px solid #888888;
}
.menu-listing .active-parent-current + li{
    margin-top: 0rem;
}
.menu-listing > li > a {
    text-decoration: none;
    color: #fff;
    padding: 1.5rem;
    text-transform: uppercase;
}
@media only screen and (min-width: calc(98.1 * 10px)) {
    .menu-listing li button{
        display: none;
    }
    .menu-listing > li > a{
        padding-bottom: 4rem;
    }
    .menu-listing > li:hover > a {
        color: var(--light-blue);
    }
    .menu-listing > li > a:active {
        color: var(--light-blue);
    }
    .menu-listing > li.has-children > a {
        padding-right: 2em;
    }
    .menu-listing > li.has-children > a::before {
        content: '\33';
        font-family: 'ElegantIcons';
        font-size: 2.5rem;
        position: absolute;
        right: .4rem;
        top:calc(100% / 2 - 2.5rem);
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        line-height: 1;
        vertical-align: middle;
        -moz-transition: all .3s ease-in;
        -o-transition: all .3s ease-in;
        -webkit-transition: all .3s ease-in;
        transition: all .3s ease-in;
    }
    .menu-listing > li.has-children:hover > a::before{
        transform: rotate(180deg);
    }

   
}
@media only screen and (max-width: calc(125 * 10px)) and (min-width: calc(98.1 * 10px)){
    .menu-listing > li > a{
        padding-bottom: 3rem;
    }
    .menu-listing > li.has-children > a::before{
        top: calc(100% / 2 - 1.9rem);
    }
}

@media only screen and (max-width:calc(48 * 10px)) {
}


.mega-menu{
    padding: 2rem;
    display: none;
    text-shadow: none;
    background-color: var(--grey);
}
.menu-listing > li.mega-menu-width .mega-menu{
    width: 100%;
    max-width: var(--site-max-width);
    right: 0;
    text-align: left;
}

.menu-listing li .mega-menu li{
    margin: 0px;
}
.menu-listing li .mega-menu li a{
    color:var(--black);
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    text-align: left;
    display: block;
    padding: .5rem 0;
    text-transform: inherit;
    font-size: inherit;
}
@media only screen and (min-width: calc(48 * 10px)) {
    .mega-menu{
        padding: 2rem 3rem;
    }
}
@media only screen and (min-width: calc(98.1 * 10px)) {
    .mega-menu{
        top: -100rem;
        visibility: hidden;
        opacity: 0;
        left: auto;
        right: auto;
        position: absolute;
        display: block;
        padding: 3rem 4rem;
        border-top: 4px solid var(--light-blue);
    }

    .has-children:not(.mega-menu-width) .mega-menu{
        min-width: 20rem;
    }

    .menu-listing > li:hover .mega-menu{
        visibility: visible;
        opacity: 1;
        z-index: 30;
        top: 100%;
        transition-delay: 0.2s;
    }
    .menu .main-nav > li:hover > a::after{
        opacity: 1 !important;
        transition-delay: 0.2s;
    }

}
@media only screen and (max-width: calc(98 * 10px)) {
    .mega-menu{
        max-width: 95% !important;
        margin: auto;
    }
}
@media only screen and (max-width: calc(48 * 10px)) {
    .mega-menu{
        max-width: 90% !important;
    }
}






.mega-menu-row{
    display: block;
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.mega-menu-row .mega-menu-column p{
    padding-bottom: 0;
    line-height: 150%;
}
.mega-menu-row .mega-menu-column img{
    margin-bottom: 1rem;
}
@media only screen and (min-width: calc(48.1 * 10px)) {
    .mega-menu-row{
        display: -ms-grid;
        display: grid;
        position: relative;
        width: 100%;
        margin: 0 auto;
        grid-gap: 2rem;
    }
    .mega-menu-column-1{
        -ms-grid-columns: repeat(auto-fit, minmax(min(115rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(115rem, 100%), 1fr));
    }
    .mega-menu-column-2{
        -ms-grid-columns: repeat(auto-fit, minmax(min(55rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(55rem, 100%), 1fr));
    }
    .mega-menu-column-3{
        -ms-grid-columns: repeat(auto-fit, minmax(min(35rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(35rem, 100%), 1fr));
    }
    .mega-menu-column-4{
        -ms-grid-columns: repeat(auto-fit, minmax(min(25rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(25rem, 100%), 1fr));
    }
    .mega-menu-column-5{
        -ms-grid-columns: repeat(auto-fit, minmax(min(19rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(19rem, 100%), 1fr));
    }
    .mega-menu-column-6{
        -ms-grid-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));
        grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));
    }
}
@media only screen and (max-width: calc(48 * 10px)) {
    .mega-menu-row .mega-menu-column{
        margin-bottom: 1.5rem;
    }
}




/*--------------eo Mega menu header---------*/

/*----------When Open Menu Mobile-----------*/

@-webkit-keyframes animation_menu_mobile {
    0%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
    35%{
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
}
@-moz-keyframes animation_menu_mobile {
    0%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
    35%{
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
}
@keyframes animation_menu_mobile{
    0%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
    35%{
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
}
@-ms-keyframes animation_menu_mobile{
    0%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
    35%{
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
}
@-o-keyframes animation_menu_mobile{
    0%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
    35%{
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
}
/*----------eo When Open Menu Mobile-----------*/

/*----------When close Menu Mobile-----------*/

@-webkit-keyframes animation_menu_mobile_close{
    0%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
    30%{
        opacity: 1;
        visibility: visible;
    }
    50%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
}
@-moz-keyframes animation_menu_mobile_close {
    0%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
    30%{
        opacity: 1;
        visibility: visible;
    }
    50%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
}
@keyframes animation_menu_mobile_close{
    0%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
    30%{
        opacity: 1;
        visibility: visible;
    }
    50%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
}
@-ms-keyframes animation_menu_mobile_close{
    0%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
    30%{
        opacity: 1;
        visibility: visible;
    }
    50%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
}
@-o-keyframes animation_menu_mobile_close{
    0%{
        visibility: visible;
        opacity: 1;
        width:100%;
    }
    30%{
        opacity: 1;
        visibility: visible;
    }
    50%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        visibility: hidden;
        opacity:0;
        width:0;
    }
}
/*---------eo-When close Menu Mobile-----------*/
@media only screen and (max-width: calc(125 * 10px)) and (min-width: calc(98.1 * 10px)) {
   /* .nav .logo-box {
        width: 20rem;
    }*/
}
@media only screen and (max-width: calc(98 * 10px)) {
    .header-container{
        position: absolute;
        width: 100%;
    }

    body.open-menu .navigation-nav {
        -webkit-animation: animation_menu_mobile .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -moz-animation: animation_menu_mobile .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -ms-animation: animation_menu_mobile .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -o-animation: animation_menu_mobile .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        animation: animation_menu_mobile .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
    }
    .navigation-nav.animation_close{
        -webkit-animation: animation_menu_mobile_close .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -moz-animation: animation_menu_mobile_close .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -ms-animation: animation_menu_mobile_close .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        -o-animation: animation_menu_mobile_close .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
        animation: animation_menu_mobile_close .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
    }
    .navigation-nav {
        height: 100vh;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 9;
        visibility: hidden;
        opacity: 0;
        width: 0;
    }
    .logo-mobile{
        display: block;
        width: 18rem;
        margin:auto;
        position: relative;
        margin-top: 5rem;
    }
    .logo-mobile img{
        width: 100%;
    }

    .menu-listing {
        position: absolute;
        top: 12rem;
        list-style: none;
        text-align: left;
        width: 100%;
        display: block !important;
        padding-left: 0rem;
        padding-bottom: 5rem;
    }
    .menu-listing li {
        position: relative;
    }
    .menu-listing > li {
        width: 90%;
        margin: auto;
    }
    .open-menu .menu-listing li a{
        text-indent: 0;
    }
    .menu-listing li a{
        color: var(--black);
        text-indent: 40rem;
        transition: all .8s cubic-bezier(0.68, -0.55, 0.265, 1.55) !important;
        */
    }
    .menu-listing li a:link,
    .menu-listing li a:visited {
        display: inline-block;
        font-size: 3rem;
        padding: 1rem 2rem;
        text-decoration: none;
        text-transform: uppercase;
        /*transition: all .4s;*/
        font-weight: 700 !important;
        color: var(--light-blue) !important;
        font-family: var(--secondary-font);
    }
    .menu-listing li a:link span,
    .menu-listing li a:visited span {
        margin-right: 1.5rem;
        display: inline-block;
    }
    .menu-listing li a:hover,
    .menu-listing li a:active {
        background-position: 100%;
        color: #90caf9;
        transform: translateX(1rem);
    }

}
@media only screen and (max-width: calc(48 * 10px)) {
    .menu-listing > li {
        width: 95%;
    }
    
}
@media only screen and (max-width: 410px) {
    .menu-listing li a:link,
    .menu-listing li a:visited {
      font-size: 2rem;
    }
}



/*----------animation circle mobile menu---------*/
.bg-animation-mobile, .bg-animation-mobile::before{
    display: block;
    height: 4rem;
    width: 4rem;
    border-radius: 50%;
    position: absolute;
}
.bg-animation-mobile{
    left: 1rem;
    top: 1rem;
    right: 3.5rem;
    z-index: 2;
}
.bg-animation-mobile::before{
    content: "";
    display: block;
    transition: transform 0.8s cubic-bezier(0.86, 0, 0.07, 1);
    background-color: var(--dark-blue);
    background-size: 10%;
}
body.open-menu .bg-animation-mobile::before {
    transform: scale(80);
    position: fixed;
}
@media only screen and (max-width: calc(48 * 10px)) {
    .bg-animation-mobile, .bg-animation-mobile::before{
        height: 3rem;
        width: 3rem;
    }
}
/*----------eo animation circle mobile menu---------*/



/*----------Menu icon mobile---------*/
/*body.open-menu .btn-menu{
    background-color:var(--black);
}*/
.btn-menu {
    height: 6.1rem;
    width: 6.1rem;
    background: var(--light-blue);
    position: absolute;
    text-align: center;
    cursor: pointer;
    border-radius: 50%;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    z-index: 999;
    box-shadow: 0 1rem 3rem rgb(0 0 0 / 10%);
}
.btn-menu span.line-1{
    position: relative;
    margin-top: 2.8rem;
}
body.open-menu .btn-menu span.line-1,
body.open-menu .btn-menu span.line-1:before,
body.open-menu .btn-menu span.line-1:after {
    background: var(--dark-blue);
}
.btn-menu span.line-1,
.btn-menu span.line-1:before,
.btn-menu span.line-1:after {
    width: 3.3rem;
    background: var(--black);
    height: 0.4rem;
    display: inline-block;
}
.btn-menu span.line-1:before,
.btn-menu span.line-1:after {
    content: '';
    position: absolute;
    left: 0;
    transition: all .2s;
}
.btn-menu span.line-1:before {
    top: -1rem;
}
.btn-menu span.line-1:after {
    top:1rem;
}
body.open-menu .btn-menu span.line-1 {
    background-color: transparent;
}
body.open-menu .btn-menu span.line-1::before {
    top: 0;
    transform: rotate(135deg);
}
body.open-menu .btn-menu span.line-1::after {
    top: 0;
    transform: rotate(-135deg);
}
@media screen and (max-width: calc(98 * 10px)) {
}
@media screen and (max-width: calc(48 * 10px)) {
    .btn-menu{
        height: 5.2rem;
        width: 5.2rem;
    }
    .btn-menu span.line-1 {
        margin-top: 2.4rem;
    }
    .btn-menu span.line-1,
    .btn-menu span.line-1:before,
    .btn-menu span.line-1:after{
        width: 3rem;
    }
    .btn-menu span.line-1:before {
        top: -0.8rem;
    }
    .btn-menu span.line-1:after {
        top: 0.8rem;
    }
}
/*----------eo Menu icon mobile---------*/

/* -------eo Mobile Menu Style -----*/

/*-------block-menu-bg-----------*/
.block-menu-bg{
    height: 6.1rem;
    width: 6.1rem;
    position: absolute;
    right: 3rem;
    top:52px;
}
@media screen and (min-width: calc(98.1 * 10px)) {
    .block-menu-bg{
        display: none;
    }
}
@media screen and (max-width: calc(48 * 10px)) {
    .block-menu-bg{
        height: 5.2rem;
        width: 5.2rem;
    }
    .nav .logo-box{
      width: 9rem;
    }
    .block-menu-bg{
       top:30px;
   }

}
/*-------eo block-menu-bg-----------*/
/*-------site content-----------*/
@media screen and (max-width: calc(98 * 10px)) {
    .site-content{
        padding-top: 101px;
    }
}
@media screen and (max-width: calc(48 * 10px)) {
    .site-content{
        padding-top: 81px;
    }
}

/*-------eo site content-----------*/


/*-----form default--------*/
form label{
    font-size: 1.5rem;
}
input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
.wpcf7-select,
.wpcf7-form textarea,
.site textarea{
    border: solid 0.1rem #999;
    color: #333;
    width: 100%;
    padding: 1rem 1.5rem;
    border-radius: 0.3rem;
    box-shadow: none !important;
    line-height: 1.8;
    font-size: 1.5rem;
    box-sizing: border-box;
    margin: 0px;
}
.site .button:not(:hover):not(:active):not(.has-background),
button:not(:hover):not(:active):not(.has-background),
input[type=submit]:not(:hover):not(:active):not(.has-background),
input[type=reset]:not(:hover):not(:active):not(.has-background),
.wp-block-search .wp-block-search__button:not(:hover):not(:active):not(.has-background),
.wp-block-button .wp-block-button__link:not(:hover):not(:active):not(.has-background),
.wp-block-file a.wp-block-file__button:not(:hover):not(:active):not(.has-background){
    background-color: var(--dark-blue);
    color:var(--light-blue);
    border:0px !important;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
}
.site .button:hover, .site .button:active,
button:hover, button:active,
input[type=submit]:hover,
input[type=submit]:active, input[type=reset]:hover,
input[type=reset]:active,
.wp-block-search .wp-block-search__button:hover,
.wp-block-search .wp-block-search__button:active,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:active,
.wp-block-file a.wp-block-file__button:hover,
.wp-block-file a.wp-block-file__button:active{
    background-color: var(--dark-blue);
    border-color: inherit !important;
    color:var(--light-blue);
    opacity: 0.8;
    border:0px !important;
    outline: 0px !important;
}
input:focus-visible, textarea:focus-visible{
    outline: inherit !important;
}
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item{
    display: block;
    position: relative;
    padding-left: 30px;
    margin-left: 0px;
}
.wpcf7-checkbox .wpcf7-list-item input,
.wpcf7-radio .wpcf7-list-item input{
    display: inline-block;
    position: absolute;
    left: 0;
    top: 9px;
    width: 18px;
    height: 18px;
}
.wpcf7-checkbox .wpcf7-list-item span,
.wpcf7-radio .wpcf7-list-item span{
    display: block;
    color:var(--black);
    vertical-align: middle;
}
/*-----eo form default--------*/
/* Grid Layout */
section {
    padding: 10rem 0rem;
}
.full-width-container .container, .full-width-container .container .module{
    display: block;
    max-width: 100%;
    padding: 0;
}
.container {
    display: -ms-grid;
    display: grid;
    position: relative;
    max-width: var(--site-max-width);
    width: 100%;
    margin: 0 auto;
    grid-gap: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}
.full {
    grid-column: 1 / -1;
}
.center {
    text-align: center;
}
.module {
    padding: 3rem;
    position: relative;
}
header.entry-header {
    display: none;
}
.primary-color-box,
.secondary-color-box,
.black-color-box,
.grey-color-box{
    width: 15rem;
    height: 15rem;
    border-radius: 10%;
    margin-bottom: 1.8rem;
    display: inline-block;
}
.primary-color-box{
    background-color: var(--dark-blue);
}
.secondary-color-box{
    background-color: var(--light-blue);
}
.black-color-box{
    background-color: var(--black);
}
.grey-color-box{
    background-color: var(--grey);
}
.two-column-full-width{
    padding-top: 0rem;
    padding-bottom: 0rem;
}
.two-column-full-width .container{
    grid-gap:0rem;
    padding-left: 0rem;
    padding-right: 0rem;
}
.two-column-full-width .container .module{
    padding: 8rem 5rem;
}
@media screen and (min-width: calc(48 * 10px)) {
    .container-1 {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
        -ms-grid-columns: minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr);
    }
    .container-3 {
        -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
    .container-4 {
        -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
    .container-5 {
        -ms-grid-columns: (1fr)[5];
        grid-template-columns: repeat(5, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
    .container-6 {
        -ms-grid-columns: (1fr)[6];
        grid-template-columns: repeat(6, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
	.container-7 {
        -ms-grid-columns: (1fr)[7];
        grid-template-columns: repeat(7, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr)  minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr)  minmax(0, 1fr);
    }
    .container-66-33{
        -ms-grid-columns: 2fr 1fr;
        grid-template-columns: 2fr 1fr;
    }
    .container-33-66{
        -ms-grid-columns: 1fr 2fr;
        grid-template-columns: 1fr 2fr;
    }
    .container-75-25{
        -ms-grid-columns: 3fr 1fr;
        grid-template-columns: 3fr 1fr;
    }
    .container-25-75{
        -ms-grid-columns: 1fr 3fr;
        grid-template-columns: 1fr 3fr;
    }
    .container-80-20{
        -ms-grid-columns: 4fr 1fr;
        grid-template-columns: 4fr 1fr;
    }
    .container-20-80{
        -ms-grid-columns: 1fr 4fr;
        grid-template-columns: 1fr 4fr;
    }
}
@media screen and (min-width: calc(98.1 * 10px)) {
    .container-2 {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}
@media only screen and (max-width: calc(125 * 10px)) and (min-width: calc(98.1 * 10px)) {
    .container-5, .container-6 {
        -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
}
@media only screen and (max-width: calc(98 * 10px)) and (min-width: calc(48 * 10px)) {
    .container-4, .container-5, .container-6 {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}
@media screen and (max-width: calc(160 * 10px)) {
    .two-column-full-width .container{
        width: 100%;
        max-width: var(--site-max-width);
    }
}
@media screen and (max-width: calc(98 * 10px)) {
    .two-column-full-width .container .module{
        padding:6rem 5rem;
    }
    .left-image .container .module:first-child, .right-image .container .module:last-child{
        min-height: 45rem;
    }
}
@media screen and (max-width: calc(48 * 10px)) {
    .left-image .container .module:first-child, .right-image .container .module:last-child{
        min-height: 30rem;
    }
    .two-column-full-width .container .module{
        padding:4rem 3rem;
    }
    .two-column-full-width > .reverse{
      display: grid;
    }
}
/* EO Theme CSS */
.privacy-policy .module{
	padding: 5rem 3rem 0rem 3rem;
}
#userwayAccessibilityIcon {
    display: none !important;
}
.nav li a:hover {
    color: var(--light-blue);
}
.nav li {
    font-family: var(--secondary-font);
}
p.pre-h {
    font-family: var(--third-font);
    font-size: 1.8rem;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
    display: inline-block;
    padding: 0.5rem 2.5rem;
    color: var(--white);
    margin-bottom: 2rem;
    background: rgb(183, 215, 226);
    background: linear-gradient(90deg, rgba(183, 215, 226, 1) 0%, rgba(20, 50, 74, 1) 100%);
    clip-path: polygon(0 0, 90% 0, 100% 50%, 90% 100%, 0 100%, 5% 50%);
}
a.read-more {
    text-decoration: none !important;
    transition: all 0.5s;
    position: relative;
    font-weight: bold;
    color: var(--black);
}
a.read-more:after {
    content: '\35';
    font-family: 'ElegantIcons';
    margin: 0rem 0rem 0rem 0.1rem;
    transition: all 0.5s;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 900;
    vertical-align: text-bottom;
    font-size: 2.1rem;
}
a.read-more:hover {
    opacity: 0.8;
}
a.read-more:hover:after {
    margin: 0rem 0rem 0rem 0.7rem;
}
.dark a.read-more {
    color: #ffffff;
    border-color: #ffffff;
}
.dark p.pre-h {
    color: var(--light-blue);
}
.dark a,
.dark h1,
.dark h2,
.dark h4 {
    color: var(--light-blue);
}
.center h3:after,
h3.center:after {
    display: none;
}
.center p {
    text-align: center;
    max-width: 100rem;
    margin: 0 auto;
    width: 100%;
}
.white * {
    color: #ffffff;
}
img.footer-logo {
    display: block;
    width: 16rem;
    margin: 0 auto;
    padding: 3rem 0 1.5rem 0;
    max-width: 80%;
}
a.btn {
    text-decoration: none !important;
    color: var(--dark-blue);
    font-family: var(--secondary-font),sans-serif;
    text-transform: uppercase;
    padding: 1rem 3.5rem;
    font-weight: 500;
    display: inline-block;
    margin-top: 1rem;
	background: rgb(183, 215, 226);
    background: var(--yellow) !important;
	transition: all 0.3s !important;
	border-bottom: solid 0.3rem var(--dark-blue);
}
a.btn:hover {
	padding: 1rem 4.5rem 1rem 2.5rem;
}
.menu-cta a.btn:hover {
	padding: 0.6rem 4.5rem 0.6rem 2.5rem;
}
.secondary-header {
    background: var(--dark-blue);
}
.secondary-header-content-container {
    width: var(--site-max-width);
    display: grid;
    margin-inline: auto;
    max-width: 100%;
    grid-template-columns: 1fr 1fr;
    padding: 0rem 3.5rem;
}
.secondary-header-content-container .right {
    text-align: right;
}
.secondary-header-content-container p {
    padding: 0;
}
.right {
    grid-column: 2 / 3;
}
.left {
    grid-column: 1 / 2;
}
/*----------NO NAV MENU-------------*/
.menu-no-nav .logo {
    width: 16rem;
    max-width: 100%;
	transition: all 0.3s;
}
.menu-no-nav .logo path {
    fill: white;
	transition: all 0.3s;
}
.menu-no-nav.opaque .logo {
    width: 10rem;
    max-width: 100%;
}
.menu-no-nav {
	background: none;
	padding-block: 2rem;
}
section.menu-no-nav .module {
    padding: 1rem;
}
section.menu-no-nav {
    position: fixed;
    background: none;
    max-width: 100%;
    padding: 0;
    z-index: 99;
    transition: all 0.3s;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 0;
}
section.menu-no-nav p.phone, section.menu-no-nav p.phone a {
    padding-bottom: 0;
    font-size: 2.4rem;
    font-weight: 600;
    color: var(--medium-blue);
}
section.menu-no-nav.opaque {
    background: var(--dark-blue);
}

section.menu-no-nav .right {
    text-align: right;
    color: white;
	align-self: center;
}
section.menu-no-nav .right p:not(.phone) {
    padding-bottom: 0.3rem;
}
.menu-no-nav .menu-cta:before {
    content: 'Book your free inspection';
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(-1rem, -2.5rem);
    font-family: var(--secondary-font);
    font-size: 2rem;
    opacity: 1;
    transition: all 0.3s;
}
.menu-no-nav.opaque .menu-cta:before {
    opacity: 0;
    transform: translate(-1rem, -4rem);
}
section.menu-no-nav.transparent {
    background: rgb(20, 50, 74);
    background: linear-gradient(180deg, rgba(20, 50, 74, 1) 0%, rgba(0, 0, 0, 0) 80%);
}

@media screen and (max-width: 768px) {
   .menu-no-nav .logo{
      width: 10rem;
   }
   .menu-no-nav .menu-cta:before{
      display: none;
   }
}
@media screen and (max-width: 700px) {
   .menu-no-nav .container{
      display: flex;
      padding-left: 0;
      padding-right: 0;
      width: 95%;
   }
   .menu-no-nav .logo{
      width: 100%;
   }
   .menu-no-nav .container>div:nth-child(1){
      width: 100px;
   }
   .menu-no-nav .container>div:nth-child(2){
      flex: 1;
   }
}
@media screen and (max-width: 600px) {
   section.menu-no-nav{
      top:0;
   }
   html{
      margin-top: 0 !important;
   }
   html #wpadminbar{
      display:none;
   }
}
@media screen and (max-width: 550px) {
   .menu-no-nav{
      padding-top: 1rem !important;
      padding-bottom: 1rem !important;
   }
   .menu-no-nav .container>div:nth-child(1),
   .menu-no-nav .container>div:nth-child(2){
      padding: 0;
   }
   .menu-no-nav .container a.btn:after{
      display: none;
   }
   .menu-no-nav .container a.btn{
      padding: 10px !important;
      line-height: 1;
   }
   section.menu-no-nav p.phone, section.menu-no-nav p.phone a{
      font-size: 1.5rem;
   }
}
@media screen and (max-width: 480px) {
   .menu-no-nav{
      padding-top: 0.8rem !important;
      padding-bottom: 0.8rem !important;
   }
   .menu-no-nav .container>div:nth-child(1){
      width: 70px;
   }
   .menu-no-nav .container a.btn{
      font-size: 1.2rem;
   }
   section.menu-no-nav p.phone, section.menu-no-nav p.phone a{
      font-size: 1.3rem;
      color:#fff;
   }

}
/*----------EO NO NAV MENU-------------*/

section.cta img {
    width: 25rem;
    max-width: 100%;
}
.cta p.phone-number {
    font-size: 3.2rem;
    font-weight: 700;
    color: var(--white);
    text-shadow: 0rem 0.2rem 2rem rgba(0, 0, 0, 0.2);
}

section.hero {
    background: url(https://tripeakroofs.com/wp-content/uploads/2024/06/Depositphotos_6052617_l-2015-1.jpg);
    background-size: cover;
    background-position: center;
}
section.hero .container {
   height: 100%;
   place-items: center;
}
.menu-cta p {
    display: inline;
}
.menu-cta a.btn {
    margin-top: 0;
    background: var(--yellow) !important;
    border-radius: 0;
    font-size: 1.6rem;
    color: var(--dark-blue);
    margin-right: 1rem;
    padding: 0.6rem 3rem;
}
img.default {
    box-shadow: 2rem 2rem var(--light-blue);
    outline: solid 0.1rem var(--white);
    outline-offset: -1rem;
}
.module:has(img.default):before {
    content: '';
    position: absolute;
    display: block;
    width: 10rem;
    height: 10rem;
    border-top: solid 0.5rem var(--medium-blue);
    border-left: solid 0.5rem var(--medium-blue);
    transform: translate(-1.5rem, -1.5rem);
}
.gradient {
    background: rgb(183,215,226);
    background: linear-gradient(90deg, rgba(183,215,226,1) 0%, rgba(20,50,74,1) 100%);
}
a.btn:after {
    content: '';
    width: 2rem;
    height: 2rem;
    display: block;
    background: url(https://tripeakroofs.com/wp-content/uploads/2024/06/blue-chevron.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-4rem, -55%);
	transition: all 0.3s !important;
	opacity: 0;
	color: var(--dark-blue);
}
a.btn:hover:after {
    transform: translate(-2.2rem, -58%);
	opacity: 1;
	transition: all 0.3s !important;
}
.color-container .module:not(.full) {
    padding: 0.3rem;
}
.sub-grid .module {
    padding: 1rem;
}
.container.sub-grid {
    grid-gap: 1rem;
    padding-inline: 0;
}
.warranty-container {
    margin-top: 4rem;
}
.relative {
	position: relative;
}

/*.overlap {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
}
.before-overlap {
    padding-bottom: 40rem;
}
.after-overlap {
    padding-top: 40rem;
}*/

@media screen and (min-width: 981px) {
   .overlap {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
   }
   .before-overlap {
       padding-bottom: 40rem;
   }
   .after-overlap {
       padding-top: 40rem;
   }
}
@media screen and (max-width: 980px) {
   .after-overlap{
      padding-top: 0;
      padding-bottom:0;
   }
}

.craft {
    background: url(https://tripeakroofs.com/wp-content/uploads/2024/06/craftsmanship-gradient.webp);
    background-position: center;
    background-size: cover;
    padding: 9rem;
    outline: solid 0.1rem var(--white);
    outline-offset: -2rem;
    box-shadow: 0 1.5rem 2rem -0.5rem rgba(0, 0, 0, 0.4);
}
.craft .sub-grid p {
    padding-bottom: 0;
}
.color-module p {
    transform: translateY(-4rem);
    text-align: center;
    color: var(--white);
    text-shadow: 0 0 1.5rem rgba(0, 0, 0, 01);
}
.thank-page header, .thank-page section.secondary-footer {
    display: none;
}

.scroll-box {
    position: absolute !important;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
}
.scroll-box p {
    padding-bottom: 0;
    font-size: 1.5rem;
    transform: translate(0, 1.2rem);
}

section.graph, .graph {
    background: url(https://tripeakroofs.com/wp-content/uploads/2024/07/graph-paper.svg);
    background-color: var(--dark-blue);
}

.module.less-padding {
    padding: 1rem;
}
section.cta img {
    width: 25rem;
    max-width: 100%;
}
.cta p.phone-number {
    font-size: 3.2rem;
    font-weight: 700;
    color: var(--white);
    text-shadow: 0rem 0.2rem 2rem rgba(0, 0, 0, 0.2);
}
section.secondary-footer {
    display: none;
}
.commercial {
    background: url('https://tripeakroofs.com/wp-content/uploads/2024/06/commercial-gradient-v2.jpg');
    background-position: center;
    background-size: cover;
}
.detail-slide-color p {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    padding: 1rem 0 1rem 1rem;
    color: white;
    font-weight: 500;
    text-shadow: 0rem 0rem 2rem rgba(0, 0, 0, 0.6);
}
.swiper-slide .detail-slide-color p {
    opacity: 0;
    animation: all 0.3s;
}
.swiper-slide.swiper-slide-active .detail-slide-color p {
    opacity: 1;
    animation: all 0.3s;
}
.row-block-slider .content-container {
    background: var(--grey);
    padding: 2rem;
}
.light-blue {
	background: var(--light-blue);
}
.mega-menu-column {
    position: relative;
}
.mega-menu-row .mega-menu-column p {
    position: absolute;
    left: 0;
    top: 0;
    padding: 1rem 0 0 1rem;
    color: var(--white);
    font-family: var(--secondary-font);
    font-size: 2rem;
}
.mega-menu-column a {
    padding: 0 !important;
}

.arrow-hover {
    position: absolute;
    bottom: 0;
    right: 0;
    margin-right: 1rem;
    opacity: 0;
    transform: translateY(1rem);
    transition: all 0.3s;
}
.mega-menu-column:hover .arrow-hover {
    opacity: 1;
    transform: none;
    transition: all 0.3s;
}
form.psai-app-form button {
    color: white !important;
}
section.weather {
    background: url(https://tripeakroofs.com/wp-content/uploads/2024/07/rain-falling-off-roof-gradient-v2.webp);
    background-size: cover;
    background-position: center;
}
a.btn-text {
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    vertical-align: middle;
}
.btn-text::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    font-size: 1.6rem;
    transform: translateX(0.6rem);
    display: inline-block;
    transition: all 0.3s;
}
.btn-text:hover::after {
    transform: translateX(1.2rem);
}
a.btn + a.btn-text {
    margin-left: 1.5rem;
}
.content {
    padding: 2rem;
}
.content p:has(.btn) {
    padding-bottom: 0;
}
.content h3 {
    padding-bottom: 0.8rem;
}
.internal-hero:not(.dark) h1 {
    color: var(--dark-blue);
}
.internal-hero p.pre-h {
    background: var(--dark-blue);
    color: var(--light-blue);
    margin-bottom: 3rem;
}
.thin-section, .thin-section p:last-of-type {
    padding: 0;
}
.logos-center {
    width: 50rem;
    max-width: 100%;
}
.logos-center img {
    padding: 1rem;
}
.site-footer.dark {
    background-color: var(--darker-blue);
}
section.light-blue h1 {
    color: var(--dark-blue);
}
.contact-hero h1 {
    color: var(--white);
    text-transform: uppercase;
}
.contact-hero {
	border-top: solid 0.3rem var(--light-blue);
}
p.phone-callout {
    position: absolute;
    top: 0;
    right: 0;
    padding-right: 3rem;
    text-transform: uppercase;
    font-family: var(--secondary-font);
    transform: translateY(1.5rem);
	color: white;
}
p.phone-callout span.phone {
    color: var(--yellow);
    font-size: 2.2rem;
    font-weight: 600;
}
.mega-menu-row img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.mega-menu-column:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    background: rgb(20, 50, 74);
    background: -moz-linear-gradient(180deg, rgba(20, 50, 74, 1) 0%, rgba(53, 112, 137, 0) 100%);
    background: -webkit-linear-gradient(180deg, rgba(20, 50, 74, 1) 0%, rgba(53, 112, 137, 0) 100%);
    background: linear-gradient(180deg, rgba(20, 50, 74, 1) 0%, rgba(53, 112, 137, 0) 60%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#14324a",endColorstr="#357089",GradientType=1);
    pointer-events: none;
}
.mega-menu-column p, .mega-menu-column div.arrow-hover {
    z-index: 3;
}
.team-container .module.border-bottom {
    border-bottom: solid 0.2rem;
}
.social-bar i {
    font-size: 3rem;
    transform: translateY(0.5rem);
    margin-inline: 0.8rem;
}
.blog-hero p.pre-h {
    padding: 0 0 1rem 0;
    clip-path: none;
    background: none;
	color: var(--light-blue) !important;
}
.blog-hero h1 {
    color: var(--white) !important;
}
.blog-hero {
    padding-block: 3rem;
    border-top: solid 0.3rem var(--light-blue);
}
.blog-hero p:not(.pre-h):last-of-type {
    padding-bottom: 0;
}
ul.checks {
    list-style: none;
    padding-left: 4rem;
    padding-bottom: 2rem;
}
ul.checks li:before {
    content: "\4e";
    position: absolute;
    font-family: 'elegantIcons';
    transform: translateX(-2.6rem);
    color: var(--secondary-color);
}
ul.checks li {
    padding-bottom: 0.6rem;
}
.single-post .blog-module {
    width: 100rem;
    max-width: 100%;
    margin-inline: auto;
}
.blog-module h2 {
    font-size: 3.2rem;
    padding-bottom: 1rem;
    margin-top: 2rem;
}
.blog-module h3 {
    padding-bottom: 0.5rem;
}
.blog-module img {
    border: solid 1rem var(--light-blue);
    margin-bottom: 2rem;
}
.storm .psai-app-dec-box {
    background: none !important;
    box-shadow: none !important;
}
.psai-app-heading {
    font-size: 4.5rem !important;
    font-family: var(--secondary-font);
    color: var(--light-blue) !important;
}
.storm .psai-app-textblock {
    font-size: 1.8rem !important;
    font-family: var(--primary-font) !important;
    color: var(--white) !important;
}
section.storm {
    padding-top: 2rem;
}
.storm button.psai-app-button.psai-app-button-block {
    background: var(--yellow) !important;
    color: var(--dark-blue) !important;
    width: 20rem;
    margin-inline: auto;
    border-radius: 0 !important;
    text-transform: uppercase;
    font-family: var(--secondary-font) !important;
    padding: 1.2rem 2rem 1rem 2rem;
}
.storm .small.mt-2.btn-disclaimer-content {
    color: var(--white) !important;
    margin-top: 1rem;
    text-align: center;
}
.storm .small.mt-2.btn-disclaimer-content a {
    display: block;
    margin-top: 0.5rem;
}
.psai-app-media img {
    width: 1.5rem !important;
	border: none !important;
}
.psai-app-forecast .psai-app-media {
    background: rgba(0,0,0,.2);
}
.storm .psai-app-form .psai-app-form-control {
    color: var(--dark-blue) !important;
}
.gaf-certification p span {
    display: block;
    font-size: 1.4rem;
    margin-bottom: 1rem;
}
.gaf-certification img {
    width: 10rem;
	max-width: 80%;
}
section.storm-callout {
    background: var(--light-blue);
}
.storm-callout h3 {
    color: var(--dark-blue);
}
.blog-module a:not(.btn) {
    font-weight: 600;
    color: var(--medium-blue);
    text-decoration: underline;
}
section.thin-hero {
    padding-block: 5rem;
}
img.hearth {
    width: 25rem;
    max-width: 100%;
    margin-bottom: 3rem;
}
.container.center-v {
    align-items: center;
}
.thin-hero p:last-of-type {
    padding-bottom: 0;
}
.financing-row lord-icon {
    margin-bottom: 1.5rem;
}
section.storm-hero {
    padding-bottom: 20rem;
}
.content-box {
    background: var(--darker-blue);
    padding: 1.5rem;
}
.content-box p {
    padding-bottom: 0;
}
section.storm-damage h3 {
    padding: 1rem 1.5rem 0.8rem 1.5rem;
    background: var(--light-blue);
    color: var(--dark-blue);
}
.storm-service .content-container {
    padding: 1.5rem;
}
.storm-service .content-container h3 {
    padding-bottom: 1rem;
}
.storm-service .content-container p {
    padding-bottom: 1rem;
}
.storm-service .content-container p:has(a.btn) {
    padding-bottom: 0;
}
section.storm-damage img {
    aspect-ratio: 1.5 / 1;
    object-fit: cover;
}
section.storm-cta img {
    border: solid 0.5rem var(--light-blue);
}
section.reduce-padding {
    padding-block: 4rem;
}
section.tarp-section .container {
    padding-inline: 0;
}
section.tarp-section p:has(a.btn) {
    padding-bottom: 0;
}
.city-hero {
    padding-block: 0;
	border-top: solid 0.3rem var(--light-blue);
}
.serve-hero {
	border-top: solid 0.3rem var(--light-blue);
	padding-block: 4rem;
}
.city-content {
	padding-block: 2rem;
}
.city-content h3 {
    padding-bottom: 0.5rem;
    color: var(--dark-blue);
}
.city-content h4 {
    color: var(--medium-blue);
    padding-bottom: 1.2rem;
}
.city-content h2 {
    font-size: 3.2rem;
    padding-bottom: 0;
}
.city-content a:not(.btn) {
    font-weight: 700;
    color: var(--medium-blue);
    text-decoration: underline;
}
.city-hero p:last-of-type {
    padding-bottom: 0;
}
.city-content img {
    width: 50rem;
    max-width: 100%;
    margin-bottom: 3rem;
    border: solid 0.5rem var(--dark-blue);
    outline: solid 0.1rem var(--white);
    outline-offset: -1.5rem;
}
.serve-listing p {
    width: 40rem;
    max-width: 100%;
}
.color-swatch img {
    border: solid 0.8rem var(--grey);
}
a.btn + a.btn {
    margin-left: 1rem;
    background: none !important;
    color: var(--yellow);
}
a.btn + a.btn:hover {
    background: var(--yellow) !important;
    color: var(--dark-blue);
}
.resource-hero h1 span {
    display: block;
    font-size: 4rem;
    line-height: 120%;
    margin-top: 1rem;
}


@media screen and (min-width: calc(48.1 * 10px)) {
    a.btn{
        vertical-align: middle;
        -webkit-transform: perspective(0.1rem) translateZ(0);
        transform: perspective(0.1rem) translateZ(0);
        box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0);
        position: relative;
        -webkit-transition-property: color;
        transition-property: color;
        -webkit-transition-duration: 0.5s;
        transition-duration: 0.5s;
    }
    a.btn:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transition-property: transform;
        transition-property: transform;
        -webkit-transition-duration: 0.5s;
        transition-duration: 0.5s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    a.btn:hover, a.btn:focus, a.btn:active {
        color: var(--black);
    }
    .btn:hover:before, a.btn:focus:before, a.btn:active:before {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
        transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
    }
}
@media screen and (max-width: calc(98 * 10px)) {
   #contact{
      text-align: center;
   }
   

   .craft{
      padding: 5rem;
   }
   .reverse{
      display: grid !important;
   }
    .reverse > .module:first-of-type {
        order: 2;
    }
    .reverse > .module:last-of-type {
        margin-bottom: 20px;
    }
    .container.logo-grid {
        grid-template-rows: 12rem;
        grid-template-columns: 50% 50%;
    }
    .container.logo-grid .module {
        padding: 1rem;
    }
    .secondary-header{
        display: none;
    }
    .secondary-header-content-container {
        grid-template-columns: 1fr;
    }
    .secondary-header-content-container .right, .secondary-header-content-container .left {
        text-align: center;
        grid-column: 1 / 3 !important;
    }
	.module.report img {
		border: solid 0.5rem var(--medium-blue);
	}
}
@media screen and (max-width: calc(76.8 * 10px)) {
   .craft{
      padding: 3rem;
   }
   
   p.phone-callout span.phone, p.phone-callout {
       font-size: 15px;
   }
}
@media screen and (max-width: calc(48 * 10px)) {
   p.phone-callout{
      display: none;
   }
   section.cta img{
      width: auto;
      max-width: 15rem;
   }
   
   .craft{
      padding: 2rem;
   }
   
}
/*------------eo general-----------*/
/*------sidebar--------*/
#sidebar section{
    padding-top: 3rem;
    padding-bottom: 3rem;
}
/*------eo sidebar--------*/
/*------------------------------ pagination blog --------------------------------*/
.pagination .nav-links > a{
    color: var(--dark-blue);
    text-decoration: none;
}
.pagination .nav-links  .page-numbers.dots:hover{
    background-color: transparent;
    color: var(--dark);
}
.pagination .nav-links  .page-numbers.current{
    background-color: var(--grey);
    color: var(--dark-blue);
}
.pagination .nav-links .page-numbers:hover{
    background: var(--dark-blue);
    color: var(--grey);
}
.pagination .nav-links .prev.page-numbers,
.pagination .nav-links .next.page-numbers{
    line-height: initial;
    padding-top: 2rem;
    display: flex;
    text-decoration: none;
}
.pagination .nav-links .prev.page-numbers:hover,
.pagination .nav-links .next.page-numbers:hover{
    background-color: transparent;
    color: var(--dark-blue);
}
.pagination .nav-links .prev.page-numbers .svg-icon,
.pagination .nav-links .next.page-numbers .svg-icon{
    opacity: 0;
}
.pagination .nav-links .prev.page-numbers:hover .svg-icon,
.pagination .nav-links .next.page-numbers:hover .svg-icon{
    opacity: 1;
}
.pagination .nav-links {
    margin-left: 0;
    padding: 0;
    margin: auto;
    width: fit-content;
    display: flex;
    flex-wrap: wrap;
}
.pagination .nav-links>*{
    text-align: center;
    font-weight: bold;
}
.archive .pagination,
.blog-post-mention .pagination{
    margin-top: 2rem;
}
nav.pagination{
    width: 100%;
    max-width: 100%;
    border-top: 0rem;
}
@media only screen and (min-width: calc(98.1 * 10px)) {
    section.storm-callout .module img {
		position: absolute;
		bottom: 0;
		left: 0;
		max-width: 100%;
		z-index: 4;
		border-top: solid 0.3rem var(--light-blue);
		border-right: solid 0.3rem var(--light-blue);
		border-left: solid 0.3rem var(--light-blue);
	}
	section.section-video-hero {
		padding-bottom: 20rem;
	}
}
@media only screen and (min-width: calc(76.9 * 10px)) {
    .pagination .nav-links > *, .pagination .nav-links .prev.page-numbers, .pagination .nav-links .next.page-numbers {
        padding: 1rem;
    }
}
@media only screen and (max-width: calc(76.8 * 10px)) {
    .pagination .nav-links .prev.page-numbers .svg-icon,
    .pagination .nav-links .next.page-numbers .svg-icon {
        opacity: 1;
    }
    .pagination .nav-links .prev.page-numbers,
    .pagination .nav-links .next.page-numbers{
        padding: calc(.5 * 1rem);
    }
}
/*------eo pagination blog---------------*/

/* Footer Design */
.main-footer p {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}
footer {
    background: var(--dark-blue);
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    padding-bottom: 2.5rem;
}
footer a {
    text-decoration: none;
    color: var(--black);
    font-weight: 600;
}
/* eo Footer Design */
/*----------form recaptcha--------------*/
.catpcha-wrapper{
    display: block;
    margin:auto;
    text-align: center;
    margin-bottom:2rem;
}
.catpcha-wrapper .cf7sr-g-recaptcha{
    display: inline-block;
}
@media only screen and (max-width: calc(48 * 10px)) {
    .catpcha-wrapper .cf7sr-g-recaptcha{
        transform: scale(0.8);
        transform-origin: top left;
    }
}
@media only screen and (max-width: calc(32 * 10px)) {
    .catpcha-wrapper{
        margin-bottom: 0rem;
    }
    .catpcha-wrapper .cf7sr-g-recaptcha{
        transform: scale(0.78);
    }
}
/*----------eo form recaptcha--------------*/
/*------------------------------ BO Blog --------------------------------*/
.post-listing-section .container-3 {
    -ms-grid-columns: repeat(auto-fit, minmax(min(38rem, 100%), 1fr));
    grid-template-columns: repeat(auto-fit, minmax(min(38rem, 100%), 1fr));
}
.post-listing-section .module {
    padding:2rem;
}
.post-listing-section h2.entry-title{
    font-size: 3.5rem;
    padding-bottom: 1.5rem;
}
.post-listing-section a{
    text-decoration: none !important;
}
.post-listing-section .entry-featured-image-url {
    display: block;
    position: relative;
}
.post-listing-section .entry-featured-image-url img{
    opacity: 0;
}
.pagination {
    clear: both;
}
a.entry-featured-image-url{
    display: block;
    height: 34rem;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.post-listing-section .post-meta{
    padding-bottom: 1.5rem;
}
.post-meta .icon_calendar{
    margin-right: 1rem;
}
article .entry-featured-image-url img {
    opacity: 0;
}
.wrapper-article{
    display: block;
    border:0.1rem solid var(--grey);
}
.summary-article{
    padding: 2rem;
}
.excerpt-post{
    padding-bottom: 1rem;
}
@media(max-width: calc(98 * 10px)){
    .post-listing-section article{
        min-height: inherit;
    }
}
@media only screen and (max-width: calc(76.8 * 10px)) {
    .post-listing-section article {
        width: 100%;
    }
    .post-listing-section a.entry-featured-image-url{
        height: auto !important;
    }
}
/*------------------------------ EO blog CSS --------------------------------*/
/* ------------------ Single Custom Block CSS ------------------*/
.single-post .container{
    max-width: 130rem;
}
.content-single-section{
    padding-top: 6rem;
}
.content-single-section .mention-information{
    padding: 1rem 0rem;
}
.content-single-section .mention-information span{
    display: inline-block;
    margin-top: 0.5rem;
    margin-right: 1rem;
}
.content-single-section h2.entry-title{
    font-weight: 600;
    font-size: 4rem;
    margin-top: 3rem;
    padding-bottom: 0rem;
}
.breadcrumbs-single{
    list-style-type: none;
}
.breadcrumbs-single li{
    display: inline-block;
    vertical-align: middle;
}
.breadcrumbs-single li a{
    display: inline-block;
    width: 100%;
    vertical-align: middle;
    transition: all 0.5s;
}
.breadcrumbs-single li a:hover{
    opacity: 0.7;
}
.breadcrumbs-single li a:after {
    content: '\35';
    font-family: 'ElegantIcons';
    margin: 0rem 0rem 0rem 0.1rem;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 900;
    vertical-align: text-bottom;
    font-size: 2.1rem;
}
@media only screen and (max-width: calc(76.8 * 10px)) {
    .hero-single-section .container,
    .content-single-section .container-66-33{
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        padding: 0rem;
    }
}
/* ------------------ EO Single Custom Block CSS ------------------*/

/* ------------------ Full Height ------------------*/
section.full-height {
    height: 96vh;
}
.full-height .module {
    place-self: center;
}
.full-height .container {
    height: 100%;
    place-items: center;
}
@media screen and (max-width: 480px) {
   section.full-height{
      height: auto;
   }
}
/* ------------------ Full Height ------------------*/
/*------------------------------Video Background --------------------------------*/

.video-hero-full-width {
    object-fit: cover;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    height: 100.1% !important;
    z-index: 1;
}
.section-video-hero * {
    box-sizing: border-box;
}
.section-video-hero::before{
    content:"";
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.4);
    pointer-events: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
}

.section-video-hero {
    position: relative;
    text-align: center;
    padding-top: 15rem;
}
.section-video-hero .container {
    position: relative;
    z-index: 3;
}
.section-video-hero .scroll-box{
   z-index: 3;
}

.section-video-hero h1 {
    font-size: 7rem;
    text-transform: uppercase;
}
.section-video-hero h1 span {
    text-transform: none;
    font-size: 5rem;
    display: block;
}
/*.section-video-hero .module.less-padding:not(.full) {
    margin-top: -10rem;
}
*/
@media only screen and (max-width: 980px) {
   .section-video-hero h1 {
       font-size: 5rem;
   }
   .section-video-hero h1 span {
       font-size: 3rem;
   }

}
@media only screen and (max-width: 700px) {
   .section-video-hero{
      padding-top: 11rem;
   }
}
@media only screen and (max-width: 480px) {
   .section-video-hero h1 {
       font-size: 4rem;
   }
   .section-video-hero h1 span {
      font-size: 2rem;
      line-height: 1.5em;
      margin-bottom: 27px;
   }
}
@media only screen and (max-width: 375px) {
   .section-video-hero a.btn{
      padding-left: 2.5rem;
      padding-right:2.5rem;
      font-size: 1.5rem;
   }

}
/*------------------------------EO Video Background --------------------------------*/


/*-------block animation------*/
@-webkit-keyframes fadeRight{
    0% {
        opacity: 0;
        transform: translateX(-10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-moz-keyframes fadeRight{
    0% {
        opacity: 0;
        transform: translateX(-10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-ms-keyframes fadeRight{
    0% {
        opacity: 0;
        transform: translateX(-10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-o-keyframes fadeRight{
    0% {
        opacity: 0;
        transform: translateX(-10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes fadeRight{
    0% {
        opacity: 0;
        transform: translateX(-10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}



@-webkit-keyframes fadeLeft{
    0% {
        opacity: 0;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-moz-keyframes fadeLeft{
    0% {
        opacity: 0;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-ms-keyframes fadeLeft{
    0% {
        opacity: 0;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@-o-keyframes fadeLeft{
    0% {
        opacity: 0;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes fadeLeft{
    0% {
        opacity: 0;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeDown{
    0% {
        opacity: 0;
        transform: translateY(-10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-moz-keyframes fadeDown{
    0% {
        opacity: 0;
        transform: translateY(-10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-ms-keyframes fadeDown{
    0% {
        opacity: 0;
        transform: translateY(-10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-o-keyframes fadeDown{
    0% {
        opacity: 0;
        transform: translateY(-10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeDown{
    0% {
        opacity: 0;
        transform: translateY(-10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


@-webkit-keyframes fadeUp{
    0% {
        opacity: 0;
        transform: translateY(10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-moz-keyframes fadeUp{
    0% {
        opacity: 0;
        transform: translateY(10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-ms-keyframes fadeUp{
    0% {
        opacity: 0;
        transform: translateY(10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@-o-keyframes fadeUp{
    0% {
        opacity: 0;
        transform: translateY(10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes fadeUp{
    0% {
        opacity: 0;
        transform: translateY(10%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

*[class*="fade-"]{
    opacity: 0;
}

.fade-right.element-animation{
    opacity: 1;
    -webkit-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -moz-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -o-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
}
.fade-left.element-animation{
    opacity: 1;
    -webkit-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -moz-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -o-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
}
.fade-down.element-animation{
    opacity: 1;
    -webkit-animation: fadeDown 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -moz-animation: fadeDown 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -o-animation: fadeDown 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    animation: fadeDown 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
}
.fade-up.element-animation{
    opacity: 1;
    -webkit-animation: fadeUp 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -moz-animation: fadeUp 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    -o-animation: fadeUp 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
    animation: fadeUp 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
}



/*-------block animation------*/

@media only screen and (max-width: 480px){
    .container{
        display: block;
    }
}

/*---------Testimonial Section----------------*/
.wrap-testimonial{
    padding: 0 4rem;
    position: relative;
    max-width: initial;
}
.swiper-slide {
    text-align: left;
    font-size: 1.8rem;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: baseline;
}
.toggle-read-more{
    color: var(--dark-blue) !important;
    font-size: 1.6rem;
}
.wrap-testimonial .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.swiper.swiper-testimonials {
    padding: 3rem 2rem;
    width: 100%;
    /* cursor: grab; */
}
.swiper-testimonials .quote{
    top: 0;
    left: .2rem;
}
.swiper-button-next, .swiper-button-prev{
    background-color: var(--dark-blue);
    border-radius: 50%;
    width: 3.6rem !important;
    height: 3.6rem !important;
    opacity: 0.8;
    color: var(--light-blue) !important;
}
.swiper-button-next{
    right: 0 !important;
}

.swiper-button-prev{
    left: 0 !important;
}

.swiper-button-next::after,
.swiper-button-prev::after{
    font-size: 1.6rem !important;
    font-weight: 900;
    color: var(--white);
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction{
    bottom: -0.7rem !important;
}


.testimonial-box {
    padding: 2.5rem;
    border-radius: 1rem;
    background-color:var(--black);
    background-position: top left;
}
.testimonial-box * {
    color: var(--white);
}
p.star-list {
    text-align: center;
    padding-bottom: 1rem;
}
p.star-list span {
    margin-inline: 0.2rem;
    color: var(--dark-blue);
}
p.name {
    text-align: right;
    text-transform: uppercase;
    font-weight: 600;
    padding-bottom: 0.2rem;
}
p.title {
    text-align: right;
    padding-bottom: 0;
    font-size: calc(1em - .2rem);
    font-style: italic;
}
.quote {
    background: var(--dark-blue);
    border-radius: 50%;
    padding: 1.2rem;
    width: 7rem;
    position: absolute;
    transform: translate(-2rem, -2rem);
    animation: 2s ease-in-out infinite alternate quoteFloat;
}
@keyframes quoteFloat {
    from {
        transform: translate(-2rem, -2rem) rotate(1deg);
    }
    to {
        transform: translate(-2rem, -3rem) rotate(-5deg);
    }
}

.swiper-css-mode>.swiper-wrapper{
    overflow:visible !important;
}
@media screen and (min-width: calc(98.1 * 10px)) {
    .swiper.swiper-testimonials {
        padding: 3rem 4rem;
    }
}

@media screen and (max-width: calc(98 * 10px)) {
    .wrap-testimonial {
        padding: 0 1rem !important;
        position: relative;
    }
    .swiper-button-prev {
        left: -1.4rem !important;
    }
    .swiper-button-next{
        right: -1.4rem !important;
    }
    .wrap-testimonial .swiper-button-prev{
        left: -1rem !important;
        display: none !important;
    }
    .wrap-testimonial .swiper-button-next{
        right: -1rem !important;
        display: none !important;
    }
}
@media only screen and (max-width: calc(48 * 10px)){

    .testimonial-section .container{
        max-width: 100%;
        display: block;
    }
    .testimonial-section .container .module{
        padding:1rem;
    }
}
/*---------eo Testimonial Section----------------*/

/*----------Gallery Section --------------*/
section.gallery-section h2 {
    margin-bottom: 2rem;
}
section.gallery-section{
    padding: 10rem 0;
    position:relative;
}
section.gallery-section img {
    transition: all 0.3s;
}
section.gallery-section img:hover {
    opacity: 0.8;
    transform: scale(1.01);
    box-shadow: 0rem 0.5rem 1rem rgb(0 0 0 / 30%);
}

.gallery-section .swiper-button-next{
    right: 10px!important;
}

.gallery-section .swiper-button-prev{
    left: 10px!important;
}

/*--------eo Gallery Section --------------*/

/*---------fancybox---------*/
.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
    border-width: 0.3rem !important;
    border-color: var(--light-blue) !important;
}
.fancybox__toolbar .carousel__button {
    margin-inline: 0.6rem;
}
.has-image .fancybox__content{
    padding: 0;
    background: rgba(0,0,0,0);
    min-height: 1px;
}
.carousel__button svg{
    filter: initial !important;
}
/*---------eo fancybox---------*/


/***********single css*************/
img.blog-featured {
    padding: 1rem;
    background: var(--grey);
    margin: auto;
    display: block;
    width: 80rem;
}

.single h1.entry-title {
    color: var(--dark-blue);
    margin-top: 2rem;
    padding-bottom: 0;
    font-size: 4.6rem !important;
    text-align: center;
    font-weight: 500;
    max-width: 80rem !important;
    margin-inline: auto;
    text-transform: initial;
}

.single .mention-information {
    text-align: center;
    margin-top: 1rem;
    padding-bottom: 2.5rem !important;
    margin-bottom: 2.5rem;
    border-bottom: solid 0.1rem #dddddd;
}

.single section {
    padding: 5rem 0rem;
}

.single .hero-single-section h2{
    text-transform: initial;
    font-weight: initial;
}

.single .widget h2 ,
.single .widget h3 {
    font-size: 2.2rem;
}

.sidebar-form {
    padding: 2rem;
    background: var(--grey);
    border-radius: 0 0 1rem 1rem;
    border-top: solid 0.5rem var(--light-blue);
}

.sidebar-form h2 ,
.sidebar-form h3 {
    text-align: center;
    text-transform: uppercase;
}

.single .sidebar-form.sidebar-container h3:after{
    display: none;
}

.single .widget h3:after {
    content: '';
    display: block;
    height: 0.2rem;
    width: 5rem;
    background: var(--dark-blue);
    margin-top: 2rem;
}
/************************/


/*-----------ANIMATION CUSTOMIZE GRACE----------------------*/
.customizegrace-gallery{
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    z-index: 0;
    overflow: hidden;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    margin-bottom: 3rem;
}

.customizegrace-gallery *{
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
.customizegrace-gallery .image-wrapper {
    margin: 0 0 0.1rem 0;
    line-height: 0.1rem;
}
.customizegrace-detail-image{
    min-height: 0.1rem;
    padding-bottom: 56.25%;
    position: relative;
    display: block;
    width: 100%;
    height: 0;
}
.block-gallery-vertical .customizegrace-detail-image {
    padding-bottom: 100%;
}
.customizegrace-gallery .image-wrapper img{
   position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.customizegrace-gallery .customizegrace-before{
   z-index: 9;
   position: relative;
}
.customizegrace-gallery .customizegrace-after{
    position: absolute;
    width: 100%;
    top: 0;
}
.customizegrace-overlay{
    -webkit-transition-property: background;
    -moz-transition-property: background;
    transition-property: background;
    background: rgba(0, 0, 0, 0);
    z-index: 25;
}

.customizegrace-before-label, .customizegrace-after-label, .customizegrace-overlay {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    transition-duration: 0.5s;
}

.customizegrace-before-label, .customizegrace-after-label {
    -webkit-transition-property: opacity;
    -moz-transition-property: opacity;
    transition-property: opacity;
}
.customizegrace-before-label{
    opacity: 0;
}
.customizegrace-after-label{
    opacity: 0;
}

.customizegrace-before-label:before, .customizegrace-after-label:before {
    top:50%;
    margin-top: -1.9rem;
    position: absolute;
    background: rgba(255, 255, 255, 0.2);
    line-height: 3.8rem;
    padding: 0 2rem;
    -webkit-border-radius: 0.2rem;
    -moz-border-radius: 0.2rem;
    border-radius: 0.2rem;
    color: white;
    font-size: 1.6rem;
    letter-spacing: 0.2em;
}
.customizegrace-before-label:before{
    content:"Before";
    left:2rem;
}
.customizegrace-after-label:before {
    content:"After";
    right:2rem;
}



.customizegrace-overlay:hover {
    background: rgba(0,0,0,.3);
}
.customizegrace-overlay:hover .customizegrace-before-label {
    opacity: 1;
}
.customizegrace-overlay:hover .customizegrace-after-label {
    opacity: 1;
}
.customizegrace-handle{
    height: 5rem;
    width: 5rem;
    position: absolute;
    left: 50%;
    top: calc(50% - 2.5rem);
    border: 0.3rem solid white;
    -webkit-border-radius: 100rem;
    -moz-border-radius: 100rem;
    border-radius: 100rem;
    -webkit-box-shadow: 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
    -moz-box-shadow: 0rem 0rem 1.2rem rgba(51, 51, 51, 0.5);
    box-shadow: 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
    z-index: 40;
    cursor: pointer;
}
.customizegrace-handle::before, .customizegrace-handle::after{
    content: " ";
    display: block;
    background: white;
    position: absolute;
    z-index: 30;

    width: 0.3rem;
    height: 999.9rem;
    left: 50%;
    margin-left: -1.5px;
}
.customizegrace-handle::before{
    bottom: 50%;
    margin-bottom: 3rem;
    -webkit-box-shadow: 0 0.3rem 0 white, 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
    -moz-box-shadow: 0 0.3rem 0 white, 0rem 0rem 1.2rem rgba(51, 51, 51, 0.5);
    box-shadow: 0 0.3rem 0 white, 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
}
.customizegrace-handle::after{
    top: 50%;
    margin-top: 3rem;
    -webkit-box-shadow: 0 -0.3rem 0 white, 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
    -moz-box-shadow: 0 -0.3rem 0 white, 0rem 0rem 1.2rem rgba(51, 51, 51, 0.5);
    box-shadow: 0 -0.3rem 0 white, 0rem 0rem 1.2rem rgb(51 51 51 / 50%);
}
.customizegrace-left-arrow, .customizegrace-right-arrow{
    top: 50%;
    margin-top: -1rem;
    width: 0;
    height: 0;
    border: 1rem inset transparent;
    position: absolute;
}

.customizegrace-left-arrow {
    border-right: 1rem solid white;
    left: 50%;
    margin-left: -2.8rem;
    margin-top: -1rem !important;
}
.customizegrace-right-arrow {
    border-left: 1rem solid white;
    right: 50%;
    margin-right: -2.8rem;
}
/*-----------ANIMATION CUSTOMIZE GRACE----------------------*/

/*----------Input forms-------*/
.input-fields>div{
  margin-bottom: 1.5rem;
}
.input-fields>div>p{
   color:var(--black);
}
.input-fields>div:last-of-type{
  margin-bottom: 0;
}

@media screen and (min-width: calc(98.1 * 10px)) {
   .input-column-1-2{
       display: -ms-grid;
       display: grid;
       position: relative;
       width: 100%;
       grid-gap: 1rem;
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
   }
}
@media screen and (max-width: calc(98 * 10px)) {
   .input-column-1-2{
      margin-bottom: 0 !important;
   }
   .input-column-1-2>div{
      margin-bottom: 1.5rem;
   }
}

/*----------eo Input forms-------*/
.wrapper-submit-form{
   position: relative;
   text-align: center
}
.form-module form.wpcf7-form input.submit-form-contact{
   display: none;
}
.form-module form.wpcf7-form span.wpcf7-spinner{
   position: absolute;
   background:var(--yellow);
   opacity: 1;
}
.form-module form.wpcf7-form span.wpcf7-spinner::before{
   background-color: var(--dark-blue);
}

/*-----*/
@media screen and (max-width: 480px) {
   .page-template-standalone_page h2{
      font-size: 3rem;
   }
}

@media screen and (max-width: 375px) {
   .page-template-standalone_page h2{
      font-size: 2.5rem;
   }
}

.wrapper-logos{
   margin-top: 40px;
   padding-left: 0px;
   padding-right: 0px;
}
.wrapper-logos > .module{
   padding:10px;
}
@media screen and (max-width: 480px) {
   .wrapper-logos{
      display: flex;
      justify-content: space-between;
      flex-flow: wrap row;
   }
   .wrapper-logos>div{
      width: 48%;
   }
}
/*---------Slide IMAGE TEXT ----------------*/

.image-element{
  padding-bottom: 80%;
   line-height: 0;
   position: relative;
   width: 100%;
}
.image-element img{
   object-fit: cover;
   width: 100%;
   position: absolute;
   left: 0;
   top: 0;
   height: 100%;
   z-index: 1;

}
.detail-slide-color{
   width: 100%;
}
.detail-slide-color>p{
   padding-top: 20px;
   text-align: center;
}
.row-block-slider .swiper-pagination .swiper-pagination-bullet{
   background: var(--dark-blue);
   opacity: 1 !important;
   width: 7px;
   height: 7px;
}
.row-block-slider .swiper-pagination span.swiper-pagination-bullet-active {
  background: var(--light-blue);
  outline: solid 2px var(--light-blue);
}
.row-block-slider .swiper-pagination {
  bottom: 20px !important;
}
.row-block-slider .swiper-button-prev,
.row-block-slider .swiper-button-next{
   display: none;
}
.arrow-box{
   position: absolute;
    width: 50px;
    height: 50px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9;
    border-radius: 50%;
    opacity: 0;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;   
}
.detail-slide-color:hover .arrow-box{
   opacity: 1;
}
.arrow-box::before{
    font-family: 'ElegantIcons';
    font-size: 50px;
    position: relative;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    vertical-align: middle;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    z-index: 99;
    color:#fff;
}
.prev-element{
   left: 10px;
}
.prev-element:before{
   content: '\34';
}
.next-element{
   right: 10px;
}
.next-element:before{
   content: '\35';
}


@media screen and (max-width: 980px) {
   .slide-box-section{
      display: block;
   }
   .arrow-box{
      opacity: 1;
   }
   
}
@media screen and (max-width: 480px) {
   .image-element{
      padding-bottom: 100%;
   }
   .row-block-slider{
      padding-left: 0;
      padding-right: 0;
   }
   .arrow-box{
       width: 20px;
       height: 20px;
    }
    .arrow-box::before{
       font-size: 40px;
    }
    .prev-element{
      left: 5px;
   }
   .next-element{
      right: 5px;
   }
}

/*---------EO Slide IMAGE TEXT ----------------*/

/*---------eo Slide IMAGE TEXT ----------------*/

/*-----------Optimize mobile page intern------------*/
@media screen and (max-width: 480px) {
   h2{
      font-size: 3.6rem;
   }
   .overlap .module h2{
      font-size: 2.8rem;
   }
   .logos-center{
      display:flex !important;
      flex-flow: wrap row;
      justify-content: space-between;
      margin-bottom: 50px;
   }
   .logos-center img{
      width: 48%;
   }

   .none-padding-bottom{
      padding-bottom: 0;
   }
   .our-service-section > .container-2 .module{
      padding: 0px;
   }
   .our-service-section > .container-2 .module{
      margin-bottom: 50px;
   }
   .our-service-section > .container-2 .module:last-child{
      margin-bottom: 0px;
   }
   a.btn, a.btn-text{
      display: block;
      text-align: center;
      margin-left: 0 !important;
   }
   a.btn + a.btn-text{
      margin-top: 20px;
   }
   .our-service-section .content{
      padding: 2.5rem;
   }
   .thin-section{
      padding-top: 30px;
      padding-bottom: 30px;
   }
}
@media screen and (max-width: 375px) {
  .form-module .cf7-cf-turnstile{
      transform: scale(0.8);
      transform-origin: left;
   }
}

/*-----------eo Optimize mobile page intern------------*/

/*-----------CALL US - EMAIL US MOBILE HEADER ----------------------*/

.secondary-header-mobile{
    width: 100%;
    display: none;       
}
@media only screen and (max-width: 480px){
    .secondary-header-mobile{
        display: inline-flex;                
        align-items: center;
        justify-content: center;
    }
    .secondary-header-mobile>div{
        width: 50%;   
    }
    .secondary-header-mobile > div a{
        padding: 5px 10px;
        display: inline-flex;
        text-align: center;
        font-weight: 500;
        align-items: center;
        width: 100%;
        justify-content: center;   
        text-transform: uppercase;
    }
    .secondary-header-mobile .block-left{
        background: var(--yellow); 
    }
    .secondary-header-mobile .block-left > a{
        color: var(--dark-blue);
    }
    .secondary-header-mobile .block-right{
        background: var(--light-blue);               
    }
    .secondary-header-mobile .block-right > a{
        color: var(--dark-blue);
    }
    
    body.active-fixed-contact .secondary-header-mobile{
        position: fixed;
        top:0;
    }
    .secondary-header-mobile > div a::before{
       margin-right: 5px;
        font-family: "ElegantIcons";
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        vertical-align: middle;
        -moz-transition: .3s ease-in;
        -o-transition: .3s ease-in;
        -webkit-transition: .3s ease-in;
        transition: all .3s ease-in;
    }
    .secondary-header-mobile .block-left > a::before {
        content: "\e00b";
    }

    .secondary-header-mobile .block-right > a::before{
        content: "\e010";
        top: -3px;
        position: relative;
    }
    .header-container {
        position: initial;
    }

    .site-content {
        padding-top: 0;
    }
}
@media only screen and (max-width: 370px){
   .secondary-header-mobile > div a{
        font-size: 16px;
    }
   
}
/*-----------eo CALL US - EMAIL US MOBILE HEADER ----------------------*/
.project-content {
    padding: 2rem;
}
.project-child div.module {
    padding: 1.5rem;
}
.project-gallery .module img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.gallery-grid {
    display: grid !important;
    grid-gap: 1rem;
}
section.project-gallery .gallery-grid div.module {
    padding: 0;
    border-radius: 1rem;
}