body {
font-family: 'Montserrat', sans-serif;
background:#0b0b0b;
color:#fff;
}

.navbar {
border-bottom:1px solid rgba(212,175,55,.3);
}

.btn-gsyn {
background:#D4AF37;
color:#000;
font-weight:600;
padding:10px 20px;
border-radius:6px;
transition:.3s;
}

.btn-gsyn:hover {
background:#c29b2f;
color:#000;
}

html {
scroll-behavior:smooth;
}

/* TOP BAR */


.gsyn-topbar span {
margin-right:18px;
}

.top-social a {
color:#D4AF37;
margin-left:12px;
text-decoration:none;
}

/* NAVBAR */

.gsyn-navbar {
background:rgba(10,10,10,.95);
backdrop-filter:blur(8px);
padding:36px 18px 0;
transition:all .3s ease;
box-shadow:0 4px 20px rgba(0,0,0,.4);
}

.logo {
height:60px;
transition:.3s;
}

.nav-link {
color:#fff !important;
font-weight:500;
margin:0 10px;
}

.nav-link:hover {
color:#D4AF37 !important;
}

/* CTA */

.gsyn-cta {
background:linear-gradient(135deg,#D4AF37,#b8962e);
color:#000;
font-weight:600;
border-radius:30px;
padding:10px 22px;
}

.gsyn-cta:hover {
transform:translateY(-2px);
box-shadow:0 5px 15px rgba(212,175,55,.4);
}

/* NAVBAR SCROLL EFFECT */

.nav-scrolled {
padding:10px 0;
background:#000;
}

.nav-scrolled .logo {
height:48px;
}

.gsyn-topbar{
background:#000;
color:#fff;
font-size:13px;
padding:8px 0;
position:absolute;
z-index:100000; /* suficiente */
top: 0;
width: 100%;
}

.gsyn-topbar-inner{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
}

.top-left{
display:flex;
align-items:center;
gap:20px;
}

.top-left span{
display:flex;
align-items:center;
gap:6px;
white-space:nowrap;
}

.top-right{
display:flex;
align-items:center;
gap:12px;
}

.gsyn-topbar i{
color:#fff; /* iconos blancos */
font-size:14px;
}

.top-right a{
color:#fff;
transition:.3s ease;
}

.top-right a:hover{
opacity:.7;
}
.gsyn-menu-toggle{
background:none;
border:none;
width:32px;
height:24px;
display:flex;
flex-direction:column;
justify-content:space-between;
cursor:pointer;
z-index:1001;
}

.gsyn-menu-toggle span{
display:block;
height:3px;
width:100%;
background:#fff; /* blanco */
border-radius:3px;
transition:.35s ease;
}


.gsyn-menu-toggle.active span:nth-child(1){
transform:rotate(45deg) translate(5px,5px);
}

.gsyn-menu-toggle.active span:nth-child(2){
opacity:0;
}

.gsyn-menu-toggle.active span:nth-child(3){
transform:rotate(-45deg) translate(6px,-6px);
}




.navbar-menu{
position:fixed;
top:0;
right:-100%;
width:280px;
height:100vh;
background:#000;
padding:80px 30px;
transition:.4s ease;
}

.navbar-menu.open{
right:0;
}

/* HERO */
/* HERO SLIDER */
.gsyn-hero-slider {
  position: relative;
}

/* Slide ocupa viewport */
.carousel-item {
  display: flex;
  align-items: center; /* centra vertical */
}

/* Container ocupa altura */
.carousel-item .container {
  height: 100%;
  display: flex;
  align-items: center; /* centra vertical */
}

/* Contenido */
.hero-content {
  max-width: 650px;
  color: #fff;
  margin-top: 330px;
  z-index: 1011;

}

/* Overlay lateral elegante */
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient( 90deg, rgba(0,0,0,0.9) 0%, rgba(0, 0, 0, 0.07) 50%, rgba(0,0,0,0.3) 100% );

}

/* Texto */
.hero-content h1 {
  font-size: 64px;
  font-weight: 700;
}

.hero-content p {
  font-size: 20px;
  margin-bottom: 30px;
}

