/**
Theme Name: Astra GNP
Author: Daniel Meza
Author URI: https://lionzeven.com/
Description: Diseño exclusivo para GNP Seguros
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-gnp
Template: astra
*/


/*------------------------------------*\
    COLOR THEME
\*------------------------------------*/
:root{
    --white: #FFFFFF;
    --black: #212121;
    --black-01: #1C2933;
    --gray: #57606f;
    --base: #8C1D81;
    --blue: #002e71;
    --orange: #fc6c25;
    --orange-light: #fee2d3;
    --blue-01: #364562;
    --blue-02: #a1bce5;
    --blue-light: #fee2d3;
    
    --red: #DA291C;
    --red-01: #C8102E;
    --yellow: #FFC72C;
    --green: #25d366;
    --purple: #52569E;
    --purple-light: #4E5196;
    --purple-dark: #585162;
    --green-dark: #445552;
    --txt-dark: #483B2A;
    --txt-light: #2f3542;
    
    --color-01: #fc6c25;
    --color-02: #F2C285;
    --color-03: #85F1F2;
    --color-04: #E4E5EA;
    --color-05: #D9C8F2;
}

/*------------------------------------*\
    EXPANSION DE CONTENEDORES
\*------------------------------------*/
.m24{ margin: 24px 0;}
.mb80{ margin-bottom: 80px;}

.p4{ padding: 4px 0;}
.p8{ padding: 8px 0;}
.p16{ padding: 16px 0;}
.p24{ padding: 24px 0;}
.p32{ padding: 32px 0;}
.p40{ padding: 40px 0;}
.p48{ padding: 48px 0;}
.p56{ padding: 56px 0;}
.p64{ padding: 64px 0;}
.p72{ padding: 72px 0;}
.p80{ padding: 80px 0;}
.p88{ padding: 88px 0;}
.p96{ padding: 96px 0;}
.p104{ padding: 104px 0;}
.p120{ padding: 120px 0;}
.p128{ padding: 128px 0;}

.pt0{ padding-top: 0px;}
.pt4{ padding-top: 4px;}
.pt8{ padding-top: 8px;}
.pt16{ padding-top: 16px;}
.pt24{ padding-top: 24px;}
.pt32{ padding-top: 32px;}
.pt40{ padding-top: 40px;}
.pt48{ padding-top: 48px;}
.pt56{ padding-top: 56px;}
.pt64{ padding-top: 64px;}
.pt72{ padding-top: 72px;}
.pt80{ padding-top: 80px;}
.pt88{ padding-top: 88px;}
.pt96{ padding-top: 96px;}
.pt104{ padding-top: 104px;}
.pt120{ padding-top: 120px;}
.pt128{ padding-top: 128px;}

.pb4{ padding-bottom: 4px;}
.pb8{ padding-bottom: 8px;}
.pb16{ padding-bottom: 16px;}
.pb24{ padding-bottom: 24px;}
.pb32{ padding-bottom: 32px;}
.pb40{ padding-bottom: 40px;}
.pb48{ padding-bottom: 48px;}
.pb56{ padding-bottom: 56px;}
.pb64{ padding-bottom: 64px;}
.pb72{ padding-bottom: 72px;}
.pb80{ padding-bottom: 80px;}
.pb88{ padding-bottom: 88px;}
.pb96{ padding-bottom: 96px;}
.pb104{ padding-bottom: 104px;}
.pb120{ padding-bottom: 120px;}
.pb128{ padding-bottom: 128px;}



.c60{
    width: 60%!important;
    margin: 0 20%!important;
}
.c70{
    width: 70%!important;
    margin: 0 15%!important;
}
.c80{
    width: 80%!important;
    max-width: 1280px!important;
    margin: 0 auto!important;
}

/*------------------------------------*\
    BG DARK
\*------------------------------------*/
.bg-dark{
    background-color: var(--black);
}
.bg-black{
    background-color: var(--black);
}
.bg-blue{
    background-color: var(--blue-01);
}
.bg-gray{
    background-color: var(--gray-01);
}

