/* ============================================================
   RESET
   ============================================================ */
*, *::before, *::after {
    box-sizing: border-box;
    margin:     0;
    padding:    0;
}

/* ============================================================
   BASE
   ============================================================ */
html {
    scroll-behavior: smooth;
}
body {
    background-color: #fff;
}
ul, ol {
    padding-left: 0px !important;
}
ul {
    list-style-type: disc;
    padding-left:    20px;
}
ul li {
    margin-bottom: 6px;
    color:         #222;
}
.list-unstyled {
    padding-left: 0;
    list-style:   none;
}
.page-wrapper {
    overflow-x: hidden;
}
.mobile-input{
    font-size:16px;
}
body.modal-open{
    overflow:hidden !important;
    touch-action:none;
}
.modal{
    overflow-y:auto;
    position:fixed;
}
.modal-dialog{
    margin:1rem auto;
}
.modal-body{
    max-height:85vh;
    overflow-y:auto;
}
.modal input,
.modal select,
.modal textarea{
    font-size:16px;
}
/* ============================================================
   CONTAINER
   ============================================================ */
@media (min-width: 1200px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1480px !important;
    }
}

@media (max-width: 768px) {
    .mobile-input{
      font-size: 16px;
    }
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="number"],
    input[type="password"],
    select,
    textarea {
        font-size: 16px !important;
    }
}
/* ============================================================
   NAVBAR
   ============================================================ */
nav {
    top:             0;
    left:            0;
    right:           0;
    z-index:         1020 !important;
    background:      rgba(255, 255, 255, 1);
    backdrop-filter: blur(12px);
    border-bottom:   1px solid rgba(26, 122, 60, 0.08);
    padding:         0 5%;
    height:          100px;
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    box-shadow:      none !important;
}
.nav-logo {
    display:         flex;
    align-items:     center;
    gap:             10px;
    font-family:     Titillium Web;
    font-size:       20px;
    font-weight:     700;
    color:           var(--green);
    text-decoration: none;
}
.nav-right {
    display:     flex;
    align-items: center;
    gap:         14px;
}
.navbar-brand {
    font-size:   1.5rem;
    font-weight: bold;
    color:       #0047ff !important;
}
.sticky-top {
    position: static !important;
}
.shadow-sm {
    box-shadow: none !important;
}

/* ============================================================
   STICKY FORM
   ============================================================ */
.sticky-form {
    position: sticky;
    top:      4rem;
}

/* ============================================================
   GALERÍA
   ============================================================ */
.gallery img {
    width:        100%;
    height:       100%;
    object-fit:   cover;
    border-radius: .5rem;
}
.gallery .col-6 {
    padding: 4px;
}
.property-carousel img {
    height:        420px;
    object-fit:    cover;
    border-radius: .5rem;
}
.property-gallery img {
    width:         100%;
    height:        200px;
    object-fit:    cover;
    border-radius: 8px;
    cursor:        pointer;
    transition:    transform 0.3s;
}
.property-gallery img:hover {
    transform: scale(1.05);
}
.property-card img {
    height:        200px;
    object-fit:    cover;
    border-radius: .5rem .5rem 0 0;
}

/* ============================================================
   HERO SECTION
   ============================================================ */
.hero-section {
    position:      relative;
    height:        40vh;
    overflow:      hidden;
    border-radius: 8px;
}
.hero-image {
    width:            100%;
    height:           100%;
    object-fit:       cover;
    object-position:  center;
}
.logo-overlay {
    position:         absolute;
    top:              20px;
    left:             20px;
    background-color: rgba(255, 255, 255, 0.8);
    padding:          10px 15px;
    border-radius:    5px;
    display:          flex;
    align-items:      center;
    gap:              10px;
    font-weight:      bold;
    z-index:          10;
}
.icon-overlay {
    position:         absolute;
    bottom:           20px;
    left:             20px;
    background-color: rgba(0, 0, 0, 0.6);
    padding:          10px 15px;
    border-radius:    5px;
    display:          flex;
    gap:              15px;
    color:            white;
    font-size:        1.2rem;
    z-index:          10;
}
.icon-overlay i {
    cursor: pointer;
}

