body{
    font-family: "Nunito", sans-serif;
}
.container-fluid{
    max-width: 1200px;
}
p{
    font-size:1.2rem;
    line-height:1.4;
    color:#22461f;
}
.btn-default{
    display:inline-block;
    padding:1.2rem 2rem;
    color:#fff;
    background-color:#d93515;
    font-size:1.2rem;
    font-weight:bold;
    border-radius:50px;
    text-decoration:none;
}
.btn-default:hover{
    color:#fff;
    background-color: #22461f;
    -webkit-box-shadow: 0px 5px 15px -4px rgba(0,0,0,0.29); 
box-shadow: 0px 5px 15px -4px rgba(0,0,0,0.29);
}
.btn-video{
    display:block;
    background-color:#eee;
    border-radius:20px;
    height:280px;
    position:relative;
    -webkit-box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25); 
box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25);
}
.btn-video span{
    display:block;
    background-color:#d93515;
    color:#fff;
    width:60px;
    height:60px;
    border-radius:50%;
    position:absolute;
    top:50%;
    left:50%;
    margin-top:-30px;
    margin-left:-30px;
    line-height:60px;
    text-align:center;
    font-size:1.5rem;
}

.btn-default.btn-share{
    background-color:#22461f;
    border:2px solid #22461f;
}
.btn-default.btn-share:hover{
    background-color:#d93515;
    border-color:#d93515;
}
.share-options{
    display:flex;
    align-items:center;
    gap:0.75rem;
    flex-wrap:wrap;
    justify-content:center;
    text-align:center;
}
.share-options .share-label{
    font-weight:bold;
    color:#22461f;
}
.share-options .share-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:#f2f2f2;
    color:#22461f;
    text-decoration:none;
    transition:transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}
.share-options .share-icon:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 14px -6px rgba(0,0,0,0.3);
}
.share-options .share-icon.facebook{color:#1877f2;}
.share-options .share-icon.whatsapp{color:#25d366;}
.share-options .share-icon.x{color:#000;}
.share-options .share-icon.linkedin{color:#0a66c2;}

/*

    HEADER

---------- */
.header{
    padding:2rem 1rem 0 1rem;
    text-align:center;
}
.header .logo{
    display:inline-block;
    width:150px;
}
@media(min-width:768px){
    .header{
        padding:3rem 0 1rem 0;
    }
    .header .logo{
        width:180px;
    }
}

/*

    HERO 

--------- */
.hero{
    padding:2rem 1rem;
    background-position:10% 0;
}
.hero h1{
    font-weight:bold;
    font-size:2.3rem;
    line-height:1.1;
    color:#22461f;
}
@media(min-width:768px){
    .hero{
        padding:2rem 1rem 4rem 1rem;
    }
    .hero .btn-video{
        height:320px;
    }
}
@media(min-width:992px){
    .hero h1{
        font-size:3rem;
        margin:0 0 1rem 0;
    }
}
@media(min-width:1200px){
    .hero h1{
        font-size:3.5rem;
        line-height:1;
        margin:0 0 2rem 0;
    }
    .hero .btn-video{
        height:380px;
    }
}

/*

    SECTION

----------- */
.section{
    padding:2rem 1rem;
}
@media(min-width:768px){
    .section{
        padding:4rem 1rem;
    }
}
@media(min-width:992px){
    .section{
        padding:5rem 1rem;
    }
}
.section.green{
    background-color:#edf5f0;
}
.section h2{
    font-weight:bold;
    font-size:2rem;
    line-height:1.2;
    color:#d93515;
    margin:0 0 1rem 0;
}
.section h2 span{
    color:#22461f;
    font-size:1rem;
    display:block;
    font-weight:normal;
    margin:0 0 0.5rem 0;
}
.section h3{
    font-weight:bold;
    color:#22461f;
    font-size:1.5rem;
    margin:0 0 1rem 0;
}
@media(min-width:992px){
    .section h2{
        font-size:2.5rem;
    }
    .section h2 span{
        font-size:1.5rem;
    }
}

.card-icon{
    margin:0 0 1.5rem 0;
}
.card-icon .icon{
    text-align:center;
    font-size:3rem;
    color:#d93515;
    line-height:1;
    margin:0 0 1rem 0;
}

.pics-container{
    position:relative;
    height:300px;
    width:100%;
}
.section-pics .pic{
    display:block;
    background-color:#22461f;
    border-radius:50%;
    width:100px;
    height:100px;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate3d(0,0,0);
    transition:transform 0.25s ease-out;
    will-change:transform;
    -webkit-box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25); 
box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25);
}
.section-pics .pic-1{
    width:240px;
    height:240px;
    background-color:#d93515;
    margin-top:-150px;
    margin-left:-170px;
}
.section-pics .pic-2{
    width:160px;
    height:160px;
    margin-top:-20px;
    margin-left:0;
}
@media(min-width:992px){
    .section-pics .pic-1{
        width:300px;
        height:300px;
        margin-top:-180px;
        margin-left:-210px;
    }
    .section-pics .pic-2{
        width:210px;
        height:210px;
        margin-top:-20px;
        margin-left:0;
    }
}
@media(min-width:1200px){
    .section-pics .pic-1{
        width:360px;
        height:360px;
        margin-top:-200px;
        margin-left:-220px;
    }
    .section-pics .pic-2{
        width:260px;
        height:260px;
        margin-top:-45px;
        margin-left:0;
    }
}

.section-2 .pic{
    display:inline-block;
    width:240px;
    height:240px;
    background-color:#d93515;
    border-radius:50%;
    -webkit-box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25); 
box-shadow: 0px 35px 50px -9px rgba(0,0,0,0.25);
}
@media(min-width:992px){
    .section-2 .pic{
        width:300px;
        height:300px;
    }
}

.highlight{
    background-color:#eee;
    color:#151515;
    font-size:1.2rem;
    padding:1rem 1.5rem;
    text-align:center;
    border-radius:10px;
}

.quote{
    font-size:1.5rem;
    line-height:1.2;
    color:#22461f;
    font-style: italic;
    font-weight: bold;
}
.quote i{
    color:#d93515;
}
.author{
    font-size:1.2rem;
    margin:15px 0 0 0;
}
@media(min-width:768px){
    .section-3{
        padding-top:0;
    }
    .section-3 .btn-video{
        height:280px;
    }
}
@media(min-width:1200px){
    .section-3 .btn-video{
        height:360px;
    }
}

form{
    background-color: #fff;
    color:#000;
    padding:2rem 1rem;
    border-radius:20px;
    -webkit-box-shadow: 0px 5px 15px -4px rgba(0,0,0,0.29); 
    box-shadow: 0px 5px 15px -4px rgba(0,0,0,0.29);
}
form .form-label{
    color:#d93515;
    font-weight:bold;
    margin:0 0 2px 0;
    font-size:1.1rem;
}
form .form-control{
    padding:1rem;
    border-radius:10px;
    background-color: #edf5f0;
    border:none;
    transition:border-color 0.2s ease, background-color 0.2s ease;
}
form .form-control.is-invalid{
    border:1px solid rgba(217,53,21,0.4);
    background-color:#fff;
}
form button.btn-default{
    border:none;
}
form .form-error{
    font-size:0.95rem;
    line-height:1.3;
    color:#d93515;
    margin-top:0.35rem;
    display:block;
    min-height:1.1em;
}
@media(min-width:768px){
    form{
        padding:2rem;
    }
}
@media(min-width:992px){
    form{
        padding:3rem;
    }
}

footer{
    padding:1rem;
    background-color:#22461f;
    color:#fff;
    font-size:1rem;
}