/*------------------------------------*\
    GENERAL
\*------------------------------------*/
.ast-primary-header{
    -webkit-backdrop-filter: blur(7px);
            backdrop-filter: blur(7px);
    background-color: rgba(255, 255, 255, 0.4)!important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1)!important;
}
.single-post .ast-primary-header{
    -webkit-backdrop-filter: blur(7px);
            backdrop-filter: blur(7px);
    background-color: rgba(255, 255, 255, 0.6)!important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1)!important;
}
.menu-link{
    font-size: 1.4rem!important;
    font-weight: 700;
    line-height: 1.25em!important;
    text-transform: uppercase;
    color: var(--black)!important;
}
/*
.main-header-menu li:last-child a{
    display: block;
    font-size: 1.4rem!important;
    padding: 12px 16px!important;
    border-radius: 1.6rem!important;
    background-color: var(--color-02);
    color: var(--txt-dark)!important;
    
}
*/
.ast-sticky-active{
    -webkit-backdrop-filter: blur(7px);
            backdrop-filter: blur(7px);
    background-color: rgba(255, 255, 255, 0.98)!important;
}
.site-primary-header-wrap{
    width: 80%!important;
    max-width: 1280px!important;
    margin: 0 auto!important;
}
html{
/*    font-size: calc(15px + 0.390625vw);*/
    font-size: 62.5%;
}
body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
/*    font-family: ui-san-serif;*/
    font-size: calc(1.2rem + 0.390625vw);
    font-weight: 300;
    line-height: 1.5em;
    letter-spacing: 1px;
	color: #343a40;
    background-color: #FFFFFF;
}
h1,h2,h3,h4,h5,h6{
/*    font-family: 'Inter', sans-serif !important;*/
/*
    font-family: "Sofia Sans", serif;
    font-weight: 600!important;
*/
}
.btn a{
    display: inline-flex;
    font-size: 1.4rem!important;
    font-weight: 600!important;
    line-height: 1em;
    letter-spacing: 2px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none!important;
    border-radius: 27px!important;
    margin-top: 1.6rem;
    padding: 16px 40px 16px!important;
    transition: all 0.2s ease-in-out;
    color: var(--white)!important;
    background-color: var(--orange)!important;
    background-image: none!important;
}
.title-center h3{
    text-align: center;
    margin-bottom: 40px!important;
}
.title-center p{
    text-align: center;
}
.hide{
    display: none!important;
}

/*------------------------------------*\
    TAGS
\*------------------------------------*/
.tags-title{
    position: relative;
}
.tags-title ul{
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
}
.tags-title ul li{
    position: relative;
    padding: 4px 16px 4px 32px;
    border: solid 2px rgba(171,171,171,0.3);
    border-radius: 30px;
    margin-left: 8px;  
}
.tags-title ul li:first-child{
    margin-left: 0px;
}
.tags-title ul li a{
    position: relative;
    display: block;
    font-size: 13px;
    font-weight: 400;
    text-decoration: none;
    color: rgb(171,171,171);
}
.tags-title ul li a::before{
    position: absolute;
    top: 50%;
    left: -16px;
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: var(--green);
    transform: translate(0, -50%);
}

.bg-dark .tags-title ul{
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
}
.bg-dark .tags-title ul li{
    position: relative;
    padding: 4px 16px 4px 32px;
    border: solid 2px rgba(171,171,171,0.3);
    border-radius: 30px;
    margin-left: 8px;
}
.bg-dark .tags-title ul li:first-child{
    margin-left: 0px;
}
.bg-dark .tags-title ul li a{
    position: relative;
    display: block;
    font-size: 13px;
    font-weight: 400;
    text-decoration: none;
    color: rgb(171,171,171);
}
.bg-dark .tags-title ul li a::before{
    position: absolute;
    top: 50%;
    left: -16px;
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: var(--green);
    transform: translate(0, -50%);
}

/*------------------------------------*\
    HERO
\*------------------------------------*/
.single-post .content-area.primary{
    margin-top: 0!important;
}
.hero-box{
    position: relative;
    height: 80vh!important;
    background: url(img/hero/hero_02.jpg) center right no-repeat;
    background-size: contain;
    background-color: var(--white);
}
.hero-blog{
    height: 64vh!important;
    background-size: cover!important;
}
.hero-left{
    bottom: 8vh;
}
.home.hero-left{
    bottom: 240px;
}
.hero-left h2{
    font-size: 24px;
    font-weight: 400!important;
    line-height: 1.25em;
    letter-spacing: 2px!important;
    text-transform: uppercase;
    color: var(--orange);
}
.hero-left h2 strong{
    clear: both;
    display: block;
/*    font-size: 80px;*/
    font-size: clamp(2.4rem, 4.2vw, 8rem);
    font-weight: 800!important;
    line-height: 1em;
    color: var(--blue);
}
.hero-left ul{
    display: flex;
    flex-direction: row;
    list-style: none;
    margin: 0!important;
    padding: 0!important;
}
.hero-left li{
    position: relative;
    padding: 4px 16px 4px 32px;
    border: solid 2px rgba(171,171,171,0.3);
    border-radius: 30px;
    margin-left: 8px;
/*    background-color: var(--white);*/
}
.hero-left li:first-child{
    margin-left: 0px;
}
.hero-left li a{
    position: relative;
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none!important;
    color: var(--black);
}
.hero-left li a::before{
    position: absolute;
    top: 50%;
    left: -16px;
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: var(--yellow);
    transform: translate(0, -50%);
}
.hero-left li:nth-child(2) a::before{
    background-color: var(--blue);
}
.hero-left li:nth-child(3) a::before{
    background-color: var(--red);
}
.tags-hero{
    margin-bottom: 16px;
}