/* ============================================================
   IMÁGENES PEQUEÑAS
   ============================================================ */
.small-image-container {
    height:        20vh;
    overflow:      hidden;
    display:       flex;
    border-radius: 8px;
}
.small-image {
    width:           100%;
    height:          100%;
    object-fit:      cover;
    object-position: center;
}
.small-image-button-container {
    position: relative;
}
.right-images-grid .row {
    height:        100%;
    align-content: space-between;
}

/* ============================================================
   BOTONES OVERLAY
   ============================================================ */
.btn-overlay {
    position: absolute;
    bottom:   10px;
    right:    30px;
}
.view-all-button {
    position:         absolute;
    bottom:           15px;
    right:            15px;
    background-color: rgba(0, 0, 0, 0.7);
    color:            white;
    padding:          8px 15px;
    border-radius:    5px;
    text-decoration:  none;
    font-size:        0.9rem;
    display:          flex;
    align-items:      center;
    z-index:          10;
}
.view-all-button i {
    margin-left: 5px;
}

/* ============================================================
   CONTADOR DE FOTOS
   ============================================================ */
.photo-count {
    position:      absolute;
    bottom:        10px;
    left:          10px;
    background:    rgba(0, 0, 0, 0.7);
    color:         #fff;
    font-size:     0.85rem;
    border-radius: .25rem;
    padding:       2px 8px;
    gap:           4px;
}
.texto-camara {
    font-family: AvenirLTStd-Roman;
    font-size:   12px;
    font-style:  normal;
    font-weight: 400;
}
.texto-verfotos {
    font-family: AvenirLTStd-Roman;
    font-size:   13px;
    font-style:  normal;
    font-weight: 400;
    color:       #000;
}

/* ============================================================
   CONTENEDORES PRINCIPALES
   ============================================================ */
.main-container {
    margin-bottom: 20px;
    margin-top:    8px;
}
.container-fecha-publi {
    margin-top:  20px;
    font-size:   13px;
    color:       #595959;
    font-family: AvenirLTStd-Roman, sans-serif;
}

/* ============================================================
   INFORMACIÓN DE PROPIEDAD
   ============================================================ */
.property-info h2 {
    font-size:   1.6rem;
    font-weight: bold;
}
.text-primer-titulo {
    color:       #454545 !important;
    font-family: samsungsharpsans-bold !important;
    font-size:   28px !important;
    font-style:  normal !important;
    font-weight: 400 !important;
}
.title-cabeza-detalles {
    font-size:      20px !important;
    font-weight:    500 !important;
    font-family:    samsungsharpsans-bold !important;
    color:          #454545 !important;
    letter-spacing: 1.1px;
}
.etiquetas-propiedades {
    margin: 10px 0 12px;
}
.labels-stado-propiedad {
    line-height:      11px;
    font-weight:      500;
    margin:           0;
    text-transform:   uppercase;
    color:            #fff;
    background-color: rgba(0, 0, 0, 0.65);
    border-radius:    2px;
    font-size:        12px;
    padding:          7px 10px 6px;
    margin-right:     5px;
}
.mostrar-precio {
    display: none;
}

/* ============================================================
   TEXTOS Y TIPOGRAFÍA
   ============================================================ */
