
.frv-video-section{
padding:120px 0;
background:#0f172a;
overflow:hidden;
}

.frv-video-container{
max-width:1400px;
margin:auto;
padding:0 20px;
}

.frv-video-title{
text-align:center;
margin-bottom:60px;
color:white;
}

.frv-video-title h2{
font-size:40px;
margin-bottom:10px;
color:white;
}

.frv-video-title p{
color:white;
opacity:.8;
}

.frv-video-wrapper{
position:relative;
}

.frv-video-slider{
display:flex;
gap:30px;
overflow:hidden;
scroll-behavior:smooth;
}

.frv-video-card{
min-width:260px;
height:460px;
border-radius:18px;
overflow:hidden;
background:black;
box-shadow:0 20px 40px rgba(0,0,0,0.5);
transition:transform .3s;
}

.frv-video-card:hover{
transform:scale(1.05);
}

.frv-video-card iframe{
width:100%;
height:100%;
border:none;
}

.frv-prev,
.frv-next{
position:absolute;
top:50%;
transform:translateY(-50%);
background:white;
border:none;
width:45px;
height:45px;
border-radius:50%;
cursor:pointer;
font-size:22px;
z-index:10;
}

.frv-prev{
left:-10px;
}

.frv-next{
right:-10px;
}



/* ===== CELULAR ===== */

@media (max-width:768px){

.frv-video-slider{
overflow-x:auto;
scroll-snap-type:x mandatory;
justify-content:center;
padding:0 40px;
}

.frv-video-card{
min-width:85vw;
height:75vh;
scroll-snap-align:center;
}

.frv-video-card iframe{
width:100%;
height:100%;
}

.frv-prev,
.frv-next{
display:flex;
align-items:center;
justify-content:center;
top:50%;
transform:translateY(-50%);
width:40px;
height:40px;
}

.frv-prev{
left:5px;
}

.frv-next{
right:5px;
}

}

/* celulares pequeños */

@media (max-width:480px){

.frv-video-card{
min-width:90vw;
height:70vh;
}

}


/*   Diseño Gallery */

/* CONTENEDOR */
.gallery-container{
    max-width:1200px;
    margin:auto;
    padding:80px 20px;
}

.title{
    text-align:center;
    color:#d4af37;
    font-size:42px;
    margin-bottom:50px;
    letter-spacing:2px;
}

/* GRID */
.gallery-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
}

/* CARD GALERIA */
.gallery-item{
    height:260px;
    overflow:hidden;
    border-radius:16px;
    /* background:#000; */
    cursor:pointer;
    position:relative;
    transition:all .4s ease;
}

/* CAPA HOVER */

/* BORDE DORADO SUAVE */


.gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease, filter .4s ease;
}



/* PAGINACIÓN RESPONSIVE */

.pagination{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:8px;
margin-top:50px;
}

.pagination a{
display:flex;
align-items:center;
justify-content:center;
min-width:42px;
height:42px;
padding:0 14px;
font-size:16px;
background:#111;
color:#fff;
text-decoration:none;
border-radius:8px;
transition:.3s;
}

.pagination a:hover,
.pagination a.active{
background:#d4af37;
}

/* CELULAR */
@media (max-width:600px){

.pagination{
gap:6px;
margin-top:40px;
}

.pagination a{
min-width:36px;
height:36px;
font-size:14px;
padding:0 10px;
}

}
/* LIGHTBOX */


/* LIGHTBOX UNICO */
.mf-lightbox{
    position:fixed;
    inset:0;
    /* background:rgba(0,0,0,.95); */
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    transition:.35s ease;
    z-index:99999;
}

.mf-lightbox.active{
    opacity:1;
    visibility:visible;
}

.mf-lightbox img{
    max-width:90%;
    max-height:90%;
    border-radius:12px;
    /* box-shadow:0 0 40px rgba(0,0,0,.8); */
    animation:zoomIn .35s ease;
}

