/* Greek Squad Global styles */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
  --gs-primary:#0d6efd;
  --gs-accent:#20c997;
  --gs-text:#212529;
}

/* Typography */
body{
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, "Helvetica Neue", Noto Sans, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  color: var(--gs-text);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1,h2,h3,h4,h5,h6{ font-weight: 700; letter-spacing: .2px; }
.navbar-brand{letter-spacing:0.3px}
.hero-gradient{background:linear-gradient(135deg,#f8fbff, #eef7ff)}
footer a{text-decoration:none}
img{max-width:100%;height:auto}
.section-title{font-weight:700}
.btn-success{background:var(--gs-accent);border-color:var(--gs-accent)}
.btn-success:hover{filter:brightness(0.95)}
.small a{color:#0d6efd}

/* Subtle hover effects */
.hover-lift{ transition: transform .2s ease, box-shadow .2s ease; }
.hover-lift:hover{ transform: translateY(-3px); box-shadow:0 8px 20px rgba(0,0,0,.08); }
.hover-shadow{ transition: box-shadow .2s ease; }
.hover-shadow:hover{ box-shadow:0 8px 24px rgba(0,0,0,.1); }
.card{ transition: transform .2s ease, box-shadow .2s ease; }
.card:hover{ transform: translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.08); }
.btn{ transition: transform .15s ease; }
.btn:active{ transform: scale(.98); }

/* Reveal animations */
.reveal{ opacity:0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.reveal-up{ transform: translateY(16px); }
.reveal.reveal-zoom{ transform: scale(.98); }
.reveal.is-visible{ opacity:1; transform: none; }

/* Keyframes (optional use) */
@keyframes fadeInUp{ from{opacity:0; transform:translateY(16px)} to{opacity:1; transform:none} }
@keyframes zoomIn{ from{opacity:0; transform:scale(.96)} to{opacity:1; transform:none} }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .reveal, .hover-lift, .hover-shadow, .card, .btn{ transition:none !important; }
}

/* --- Enhancements & Utilities --- */

/* Reveal direction helpers */
.reveal-left{ opacity:0; transform: translateX(-16px); }
.reveal-right{ opacity:0; transform: translateX(16px); }
.reveal-scale{ opacity:0; transform: scale(.96); }

/* Delays */
.delay-1{ transition-delay: .1s; }
.delay-2{ transition-delay: .2s; }
.delay-3{ transition-delay: .3s; }
.delay-4{ transition-delay: .4s; }

/* Smooth scroll behavior */
html{ scroll-behavior: smooth; }

/* --- Modern Navbar --- */
.navbar.navbar-modern{
  backdrop-filter: saturate(120%) blur(6px);
  -webkit-backdrop-filter: saturate(120%) blur(6px);
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.navbar.navbar-modern .nav-link{
  font-weight: 500;
  color: #334155;
}
.navbar.navbar-modern .nav-link:hover{ color:#0d6efd; }
.navbar.navbar-modern .nav-link.active{ color:#0d6efd; }
.navbar.navbar-modern .navbar-brand{ letter-spacing:.3px }
.navbar-call{
  font-weight:600;
  box-shadow: 0 8px 20px rgba(13,110,253,.15);
}

/* Link underline animation */
.nav-link, .dropdown-item, a{
  position: relative;
}
.nav-link::after, .dropdown-item::after, a.link-underline::after{
  content:""; position:absolute; left:50%; bottom:-2px; width:0; height:2px; background:var(--gs-primary);
  transition: width .2s ease, left .2s ease;
}
.nav-link:hover::after, .dropdown-item:hover::after, a.link-underline:hover::after{
  left:0; width:100%;
}

/* Buttons glow on hover */
.btn-primary:hover{ box-shadow: 0 8px 20px rgba(13,110,253,.25); }
.btn-success:hover{ box-shadow: 0 8px 20px rgba(32,201,151,.25); }

/* Images subtle zoom */
.img-zoom{ transition: transform .35s ease; }
.img-zoom:hover{ transform: scale(1.03); }

/* Logo float (for brand rows) */
@keyframes floatY{ 0%{ transform:translateY(0) } 50%{ transform:translateY(-4px) } 100%{ transform:translateY(0) } }
.logo-float{ animation: floatY 3s ease-in-out infinite; }

/* Card accent border on hover */
.card.hover-accent:hover{ box-shadow:0 12px 28px rgba(0,0,0,.1); border-color: rgba(13,110,253,.35) !important; }

/* CTA banner emphasis */
.cta-emphasize{ background: linear-gradient(135deg, #eef7ff, #f8fbff); border:1px solid #e6f0ff; }

/* --- Global Site Footer --- */
.site-footer{
  position: relative;
  color:#fff;
  background: linear-gradient(rgba(13,110,253,.85), rgba(102,16,242,.85)), url('/assets/images/Footer.jpg') center/cover no-repeat;
}
.site-footer a{ color: rgba(255,255,255,.9); text-decoration: none; }
.site-footer a:hover{ color: #fff; text-decoration: underline; }
.site-footer .footer-title{ font-weight:700; letter-spacing:.3px; }
.site-footer .footer-bottom{ border-top: 1px solid rgba(255,255,255,.2); }
