.smooth-scroll {
    transition: ease-in-out;
    transition-duration: 0.35s;
    transition-delay: 0.125s;

    opacity: 0;
    transform: translateY((1.563rem));
}

.smooth-scroll-animation {
    opacity: 1;
    transform: translateY(0);
}

/* ANIMACION SCROLL */
@supports (animation-timeline: view()) {
    @keyframes smooth-scroll-animation {
        0% {
            opacity: 0;
            transform: translateY((1.563rem));
        }

        10% {
            opacity: 0;
            transform: translateY((1.563rem));
        }

        20% {
            opacity: 1;
            transform: translateY(0);
        }

    }

    .smooth-scroll {
        animation: auto linear both;
        animation-timeline: view();
        animation-name: smooth-scroll-animation;

        transition-duration: auto !important;
        transition-delay: 0;

        opacity: 1;
        transform: translateY(0);
    }
}

.alt-bgcolor {
    background: #F6F1E9;
}

.alt-bgcolor-blue {
    background: #F5F5F9 url('/public/assets/images/icon.png');
    background-size: 10em;
    background-position: right top;
}

.image-box img {
    border-radius: 0.5rem;
}


@media print {
    .no-print {
        display: none !important;
    }
}

.property-link,
.property-return {
    text-decoration: none;
    color: var(--foralista-color-1);
    display: flex;
    font-family: 'Poppins';
    transition: all 0.3s ease-in;
}

.property-return:hover,
.property-return:focus {
    color: var(--foralista-color-1);
    margin-left: -0.35em;
}

.operation-case {
    font-family: 'Poppins-Light';
    font-size: 1.2em;
    /*transition: all .3s ease-in;*/
}

#box-mail {
    cursor: pointer;
}

.container {
    gap: 2.5rem;
}

.main-section {
    flex-basis: 75%;
    gap: 1.563rem;
}

.top-section {
    padding-bottom: .5rem;
}