/*------------------------------------*\
    FORM SINGLE PAGE
\*------------------------------------*/
.form-box-inner{
    padding: 56px 80px 0 80px;
    margin-top: -80px;
    border-top: 1px solid rgba(164, 176, 190, 0.2);
    border-right: 1px solid rgba(164, 176, 190, 0.2);
    border-left: 1px solid rgba(164, 176, 190, 0.2);
    border-top-left-radius: 24px!important;
    border-top-right-radius: 24px!important;
/*    background-color: rgba(255, 255, 255, 0.9);*/
    -webkit-backdrop-filter: blur(4px);
            backdrop-filter: blur(4px);
    background: rgba(255, 255, 255, 0.9);
}
.form-single-page{
    width: 80%;
    margin-left: 10%;
}
.info-form h4{
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--orange);
    padding-right: 16px;
}
.info-form h4 strong{
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.25em;
    color: var(--blue);
}
.form-single-page p{
    margin: 0!important;
    padding: 0!important;
}
.top-form .element-input input{
    width: 100%!important;
}
.top-form .element-input select{
    width: 100%!important;
}
.top-form .element-top .element-input{
    width: 48%;
}
.top-form .element-bottom .element-input{
    width: 30%;
}
.top-form .element-input input,
.top-form .element-input select{
    height: 40px!important;
    padding: 12px 16px!important;
    border: 1px solid #ced6e0!important;
    border-radius: 32px!important;
    margin-top: 0px!important;
    background-color: var(--white)!important;
}
.top-form .element-top textarea{
    height: 96px;
    resize: none;
}
.top-form .element-input label{
    font-size: 14px!important;
    font-weight: 400!important;
    color: var(--black)!important;
}
.top-form .element-input label,
.top-form .element-input p{
    text-align: left!important;
}
.top-form .btn-form p input{
    position: relative;
    left: 50%;
    font-size: 16px;
    font-weight: 700;
    line-height: 16px;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    border-radius: 16px;
    color: var(--white);
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    background-color: var(--orange)!important;
}

/*------------------------------------*\
    ABOUT
\*------------------------------------*/
.about-box{
    background-color: var(--color-01);
}
.about-left h3{
    font-size: 2.4rem!important;
    font-weight: 700;
/*    border-radius: 27px;*/
    margin-bottom: 0.8rem;
    color: var(--blue);
}
.about-left h3 strong{
    clear: both;
    display: block;
    font-size: 40px;
    font-weight: 400!important;
    line-height: 1.25em;
    padding-top: 16px;
    color: var(--black);
}
.about-left h3 strong em{
    font-style: normal;
    font-weight: 700!important;
}
.about-our-right{
    padding-left: 16px;
}
.about-our-right p{
    font-size: 2.4rem;
    line-height: 1.5em;
    text-align: justify!important;
    margin-bottom: 1.6rem;
}
.about-our-right p strong{
    font-weight: 700;
}
.long-title-left h3{
    width: 96%;
}
.txt-valores li{
    font-weight: 400!important;
    color: var(--blue-02)!important;
}
.txt-valores li strong{
    font-weight: 700!important;
    color: var(--white)!important;
}