@keyframes zoomIn{
    from{
        transform:scale(.8);
        opacity:0;
    }
    to{
        transform:scale(1);
        opacity:1;
    }
}


/* Solo links principales del menú */
.home-header .main-menu > ul > li > a{
color:#fff !important;
}

/* Mantener color normal en el submenu */
.home-header .sub-menu li a{
color:#222 !important;
}


/* Floating Buttons */
.floating-buttons{
position:fixed;
bottom:25px;
left:25px;
display:flex;
flex-direction:column;
gap:12px;
z-index:9999;
}

.float-btn{
width:55px;
height:55px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
color:#fff;
font-size:22px;
box-shadow:0 6px 18px rgba(0,0,0,0.25);
transition:0.3s;
text-decoration:none;
}



/* FLOATING BUTTONS */

.fr-floating-buttons{
position:fixed;
bottom:25px;
left:25px;
display:flex;
flex-direction:column;
gap:12px;
z-index:9999;
}

.fr-float-btn{
width:55px;
height:55px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
background:#ff7a00;
color:#fff;
font-size:22px;
text-decoration:none;
box-shadow:0 8px 20px rgba(0,0,0,0.25);
transition:all .3s ease;
}

.fr-float-btn:hover{
transform:scale(1.1);
box-shadow:0 10px 25px rgba(0,0,0,0.35);
}

/* animación flotante */

.fr-float-btn{
animation:frFloat 3s ease-in-out infinite;
}

@keyframes frFloat{
0%{transform:translateY(0);}
50%{transform:translateY(-6px);}
100%{transform:translateY(0);}
}

/* celular */

@media (max-width:768px){

.fr-floating-buttons{
left:15px;
bottom:20px;
}

.fr-float-btn{
width:50px;
height:50px;
font-size:20px;
}

}


.rfv-video-section{
padding:120px 0;
background:#0f172a;
overflow:hidden;
}

.rfv-video-container{
max-width:1400px;
margin:auto;
padding:0 20px;
}

.rfv-video-title{
text-align:center;
margin-bottom:60px;
color:white;
}

.rfv-video-title h2{
font-size:40px;
margin-bottom:10px;
color:white;
}

.rfv-video-title p{
color:white;
opacity:.8;
}

.rfv-video-wrapper{
position:relative;
}

.rfv-video-slider{
display:flex;
gap:30px;
overflow:hidden;
scroll-behavior:smooth;
}

.rfv-video-card{
min-width:260px;
height:460px;
border-radius:18px;
overflow:hidden;
background:black;
box-shadow:0 20px 40px rgba(0,0,0,0.5);
transition:transform .3s;
}

.rfv-video-card:hover{
transform:scale(1.05);
}

.rfv-video-card iframe{
width:100%;
height:100%;
border:none;
}

.rfv-prev,
.rfv-next{
position:absolute;
top:50%;
transform:translateY(-50%);
background:white;
border:none;
width:45px;
height:45px;
border-radius:50%;
cursor:pointer;
font-size:22px;
z-index:10;
}

.rfv-prev{
left:-10px;
}

.rfv-next{
right:-10px;
}

/* CELULAR */

@media (max-width:768px){

.rfv-video-slider{
overflow-x:auto;
scroll-snap-type:x mandatory;
justify-content:center;
padding:0 40px;
}

.rfv-video-card{
min-width:85vw;
height:75vh;
scroll-snap-align:center;
}

.rfv-video-card iframe{
width:100%;
height:100%;
}

.rfv-prev,
.rfv-next{
display:flex;
align-items:center;
justify-content:center;
top:50%;
transform:translateY(-50%);
width:40px;
height:40px;
}

.rfv-prev{
left:5px;
}

.rfv-next{
right:5px;
}

}

/* celulares pequeños */

@media (max-width:480px){

.rfv-video-card{
min-width:90vw;
height:70vh;
}

}