/* ==========================================================================
   broker2broker.mx — Estilos PÁGINAS PÚBLICAS (public.css)
   Bootstrap 4 + Paper Kit 2 PRO
   Cargado por: index.php (raíz), registro.php, ingresar.php, precios.php, etc.

   ORGANIZACIÓN POR SECCIONES (el orden de las reglas se preserva para no
   alterar el cascade/especificidad). Ámbito: [GENERAL] = todas las públicas ·
   [MÓDULO] = componente reutilizable · [PÁGINA] = solo las vistas indicadas:
     1.  BASE / GLOBAL                                    [GENERAL]
     2.  BOTONES APP STORE                                [MÓDULO] index.php
     3.  NAVBAR (responsive <=991px)                      [GENERAL]
     4.  BACKGROUNDS / PAGE HEADER                        [GENERAL]
     5.  SNOW / COUNTDOWN / RETURN-TO-TOP                 [GENERAL]
     6.  BRANDING (logo, tipografías, navbar transparente) [GENERAL] + .chatbot-img (index)
     7.  TARJETAS DE PROPIEDAD (.property-broker)         [MÓDULO] tarjetas públicas
     8.  FORMULARIOS / REGISTRO                           [PÁGINAS] registro/ingresar/recuperar
     9.  ANIMACIONES                                      [GENERAL]
     10. GRID (columns)                                   [GENERAL]
     11. PROPUESTA / LOGIN-REGISTER / PRECIOS             [PÁGINAS] precios/ingresar/registro
     12. INFO PAGES / FOOTER / TÉRMINOS                   [PÁGINAS] aviso/términos + footer
     13. APP / PROMO                                      [PÁGINA] index.php
     14. RESPONSIVE (<=575px)                             [GENERAL]
   ========================================================================== */


/* ==========================================================================
   1. BASE / GLOBAL
       → [GENERAL] body/tipografía base de TODAS las públicas
   ========================================================================== */
body {
  font-weight: 400 !important;
  background: white !important;
}

a:active,
a:focus,
a:visited {
  outline: none;
  border: none;
  outline-style: none;
  -moz-outline-style: none;
}

.gradient-text-nexus-6 {
  font-weight: 600 !important;
  background: #D27F27;
  background: radial-gradient(ellipse farthest-corner at center center, #D27F27 0%, #B63430 100%, #C75133 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.page-header {
  background-color: white !important;
}

.text-white a {
  color: #FFFFFF !important;
}

.info-horizontal {
  margin-bottom: 30px;
}

.msg-location {
  font-weight: 100;
  margin-top: 10px;
}


/* ==========================================================================
   2. BOTONES APP STORE
       → [MÓDULO] botones de descarga de la app — index.php
   ========================================================================== */
.button-store {
  border-radius: 10px;
  border-color: white;
  width: 180px;
  height: 60px;
  display: block;
  margin: 25px auto;
}

#boton-registro {
  margin: 35px 0 25px 0;
}

#GooglePlay,
#AppleStore {
  background-color: white !important;
  border-color: white !important;
  filter: grayscale(100%) !important;
  opacity: 80% !important;
}

.button-store a {
  border-radius: 10px;
  border-color: white;
}

.button-google {
  background-image: url("../img/Google-Play-Red.png");
  background-size: 100% 100%;
}

.button-apple {
  background-image: url("../img/Apple-Store-Red.png");
  background-size: 100% 100%;
}


/* ==========================================================================
   3. NAVBAR (responsive <=991px)
       → [GENERAL] menu-public.php en todas las públicas
   ========================================================================== */
@media screen and (max-width: 991px) {
  .navbar-collapse {
    padding-top: 10px !important;
    padding-left: 15px !important;
    border-left: 1px solid #CCCCCC !important;
  }

  .navbar-collapse::after {
    background: #f9f9f9 !important;
  }

  .navbar-nav {
    background: #f9f9f9 !important;
  }

  .navbar-toggler-bar {
    background: #66615b !important;
  }

  .navbar-brand {
    color: #66615b !important;
  }

  .white {
    color: #FFFFFF !important;
  }

  .back-white {
    background: #FFFFFF !important;
  }

  .footer nav>ul>li {
    margin: 0 !important;
  }

  .card-register {
    margin-bottom: 40px !important;
  }
}


/* ==========================================================================
   4. BACKGROUNDS / PAGE HEADER (responsive por breakpoint 1280px)
       → [GENERAL] cabeceras con imagen — index, precios, registro, ingresar
   ========================================================================== */