.text-success {
    font-family:  samsungsharpsans-bold, sans-serif !important;
    color:        #053220 !important;
    font-style:   normal !important;
    font-size:    35px;
    font-weight:  500 !important;
    line-height:  30px;
}
.price {
    font-size:   28px;
    font-weight: bold;
    color:       #0d3b66;
}
.location {
    font-size: 15px;
    color:     #555;
}
.txt-fecha {
    font-size: 12px;
    color:     #575151;
}
.txt-descripcion {
    font-size:   20px;
    color:       #454545;
    font-weight: 700;
}
.txt-detalles {
    font-size:      16px;
    color:          #575151;
    text-align:     justify;
    font-style:     normal;
    font-weight:    400;
    line-height:    22px;
    overflow-wrap:  anywhere;
    margin-top:     20px;
    font-family:    AvenirLTStd-Roman;
}
.text-medidas {
    color:         #454545;
    font-family:   samsungsharpsans-bold;
    font-size:     1rem;
    margin-bottom: 12.49px;
}
.text-xl {
    color:       #454545 !important;
    font-family: samsungsharpsans-bold !important;
    font-size:   20px !important;
    font-style:  normal !important;
    font-weight: 400 !important;
    line-height: 1.75rem;
}
.texto-muted {
    color:       #5c6368;
    font-size:   15px;
    font-weight: 300 !important;
    font-family: AvenirLTStd-Roman;
}
.texto-sub-titulo-detalles {
    font-family: AvenirLTStd-Roman !important;
    color:       rgba(33, 37, 41, 0.75);
    font-size:   13px;
}
.texto-altas {
    font-family: samsungsharpsans-bold;
    font-size:   15px !important;
}
.texto-preview {
    font-size:   15px;
    text-align:  justify;
    font-family: AvenirLTStd-Roman;
    font-style:  normal;
    font-weight: 400;
    line-height: 22px;
}
.texto-resto {
    font-size:   14px;
    text-align:  justify;
    font-family: AvenirLTStd-Roman;
    font-style:  normal;
    font-weight: 400;
    line-height: 22px;
}
.text-ver-mas {
    color:          #d49b2d;
    font-size:      15px;
    font-weight:    500;
    line-height:    22px;
    letter-spacing: .161px;
    cursor:         pointer;
    font-family:    AvenirLTStd-Roman;
}
.txt-circle {
    font-family:  samsungsharpsans-bold, sans-serif !important;
    color:        #d49b2d !important;
    font-style:   normal !important;
    font-size:    18px;
    font-weight:  600 !important;
    line-height:  10px;
}

/* ============================================================
   BADGES E INFO
   ============================================================ */
.info-badge {
    background:    rgba(210, 210, 214, 0.8);
    color:         #000;
    font-family:   AvenirLTStd-Book;
    font-size:     14px !important;
    font-style:    normal;
    font-weight:   500;
    border-radius: 40px;
    padding:       8px 15px;
    display:       inline-flex;
    align-items:   center;
    gap:           6px;
    margin:        5px;
}
.feature-box {
    border:        1px solid #eaeaea;
    border-radius: .75rem;
    padding:       .75rem;
    text-align:    center;
    background:    #fff;
}
.feature-box i {
    font-size: 1.4rem;
    color:     #0047ff;
}
.feature-box strong {
    display:    block;
    font-size:  1.1rem;
    margin-top: .3rem;
}

/* ============================================================
   SEPARADORES Y LÍNEAS
   ============================================================ */
hr.separator {
    margin: 12px 0;
    color:  #CCC;
}
.title-line {
    border-bottom:  1px solid #C8C8C8;
    padding-bottom: 12px;
}
.divider {
    border-top: 1px solid #e5e5e5;
    margin:     15px 0;
}
.border-secondary {
    border-color: #fff !important;
    border-top:   1px solid;
    opacity:      .25;
    margin:       1rem 0;
}

/* ============================================================
   TARJETAS DE CONTACTO
   ============================================================ */