.top-section.sticky {
    padding: 0.2rem;
    border-radius: 0 0 0.5rem 0.5rem;
    border: 0.063rem solid #eaeff5 !important;
    background: url(/assets/images/f-bg.png) repeat, linear-gradient(0deg, #f5f5f9 100%, #fff 100%);
    background-size: 60%;
    background-position: center center;
    background-attachment: fixed;
    animation: slide-background 25s linear infinite;
    will-change: transform, height;
    z-index: 999;
    padding-bottom: 0.6rem !important;
}

.top-section.sticky .operation-case {
    font-size: .8em;
}

.top-section.sticky .sticky-price {
    display: block !important;
}

.top-section.sticky .property-return {
    font-size: .9em;
    margin-bottom: 0rem !important;
    margin-top: 0.5rem !important;
    display: none;
}

.top-section.sticky .features-primary {
    font-size: 1.2rem;
    font-family: 'Poppins';
}

.top-section.sticky .features-primary span.text-white-space {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    /* o inline-block si prefieres */
    min-width: 0;
    max-width: 100%;
}

.top-section.sticky .property-subtitle {
    padding-top: 0 !important;
}

.top-section.sticky .property-subtitle p {
    font-size: .8em;
}

.top-section.sticky .property-subtitle .property-reference p {
    font-size: 1rem;
}

.price {
    gap: 1.25rem;
}

.price-value {
    font-size: 1.5rem;
    font-family: Poppins;
}

.price-title {
    font-size: 1.5rem;
    font-family: Poppins-light;
}

.features-primary {
    font-size: 1.75rem;
    font-family: 'Poppins';
    /*transition: all .3s ease-in;*/
}

@media screen and (max-width: 40em) {
    .features-primary {
        font-size: 1.2rem;
    }
}

.beds,
.area {
    gap: 0.188rem;
}

.description {
    padding: 0 0.625rem;
}

.description-header {
    padding: 0.625rem 0rem;
}

.description-header span {
    font-weight: 600;
    font-size: 1.5rem;
    font-family: Poppins-light;
}

.description-line {
    background-color: var(--foralista-color-1);
    height: 0.188rem;
    width: 10%;
}

.description p {
    /*white-space: break-spaces;*/
    color: #707070;
    font-family: 'Poppins-Light';
}

@media screen and (max-width: 40em) {
    .description p {
        text-align: justify;
    }
}

.features {
    padding: 0.625rem;
}

.features-header {
    padding: 0.938rem 0rem 0.625rem;
}

.features-header p {
    text-align: justify;
    white-space: break-spaces;
    color: #707070;
    font-size: 1.1em;
}

.features-header span {
    font-weight: 600;
    font-size: 1.2rem;
    font-family: Poppins-light;
}

.features-line {
    background-color: var(--foralista-color-1);
    height: 0.188rem;
    width: 10%;
}

.amenity-item {
    align-items: center;
    display: flex;
}

.agent-section {
    flex-basis: 25%;
    gap: 0.938rem;
}

.agent-card {
    gap: 0.375rem;
    padding: 0.5rem 0;
    border-radius: 0.75rem;
    justify-content: center;
    margin-left: 0.625rem;
}

.agent-card.no-padding {
    padding: 0rem;
}

.agent-image a {
    text-decoration: none !important;
}

.agent-image {
    border-radius: 0.5rem;
    text-align: center;
    /*box-shadow: 0 0 0.625rem 0.063rem rgba(71, 85, 95, 0.08);*/
}

.agent-image img {
    border-radius: 0.5rem;
    width: 100% !important;
    height: 4.688rem !important;
    object-fit: scale-down;
}

.agent-info {
    border-radius: 0.313rem;
    padding: 0.438rem 1.063rem;
    line-height: 1.313rem;
    height: fit-content;
    text-align: center;
}

.agent-info a {
    text-decoration: none;
    color: #212529;
}

.agent-info span:first-child {
    display: block;
    font-size: 1rem;
    font-family: 'Poppins-Light';
}

.agent-info span:nth-child(2) {
    display: block;
    font-family: 'Poppins';
}

.agent-info span:last-child {
    display: none;
    font-size: .89rem;
    color: #4b4b4b;
    font-weight: lighter;
    font-family: 'Poppins-Light';
}

.agent-actions {
    gap: 0.625rem;
    padding: 1.25rem;
    border-radius: 0.75rem;
    background-color: #fff;
    margin: 0.625rem;
}

.agent-mobile-actions {
    background: #F5F5F9;
    padding: 0.5rem 0;
    border-radius: 0.75rem 0.75rem 0 0;
    box-shadow: 0rem -0.08rem 0.1375rem #eaeaea;
}

.agent-mobile-actions #box-phones {
    padding: 0.35rem 0 0;
}

.agent-mobile-actions .btn-secondary#box-mail {
    color: white;
    background: var(--foralista-color-1);
}

.btn-primary#box-phones {
    background-color: #2F4858 !important;
    border: 0.063rem solid #2F4858 !important;
}

.btn-primary#box-phones,
.btn-secondary#box-mail {
    border: 0.063rem solid var(--foralista-color-1);
    border-radius: 0.313rem;
    text-align: center;
    font-weight: 600;
}

/*** Botones anterior y siguiente ***/
/* Estilos generales para el botón */
.btn-secondary.prev-next-btn {
    position: relative;
    overflow: hidden;
    border: 0.063rem solid #e8e8e8;
    background-color: white !important;
    font-family: 'Poppins',sans-serif;
    font-size: .8rem;
    transition: color 0.3s ease;
    z-index: 1;
    color: #2F4858 !important;
    border-color: #2F4858 !important;
    /* Aseguramos que el botón esté por encima */
}

/* Efecto para el botón "Next" (desde izquierda hacia derecha) */
.btn-secondary.prev-next-btn.next-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    /* Empieza fuera a la izquierda */
    width: 100%;
    height: 100%;
    background-color: #2F4858;
    transition: transform 0.4s ease;
    z-index: 0;
}

.btn-secondary.prev-next-btn.next-btn:hover::before,
.btn-secondary.prev-next-btn.next-btn:focus::before {
    transform: translateX(100%);
    /* Desplaza el fondo hacia la derecha */
}

/* Efecto para el botón "Previous" (desde derecha hacia izquierda) */
.btn-secondary.prev-next-btn.prev-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    /* Empieza fuera a la derecha */
    width: 100%;
    height: 100%;
    background-color: #2F4858;
    transition: transform 0.4s ease;
    z-index: 0;
}