@media (max-width: 1280px) {
  .back-app {
    background-image: url("../img/geometry.png");
    background-repeat: repeat;
    background-size: unset;
  }

  .filter {
    display: none;
  }

  .message-app {
    color: #f5593d;
  }

  .text-gray-app,
  .text-gray-app a {
    color: #66615b;
  }

  .login {
    font-size: 1.3em !important;
  }

  .login a {
    color: #f5593d !important;
  }
}

@media (min-width: 1280px) {
  .back-ingresar {
    background-image: url("../img/sections/background_4.jpg") !important;
  }

  .back-registro {
    background-image: url("../img/sections/background_3.jpg") !important;
  }

  .back-recuperar {
    background-image: url("../img/sections/background_7.jpg") !important;
  }

  .back-recover {
    background-image: url("../img/sections/background_9.jpg") !important;
  }

  .back-new-pass {
    background-image: url("../img/sections/background_10.jpg") !important;
  }

  .back-verify {
    background-image: url("../img/sections/background_6.jpg") !important;
  }

  .message-app {
    color: #FFFFFF !important;
  }

  .text-gray-app,
  .text-gray-app a {
    color: #FFFFFF !important;
  }

  .filter {
    display: inline !important;
  }
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
p,
.navbar,
.brand,
a,
.td-name,
td,
button,
input,
select,
textarea {
  font-weight: 400 !important;
}


/* ==========================================================================
   5. SNOW / COUNTDOWN / RETURN-TO-TOP
       → [GENERAL] elementos flotantes en todas las públicas
   ========================================================================== */
/*Snow*/
#sky {
  position: absolute !important;
  z-index: 3 !important;
}

/*countdown*/
.countdown li {
  display: inline-block;
  font-size: 1.2em;
  list-style-type: none;
  padding: 1em;
  text-transform: uppercase;
  font-weight: 500 !important;
}

.countdown li span {
  display: block;
  font-size: 1.6rem;
}

.countdown ul {
  margin: 0 auto !important;
}

@media (max-width: 767px) {
  .logo {
    max-width: 85% !important;
  }

  .countdown li {
    font-size: .9em;
    padding: .5em;
  }

  .countdown li span {
    display: block;
    font-size: 1.3rem;
  }

  .countdown ul {
    padding-inline-start: 5px !important;
  }
}

/*Return to Top*/
/* right:27px alinea el CENTRO de este botón (50px) con el de la burbuja de Valeria
   (#valeria-bubble: 64px, right:20px -> centro a 52px del borde). Así ambos quedan
   sobre el mismo eje vertical del lado derecho. */
#return-to-top {
  z-index: 99;
  position: fixed;
  bottom: 100px;
  right: 27px;
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.7);
  width: 50px;
  height: 50px;
  display: block;
  text-decoration: none;
  -webkit-border-radius: 35px;
  -moz-border-radius: 35px;
  border-radius: 35px;
  display: none;
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#return-to-top i {
  color: #fff;
  margin: 0;
  position: relative;
  font-size: 19px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#return-to-top:hover {
  background: rgba(0, 0, 0, 0.9);
}

#return-to-top:hover i {
  color: #fff;
  top: -8px;
}

/* En móvil la burbuja de Valeria baja a 56px con right:14px (centro a 42px),
   así que este botón se recentra a 17px para seguir alineado. */
@media (max-width: 480px) {
  #return-to-top {
    right: 17px;
  }
}


/* ==========================================================================
   6. BRANDING (logo, tipografías, navbar transparente)
       → [GENERAL] identidad + [PÁGINA] .chatbot-img de la sección Valeria (index.php)
   ========================================================================== */
.logo {
  max-width: 40%;
  padding-bottom: 15px;
}