.card-contacto-propiedad {
    padding:          10px;
    border:           1px solid #a58a56;
    border-radius:    12px;
}
.img-panel-derecho{
    width: 50px;
    height: 50px;
    object-fit: cover;
}
.info-card {
    border-radius:    10px;
    padding:          20px 25px;
    font-family:      AvenirLTStd-Roman;
    color:            #333;
    border:           1px solid #E3E2E2;
}
.card-minipropiedades {
    padding:          8px 8px 12px !important;
    background-color: #f6f8fa !important;
}
.card-img-border {
    border-radius: 10px !important;
}
.card-title-propiedadesmas {
    font-family:    AvenirLTStd-Roman;
    font-size:      14px !important;
    font-style:     normal;
    font-weight:    400;
    letter-spacing: .138px;
    color:          #454545;
    line-height:    18px;
}
.card-text-propiedadesmas {
    font-family:    AvenirLTStd-Roman;
    font-size:      14px !important;
    font-style:     normal;
    font-weight:    400;
    letter-spacing: .138px;
    color:          #454545;
    line-height:    18px;
}

/* ============================================================
   INFO SECTION
   ============================================================ */
.info-section {
    display:       flex;
    align-items:   flex-start;
    margin-bottom: 20px;
}
.info-section i {
    color:        #1a7f4c;
    font-size:    1.4rem;
    margin-right: 12px;
    margin-top:   3px;
}
.info-section h6 {
    font-weight:   600;
    margin-bottom: 4px;
    color:         #1a1a1a;
}
.info-section p {
    font-size:     0.95rem;
    margin-bottom: 0;
    color:         #555;
}

/* ============================================================
   AGENTE
   ============================================================ */
.company-logo {
    width:      60px;
    height:     60px;
    object-fit: cover;
}
.texto-titulo-agente {
    margin:         0;
    color:          #29292C;
    font-family:    samsungsharpsans-bold !important;
    font-size:      16px;
    font-style:     normal;
    font-weight:    400 !important;
    line-height:    24px;
    letter-spacing: 1px;
}
.texto-agente {
    color:          #575151;
    font-family:    AvenirLTStd-Roman;
    font-size:      14px;
    font-style:     normal;
    font-weight:    400;
    line-height:    22px;
    letter-spacing: .161px;
}
.titulo-precio {
    color:     #575151;
    font-size: 13px;
}
.titulo-agentes{
    margin: 0;
    margin-bottom: 20px;
    color: #29292C;
    font-family: samsungsharpsans-bold !important;
    font-size: 26px;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 24px;
    letter-spacing: 1px;
}

/* ============================================================
   BOTONES
   ============================================================ */
.btn-whatsapp {
    background-color: #25d366;
    color:            #fff;
}
.btn-whatsapp:hover {
    background-color: #1ebe5c;
    color:            #fff;
}
.btn-correo {
    padding:        10px 10px;
    background:     #4B4C4B !important;
    color:          #fff !important;
    font-weight:    700;
    align-content:  center;
    border-radius:  50px;
    letter-spacing: 0.5px;
    font-size:      18px !important;
}
.btn-correo:hover {
    background-color: #0039cc;
    color:            #fff;
}
.btn-agente-wht {
    width: 100%;
    padding: 0 12px;
    background:     #25d366 !important;
    border: 1px solid #25d366 !important;
    color:          #fff !important;
    font-weight:    700;
    align-content:  center;
    border-radius: 50px;
    font-size:      16px !important;
    font-family: Avenir-Medium,sans-serif;
    line-height: 40px;
}
.btn-agente-contact {
    width: 100%;
    padding: 0 12px;
    background:     #0a4c3d !important;
    border: 1px solid #0a4c3d !important;
    color:          #fff !important;
    font-weight:    700;
    align-content:  center;
    border-radius:  50px;
    font-size:      16px !important;
    font-family: Avenir-Medium,sans-serif;
    line-height: 40px;
    width: 100%;
}
.btn-contact {
    background:      #D8AA31;
    color:           #fff;
    border:          none;
    padding:         10px 22px;
    border-radius:   50px;
    font-size:       14px;
    font-weight:     600;
    cursor:          pointer;
    font-family:     Titillium Web;
    transition:      background 0.2s, transform 0.15s;
    text-decoration: none;
}
.btn-contact:hover {
    background:  #C0931B;
    transform:   translateY(-1px);
}
.btn-link-active-agente:hover {
    color: #AE810A !important;
}
.btn-link-menu-active {
    font-size:   15px !important;
    color:       #457f39 !important;
    font-weight: 400 !important;
}
.link-agentes {
    color:           #a58a56;
    text-decoration: none;
    font-weight:     500;
    font-size: 0.95rem;
    margin-bottom: 0;
}

