/* ============================
   Tipografías
   ============================ */
.font-sans-serif {
  /* Fuente principal con Raleway y fallback a sistemas */
  font-family: Raleway, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Helvetica Neue", Arial, sans-serif,
               "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.font-base {
  /* Fuente base con Roboto y fallback */
  font-family: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI",
               "Helvetica Neue", Arial, sans-serif,
               "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.font-lato {
  /* Fuente alternativa con Lato */
  font-family: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Helvetica Neue", Arial, sans-serif,
               "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 0.9rem; /* tamaño ajustado */
}

/* ============================
   Branding y colores
   ============================ */
.navbar-brand-i1 {
  /* Estilo para marca en navbar */
  background-color: rgba(205, 1, 57, 0.7); /* rojo semitransparente */
  letter-spacing: 0;
  padding: 0.25rem 0.625rem;
  margin: 0 0.3125rem;
  border-radius: 0.125rem;
  display: inline-block;
}

.text-inmobired {
  /* Color corporativo rojo */
  color: #CD0139 !important;
}

.bg-holder.overlay-3:before {
  /* Overlay negro semitransparente */
  background: rgba(0, 0, 0, 0.15);
}

/* ============================
   Modales
   ============================ */
.modal-header {
  background-color: #000; /* encabezado negro */
}
.modal-content {
  overflow: hidden; /* oculta desbordes */
}

/* ============================
   Listas con íconos check
   ============================ */
.style-check-green li,
.style-check-inmobired li {
  position: relative;
  list-style-type: none;
  padding-left: .25rem;
}

.style-check-green li:before {
  /* Check verde antes de cada ítem */
  content: url("data:image/svg+xml,...fill='%2328a745'...");
  position: absolute;
  left: -1rem;
  top: 0.0625rem;
  width: 1rem;
}

.style-check-inmobired li:before {
  /* Check rojo corporativo antes de cada ítem */
  content: url("data:image/svg+xml,...fill='%23CD0139'...");
  position: absolute;
  left: -1rem;
  top: 0.0625rem;
  width: 1rem;
}

/* ============================
   Player fullscreen
   ============================ */
.js-player-fullscreen:fullscreen {
  background-color: #dc3545 !important; /* rojo en fullscreen */
}
.js-player-fullscreen:-webkit-full-screen {
  background-color: #dc3545 !important;
}

/* ============================
   Vimeo background video
   ============================ */
.vimeo-wrapper {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  z-index: -1;
  pointer-events: none;
  overflow: hidden;
}
.vimeo-wrapper iframe {
  /* Ajuste para mantener proporción 16:9 */
  width: 100vw;
  height: 56.25vw;
  min-height: 100vh;
  min-width: 177.77vh;
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
}

/* ============================
   Texto destacado
   ============================ */
.destacar-texto:hover {
  color: black !important;
}

/* ============================
   Formularios y stepwizard
   ============================ */
.form-control {
  height: 37px;
}
.stepwizard {
  display: table;
  width: 100%;
  position: relative;
}
.stepwizard-row {
  display: table-row;
}
.stepwizard-step {
  display: table-cell;
  text-align: center;
  position: relative;
}
.stepwizard-step p {
  margin-top: 10px;
}
.stepwizard-step button[disabled] {
  opacity: 1 !important;
}
.stepwizard-row:before {
  /* Línea horizontal del wizard */
  content: " ";
  position: absolute;
  top: 14px;
  width: 100%;
  height: 1px;
  background-color: #ccc;
}
.btn-circle {
  /* Botón circular para pasos */
  width: 30px; height: 30px;
  text-align: center;
  padding: 6px 0;
  font-size: 12px;
  border-radius: 15px;
}
.btn-outline-dark {
  background-color: #fff;
}
.btn-dark {
  background-color: #000;
}
.pointer { cursor: pointer; }

/* ============================
   Filtros e iconos
   ============================ */
.filter-white {
  /* Inversión de color para iconos */
  filter: invert(93%) sepia(93%) saturate(0%) hue-rotate(217deg) brightness(105%) contrast(109%);
}

/* ============================
   Utilidades layout
   ============================ */
.border-dashed-start {
  border-left: 1px dashed #9ba0a7 !important;
}
.border-end-0 {
  border-right: 0 !important;
}
.start-0 {
  left: 0 !important;
}
.d-flex {
  display: flex !important;
}
.flex-1 {
  flex: 1 !important;
}
.text-md-end {
  text-align: right !important;
}

/* ============================
   Responsive
   ============================ */
@media (min-width: 768px) {
  .process-devider-small {
    width: calc(100% - 3.75rem);
  }
}