.chatbot-img {
  max-width: 80%;
  border-radius: 16px;
  box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0 rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.transparente .nav-link,
.btn {
  font-weight: 600 !important;
  letter-spacing: 1px !important;
}

.transparente .nav-link .nc-icon {
  font-size: 14px !important;
}

.asesor {
  font-weight: 500;
}

.font-broker {
  font-family: 'Turret Road', Arial, Helvetica, sans-serif !important;
  text-transform: lowercase !important;
  letter-spacing: 4px !important;
  font-weight: bold !important;
}

.landing-page .section {
  padding: 30px 0 !important;
}

.landing-page .modal-body {
  padding: 10px 30px !important;
}

.icon .fa {
  width: 100% !important;
}

@media (max-width: 767px) {
  .view-index {
    padding-top: 15% !important;
  }

  .fix-head {
    margin-top: 20% !important;
  }

  .navbar.navbar-transparent {
    padding-top: 0px !important;
  }

  .property-broker h1 {
    font-size: 20px !important;
    margin-top: 0px !important;
    line-height: 1.5em;
  }
}


/* ==========================================================================
   7. TARJETAS DE PROPIEDAD (.property-broker)
       → [MÓDULO] tarjetas de inmueble públicas — index, profile, top-brokers, solicitudes-brokers
   ========================================================================== */
/*Propiedades*/
.property-broker .card {
  font-size: 12px !important;
}

.property-broker {
  font-weight: 600;
}

.property-broker h1 {
  font-size: 30px;
  font-weight: 300 !important;
}

.view-index {
  padding-top: 2%;
}

.property-broker .item {
  margin: 0 8%;
}

.property-broker .owl-dots,
.owl-nav {
  display: none !important;
}

/* Top right text */
.property-broker .top-right {
  position: absolute;
  top: 5px;
  right: 10px;
  color: white !important;
}

.property-broker .precio,
.card-title a,
.card-description {
  color: #666 !important;
  font-weight: 500;
  text-align: left !important;
}

.property-broker .card-description {
  min-height: 85px;
  margin-top: 0px !important;
  font-size: 14px !important;
}

.property-broker .card-category {
  text-align: center;
  font-weight: 500;
}

.property-broker .card-footer,
.property-broker .card-footer a {
  font-weight: 600;
}

.property-broker .card-body {
  padding: 0 1rem !important;
}

.property-broker .card .fa-whatsapp {
  font-size: 20px !important;
}

.property-broker .card .fa-map-marker {
  font-size: 16px !important;
}

.property-broker .avatar {
  width: 40px !important;
  height: 40px !important;
  display: inline !important;
}

.property-broker.btn {
  padding: 0.5rem 10px !important;
}

.property-broker .card .author {
  margin-top: 5px;
  width: 100%;
}

.property-broker .broker-name {
  float: left;
  text-align: left;
}

.property-broker .broker-name a {
  font-weight: 500 !important;
}

.property-broker .whatsapp {
  float: right;
  margin-top: 7px;
}

.property-broker .whatsapp a {
  color: #25D366 !important;
  font-weight: 500 !important;
}

.property-broker .whatsapp a:hover {
  color: #f5593d !important;
  font-weight: 500 !important;
}

.property-broker .stats,
.property-broker .stats a {
  margin-top: 0px !important;
  font-size: 14px !important;
  float: none !important;
}

.property-broker hr {
  margin-top: 0.4rem;
  margin-bottom: 0.4rem;
}

.property-broker .address {
  font-weight: 600 !important;
}

.property-broker .card-body a:hover {
  color: #fbc658 !important;
}

.property-broker h3 {
  margin-top: 0px !important;
}

.card.card-blog {
  margin-top: 35px !important;
}

.requerimientos {
  color: #999999;
}

#countdown {
  color: #666666;
  max-width: 140px;
  font-size: 16px;
  margin: 20px auto;
}


/* ==========================================================================
   8. FORMULARIOS / REGISTRO
       → [PÁGINAS] registro.php, ingresar.php, recuperar-pass.php, verify/recover-whatsapp.php
   ========================================================================== */
/*Validate*/
.register-form {
  color: #66615b;
}

.register-form .error {
  color: #ffc107;
  font-weight: 500;
}

.register-form label {
  margin: 0 0 6px 0 !important;
}

.card-register {
  min-height: 120px !important;
}

.card>.card-title {
  padding: 0 !important;
}

.noti-gift .fa {
  min-width: 30px;
}

.noti-gift {
  line-height: 1.5rem;
  text-align: center;
  font-size: 95%;
}

#request,
#error {
  text-align: center;
}

.card-register .btn {
  margin-top: 10px !important;
}


/* ==========================================================================
   9. ANIMACIONES
       → [GENERAL] blink y transiciones reutilizables
   ========================================================================== */
/* Blink*/
@keyframes blinker {
  from {
    opacity: 1.0;
  }

  to {
    opacity: 0.0;
  }
}

.blink {
  text-decoration: blink;
  animation-name: blinker;
  animation-duration: 0.6s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
  -webkit-animation-name: blinker;
  -webkit-animation-duration: 0.6s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-direction: alternate;
}