/* ============================================================
   WHATSAPP FLOTANTE
   ============================================================ */
.div_btn_whatsapp {
    top:     150px;
    position: fixed;
    right:   0;
    z-index: 11;
    border:  0;
    box-shadow: none;
    outline: none !important;
    padding: 0;
}
.div_btn_whatsapp .btn_whatsapp {
    background-color: transparent;
    border:           0;
    box-shadow:       none;
    outline:          none !important;
    padding:          0;
}
/* ----- Modal Precalificar ---- */
#modalPrecalificacion {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.img-modal-alertas{
  width: 100px;
}

/* ── Modal Overlay ── */
#modalContacto {
    position:   fixed;
    inset:      0;
    z-index:    9999;
    background: rgba(0, 0, 0, 0.8);
    display:    flex;
    align-items: center;
    justify-content: center;
    padding:    16px;
}

/* ── Caja del modal ── */
.modal-contacto-box {
    background:    #fff;
    border-radius: 16px;
    width:         100%;
    max-width:     440px;
    padding:       28px 24px 24px;
    position:      relative;
    max-height:    90vh;
    overflow-y:    auto;
}

/* ── Botón cerrar ── */
.modal-contacto-close {
    position:      absolute;
    top:           14px;
    right:         14px;
    width:         32px;
    height:        32px;
    border-radius: 50%;
    border:        1.5px solid #5c6368;
    background:    #5c6368;
    cursor:        pointer;
    font-size:     15px;
    color:         white;
    display:       flex;
    align-items:   center;
    justify-content: center;
}

.modal-contacto-close:hover {
    background: #5c6368;
}

/* ── Título ── */
.modal-contacto-titulo {
    font-size:     16px;
    font-weight:   600;
    color:         #222;
    margin-bottom: 20px;
    padding-right: 36px;
    line-height:   1.4;
}

.modal-contacto-titulo span {
    color: #636363;
}

/* ── Grupos de campos ── */
.form-group-modal {
    margin-bottom: 12px;
}

.form-group-modal input,
.form-group-modal textarea,
.form-group-modal select {
    width:         100%;
    padding:       12px 14px;
    border:        1px solid #ddd;
    border-radius: 8px;
    font-size:     14px;
    color:         #333;
    outline:       none;
    font-family:   inherit;
    background:    #fff;
    transition:    border-color 0.2s;
}

.form-group-modal input:focus,
.form-group-modal textarea:focus,
.form-group-modal select:focus {
    border-color: #1e662e;
}

.form-group-modal input::placeholder,
.form-group-modal textarea::placeholder {
    color: #aaa;
}

.form-group-modal textarea {
    resize:      none;
    height:      90px;
    line-height: 1.5;
}

/* ── Fila tipo documento ── */
.modal-doc-row {
    display: flex;
    gap:     8px;
}

.modal-doc-row select {
    width:      90px !important;
    flex-shrink: 0;
    padding:    12px 8px !important;
    cursor:     pointer;
}

.modal-doc-row input {
    flex: 1;
}

/* ── Errores ── */
.field-error {
    font-size:  12px;
    color:      #e53e3e;
    margin-top: 4px;
    display:    none;
}

.field-error.show {
    display: block;
}

/* ── Footer texto ── */
.modal-contacto-footer {
    font-size:  11px;
    color:      #888;
    text-align: center;
    margin-top: 12px;
    line-height: 1.5;
}

.modal-contacto-footer a {
    color:           #1e662e;
    text-decoration: none;
}

