html, body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

img, video {
  max-width: 100%;
  height: auto;
}

/* NAVBAR */
.navbar-toggler {
  border: none;
}
.navbar-toggler:focus {
  box-shadow: none;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0,0,0,0.7)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}



/* HERO */
/* HERO CONTAINER */
.hero {
  position: relative;
  min-height: 90vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  color: #fff;
}

/* Background Slides */
.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1s ease;
  will-change: opacity;
}



/* Active slide */
.hero-slide.active {
  opacity: 1;
}

/* Dark overlay */
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  z-index: 2;
}

/* Content above slides */
.hero-content,
.hero .col-md-6 {
  position: relative;
  z-index: 3;
}


.hero-content{
  max-width:720px;
}

.hero h1 {
  font-size: clamp(2.4rem, 5vw, 3.8rem);
  font-weight: 700;
}

.hero p {
  font-size: 1.15rem;
  opacity: 0.9;
}


/* STATS */

.stats-section {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}

.stats-right {
  background: #ffffff;
  color: #000000;
  padding: 80px 60px;

  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 200px);
  gap: 40px;
  margin-top: 40px;
  justify-content: center;
}

.stat h3 {
  font-size: 3rem;
  font-weight: 700;
}

@media (max-width:768px) {

  .stats-grid {
    grid-template-columns: 1fr;
  }

  .stats-right{
    padding:60px 20px;
  }
}


/* CARDS */
.card {
  border-radius: 14px;
  cursor: pointer;
}

/* WHATSAPP */
.whatsapp {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #25d366;
  color: #fff;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  text-decoration: none;
  z-index: 999;
}



#partners h2 {
  font-size: 2rem;
  letter-spacing: 0.5px;
}

.key-tile{
width:180px;
height:140px;
background:#989898;
border-radius:14px;
border:5px solid #dc3545;
display:flex;
align-items:center;
justify-content:center;
margin:auto;
box-shadow:0 10px 25px rgba(0,0,0,.25);
transition:.3s;
}

.key-tile:hover{
transform:translateY(-6px);
background:#dc3545;
}


.key-icon{
max-width:none;
width:250px;
height:auto;
}


.key-icon{
width:100%;
height:100%;
object-fit:contain;
}

.key-company{
color:#fff;
margin-bottom:8px;
font-weight:600;
}

@media(max-width:768px){
.key-company{
margin-top:15px;
}
}

/* Navbar fixed height */
.navbar {
  height: 70px;
}

/* Logo wrapper */
.logo-wrap {
  position: relative;
  width: 120px;          /* IMPORTANT */
  height: 70px;
  padding: 0;
}

/* Actual logo */
.site-logo {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  height: 100px;         /* BIG logo */
  width: auto;
}

/* Mobile */
@media (max-width: 768px) {
  .navbar {
    height: 60px;
  }

  .logo-wrap {
    width: 100px;
    height: 60px;
  }

  .site-logo {
    height: 45px;
  }
}

/* Mobile offcanvas-style navbar */

.premium-menu {
  width: 100vw !important;
  background: #fff;
}

.premium-menu .nav-link {
  font-size: 26px;
  color: #111;
}

.premium-menu .nav-link:hover {
  color: #dc3545;
}
