:root{
  --gt-bg:#070812;
  --gt-text:#e9e9f6;
  --gt-muted:rgba(233,233,246,.75);
}

body{
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(123,97,255,.25), transparent),
    radial-gradient(900px 500px at 90% 0%, rgba(255,0,128,.18), transparent),
    radial-gradient(900px 600px at 70% 80%, rgba(0,212,255,.12), transparent),
    var(--gt-bg);
  color:var(--gt-text);
}

.glass{
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(10px);
}

.hero-img{
  max-width: 760px;
  width:100%;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 60px rgba(0,0,0,.45);
}

.btn-glow{box-shadow: 0 10px 30px rgba(13,110,253,.25)}

a{color:#b7c7ff}
a:hover{color:#ffffff}

.badge-soft{background: rgba(13,110,253,.15); border:1px solid rgba(13,110,253,.35)}

.footer-note{color: var(--gt-muted)}

/* Top-right icon button */
.icon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color: var(--gt-text);
  text-decoration:none;
}
.icon-btn:hover{background: rgba(255,255,255,.10); color:#fff}

/* WhatsApp floating button */
.whatsapp-float{
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 56px;
  height: 56px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: #25D366;
  color: #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,.35);
  z-index: 9999;
  text-decoration:none;
}
.whatsapp-float:hover{filter: brightness(1.05); color:#fff}

/* Auto-scrolling marquee */
.marquee{
  width:100%;
  overflow:hidden;
  position:relative;
  border-radius: 16px;
}

.track{
  display:flex;
  gap: 12px;
  will-change: transform;
  animation: gt-scroll 28s linear infinite;
}

.marquee:hover .track{
  animation-play-state: paused;
}

@keyframes gt-scroll{
  0%{transform: translateX(0);}
  100%{transform: translateX(-50%);}
}

.gt-card{
  min-width: 280px;
  max-width: 280px;
  border-radius: 16px;
  padding: 14px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.gt-card .title{
  font-weight: 600;
  font-size: .95rem;
  margin-bottom: 6px;
}

.gt-card .meta{
  color: var(--gt-muted);
  font-size: .85rem;
  margin-bottom: 8px;
}

.gt-stars{
  letter-spacing: 1px;
  font-size: .9rem;
}

.gt-ig-thumb{
  height: 140px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(120px 120px at 20% 20%, rgba(255,0,128,.35), transparent),
    radial-gradient(120px 120px at 80% 30%, rgba(123,97,255,.35), transparent),
    radial-gradient(120px 120px at 40% 90%, rgba(0,212,255,.25), transparent),
    rgba(255,255,255,.04);
}

@media (prefers-reduced-motion: reduce){
  .track{animation: none;}
}


/* WhatsApp floating button (icon only) */
.whatsapp-float{
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(37, 211, 102, .14);
  border: 1px solid rgba(37, 211, 102, .35);
  backdrop-filter: blur(10px);
  text-decoration: none;
  z-index: 9999;
}
.whatsapp-float:hover{ transform: translateY(-1px); }
.whatsapp-float svg{ width: 26px; height: 26px; }

/* Reviews marquee */
.marquee{
  overflow: hidden;
  position: relative;
}
.marquee-track{
  display: flex;
  gap: 14px;
  width: max-content;
  animation: gt-marquee 28s linear infinite;
}
.marquee-track.reverse{ animation-direction: reverse; }
.marquee:hover .marquee-track{ animation-play-state: paused; }
@keyframes gt-marquee{
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.review-card{
  min-width: 320px;
  max-width: 320px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  padding: 14px;
}
.review-head{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-bottom: 8px;
}
.avatar{
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
}
.avatar svg{ width: 22px; height: 22px; opacity: .9; }
.stars{ font-size: 14px; letter-spacing: .5px; color: rgba(255,255,255,.85); }
.review-text{ color: rgba(233,233,246,.85); font-size: 14px; line-height: 1.35; margin:0; }

/* Instagram grid (no sliding) */
.ig-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
@media (max-width: 992px){
  .ig-grid{ grid-template-columns: repeat(2, 1fr); }
}
.ig-card{
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  padding: 14px;
  text-decoration:none;
  color: var(--gt-text);
  display:flex;
  gap: 12px;
  align-items:center;
}
.ig-card:hover{ background: rgba(255,255,255,.07); }
.ig-ico{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.ig-ico svg{ width: 22px; height: 22px; }

/* Map frame */
.map-frame{
  width: 100%;
  height: 360px;
  border: 0;
  border-radius: 18px;
}