/* ── Responsive ── */
@media (max-width: 600px) {
    .modal-contacto-box {
        padding: 20px 16px;
    }
}

/* ── Loader Buzón ── */
#loaderBuzon {
    position:   fixed;
    inset:      0;
    z-index:    99999;
    background: rgba(0, 0, 0, 0.8);
    display:    flex;
    align-items:     center;
    justify-content: center;
}

.loader-buzon-box {
    background:    #fff;
    border-radius: 12px;
    padding:       28px 36px;
    display:       flex;
    flex-direction: column;
    align-items:   center;
    gap:           14px;
}

.loader-buzon-spinner {
    width:        42px;
    height:       42px;
    border:       4px solid #e0e0e0;
    border-top:   4px solid #1e662e;
    border-radius: 50%;
    animation:    girarLoader 0.7s linear infinite;
}

@keyframes girarLoader {
    to { transform: rotate(360deg); }
}

.loader-buzon-texto {
    font-size:   14px;
    color:       #555;
    margin:      0;
    font-family: AvenirLTStd-Roman, sans-serif;
}
/* ---- BTN ACCESOS WHT + MAIL ---*/
.btn-wsp-modal,
.btn-mail-modal {
    width:           100%;
    padding:         14px;
    border:          none;
    border-radius:   50px;
    font-size:       15px;
    font-weight:     700;
    cursor:          pointer;
    display:         flex;
    align-items:     center;      /* ← centra verticalmente */
    justify-content: center;      /* ← centra horizontalmente */
    gap:             6px;         /* ← espacio entre icono y texto */
    line-height:     1;           /* ← evita que el line-height desplace el texto */
    transition:      background 0.2s;
}

.btn-wsp-modal  { 
    background: #a58a56; 
    color: #fff; 
}
.btn-mail-modal { 
    background: #636363; 
    color: #fff; 
}

.btn-wsp-modal:hover  { 
    background: #a58a56; 
    color: white;
}
.btn-wsp-modal:active{
    background: #a58a56;
}
.btn-mail-modal:hover { 
    background: #636363;
    color: white; 
}
.btn-mail-modal:active{
    background: #636363;
}

/* ── Icono WhatsApp ── */
.btn-wsp-modal img {
    width:       18px;
    height:      18px;
    flex-shrink: 0;
    display:     block;    /* ← elimina espacio extra debajo de la imagen */
}

/* ── Icono correo ── */
.btn-mail-modal i {
    font-size:   16px;
    line-height: 1;
    flex-shrink: 0;
}
/* ── Alerta Buzón ── */
.alerta-buzon-overlay {
    position:        fixed;
    inset:           0;
    z-index:         999999;
    background:      rgba(0, 0, 0, 0.60);
    display:         flex;
    align-items:     center;
    justify-content: center;
    padding:         16px;
}

.alerta-buzon-box {
    background:    #fff;
    border-radius: 12px;
    padding:       28px 24px 24px;
    max-width:     360px;
    width:         100%;
    text-align:    center;
}

.alerta-buzon-icono {
    width:         44px;
    height:        44px;
    border-radius: 50%;
    display:       flex;
    align-items:   center;
    justify-content: center;
    font-size:     20px;
    font-weight:   700;
    margin:        0 auto 14px;
}

.alerta-buzon-titulo {
    font-size:     16px;
    font-weight:   700;
    color:         #222;
    margin-bottom: 8px;
}

.alerta-buzon-texto {
    font-size:     14px;
    color:         #555;
    margin-bottom: 20px;
    line-height:   1.5;
}

.alerta-buzon-btn {
    padding:       10px 28px;
    color:         #fff;
    border:        none;
    border-radius: 50px;
    font-size:     14px;
    font-weight:   600;
    cursor:        pointer;
    transition:    opacity 0.2s;
    background:    green;
}

.alerta-buzon-btn:hover { opacity: 0.85; }

