@charset "UTF-8";
/* line 3, static/scss/_navbar.scss */
.navbar {
  background-color: white;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.05);
  padding: 0; }
  /* line 8, static/scss/_navbar.scss */
  .navbar-nav {
    margin-right: 0 !important; }
  /* line 12, static/scss/_navbar.scss */
  .navbar-brand {
    padding: 0; }
    /* line 15, static/scss/_navbar.scss */
    .navbar-brand-container {
      display: flex;
      align-items: center;
      padding: 0; }
  /* line 22, static/scss/_navbar.scss */
  .navbar > .container {
    min-height: 64px;
    display: flex;
    align-items: center;
    height: 80px; }
  /* line 29, static/scss/_navbar.scss */
  .navbar-collapse {
    align-items: center; }
  /* line 33, static/scss/_navbar.scss */
  .navbar .nav-link {
    color: #023668;
    font-family: 'Lato Regular';
    font-size: 20px;
    padding: 8px 12px;
    position: relative; }
    /* line 40, static/scss/_navbar.scss */
    .navbar .nav-link:hover::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 12px;
      right: 12px;
      height: 2px;
      background-color: #023668; }
  /* line 51, static/scss/_navbar.scss */
  .navbar .btn {
    font-size: 12px;
    padding: 5px 15px;
    font-weight: 500; }
  /* line 57, static/scss/_navbar.scss */
  .navbar .btn-outline-primary {
    background-color: #DDEFFF;
    border-color: #DDEFFF;
    border-radius: 50px;
    padding: 8px 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 500;
    transition: all 0.3s ease; }
    /* line 70, static/scss/_navbar.scss */
    .navbar .btn-outline-primary:hover {
      background-color: #A5CFFF;
      border-color: #A5CFFF;
      transform: translateY(-1px);
      box-shadow: 0 2px 5px rgba(2, 54, 104, 0.1); }
  /* line 79, static/scss/_navbar.scss */
  .navbar .btn-primary {
    background-color: #023668;
    border-color: #023668;
    border-radius: 90px; }
    /* line 84, static/scss/_navbar.scss */
    .navbar .btn-primary:hover {
      background-color: #023668; }
  /* line 89, static/scss/_navbar.scss */
  .navbar .dropdown-toggle {
    font-size: 14px; }
    /* line 92, static/scss/_navbar.scss */
    .navbar .dropdown-toggle::after {
      vertical-align: middle; }
  /* line 105, static/scss/_navbar.scss */
  .navbar .dropdown-menu {
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    border: none;
    padding: 8px 0;
    margin-top: 8px;
    font-size: 12px; }
  /* line 114, static/scss/_navbar.scss */
  .navbar .dropdown-item {
    padding: 8px 16px;
    font-size: 12px; }
    /* line 118, static/scss/_navbar.scss */
    .navbar .dropdown-item:hover {
      background-color: rgba(2, 54, 104, 0.05); }

/* line 124, static/scss/_navbar.scss */
.fas.fa-user-circle {
  display: inline-block !important;
  font-size: 32px; }

@media (max-width: 991.98px) {
  /* line 130, static/scss/_navbar.scss */
  .navbar-brand img {
    height: 80px; }
  /* line 134, static/scss/_navbar.scss */
  .navbar-toggler {
    margin-right: 10px; } }

@media (max-width: 991.98px) {
  /* line 140, static/scss/_navbar.scss */
  .navbar {
    padding: 8px 0; }
    /* line 143, static/scss/_navbar.scss */
    .navbar-brand img {
      height: 40px;
      /* Smaller logo on mobile */ }
    /* line 147, static/scss/_navbar.scss */
    .navbar-toggler {
      margin-right: 10px;
      border: none;
      padding: 8px; }
      /* line 152, static/scss/_navbar.scss */
      .navbar-toggler:focus {
        box-shadow: none; }
    /* line 157, static/scss/_navbar.scss */
    .navbar > .container {
      padding: 0 15px;
      height: auto;
      min-height: 50px; }
    /* line 163, static/scss/_navbar.scss */
    .navbar-collapse {
      background-color: white;
      padding: 10px 15px;
      margin-top: 5px;
      border-radius: 8px;
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); }
    /* line 171, static/scss/_navbar.scss */
    .navbar .nav-link {
      padding: 12px 8px;
      border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
      /* line 175, static/scss/_navbar.scss */
      .navbar .nav-link:hover::after {
        display: none; }
      /* line 179, static/scss/_navbar.scss */
      .navbar .nav-link:hover {
        background-color: rgba(0, 0, 0, 0.03); }
    /* line 184, static/scss/_navbar.scss */
    .navbar .dropdown-menu {
      border: none;
      box-shadow: none;
      padding-left: 15px;
      margin-top: 0;
      padding-top: 0;
      padding-bottom: 0; }
    /* line 193, static/scss/_navbar.scss */
    .navbar .dropdown-item {
      padding: 10px 8px; }
    /* line 197, static/scss/_navbar.scss */
    .navbar .btn-outline-primary,
    .navbar .btn-primary {
      margin: 8px 0;
      width: 100%;
      text-align: center;
      justify-content: center; } }

/* Small mobile devices */
@media (max-width: 575.98px) {
  /* line 210, static/scss/_navbar.scss */
  .navbar-brand img {
    height: 35px; }
  /* line 214, static/scss/_navbar.scss */
  .navbar .nav-link {
    font-size: 14px; }
  /* line 218, static/scss/_navbar.scss */
  .navbar .btn {
    font-size: 12px; } }

/* line 225, static/scss/_navbar.scss */
.language-selector .dropdown-toggle {
  background: none !important;
  border: none !important;
  color: #333;
  text-decoration: none; }
  /* line 231, static/scss/_navbar.scss */
  .language-selector .dropdown-toggle:hover {
    color: #01285a; }
  /* line 235, static/scss/_navbar.scss */
  .language-selector .dropdown-toggle:focus {
    box-shadow: none; }
  /* line 239, static/scss/_navbar.scss */
  .language-selector .dropdown-toggle::after {
    display: none; }

/* line 244, static/scss/_navbar.scss */
.language-selector .flag-circle {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid #e9ecef;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.3s ease; }
  /* line 255, static/scss/_navbar.scss */
  .language-selector .flag-circle:hover {
    border-color: #01285a; }
  /* line 259, static/scss/_navbar.scss */
  .language-selector .flag-circle .flag-img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

/* line 266, static/scss/_navbar.scss */
.language-selector .language-code {
  font-weight: 500;
  font-size: 14px;
  color: #333; }

/* line 272, static/scss/_navbar.scss */
.language-selector .language-arrow {
  font-size: 12px;
  color: #666;
  transition: transform 0.3s ease; }

/* line 279, static/scss/_navbar.scss */
.language-selector .dropdown[aria-expanded="true"] .language-arrow {
  transform: rotate(180deg); }

/* line 283, static/scss/_navbar.scss */
.language-selector .dropdown-menu {
  border: 1px solid #e9ecef;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  min-width: 120px; }
  /* line 289, static/scss/_navbar.scss */
  .language-selector .dropdown-menu .dropdown-item {
    padding: 8px 12px;
    font-size: 14px;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    color: #333; }
    /* line 298, static/scss/_navbar.scss */
    .language-selector .dropdown-menu .dropdown-item:hover {
      background-color: #f8f9fa;
      color: #01285a; }
    /* line 303, static/scss/_navbar.scss */
    .language-selector .dropdown-menu .dropdown-item .flag-circle {
      width: 20px;
      height: 20px;
      border-width: 1px; }

@media (max-width: 768px) {
  /* line 315, static/scss/_navbar.scss */
  .language-selector .flag-circle {
    width: 24px;
    height: 24px; }
  /* line 320, static/scss/_navbar.scss */
  .language-selector .language-code {
    font-size: 12px; }
  /* line 324, static/scss/_navbar.scss */
  .language-selector .language-arrow {
    font-size: 10px; } }

/* line 2, static/scss/_custom.scss */
[class*=sidebar-dark-] {
  background-color: #01285a !important; }

/* Mantener los otros estilos para mayor seguridad */
/* line 7, static/scss/_custom.scss */
.sidebar-dark-primary,
.main-sidebar .sidebar-dark-primary,
aside.main-sidebar.sidebar-dark-primary {
  background-color: #01285a !important; }

/* Asegurarse de que los elementos del navbar tengan buen contraste */
/* line 14, static/scss/_custom.scss */
.navbar-white,
.navbar-light {
  background-color: #ffffff !important; }

/* Mejorar contraste del texto en el navbar */
/* line 20, static/scss/_custom.scss */
.navbar-light .navbar-nav .nav-link,
.navbar-white .navbar-nav .nav-link {
  color: #01285a !important;
  font-family: 'Lato Regular' !important; }

/* Elementos activos del sidebar */
/* line 27, static/scss/_custom.scss */
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active {
  background-color: rgba(255, 255, 255, 0.2) !important; }

/* Asegurar que todos los textos en el sidebar sean visibles */
/* line 32, static/scss/_custom.scss */
.nav-sidebar .nav-link p,
.sidebar .nav-link p,
.sidebar-dark-primary .nav-link,
.sidebar-dark-primary .nav-link p {
  color: white !important; }

/* ===== ESTILOS PARA LA PÁGINA QUIÉNES SOMOS ===== */
/* Banner de cabecera */
/* line 4, static/scss/_quienes-somos.scss */
.hero-banner {
  height: 587px;
  overflow: hidden;
  position: relative; }

/* line 10, static/scss/_quienes-somos.scss */
.hero-overlay-about-us {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(2, 54, 104, 0.8), rgba(2, 54, 104, 0.8));
  z-index: 1; }

/* line 20, static/scss/_quienes-somos.scss */
.banner-img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

/* line 26, static/scss/_quienes-somos.scss */
.banner-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 2; }

/* line 35, static/scss/_quienes-somos.scss */
.banner-content h1 {
  font-family: "DM Sans", sans-serif;
  font-size: 64px;
  color: #ffffff; }

/* About intro section */
/* line 42, static/scss/_quienes-somos.scss */
.about-intro {
  max-width: 1140px; }

/* line 46, static/scss/_quienes-somos.scss */
.about-text {
  overflow: auto;
  margin-bottom: 20px;
  text-align: center; }

/* line 52, static/scss/_quienes-somos.scss */
.about-intro .about-text p {
  color: #ffffff;
  line-height: 1.8;
  font-family: "Lato Regular", sans-serif;
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 0;
  margin-top: 10px; }

/* Sección de Misión y Visión */
/* line 63, static/scss/_quienes-somos.scss */
.mission-vision {
  min-height: 260px;
  align-content: center;
  padding: 80px 0; }

/* line 69, static/scss/_quienes-somos.scss */
.vision-content,
.mission-content {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 705px;
  justify-content: center; }

/* line 78, static/scss/_quienes-somos.scss */
.icon-container {
  flex-shrink: 0;
  margin-right: 15px;
  display: flex;
  justify-content: center;
  align-items: center; }

/* line 86, static/scss/_quienes-somos.scss */
.icon {
  width: 105px;
  height: 105px;
  object-fit: contain; }

/* line 92, static/scss/_quienes-somos.scss */
.content {
  flex-grow: 1; }

/* line 96, static/scss/_quienes-somos.scss */
.section-title-mision {
  color: #023668;
  font-size: 20px;
  font-family: "Lato Regular", sans-serif;
  font-weight: 700; }

/* line 103, static/scss/_quienes-somos.scss */
.content p {
  color: #4a5568;
  line-height: 1.5;
  margin-bottom: 0;
  font-family: "Lato Regular", sans-serif; }

/* Sección de Política de Calidad */
/* line 111, static/scss/_quienes-somos.scss */
.quality-policy {
  background-color: #023668 !important; }

/* line 115, static/scss/_quienes-somos.scss */
.section-title-politica {
  position: relative;
  justify-content: center;
  color: #ffffff;
  font-family: "DM Sans", sans-serif;
  font-weight: 700; }

/* line 123, static/scss/_quienes-somos.scss */
.policy-content {
  line-height: 1.7;
  position: relative;
  font-family: "Lato Regular", sans-serif;
  font-weight: 400;
  font-size: 20px;
  color: #ffffff;
  text-align: center;
  max-width: 1140px;
  margin: 0 auto; }

/* Sección de Valores */
/* line 136, static/scss/_quienes-somos.scss */
.values-section {
  background-color: transparent;
  padding: 80px 0; }

/* line 149, static/scss/_quienes-somos.scss */
.value-card {
  background-color: #ffffff;
  border-radius: 20px;
  padding: 25px;
  height: 318px;
  transition: all 0.3s ease;
  text-align: center; }

/* line 158, static/scss/_quienes-somos.scss */
.value-card:hover {
  background-color: #ffffff;
  box-shadow: 0 5px 15px rgba(2, 54, 104, 0.1); }

/* line 163, static/scss/_quienes-somos.scss */
.value-card .icon-container {
  margin: 0 auto 15px auto; }

/* line 167, static/scss/_quienes-somos.scss */
.value-icon {
  width: 50px;
  height: 50px;
  margin-bottom: 15px;
  color: #006FDA;
  font-size: 50px; }

/* line 175, static/scss/_quienes-somos.scss */
.value-title {
  color: #023668;
  font-weight: 700;
  margin-bottom: 15px;
  font-family: 'DM Sans', sans-serif; }

/* line 182, static/scss/_quienes-somos.scss */
.value-text {
  color: #4a5568;
  line-height: 1.6;
  font-family: "Lato Regular", sans-serif; }

/* ===== RESPONSIVE DESIGN ===== */
/* Media queries for responsive behavior */
@media (max-width: 991.98px) {
  /* line 192, static/scss/_quienes-somos.scss */
  .hero-banner {
    height: 450px; }
  /* line 196, static/scss/_quienes-somos.scss */
  .about-text {
    max-height: none; }
  /* line 200, static/scss/_quienes-somos.scss */
  .about-intro .about-text p {
    font-size: 18px;
    line-height: 1.4; }
  /* line 205, static/scss/_quienes-somos.scss */
  .banner-content h1 {
    font-size: 2rem; }
  /* line 209, static/scss/_quienes-somos.scss */
  .vision-content, .mission-content {
    max-width: 100%; }
  /* line 213, static/scss/_quienes-somos.scss */
  .policy-content {
    font-size: 18px;
    padding: 0 20px; } }

@media (max-width: 767.98px) {
  /* line 220, static/scss/_quienes-somos.scss */
  .hero-banner {
    height: 350px; }
  /* line 224, static/scss/_quienes-somos.scss */
  .about-intro .about-text p {
    font-size: 16px;
    line-height: 1.3; }
  /* line 229, static/scss/_quienes-somos.scss */
  .banner-content h1 {
    font-size: 1.75rem; }
  /* line 233, static/scss/_quienes-somos.scss */
  .vision-content, .mission-content {
    flex-direction: column;
    text-align: center;
    margin-bottom: 20px;
    max-width: 100%;
    width: 100%; }
  /* line 241, static/scss/_quienes-somos.scss */
  .icon-container {
    margin-right: 0;
    margin-bottom: 10px; }
  /* line 246, static/scss/_quienes-somos.scss */
  .icon {
    width: 50px;
    height: 50px; }
  /* line 251, static/scss/_quienes-somos.scss */
  .section-title-mision {
    font-size: 1.3rem; }
  /* line 255, static/scss/_quienes-somos.scss */
  .content p {
    font-size: 0.9rem; }
  /* line 259, static/scss/_quienes-somos.scss */
  .policy-content {
    font-size: 16px;
    padding: 0 15px; }
  /* line 264, static/scss/_quienes-somos.scss */
  .value-card {
    height: auto;
    min-height: 280px;
    margin-bottom: 20px; } }

@media (max-width: 575.98px) {
  /* line 272, static/scss/_quienes-somos.scss */
  .hero-banner {
    height: 280px; }
  /* line 276, static/scss/_quienes-somos.scss */
  .about-intro .about-text p {
    font-size: 14px;
    line-height: 1.3; }
  /* line 281, static/scss/_quienes-somos.scss */
  .banner-content h1 {
    font-size: 1.5rem; }
  /* line 285, static/scss/_quienes-somos.scss */
  .vision-content, .mission-content {
    flex-direction: column;
    text-align: center;
    padding: 15px;
    width: 100%; }
  /* line 292, static/scss/_quienes-somos.scss */
  .policy-content {
    font-size: 14px;
    padding: 0 10px; }
  /* line 297, static/scss/_quienes-somos.scss */
  .value-card {
    padding: 20px 15px;
    height: auto;
    min-height: 260px;
    width: 100%; }
  /* line 304, static/scss/_quienes-somos.scss */
  .value-icon {
    font-size: 40px;
    width: 40px;
    height: 40px; } }

/* Tablets grandes (992px - 1199px) */
@media (max-width: 1199.98px) {
  /* line 313, static/scss/_quienes-somos.scss */
  .vision-content, .mission-content {
    max-width: 600px; } }

/* Móviles muy pequeños (≤375px) */
@media (max-width: 375px) {
  /* line 320, static/scss/_quienes-somos.scss */
  .hero-banner {
    height: 250px; }
  /* line 324, static/scss/_quienes-somos.scss */
  .banner-content h1 {
    font-size: 1.375rem; }
  /* line 328, static/scss/_quienes-somos.scss */
  .about-intro .about-text p {
    font-size: 13px; }
  /* line 332, static/scss/_quienes-somos.scss */
  .policy-content {
    font-size: 13px; } }

/* Estilos para la página de Contacto */
/* Banner de cabecera */
/* line 4, static/scss/_contacto.scss */
.hero-banner-contact {
  height: 340px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #023668; }

/* line 14, static/scss/_contacto.scss */
.hero-banner-contact .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(2, 54, 104, 0.7), rgba(2, 54, 104, 0.7));
  z-index: 1; }

/* line 22, static/scss/_contacto.scss */
.banner-content-contact {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: left;
  width: 80%;
  max-width: 1140px;
  margin: 0 auto; }

/* line 32, static/scss/_contacto.scss */
.banner-content-contact h1 {
  font-family: "DM Sans", sans-serif;
  font-size: 48px;
  font-weight: 700;
  margin-bottom: 0; }

/* Formulario de contacto */
/* line 40, static/scss/_contacto.scss */
.contact-form-section {
  background: #fff;
  padding: 48px 0 32px 0;
  display: flex;
  justify-content: center; }

/* line 47, static/scss/_contacto.scss */
.contact-form-container {
  width: 100%;
  max-width: 1285px;
  background: 0 #fff;
  border-radius: 16px;
  box-shadow: 0 4px 24px rgba(2, 54, 104, 0.07);
  padding: 40px 32px; }

/* line 56, static/scss/_contacto.scss */
.contact-form {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 16px; }

/* line 62, static/scss/_contacto.scss */
.contact-form-row {
  width: 100%;
  display: flex;
  gap: 16px; }

/* line 68, static/scss/_contacto.scss */
.contact-form-row input,
.contact-form-row select {
  flex: 1;
  min-width: 0; }

/* line 74, static/scss/_contacto.scss */
.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #e3e7ee;
  border-radius: 8px;
  font-size: 16px;
  font-family: "Lato Regular", sans-serif;
  background: #f8fafc;
  transition: border-color 0.2s; }

/* line 87, static/scss/_contacto.scss */
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: #023668;
  outline: none; }

/* line 94, static/scss/_contacto.scss */
.contact-form textarea {
  min-height: 220px;
  width: 1170px;
  font-size: 16px; }

/* line 100, static/scss/_contacto.scss */
.contact-form label {
  display: block;
  margin-bottom: 6px;
  font-size: 15px;
  color: #023668;
  font-weight: 500; }

/* line 108, static/scss/_contacto.scss */
.contact-form .form-group {
  flex: 1 1 48%;
  min-width: 220px;
  display: flex;
  flex-direction: column; }

/* line 115, static/scss/_contacto.scss */
.contact-form .form-group-full {
  flex: 1 1 100%; }

/* line 119, static/scss/_contacto.scss */
.contact-form button[type="submit"] {
  background: #023668;
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  font-weight: 700;
  border: none;
  border-radius: 8px;
  padding: 14px 0;
  width: 180px;
  margin-top: 18px;
  cursor: pointer;
  transition: background 0.2s; }

/* line 134, static/scss/_contacto.scss */
.contact-form button[type="submit"]:hover {
  background: #014080; }

@media (max-width: 991.98px) {
  /* line 139, static/scss/_contacto.scss */
  .hero-banner-contact {
    height: 200px; }
  /* line 142, static/scss/_contacto.scss */
  .banner-content-contact h1 {
    font-size: 2rem; }
  /* line 145, static/scss/_contacto.scss */
  .contact-form-container {
    padding: 32px 12px; } }

@media (max-width: 767.98px) {
  /* line 151, static/scss/_contacto.scss */
  .hero-banner-contact {
    height: 150px; }
  /* line 154, static/scss/_contacto.scss */
  .banner-content-contact h1 {
    font-size: 1.5rem; }
  /* line 157, static/scss/_contacto.scss */
  .contact-form {
    flex-direction: column;
    gap: 16px 0; }
  /* line 161, static/scss/_contacto.scss */
  .contact-form-row {
    flex-direction: column;
    gap: 12px 0; } }

@media (max-width: 575.98px) {
  /* line 168, static/scss/_contacto.scss */
  .hero-banner-contact {
    height: 110px; }
  /* line 171, static/scss/_contacto.scss */
  .banner-content-contact h1 {
    font-size: 1.2rem; }
  /* line 174, static/scss/_contacto.scss */
  .contact-form-container {
    padding: 16px 4px; } }

/* Contact Info Section */
/* line 180, static/scss/_contacto.scss */
.contact-info-section {
  background: #f8fafc;
  border-top: 1px solid #e3e7ee; }

/* line 185, static/scss/_contacto.scss */
.contact-info-card {
  background: #fff;
  border-radius: 16px;
  padding: 32px 24px;
  box-shadow: 0 4px 24px rgba(2, 54, 104, 0.08);
  border: 1px solid #e3e7ee;
  transition: transform 0.2s ease, box-shadow 0.2s ease; }

/* line 194, static/scss/_contacto.scss */
.contact-info-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(2, 54, 104, 0.12); }

/* line 199, static/scss/_contacto.scss */
.contact-info-header {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 2px solid #f1f4f8; }

/* line 207, static/scss/_contacto.scss */
.contact-icon-wrapper {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #023668 0%, #014080 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 16px;
  box-shadow: 0 4px 12px rgba(2, 54, 104, 0.2); }

/* line 219, static/scss/_contacto.scss */
.contact-icon {
  font-size: 20px;
  color: #fff; }

/* line 224, static/scss/_contacto.scss */
.contact-info-title {
  font-family: "DM Sans", sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #023668;
  margin: 0;
  line-height: 1.2; }

/* line 233, static/scss/_contacto.scss */
.contact-info-content {
  display: flex;
  flex-direction: column;
  gap: 20px; }

/* line 239, static/scss/_contacto.scss */
.contact-item {
  padding: 12px 0; }

/* line 243, static/scss/_contacto.scss */
.contact-subtitle {
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #023668;
  margin-bottom: 8px;
  display: flex;
  align-items: center; }

/* line 253, static/scss/_contacto.scss */
.contact-link {
  color: #4a5568;
  text-decoration: none;
  font-family: "Lato Regular", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  transition: color 0.2s ease;
  display: inline-flex;
  align-items: center;
  margin-bottom: 4px; }

/* line 265, static/scss/_contacto.scss */
.contact-link:hover {
  color: #023668;
  text-decoration: none; }

/* line 270, static/scss/_contacto.scss */
.contact-link i {
  color: #023668;
  opacity: 0.7; }

/* line 275, static/scss/_contacto.scss */
.contact-address {
  color: #4a5568;
  font-family: "Lato Regular", sans-serif;
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 0; }

/* line 283, static/scss/_contacto.scss */
.contact-address i {
  color: #023668;
  opacity: 0.7; }

/* line 288, static/scss/_contacto.scss */
.contact-phones {
  display: flex;
  flex-direction: column;
  gap: 4px; }

/* line 294, static/scss/_contacto.scss */
.phone-extensions {
  color: #718096;
  font-size: 13px;
  margin: 4px 0 0 24px;
  font-style: italic; }

/* line 301, static/scss/_contacto.scss */
.whatsapp-numbers {
  display: flex;
  flex-direction: column;
  gap: 6px; }

/* line 307, static/scss/_contacto.scss */
.whatsapp-link {
  color: #25d366;
  position: relative; }

/* line 312, static/scss/_contacto.scss */
.whatsapp-link:hover {
  color: #1fa851; }

/* line 316, static/scss/_contacto.scss */
.whatsapp-link i {
  color: #25d366;
  opacity: 1; }

/* line 321, static/scss/_contacto.scss */
.whatsapp-link:hover i {
  color: #1fa851; }

/* Responsive Design */
@media (max-width: 991.98px) {
  /* line 327, static/scss/_contacto.scss */
  .contact-info-card {
    padding: 24px 20px;
    margin-bottom: 20px; }
  /* line 332, static/scss/_contacto.scss */
  .contact-info-title {
    font-size: 22px; }
  /* line 336, static/scss/_contacto.scss */
  .contact-icon-wrapper {
    width: 44px;
    height: 44px;
    margin-right: 12px; }
  /* line 342, static/scss/_contacto.scss */
  .contact-icon {
    font-size: 18px; } }

@media (max-width: 767.98px) {
  /* line 348, static/scss/_contacto.scss */
  .contact-info-section {
    padding: 32px 0; }
  /* line 352, static/scss/_contacto.scss */
  .contact-info-card {
    padding: 20px 16px;
    border-radius: 12px; }
  /* line 357, static/scss/_contacto.scss */
  .contact-info-header {
    flex-direction: column;
    text-align: center;
    margin-bottom: 20px; }
  /* line 363, static/scss/_contacto.scss */
  .contact-icon-wrapper {
    margin-right: 0;
    margin-bottom: 12px; }
  /* line 368, static/scss/_contacto.scss */
  .contact-info-title {
    font-size: 20px; }
  /* line 372, static/scss/_contacto.scss */
  .contact-subtitle {
    font-size: 15px;
    justify-content: flex-start; }
  /* line 377, static/scss/_contacto.scss */
  .contact-link {
    font-size: 14px; }
  /* line 381, static/scss/_contacto.scss */
  .contact-address {
    font-size: 14px; }
  /* line 385, static/scss/_contacto.scss */
  .whatsapp-numbers {
    gap: 8px; } }

@media (max-width: 575.98px) {
  /* line 391, static/scss/_contacto.scss */
  .contact-info-section {
    padding: 24px 0; }
  /* line 395, static/scss/_contacto.scss */
  .contact-info-card {
    padding: 16px 12px;
    border-radius: 8px; }
  /* line 400, static/scss/_contacto.scss */
  .contact-info-header {
    margin-bottom: 16px;
    padding-bottom: 12px; }
  /* line 405, static/scss/_contacto.scss */
  .contact-icon-wrapper {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    margin-bottom: 8px; }
  /* line 412, static/scss/_contacto.scss */
  .contact-icon {
    font-size: 16px; }
  /* line 416, static/scss/_contacto.scss */
  .contact-info-title {
    font-size: 18px; }
  /* line 420, static/scss/_contacto.scss */
  .contact-item {
    padding: 8px 0; }
  /* line 424, static/scss/_contacto.scss */
  .contact-subtitle {
    font-size: 14px;
    margin-bottom: 6px; }
  /* line 429, static/scss/_contacto.scss */
  .contact-link {
    font-size: 13px; }
  /* line 433, static/scss/_contacto.scss */
  .contact-address {
    font-size: 13px; }
  /* line 437, static/scss/_contacto.scss */
  .phone-extensions {
    font-size: 12px;
    margin-left: 20px; } }

/* Footer: igual que el de la página principal, no modificar */
/* line 7, static/scss/_faq.scss */
.hero-overlay-about-us {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(2, 54, 104, 0.8), rgba(2, 54, 104, 0.8));
  z-index: 1; }

/* line 18, static/scss/_faq.scss */
.faq-section {
  padding: 60px 0; }
  /* line 21, static/scss/_faq.scss */
  .faq-section .section-title {
    color: #023668;
    font-weight: 700;
    margin-bottom: 1rem; }

/* line 29, static/scss/_faq.scss */
.form-select {
  background-color: transparent;
  border-color: #DFDFDF;
  color: #999999;
  height: 50px;
  font-size: 1rem; }
  @media (max-width: 576px) {
    /* line 29, static/scss/_faq.scss */
    .form-select {
      height: 45px;
      font-size: 0.9rem; } }
  /* line 41, static/scss/_faq.scss */
  .form-select:focus {
    box-shadow: 0 0 0 0.25rem rgba(2, 54, 104, 0.25);
    border-color: #023668; }

/* line 48, static/scss/_faq.scss */
.form-control {
  background-color: transparent;
  border: 1px solid #DFDFDF;
  color: #999999;
  height: 50px;
  padding: 10px 15px;
  font-weight: normal;
  width: 100%; }
  /* line 57, static/scss/_faq.scss */
  .form-control:focus {
    box-shadow: 0 0 0 0.25rem rgba(2, 54, 104, 0.25);
    border-color: #023668; }

/* line 64, static/scss/_faq.scss */
.btn-primary {
  background-color: #023668;
  border-color: #023668; }
  /* line 68, static/scss/_faq.scss */
  .btn-primary:hover, .btn-primary:focus {
    background-color: #011c36;
    border-color: #011c36; }

/* line 74, static/scss/_faq.scss */
.btn-outline-primary {
  color: #023668;
  border-color: #023668; }
  /* line 78, static/scss/_faq.scss */
  .btn-outline-primary:hover, .btn-outline-primary:focus {
    background-color: #023668;
    color: white; }

/* line 85, static/scss/_faq.scss */
.faq-accordion {
  margin-top: 30px; }
  /* line 88, static/scss/_faq.scss */
  .faq-accordion .faq-item {
    margin-bottom: 15px;
    border-color: #DFDFDF;
    border-radius: 46px;
    overflow: hidden;
    font-size: 1rem;
    color: #999999;
    border: 1px solid #DFDFDF;
    background-color: transparent; }
    /* line 99, static/scss/_faq.scss */
    .faq-accordion .faq-item .faq-question button {
      position: relative;
      display: block;
      width: 100%;
      text-align: left;
      padding: 20px;
      background-color: transparent;
      border: none;
      font-weight: 600;
      color: #999999;
      transition: all 0.3s ease;
      cursor: pointer; }
      /* line 112, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-question button:hover {
        background-color: rgba(135, 182, 223, 0.1); }
      /* line 116, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-question button:not(.collapsed) {
        background-color: rgba(135, 182, 223, 0.1);
        color: #023668;
        border-bottom: 1px solid #DFDFDF; }
      /* line 122, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-question button .fa-angle-down {
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        width: 20px;
        height: 20px; }
        /* line 130, static/scss/_faq.scss */
        .faq-accordion .faq-item .faq-question button .fa-angle-down:before, .faq-accordion .faq-item .faq-question button .fa-angle-down:after {
          content: '';
          position: absolute;
          background-color: #023668;
          transition: all 0.3s ease; }
        /* line 137, static/scss/_faq.scss */
        .faq-accordion .faq-item .faq-question button .fa-angle-down:before {
          width: 2px;
          height: 20px;
          top: 0;
          left: 9px;
          opacity: 1; }
        /* line 145, static/scss/_faq.scss */
        .faq-accordion .faq-item .faq-question button .fa-angle-down:after {
          width: 20px;
          height: 2px;
          top: 9px;
          left: 0; }
      /* line 154, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-question button:not(.collapsed) .collapse-icon:before {
        opacity: 0; }
    /* line 161, static/scss/_faq.scss */
    .faq-accordion .faq-item .faq-answer {
      padding: 20px;
      background-color: white; }
      /* line 165, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-answer p {
        margin-bottom: 1rem;
        line-height: 1.6; }
        /* line 169, static/scss/_faq.scss */
        .faq-accordion .faq-item .faq-answer p:last-child {
          margin-bottom: 0; }
      /* line 174, static/scss/_faq.scss */
      .faq-accordion .faq-item .faq-answer ul, .faq-accordion .faq-item .faq-answer ol {
        margin-bottom: 1rem;
        padding-left: 20px; }
        /* line 178, static/scss/_faq.scss */
        .faq-accordion .faq-item .faq-answer ul li, .faq-accordion .faq-item .faq-answer ol li {
          margin-bottom: 0.5rem; }

/* line 187, static/scss/_faq.scss */
.more-questions {
  background-color: transparent;
  padding: 30px;
  border-radius: 8px;
  margin-top: 40px; }
  /* line 193, static/scss/_faq.scss */
  .more-questions h3 {
    color: #023668;
    font-weight: 600;
    margin-bottom: 1rem; }
  /* line 199, static/scss/_faq.scss */
  .more-questions p {
    margin-bottom: 1.5rem; }

/* Estilos para el carrusel de sitios de interés */
/* line 2, static/scss/_oficinas.scss */
.interest-carousel {
  position: relative;
  overflow: hidden;
  width: 100%; }

/* line 8, static/scss/_oficinas.scss */
.interest-cards {
  display: grid;
  grid-auto-flow: column;
  overflow-x: auto;
  /* Permite scroll horizontal */
  gap: 20px;
  padding: 10px; }

/* line 16, static/scss/_oficinas.scss */
.interest-card {
  width: 250px;
  flex: 0 0 auto;
  background: white;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); }

/* line 25, static/scss/_oficinas.scss */
.interest-image {
  width: 100%;
  height: 180px;
  object-fit: cover; }

/* line 31, static/scss/_oficinas.scss */
.interest-card-content {
  padding: 15px; }

/* line 35, static/scss/_oficinas.scss */
.carousel-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: white;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  z-index: 10; }

/* line 52, static/scss/_oficinas.scss */
.carousel-control.prev {
  left: 10px; }

/* line 56, static/scss/_oficinas.scss */
.carousel-control.next {
  right: 10px; }

/* line 60, static/scss/_oficinas.scss */
.carousel-control:disabled {
  opacity: 0.5;
  cursor: not-allowed; }

/* line 65, static/scss/_oficinas.scss */
.carousel-indicators {
  display: flex;
  justify-content: center;
  margin-top: 15px;
  gap: 8px; }

/* line 72, static/scss/_oficinas.scss */
.carousel-indicators .indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer; }

/* line 80, static/scss/_oficinas.scss */
.carousel-indicators .indicator.active {
  background: #333; }

/* Responsive */
@media (max-width: 768px) {
  /* line 89, static/scss/_oficinas.scss */
  .interest-card .carousel-control {
    display: none; } }

/* Estilos para el modal de cita */
/* line 97, static/scss/_oficinas.scss */
.cita-modal-container {
  position: relative;
  width: 100%;
  margin-top: 15px;
  background: white;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); }

/* line 107, static/scss/_oficinas.scss */
.cita-title {
  color: #2c3e50;
  margin-bottom: 20px;
  text-align: center; }

/* Estilo para el input de fecha nativo */
/* line 113, static/scss/_oficinas.scss */
input[type="date"] {
  position: relative;
  padding: 0.375rem 0.75rem; }

/* Estilo para el icono del calendario */
/* line 119, static/scss/_oficinas.scss */
.input-group-text {
  cursor: pointer; }

/* Estilo para el pseudo-elemento del calendario en Chrome/Safari */
/* line 124, static/scss/_oficinas.scss */
input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer; }

/* Estilos para el calendario visual */
/* line 137, static/scss/_oficinas.scss */
.calendar-widget {
  background: #ffffff;
  border-radius: 15px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  padding: 20px;
  margin-bottom: 20px;
  max-width: 100%; }

/* line 146, static/scss/_oficinas.scss */
.calendar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding: 0 10px; }

/* line 154, static/scss/_oficinas.scss */
.calendar-nav-btn {
  background: linear-gradient(135deg, #3498db, #2980b9);
  color: white;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(52, 152, 219, 0.3); }

/* line 169, static/scss/_oficinas.scss */
.calendar-nav-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(52, 152, 219, 0.4); }

/* line 174, static/scss/_oficinas.scss */
.calendar-month-year {
  font-size: 1.3rem;
  font-weight: 600;
  color: #2c3e50;
  text-align: center; }

/* line 181, static/scss/_oficinas.scss */
.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 3px;
  margin-bottom: 15px; }

/* line 188, static/scss/_oficinas.scss */
.calendar-day-header {
  background: #34495e;
  color: white;
  padding: 12px 5px;
  text-align: center;
  font-weight: 600;
  font-size: 0.85rem;
  border-radius: 8px; }

/* line 198, static/scss/_oficinas.scss */
.calendar-day {
  background: #f8f9fa;
  padding: 12px 8px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 8px;
  position: relative;
  min-height: 45px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 500; }

/* line 214, static/scss/_oficinas.scss */
.calendar-day:hover {
  background: #e3f2fd;
  transform: scale(1.05); }

/* line 219, static/scss/_oficinas.scss */
.calendar-day.other-month {
  color: #bdc3c7;
  background: #ecf0f1;
  cursor: default; }

/* line 225, static/scss/_oficinas.scss */
.calendar-day.other-month:hover {
  transform: none;
  background: #ecf0f1; }

/* line 230, static/scss/_oficinas.scss */
.calendar-day.today {
  background: linear-gradient(135deg, #3498db, #2980b9);
  color: white;
  font-weight: bold;
  box-shadow: 0 4px 15px rgba(52, 152, 219, 0.3); }

/* line 237, static/scss/_oficinas.scss */
.calendar-day.available {
  background: linear-gradient(135deg, #2ecc71, #27ae60);
  color: white;
  cursor: pointer; }

/* line 243, static/scss/_oficinas.scss */
.calendar-day.available:hover {
  background: linear-gradient(135deg, #27ae60, #219a52);
  transform: scale(1.1); }

/* line 248, static/scss/_oficinas.scss */
.calendar-day.selected {
  background: linear-gradient(135deg, #e74c3c, #c0392b);
  color: white;
  transform: scale(1.1);
  box-shadow: 0 6px 20px rgba(231, 76, 60, 0.4); }

/* line 255, static/scss/_oficinas.scss */
.calendar-day.unavailable {
  background: #ecf0f1;
  color: #95a5a6;
  cursor: not-allowed;
  text-decoration: line-through; }

/* line 262, static/scss/_oficinas.scss */
.calendar-day.unavailable:hover {
  transform: none;
  background: #ecf0f1; }

/* line 267, static/scss/_oficinas.scss */
.availability-indicator {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  bottom: 4px;
  right: 4px; }

/* line 276, static/scss/_oficinas.scss */
.availability-indicator.available {
  background: #2ecc71; }

/* line 280, static/scss/_oficinas.scss */
.availability-indicator.limited {
  background: #f39c12; }

/* line 284, static/scss/_oficinas.scss */
.availability-indicator.unavailable {
  background: #e74c3c; }

/* line 288, static/scss/_oficinas.scss */
.calendar-legend {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid #ecf0f1;
  flex-wrap: wrap; }

/* line 298, static/scss/_oficinas.scss */
.legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.85rem;
  color: #7f8c8d; }

/* line 306, static/scss/_oficinas.scss */
.legend-color {
  width: 12px;
  height: 12px;
  border-radius: 50%; }

/* line 312, static/scss/_oficinas.scss */
.legend-color.available {
  background: linear-gradient(135deg, #2ecc71, #27ae60); }

/* line 316, static/scss/_oficinas.scss */
.legend-color.limited {
  background: linear-gradient(135deg, #f39c12, #e67e22); }

/* line 320, static/scss/_oficinas.scss */
.legend-color.unavailable {
  background: linear-gradient(135deg, #e74c3c, #c0392b); }

/* line 324, static/scss/_oficinas.scss */
.selected-date-info {
  background: linear-gradient(135deg, #3498db, #2980b9);
  color: white;
  padding: 15px;
  border-radius: 10px;
  margin-top: 15px;
  text-align: center;
  display: none; }

/* line 334, static/scss/_oficinas.scss */
.selected-date-info.show {
  display: block;
  animation: slideDown 0.3s ease; }

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px); }
  to {
    opacity: 1;
    transform: translateY(0); } }

/* line 350, static/scss/_oficinas.scss */
.time-slots {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  gap: 10px;
  margin-top: 15px; }

/* line 357, static/scss/_oficinas.scss */
.time-slot {
  background: white;
  border: 2px solid #3498db;
  color: #3498db;
  padding: 8px 12px;
  border-radius: 8px;
  cursor: pointer;
  text-align: center;
  transition: all 0.3s ease;
  font-size: 0.9rem; }

/* line 369, static/scss/_oficinas.scss */
.time-slot:hover {
  background: #023668;
  color: white; }

/* line 374, static/scss/_oficinas.scss */
.time-slot.selected {
  background: #023668;
  color: white; }

/* line 379, static/scss/_oficinas.scss */
.time-slot.unavailable {
  background: #ecf0f1;
  border-color: #bdc3c7;
  color: #95a5a6;
  cursor: not-allowed; }

/* Responsive */
@media (max-width: 768px) {
  /* line 388, static/scss/_oficinas.scss */
  .calendar-grid {
    gap: 2px; }
  /* line 392, static/scss/_oficinas.scss */
  .calendar-day {
    padding: 8px 4px;
    min-height: 40px;
    font-size: 0.9rem; }
  /* line 398, static/scss/_oficinas.scss */
  .calendar-day-header {
    padding: 8px 2px;
    font-size: 0.8rem; }
  /* line 403, static/scss/_oficinas.scss */
  .calendar-legend {
    gap: 10px; }
  /* line 407, static/scss/_oficinas.scss */
  .legend-item {
    font-size: 0.8rem; } }

/* Estilo para el grupo de input */
/* line 412, static/scss/_oficinas.scss */
.input-group {
  width: auto;
  min-width: 200px; }

/* line 417, static/scss/_oficinas.scss */
.modal-content {
  border-radius: 15px; }

/* line 421, static/scss/_oficinas.scss */
.alert {
  margin-bottom: 0; }

/* line 425, static/scss/_oficinas.scss */
.btn[disabled] {
  opacity: 0.7;
  cursor: not-allowed; }

/* Contenedor específico para videos */
/* line 431, static/scss/_oficinas.scss */
.video-container {
  width: 100%;
  height: 100%;
  position: relative;
  background: #000;
  border-radius: 12px;
  overflow: hidden; }

/* Overlay del video */
/* line 441, static/scss/_oficinas.scss */
.video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
  border-radius: 12px; }

/* Icono de play del video */
/* line 458, static/scss/_oficinas.scss */
.video-play-icon {
  font-size: 3rem;
  color: #ffffff;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
  animation: pulse 2s infinite; }

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 0.8; }
  50% {
    transform: scale(1.1);
    opacity: 1; }
  100% {
    transform: scale(1);
    opacity: 0.8; } }

/* Ocultar overlay cuando el video está reproduciendo */
/* line 481, static/scss/_oficinas.scss */
.video-container video:not([paused]) + .video-overlay {
  opacity: 0; }

/* Título del video */
/* line 486, static/scss/_oficinas.scss */
.video-title {
  font-size: 0.9rem;
  color: #6c757d;
  font-weight: 500;
  text-align: center;
  margin-top: 8px; }

/* Controles del video */
/* line 495, static/scss/_oficinas.scss */
.video-container video {
  outline: none; }

/* line 499, static/scss/_oficinas.scss */
.video-container video::-webkit-media-controls {
  filter: contrast(1.2); }

/* Badge para indicar que es un video */
/* line 504, static/scss/_oficinas.scss */
.video-container::before {
  content: "Video";
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  z-index: 2;
  font-weight: 500; }

/* Responsive Design */
@media (max-width: 1200px) {
  /* line 520, static/scss/_oficinas.scss */
  .fotos-item {
    width: 280px;
    height: 190px; } }

@media (max-width: 992px) {
  /* line 527, static/scss/_oficinas.scss */
  .fotos-item {
    width: 250px;
    height: 170px; }
  /* line 532, static/scss/_oficinas.scss */
  .video-play-icon {
    font-size: 2.5rem; } }

@media (max-width: 768px) {
  /* line 538, static/scss/_oficinas.scss */
  .fotos-container {
    gap: 15px;
    justify-content: center; }
  /* line 543, static/scss/_oficinas.scss */
  .fotos-item {
    width: 300px;
    height: 200px; }
  /* line 548, static/scss/_oficinas.scss */
  .video-play-icon {
    font-size: 2rem; } }

@media (max-width: 576px) {
  /* line 554, static/scss/_oficinas.scss */
  .fotos-container {
    gap: 10px; }
  /* line 558, static/scss/_oficinas.scss */
  .fotos-item {
    width: 100%;
    max-width: 350px;
    height: 220px; }
  /* line 564, static/scss/_oficinas.scss */
  .video-play-icon {
    font-size: 2.5rem; } }

/* Mejoras para accesibilidad */
/* line 570, static/scss/_oficinas.scss */
.fotos-item:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px; }

/* Loading state para videos */
/* line 576, static/scss/_oficinas.scss */
.video-container video {
  background: #f8f9fa; }

/* Hover effect más suave para videos */
/* line 581, static/scss/_oficinas.scss */
.video-container:hover .video-overlay {
  background: rgba(0, 0, 0, 0.5); }

/* line 585, static/scss/_oficinas.scss */
.video-container:hover .video-play-icon {
  transform: scale(1.1);
  color: #ffd700; }

/* Estilos para el carrusel de sitios de interés */
/* line 591, static/scss/_oficinas.scss */
.interest-carousel {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 20px 0; }

/* line 598, static/scss/_oficinas.scss */
.interest-cards {
  display: grid;
  grid-auto-flow: column;
  overflow-x: auto;
  gap: 20px;
  padding: 15px 10px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  /* Firefox */ }

/* line 609, static/scss/_oficinas.scss */
.interest-cards::-webkit-scrollbar {
  display: none;
  /* Chrome, Safari */ }

/* line 613, static/scss/_oficinas.scss */
.interest-card {
  width: 280px;
  flex: 0 0 auto;
  background: white;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  scroll-snap-align: start;
  transition: transform 0.3s ease; }

/* line 624, static/scss/_oficinas.scss */
.interest-card:hover {
  transform: translateY(-5px); }

/* line 628, static/scss/_oficinas.scss */
.interest-image {
  width: 100%;
  height: 180px;
  object-fit: cover; }

/* line 634, static/scss/_oficinas.scss */
.interest-card-content {
  padding: 15px; }

/* line 638, static/scss/_oficinas.scss */
.interest-title {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 8px;
  color: #2c3e50; }

/* line 645, static/scss/_oficinas.scss */
.interest-subtitle {
  font-size: 0.9rem;
  color: #7f8c8d;
  margin: 0; }

/* line 651, static/scss/_oficinas.scss */
.carousel-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: white;
  border: none;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  z-index: 20;
  transition: all 0.3s ease; }

/* line 669, static/scss/_oficinas.scss */
.carousel-control:hover {
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2); }

/* line 674, static/scss/_oficinas.scss */
.carousel-control.prev {
  left: 15px; }

/* line 678, static/scss/_oficinas.scss */
.carousel-control.next {
  right: 15px; }

/* line 682, static/scss/_oficinas.scss */
.carousel-control:disabled {
  opacity: 0.3;
  cursor: not-allowed;
  transform: translateY(-50%); }

/* line 688, static/scss/_oficinas.scss */
.carousel-control:disabled:hover {
  transform: translateY(-50%);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); }

/* line 693, static/scss/_oficinas.scss */
.carousel-indicators {
  display: flex;
  justify-content: center;
  margin-top: 20px;
  gap: 10px; }

/* line 700, static/scss/_oficinas.scss */
.carousel-indicators .indicator {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ddd;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 709, static/scss/_oficinas.scss */
.carousel-indicators .indicator.active {
  background: #3498db;
  transform: scale(1.2); }

/* Responsive para carrusel */
@media (max-width: 1200px) {
  /* line 716, static/scss/_oficinas.scss */
  .interest-card {
    width: 260px; } }

@media (max-width: 992px) {
  /* line 722, static/scss/_oficinas.scss */
  .interest-card {
    width: 240px; }
  /* line 726, static/scss/_oficinas.scss */
  .carousel-control {
    width: 40px;
    height: 40px; } }

@media (max-width: 768px) {
  /* line 733, static/scss/_oficinas.scss */
  .interest-carousel {
    margin: 15px -10px;
    width: calc(100% + 20px); }
  /* line 738, static/scss/_oficinas.scss */
  .interest-cards {
    gap: 15px;
    padding: 12px 15px;
    scroll-padding: 0 15px; }
  /* line 744, static/scss/_oficinas.scss */
  .interest-card {
    width: 300px;
    scroll-snap-align: center; }
  /* line 749, static/scss/_oficinas.scss */
  .carousel-control {
    display: none !important; }
  /* line 753, static/scss/_oficinas.scss */
  .carousel-indicators {
    margin-top: 15px; } }

@media (max-width: 576px) {
  /* line 759, static/scss/_oficinas.scss */
  .interest-card {
    width: 280px; }
  /* line 763, static/scss/_oficinas.scss */
  .interest-cards {
    gap: 12px;
    padding: 10px 12px; }
  /* line 768, static/scss/_oficinas.scss */
  .interest-image {
    height: 160px; }
  /* line 772, static/scss/_oficinas.scss */
  .interest-card-content {
    padding: 12px; }
  /* line 776, static/scss/_oficinas.scss */
  .interest-title {
    font-size: 1rem; }
  /* line 780, static/scss/_oficinas.scss */
  .interest-subtitle {
    font-size: 0.85rem; } }

/* Estilos para mejorar el scroll horizontal en móviles */
/* line 786, static/scss/_oficinas.scss */
.interest-cards {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth; }

/* Para navegadores WebKit (Chrome, Safari) */
/* line 792, static/scss/_oficinas.scss */
.interest-cards::-webkit-scrollbar {
  height: 6px; }

/* line 796, static/scss/_oficinas.scss */
.interest-cards::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px; }

/* line 801, static/scss/_oficinas.scss */
.interest-cards::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 3px; }

/* line 806, static/scss/_oficinas.scss */
.interest-cards::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8; }

/* JavaScript para mejorar la experiencia móvil */
/* line 811, static/scss/_oficinas.scss */
.interest-carousel {
  position: relative; }

/* Estilos existentes para el modal de cita y otros componentes... */
/* line 816, static/scss/_oficinas.scss */
.cita-modal-container {
  position: relative;
  width: 100%;
  margin-top: 15px;
  background: white;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); }

/* ... (mantener todos los otros estilos existentes) ... */
/* Mejoras para accesibilidad */
/* line 829, static/scss/_oficinas.scss */
.fotos-item:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px; }

/* Loading state para videos */
/* line 835, static/scss/_oficinas.scss */
.video-container video {
  background: #f8f9fa; }

/* Hover effect más suave para videos */
/* line 840, static/scss/_oficinas.scss */
.video-container:hover .video-overlay {
  background: rgba(0, 0, 0, 0.5); }

/* line 844, static/scss/_oficinas.scss */
.video-container:hover .video-play-icon {
  transform: scale(1.1);
  color: #ffd700; }

/* Media queries específicas para el layout general */
@media (max-width: 768px) {
  /* line 851, static/scss/_oficinas.scss */
  .container.property-detail-container {
    padding: 0 15px; }
  /* line 855, static/scss/_oficinas.scss */
  .row {
    margin: 0 -10px; }
  /* line 859, static/scss/_oficinas.scss */
  .col-lg-8, .col-lg-4 {
    padding: 0 10px; }
  /* line 863, static/scss/_oficinas.scss */
  .inquiry-panel {
    margin-top: 25px;
    padding: 20px 15px; }
  /* line 868, static/scss/_oficinas.scss */
  .property-main-image {
    border-radius: 12px; }
  /* line 872, static/scss/_oficinas.scss */
  .gallery-buttons-oficinas {
    overflow-x: auto;
    padding: 15px 0;
    margin: 20px 0;
    -webkit-overflow-scrolling: touch; }
  /* line 879, static/scss/_oficinas.scss */
  .gallery-btn-oficinas {
    flex: 0 0 auto;
    white-space: nowrap;
    margin: 0 8px; } }

@media (max-width: 576px) {
  /* line 887, static/scss/_oficinas.scss */
  .container.property-detail-container {
    padding: 0 10px; }
  /* line 891, static/scss/_oficinas.scss */
  .row {
    margin: 0 -5px; }
  /* line 895, static/scss/_oficinas.scss */
  .col-lg-8, .col-lg-4 {
    padding: 0 5px; }
  /* line 899, static/scss/_oficinas.scss */
  .inquiry-panel {
    padding: 15px 12px; }
  /* line 903, static/scss/_oficinas.scss */
  .property-main-image {
    border-radius: 10px; } }

@font-face {
  font-family: 'DM Sans regular';
  src: url("/static/css/fonts/DMSans_18pt-Regular.ttf?13e8b27f7f48") format("ttf");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'DM Sans';
  src: url("/static/css/fonts/DMSans-Bold.ttf?fd1d62ebef23") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lato Black';
  src: url("/static/css/fonts/Lato/Lato-Black.ttf?abf64cfa1464") format("ttf");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lato Italic';
  src: url("/static/css/fonts/Lato/Lato-Italic.ttf?3be26bf6973f") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lato Hairline';
  src: url("/static/css/fonts/Lato/Lato-Thin.ttf?fee1bd1daaa5") format("truetype");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Lato BoldItalic';
  src: url("/static/css/fonts/Lato/Lato-BoldItalic.ttf?e38611f4c0ff") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  font-display: swap; }

@font-face {
  font-family: 'Lato Regular';
  src: url("/static/css/fonts/Lato/Lato-Regular.ttf?e82542aed829") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 100%; }

/* line 63, static/scss/main.scss */
:root {
  --bs-primary: #023668 !important;
  --bs-primary-rgb: 2, 54, 104 !important; }

/* line 69, static/scss/main.scss */
body {
  font-family: 'Lato Regular';
  color: #999999;
  background-color: #f8f9fa; }

/* line 75, static/scss/main.scss */
a {
  color: #023668;
  text-decoration: none; }
  /* line 79, static/scss/main.scss */
  a:hover {
    color: #FFD65A; }

/* line 83, static/scss/main.scss */
.text-primary-title {
  color: #023668; }

/* line 88, static/scss/main.scss */
.btn-primary {
  background-color: #023668;
  border-color: #023668; }
  /* line 92, static/scss/main.scss */
  .btn-primary:hover, .btn-primary:focus {
    background-color: #01285a;
    border-color: #01285a; }

/* line 98, static/scss/main.scss */
.btn-outline-primary {
  color: #023668;
  border-color: #023668; }
  /* line 102, static/scss/main.scss */
  .btn-outline-primary:hover {
    background-color: #023668;
    color: white; }

/* line 108, static/scss/main.scss */
.btn-warning {
  background-color: #FFD65A;
  border-color: #FFD65A;
  color: #023668; }
  /* line 113, static/scss/main.scss */
  .btn-warning:hover {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #023668; }

/* line 121, static/scss/main.scss */
.container-filters {
  max-width: 1430px;
  margin: 0 auto;
  background-color: transparent; }

/* line 128, static/scss/main.scss */
.search-input .input-group {
  border-radius: 90px;
  height: 84px;
  border: 1px solid #DFDFDF;
  background-color: transparent;
  position: relative; }

/* line 136, static/scss/main.scss */
.search-input .input-group-text {
  padding-left: 20px;
  color: #023668;
  background-color: transparent; }

/* line 142, static/scss/main.scss */
.search-input .form-control {
  height: 100%;
  border-radius: 0;
  color: #023668;
  background-color: transparent; }

/* line 150, static/scss/main.scss */
.search-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center; }

/* line 159, static/scss/main.scss */
.form-control {
  background-color: transparent; }

/* line 163, static/scss/main.scss */
.search-btn {
  background-color: #023668;
  color: white;
  width: 40px;
  height: 40px;
  margin-right: 5px;
  margin-top: 7px;
  top: 15%; }

/* line 173, static/scss/main.scss */
.filter-btn {
  background-color: #f8f9fa;
  color: #023668;
  width: 40px;
  height: 40px;
  margin-right: 15px;
  margin-top: 7px;
  top: 16%; }

/* line 183, static/scss/main.scss */
.filter-dropdown {
  background-color: transparent;
  border: 1px solid #DFDFDF;
  color: #ADA7A7;
  padding: 12px 20px;
  border-radius: 32px !important;
  font-weight: normal; }

/* line 193, static/scss/main.scss */
.dropdown-toggle::after {
  display: none; }

/* line 198, static/scss/main.scss */
.dropdown-menu {
  border-radius: 15px;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
  border: none;
  padding: 10px;
  margin-top: 8px; }

/* line 206, static/scss/main.scss */
.dropdown-item {
  border-radius: 8px;
  padding: 10px 15px;
  transition: all 0.2s ease; }
  /* line 211, static/scss/main.scss */
  .dropdown-item:hover {
    background-color: #f8f9fa; }

/* line 216, static/scss/main.scss */
.row.g-4 > .col {
  padding: 0 10px; }

/* line 219, static/scss/main.scss */
.form-control-search {
  background-color: transparent;
  border: 1px solid #DFDFDF;
  color: #999999;
  height: 50px;
  padding: 10px 15px;
  font-weight: normal;
  width: 100%; }

/* line 229, static/scss/main.scss */
.container {
  max-width: 1720px;
  margin: 0 auto;
  padding: 0 15px; }

/* line 236, static/scss/main.scss */
.property-card {
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 3px 10px rgba(2, 54, 104, 0.2);
  transition: all 0.3s;
  height: 360px;
  background-color: white;
  display: flex;
  flex-direction: column; }
  /* line 247, static/scss/main.scss */
  .property-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px #023668; }

/* line 258, static/scss/main.scss */
.card-nav-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #023668;
  font-size: 24px;
  cursor: pointer;
  font-weight: 900;
  z-index: 2;
  transition: transform 0.2s, color 0.2s;
  text-shadow: 0px 0px 3px #023668; }
  /* line 270, static/scss/main.scss */
  .card-nav-icon:hover {
    transform: translateY(-50%) scale(1.2); }

/* line 275, static/scss/main.scss */
.card-nav-prev {
  left: 20px; }

/* line 279, static/scss/main.scss */
.card-nav-next {
  right: 20px; }

/* line 283, static/scss/main.scss */
.property-img {
  height: 263.46px;
  object-fit: cover;
  padding: 13px;
  border-radius: 8px; }

/* line 290, static/scss/main.scss */
.property-details {
  padding: 0 15px 10px;
  font-family: "Lato Regular";
  color: #999999; }

/* line 296, static/scss/main.scss */
.property-price {
  color: #FFD65A;
  font-weight: bold;
  font-size: 1.2rem; }

/* line 302, static/scss/main.scss */
.property-location {
  font-size: 14px;
  color: #666; }

/* line 307, static/scss/main.scss */
.property-features {
  display: flex;
  flex-wrap: wrap;
  gap: 8px; }

/* line 313, static/scss/main.scss */
.feature-badge {
  background-color: #f8f9fa;
  color: #023668;
  padding: 5px 10px;
  border-radius: 5px;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center; }

/* line 324, static/scss/main.scss */
.property-navigation {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 30px; }

/* line 331, static/scss/main.scss */
.navigation-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #023668;
  background-color: white;
  color: #023668;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s; }
  /* line 344, static/scss/main.scss */
  .navigation-btn:hover:not([disabled]) {
    background-color: #023668;
    color: white; }
  /* line 349, static/scss/main.scss */
  .navigation-btn[disabled] {
    opacity: 0.5;
    cursor: not-allowed; }

/* line 356, static/scss/main.scss */
.section-title {
  color: #023668;
  font-weight: 700;
  margin-bottom: 30px;
  text-transform: uppercase;
  font-size: 1.5rem;
  letter-spacing: 1px;
  font-family: 'DM Sans'; }

/* line 367, static/scss/main.scss */
footer {
  background-color: #DDEFFF;
  padding: 40px 0 20px;
  margin-top: 60px;
  text-decoration: #545454; }

/* line 374, static/scss/main.scss */
.container h5 {
  color: #023668;
  font-weight: 700; }

/* line 379, static/scss/main.scss */
.container h6 {
  color: #006FDA;
  margin-top: 19px;
  font-style: normal;
  font-weight: 900; }

/* line 386, static/scss/main.scss */
.footer-logo img {
  height: 64px;
  margin-bottom: 15px; }

/* line 391, static/scss/main.scss */
footer ul li a {
  color: #545454;
  font-family: 'Lato Regular'; }
  /* line 394, static/scss/main.scss */
  footer ul li a:hover {
    color: #023668; }

/* line 399, static/scss/main.scss */
footer p {
  color: #545454;
  font-size: 14px;
  margin-bottom: 20px;
  font-weight: 400;
  margin: 0; }

/* line 408, static/scss/main.scss */
.social-icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #023668;
  color: white;
  margin-right: 10px;
  transition: all 0.3s; }
  /* line 420, static/scss/main.scss */
  .social-icons a:hover {
    background-color: #FFD65A;
    color: #023668;
    transform: translateY(-3px); }

/* line 428, static/scss/main.scss */
.hero-section {
  position: relative;
  height: 600px;
  /*overflow: hidden;*/
  margin-bottom: 100px; }
  /* line 435, static/scss/main.scss */
  .hero-section .hero-section video.hero-img {
    height: 100%;
    object-fit: cover;
    object-position: center; }
  /* line 442, static/scss/main.scss */
  .hero-section .hero-section .carousel-item video {
    width: 100%;
    height: 100%; }
  /* line 448, static/scss/main.scss */
  .hero-section .hero-section video::-webkit-media-controls {
    display: none !important; }
  /* line 452, static/scss/main.scss */
  .hero-section .hero-section video::-webkit-media-controls-enclosure {
    display: none !important; }
  @media (max-width: 1200px) {
    /* line 428, static/scss/main.scss */
    .hero-section {
      height: 550px;
      margin-bottom: 150px; } }
  @media (max-width: 992px) {
    /* line 428, static/scss/main.scss */
    .hero-section {
      height: 500px;
      margin-bottom: 200px; } }
  @media (max-width: 768px) {
    /* line 428, static/scss/main.scss */
    .hero-section {
      height: 450px;
      margin-bottom: 280px; } }
  @media (max-width: 576px) {
    /* line 428, static/scss/main.scss */
    .hero-section {
      height: 400px;
      margin-bottom: 320px; } }
  /* line 477, static/scss/main.scss */
  .hero-section .carousel, .hero-section .carousel-inner, .hero-section .carousel-item {
    height: 100%; }
  /* line 481, static/scss/main.scss */
  .hero-section .hero-img {
    height: 100%;
    object-fit: cover;
    object-position: center; }

/* line 488, static/scss/main.scss */
.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/* line 498, static/scss/main.scss */
.carousel-caption {
  z-index: 2;
  text-align: left;
  bottom: auto;
  top: 50%;
  transform: translateY(-46%);
  padding: 0 5rem; }
  @media (max-width: 768px) {
    /* line 498, static/scss/main.scss */
    .carousel-caption {
      padding: 0 3rem; } }
  @media (max-width: 576px) {
    /* line 498, static/scss/main.scss */
    .carousel-caption {
      padding: 0 2rem; } }
/* line 515, static/scss/main.scss */
.hero-title {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  max-width: 700px; }
  @media (max-width: 992px) {
    /* line 515, static/scss/main.scss */
    .hero-title {
      font-size: 2.2rem; } }
  @media (max-width: 768px) {
    /* line 515, static/scss/main.scss */
    .hero-title {
      font-size: 1.7rem;
      max-width: 550px; } }
  @media (max-width: 576px) {
    /* line 515, static/scss/main.scss */
    .hero-title {
      font-size: 1.6rem;
      max-width: 100%; } }
/* line 536, static/scss/main.scss */
.hero-subtitle {
  font-size: 1.25rem;
  max-width: 600px;
  margin-bottom: 2rem; }
  @media (max-width: 768px) {
    /* line 536, static/scss/main.scss */
    .hero-subtitle {
      font-size: 1.1rem; } }
  @media (max-width: 576px) {
    /* line 536, static/scss/main.scss */
    .hero-subtitle {
      font-size: 1rem;
      margin-bottom: 1rem; } }
/* line 552, static/scss/main.scss */
.search-box {
  position: absolute;
  right: 6rem;
  bottom: 91px;
  width: 415px;
  height: 328px;
  background-color: #ffffff;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  z-index: 10; }
  @media (max-width: 1200px) {
    /* line 552, static/scss/main.scss */
    .search-box {
      right: 3rem;
      width: 380px;
      height: 300px; } }
  @media (max-width: 992px) {
    /* line 552, static/scss/main.scss */
    .search-box {
      right: 50%;
      transform: translateX(50%);
      bottom: -80px;
      width: 360px; } }
  @media (max-width: 768px) {
    /* line 552, static/scss/main.scss */
    .search-box {
      width: 80%;
      height: auto;
      bottom: -130px;
      padding: 1.75rem; } }
  @media (max-width: 576px) {
    /* line 552, static/scss/main.scss */
    .search-box {
      width: 90%;
      padding: 1.5rem;
      bottom: -180px;
      right: 50%;
      transform: translateX(50%); } }
  /* line 592, static/scss/main.scss */
  .search-box h4 {
    color: #023668;
    margin-bottom: 1.5rem;
    text-align: center;
    font-weight: 600; }
    @media (max-width: 576px) {
      /* line 592, static/scss/main.scss */
      .search-box h4 {
        font-size: 1.2rem;
        margin-bottom: 1.25rem; } }
  /* line 603, static/scss/main.scss */
  .search-box .form-select {
    background-color: transparent;
    border-color: #DFDFDF;
    color: #999999;
    height: 50px;
    font-size: 1rem; }
    @media (max-width: 576px) {
      /* line 603, static/scss/main.scss */
      .search-box .form-select {
        height: 45px;
        font-size: 0.9rem; } }
    /* line 615, static/scss/main.scss */
    .search-box .form-select:focus {
      box-shadow: 0 0 0 0.25rem rgba(2, 54, 104, 0.25);
      border-color: #023668; }
  /* line 622, static/scss/main.scss */
  .search-box .search-btn {
    width: 50%;
    height: 50px;
    background-color: #023668;
    color: #ffffff;
    border: none;
    border-radius: 50px;
    padding: 0.75rem;
    font-weight: 500;
    font-family: 'Lato Black';
    font-size: 16px;
    transition: background-color 0.3s;
    display: block;
    margin: 0 auto; }
    @media (max-width: 576px) {
      /* line 622, static/scss/main.scss */
      .search-box .search-btn {
        width: 70%;
        padding: 0.6rem; } }
    /* line 641, static/scss/main.scss */
    .search-box .search-btn:hover {
      background-color: #011c36; }

/* line 648, static/scss/main.scss */
.carousel-control-prev, .carousel-control-next {
  width: 5%;
  opacity: 0.8; }
  /* line 652, static/scss/main.scss */
  .carousel-control-prev:hover, .carousel-control-next:hover {
    opacity: 1; }

/* line 658, static/scss/main.scss */
.carousel-indicators button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5); }
  /* line 664, static/scss/main.scss */
  .carousel-indicators button.active {
    background-color: #ffffff; }

/* line 671, static/scss/main.scss */
.search-results-container {
  padding: 30px 0; }

/* line 675, static/scss/main.scss */
.search-results-header {
  margin-bottom: 30px; }

/* line 679, static/scss/main.scss */
.filter-sidebar {
  margin-bottom: 20px; }

/* line 684, static/scss/main.scss */
.filter-title {
  color: #023668;
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 16px; }

/* line 691, static/scss/main.scss */
.filter-group {
  margin-bottom: 20px; }

/* line 695, static/scss/main.scss */
.filter-group .form-select {
  background-color: transparent;
  border: 1px solid #ccc;
  border-radius: 20px;
  padding: 10px 15px;
  font-size: 14px;
  color: #999999; }

/* line 703, static/scss/main.scss */
.card {
  background-color: white;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  border: none;
  overflow: hidden; }

/* line 711, static/scss/main.scss */
.results-map {
  height: 300px;
  border-radius: 10px;
  padding: 10px;
  overflow: hidden; }

/* line 718, static/scss/main.scss */
.property-list-item {
  background-color: white;
  border-radius: 10px;
  margin-bottom: 24px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s, box-shadow 0.3s; }

/* line 727, static/scss/main.scss */
.property-list-item .row {
  min-height: 425px; }
  @media (max-width: 992px) {
    /* line 727, static/scss/main.scss */
    .property-list-item .row {
      min-height: auto; } }
/* line 734, static/scss/main.scss */
.property-list-item .property-list-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); }

/* line 738, static/scss/main.scss */
.property-list-item .property-image-search {
  height: 100%;
  padding: 15px; }
  /* line 742, static/scss/main.scss */
  .property-list-item .property-image-search img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 8px; }
    @media (max-width: 992px) {
      /* line 742, static/scss/main.scss */
      .property-list-item .property-image-search img {
        height: 300px; } }
    @media (max-width: 768px) {
      /* line 742, static/scss/main.scss */
      .property-list-item .property-image-search img {
        height: 250px; } }
/* line 758, static/scss/main.scss */
.property-list-item .property-details-search {
  display: flex;
  flex-direction: column;
  height: 100%; }
  /* line 763, static/scss/main.scss */
  .property-list-item .property-details-search p {
    overflow: hidden; }
  /* line 768, static/scss/main.scss */
  .property-list-item .property-details-search .property-actions {
    margin-top: auto;
    border-top: 1px solid #eee;
    padding-top: 15px;
    display: flex;
    justify-content: space-between;
    gap: 10px; }
    @media (max-width: 768px) {
      /* line 768, static/scss/main.scss */
      .property-list-item .property-details-search .property-actions {
        justify-content: center; } }
@media (max-width: 768px) {
  /* line 784, static/scss/main.scss */
  .property-list-item .col-md-4, .property-list-item .col-md-8 {
    width: 100%; } }

/* line 791, static/scss/main.scss */
.property-image-search {
  height: 326px;
  padding: 15px;
  overflow: hidden; }

/* line 797, static/scss/main.scss */
.property-image-search img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

/* line 803, static/scss/main.scss */
.property-details-search {
  padding: 20px; }

/* line 807, static/scss/main.scss */
.property-title {
  font-weight: 700;
  color: #023668;
  margin-bottom: 5px; }

/* line 813, static/scss/main.scss */
.property-location {
  color: #4a5568;
  font-size: 14px;
  margin: 0; }

/* line 819, static/scss/main.scss */
.property-price {
  font-weight: 700;
  color: #FFC107;
  font-size: 18px;
  margin-bottom: 10px; }

/* line 826, static/scss/main.scss */
.property-features {
  display: flex;
  gap: 10px;
  margin-bottom: 15px; }

/* line 832, static/scss/main.scss */
.property-feature {
  background-color: #f5f5f5;
  padding: 5px 10px;
  border-radius: 5px;
  font-size: 13px;
  color: #023668; }

/* line 841, static/scss/main.scss */
.action-button {
  color: #008EFF;
  font-size: 14px;
  display: flex;
  align-items: center;
  transition: color 0.2s; }

/* line 849, static/scss/main.scss */
.action-button:hover {
  color: #FFC107; }

/* line 853, static/scss/main.scss */
.action-button i {
  margin-right: 5px; }

/* line 857, static/scss/main.scss */
.form-check-input:checked {
  background-color: #FFC107;
  border-color: #FFC107; }

/* line 862, static/scss/main.scss */
.range-filter label {
  color: #999999;
  font-size: 14px; }

/* line 867, static/scss/main.scss */
.range-inputs {
  display: flex;
  gap: 10px; }

/* line 872, static/scss/main.scss */
.range-inputs input {
  flex: 1;
  padding: 8px 12px;
  border: 1px solid #ced4da;
  border-radius: 20px;
  font-size: 14px; }

/* line 880, static/scss/main.scss */
.custom-icon {
  width: 20px;
  text-align: center;
  margin-right: 5px; }

/* line 886, static/scss/main.scss */
.results-count {
  color: #666;
  font-size: 16px;
  margin-bottom: 20px; }

/* line 892, static/scss/main.scss */
.sort-dropdown {
  margin-bottom: 20px; }

/* Estilo para paginación */
/* line 897, static/scss/main.scss */
.pagination {
  display: flex;
  justify-content: center;
  margin-top: 30px; }

/* line 903, static/scss/main.scss */
.pagination .page-item.active .page-link {
  background-color: #023668;
  border-color: #023668; }

/* line 908, static/scss/main.scss */
.pagination .page-link {
  color: #023668; }

/* line 913, static/scss/main.scss */
.breadcrumb {
  background-color: transparent;
  padding: 0.75rem 0;
  margin-bottom: 1rem;
  font-size: 14px; }

/* line 920, static/scss/main.scss */
.breadcrumb-item a {
  color: #999999; }

/* line 924, static/scss/main.scss */
.breadcrumb-item.active {
  color: #023668; }

/* line 928, static/scss/main.scss */
.property-detail-container {
  padding: 20px 0 40px; }

/* line 932, static/scss/main.scss */
.property-main-image {
  width: 1140px;
  height: 657px;
  border-radius: 10px;
  margin-bottom: 20px;
  object-fit: cover; }

/* line 940, static/scss/main.scss */
.property-detail-gallery {
  display: flex;
  gap: 10px;
  margin-bottom: 20px; }

/* line 946, static/scss/main.scss */
.gallery-thumb {
  width: 100px;
  height: 70px;
  border-radius: 5px;
  cursor: pointer;
  object-fit: cover; }

/* line 953, static/scss/main.scss */
.gallery-buttons-oficinas {
  display: flex;
  gap: 10px;
  margin-bottom: 25px; }

/* line 959, static/scss/main.scss */
.gallery-btn-oficinas {
  width: auto;
  /* Hug (114px) */
  height: auto;
  /* Hug (44px) */
  border-radius: 10px;
  border: .5px solid  #008EFF;
  padding: 10px 14px;
  background-color: #DDEFFF;
  color: #008EFF;
  font-size: 18px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 976, static/scss/main.scss */
.gallery-btn-oficinas:hover {
  background-color: #f0f5ff; }

/* line 980, static/scss/main.scss */
.gallery-btn-oficinas.active {
  background-color: #023668;
  color: white; }

/* Botones de navegación de la galería */
/* line 986, static/scss/main.scss */
.gallery-nav-btn-oficinas {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 3;
  transition: all 0.3s ease; }

/* line 1002, static/scss/main.scss */
.gallery-nav-btn-oficinas:hover {
  background-color: #B3DFFF;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); }

/* line 1007, static/scss/main.scss */
.prev-btn {
  left: 20px; }

/* line 1011, static/scss/main.scss */
.next-btn {
  right: 20px; }

/* line 1015, static/scss/main.scss */
.gallery-nav-btn-oficinas i {
  color: #023668;
  font-size: 18px; }

/* line 1019, static/scss/main.scss */
.property-title-oficinas {
  color: #023668;
  font-weight: 700;
  margin-bottom: 5px; }

/* line 1025, static/scss/main.scss */
.property-location-oficinas {
  color: #999;
  font-size: 14px;
  margin-bottom: 15px; }

/* line 1031, static/scss/main.scss */
.property-price-oficinas {
  font-size: 24px;
  font-weight: 700;
  color: #FFD65A;
  margin-bottom: 20px; }

/* line 1038, static/scss/main.scss */
.property-features-oficinas {
  display: flex;
  gap: 15px;
  margin-bottom: 20px;
  flex-wrap: wrap; }

/* line 1045, static/scss/main.scss */
.feature-item-oficinas {
  display: flex;
  align-items: center;
  color: #999999;
  font-size: 16px;
  font-family: "Lato Regular"; }

/* line 1053, static/scss/main.scss */
.feature-item i {
  margin-right: 5px;
  color: #023668; }

/* line 1058, static/scss/main.scss */
.property-description-oficinas {
  color: #1a1a1a;
  margin-bottom: 30px;
  font-size: 18px;
  font-family: "Lato Regular"; }

/* line 1065, static/scss/main.scss */
.property-section-oficinas {
  margin-bottom: 30px; }

/* line 1069, static/scss/main.scss */
.section-title-oficinas {
  color: #023668;
  font-weight: 700;
  font-size: 18px; }

/* line 1075, static/scss/main.scss */
.feature-list-oficinas {
  list-style: none;
  padding-left: 0; }

/* line 1080, static/scss/main.scss */
.feature-list-oficinas li {
  padding: 8px 0;
  display: flex;
  color: #023668; }

/* line 1086, static/scss/main.scss */
.feature-list-oficinas li i {
  color: #023668; }

/* Panel lateral de consulta */
/* line 1091, static/scss/main.scss */
.inquiry-panel {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 20px;
  margin-bottom: 20px; }

/* line 1099, static/scss/main.scss */
.inquiry-title {
  color: #023668;
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 18px; }

/* line 1106, static/scss/main.scss */
.inquiry-form textarea {
  margin-bottom: 15px;
  border-radius: 10px;
  resize: none;
  min-height: 120px; }

/* line 1113, static/scss/main.scss */
.inquiry-form .form-check {
  margin-bottom: 15px; }

/* line 1117, static/scss/main.scss */
.action-button-oficinas {
  display: block;
  width: 100%;
  padding: 12px;
  text-align: center;
  border-radius: 50px;
  margin-bottom: 10px;
  transition: all 0.3s;
  font-weight: 500; }

/* line 1128, static/scss/main.scss */
.btn-primary-outline {
  background-color: transparent;
  color: #023668;
  border: 1px solid #023668; }

/* line 1134, static/scss/main.scss */
.btn-primary {
  background-color: #023668;
  color: white;
  border: 1px solid #023668; }

/* line 1140, static/scss/main.scss */
.btn-whatsapp {
  background-color: #25D366;
  color: white;
  border: 1px solid #25D366; }

/* line 1146, static/scss/main.scss */
.btn-primary:hover {
  background-color: #01285a; }

/* line 1150, static/scss/main.scss */
.btn-primary-outline:hover {
  background-color: #f8f9fa; }

/* line 1154, static/scss/main.scss */
.btn-whatsapp:hover {
  background-color: #128C7E; }

/* line 1158, static/scss/main.scss */
.btn-icon {
  margin-right: 8px; }

/* line 1162, static/scss/main.scss */
.reference-code {
  margin-top: 20px;
  font-size: 14px;
  color: #999; }

/* Sección de Sitios de Interés */
/* Sección de Sitios de Interés */
/* line 1170, static/scss/main.scss */
.interest-section {
  padding: 30px 0;
  margin-top: 30px;
  border-radius: 8px;
  margin-bottom: 30px; }

/* line 1177, static/scss/main.scss */
.section-title-interes {
  color: #023668;
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center; }

/* Carrusel de sitios de interés */
/* line 1187, static/scss/main.scss */
.interest-carousel {
  display: flex;
  align-items: center;
  width: 100%;
  position: relative; }

/* line 1194, static/scss/main.scss */
.carousel-control {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: white;
  border: 1px solid #E0E0E0;
  color: #023668;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  transition: all 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); }

/* line 1210, static/scss/main.scss */
.carousel-control:hover {
  background-color: #023668;
  color: white; }

/* line 1215, static/scss/main.scss */
.interest-cards {
  display: flex;
  gap: 20px;
  overflow-x: hidden;
  scroll-behavior: smooth;
  padding: 10px 5px;
  width: 100%; }

/* line 1224, static/scss/main.scss */
.interest-card {
  min-width: 500px;
  border-radius: 10px;
  overflow: hidden;
  background-color: #DDEFFF;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  flex: 1; }

/* line 1233, static/scss/main.scss */
.interest-image {
  width: 100%;
  height: 355px;
  padding: 15px;
  object-fit: cover; }

/* line 1240, static/scss/main.scss */
.interest-card-content {
  padding: 15px; }

/* line 1244, static/scss/main.scss */
.interest-title {
  font-weight: 600;
  color: #023668;
  margin-bottom: 8px;
  font-size: 21px; }

/* line 1251, static/scss/main.scss */
.interest-subtitle {
  color: #023668;
  font-size: 15px;
  margin-bottom: 0;
  display: flex;
  align-items: center; }

/* line 1259, static/scss/main.scss */
.interest-subtitle i {
  color: #FFD65A;
  margin-right: 5px; }

/* Sección de propiedades similares */
/* line 1265, static/scss/main.scss */
.similar-properties-oficinas {
  padding: 40px 0; }

/* line 1269, static/scss/main.scss */
.similar-title-oficinas {
  color: #023668;
  font-weight: 700;
  margin-bottom: 30px;
  text-transform: uppercase;
  font-size: 20px; }

/* line 1277, static/scss/main.scss */
.property-card-oficinas {
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  height: 100%;
  transition: transform 0.3s, box-shadow 0.3s; }

/* line 1286, static/scss/main.scss */
.property-card-oficinas:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); }

/* line 1291, static/scss/main.scss */
.property-card-img-oficinas {
  width: 400px;
  height: 264px;
  object-fit: cover;
  padding: 10px; }

/* line 1298, static/scss/main.scss */
.property-card-body-oficinas {
  padding: 15px; }

/* line 1302, static/scss/main.scss */
.property-card-title-oficinas {
  font-size: 16px;
  font-weight: 600;
  color: #023668;
  margin-bottom: 5px; }

/* line 1309, static/scss/main.scss */
.property-card-price-oficinas {
  font-size: 18px;
  font-weight: 700;
  color: #FFD65A;
  margin-bottom: 10px; }

/* line 1316, static/scss/main.scss */
.property-card-features-oficinas {
  display: flex;
  gap: 20px;
  font-size: 13px;
  color: #999999; }

/* Responsive */
@media (max-width: 992px) {
  /* line 1325, static/scss/main.scss */
  .inquiry-panel {
    margin-top: 30px; } }

/* Feature icons and spacing helpers (moved from inline base.html)
   Centralized styles for feature lists and inline feature chips.
   Use $primary-color to keep color consistent with theme. */
/* line 1333, static/scss/main.scss */
.feature-item i,
.feature-list-oficinas li i,
.property-card-features-oficinas i {
  margin-right: 0.45rem; }

/* line 1340, static/scss/main.scss */
.feature-list-oficinas li {
  display: flex;
  align-items: center;
  gap: 0.5rem; }

/* line 1346, static/scss/main.scss */
.property-features-oficinas .feature-item {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-right: 1rem; }

/* line 1353, static/scss/main.scss */
.feature-list-oficinas li strong {
  margin-right: 0.25rem; }

@media (max-width: 768px) {
  /* line 1358, static/scss/main.scss */
  .property-features {
    flex-direction: column;
    gap: 10px; }
  /* line 1363, static/scss/main.scss */
  .property-features .feature-item {
    margin-bottom: 5px; } }

/* line 1368, static/scss/main.scss */
.fotos-container {
  background-color: white;
  border-radius: 20px;
  padding: 10px 19px;
  max-width: 100%;
  margin: 0 auto; }

/* line 1376, static/scss/main.scss */
.fotos-item {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
  transition: all 0.3s ease; }

/* line 1383, static/scss/main.scss */
.fotos-item img {
  width: 100%;
  height: auto;
  max-height: 635px;
  object-fit: cover;
  border-radius: 10px; }

/* Optional hover effect */
/* line 1392, static/scss/main.scss */
.fotos-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); }

/* Media queries for responsive behavior */
@media (max-width: 1199.98px) {
  /* line 1398, static/scss/main.scss */
  .fotos-container {
    max-width: 960px;
    padding: 8px 15px; }
  /* line 1403, static/scss/main.scss */
  .fotos-item img {
    max-height: 500px; } }

@media (max-width: 991.98px) {
  /* line 1409, static/scss/main.scss */
  .fotos-container {
    max-width: 720px;
    padding: 6px 12px; }
  /* line 1414, static/scss/main.scss */
  .fotos-item img {
    max-height: 400px; } }

@media (max-width: 767.98px) {
  /* line 1420, static/scss/main.scss */
  .fotos-container {
    max-width: 540px;
    padding: 5px 10px;
    border-radius: 15px; }
  /* line 1426, static/scss/main.scss */
  .fotos-item {
    margin-bottom: 10px; }
  /* line 1430, static/scss/main.scss */
  .fotos-item img {
    max-height: 350px;
    border-radius: 8px; } }

@media (max-width: 575.98px) {
  /* line 1437, static/scss/main.scss */
  .fotos-container {
    max-width: 100%;
    padding: 5px 8px;
    border-radius: 12px; }
  /* line 1443, static/scss/main.scss */
  .fotos-item {
    margin-bottom: 8px; }
  /* line 1447, static/scss/main.scss */
  .fotos-item img {
    max-height: 300px;
    border-radius: 6px; } }