.btn-secondary.prev-next-btn.prev-btn:hover::before,
.btn-secondary.prev-next-btn.prev-btn:focus::before {
    transform: translateX(-100%);
    /* Desplaza el fondo hacia la izquierda */
}

/* Asegura que el contenido no quede cubierto por el pseudo-elemento */
.btn-secondary.prev-next-btn>* {
    position: relative;
    z-index: 1;
    /* El contenido encima de ::before */

}

/* Cambiar el color del texto a blanco en hover y focus */
.btn-secondary.prev-next-btn:hover,
.btn-secondary.prev-next-btn:focus {
    color: #fff !important;
}

/*** END - Botones anterior y siguiente ***/


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

    .btn-primary#box-phones,
    .btn-secondary#box-mail {
        padding: 0.25rem 0.75rem;
        font-size: 1.3rem;
    }
}

#box-phones h4 {
    font-family: 'Poppins';
}

.btn-primary#box-phones {
    padding: 0.438rem 1.063rem;
    color: #fff;
    background-color: var(--foralista-color-1);
}

.btn-secondary#box-mail {
    color: var(--foralista-color-1);
    background: transparent;
}

.separator {
    background-color: #e2e2e2;
    width: 100%;
    height: 0.063rem;
}

.property-subtitle {
    font-size: 1em;
    color: #555;
    padding: 0.625rem;
}

.property-subtitle div {
    padding: 0 0.188rem;
    display: flex;
    align-items: center;
}

.property-subtitle p {
    margin: 0;
    font-family: 'Poppins-Light';
    font-size: .9em;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: normal;
    vertical-align: middle;
    /*transition: all .3s ease-in;*/
}

.property-subtitle a {
    color: #555;
    text-decoration: none;
}

.property-subtitle a:hover {
    color: var(--foralista-color-1);
}

.property-address p i {
    font-size: 1.8em;
    margin-right: 0.375rem;
}

.divider:after {
    color: #e8e8e8;
    content: '|';
}

.custom-filters-sticky-top {
    background: #F5F5F9 url('/assets/images/lines-gb.webp');
    border: 0.063rem solid #eaeff5 !important;
    box-shadow: 0 0.125rem 0.375rem 0 rgb(67 89 113 / 12%);
    border-radius: 0.5rem !important;
    background-size: 60rem;
    top: 6.9375rem;
    z-index: 998;
}

video,
iframe {
    border-radius: 0.5rem;
    max-width: 100%;
    object-fit: cover;
    width: 100%;
}

.map {
    border-radius: 0.5rem;
    width: 100%;
    height: 190px;
}

.virtual-tour {
    border-radius: 0.5rem;
    height: 32em;
}

@media screen and (min-width: 40em) {
    .property-tools-btn {
        border-top: 0.063rem solid #e8e8e8;
        margin-top: 0.938rem;
        padding-top: 1.25rem;
    }
}

.property-tools-btn i {
    font-size: 1.4em;
    width: auto !important;
}

.list-inline {
    margin: 0;
}

.right-col {
    border: 0.063rem solid #e8e8e8;
    border-radius: 0.5rem;
    padding: 0.938rem 0.938rem;
}

.feature-icon,
.feature-title {
    color: #707070;
    font-family: Poppins-light, sans-serif;
}

.feature-value {
    margin-left: auto;
    color: #000;
    font-weight: 500;
    font-family: Poppins, sans-serif;
}

.property-detail {
    border-bottom: 0.063rem solid #e8e8e8;
    column-gap: 1.25rem;
    padding: 0.375rem 0;
    padding-top: 0.75rem;
}