/* Botón */
.gsyn-btn-primary {
  background: #d4af37;
  color: #000;
  padding: 14px 28px;
  border-radius: 50px;
}

/* Backgrounds */
.hero-slide {
  background-size: cover;
  background-position: center;
  height: 100vh;
}

.hero-slide-1 {
  background-image: url('./assets/img1.png');
}

.hero-slide-2 {
  background-image: url('./assets/img23.jpg');
  background-position: center;
}

.hero-slide-3 {
  background-image: url('./assets/img4.png');
}


.gsyn-clients{
  padding: 40px 0;
}

.gsyn-section-title{
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 40px;
  position: relative;
}

.gsyn-section-title::after{
  content:"";
  width: 80px;
  height: 3px;
  background: #d4af37;
  display:block;
  margin: 15px auto 0;
}

.client-logo{
  max-height: 85px;
  object-fit: contain;
  transition: all .3s ease;
}

.client-logo:hover{
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}



.gsyn-about-dark{
  background:#0b0b0b;
  color:#fff;
  padding:100px 0;
}
.nodos img{
  width: 100px;;
}
.gsyn-label{
  display:inline-block;
  color:#d4af37;
  font-weight:600;
  letter-spacing:.1em;
  margin-bottom:15px;
}

.gsyn-about-dark h2{
  font-size:42px;
  font-weight:700;
  margin-bottom:20px;
}

.gsyn-about-dark .lead{
  color:#d4af37;
  margin-bottom:20px;
}

.gsyn-about-dark p{
  color:#bbb;
}

.gsyn-about-dark blockquote{
  margin-top:20px;
  border-left:3px solid #d4af37;
  padding-left:15px;
  color:#eee;
  font-style:italic;
}

/* Imagen */
.gsyn-about-dark img{
  border-radius:12px;
  box-shadow:0 20px 40px rgba(0,0,0,.6);
}



.gsyn-services {
background:#000;
color:#fff;
}

.service-card {
position:relative;
height:320px;
border-radius:18px;
overflow:hidden;
background-size:cover;
background-position:center;
cursor:pointer;
transition:.4s ease;
}

.service-card:hover {
transform:translateY(-8px);
box-shadow:0 25px 60px rgba(0,0,0,.7);
}

.overlay {
position:absolute;
inset:0;
background:linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.3));
}

.service-content {
position:absolute;
bottom:20px;
left:20px;
z-index:2;
}

.service-content h3 {
font-size:26px;
font-weight:600;
}

.service-hover {
position:absolute;
inset:0;
background:rgba(0,0,0,.92);
opacity:0;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
padding:30px;
transition:.4s ease;
}

.service-card:hover .service-hover {
opacity:1;
}

.service-btn {
background:#d4af37;
color:#000;
padding:12px 26px;
border-radius:40px;
font-weight:600;
text-decoration:none;
margin-top:10px;
}

.service-btn:hover {
background:#b9972f;
}

.gsyn-academia{
background:#0b0b0b;
color:#fff;
position:relative;

}

.academia-badge{
color:#d4af37;
font-weight:600;
letter-spacing:2px;
display:block;
margin-bottom:10px;
}
.bi-chevron-up::before{
  color: antiquewhite;
  font-size: 20px;
}

.gsyn-academia h2{
font-size:42px;
font-weight:700;
margin-bottom:20px;
}

.academia-list{
list-style:none;
padding:0;
margin:20px 0;
}

.academia-list li{
margin-bottom:8px;
opacity:.9;
}

.academia-cta{
background:#d4af37;
color:#000;
padding:14px 28px;
border-radius:40px;
font-weight:600;
}

/* GALERÍA */
.academia-gallery{
position:relative;
height:500px;
}

.img-main{
position:absolute;
width:70%;
height:100%;
object-fit:cover;
border-radius:12px;
box-shadow:0 20px 60px rgba(0,0,0,.5);
}

.img-small{
position:absolute;
width:40%;
height:45%;
object-fit:cover;
border-radius:12px;
box-shadow:0 20px 40px rgba(0,0,0,.4);
}

