:root{

--vino:#6B0015;
--azul:#123B5A;
--oro:#C8A96A;
--fondo:#F5F4F1;
--blanco:#FFFFFF;
--texto:#3B3B3B;
--gris:#7B7B7B;

}

/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Montserrat',sans-serif;
background:var(--fondo);
color:var(--texto);
line-height:1.7;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
}

ul{
list-style:none;
}

/* CONTENEDORES */

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.narrow{
max-width:900px;
}

.center{
text-align:center;
}

section{
padding:100px 0;
}

/* TITULOS */

h1,h2,h3,h4{
font-family:'Playfair Display',serif;
}

.section-title{
margin-bottom:50px;
}

.section-title span{
color:var(--vino);
letter-spacing:3px;
font-size:.85rem;
font-weight:600;
text-align:center;
}

.section-title h2{
font-size:2.7rem;
color:var(--azul);
margin-top:3px;
text-align:center;
}

.section-title.light h2{
color:white;
}

/* BOTONES */

.btn-primary{
background:var(--vino);
color:white;
padding:16px 34px;
border-radius:8px;
font-weight:600;
transition:.3s;
}

.btn-primary:hover{
transform:translateY(-3px);
}

.btn-secondary{
border:1px solid var(--vino);
color:var(--vino);
padding:16px 34px;
border-radius:8px;
font-weight:600;
transition:.3s;
}

.btn-secondary:hover{
background:var(--vino);
color:white;
}

.btn-white{
background:white;
color:var(--vino);
padding:18px 42px;
border-radius:8px;
font-weight:700;
display:inline-block;
transition:.3s;
}

.btn-white:hover{
transform:translateY(-3px);
}

/* HERO */

.hero{
min-height:80vh;
display:flex;
align-items:center;
}

.hero-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:80px;
align-items:center;
}

.tag{
color:var(--vino);
letter-spacing:3px;
font-size:.85rem;
font-weight:700;
}

.hero h1{
font-size:3.2rem;
line-height:1.1;
margin:20px 0;
color:var(--vino);
}

.hero h1 span{
color:var(--vino);
display:block;
}

.hero p{
color:var(--gris);
font-size:1.0rem;
margin-bottom:30px;
}

.hero-buttons{
display:flex;
gap:20px;
flex-wrap:wrap;
}

.hero-image img{
border-radius:20px;
box-shadow:0 25px 50px rgba(0,0,0,.15);
}

/* INTRO */

.intro{
padding:70px 0;
background:white;
}

.intro p{
margin-bottom:20px;
font-size:1.0rem;
}

/* FRASE */

.quote{
padding:70px 0;
background:var(--vino);
color:white;
text-align:center;
}

.quote h2{
font-size:2.0rem;
max-width:900px;
margin:auto;
font-weight:200;
}

/* OBJETIVOS */

.cards-grid{
display:grid;
grid-template-columns:repeat(2,500px);
justify-content:center;
gap:30px;
}

.card{
background:white;
padding:25px;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
transition:.3s;
}

.card:hover{
transform:translateY(-8px);
}

.card h3{
color:var(--vino);
margin-bottom:15px;
font-size:1.5rem;
}

.card.full{
grid-column:1/3;
}

/* AUDIENCIA */

.audience{
background:white;
}

.audience-list{
max-width:900px;
margin:auto;
}

.audience-item{
padding:20px;
margin-bottom:20px;
background:var(--fondo);
border-left:5px solid var(--oro);
border-radius:10px;
}

/* MODULOS */

.modules{
background:#F8F8F8;
}

.module-block{
margin-bottom:50px;
max-width:900px;
margin:0 auto 50px;
}

.module-header{
background:var(--vino);
max-width:900px;
margin:auto;
color:white;
padding:15px 30px;
font-size:1.2rem;
font-weight:500;
border-radius:12px 12px 0 0;
}

.module-content{
display:grid;
grid-template-columns:repeat(2,420px);
justify-content:center;
gap:25px;
padding:30px;
background:white;
border-radius:0 0 12px 12px;
}

.module-card{
background:#fafafa;
padding:25px;
border-radius:10px;
}

.module-card h3{
color:var(--azul);
margin-bottom:10px;
}

.module-card p{
color:var(--texto);
font-size:.8rem;
}

/* BENEFICIOS */

.benefits{
background:var(--vino);
color:white;
}

.benefits-grid{
max-width:900px;
margin:0 auto;
display:flex;
flex-direction:column;
gap:25px;
}

.benefits-grid div{
    width:100%;
    padding:25px 40px;
    border-radius:16px;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-size:1.0rem;
    line-height:1.6;
}

.benefits-grid div{
    transition:.3s ease;
}

.benefits-grid div:hover{
    transform:translateY(-5px);
    background:rgba(255,255,255,.12);
}


/* CERTIFICACION */

.certification{
text-align:center;
}

.certification p{
max-width:800px;
margin:auto;
font-size:1.0rem;
}

/* FACILITADORAS */

.facilitator-grid{
display:grid;
grid-template-columns:repeat(2,500px);
justify-content:center;
gap:40px;
}

.facilitator-card{
background:white;
padding:30px;
text-align:left;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.facilitator-card img{
max-height:380px;
margin:auto;
margin-bottom:25px;
}

.facilitator-card h3{
color:var(--vino);
font-size:1.5rem;
text-align:center;
margin-bottom:15px;
}

.facilitator-card p{
color:var(--texto);
font-size:.9rem;
}


/* CTA FINAL */

.final-cta{
background:var(--azul);
color:white;
}

.final-cta p{
color:var(--blanco);
font-size:1.0rem;
}

.final-cta h2{
max-width:900px;
margin:auto;
font-size:2.5rem;
margin-bottom:30px;
}

.price-box{
margin:40px 0;
}

.price-box span{
display:block;
letter-spacing:3px;
color:#d8c08a;
font-size:.85rem;
margin-bottom:10px;
}

.price-box h3{
font-size:4rem;
color:white;
}

/* RESPONSIVE */

@media(max-width:992px){


.hero-grid{
    grid-template-columns:1fr;
    text-align:center;
}

.hero-buttons{
    justify-content:center;
}

.cards-grid{
    grid-template-columns:1fr;
}

.card.full{
    grid-column:auto;
}

.module-content{
    grid-template-columns:1fr;
}

.benefits-grid{
    grid-template-columns:1fr;
}

.facilitator-grid{
    grid-template-columns:1fr;
}


}

@media(max-width:768px){


section{
    padding:70px 0;
}

.hero h1{
    font-size:2.8rem;
}

.section-title h2{
    font-size:2.2rem;
}

.quote h2{
    font-size:1.8rem;
}

.final-cta h2{
    font-size:2rem;
}

.price-box h3{
    font-size:3rem;
}

.btn-primary,
.btn-secondary,
.btn-white{
    width:100%;
    text-align:center;
}


}