.border-right {
    border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

/* Certificacion energetica (CES) */
.class-energy {
    clear: both;
    padding: 3.75rem 0 0;
}

.class-energy-list li {
    clear: both;
    border-bottom: 0.063rem solid #dce0e0;
    padding: 0 0.625rem;
    line-height: 2.5rem;
}

.class-energy-list li span {
    float: right;
}

.class-energy-indicator:nth-child(1) {
    background-color: #33a357;
}

.class-energy-indicator:nth-child(2) {
    background-color: #79b752;
}

.class-energy-indicator:nth-child(3) {
    background-color: #c3d545;
}

.class-energy-indicator:nth-child(4) {
    background-color: #fff12c;
}

.class-energy-indicator:nth-child(5) {
    background-color: #edb731;
}

.class-energy-indicator:nth-child(6) {
    background-color: #d66f2c;
}

.class-energy-indicator:nth-child(7) {
    background-color: #cc232a;
}

.class-energy-indicator:nth-child(8) {
    background-color: #cc232a;
}

.class-energy-indicator span {
    display: block;
}

.class-energy-indicator {
    width: calc(100% / 8);
    display: inline-block;
    position: relative;
    opacity: 0.3;
}

@media screen and (max-width: 40em) {
    .class-energy-indicator {
        width: calc(100% / 7.8);
    }
}

.class-energy-indicator span {
    font-size: 1.125rem;
    line-height: 2.188rem;
    text-align: center;
    color: #fff;
    font-family: 'Poppins';
}

.indicator-energy {
    left: 0;
}

.indicator-energy {
    font-size: 0.938rem;
    line-height: 1.875rem;
    top: -3rem;
    left: 4.5em;
    padding: 0 0.625rem;
    white-space: nowrap;
    color: #fff;
    background-color: #999;
    position: absolute;
}

.indicator-energy:before {
    right: auto;
    left: 0;
    border-right: 0.625rem solid transparent;
}

.indicator-energy:before {
    bottom: -0.625rem;
    content: "";
    border-top: 0.625rem solid #999;
    position: absolute;
}

@media screen and (max-width: 40em) {
    .indicator-energy {
        display: none;
    }

    .class-energy {
        padding: 0rem;
    }
}

.item-align-center {
    align-items: center;
}

.general-features {
    /*background: #F5F5F9;*/
    padding: 0.938rem;
    border-radius: 0.5rem;
    background: url(/assets/images/f-bg.png) repeat, linear-gradient(0deg, #f5f5f9 100%, #fff 100%);
    background-size: 60%;
    background-position: center center;
    background-attachment: fixed;
    animation: slide-background 25s linear infinite;
    padding: 1.9rem .938rem;
    border-radius: 0.5rem;
    /*box-shadow: 0rem 0.063rem 0.5rem #e3e3e3 !important;*/
}

@media screen and (max-width: 40em) {
    .general-features {
        background-size: cover;
    }
}

@keyframes slide-background {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 100% 0;
    }
}

.general-features-title {
    font-family: 'Poppins-Light';
    color: #555;
    font-size: 1.1em;
}

.general-features-text {
    font-family: 'Poppins';
    color: #555;
}

@media screen and (max-width: 40em) {

    .general-features-title {
        font-size: .9em;
    }

    .border-sm-0 {
        border: 0rem !important;
    }
}

.list-style-none {
    list-style: none;
}

.document-content {
    background: #F5F5F9;
    padding: 1.563rem;
    border-radius: 0.5rem;
}

.document-link {
    font-family: 'Poppins-Light';
    color: #555;
    text-decoration: none;
    font-size: 1.5em;
}

.document-content i {
    color: #a39d9d73 !important;
    font-size: 4em;
}

#image-section .image-box a.open-carousel {
    display: block;
    width: 100%;
    height: auto;
}


/* Estilos generales para todas las .image-box div */
.image-box div {
    background-size: cover;
    background-position: center center;
    height: 100%;
    border-radius: 0.5rem;
    min-height: 17.8em;
    max-height: 17.8em;
    opacity: 1;
    /* Esta línea es la que queremos cambiar al imprimir */
    /*opacity: 0; Esta línea es la que queremos cambiar al imprimir */
    /*animation: fadeIn 0.5s ease-in forwards;*/
    animation-delay: calc(var(--order) * 0.1s);
}

@media screen and (min-width: 40em) {
    #image-section .image-box div {
        min-height: 20em;
        max-height: 20em;
    }
}



.image-box div a {
    display: block;
}

[class^="image-"] {
    background: #F5F5F9;
}

.image-box .image-1:not(.small-images) {
    max-height: 37em;
}

.image-box .image-1:not(.small-images) img {
    max-height: fit-content;
}

.image-box img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-height: 23em;
    object-position: center;
}

.image-box [class^="image-"].square-img img {
    max-height: 25em;
}

@media screen and (max-width: 40em) {
    .images-box-container .image-box img {
        min-height: 10em !important;
    }
}