.img-small.top{
right:0;
top:0;
}

.img-small.bottom{
right:0;
bottom:0;
}

.gsyn-estudio{
position:relative;
padding:120px 0;
background:url('../assets/estudio-bg.jpg') center / cover no-repeat;
color:#fff;
overflow:hidden;
}

/* Overlay elegante */
.gsyn-estudio-overlay{
position:absolute;
inset:0;
background:linear-gradient(
90deg,
rgba(0,0,0,.75) 0%,
rgba(0,0,0,.55) 40%,
rgba(0,0,0,.2) 70%,
rgba(0,0,0,.05) 100%
);
}

/* Contenido */
.gsyn-estudio .container{
position:relative;
z-index:2;
max-width:900px;
}

/* Badge */
.gsyn-badge{
display:inline-block;
border:1px solid #d4af37;
color:#d4af37;
padding:8px 18px;
margin-bottom:20px;
letter-spacing:2px;
font-size:14px;
}

/* Texto */
.gsyn-estudio h2{
font-size:40px;
font-weight:700;
line-height:1.3;
margin-bottom:30px;
}

/* Botón */
.gsyn-estudio-btn{
background:#d4af37;
color:#000;
padding:14px 32px;
border-radius:40px;
font-weight:600;
}

.gsyn-whatsapp{
position:fixed;
left:20px;
bottom:20px;
width:58px;
height:58px;
background:#25D366;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 10px 25px rgba(0,0,0,.35);
z-index:9999;
transition:.3s ease;
}

.gsyn-whatsapp:hover{
transform:translateY(-4px) scale(1.05);
box-shadow:0 15px 35px rgba(0,0,0,.45);
}

.gsyn-whatsapp::before{
content:"";
position:absolute;
width:100%;
height:100%;
border-radius:50%;
background:#25D366;
opacity:.4;
animation:whatsappPulse 2s infinite;
}

@keyframes whatsappPulse{
0%{transform:scale(1);opacity:.4}
70%{transform:scale(1.6);opacity:0}
100%{opacity:0}
}
/* Responsive */
@media(max-width:768px){

.gsyn-estudio{
padding:80px 20px;
}

.gsyn-estudio h2{
font-size:26px;
}

}

.gsyn-why{
background:#0b0b0b;
padding:100px 0;
color:#fff;
}

.gsyn-why-image img{
width:100%;
border-radius:12px;
object-fit:cover;
}

/* Badge */
.gsyn-section-badge{
color:#d4af37;
letter-spacing:2px;
font-size:14px;
display:inline-block;
margin-bottom:10px;
}

/* Title */
.gsyn-section-title{
font-size:40px;
font-weight:700;
margin-bottom:40px;
}

/* Timeline */
.gsyn-timeline{
position:relative;
padding-left:40px;
}

.gsyn-timeline::before{
content:"";
position:absolute;
left:18px;
top:0;
bottom:0;
width:2px;
background:#d4af37;
opacity:.4;
}

.gsyn-item{
display:flex;
gap:20px;
margin-bottom:30px;
align-items:flex-start;
}

.gsyn-item .icon{
width:36px;
height:36px;
background:#d4af37;
color:#000;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
}

.gsyn-item h4{
margin:0;
font-size:18px;
font-weight:600;
}

.gsyn-item p{
opacity:.8;
margin:5px 0 0;
}

.gsyn-cta-avis{
  background:#0f2f5c; /* azul corporativo elegante */
  color:#fff;
  padding:60px 0;
  border-bottom:4px solid #d4af37;
}

.cta-text{
  width: 100%;
}

.gsyn-cta h2{
  font-weight:700;
  margin-bottom:10px;
}
.gsyn-footer .container .row .col-lg-3{
  text-align: center;
}
.gsyn-cta p{
  opacity:.9;
  max-width:700px;
}

.gsyn-cta-btn{
  background:#fff;
  color:#0f2f5c;
  border-radius:50px;
  padding:14px 30px;
  font-weight:600;
  transition:.3s;
}