/* ============================================================
   FORMULARIOS
   ============================================================ */
.form-control-inputs {
    font-family:   samsungsharpsans-medium, sans-serif;
    border:        2px solid #c8c8c8;
    color:         #000 !important;
    border-radius: 8px;
    box-sizing:    border-box;
    font-size:     14px;
    font-weight:   400;
    font-style:    normal;
    padding:       15px !important;
    width:         100%;
    background:    #fff;
    outline:       none;
}
.form-control-textarea {
    font-family:   samsungsharpsans-medium, sans-serif;
    color:         #000 !important;
    border:        1px solid #c8c8c8;
    border-radius: 8px;
    resize:        none;
    box-sizing:    border-box;
    font-size:     14px;
    font-weight:   400;
    font-style:    normal;
    padding:       15px !important;
}
.form-elements {
    border:        2px solid #c8c8c8 !important;
    border-radius: 8px !important;
    color:         #000 !important;
    padding:       15px !important;
}
.form-control:focus {
    border-color: #AE810A !important;
}
.form-control::placeholder {
    color: #848484;
}
.form-elements::placeholder {
    color: #848484 !important;
}

/* ============================================================
   MAPA
   ============================================================ */
#mapaUbicacion {
    height:  310px !important;
    width:   100%;
    display: block;
}

/* ============================================================
   MFPOPUP / LIGHTBOX
   ============================================================ */
.mfp-img {
    max-height: 80vh !important;
    width:      auto !important;
    object-fit: contain;
}
.mfp-bg {
    background: rgba(0, 0, 0, 0.9);
}

/* ============================================================
   AVATAR
   ============================================================ */
.avatar-lg {
    height: 2.75rem;
    width:  2.75rem;
}
.avatar-title {
    -webkit-box-align: center;
    align-items:       center;
    display:           flex;
    height:            100%;
    -webkit-box-pack:  center;
    justify-content:   center;
}
.img-fluid {
    max-width: 100%;
    height:    80px;
}

/* ============================================================
   UTILIDADES
   ============================================================ */
.bg-success-subtle {
    background-color: rgb(243 243 244 / .8) !important;
}
.rounded {
    border-radius: 3px !important;
}
.fs-24 {
    font-size: 24px !important;
}
.p-9 {
    padding: 9px 9px;
}
.mt-card-lateral {
    margin-top: 3rem;
}
.iframe-ratio {
    width:             100%;
    height:            320px;
    flex-shrink:       0;
    border-radius:     30px;
    object-fit:        cover;
    object-position:   center center;
    background-size:   cover;
    background-repeat: no-repeat;
}
.iframe-border-radius {
    border-radius: 20px;
}
.ratio::before {
    display: none !important;
}
.tab-footer {
    color:          #58585B;
    font-family:    AvenirLTStd-Light;
    margin-top:     1rem;
    font-size:      12px;
    font-style:     normal;
    font-weight:    500;
    line-height:    18px;
    letter-spacing: .126px;
}
.font-11 {
    font-size: 11px;
}

/* ============================================================
   SECCIÓN GENERAL
   ============================================================ */
.section {
    padding:         80px 5%;
    scroll-margin-top: 100px;
}

/* ============================================================
   FOOTER
   ============================================================ */
.bgs-footer-1 {
    background-color: #005f27;
    color:            #ffffff;
}
.section-padding-footer {
    padding-top:    55px;
    padding-bottom: 4px;
}
.texto-footer-menu {
    color:          #fff;
    font-family:    samsungsharpsans-bold;
    font-size:      18px !important;
    font-weight:    400 !important;
    letter-spacing: 1px;
}
.texto-pie-footer {
    font-family:   AvenirLTStd-Roman;
    font-size:     16px;
    color:         #fff;
    font-weight:   400;
    margin-bottom: 1rem;
}
.text-p-footer {
    font-size:   16px;
    color:       #fff !important;
    font-family: Titillium Web;
}
.footer ul li {
    line-height:   34px;
    margin-bottom: 0rem;
}
.navigation h6::after {
    display:          block;
    height:           3px;
    font-weight:      bold;
    background-color: #AE810A;
    content:          " ";
    width:            50px;
    margin-top:       .5rem;
    margin-bottom:    1.5rem;
}
.text-reset {
    text-decoration: none !important;
}

