    :root {
      --primary-color: #00aaff; /* celeste */
      --text-color: #ffffff;
      --text-dark: #333333;
      --bs-border-radius-lg: 5rem;
      --bs-border-radius-sm: 5rem;

    }

    /* Navbar */
    .navbar-custom {
      transition: background-color 0.4s, box-shadow 0.4s;
      background-color: transparent;
    }
    .navbar-scrolled {
      background-color: #ffffff;
      box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    }
    .navbar-custom .nav-link,
    .navbar-custom .navbar-brand {
      color: var(--text-color) !important;
    }
    .navbar-scrolled .nav-link,
    .navbar-scrolled .navbar-brand {
      color: var(--text-dark) !important;
    }
    .btn-navbar {
      margin-left: 1rem;
    }

    /* Navbar toggler (hamburger menu) styles */
    .navbar-custom .navbar-toggler {
      border: 1px solid var(--text-color);
    }
    .navbar-custom .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%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }
    .navbar-scrolled .navbar-toggler {
      border: 1px solid var(--text-dark);
    }
    .navbar-scrolled .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%2833, 37, 41, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }

    /* Hero */
    .hero {
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      text-align: center;
      position: relative;
    }
    .hero-overlay {
      background: rgba(0,0,0,0.4);
      width: 100%;
      height: 100%;
      position: absolute;
      top:0; left:0;
    }
    .hero-content {
      position: relative;
      z-index: 2;
    }

    /* Secciones */
    .section-padding {
      padding: 4rem 0;
    }
    .testimonial-card {
      background: #f8f9fa;
      border-radius: 0.5rem;
      padding: 1.5rem;
      margin-bottom: 1rem;
    }

    /* CTA */
    .btn-primary {
      background-color: var(--primary-color);
      border-color: var(--primary-color);
    }
    .cta-section {
      background: linear-gradient(135deg, var(--primary-color), #0088cc);
      color: white;
    }
    .cta-section .btn-outline-light {
      border: 2px solid white;
      color: white;
      transition: all 0.3s ease;
    }
    .cta-section .btn-outline-light:hover {
      background-color: white;
      color: var(--primary-color);
    }

    /* Contact Section */
    #contact-info {
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
    }
    @media(min-width:768px){
      #contact-info {
        flex-direction: row;
      }
    }
    #map {
      width: 100%;
      height: 300px;
      border-radius: 0.5rem;
    }

    /* Scroll down button */
.scroll-down {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 40px;
  border: 2px solid var(--text-color);
  border-radius: 50%;
  cursor: pointer;
  animation: bounce 2s infinite;
  text-decoration: none;
}
.scroll-down span {
  display: block;
  width: 6px;
  height: 12px;
  border-left: 2px solid var(--text-color);
  border-bottom: 2px solid var(--text-color);
  transform: rotate(-45deg);
  margin-bottom: 6px;
  animation: arrowMove 2s infinite;
}

/* Animaciones */
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
  40% { transform: translateX(-50%) translateY(-10px); }
  60% { transform: translateX(-50%) translateY(-5px); }
}

@keyframes arrowMove {
  0%, 20%, 50%, 80%, 100% { transform: rotate(-45deg) translateY(0); }
  40% { transform: rotate(-45deg) translateY(5px); }
  60% { transform: rotate(-45deg) translateY(3px); }
}

/* Ajustes responsive si hace falta */
@media (max-width: 576px){
  .scroll-down { width: 30px; height: 30px; }
  .scroll-down span { width: 4px; height: 10px; }
}