/*------------------------------------*\
    SERVICES
\*------------------------------------*/
.service-box{
    background-color: var(--color-01);
}
.services-left p{
    width: 80%;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 1px;
/*    color: var(--black);*/
    color: var(--orange-light);
}
.services-left p strong{
    color: var(--white);
}
.title-services .wpb_wrapper{

}
.services-right h4,
.services-right h3{
    text-align: right!important;
}
.services-right h3{
    font-size: 4rem;
    font-weight: 300;
    line-height: 1.25em;
/*    color: var(--white);*/
    color: var(--orange-light);
}
.services-right h3 strong{
    font-weight: 700;
    color: var(--white);
}
.subtitle-line .wpb_wrapper{
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
}
.services-right h4{
    font-size: 2.4rem;
    font-weight: 700!important;
    border-radius: 27px;
    margin-bottom: 1.6rem;
    padding: 8px 40px;
    color: var(--txt-dark);
    background-color: var(--color-02);
}
.services-list{
    justify-content: space-between;
}
.service-single{
    width: 32%!important;
    border: 1px solid #FFFFFF;
    border-radius: 2.4rem;
    margin-bottom: 2.4rem;
    padding: 4rem!important;
    background-color: var(--white);
}
.service-single-48{
    width: 48%!important;
}
.service-single h2{
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5em;
    text-align: center;
    text-transform: uppercase;
    color: var(--orange);
}
.service-single h2 strong{
    clear: both;
    display: block;
    font-size: 2.4rem;
    line-height: 1.25em;
    color: var(--blue);
}
.service-single h4{
    position: relative;
    font-size: 1.8rem;
    line-height: 1.25em;
    text-align: center;
    text-transform: uppercase;
    padding-bottom: 16px;
    color: var(--orange);
}
.service-single h4::before{
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 120px;
    height: 4px;
    transform: translate(-50%, 0);
    background-color: var(--orange);
}
.service-single p{
    font-size: 1.5rem;
    letter-spacing: 1px;
    line-height: 1.5em;
    text-align: justify;
}
.service-single ul{ list-style: none;}
.service-single li{
    position: relative;
    font-size: 1.8rem;
    font-weight: 700;
    margin-left: 24px;
    margin-bottom: 1.6rem;
    color: var(--purple-dark);
}
.service-single li::before{
    content: "";
    position: absolute;
    top: 6px;
    left: -32px;
    width: 24px;
    height: 24px;
    background: url(img/icon/check_icon.png) center center no-repeat;
    background-size: contain;
}
/*------------------------------------*\
    MEMBER
\*------------------------------------*/
.member-left img{
    display: block;
    width: 100%;
}
.member-right{
    padding-left: 40px;
    padding-bottom: 40px;
}
.member-right h2,
.member-right h4{
    color: var(--orange);
}
.member-right h2 strong{
    clear: both;
    display: block;
    font-size: 4rem!important;
    line-height: 1.25em;
    margin-bottom: 2.4rem;
    color: var(--blue);
}
.member-right h4{
    font-size: 2.4rem;
    line-height: 1.5em;
}
.member-right ul{
    list-style: none;
}
.member-right ul li{
    position: relative;
    font-weight: 500;
    padding-left: 24px;
    padding-bottom: 16px;
}
.member-right ul li strong{
    clear: both;
    display: block;
    font-weight: 700;
    color: var(--red);
}
.member-right ul li::before{
    content: "";
    position: absolute;
    top: 6px;
    left: -16px;
    width: 24px;
    height: 24px;
    background: url(img/icon/check_icon.png) center center no-repeat;
    background-size: contain;
}
.member-right .vc_tta-panel-heading,
.faq-right .vc_tta-panel-heading{
    background-color: var(--orange)!important;
}
.member-right .vc_tta-panel-heading h4 a,
.faq-right .vc_tta-panel-heading h4 a{
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--white)!important;
}
.member-right .vc_tta-panel-heading .vc_tta-controls-icon::before,
.member-right .vc_tta-panel-heading .vc_tta-controls-icon::after,
.faq-right .vc_tta-panel-heading .vc_tta-controls-icon::before,
.faq-right .vc_tta-panel-heading .vc_tta-controls-icon::after{
    border-color: var(--white)!important;
}
.member-right .vc_tta-panel-body,
.faq-right .vc_tta-panel-body{
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.5em;
    color: var(--purple-dark)!important;
    background-color: var(--white)!important;
}
/*------------------------------------*\
    TESTIMONIAL
\*------------------------------------*/
.join-box{
    position: relative;
    background: url(img/bg/bg_unete_caep.jpg) center center no-repeat;
    background-size: cover;
}
.bg-dark{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
/*    background-color: rgba(200, 16, 46, 0.9);*/
    background-color: rgba(184, 229, 220, 0.92);
/*    background-color: rgba(242, 194, 133, 0.94);*/
    z-index: 10;
}
.single-testimonial p{
    font-size: 1.4rem;
    text-align: center!important;
    color: var(--green-dark);
}
.single-testimonial p em{
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5em;
}
.single-testimonial p strong{
    clear: both;
    display: block;
    font-size: 1.8rem;
    line-height: 1em;
}