/* ============================================================
   BREADCRUMB
   ============================================================ */
.top_heading_realpress {
    margin-bottom:    50px;
    padding:          16px 0;
    background-color: #F2F2F2;
}
.container-migajas{
    padding: 0px 5%;
    max-width: 1700px;
    margin: 0 auto;
}
.realpress-breadcrumb {
    margin: 0;
}
.realpress-breadcrumb ul {
    display:    flex;
    flex-wrap:  wrap;
    margin:     0;
}
.realpress-breadcrumb ul li {
    font-size:   16px;
    line-height: 1.5em;
    font-weight: regular;
    display:     inline-block;
    color:       #686868;
    margin:      0;
    list-style:  none;
    margin-right: 10px !important;
}
.realpress-breadcrumb ul li a {
    font-weight:     500;
    color:           #000;
    display:         inline-block;
    text-decoration: none;
}
.realpress-breadcrumb ul li + li::before {
    margin-right: 10px;
    font-weight:  600;
    margin-left:  0;
    font-size:    11px;
    color:        black;
}
/* ============================================================
   REDES SOCIALES
   ============================================================ */
.circulo-redes a {
    border-radius:   50px;
    border:          2px solid #fff;
    background:      #fff;
    display:         inline-block;
    height:          35px;
    font-size:       16px;
    text-align:      center;
    width:           35px;
    color:           #000;
    line-height:     23px;
    text-decoration: none;
    padding:         5px 2px;
    cursor:          pointer;
}
.circulo-redes a:hover {
    color:       #fff;
    background:  #AE810A;
    border:      2px solid #AE810A;
    text-decoration: none;
}

/* ============================================================
   COOKIE BANNER
   ============================================================ */
#cookieBanner {
    position:        fixed;
    bottom:          0;
    left:            0;
    right:           0;
    background:      #fff;
    border-top:      1px solid #ddd;
    padding:         14px 28px;
    z-index:         9999;
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    gap:             20px;
    box-shadow:      0 4px 8px rgba(93, 115, 126, .1), 0 -4px 8px rgba(93, 115, 126, .1);
}
#cookieBanner p {
    font-size:   13px;
    color:       #555;
    line-height: 1.55;
    margin:      0;
    flex:        1;
}
#cookieBanner a {
    color:           #222;
    text-decoration: underline;
}
#cookieBanner button {
    background:   #1e662e;
    color:        #fff;
    border:       none;
    border-radius: 6px;
    padding:      10px 24px;
    font-size:    13px;
    font-weight:  600;
    cursor:       pointer;
    white-space:  nowrap;
    flex-shrink:  0;
}
#cookieBanner button:hover {
    background: #17531f;
}

#precioMostrar{
  text-align: right;
  font-size: 40px;
  color: #d49b2d !important;
  font-family: samsungsharpsans-bold, sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 30px;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 991.98px) {

    .hero-section {
        height: 40vh;
    }

    .small-image-container {
        height: 20vh;
    }

    .mostrar-precio {
        display:       block;
        font-size:     32px;
        color:         #d49b2d !important;
        margin-top:    25px !important;
        margin-bottom: 15px !important;
    }

    .text-primer-titulo {
        line-height: 1.4 !important;
        font-size:   24px !important;
    }

    .mt-card-lateral {
        margin-top: 0px;
    }

    #cookieBanner {
        flex-direction: column;
        align-items:    flex-start;
    }

    #cookieBanner button {
        width: 100%;
    }
    #precioMostrar{
      text-align: left;
      font-size: 32px;
    }
}