/* ==========================================================================
   10. GRID (columns)  ·  [GENERAL] utilidades de columnas propias
   ========================================================================== */
@media only screen and (min-width: 64.0625em) {
  .large-12 {
    width: 100%;
  }
}

@media only screen and (min-width: 64.0625em) {

  .column,
  .columns {
    position: relative;
    padding-left: .9375rem;
    padding-right: .9375rem;
    float: left;
  }
}

@media only screen and (min-width: 40.0625em) {

  .column,
  .columns {
    position: relative;
    padding-left: .9375rem;
    padding-right: .9375rem;
    float: left;
  }
}

.column,
.columns {
  position: relative;
  padding-left: .9375rem;
  padding-right: .9375rem;
  float: left;
}

.column,
.columns {
  padding-left: .9375rem;
  padding-right: .9375rem;
  width: 100%;
  float: left;
}


/* ==========================================================================
   11. PROPUESTA / LOGIN-REGISTER / PRECIOS  ·  [PÁGINAS] precios.php, ingresar.php, registro.php
   ========================================================================== */
/*Propuesta*/
.propuesta h5 {
  font-size: 1.60em !important;
}

/*Login-Register*/
@media (max-width: 767px) {
  .full-screen.register-page .page-header .container {
    margin-top: 0 !important;
  }

  .margen-der {
    margin-right: 10%;
  }

  .noti-gift {
    font-size: .8rem;
  }
}

.fix-head {
  margin-top: 12%;
}

/*Precio*/
@media (max-width: 767px) {
  .pricing-5 {
    margin-top: 10% !important;
    margin-right: 3% !important;
  }
}

.pricing-5 .card-pricing {
  font-weight: 400 !important;
}

.pricing-5 .leyenda {
  font-size: 12px;
  color: #999;
}

.pricing-5 .card-pricing ul {
  max-width: 100% !important;
}

.pricing-5 {
  margin-top: 3%;
  padding: 60px 0 !important;
}

.pricing-5 .nav-item .nav-link {
  background-color: white;
}

.pricing-5 .nav-item .nav-link:hover {
  background-color: #F1F1F1 !important;
}

.pricing-5 .nav-item .nav-link.active:hover {
  background-color: #f5593d !important;
}

.card[data-color="primary"] {
  background: #51cbce;
}


/* ==========================================================================
   12. INFO PAGES / FOOTER / TÉRMINOS  ·  [PÁGINAS] aviso-de-privacidad.php, terminos-y-condiciones.php + footer general
   ========================================================================== */
/*Info Pages*/
.demo-footer a {
  margin: 0 10px;
}

.demo-footer a:hover {
  font-weight: 500;
}

/*Aviso de Privacidad - Términos y Condiciones*/
.terminos-privacidad p {
  line-height: 1.8rem !important;
  font-size: 14px !important;
  margin-bottom: 10px;
}

.terminos-privacidad ul {
  line-height: 1.8rem;
}


/* ==========================================================================
   13. APP / PROMO  ·  [PÁGINA] index.php — bloque de descarga de la app
   ========================================================================== */
/*APP*/
.app {
  position: relative;
  margin: 0;
  padding-bottom: 6rem;
  min-height: 100%;
}

.app .card {
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important;
}

.app .card-register {
  margin: auto;
  min-height: 360px;
  padding: 20px 10px;
}

.promo {
  position: fixed;
  top: auto;
  left: 1rem;
  right: auto;
  bottom: 1rem;
  margin-bottom: 0.5rem;
  min-width: 280px;
  max-width: 360px;
}

.promo .notice {
  padding: 0rem .5rem;
}

.promo h3 {
  margin-bottom: 1.0rem;
}

.promo p {
  margin-bottom: 0.5rem;
}

.promo .icon {
  font-size: 3.5rem;
}

.promo .btn a {
  color: white;
}

.promo .buen-fin {
  max-width: 40%;
  padding: 20px 0;
}


/* ==========================================================================
   14. RESPONSIVE (<=575px)  ·  [GENERAL] ajustes móviles finales
   ========================================================================== */
@media (max-width: 575px) {
  .button-store {
    width: 160px;
    height: 50px;
  }

  .countdown li {
    padding: 0.3em;
    font-size: 0.8em;
  }

  .countdown li span {
    font-size: 1.1rem;
  }

  .promo {
    min-width: 250px;
    max-width: 300px;
    left: 0.5rem;
    bottom: 0.5rem;
  }
}