.ta-right {
    text-align: right;
}

.text-decoration-none {
    text-decoration: none;
    color: initial;
}

.icon-2x {
    font-size: 1.5em;
}

.btn-transparent {
    width: 100%;
}

.alert-warning {
    border: 0;
    /*background: #f6f5f0;*/
    font-family: 'Poppins-Light';
    font-size: 0.95em;
}

.alert-warning i {
    font-size: 1.5em;
}


.modal {
    font-family: 'Poppins-Light';
}

.modal .btn-primary {
    color: #fff;
    background-color: var(--foralista-color-1);
    border: 0.063rem solid var(--foralista-color-1);
}

.modal .modal-header {
    border-bottom: 0;
    font-family: 'Poppins-Light';
    background: transparent;
}

.modal .modal-header.p-absolute {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 999;
}

.modal .modal-body {
    padding-top: 0rem;
}

#box-favorite-form .contact-img {
    width: 15rem;
}

#box-favorite-form .form-info {
    background: url(/assets/images/f-bg.png) repeat, linear-gradient(0deg, #f5f5f9 100%, #fff 100%);
    background-size: 35%;
    background-position: center center;
    background-attachment: fixed;
    animation: slide-background 40s linear infinite;
    padding: 1.25rem 0.938rem;
    border-radius: 0.375rem;
}

@media screen and (max-width: 40em) {
    #box-favorite-form .form-info {
        background-size: 300%;
        padding: 0.938rem;
    }
}

.box-favorite-form-title {
    font-family: 'Poppins-Light';
    font-size: 1.7em;
}

.box-favorite-form-action {
    color: #868686;
    font-size: 1.1em;
    margin-bottom: 0.5em;
    font-family: 'Poppins-Light';
}

.modal a {
    color: rgb(251, 81, 108);
}

@media screen and (max-width: 40em) {
    .modal .agent-card {
        justify-content: center;
    }

    .modal .agent-image img {
        width: 6.25rem;
        height: 6.25rem;
    }
}

.modal .btn-secondary-bordered {
    cursor: pointer;
    font-family: Poppins, sans-serif;
    border: 0.063rem solid #c9cbce;
    color: var(--bs-body-color);
    border-radius: 0.25rem;
    font-size: 0.82em;
    padding: 0.625rem;
    position: relative;
    width: 100%;
}

.fade-in {
    opacity: 0;
    transition: opacity 0.3s ease-in;
}

.fade-in.show {
    opacity: 1;
}

.alert {
    border: 0;
}


#box-contact-form .contact-img,
#box-call-form .contact-img {
    /*width: 100%;*/
    width: 12.5rem;
}

#box-contact-form .form-info,
#box-call-form .form-info {
    background: #f5f5f9;
    background: url('/assets/images/f-bg-min.webp') repeat, #f5f5f9;
    background-size: contain;
    background-attachment: fixed;
    background-position: 0 0;
    animation: slide-background 35s linear infinite;
    padding: 1em 2em;
    border-radius: 0.5rem;
    will-change: background-position;
}

@keyframes slide-background {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 100% 0;
    }
}

@media screen and (max-width: 40em) {

    #box-contact-form .form-info,
    #box-call-form .form-info {
        background-size: 300%;
        padding: 0.938rem;
    }
}

.box-contact-form-title {
    font-family: 'Poppins-Light';
    font-size: 1.7em;
}

.modal a {
    color: rgb(251, 81, 108);
}

@media screen and (max-width: 40em) {
    .modal .agent-card {
        justify-content: center;
    }

    .modal .agent-image img {
        width: 6.25rem;
        height: 6.25rem;
    }
}

.alert-danger {
    border: 0;
    font-family: 'Poppins-Light';
    font-size: 0.95em;
}

.alert-danger i {
    font-size: 1.5em;
}

.description .btn-link {
    color: #FB516C;
    text-decoration: none;
    font-family: 'Poppins';
}

.prev-next-link {
    color: #FB516C;
    text-decoration: none;
    font-family: 'Poppins-Light';
    font-size: .95rem;
}

.calculator-link {
    color: #FB516C;
    text-decoration: none;
    font-family: 'Poppins-Light';
    font-size: .95rem;
}

.toggle-button:not(.collapsed) {
    display: none !important;
}