/*------------------------------------*\
    SECTION BLUE
\*------------------------------------*/
.section-blue{
    background-color: var(--blue);
}
.section-blue h2{
    font-size: 2.4rem;
    line-height: 1.25em;
    color: var(--white);
}
.section-blue h2 strong{
    clear: both;
    display: block;
    font-size: clamp(2.8rem, 2.4vw, 4rem);
    line-height: 1em;
    color: var(--black);
}
.section-blue h3{
    color: var(--blue-02);
}
.section-blue p{
    color: var(--blue-02);
/*    color: #B8E5DC;*/
}
.section-blue h3 strong{
    color: var(--white);
}
.section-blue p strong{
    color: var(--white);
}
.section-blue p{
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5em;
    letter-spacing: 1px;
}
.section-blue ul{
    list-style: none;
    margin: 0;
    padding: 0;
    padding-top: 24px;
}
.section-blue li{
    position: relative;
    font-weight: 700;
    margin-bottom: 16px;
    padding-left: 56px;
    color: var(--white);
}
.section-blue li::before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 32px;
    height: 32px;
    transform: translate(0, -50%);
    background: url(img/icon/check_icon.png) center center no-repeat;
    background-size: contain;
}

/*------------------------------------*\
    FORM
\*------------------------------------*/
.top-box-form{
    padding-bottom: 40px;
}
.top-box-form h4{
    font-size: 2.4rem;
    line-height: 1.25em;
}
.top-box-form h4,
.top-box-form p{
    text-align: center;
}
.form-inner{
    position: relative;
    z-index: 30;
}
.form-inner.c80{
    width: 50%!important;
    margin: 0 25%!important;
    max-width: none!important;
}
.form-inner h3{
    font-size: 2.4rem;
    font-weight: 400!important;
    line-height: 1.5em;
    text-align: center;
    padding-bottom: 40px!important;
    color: var(--black);
}
.form-inner h3 strong{
    clear: both;
    display: block;
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.25em;
    color: var(--green-dark);
}
.input-row{
    display: flex;
    flex-direction: column;
    width: 48%;
    margin-bottom: 1.6rem;
}
.element-top{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.element-top p{
    margin-bottom: 16px!important;
}
.element-input-short{
    width: 48%;
}
.element-input-short-3{
    width: 30%;
}
.element-input-long{
    width: 100%;
}
.element-input p{
    width: 100%;
    text-align: center;
}
.element-input label{
    font-size: 18px!important;
    font-weight: 700!important;
    color: var(--white)!important;
}
.element-input input,
.element-input select{
    height: inherit!important;
    padding: 12px 24px!important;
/*    border: none;*/
    border-radius: 24px!important;
    margin-top: 8px;
    background-color: var(--white)!important;
}
.element-input textarea{
    height: 120px!important;
    padding: 16px 32px!important;
    border: none;
    border-radius: 32px!important;
    margin-top: 8px;
    background-color: var(--white)!important;
}
.btn-form p{
    display: flex;
    flex-direction: row;
    width: 100%;
}
.btn-form input{
    position: relative;
    left: 50%;
    font-size: 1.8rem!important;
    font-weight: 700!important;
    text-transform: uppercase;
    letter-spacing: 2px;
    transform: translate(-50%, 0);
    border: none;
    border-radius: 24px;
    background-color: var(--yellow);
    color: var(--black);
}
.wpcf7 form.sent .wpcf7-response-output{
    font-weight: 700;
    text-align: center;
    color: var(--black);
    border-color: var(--color-01);
}

/*------------------------------------*\
    FAQ
\*------------------------------------*/
.faq-right{
    padding-bottom: 80px;
}
.faq-right h3{
    font-size: 2.4rem!important;
    font-weight: 700;
    padding-bottom: 4rem;
    color: var(--blue);
}
.faq-right h3 strong{
    clear: both;
    display: block;
    font-size: clamp(2.8rem, 2.4vw, 4rem);
    font-weight: 400!important;
    line-height: 1.25em;
    color: var(--black);
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/
.site-primary-footer-wrap{
    border: none!important;
}
.site-below-footer-wrap{
    border-top: 1px solid rgba(255, 255, 255, 0.2)!important;
}
.site-primary-footer-wrap,
.site-below-footer-wrap{
    background: none!important;
    
}
footer{
    position: relative;
    background-color: var(--blue)!important;
/*
    background: url(img/bg/footer_02.jpg) center bottom no-repeat!important;
    background-size: cover!important;
*/
}
.site-footer-section-3 h2{
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1em;
    color: var(--white);
    margin-bottom: 16px;
}
.site-footer-section-3 li{
    position: relative;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.25em;
    color: var(--white);
    margin-bottom: 24px;
    padding-left: 56px;
}
.site-footer-section-3 li::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 32px;
    height: 32px;
    background: url(img/icon/check-01.png) center center no-repeat;
    background-size: contain;
}
.site-footer-section-3 li:nth-child(1)::before{
    top: 4px;
    background: url(img/icon/address.png) center center no-repeat;
    background-size: contain;
}
.site-footer-section-3 li:nth-child(2)::before{
    background: url(img/icon/phone.png) center center no-repeat;
    background-size: contain;
}
.site-footer-section-3 li:nth-child(3)::before{
    background: url(img/icon/mail.png) center center no-repeat;
    background-size: contain;
}
.site-footer-section-3 a{
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.25em;
    color: var(--white);
}
.site-footer-section-3 li:last-of-type{
    margin-bottom: 0px;
}
.ast-footer-copyright p{
/*    text-align: left;*/
}
.ast-footer-html-2{
    text-align: right;
}
.ast-footer-copyright p,
.ast-footer-html-2 p,
.ast-footer-html-1 a,
.ast-footer-html-2 a{
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1em;
    color: var(--white);
}
.ast-footer-copyright p strong{
    font-weight: 700;
}
.ast-footer-html-1 a:hover,
.ast-footer-html-2 a:hover,
.site-footer-section-3 a:hover{
    color: var(--yellow);
}

/*------------------------------------*\
    SINGLE POST
\*------------------------------------*/
.section-dark{
    background-color: var(--color-01);
}
.single-post .entry-title{
    text-align: center;
    margin-top: 80px;
}
.single-post .entry-meta{
    display: none;
}
.single-post .ast-post-social-sharing{
    align-items: center!important;
    margin-bottom: 40px;
}
.single-post h2,
.single-post h3,
.single-post h4,
.single-post p{
    text-align: center;
}
.single-post.section-dark h2,
.single-post.section-dark h3,
.single-post.section-dark p{
    text-align: left;
}
.single-post.section-dark h2,
.single-post.section-dark h4{
    margin-bottom: 16px!important;
    color: var(--white);
}
.single-post h1{
    font-size: 4rem!important;
}
.single-post h2{
    font-size: 2.4rem;
    font-weight: 300!important;
    line-height: 1.25em;
    padding-bottom: 40px;
}
.single-post h2 strong{
    clear: both;
    display: block;
    font-size: 3.2rem;
    line-height: 1em;
    font-weight: 700!important;
}
.single-post h3{
    font-size: 2.4rem;
    color: var(--color-01);
}
.single-post.section-dark h4{
    font-size: 32px;
}
.single-post.section-dark ul{
    margin: 24px 0!important;
}
.single-post.section-dark ul li{
    font-weight: 700;
    color: var(--white);
}
.single-post.section-dark p{
    color: #f1f2f6;
}
.single-post.section-dark p strong{
    font-weight: 700;
    color: var(--white);
}
.single-post-img img{
    display: block;
    width: 80%;
}
.single-post-img.single-post-img-right img{
    margin-left: 20%!important;
}
.single-post-img.single-post-img-right img{
    margin-right: 20%!important;
}
.posted-on{
    text-transform: uppercase!important;
}
.entry-meta{
    color: var(--red)!important;
}
.single-info ul{
    width: 70%;
    font-weight: 700;
    color: var(--purple-dark);
    margin: 40px 15%!important;
}
.single-post h4{
    margin-top: 0!important;
}

/*------------------------------------*\
    TERMS
\*------------------------------------*/
.hero-page{
    background: url(img/hero/hero_terms.jpg) center center no-repeat;
    background-size: cover;
    height: 40vh;
}
.terms-box{
    padding: 80px 0;
}
.terms-box h1,
.terms-box h3{
    text-align: center;
}
.terms-box h1{
    font-size: 32px;
    line-height: 1.5em;
}
.terms-box h3{
    font-size: 24px;
    line-height: 1.5em;
}
.terms-box p{
    text-align: justify;
    margin-bottom: 16px;
}
.terms-box blockquote{
    border-left: none!important;
    padding: 16px 0!important;
    margin: 0!important;
}
.terms-box blockquote p{
    font-style: normal;
    font-size: 16px;
    line-height: 1.25em;
    text-align: center;
}
.terms-box p strong,
.terms-box a,
.terms-box blockquote p{
    font-weight: 700;
    color: var(--red);
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

/*-------------------------------------------------
1. Media Queries to Fix Responsive Layouts
	1.1 Resolution (For Large Seized Desktops 1600x900)
	1.2 Resolution (For Medium Seized Desktops 1440x900)
	1.3 Resolution (For Small Seized Desktops 1280x800)
	1.4 Resolution (For Large Tablets 1024x800)
	1.5 Resolution (For Small Tablets 768x800)
	1.6 Resolution (For Mobile Phones 320x786)

-------------------------------------------*/
/*-------------------------------------------------
===================================================
	1. Media Queries to Fix Responsive Layouts
===================================================
-------------------------------------------------*/

/*-------------------------------------------------
	1.1 Resolution (For Large Seized Desktops 1600x900)
-------------------------------------------------*/
@media (min-width: 1921px) {
}

/*-------------------------------------------------
	1.1 Resolution (For Large Seized Desktops 1600x900)
-------------------------------------------------*/
@media (min-width: 1600px) and (max-width: 1919px) {
}
/*-------------------------------------------------
	1.2 Resolution (For Medium Seized Desktops 1440x900)
-------------------------------------------------*/
@media (min-width: 1440px) and (max-width: 1599px) {
}
/*-------------------------------------------------
	1.3 Resolution (For Small Seized Desktops 1280x800)
-------------------------------------------------*/
@media (min-width: 768px) and (max-width: 1440px) {


}
/*-------------------------------------------------
	1.4 Resolution (For Large Tablets 1024x600)
-------------------------------------------------*/
@media (min-width: 1024px) and (max-width: 1200px) {
}

/*-------------------------------------------------
	1.5 Resolution (For Small Tablets 768x800)
-------------------------------------------------*/
@media (min-width: 0px) and (max-width: 1024px) {

}

@media (min-width: 768px) and (max-width: 1080px) {
    .c80{
        width: 90%!important;
        max-width: 90%!important;
        margin: 0 5%!important;
    }
    .hero-left h2 strong{
        font-size: 80px;
    }

}
@media (min-width: 0px) and (max-width: 767px) {
    .c60,
    .c80{
        width: 100%!important;
        max-width: 98%!important;
        margin: 0 auto!important;
    }
    .p40{
        padding: 24px 0;
    }
    .p80{
        padding: 40px 0;
    }
    .p120{
        padding: 40px 0;
    }
    .pt40{
        padding-top: 24px;
    }
    .pt80{
        padding-top: 40px;
    }
    .pb40{
        padding-bottom: 24px;
    }
    .pb80{
        padding-bottom: 40px;
    }
    .site-primary-header-wrap{
        width: 100%!important;
        max-width: 100%!important;
        margin: 0!important;
    }
    .menu-link{
        font-size: 1.4rem!important;
        font-weight: 700;
        line-height: 1.25em!important;
        text-transform: uppercase;
        padding: 12px 16px!important;
        color: var(--white)!important;
        background-color: var(--color-01)!important;
    }
    .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link{
        color: var(--black)!important;
        background-color: var(--color-02)!important;
    }
    .main-header-menu li:last-child a{
        font-size: 1.4rem!important;
        border-radius: 0rem!important;
        background-color: var(--color-01);
        color: var(--white)!important;
    }
    .btn{
        width: 100%;
        margin-top: 16px;
    }
    .btn a{
        position: relative;
        left: 50%;
        margin-top: 0px;
        transform: translate(-50%, 0);
    }
    .hero-box{
        position: relative;
        justify-content: flex-start!important;
        height:720px!important;
        padding-top: 80px!important;
        background: url(img/hero/hero_02_mobile.jpg) bottom center no-repeat;
        background-size: contain;
        background-color: #FFFFFF;
    }
    .hero-box-home,
    .hero-about{
        height:800px!important;
    }
    .hero-blog{
        height: 160px!important;
        background-size: cover!important;
    }
    .hero-left{
        padding-top: 24px;
        bottom: 0px;
    }
    .home.hero-left{
        padding-top: 24px;
        bottom: 0px;
    }
    .hero-left h2{
        padding-top: 16px;
        text-align: center;
    }
    .hero-left h2 strong{
        font-size: 40px;
    }
    .hero-left p{
        text-align: center;
    }
    .hero-left ul{
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .hero-left ul li{
        margin-top: 8px;
    }
    .long-title-left h3{
        width: 100%;
    }
    .about-left h3{
        font-size: 2.4rem!important;
        text-align: center;
    }
    .about-left h3 strong{
        font-size: 2.4rem;
        font-weight: 700!important;
        padding-top: 8px;
    }
    .about-our-right{
        padding-left: 0px;
    }
    .about-our-right p{
        font-size: 1.8rem;
        line-height: 1.5em;
        text-align: justify!important;
        margin-bottom: 0.8rem;
    }
    .services-left p{
        width: 100%;
        font-size: 1.6rem;
        text-align: center;
        padding-bottom: 24px;
    }
    .services-right h4,
    .services-right h3{
        text-align: center!important;
    }
    .services-right h3{
        font-size: 3.2rem;
        padding-top: 24px;
    }
    .services-right h4{
        font-size: 2.4rem;
        font-weight: 700!important;
        border-radius: 27px;
        margin-bottom: 1.6rem;
        padding: 8px 40px;
    }
    .services-list{
        justify-content: space-between;
    }
    .service-single{
        width: 90%!important;
        margin-left: 5%!important;
        margin-right: 5%!important;
        margin-bottom: 2.4rem;
        padding: 4rem 2.4rem!important;
    }
    .service-single h2{
        font-size: 2.4rem;
        font-weight: 700;
        line-height: 1.25em;
        text-align: center;
        text-transform: uppercase;
/*        color: var(--red);*/
    }
    .service-single li{
        font-size: 1.6rem;
        margin-left: 16px;
        margin-bottom: 1.6rem;
    }
    .member-left{ order: 2!important;}
    .member-right{ order: 1!important;}
    .member-right{
        padding-left: 0px;
        padding-bottom: 24px;
    }
    .member-right h2{
        text-align: center;
    }
    .member-right ul{
        margin-bottom: 2.4rem!important;;
    }
    .member-right li{
        font-size: 1.6rem;
        margin-left: 16px;
        margin-bottom: 1.6rem;
    }
    .form-inner.c80{
        width: 90%!important;
        margin: 0 5%!important;
        max-width: none!important;
    }
    .form-inner h3{
        font-size: 2rem;
        padding-bottom: 40px!important;
    }
    .form-inner h3 strong{
        font-size: 3.2rem;
    }
    .element-top{
        flex-direction: column;
    }
    .element-input-short,
    .element-input-short-3,
    .element-input-long{
        width: 90%;
        margin: 0 5%;
    }
    .element-input p{
        margin-bottom: 8px!important;
    }
    .element-input input{
        padding: 8px 16px!important;
        border-radius: 32px!important;
        margin-top: 8px;
    }
    .element-input textarea{
        padding: 8px 16px!important;
        border-radius: 32px!important;
        margin-top: 8px;
    }
    .site-footer-section-1 img{
        position: relative;
        left: 50%;
        width: 100%!important;
        max-width: 240px!important;
        margin-bottom: 8px;
        padding-bottom: 32px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.4);
        transform: translate(-50%, 0);
    }
    .site-footer-section-3 h2{
        text-align: center;
        margin-bottom: 16px;
    }
    .ast-footer-copyright p{
        margin-bottom: 8px!important;
    }
    .site-footer-section-3 p{
        margin-top: 8px!important;
    }
    .ast-footer-copyright p,
    .site-footer-section-3 p{
        text-align: center!important;
    }
    .terms-box h1{
        font-size: 24px;
        line-height: 1.5em;
    }
    .form-box-inner{
        padding: 24px 24px 0 24px;            
    }
    .info-form h4{
        text-align: center;
        font-size: 2.4rem;
    }
    .info-form h4 strong{
        font-size: 3.2rem;
        line-height: 1em;
    }
    .info-form p{
        text-align: center;
    }
    .form-single-page{
        width: 98%;
        margin-left: 1%;
        margin-right: 1%;
        margin-top: 24px;
    }
    .form-box-inner{
        margin-top: -40px!important;
    }
    .top-form .element-top.flex-row{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
    }
    .top-form .element-top .element-input, .top-form .element-bottom .element-input{
        width: 98%!important;
    }
    .faq-left{ order: 2};
    .faq-right{ order: 1};
    .faq-right h3{ text-align: center;}
    .section-blue h2,
    .section-blue p{
        text-align: center;
    }
    .single-post .entry-title{
        margin-top: 40px;
    }
    .single-post h1{
        font-size: 2.4rem!important;
    }
    .single-post.section-dark h2, .single-post.section-dark h4{
        text-align: center!important;
    }
    .single-info p,
    .post-conclusion p{
        font-weight: 400!important;
        text-align: center!important;
        line-height: 1.75em;
        letter-spacing: 1px;
    }
    .single-info ul{
        width: 80%;
        margin: 40px 10%!important;
    }
}