.gsyn-cta-btn:hover{
  background:#d4af37;
  color:#000;
}
.gsyn-footer{
background:#000;
color:#ccc;
padding:80px 0 40px;
border-top:3px solid #d4af37;
}

.footer-logo{
max-width:180px;
}

.gsyn-footer h5{
color:#fff;
margin-bottom:20px;
}

.gsyn-footer p{
margin-bottom:8px;
}

.gsyn-footer i{
color:#d4af37;
margin-right:8px;
}

.footer-menu{
list-style:none;
padding:0;
}

.footer-menu li{
margin-bottom:10px;
}

.footer-menu a{
color:#ccc;
text-decoration:none;
transition:.3s;
}

.footer-menu a:hover{
color:#d4af37;
}

.footer-bottom{
margin-top:30px;
}

.footer-social a{
color:#fff;
margin-left:15px;
font-size:18px;
transition:.3s;
}

.footer-social a:hover{
color:#d4af37;
}

/* BACK TO TOP */
#backToTop{
position:fixed;
bottom:30px;
right:30px;
background:#d4af37;
color:#000;
border:none;
width:45px;
height:45px;
border-radius:8px;
display:none;
cursor:pointer;
}

.map-container{
width:100%;
height:280px;
border-radius:12px;
overflow:hidden;
}

.map-container iframe{
width:100%;
height:100%;
border:0;
}

.gsyn-videos{
  background:#0b0b0b;
  color:#fff;
}

.gsyn-title{
  font-size:40px;
  font-weight:700;
}

.gsyn-subtitle{
  opacity:.7;
}

.video-card{
  background:#141414;
  border-radius:16px;
  overflow:hidden;
  transition:.4s ease;
  border:1px solid rgba(255,255,255,0.05);
}

.video-card:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 40px rgba(0,0,0,.4);
}

.video-wrapper{
  position:relative;
  aspect-ratio:9/16; /* Vertical */
  background:#000;
}

.video-wrapper video{
  width:100%;
  height:100%;
  object-fit:cover;
}

.video-info{
  padding:20px;
}

.video-info h4{
  font-weight:600;
  margin-bottom:8px;
}

.video-info p{
  opacity:.7;
  font-size:14px;
}

/* RESPONSIVE */
@media(max-width:992px){

.academia-gallery{
height:auto;
}

.img-main,
.img-small{
position:relative;
width:100%;
height:300px;
margin-bottom:20px;
}

}

@media(min-width:885px){
.gsyn-menu-toggle{
display:none;
}

.hero-content {
  max-width: 100%;
}

.hero-content h1 {
  font-size: 44px;
}

.hero-content p {
  font-size: 18px;
}


}


@media(max-width:768px){
  .gsyn-topbar{
    display: none;
  }
  

.carousel-item {
  height: auto;
  padding: 20px 0px;
}

.carousel-item .container {
  align-items: flex-end;
}

.hero-content {
  text-align: left;
  padding: 0 10px;
}

.hero-content h1 {
  font-size: 32px;
}

.hero-content p {
  font-size: 16px;
}

.gsyn-btn-primary {
  padding: 12px 20px;
  font-size: 14px;
}

/* overlay casi completo */
.hero-overlay {
  background: rgba(0,0,0,0.15);
}

 .hero-slide{
    align-items: flex-end;
  }

  .hero-content{
    margin-bottom: 40px;
  }
   .hero-slide::after{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(
      to top,
      rgba(0,0,0,.75),
      rgba(0,0,0,0)
    );
  }

  .hero-content{
    position:relative;
    z-index:2;
  }
  .gsyn-navbar {
   padding: 6px 18px 0;
}
.gsyn-about-dark{
  text-align:center;
}

.gsyn-about-dark h2{
  font-size:30px;
}

.service-card {
height:260px;
}

.service-content h3 {
font-size:20px;
}

.gsyn-estudio{
padding:80px 20px;
}

.gsyn-estudio h2{
font-size:26px;
}
.gsyn-section-title{
font-size:28px;
}

.gsyn-timeline{
padding-left:30px;
}
.gsyn-about-dark{
  padding: 40px 0px;
}
 .gsyn-title{
    font-size:28px;
  }


}