/* Consulta de impresión para mostrar imágenes */
@media print {
    .image-box div {
        opacity: 1;
        /* Asegúrate de que la opacidad sea 1 al imprimir */
        animation: none;
        /* Desactiva la animación para la impresión */
    }
}

/* Estilos para pantallas pequeñas */
@media screen and (max-width: 40em) {
    .images-box-container .image-box div.image-1 {
        min-height: 16em;
    }

    .image-box div {
        min-height: 7em;
    }
}

/* Estilos para el botón all-images-button */
#image-section .image-box img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    max-height: 18em;
    object-position: center;
}

@media screen and (min-width: 40em) {
    #image-section .image-box img {
        min-height: 20em;
        max-height: 20em;
    }
}

.all-images-button {
    opacity: 0;
    animation: fadeIn 0.5s ease-in forwards;
    animation-delay: calc((var(--order) + 1) * 0.1s);
}

/* Estilos específicos solo cuando hay exactamente dos imágenes */
.higth-images .image-box div {
    min-height: 23em;
}

/* Definición de la animación fadeIn */
@keyframes fadeIn {
    0% {
        opacity: 0;
        /* Comienza invisible */
    }

    100% {
        opacity: 1;
        /* Se vuelve completamente visible */
    }
}


.last-image-box {
    position: relative;
}

.all-images-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: auto;
    margin: 0;
    text-decoration: none;
    outline: 0;
    transition: color .2s ease-out, background-color .2s ease-out, border-color .2s ease-out;
    font-weight: 500;
    line-height: 1.5rem;
    color: #000;
    cursor: pointer;
    box-shadow: none;
    font-family: Poppins, sans-serif;
    appearance: none;
    -webkit-appearance: none;
    background-color: #f9f9f9;
    border-radius: 0.313rem;
    border: 0;
    outline: 0;
    font-size: 0.813rem;
    gap: 0.313rem;
    padding: 0.188rem 0.75rem;
    height: 1.875rem;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}

.carousel-item img {
    border-radius: 0.375rem 0.375rem 0 0;
    object-fit: cover;
    max-height: 50em;
    object-position: center;
}

.carousel-control-prev {
    justify-content: left;
}

.carousel-control-next {
    justify-content: right;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    opacity: 1;
    background-size: 2.2em;
    background-color: #2F4858 !important;
    border-radius: 0.625rem;
    padding: 1.8em;
}

.carousel-control-prev-icon {
    border-radius: 0 .625rem .625rem 0;
}

.carousel-control-next-icon {
    border-radius: .625rem 0 0 .625rem;
}

.carousel-indicators [data-bs-target] {
    height: 0.5em;
}

.modal-content {
    border: 0;
}

.carousel-caption {
    position: absolute;
    right: 1.5em;
    top: 1.5em;
    left: 1.5em;
    color: #fff;
    width: fit-content;
    height: fit-content;
    text-align: center;
    background: rgba(0, 0, 0, 0.2);
    margin: 0 auto;
    border-radius: 0.375rem;
    padding: 0.75em !important;
    padding-bottom: 0.3em !important;
}

.carousel-caption h5 {
    font-size: 1.5em;
    font-family: 'Poppins-Light';
    text-shadow: 0 0 0.125rem #b7b7b7;
}

#swipebox-overlay {
    background: #171616cf;
}

/*#swipebox-bottom-bar, #swipebox-top-bar {
    background: #3d484f;
}*/

#swipebox-slider .slide img {
    border-radius: 0.375rem;
}

/* Propiedades similares sugeridas */
.service-title {
    font-family: Poppins, sans-serif;
    font-weight: 500;
    color: #212529;
    font-size: 1.5rem;
    line-height: 1.13333em;
    margin: 1.563rem 0;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}

@media screen and (max-width: 40em) {
    .service-title {
        font-size: 1.2em !important;
    }
}

.property-card {
    font-family: Poppins, sans-serif;
    color: #212529;
}


.property-card {
    font-family: Poppins, sans-serif;
    color: #212529;
}

a.property-link {
    text-decoration: none;
    color: initial;
}

.property-card .property-header {
    position: relative;
}

.property-card .property-header .property-featured {
    position: absolute;
    margin-left: 0rem;
    margin-top: 1.25rem;
    border-radius: 0 0.5rem 0.5rem 0;
    background: rgba(255, 243, 223, 0.8);
    font-size: 0.8em;
}


