
/* ===== ESPACIADO ===== */

section{

margin-top:3.5rem;

}


.container{

max-width:1100px;

margin:auto;

padding:0 1.2rem;

}




/* HERO */

.hero-matrimonios{

height:55vh;

overflow:hidden;

}


.hero-img{

width:100%;

height:100%;

object-fit:cover;

}




/* INTRO */

.intro{

margin-top:3rem;

}


.intro h1{

font-size:2rem;

font-weight:500;

margin-bottom:1.5rem;

}


.content-narrow{

max-width:760px;

margin:auto;

text-align:center;

}


.content-narrow p{

line-height:1.8;

color:#555;

font-size:15px;

}




/* BLOQUES */

.tipos-wrapper{

background:#f7f7f7;

padding:4rem 0;

}


.tipos-wrapper h2{

text-align:center;

margin-bottom:2rem;

}


.tipo-card{

background:white;

padding:18px;

border-radius:10px;

text-align:center;

transition:.3s;

height:100%;

}


.tipo-card:hover{

transform:translateY(-4px);

box-shadow:0 10px 25px rgba(0,0,0,.08);

}


.tipo-card img{

width:100%;

aspect-ratio:1/1;

object-fit:cover;

border-radius:8px;

margin-bottom:10px;

}


.tipo-card h3{

font-size:1.1rem;

}


.tipo-card p{

font-size:14px;

color:#666;

}




/* GALERIA */

.gallery h2{

text-align:center;

}


.gallery-subtitle{

text-align:center;

font-size:14px;

color:#777;

margin-bottom:1.5rem;

}


.gallery-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:12px;

}


.gallery-item{

overflow:hidden;

border-radius:10px;

}


.gallery-item img{

width:100%;

aspect-ratio:1/1;

object-fit:cover;

transition:.4s;

}


.gallery-item:hover img{

transform:scale(1.05);

}


@media(min-width:768px){

.gallery-grid{

grid-template-columns:

repeat(3,1fr);

}

}




/* CTA */

.cta-section{

background:#111;

padding:4rem;

border-radius:12px;

text-align:center;

color:white;

margin-top:5rem;

}


.cta-section p{

color:#ccc;

margin-bottom:2rem;

}


.botonx{

display:inline-block;

padding:

10px 22px;

border:

1px solid white;

color:white;

text-decoration:none;

transition:.3s;

}


.botonx:hover{

background:white;

color:black;

}




/* VOLVER */

.volver-btn{

color:#555;

text-decoration:none;

border-bottom:

1px solid #ccc;

}


.volver-btn:hover{

color:black;

}




@media(max-width:768px){

.hero-matrimonios{

height:40vh;

}


.intro h1{

font-size:1.8rem;

}


section{

margin-top:2rem;

}

}
.gallery-img{
width:100%;
height:320px;
object-fit:cover;
border-radius:10px;
transition:.3s;
}

.gallery-img:hover{
transform:scale(1.02);
}