/* General Reset */* {margin: 0;padding: 0;box-sizing: border-box;}html {scroll-behavior: smooth;}body {overflow-x: hidden;font-family: 'Inter', sans-serif;background-color: #ffffff;color: #111;line-height: 1.6;}/* Layout */.container {width: 90%;max-width: 1200px;margin: auto;}/* Navbar */.navbar {position: fixed;top: 0;width: 100%;background-color: #fff;box-shadow: 0 2px 5px rgba(0,0,0,0.05);z-index: 999;}.navbar .container {display: flex;justify-content: space-between;align-items: center;padding: 1rem 0;}.logo {font-weight: 700;font-size: 1.5rem;}.nav-links {list-style: none;display: flex;gap: 1.5rem;}.nav-links a {text-decoration: none;color: #333;font-weight: 500;}.nav-links a:hover {color: #000;}/* Hero Section */.hero {height: 100vh;display: flex;align-items: center;background-color: #f5f5f5;text-align: center;padding-top: 4rem;}.hero h1 {font-size: 2.5rem;margin-bottom: 1rem;}.hero p {font-size: 1.2rem;color: #555;margin-bottom: 2rem;}.btn {background-color: #111;color: white;padding: 0.8rem 1.5rem;text-decoration: none;font-weight: 600;border: none;box-shadow: 0 3px 6px rgba(0,0,0,0.15);cursor: pointer;transition: background 0.3s;}.btn:hover {background-color: #333;}/* Servicios */.servicios {background-color: #fff;padding: 4rem 0;text-align: center;}.servicios h2 {margin-bottom: 3rem;font-size: 2rem;}.cards {display: grid;grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));gap: 2rem;}.card {background-color: #f9f9f9;padding: 2rem;border-radius: 8px;box-shadow: 0 2px 8px rgba(0,0,0,0.05);transition: transform 0.3s;}.card:hover {transform: translateY(-5px);}.card .icon {font-size: 2.5rem;margin-bottom: 1rem;}.card h3 {margin-bottom: 0.5rem;}/* Sobre Nosotros */.nosotros {background-color: #f5f5f5;padding: 4rem 0;text-align: center;}.nosotros h2 {margin-bottom: 1.5rem;}.nosotros p {max-width: 700px;margin: auto;color: #444;}/* Contacto */.contacto {background-color: #fff;padding: 4rem 0;text-align: center;}.contacto form {max-width: 600px;margin: auto;display: flex;flex-direction: column;gap: 1rem;}.contacto input,.contacto textarea {padding: 0.8rem;border: 1px solid #ccc;border-radius: 4px;font-size: 1rem;}.contacto input:focus,.contacto textarea:focus {outline: none;border-color: #333;}/* Footer */.footer {background-color: #111;color: white;text-align: center;padding: 1.5rem 0;margin-top: 3rem;}.footer .social-icons {margin-top: 1rem;}.footer .social-icons a {margin: 0 0.5rem;color: white;font-size: 1.2rem;text-decoration: none;}.footer .social-icons a:hover {opacity: 0.7;}/* Responsive Tweaks */@media (max-width: 768px) {.hero h1 {font-size: 2rem;}.nav-links {gap: 1rem;}}.cases {display: flex;justify-content: center;flex-wrap: wrap;gap: 2rem;margin-top: 3rem;}.case {background-size: cover;background-position: center;width: 250px;height: 250px;border-radius: 12px;box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);display: flex;align-items: end;transition: transform 0.3s;padding: 1rem;color: white;position: relative;overflow: hidden;}.case::before {content: "";position: absolute;inset: 0;background: rgba(0, 0, 0, 0.4);border-radius: 12px;z-index: 0;}.case-content {position: relative;z-index: 1;text-align: center;display: flex;flex-direction: column;justify-content: center;align-items: center;height: 100%;}.case:hover {transform: translateY(-5px);}.case-content h3, .case-content p {color: #fff;font-weight: bold;text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.8);}/* Separadores para secciones */section {padding: 4rem 0;border-bottom: 1px solid #e0e0e0;}.accordion-item {margin-bottom: 1rem;border: 1px solid #ccc;overflow: hidden;transition: all 0.3s ease;}.accordion-header {width: 100%;padding: 1rem;background: #f5f5f5;border: none;text-align: left;font-weight: bold;cursor: pointer;transition: background 0.3s ease;}.accordion-header:hover {background: #e0e0e0;}.accordion-panel {max-height: 0;overflow: hidden;background: white;padding: 0 1rem;transition: max-height 0.5s ease;}.accordion-panel p {padding: 1rem 0;margin: 0;}.faq .container {max-width: 700px;margin: auto;}.accordion-item {width: 100%;}.accordion-header {background: #fff;display: flex;justify-content: space-between;align-items: center;font-size: 1rem;}.accordion-header::after {content: "▼";font-size: 0.9rem;transition: transform 0.3s ease;margin-left: 1rem;color: #666;}.accordion-header.active::after {transform: rotate(180deg);}.accordion-item {background: #fff;border: 1px solid #e0e0e0;box-shadow: 0 2px 5px rgba(0,0,0,0.03);}.faq {background: #fff;}.accordion-item {border-left: none;border-right: none;box-shadow: none;border-top: 1px solid #e0e0e0;border-bottom: 1px solid #e0e0e0;}.accordion-item:first-child {border-top: 2px solid #ccc;}.accordion-item:last-child {border-bottom: 2px solid #ccc;}.accordion-item {border: none;border-bottom: 1px solid #e0e0e0;box-shadow: none;}.accordion-item:last-child {border-bottom: none;}.accordion-item:first-child {border-top: 1px solid #e0e0e0;}.accordion-item:last-child {border-bottom: 1px solid #e0e0e0;}.faq .accordion-item:first-of-type {border-top: 1px solid #e0e0e0 ;}.faq h2 {margin-bottom: 2rem;}.footer .social-icons a img {transition: filter 0.3s ease;}body.dark-mode {background-color: #111;color: #f5f5f5;}body.dark-mode .navbar {background-color: #111;box-shadow: 0 2px 5px rgba(255,255,255,0.05);}body.dark-mode .nav-links a {color: #f5f5f5;}body.dark-mode .nav-links a:hover {color: #fff;}body.dark-mode .hero {background-color: #222;}body.dark-mode .card {background-color: #1c1c1c;color: #f5f5f5;}body.dark-mode .servicios {background-color: #111;}body.dark-mode .nosotros {background-color: #1c1c1c;}body.dark-mode .contacto {background-color: #111;}body.dark-mode .footer {background-color: #000;}body.dark-mode .accordion-header {background: #1c1c1c;color: #f5f5f5;}body.dark-mode .accordion-panel {background: #111;}body.dark-mode input,body.dark-mode textarea {background-color: #222;color: #fff;border: 1px solid #555;}/* Dark mode switch *//* Neumorphic toggle style *//* === Reviews Section === */#reviews {padding: 4rem 2rem;background-color: #fafafa;}.review-grid {display: flex;flex-wrap: wrap;justify-content: center;gap: 2rem;}.review-card {background: white;padding: 2rem;border-radius: 10px;max-width: 300px;flex: 1 1 280px;box-shadow: 0 6px 18px rgba(0,0,0,0.05);transition: transform 0.3s ease;}.review-card:hover {transform: scale(1.03);}.review-card .stars {font-size: 1.2rem;color: #f5b50a;margin-bottom: 0.5rem;}.review-author {margin-top: 1rem;font-weight: 600;color: #555;font-size: 0.95rem;}/* Navbar underline animation - grow from center */nav a {position: relative;text-decoration: none;color: inherit;padding-bottom: 4px;}nav a::after {content: '';position: absolute;width: 0;height: 2px;left: 50%;bottom: 0;background-color: currentColor;transition: width 0.3s ease, left 0.3s ease;transform: translateX(-50%);}nav a:hover::after {width: 100%;left: 50%;}.about-section {padding: 4rem 2rem;background-color: #fff;}.about-container {display: flex;flex-direction: row;align-items: center;gap: 2rem;flex-wrap: wrap;max-width: 1100px;margin: 0 auto;}.about-text {flex: 1;min-width: 300px;}.about-phrase {font-weight: bold;font-size: 1.2rem;margin-bottom: 1rem;color: #444;}.about-image {flex: 1;min-width: 300px;}.about-image img {max-width: 100%;border-radius: 12px;box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);}

/* === Responsive Navbar Hamburger === */
.hamburger {
  display: none;
  font-size: 1.5rem;
  background: none;
  border: none;
  cursor: pointer;
  color: #111;
}

@media (max-width: 768px) {
  .hamburger {
    display: block;
    z-index: 1001;
  }

  .nav-links {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    flex-direction: column;
    background-color: white;
    text-align: center;
    gap: 1rem;
    padding: 1rem 0;
    display: none;
  }

  .nav-links.open {
    display: flex;
  }
}


/* Remove margin-bottom from FAQ items to unify spacing */
.accordion-item {
  margin-bottom: 0 ;
}






#reviews h2 {
  text-align: center;
  margin-bottom: 2rem;
}