.property-card .property-body .property-description,
.property-card .property-body .property-description p {
    font-family: 'Poppins-Light';
}

.property-card .property-header .property-image {
    position: relative;
    width: 100%;
    min-height: 16em;
    background: #F5F5F9;
    background-size: cover !important;
    border-radius: 0.5rem !important;
    background-position: center center !important;
    overflow: hidden;
}

.property-card .property-header .property-image img.no-photo {
    width: 100%;
    object-fit: cover;
    height: 15em;
}

.property-card .property-body .property-address {
    height: 2.1875rem;
}

.property-card .property-body .property-address p {
    display: flex;
    align-content: space-between;
    align-items: center;
    justify-content: flex-start;
    font-size: 0.9em;

}

.property-card .property-body {
    background: white;
    padding: 0em;
    border-radius: 0.5rem;
}

.property-card .property-body .property-address p i {
    font-size: 1.8em;
    margin-right: 0.375rem;
}

.property-card .property-body .property-description {
    color: #7A7A7A;
    font-size: 0.9rem;
    display: -webkit-box;
    overflow: hidden;
    line-clamp: 3;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.property-card .property-body .property-details {
    border-top: 0.063rem solid #e8e8e8;
    margin-top: 1em;
}

.property-card .property-body .property-details .property-features {
    display: flex;
    align-content: space-between;
    align-items: stretch;
    justify-content: flex-end;
}

.property-card .property-body .property-details .property-features p {
    display: flex;
    align-content: space-between;
    align-items: stretch;
    justify-content: flex-start;
    font-size: 0.9rem;
}

.property-card .property-body .property-details .property-features p i {
    color: #7A7A7A;
}

.property-card .property-body .property-details .property-price p {
    font-weight: 500;
    font-size: 0.9rem;
    display: flex;
    align-content: space-between;
    align-items: center;
    justify-content: flex-start;
}

.property-card .property-body .property-details i {
    font-size: 1.1rem;
}

.property-card .property-header .property-entity {
    position: absolute;
    border-radius: 0.5rem 0 0 0.5rem;
    padding: 0;
    line-height: 1em;
    bottom: 0.938rem;
    width: 6em;
    height: 3em;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    /*right: -100% !important;*/
    right: 0.75rem !important;
    top: 75%;
    transition: right 0.2s ease;
    background: #fff;
    overflow: hidden;
}

.property-card .property-header .property-entity img {
    object-fit: scale-down;
    padding: 0;
    object-position: center;
    width: 6em;
    height: 3em;
}

.more-news {
    display: flex;
    align-items: center;
    justify-content: center;
}

.more-news-btn a {
    text-decoration: none;
}

.more-news-btn span {
    font-size: 4em;
    color: #212529;
    transition: all .3s ease-in;
}

.more-news-btn:hover span,
.more-news-btn:focus span {
    margin-left: .25em;
}

.more-news-btn h5 {
    font-size: 1.4em;
    font-family: 'Poppins';
    color: #212529;
}

.more-news-btn:hover span,
.more-news-btn:hover h5 {
    color: #5E5E5E;
}

.slick-slide img {
    display: block;
    width: 100%;
    object-fit: cover;
    max-height: 16em;
    min-height: 16em;
}

.slick-photos {
    width: 100%;
}

/* END - Propiedades similares sugeridas */

.description-content {
    position: relative;
    transition: max-height 0.5s ease-in-out;
    max-height: 334rem;
    overflow: hidden;

    br {
        display: block;
        content: "";
        margin-top: 0.5rem;
    }
}

.description-content:has(#description-text.collapse:not(.show)) {
    /* Altura máxima inicial */
    max-height: 21.875rem;
    /* 350px / 16 */
}

.description-content:has(#description-text.collapse:not(.show))::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3.125rem;
    /* 50px / 16 */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
    pointer-events: none;
    /* Evita que interfiera con el botón */
    transition: opacity 0.3s;
}

.btn-primary-light {
    background-color: #FECAD3;
    border-radius: 0.25rem;
    color: var(--foralista-color-1);
    border: 0.125rem solid #FECAD3;
    font-family: Poppins,sans-serif;
    width: 100%;
}