
:root{--neon:#305D2B;--soft:rgba(48,93,43,.35);--strong:rgba(48,93,43,.75);}
.ft-galeria{background:#fff;padding:14px;border-radius:18px;position:relative;}
.ft-titulo{text-align:center;font-weight:700;font-size:20px;margin:16px auto;color:var(--neon);}

.ft-carousel img{width:100%;display:none;border-radius:14px;cursor:zoom-in;transition:.3s;}
.ft-carousel img.active{display:block;}
.ft-carousel img:hover{transform:scale(1.05);}

.ft-modal{
 display:none;
 position:fixed;
 inset:0;
 background:rgba(0,0,0,.85);
 z-index:9999;
 overflow-y:auto; /* ENABLE SCROLL */
}

.ft-modal-box{
 background:#fff;
 max-width:1100px;
 width:95%;
 margin:5vh auto;
 padding:28px;
 border-radius:20px;
 animation:neonPulse 2s infinite;
}

.ft-modal-layout{
 display:flex;
 gap:32px;
}

.ft-modal-images{
 flex:1;
 max-height:70vh;
 overflow-y:auto;
}

.ft-modal-images img{
 width:100%;
 margin-bottom:16px;
 border-radius:12px;
 cursor:zoom-in;
 transition:.3s;
}

.ft-modal-images img.zoomed{
 transform:scale(1.6);
 cursor:zoom-out;
}

.ft-modal-content{
 flex:1;
 display:flex;
 flex-direction:column;
}

.ft-modal-content h2{text-align:center;color:var(--neon);}
.ft-modal-content table{margin:24px 0;}

.ft-cta{
 margin-top:auto;
 background:var(--neon);
 color:#fff;
 padding:16px;
 border-radius:40px;
 text-align:center;
 font-weight:bold;
 text-decoration:none;
}

.ft-close{
 position:sticky;
 top:0;
 margin-left:auto;
 font-size:28px;
 cursor:pointer;
 color:var(--neon);
}

@media(max-width:768px){
 .ft-modal-layout{flex-direction:column;}
 .ft-modal-images{max-height:none;}
}
@keyframes neonPulse{
 0%{box-shadow:0 0 10px var(--soft),0 0 20px var(--soft);}
 50%{box-shadow:0 0 20px var(--strong),0 0 40px var(--neon);}
 100%{box-shadow:0 0 10px var(--soft),0 0 20px var(--soft);}
}
