:root{

--verde:#138b5b;
--verde2:#0d6b46;
--gris:#6b6b6b;

}

body{

font-family:Segoe UI,sans-serif;

color:#333;

background:#fff;

}

.navbar{

padding:15px 0;

}

.hero{

padding:90px 0;

}

.hero img{

border-radius:25px;

}

.display-3{

color:var(--verde2);

font-family:Georgia,serif;

}

.section-title{

font-size:2.4rem;

font-weight:bold;

color:var(--verde2);

margin-bottom:25px;

font-family:Georgia,serif;

}

.quote{

border-left:5px solid var(--verde);

padding-left:20px;

margin-top:30px;

font-style:italic;

font-size:1.3rem;

color:var(--verde2);

}

.step-card{

background:#fff;

padding:35px;

border-radius:20px;

transition:.4s;

height:100%;

box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.step-card:hover{

transform:translateY(-10px);

}

.icon-circle{

width:70px;

height:70px;

border-radius:50%;

background:var(--verde);

margin:auto;

display:flex;

justify-content:center;

align-items:center;

font-size:25px;

font-weight:bold;

color:#fff;

margin-bottom:20px;

}

.reveal{

opacity:0;

transform:translateY(60px);

transition:1s;

}

.reveal.active{

opacity:1;

transform:translateY(0);

}

@media(max-width:992px){

.hero{

text-align:center;

padding:50px 0;

}

.display-3{

font-size:2.8rem;

}

.section-title{

font-size:2rem;

}

}




/*========================
BENEFICIOS
=========================*/

.benefit-card{

background:white;

padding:35px;

border-radius:25px;

height:100%;

text-align:center;

transition:.35s;

box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.benefit-card:hover{

transform:translateY(-10px);

box-shadow:0 20px 60px rgba(0,0,0,.12);

}

.benefit-icon{

width:80px;

height:80px;

margin:auto;

border-radius:50%;

background:#198754;

color:white;

display:flex;

justify-content:center;

align-items:center;

font-size:32px;

margin-bottom:20px;

}

/*========================
LISTA
=========================*/

.list-check{

padding:0;

list-style:none;

}

.list-check li{

margin-bottom:15px;

font-size:17px;

}

.list-check li::before{

content:"✓";

margin-right:10px;

font-weight:bold;

color:#198754;

}

/*========================
TIMELINE
=========================*/

.timeline{

display:flex;

justify-content:space-between;

gap:20px;

position:relative;

flex-wrap:wrap;

}

.timeline::before{

content:"";

position:absolute;

top:45px;

left:0;

right:0;

height:3px;

background:#d8d8d8;

z-index:0;

}

.timeline-item{

flex:1;

min-width:180px;

position:relative;

text-align:center;

z-index:2;

}

.timeline-circle{

width:90px;

height:90px;

border-radius:50%;

background:#198754;

margin:auto;

display:flex;

justify-content:center;

align-items:center;

color:white;

font-size:35px;

margin-bottom:20px;

border:8px solid white;

box-shadow:0 10px 30px rgba(0,0,0,.1);

}

.timeline-item h5{

font-weight:700;

margin-bottom:10px;

}

.timeline-item p{

font-size:15px;

color:#666;

}

/*========================
RESPONSIVE
=========================*/

@media(max-width:992px){

.timeline{

flex-direction:column;

}

.timeline::before{

display:none;

}

.timeline-item{

margin-bottom:40px;

}

}

/*==========================
Especialista
===========================*/

.specialist-img{

width:280px;

height:280px;

object-fit:cover;

border:8px solid white;

box-shadow:0 20px 40px rgba(0,0,0,.12);

}

/*==========================
Accordion
===========================*/

.accordion-button{

font-weight:600;

padding:20px;

}

.accordion-button:not(.collapsed){

background:#198754;

color:white;

}

/*==========================
Testimonios
===========================*/

.testimonial-card{

background:white;

padding:40px;

border-radius:20px;

box-shadow:0 10px 35px rgba(0,0,0,.08);

text-align:center;

font-size:18px;

min-height:250px;

}

.testimonial-card h6{

margin-top:20px;

color:#198754;

font-weight:bold;

}

/*==========================
CTA
===========================*/

.cta{

background:linear-gradient(135deg,#198754,#146943);

color:white;

}

.cta h2{

font-weight:bold;

}

/*==========================
Footer
===========================*/

.footer{

background:#0F5B2F;

color:white;

padding:70px 0 30px;

}

.footer h5{

margin-bottom:20px;

}

.footer ul{

padding:0;

list-style:none;

}

.footer li{

margin-bottom:10px;

}

.footer a{

text-decoration:none;

color:#ddd;

transition:.3s;

}

.footer a:hover{

color:white;

}

.footer hr{

opacity:.15;

margin:40px 0;

}