body.home,
body.trasnego-home {
    --tn-home-page-bg: #f3f7fb;
    --tn-home-page-bg-strong: #f3f7fb;
    --tn-home-page-bg-soft: #f3f7fb;
    --tn-home-market-bg: #f3f7fb;
    background: var(--tn-home-page-bg);
}

.home-authority--teaser {
    padding-top: clamp(38px, 4.9vw, 58px);
    padding-bottom: clamp(40px, 4.6vw, 62px);
}

.home-authority--teaser .section-head--authority {
    --tn-section-title-gap: 11px;
    --tn-section-copy-gap: 14px;
    --tn-section-foot-gap: 16px;
    max-width: min(980px, 100%);
    margin-bottom: clamp(24px, 3vw, 36px);
    padding-bottom: var(--tn-section-foot-gap);
    text-align: center;
}

.home-authority--teaser .section-head--authority h2 {
    max-width: 17.8ch;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
}

.home-authority--teaser .section-head--authority p:not(.eyebrow) {
    max-width: 62ch;
    margin-left: auto;
    margin-right: auto;
}

.home-authority--teaser .section-head--authority .eyebrow,
.home-sellers--teaser .section-head--sellers-teaser .eyebrow {
    justify-content: center;
}

.home-authority--teaser .section-head--authority .eyebrow::before {
    display: block;
    width: 48px;
}

.home-authority--teaser .home-authority__title-line {
    display: inline;
    white-space: normal;
}

.home-authority__title-line + .home-authority__title-line::before,
.home-sellers__title-line + .home-sellers__title-line::before {
    content: " ";
}

.home-authority-teaser {
    display: grid;
    gap: clamp(20px, 3vw, 28px);
}

.home-authority-teaser__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(16px, 2vw, 22px);
}

.home-authority-teaser__card {
    display: grid;
    align-content: start;
    gap: 12px;
    min-height: 100%;
    padding: clamp(22px, 2.6vw, 30px);
    border: 1px solid rgba(34, 61, 96, 0.08);
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 240, 232, 0.86));
    box-shadow: 0 16px 38px rgba(26, 45, 71, 0.08);
}

.home-authority-teaser__card h3 {
    margin: 0;
    color: #14325b;
    font-size: clamp(1.34rem, 1.9vw, 1.62rem);
    line-height: 1.02;
    letter-spacing: -0.042em;
    text-wrap: balance;
}

.home-authority-teaser__card p:not(.home-authority__kicker) {
    margin: 0;
    color: #536b86;
    font-size: 0.98rem;
    line-height: 1.58;
}

.home-authority-teaser__card-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    color: #17375f;
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-decoration: none;
    transition: transform 0.36s cubic-bezier(0.16, 1, 0.3, 1), color 0.32s ease;
}

.home-authority-teaser__card-cta::after {
    content: "→";
    transition: transform 0.36s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-authority-teaser__card-cta:hover,
.home-authority-teaser__card-cta:focus-visible {
    color: #0f2c4e;
    transform: translateX(1px);
}

.home-authority-teaser__card-cta:hover::after,
.home-authority-teaser__card-cta:focus-visible::after {
    transform: translateX(2px);
}

.home-authority-teaser__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.home-authority-teaser__actions .btn-primary {
    position: relative;
    overflow: hidden;
    min-height: 46px;
    padding: 0.72rem 1.35rem;
    border: 1px solid rgba(23, 49, 93, 0.28);
    border-radius: 999px;
    background: var(--tn-brand, #1e3f80);
    color: #ffffff;
    box-shadow: var(--tn-boton-sombra);
    transition: transform 0.34s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.34s ease, background 0.34s ease, color 0.28s ease, border-color 0.28s ease;
}

.home-authority-teaser__actions .btn-primary::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 62px;
    height: 1px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0) 0%, rgba(30, 63, 128, 0.72) 58%, rgba(182, 148, 93, 0.2) 92%, rgba(30, 63, 128, 0) 100%);
    opacity: 0.9;
    transform: translateX(-50%);
    pointer-events: none;
}

.home-authority-teaser__actions .btn-primary::after {
    content: "";
    position: absolute;
    top: -80%;
    left: -42%;
    width: 38%;
    height: 240%;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-180%) rotate(18deg);
    transition: transform 0.62s ease;
    pointer-events: none;
}

.home-authority-teaser__actions .btn-primary:hover,
.home-authority-teaser__actions .btn-primary:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(20, 47, 91, 0.36);
    background: linear-gradient(145deg, #365e97 0%, #23497f 52%, #173967 100%);
    color: #ffffff;
    box-shadow: 0 12px 22px rgba(10, 29, 59, 0.16), 0 6px 12px rgba(9, 25, 52, 0.085);
    outline: none;
}

.home-authority-teaser__actions .btn-primary:hover::after,
.home-authority-teaser__actions .btn-primary:focus-visible::after {
    transform: translateX(340%) rotate(18deg);
}

.home-sellers--teaser {
    padding-top: clamp(34px, 4.1vw, 54px);
    padding-bottom: clamp(48px, 6.1vw, 78px);
}

.home-sellers--teaser .section-head--sellers-teaser {
    --tn-section-title-gap: 11px;
    --tn-section-copy-gap: 14px;
    --tn-section-foot-gap: 16px;
    max-width: min(980px, 100%);
    margin-bottom: clamp(24px, 3vw, 36px);
    padding-bottom: var(--tn-section-foot-gap);
    text-align: center;
}

.home-sellers--teaser .section-head--sellers-teaser h2 {
    max-width: 17.8ch;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
}

.home-sellers--teaser .section-head--sellers-teaser p:not(.eyebrow) {
    max-width: 62ch;
    margin-left: auto;
    margin-right: auto;
}

.home-sellers--teaser .home-sellers__title-line {
    display: inline;
    white-space: normal;
}

.home-sellers-teaser .home-authority-teaser__card {
    border-color: rgba(112, 82, 50, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(247, 240, 230, 0.9));
    box-shadow: 0 16px 38px rgba(44, 43, 41, 0.08);
}

.home-sellers-teaser .home-authority-teaser__card-cta {
    color: #6a4f31;
}

.home-sellers-teaser .home-authority-teaser__card-cta:hover,
.home-sellers-teaser .home-authority-teaser__card-cta:focus-visible {
    color: #563a1b;
}

@media (max-width: 991px) {
    .home-authority-teaser__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .home-authority--teaser .section-head--authority h2 {
        max-width: 14.2ch;
    }

    .home-sellers--teaser .section-head--sellers-teaser h2 {
        max-width: 14.2ch;
    }

    .home-authority-teaser__cards {
        grid-template-columns: 1fr;
    }

    .home-authority-teaser__actions {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (min-width: 992px) {
    .home-benchmark__panel {
        grid-template-columns: minmax(268px, 0.5fr) minmax(0, 1fr);
        column-gap: clamp(28px, 3vw, 42px);
        align-items: start;
    }

    .home-benchmark__copy {
        padding-right: 10px;
    }

    .home-benchmark__field {
        grid-column: 2;
    }

}

.home-testimonials-mock {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.home-testimonials-mock__item {
    border: 1px solid var(--tn-border);
    border-radius: 12px;
    background: linear-gradient(145deg, #fff 0%, #f7faff 100%);
    padding: 14px;
}

.home-testimonials-mock__item p {
    margin: 0;
    color: var(--tn-ink-soft);
    font-size: 0.93rem;
}

.home-testimonials-mock__item strong {
    margin-top: 10px;
    display: block;
    color: var(--tn-brand-strong);
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.home-contact-form-mock {
    display: grid;
    gap: 10px;
}

.home-contact-form-mock label {
    display: grid;
    gap: 5px;
}

.home-contact-form-mock span {
    font-size: 0.82rem;
    color: var(--tn-ink-soft);
    font-weight: 600;
}

.home-contact-form-mock input,
.home-contact-form-mock select,
.home-contact-form-mock textarea {
    width: 100%;
    border: 1px solid rgba(66, 91, 125, 0.14);
    border-radius: 13px;
    padding: 13px 14px;
    font: inherit;
    color: var(--tn-ink);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

.simulator-box {
    position: relative;
    overflow: hidden;
    margin-top: 18px;
    background:
        radial-gradient(circle at 100% 0%, rgba(86, 136, 230, 0.2) 0%, rgba(86, 136, 230, 0) 34%),
        radial-gradient(circle at 0% 100%, rgba(217, 175, 96, 0.12) 0%, rgba(217, 175, 96, 0) 26%),
        linear-gradient(135deg, #10223d 0%, #132b49 54%, #0f1d33 100%);
    border: 1px solid rgba(179, 198, 229, 0.14);
    border-radius: 32px;
    padding: clamp(22px, 2.8vw, 30px);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.05),
        0 28px 70px rgba(9, 19, 34, 0.18);
}

.simulator-box::before,
.home-contact__form::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(248, 235, 209, 0) 0%, rgba(248, 235, 209, 0.18) 18%, rgba(248, 235, 209, 0.42) 50%, rgba(248, 235, 209, 0.16) 82%, rgba(248, 235, 209, 0) 100%);
    pointer-events: none;
}

.simulator-legal {
    margin: 0;
    color: rgba(196, 210, 230, 0.7);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.simulator-box__intro {
    margin: 0;
}

.simulator-box__layout {
    display: grid;
    grid-template-columns: minmax(0, 0.98fr) minmax(320px, 0.92fr);
    gap: clamp(22px, 3vw, 38px);
    align-items: center;
}

.simulator-box__editorial {
    display: grid;
    align-content: start;
    gap: 16px;
    min-width: 0;
}

.simulator-box__eyebrow {
    margin: 0;
    color: rgba(242, 229, 199, 0.88);
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.simulator-box__title {
    margin: 0;
    color: #f5f8fc;
    max-width: 11ch;
    font-size: clamp(1.9rem, 3.1vw, 3.25rem);
    line-height: 0.92;
    letter-spacing: -0.045em;
    text-wrap: balance;
}

.simulator-box__lead {
    margin: 8px 0 0;
    color: rgba(214, 226, 240, 0.84);
    max-width: 31ch;
    font-size: clamp(0.96rem, 1.06vw, 1.06rem);
    line-height: 1.45;
}

.simulator-box__controls {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.simulator-box__control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 42px;
    padding: 0.74rem 1.04rem;
    border: 1px solid rgba(200, 214, 236, 0.14);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    text-align: center;
    cursor: pointer;
    transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
}

.simulator-box__control-tag {
    color: rgba(229, 236, 245, 0.88);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: color 0.22s ease;
}

.simulator-box__control.is-active {
    border-color: rgba(234, 240, 250, 0.2);
    background: linear-gradient(180deg, rgba(248, 251, 255, 0.18) 0%, rgba(214, 227, 246, 0.1) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 14px 28px rgba(5, 10, 18, 0.18);
    transform: translateY(-1px);
}

.simulator-box__control.is-active .simulator-box__control-tag {
    color: #f5f8fc;
}

.simulator-box__control:focus-visible {
    outline: none;
}

.simulator-box__control:focus-visible {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 14px 28px rgba(5, 10, 18, 0.18),
        0 0 0 3px rgba(214, 228, 248, 0.12);
}

.simulator-box__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
}

.simulator-box__actions .sim-btn-primary {
    width: auto;
    min-width: min(100%, 232px);
    background: linear-gradient(180deg, #f7fbff 0%, #e4edf8 100%);
    color: #13355f;
    box-shadow: 0 16px 28px rgba(5, 10, 18, 0.16);
}

.simulator-box__actions .sim-btn-pdf {
    padding-top: 0;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: rgba(226, 235, 246, 0.9);
}

.simulator-box__sample {
    position: relative;
    overflow: hidden;
    display: grid;
    align-content: start;
    gap: 0;
    min-width: 0;
    justify-self: end;
    width: min(100%, 460px);
    padding: clamp(18px, 2vw, 24px);
    border-radius: 24px;
    border: 1px solid rgba(191, 207, 233, 0.12);
    background:
        radial-gradient(circle at 100% 0%, rgba(103, 150, 234, 0.18) 0%, rgba(103, 150, 234, 0) 34%),
        linear-gradient(180deg, rgba(17, 33, 56, 0.88) 0%, rgba(13, 27, 46, 0.96) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.05),
        0 20px 40px rgba(5, 10, 18, 0.16);
    color: rgba(244, 248, 252, 0.94);
}

.simulator-box__sample-panel {
    display: none;
    gap: 14px;
}

.simulator-box__sample-panel.is-active {
    display: grid;
    animation: simulatorPanelIn 0.24s ease both;
}

.simulator-box__sample-panel[hidden] {
    display: none !important;
}

.simulator-box__sample::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, rgba(246, 235, 208, 0) 0%, rgba(246, 235, 208, 0.42) 48%, rgba(246, 235, 208, 0) 100%);
    pointer-events: none;
}

.simulator-box__sample-head {
    display: grid;
    gap: 6px;
    padding-bottom: 4px;
}

.simulator-box__sample-kicker,
.simulator-box__sample-verdict-label,
.simulator-box__sample-label {
    margin: 0;
    color: rgba(228, 238, 250, 0.62);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.simulator-box__sample-title {
    margin: 0;
    color: #f5f7fb;
    font-size: clamp(1.3rem, 1.8vw, 1.62rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.simulator-box__sample-sheet {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.simulator-box__sample-row {
    display: grid;
    gap: 6px;
    padding: 14px 15px;
    border-radius: 16px;
    border: 1px solid rgba(214, 226, 241, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.025) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 10px 18px rgba(5, 10, 18, 0.08);
}

.simulator-box__sample-row strong,
.simulator-box__sample-verdict-state {
    color: #f6f8fc;
    font-size: 1.02rem;
    font-weight: 780;
    line-height: 1.2;
}

.simulator-box__sample-verdict {
    display: grid;
    gap: 5px;
    padding: 16px 17px;
    border-radius: 18px;
    background:
        radial-gradient(circle at 100% 0%, rgba(217, 175, 96, 0.16) 0%, rgba(217, 175, 96, 0) 38%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.04) 100%);
    border: 1px solid rgba(243, 225, 186, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

@keyframes simulatorPanelIn {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

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

@media (hover: hover) and (pointer: fine) {
    .simulator-box__control:hover {
        transform: translateY(-1px);
        border-color: rgba(234, 240, 250, 0.16);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.05) 100%);
    }

    .simulator-box__control:hover .simulator-box__control-tag {
        color: #f0f5fb;
    }
}

.home-form-shell {
    margin-top: 16px;
    display: grid;
    gap: 16px;
    border: 1px solid rgba(30, 63, 128, 0.12);
    border-radius: 14px;
    background: linear-gradient(160deg, #fbfdff 0%, #f3f7ff 100%);
    padding: clamp(14px, 2vw, 18px);
}

.home-form-shell__intro {
    display: grid;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(30, 63, 128, 0.1);
}

.home-form-shell__eyebrow {
    margin: 0;
    color: var(--tn-brand-strong);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.home-form-shell__benefits {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 8px;
}

.home-form-shell__benefits li {
    position: relative;
    padding-left: 18px;
    color: var(--tn-ink-soft);
    font-size: 0.88rem;
    line-height: 1.45;
}

.home-form-shell__benefits li::before {
    content: "";
    position: absolute;
    top: 0.55rem;
    left: 0;
    width: 0.42rem;
    height: 0.42rem;
    border-radius: 999px;
    background: linear-gradient(180deg, #d39a2f 0%, #b37b19 100%);
}

.home-form-shell__body,
.home-form-shell .wpcf7,
.home-form-shell .wpcf7 form {
    display: grid;
    gap: 12px;
}

.home-form-shell .wpcf7 p {
    margin: 0;
}

.home-form-shell .wpcf7 form {
    position: relative;
}

.home-form-shell .wpcf7 form.is-submitting {
    opacity: 0.96;
}

.home-form-shell .wpcf7 label {
    display: grid;
    gap: 6px;
    color: var(--tn-ink-deep);
    font-size: 0.82rem;
    font-weight: 700;
}

.home-form-shell .wpcf7-form-control-wrap {
    display: block;
}

.home-form-shell .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.home-form-shell .wpcf7 select,
.home-form-shell .wpcf7 textarea {
    width: 100%;
    border: 1px solid rgba(30, 63, 128, 0.14);
    border-radius: 12px;
    padding: 12px 14px;
    font: inherit;
    color: var(--tn-ink);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.home-form-shell .wpcf7 textarea {
    min-height: 140px;
    resize: vertical;
}

.home-form-shell .wpcf7 input::placeholder,
.home-form-shell .wpcf7 textarea::placeholder {
    color: #7f90ad;
}

.home-form-shell .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):focus,
.home-form-shell .wpcf7 select:focus,
.home-form-shell .wpcf7 textarea:focus {
    outline: none;
    border-color: #93b1e4;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(47, 109, 202, 0.12);
}

.home-form-shell .wpcf7 input[type="checkbox"],
.home-form-shell .wpcf7 input[type="radio"] {
    accent-color: var(--tn-brand);
}

.home-form-shell .wpcf7 .wpcf7-list-item {
    margin: 0;
}

.home-form-shell .wpcf7 .wpcf7-list-item label {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--tn-ink-soft);
}

.home-form-shell .wpcf7 .wpcf7-not-valid {
    border-color: #d57f7f;
    background: #fff8f8;
}

.home-form-shell .wpcf7 .wpcf7-not-valid-tip {
    margin-top: 6px;
    color: #b23f47;
    font-size: 0.76rem;
    font-weight: 700;
}

.home-form-shell .wpcf7 input[type="submit"],
.home-form-shell .wpcf7 button[type="submit"],
.home-form-shell .wpcf7 .has-spinner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--tn-envio-alto);
    width: 100%;
    padding: 0.85rem 1rem;
    border: var(--tn-boton-borde);
    border-radius: var(--tn-boton-radio);
    background: var(--tn-brand, #1e3f80);
    box-shadow: var(--tn-boton-sombra);
    color: #ffffff;
    font-size: 0.96rem;
    font-weight: var(--tn-boton-peso);
    letter-spacing: normal;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.home-form-shell .wpcf7 input[type="submit"]:disabled,
.home-form-shell .wpcf7 button[type="submit"]:disabled,
.home-form-shell .wpcf7 .has-spinner:disabled,
.home-form-shell .wpcf7 form.is-submitting input[type="submit"],
.home-form-shell .wpcf7 form.is-submitting button[type="submit"],
.home-form-shell .wpcf7 form.is-submitting .has-spinner {
    cursor: progress;
    transform: none;
    filter: saturate(0.88) brightness(0.96);
    box-shadow: 0 10px 20px rgba(16, 38, 81, 0.2);
}

.home-form-shell .wpcf7 input[type="submit"]:hover,
.home-form-shell .wpcf7 input[type="submit"]:focus-visible,
.home-form-shell .wpcf7 button[type="submit"]:hover,
.home-form-shell .wpcf7 button[type="submit"]:focus-visible,
.home-form-shell .wpcf7 .has-spinner:hover,
.home-form-shell .wpcf7 .has-spinner:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 32px rgba(16, 38, 81, 0.25);
    filter: brightness(1.02);
    outline: none;
}

.home-form-shell .wpcf7 .wpcf7-spinner {
    margin: 0 0 0 10px;
}

.home-form-shell .wpcf7 form.is-submitting .wpcf7-spinner {
    visibility: visible;
}

.home-form-shell .wpcf7 .wpcf7-response-output {
    margin: 0;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid var(--tn-border);
    border-left-width: 4px;
    font-size: 0.82rem;
    line-height: 1.45;
}

.home-form-shell .wpcf7 form.sent .wpcf7-response-output {
    border-color: #b8d7b0;
    background: #f4fbf1;
    color: #2c6030;
}

.home-form-shell .wpcf7 form.invalid .wpcf7-response-output,
.home-form-shell .wpcf7 form.unaccepted .wpcf7-response-output,
.home-form-shell .wpcf7 form.failed .wpcf7-response-output,
.home-form-shell .wpcf7 form.aborted .wpcf7-response-output {
    border-color: #e2b3b3;
    background: #fff6f6;
    color: #7c2a30;
}

.section-head {
    --tn-section-title-gap: 9px;
    --tn-section-copy-gap: 11px;
    --tn-section-foot-gap: 16px;
    position: relative;
    max-width: min(900px, 100%);
    margin: 0 auto clamp(28px, 3.1vw, 36px);
    text-align: center;
    padding-bottom: var(--tn-section-foot-gap);
}

.section-head h2 {
    max-width: 22ch;
    margin: var(--tn-section-title-gap) auto 0;
    font-size: clamp(1.58rem, 2.7vw, 2.34rem);
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.section-head .eyebrow {
    margin: 0;
    justify-content: center;
}

.section-head p {
    color: var(--tn-ink-soft);
    max-width: 60ch;
    margin: var(--tn-section-copy-gap) auto 0;
    line-height: 1.58;
}

.section-head::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, rgba(30, 63, 128, 0) 0%, rgba(30, 63, 128, 0.42) 42%, rgba(197, 168, 111, 0.18) 50%, rgba(30, 63, 128, 0.42) 58%, rgba(30, 63, 128, 0) 100%);
}

.section-head--secondary {
    margin-top: 36px;
}

.section-head--compact {
    --tn-section-title-gap: 8px;
    --tn-section-copy-gap: 10px;
    max-width: min(860px, 100%);
    margin-bottom: 26px;
}

.section-head--compact h2 {
    max-width: 24ch;
    font-size: clamp(1.35rem, 2.3vw, 2rem);
    line-height: 1.1;
}

.section-head--market {
    --tn-section-title-gap: 12px;
    --tn-section-copy-gap: 14px;
    margin: 0 auto clamp(26px, 3vw, 34px);
    max-width: 900px;
    text-align: center;
    padding: 0 0 18px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.section-head--market h2 {
    max-width: 20ch;
    margin-left: auto;
    margin-right: auto;
    letter-spacing: -0.032em;
    line-height: 1.04;
    font-size: clamp(2.34rem, 3.75vw, 3.34rem);
}

.section-head--market p {
    max-width: 50ch;
    margin: var(--tn-section-copy-gap) auto 0;
    color: #3f587d;
    font-size: clamp(1.05rem, 1.26vw, 1.16rem);
    line-height: 1.44;
}

.home-market--active .section-head--market {
    --tn-section-title-gap: 11px;
    --tn-section-copy-gap: 14px;
    --tn-section-foot-gap: 16px;
    margin-bottom: clamp(24px, 3vw, 36px);
    max-width: min(980px, 100%);
    text-align: center;
    padding-bottom: var(--tn-section-foot-gap);
}

.home-market--active .section-head--market h2 {
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    display: grid;
    justify-items: center;
    gap: 0.02em;
    font-size: clamp(1.84rem, 2.66vw, 2.34rem);
    line-height: 0.96;
    letter-spacing: -0.044em;
    text-wrap: initial;
}

.home-market__title-line {
    display: block;
    white-space: nowrap;
}

.home-market--active .section-head--market p {
    color: #49617d;
    max-width: 60ch;
    margin-left: auto;
    margin-right: auto;
}

.home-market--active .section-head--market::after {
    display: none;
}

.home-market--closed .section-head--market {
    background: transparent;
    box-shadow: none;
    max-width: min(980px, 100%);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding-bottom: clamp(16px, 2vw, 26px);
}

.home-market--active .home-market-head-layout {
    grid-template-columns: minmax(0, 1fr) minmax(172px, 214px);
    gap: clamp(18px, 2.2vw, 28px);
    align-items: start;
}

.home-market--active .home-market-head-copy {
    gap: 10px;
}

.home-market--active .home-market-kicker {
    color: #4f6584;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

.home-market--active .home-market-kicker::before {
    content: "";
    width: 48px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.18) 0%, rgba(30, 63, 128, 0.54) 100%);
}

.home-market--active .home-market-head-copy > p {
    margin: 0;
    max-width: 34ch;
    color: #49617d;
    font-size: clamp(0.94rem, 1vw, 1rem);
    line-height: 1.46;
}

.home-market--closed .section-head--market h2 {
    margin-left: auto;
    margin-right: auto;
    max-width: none;
    display: grid;
    justify-items: center;
    gap: 0.02em;
    font-size: clamp(1.98rem, 2.84vw, 2.54rem);
    line-height: 0.96;
    letter-spacing: -0.042em;
}

.home-market--closed .home-market-head-copy > p {
    margin: 0;
    max-width: 38ch;
    color: #4b607b;
}

.home-market--closed .section-head--market::after {
    display: none;
}

.home-market-head-note {
    position: relative;
    display: grid;
    gap: 6px;
    align-self: end;
    max-width: 286px;
    padding: 12px 14px 13px;
    border: 1px solid rgba(108, 122, 145, 0.11);
    border-radius: 16px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, rgba(244, 248, 252, 0.95) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        0 6px 14px rgba(44, 52, 65, 0.026);
}

.home-market-head-note::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 0;
    width: 54px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.74) 0%, rgba(182, 148, 93, 0.24) 100%);
}

.home-market-head-note-kicker {
    margin: 0;
    color: #5f7594;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.home-market-head-note p {
    margin: 0;
    color: #4f6177;
    font-size: 0.84rem;
    line-height: 1.42;
}

.home-market--active .home-market-head-note {
    align-self: start;
    max-width: 208px;
    padding: 9px 11px 10px;
    gap: 4px;
    border-color: rgba(105, 118, 140, 0.08);
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.76) 0%, rgba(246, 249, 252, 0.92) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 6px 14px rgba(44, 52, 65, 0.02);
}

.home-market--active .home-market-head-note::before {
    left: 11px;
    width: 36px;
}

.home-market--active .home-market-head-note-kicker {
    font-size: 0.55rem;
    letter-spacing: 0.17em;
}

.home-market--active .home-market-head-note p {
    max-width: 16ch;
    color: #5a6f89;
    font-size: 0.72rem;
    line-height: 1.34;
}

.section-head--market-closed {
    padding-bottom: clamp(14px, 2vw, 24px);
}

.home-market--closed .home-market-kicker {
    color: #4f6584;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

.home-market--closed .home-market-kicker::before {
    content: "";
    width: 48px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.18) 0%, rgba(30, 63, 128, 0.54) 100%);
}

.home-market--closed .section-head--market p {
    margin-left: auto;
    margin-right: auto;
    max-width: 60ch;
    color: #49617d;
    font-size: clamp(0.94rem, 1vw, 1rem);
    line-height: 1.46;
}

.home-market,
.home-benchmark,
.home-sellers--teaser,
.home-simulator,
.home-fit,
.home-testimonials,
.home-faq,
.home-contact {
    position: relative;
    padding-top: clamp(54px, 5.8vw, 84px);
    padding-bottom: clamp(54px, 5.8vw, 84px);
}

.home-market {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-benchmark {
    overflow: hidden;
    padding-top: clamp(28px, 3.2vw, 38px);
    padding-bottom: clamp(32px, 3.5vw, 46px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-market--active {
    overflow: hidden;
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.98) 0%, rgba(243, 247, 252, 0.98) 100%);
}

.home-search-strip + .home-market--active {
    --tn-home-market-overlap: clamp(42px, 4vw, 58px);
    margin-top: calc(var(--tn-home-market-overlap) * -1);
    /* 5-oct: el hueco entre el buscador y el título medía 106 px (80 en móvil) y se leía como un
       espacio que se quedó en blanco. Se queda en ~60 px (~50 en móvil). */
    padding-top: calc(clamp(24px, 2.6vw, 38px) + var(--tn-home-market-overlap) + clamp(14px, 1.6vw, 22px));
}

/* 5-oct: detrás del buscador asomaba el fondo blanco del degradado de la portada y cortaba la
   página con una franja blanca justo antes del azul del primer bloque. Mismo color que el final
   del degradado de la imagen y que el bloque de debajo (243,247,252), sin escalón. */
.home-flow .home-search-strip {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0, rgb(243, 247, 252) 30px);
}

.home-search-strip + .home-market--active::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: calc(var(--tn-home-market-overlap) * -1);
    height: calc(var(--tn-home-market-overlap) + clamp(18px, 2.2vw, 30px));
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.18) 36%, rgba(243, 247, 252, 0.58) 72%, rgba(243, 247, 252, 1) 100%);
    pointer-events: none;
}

.home-market--active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: clamp(20px, 2.8vw, 30px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 56%, rgba(243, 247, 252, 0.2) 100%);
    pointer-events: none;
}

.home-market--closed {
    background:
        radial-gradient(circle at 14% 12%, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0) 24%),
        linear-gradient(180deg, rgba(243, 247, 252, 0.94) 0%, rgba(243, 247, 252, 0.94) 100%);
}

.home-market--closed::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: clamp(30px, 4vw, 48px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 54%, rgba(243, 247, 252, 0.18) 100%);
    pointer-events: none;
}

.home-authority + .home-market--closed {
    padding-top: clamp(18px, 2.5vw, 28px);
}

.home-market--closed + .home-benchmark {
    padding-top: clamp(14px, 2vw, 22px);
}

.home-market--closed + .home-simulator {
    padding-top: clamp(34px, 3.6vw, 52px);
}

.home-simulator + .home-benchmark {
    padding-top: clamp(28px, 3vw, 42px);
}

.home-benchmark + .home-sellers--teaser {
    padding-top: clamp(36px, 3.8vw, 54px);
}

.home-authority::after,
.home-benchmark::after,
.home-simulator::after,
.home-sellers--teaser::after,
.home-testimonials::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    pointer-events: none;
}

.home-authority::after {
    height: clamp(24px, 3.2vw, 36px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 68%, rgba(243, 247, 252, 0.18) 100%);
}

.home-benchmark::after {
    height: clamp(22px, 3vw, 34px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 56%, rgba(243, 247, 252, 0.18) 100%);
}

.home-sellers--teaser::after {
    height: clamp(22px, 3vw, 34px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 66%, rgba(243, 247, 252, 0.18) 100%);
}

.home-testimonials::after {
    height: clamp(18px, 2.6vw, 28px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.06) 70%, rgba(243, 247, 252, 0.14) 100%);
}

.home-market + .home-market {
    padding-top: clamp(16px, 2.2vw, 24px);
}

.home-testimonials + .home-contact {
    padding-top: clamp(32px, 3.4vw, 48px);
}

.home-market .home-shell {
    position: relative;
    isolation: isolate;
}

.home-market .home-shell::before {
    content: none;
}

.home-market--closed .home-shell::before {
    content: none;
}

.home-market .home-shell::after {
    content: "";
    position: absolute;
    left: 50%;
    top: -14px;
    transform: translateX(-50%);
    width: min(420px, 60vw);
    height: 110px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(30, 63, 128, 0.1) 0%, rgba(30, 63, 128, 0.03) 34%, rgba(30, 63, 128, 0) 72%);
    pointer-events: none;
    z-index: 0;
}

.home-market--closed .home-shell::after {
    content: none;
}

.home-market--active .home-shell::after {
    content: none;
}

.home-market .home-shell > * {
    position: relative;
    z-index: 1;
}

.home-market-priority {
    position: relative;
    margin: clamp(18px, 2vw, 24px) auto 0;
    max-width: min(1240px, 100%);
    overflow: hidden;
    border: 1px solid rgba(106, 118, 138, 0.1);
    border-radius: 21px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(248, 244, 239, 0.975) 100%);
    box-shadow: 0 8px 16px rgba(47, 53, 65, 0.026), inset 0 1px 0 rgba(255, 255, 255, 0.8);
    padding: clamp(12px, 1.25vw, 15px);
    display: grid;
    grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
    gap: clamp(10px, 1.1vw, 16px);
    align-items: start;
}

.home-market-priority::before {
    content: "";
    position: absolute;
    left: clamp(18px, 1.8vw, 26px);
    top: 0;
    width: clamp(70px, 7vw, 96px);
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.74) 0%, rgba(30, 63, 128, 0.22) 78%, rgba(182, 148, 93, 0.1) 100%);
}

.home-market-priority::after {
    content: none;
}

.home-market-priority__copy {
    display: grid;
    align-content: start;
    gap: 8px;
}

.home-market-priority__eyebrow {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-size: 0.66rem;
    font-weight: 800;
    color: #5d7090;
}

.home-market-priority__copy h3 {
    margin: 0;
    max-width: 16.8ch;
    color: #132f56;
    font-size: clamp(1.28rem, 1.46vw, 1.5rem);
    line-height: 0.94;
    letter-spacing: -0.034em;
}

.home-market-priority__lead {
    margin: 0;
    max-width: 38ch;
    color: #53677f;
    font-size: 0.84rem;
    line-height: 1.34;
}

.home-market-priority__controls {
    display: grid;
    align-content: start;
    gap: 5px;
}

.home-market-priority__pills {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    align-items: stretch;
    padding: 3px;
    border: 1px solid rgba(113, 128, 149, 0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 18% 0%, rgba(194, 173, 136, 0.11) 0%, rgba(194, 173, 136, 0) 38%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.72) 0%, rgba(245, 249, 253, 0.56) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 8px 18px rgba(24, 37, 57, 0.014),
        0 2px 5px rgba(24, 37, 57, 0.014);
}

.home-market-priority__pill {
    position: relative;
    display: grid;
    align-content: start;
    min-height: 38px;
    padding: 0.5rem 0.78rem 0.36rem;
    border-radius: 15px;
    border: 1px solid rgba(139, 154, 177, 0.2);
    background:
        radial-gradient(circle at 16% 8%, rgba(191, 166, 122, 0.1) 0%, rgba(191, 166, 122, 0) 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.985) 0%, rgba(247, 249, 252, 0.92) 100%);
    color: #465d77;
    font-size: 0.71rem;
    font-weight: 750;
    line-height: 1.14;
    text-align: left;
    cursor: pointer;
    opacity: 0.98;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.94),
        inset 0 -1px 0 rgba(194, 173, 136, 0.08),
        0 9px 16px rgba(24, 37, 57, 0.038),
        0 2px 6px rgba(24, 37, 57, 0.022);
    transition: transform 0.36s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.32s ease, color 0.32s ease, background-color 0.36s ease, box-shadow 0.36s ease, border-color 0.32s ease, letter-spacing 0.32s ease;
}

.home-market-priority__pill::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0.78rem;
    width: 24px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.82) 0%, rgba(191, 163, 108, 0.34) 42%, rgba(30, 63, 128, 0.08) 100%);
}

.home-market-priority__pill:hover,
.home-market-priority__pill:focus-visible,
.home-market-priority__pill.is-active {
    opacity: 1;
    color: #173a60;
    letter-spacing: -0.01em;
    border-color: rgba(122, 144, 176, 0.26);
    background:
        radial-gradient(circle at 14% 8%, rgba(191, 166, 122, 0.14) 0%, rgba(191, 166, 122, 0) 36%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.998) 0%, rgba(245, 248, 252, 0.978) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.98),
        inset 0 -1px 0 rgba(194, 173, 136, 0.1),
        0 12px 20px rgba(24, 37, 57, 0.044),
        0 3px 8px rgba(24, 37, 57, 0.028);
    transform: translateY(-2px);
}

.home-market-priority__pill:focus-visible {
    outline: none;
}

.home-market-priority__detail {
    position: relative;
    min-height: 30px;
    padding: 4px 0 0 0;
}

.home-market-priority__detail::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 36px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.3) 0%, rgba(30, 63, 128, 0.06) 100%);
}

.home-market-priority__detail-panel {
    margin: 0;
    max-width: 36ch;
    color: #52657d;
    font-size: 0.84rem;
    line-height: 1.3;
    letter-spacing: -0.012em;
}

.home-market-priority__detail-panel:not(.is-active) {
    display: none;
}

.home-market-priority__aside {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px 16px;
    grid-column: 1 / -1;
    padding-top: 8px;
    border-top: 1px solid rgba(104, 118, 140, 0.1);
}

.home-market-priority__note {
    margin: 0;
    max-width: 34ch;
    color: #5a6d86;
    font-size: 0.77rem;
    line-height: 1.28;
}

.home-market-priority__actions {
    display: grid;
    justify-items: center;
    justify-self: end;
    width: min(100%, 258px);
    gap: 6px;
    text-align: center;
}

.home-market-priority__cta {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    width: min(100%, 258px);
    max-width: 100%;
    min-height: 40px;
    padding: 0.54rem 0.94rem;
    border-radius: 999px;
    border: 1px solid rgba(23, 49, 93, 0.28);
    background: var(--tn-brand, #1e3f80);
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 800;
    letter-spacing: normal;
    /* 31-ago-2026: era el único tratamiento en MAYÚSCULAS de los 84 botones azules de la
       web (5 de 84). Se pasa al normal. El tamaño sube porque en minúsculas 0,7rem se queda
       diminuto: en mayúsculas la letra ocupa más y compensaba. */
    text-transform: none;
    text-decoration: none;
    box-shadow: var(--tn-boton-sombra);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
    white-space: nowrap;
}

.home-market-priority__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: #5b7190;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    text-align: center;
    text-decoration: none;
    transition: color 0.22s ease, transform 0.22s ease;
}

.home-market-priority__link:hover,
.home-market-priority__link:focus-visible {
    color: #173a60;
    transform: translateY(-1px);
    outline: none;
}

.home-market-priority__cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 62px;
    height: 1px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0) 0%, rgba(30, 63, 128, 0.72) 58%, rgba(182, 148, 93, 0.2) 92%, rgba(30, 63, 128, 0) 100%);
    opacity: 0.9;
    pointer-events: none;
}

.home-market-priority__cta::after {
    content: "";
    position: absolute;
    top: -80%;
    left: -42%;
    width: 38%;
    height: 240%;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.56) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-180%) rotate(18deg);
    transition: transform 0.62s ease;
    pointer-events: none;
}

.home-market-priority__cta:hover,
.home-market-priority__cta:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(20, 47, 91, 0.36);
    background: linear-gradient(145deg, #365e97 0%, #23497f 52%, #173967 100%);
    color: #ffffff;
    box-shadow: 0 12px 22px rgba(10, 29, 59, 0.16), 0 6px 12px rgba(9, 25, 52, 0.085);
    outline: none;
}

.home-market-priority__cta:hover::after,
.home-market-priority__cta:focus-visible::after {
    transform: translateX(340%) rotate(18deg);
}

.home-market-priority--active {
    grid-template-columns: minmax(370px, 0.94fr) minmax(0, 1.06fr);
    border-color: rgba(104, 116, 136, 0.11);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(248, 244, 238, 0.98) 100%);
    box-shadow: 0 10px 20px rgba(47, 53, 65, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.home-market-priority--active .home-market-priority__copy {
    gap: 11px;
}

.home-market-priority--active .home-market-priority__copy h3 {
    max-width: 17ch;
    color: #143257;
    font-size: clamp(1.28rem, 1.46vw, 1.5rem);
}

.home-market-priority--active .home-market-priority__lead {
    max-width: 39ch;
    color: #556880;
}

.home-market-priority--active .home-market-priority__pill {
    color: #54697f;
}

.home-market-priority--active .home-market-priority__detail-panel {
    color: #566a81;
}

.home-market-priority--active .home-market-priority__aside {
    padding-top: 8px;
}

.home-market-priority--active .home-market-priority__note {
    max-width: 36ch;
}

.home-market-priority--closed {
    grid-template-columns: minmax(360px, 0.92fr) minmax(0, 1.08fr);
    border-color: rgba(108, 120, 142, 0.12);
    background:
        radial-gradient(circle at 88% 16%, rgba(88, 116, 163, 0.08) 0%, rgba(88, 116, 163, 0) 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(246, 248, 252, 0.985) 100%);
}

.home-market-priority--closed .home-market-priority__copy h3 {
    max-width: 15.8ch;
    color: #16365c;
}

.home-market-priority--closed .home-market-priority__lead {
    max-width: 37ch;
    color: #596d84;
}

.home-market-priority--closed .home-market-priority__pill {
    color: #556a80;
}

.home-market-priority--closed .home-market-priority__detail-panel {
    color: #5b6e83;
}

.home-market-priority--closed .home-market-priority__note {
    max-width: 42ch;
    color: #5d7088;
}

@media (max-width: 991px) {
    .home-market-head-layout {
        grid-template-columns: 1fr;
        gap: 16px;
        align-items: start;
        justify-content: stretch;
    }

    .home-market-head-note {
        max-width: 34ch;
    }

}

.home-market-kicker {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.68rem;
    font-weight: 800;
    color: #586d8d;
}

.home-market-listings {
    position: relative;
    isolation: isolate;
    margin-top: clamp(26px, 3.3vw, 40px);
    padding-top: clamp(18px, 2.4vw, 30px);
}

.home-market--closed .home-market-listings {
    margin-top: clamp(24px, 3vw, 36px);
    padding-top: clamp(20px, 2.5vw, 30px);
}

.home-market-listings::before {
    content: none;
}

.home-market-listings::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 4px;
    transform: translateX(-50%);
    width: min(1260px, 100%);
    height: clamp(108px, 14vw, 176px);
    background:
        radial-gradient(ellipse at center top, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.54) 32%, rgba(255, 255, 255, 0.18) 58%, rgba(255, 255, 255, 0) 78%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0) 84%);
    pointer-events: none;
    z-index: 0;
}

.home-market--closed .home-market-listings::after {
    background:
        radial-gradient(ellipse at center top, rgba(248, 250, 253, 0.92) 0%, rgba(248, 250, 253, 0.56) 34%, rgba(248, 250, 253, 0.18) 60%, rgba(248, 250, 253, 0) 80%),
        linear-gradient(180deg, rgba(246, 248, 252, 0.28) 0%, rgba(246, 248, 252, 0) 84%);
}

.home-property-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(18px, 2vw, 26px);
}

.home-property-grid.is-collapsible .home-property-card.is-collapsed {
    display: none;
}

.home-property-grid.is-collapsible .home-property-card.is-filter-hidden {
    display: none;
}

.home-market-listings.is-loading {
    opacity: 0.72;
    transition: opacity 0.2s ease;
}

.home-market-more {
    position: relative;
    z-index: 1;
    width: 100%;
    margin: clamp(24px, 2.8vw, 36px) auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-market-more .btn {
    min-width: min(100%, 320px);
    min-height: 54px;
    border-radius: 999px;
    text-align: center;
    box-shadow: 0 14px 28px rgba(23, 48, 87, 0.12);
}

.home-market-more .home-market-more__cta {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: min(100%, 332px);
    min-height: 52px;
    padding: 0.82rem 1.34rem;
    border-radius: var(--tn-boton-radio);
    font-size: 0.9rem;
    font-weight: var(--tn-boton-peso);
    letter-spacing: normal;
    text-decoration: none;
    box-shadow: var(--tn-boton-sombra);
}

.home-market-more .home-market-more__cta::before {
    /* 30-ago: era un brillo estático en el borde de arriba. Ahora es el destello
       que cruza, el mismo que el resto de botones de la web.

       ⚠️ TIENE QUE IR EN `::before`. El `::after` de este botón es la FLECHA «→»
       (`content: "→"` justo abajo). El 30-ago por la mañana se le puso ahí el
       destello con `content: ""` y la flecha DESAPARECIÓ de la portada. */
    content: "";
    position: absolute;
    top: -110%;
    left: -55%;
    width: 48%;
    height: 290%;
    border-radius: 0;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.28) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-140%) rotate(14deg);
    transition: transform 0.52s ease;
    pointer-events: none;
    z-index: 0;
}

.home-market-more .home-market-more__cta--active:hover::before,
.home-market-more .home-market-more__cta--active:focus-visible::before {
    transform: translateX(260%) rotate(14deg);
}

/* El de «cerrados» es CLARO a propósito: un destello blanco ahí no se ve. */
.home-market-more .home-market-more__cta--closed::before {
    content: none;
}

.home-market-more .home-market-more__cta::after {
    content: "→";
    position: relative;
    z-index: 1;
    font-size: 0.9rem;
    line-height: 1;
    opacity: 0.88;
    transition: transform 0.22s ease;
}

.home-market-more .home-market-more__cta--active {
    /* `--tn-boton-borde` lleva el grosor dentro («1px solid …»), así que aquí va
       solo el color. */
    border-color: rgba(20, 47, 91, 0.24);
    background: var(--tn-brand, #1e3f80);
    color: #ffffff;
}

.home-market-more .home-market-more__cta--closed {
    border-color: rgba(126, 139, 161, 0.18);
    background:
        radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.72) 0%, rgba(255, 255, 255, 0) 30%),
        linear-gradient(145deg, #f8fbfe 0%, #eef3f9 56%, #e7eef7 100%);
    color: #17385f;
    box-shadow: 0 12px 24px rgba(34, 52, 79, 0.07), 0 5px 12px rgba(34, 52, 79, 0.035);
}

.home-market-more .btn.is-loading {
    cursor: wait;
    opacity: 0.76;
}

.home-market-more[hidden] {
    display: none;
}

.home-sellers--teaser {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-simulator {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-simulator::after {
    height: clamp(24px, 3.2vw, 36px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.08) 56%, rgba(243, 247, 252, 0.18) 100%);
}

.home-property-card {
    position: relative;
    isolation: isolate;
    border: 1px solid rgba(89, 99, 114, 0.16);
    border-radius: 32px;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0) 38%),
        linear-gradient(180deg, #fffefb 0%, #faf6ee 55%, #f5efe5 100%);
    box-shadow: 0 24px 48px rgba(42, 46, 55, 0.1), 0 10px 24px rgba(114, 92, 59, 0.08);
    display: flex;
    flex-direction: column;
    min-height: 100%;
    transition: transform 0.72s cubic-bezier(0.19, 1, 0.22, 1), box-shadow 0.62s ease, border-color 0.52s ease;
}

.home-property-card::before {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(108, 121, 140, 0.3) 0%, rgba(186, 155, 113, 0.28) 54%, rgba(108, 121, 140, 0.08) 100%);
    z-index: 2;
    pointer-events: none;
}

.home-property-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), inset 0 -1px 0 rgba(196, 176, 144, 0.08);
    pointer-events: none;
}

.home-market .home-property-card:hover,
.home-market .home-property-card:focus-within {
    transform: translateY(-3px);
    border-color: rgba(102, 115, 136, 0.24);
    box-shadow: 0 24px 46px rgba(46, 52, 64, 0.12), 0 10px 20px rgba(112, 92, 64, 0.08);
    will-change: transform;
}

.home-market--closed .home-property-card {
    border-color: rgba(101, 112, 130, 0.16);
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.92) 0%, rgba(255, 255, 255, 0) 38%),
        linear-gradient(180deg, #fbfcfe 0%, #f4f7fb 56%, #edf2f8 100%);
    box-shadow: 0 20px 40px rgba(44, 50, 61, 0.085), 0 10px 22px rgba(89, 99, 115, 0.07);
}

.home-market--closed .home-property-card:hover,
.home-market--closed .home-property-card:focus-within {
    transform: translateY(-3px);
    border-color: rgba(95, 110, 136, 0.28);
    box-shadow: 0 22px 38px rgba(48, 55, 68, 0.11), 0 8px 16px rgba(94, 101, 117, 0.075);
}

.home-market--closed .home-property-grid {
    gap: clamp(20px, 2.2vw, 28px);
    align-items: start;
}

.home-market--active .home-property-grid {
    gap: clamp(20px, 2.2vw, 30px);
    align-items: start;
}

.home-market--active .home-property-card {
    border-color: rgba(96, 109, 128, 0.14);
    background:
        radial-gradient(circle at 82% 0%, rgba(201, 213, 228, 0.14) 0%, rgba(201, 213, 228, 0) 36%),
        radial-gradient(circle at 12% 100%, rgba(198, 166, 112, 0.06) 0%, rgba(198, 166, 112, 0) 34%),
        linear-gradient(180deg, #fffefb 0%, #f8f4ed 54%, #f3ece2 100%);
    box-shadow: 0 20px 42px rgba(44, 50, 61, 0.09), 0 8px 20px rgba(95, 82, 61, 0.06);
}

.home-market--active .home-property-card:hover,
.home-market--active .home-property-card:focus-within {
    transform: translateY(-3px);
    border-color: rgba(96, 111, 134, 0.24);
    box-shadow: 0 24px 46px rgba(45, 52, 64, 0.12), 0 9px 18px rgba(95, 82, 61, 0.07);
}

.home-market--active .home-property-card::before {
    left: 20px;
    right: 20px;
    background: linear-gradient(90deg, rgba(99, 114, 136, 0.32) 0%, rgba(182, 148, 93, 0.24) 54%, rgba(99, 114, 136, 0.08) 100%);
}

.home-market--active .home-property-card__media img {
    filter: saturate(0.96) contrast(1.02) brightness(0.97);
}

.home-market--active .home-property-card__body {
    padding: 25px 24px 23px;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0) 32%),
        linear-gradient(180deg, rgba(255, 254, 250, 0.985) 0%, rgba(247, 242, 235, 0.985) 100%);
}

.home-market--active .home-property-card__body h3 {
    font-size: clamp(1.18rem, 1.46vw, 1.42rem);
}

.home-market--active .home-property-card__teaser {
    color: #586676;
    min-height: 0;
    line-height: 1.54;
    -webkit-line-clamp: 2;
}

.home-market--active .home-property-card__chips {
    gap: 8px 14px;
}

.home-market--active .home-property-card__chips li {
    color: #5a687a;
}

.home-market--active .home-property-card__chip--zone {
    color: #59708f;
    border-bottom-color: rgba(101, 112, 130, 0.12);
}

.home-market--active .home-property-card__pricing {
    border-top-color: rgba(94, 106, 126, 0.14);
}

.home-market--active .home-property-card__price-value {
    color: #14345f;
}

.home-market--active .home-property-card__actions {
    align-items: start;
    gap: 10px;
}

.home-market--active .home-property-card__cta {
    min-height: var(--tn-boton-alto);
    border-color: rgba(20, 47, 91, 0.24);
    border-radius: var(--tn-boton-radio);
    background: var(--tn-brand, #1e3f80);
    color: #ffffff;
    /* Estaba a 0.92rem mientras la tarjeta de al lado usaba 0.98rem: dos tamaños
       de letra para el mismo botón en la MISMA portada. */
    font-size: 0.98rem;
    font-weight: var(--tn-boton-peso);
    box-shadow: var(--tn-boton-sombra);
}

.home-market--active .home-property-card__cta::after {
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.28) 52%, rgba(255, 255, 255, 0) 90%);
}

.home-market--active .home-property-card__cta:hover,
.home-market--active .home-property-card__cta:focus-visible {
    background: var(--tn-brand-strong, #132a55);
    color: #ffffff;
    border-color: rgba(20, 47, 91, 0.3);
    box-shadow: var(--tn-boton-sombra-encima);
}

.home-market--active .home-property-card__cta-link {
    justify-content: flex-start;
    width: auto;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #5b6f85;
    font-size: 0.72rem;
    font-weight: 770;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    box-shadow: none;
}

.home-market--active .home-property-card__cta-link:hover,
.home-market--active .home-property-card__cta-link:focus-visible {
    color: #163b72;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    transform: translateX(2px);
}

.home-market--closed .home-property-card::before {
    left: 20px;
    right: 20px;
    background: linear-gradient(90deg, rgba(92, 108, 132, 0.34) 0%, rgba(182, 148, 93, 0.22) 52%, rgba(92, 108, 132, 0.08) 100%);
}

.home-market--closed .home-property-card__media img {
    filter: saturate(0.84) contrast(1.01) brightness(0.96);
}

.home-market--closed .home-property-card__body {
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0) 34%),
        linear-gradient(180deg, rgba(251, 252, 254, 0.985) 0%, rgba(244, 247, 251, 0.985) 100%);
}

.home-market--closed .home-property-card__body h3 {
    font-size: clamp(1.22rem, 1.5vw, 1.46rem);
}

.home-market--closed .home-property-card__teaser {
    color: #5a6879;
    line-height: 1.54;
}

.home-market--closed .home-property-card__chips {
    gap: 8px 14px;
}

.home-market--closed .home-property-card__chips li {
    color: #5d6878;
}

.home-market--closed .home-property-card__chip--zone {
    color: #607492;
    border-bottom-color: rgba(102, 114, 132, 0.12);
}

.home-market--closed .home-property-card__pricing {
    border-top-color: rgba(96, 108, 124, 0.15);
}

.home-market--closed .home-property-card__price-value {
    color: #0f315f;
}

.home-market--closed .home-property-card__actions {
    align-items: start;
    gap: 9px;
}

.home-market--closed .home-property-card__cta {
    min-height: var(--tn-boton-alto);
    border-color: rgba(20, 47, 91, 0.24);
    border-radius: var(--tn-boton-radio);
    background: var(--tn-brand, #1e3f80);
    box-shadow: var(--tn-boton-sombra);
}

.home-market--closed .home-property-card__cta:hover,
.home-market--closed .home-property-card__cta:focus-visible {
    background: var(--tn-brand-strong, #132a55);
    border-color: rgba(20, 47, 91, 0.3);
    box-shadow: var(--tn-boton-sombra-encima);
}

.home-market--closed .home-property-card__cta-link {
    justify-content: flex-start;
    width: auto;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #52677f;
    font-size: 0.72rem;
    font-weight: 760;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    box-shadow: none;
}

.home-market--closed .home-property-card__cta-link:hover,
.home-market--closed .home-property-card__cta-link:focus-visible {
    color: #173a70;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    transform: translateX(2px);
}

.home-property-card__carousel {
    position: relative;
    overflow: hidden;
    contain: paint;
    touch-action: pan-y;
    border-bottom: 0;
    margin: 10px 10px 0;
    border-radius: 26px;
    background: #132d58;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.home-market--active .home-property-card__carousel::before,
.home-market--closed .home-property-card__carousel::before {
    content: none;
}

.home-property-card__carousel::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), inset 0 -22px 36px rgba(11, 22, 42, 0.18);
    pointer-events: none;
}

.home-property-card__track {
    display: flex;
    width: 100%;
    backface-visibility: hidden;
    transition: transform 0.32s cubic-bezier(0.19, 1, 0.22, 1);
}

.home-property-card__media {
    position: relative;
    display: block;
    contain: paint;
    flex: 0 0 100%;
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    min-height: 0;
    max-height: none;
    background: linear-gradient(130deg, #1d3f81, #11284f);
    overflow: hidden;
}

.home-property-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(4, 12, 25, 0.02) 16%, rgba(5, 15, 31, 0.12) 44%, rgba(5, 15, 31, 0.54) 100%);
    pointer-events: none;
}

.home-property-card__media::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 24% 8%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0) 32%),
        radial-gradient(circle at 50% -18%, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0) 54%);
    pointer-events: none;
}

.home-property-card__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.02);
    transform-origin: center center;
    backface-visibility: hidden;
    filter: saturate(1.04) contrast(1.03) brightness(0.98);
    transition: transform 0.72s cubic-bezier(0.19, 1, 0.22, 1), filter 0.48s ease;
}

.home-market .home-property-card:hover .home-property-card__media img,
.home-market .home-property-card:focus-within .home-property-card__media img {
    transform: scale(1.08);
    filter: saturate(1.1) contrast(1.06) brightness(1.01);
}

.home-blog-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.home-property-card__fallback {
    display: block;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle at 20% 18%, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0) 42%),
        linear-gradient(140deg, rgba(30, 63, 128, 0.94) 0%, rgba(18, 40, 80, 0.96) 100%);
    opacity: 1;
}

.home-property-card__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: linear-gradient(145deg, rgba(12, 30, 58, 0.38) 0%, rgba(7, 18, 36, 0.52) 100%);
    color: #ffffff;
    cursor: pointer;
    backdrop-filter: blur(6px);
    box-shadow: 0 5px 10px rgba(6, 16, 34, 0.16);
    opacity: 0.82;
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
}

.home-property-card__nav--prev {
    left: 14px;
}

.home-property-card__nav--next {
    right: 14px;
}

.home-property-card__nav span {
    font-size: 0.92rem;
    line-height: 1;
}

.home-property-card__nav:hover,
.home-property-card__nav:focus-visible {
    background: linear-gradient(145deg, rgba(11, 34, 69, 0.45) 0%, rgba(8, 22, 43, 0.58) 100%);
    border-color: rgba(255, 255, 255, 0.36);
    transform: translateY(-50%) scale(1.01);
    opacity: 1;
    outline: none;
}

.home-property-card__body {
    padding: 24px 24px 22px;
    display: flex;
    flex-direction: column;
    gap: 0;
    flex: 1;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0) 34%),
        linear-gradient(180deg, rgba(255, 254, 250, 0.98) 0%, rgba(252, 248, 241, 0.98) 100%);
}

.home-property-card__body h3 {
    margin: 0;
    font-size: clamp(1.24rem, 1.62vw, 1.52rem);
    line-height: 1.04;
    min-height: 2.08em;
    letter-spacing: -0.032em;
}

.home-property-card__body h3 + .home-property-card__teaser {
    margin-top: 11px;
}

.home-property-card__body h3 a {
    color: var(--tn-ink-deep);
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home-property-card__teaser {
    margin: 0;
    color: #5a6677;
    font-size: 0.92rem;
    line-height: 1.54;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 3.08em;
}

.home-property-card__teaser + .home-property-card__chips {
    margin-top: 14px;
}

.home-property-card__body h3 + .home-property-card__chips {
    margin-top: 14px;
}

.home-property-card__meta {
    display: none;
}

.home-property-card__chips {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    /* 3,05rem absorbía las diferencias entre tarjetas: unas traen 3 datos y otras 4, y con dos
       líneas todas medían lo mismo. Al añadir la línea del TIPO DE NEGOCIO el contenido pasó a
       ~85 px y esa absorción dejó de funcionar: en el escaparate de traspasados los botones
       quedaban 5 px desalineados de una tarjeta a otra. La altura mínima sube lo que ha crecido
       el contenido, que es exactamente para lo que estaba puesta. */
    min-height: 5.4rem;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.home-property-card__chips li {
    display: inline-flex;
    align-items: center;
    gap: 0.34rem;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #58677d;
    font-size: 0.68rem;
    line-height: 1.3;
    font-weight: 760;
    box-shadow: none;
}

.home-property-card__chip--zone {
    flex: 1 0 100%;
    min-height: 1.62rem;
    padding: 0 0 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #6c7890;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(102, 114, 132, 0.12);
}

/* Los tres selectores, a propósito: `.home-property-card__chips li` (clase + elemento) le gana a
   una clase sola, y `.home-market--active .home-property-card__chips li` le gana a las dos. Con el
   selector corto el chip salía del gris de la lista y NO del color que dice aquí abajo. */
.home-property-card__chips li.home-property-card__chip--activity,
.home-market--active .home-property-card__chips li.home-property-card__chip--activity,
.home-market--closed .home-property-card__chips li.home-property-card__chip--activity {
    /* EL TIPO DE ACTIVIDAD, en su propia línea justo debajo de la ubicación (fundador, 6-sep-2026).
       Antes había que deducirlo del título del anuncio. Mismo bloque que la ubicación, pero SIN
       mayúsculas ni separación de letras: la ubicación es una etiqueta y esto es el negocio. */
    flex: 1 0 100%;
    min-height: 1.62rem;
    padding: 9px 0 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #1e3f80;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
    border-bottom: 1px solid rgba(102, 114, 132, 0.12);
}

.home-property-card__chips li.home-property-card__chip--activity .home-property-card__chip-icon,
.home-market--active .home-property-card__chips li.home-property-card__chip--activity .home-property-card__chip-icon,
.home-market--closed .home-property-card__chips li.home-property-card__chip--activity .home-property-card__chip-icon {
    width: 0.78rem;
    height: 0.78rem;
    color: #1e3f80;
}

.home-property-card__updated {
    /* «Actualizado el 4 sep» (y «Traspasado en …» en los cerrados): la última vez que cambió algo
       DEL NEGOCIO. Va lo último de la tarjeta, debajo de «Hablar con un asesor», fina: es una nota
       al pie, no un dato que compita con el precio.

       ALINEADA A LA IZQUIERDA, en la misma línea que todo lo demás de la tarjeta (fundador,
       7-sep-2026). Centrada la hacía parecer un pie de página aparte en vez de un dato más del
       local. `padding: 0` y `margin` lateral 0 para que arranque exactamente donde arrancan el
       título, la ubicación y los datos, no unos píxeles más adentro.

       🔴 EL GRIS NO ES EL DE LA MAQUETA. Aquel (#93a2ad) daba 2,35:1 sobre el fondo real de la
       tarjeta (#f7f2eb, el pie del degradado) — ilegible a 11 px. Este da 4,84:1 y mantiene el
       mismo papel discreto. El contraste se mide contra el fondo REAL, no contra blanco. */
    margin: 12px 0 0;
    padding: 0;
    text-align: left;
    font-size: 0.72rem;
    line-height: 1.35;
    font-weight: 500;
    color: #5e6c78;
    letter-spacing: 0.01em;
}

.home-property-card__updated b {
    font-weight: 700;
    color: #47535e;
}

.home-property-card__updated--empty {
    /* Ocupa su sitio y no se ve. Sin esto, en una fila con unas tarjetas fechadas y otras no, el
       espacio sobrante se reparte distinto en cada una y los botones quedan a distinta altura.
       `visibility` y no `display:none` justamente porque tiene que seguir ocupando.
       No hay nada enfocable dentro, así que esconderlo así no atrapa el teclado. */
    visibility: hidden;
}

.home-property-card__chip--empty {
    visibility: hidden;
}

.home-property-card__chip {
    padding-left: 0;
}

.home-property-card__chip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 0.74rem;
    height: 0.74rem;
    color: #667487;
    flex: 0 0 auto;
    opacity: 0.92;
}

.home-property-card__chip--zone .home-property-card__chip-icon {
    width: 0.78rem;
    height: 0.78rem;
    color: #1e3f80;
}

.home-property-card__chip-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.home-property-card__chip-label {
    display: inline-flex;
    align-items: center;
}

.home-property-card__pricing {
    margin: auto 0 0;
    padding-top: 16px;
    display: grid;
    gap: 8px;
    width: 100%;
    border-top: 1px solid rgba(96, 106, 123, 0.14);
    background: transparent;
    box-shadow: none;
}

.home-property-card__price-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: end;
    gap: 10px;
}

.home-property-card__price-term {
    color: #7b8494;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.home-property-card__price-value {
    justify-self: end;
    text-align: right;
    color: #173a70;
    font-weight: 800;
    letter-spacing: -0.02em;
    font-size: clamp(1.02rem, 1.16vw, 1.12rem);
    line-height: 1.08;
    white-space: nowrap;
}

.home-property-card__price-row--transfer .home-property-card__price-value {
    color: #123666;
    font-size: clamp(1.34rem, 1.72vw, 1.58rem);
    font-weight: 860;
    line-height: 1;
}

.home-property-card__price-row--rent .home-property-card__price-term {
    opacity: 0.82;
}

.home-property-card__price-row--rent .home-property-card__price-value {
    color: #365a84;
    font-size: clamp(0.86rem, 0.96vw, 0.98rem);
    font-weight: 760;
    letter-spacing: -0.01em;
    line-height: 1.12;
}

.home-property-card__price-value .price_label,
.home-property-card__price-value .price_label_before {
    color: inherit;
    font-size: 0.76em;
    font-weight: 720;
    letter-spacing: 0;
    text-transform: none;
}

.home-property-card__price-value .price_label_before {
    margin-right: 0.18rem;
}

.home-property-card__actions {
    margin-top: 15px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.home-property-card__cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* 30-ago: era el botón más repetido de la web (39 en portada, distritos y
       guías) y el único que no hablaba como el de la portada: esquina de 18 px,
       degradado propio y sombra triple. Ahora lee los tokens del botón de la casa.
       El tamaño de letra y el padding NO se tocan: tienen que caber en la tarjeta. */
    min-height: var(--tn-boton-alto);
    width: 100%;
    padding: 0.72rem 1rem;
    border-radius: var(--tn-boton-radio);
    border: var(--tn-boton-borde);
    background: var(--tn-brand, #1e3f80);
    color: #ffffff;
    font-size: 0.98rem;
    font-weight: var(--tn-boton-peso);
    letter-spacing: normal;
    text-decoration: none;
    box-shadow: var(--tn-boton-sombra);
    transition: transform 0.34s cubic-bezier(0.16, 1, 0.3, 1), background 0.34s ease, border-color 0.34s ease, box-shadow 0.34s ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.home-property-card__cta::after {
    content: "";
    position: absolute;
    top: -110%;
    left: -55%;
    width: 48%;
    height: 290%;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.28) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-140%) rotate(14deg);
    transition: transform 0.72s cubic-bezier(0.16, 1, 0.3, 1);
    pointer-events: none;
}

.home-property-card__cta-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 36px;
    width: 100%;
    padding: 0.36rem 0.76rem;
    border-radius: 999px;
    border: 1px solid rgba(30, 63, 128, 0.12);
    background: rgba(255, 255, 255, 0.68);
    color: #1e3f80;
    font-size: 0.8rem;
    font-weight: 740;
    letter-spacing: 0.02em;
    text-decoration: none;
    transition: color 0.34s ease, background-color 0.34s ease, border-color 0.34s ease, box-shadow 0.34s ease, transform 0.34s cubic-bezier(0.16, 1, 0.3, 1);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.home-property-card__cta-link::after {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    transform: rotate(45deg);
    flex: 0 0 auto;
}

.home-property-card__cta:hover,
.home-property-card__cta:focus-visible {
    transform: translateY(-1px);
    background: linear-gradient(142deg, #1f57ad 0%, #15478f 58%, #123c76 100%);
    border-color: rgba(20, 47, 91, 0.38);
    box-shadow: 0 18px 34px rgba(10, 29, 59, 0.24), 0 7px 12px rgba(9, 25, 52, 0.14);
    outline: none;
}

.home-property-card__cta:hover::after,
.home-property-card__cta:focus-visible::after {
    transform: translateX(260%) rotate(14deg);
}

.home-property-card__cta-link:hover,
.home-property-card__cta-link:focus-visible {
    color: #153b77;
    background: rgba(255, 255, 255, 0.88);
    border-color: rgba(30, 63, 128, 0.18);
    box-shadow: 0 10px 18px rgba(28, 49, 86, 0.06);
    outline: none;
}

.home-market--active .section-head--market,
.home-market--closed .section-head--market {
    margin-bottom: clamp(24px, 3vw, 34px);
    max-width: min(1160px, calc(100% - 24px));
    padding-bottom: clamp(14px, 1.8vw, 20px);
}

.home-market--active .section-head--market {
    margin-bottom: clamp(18px, 2.4vw, 26px);
    max-width: min(1000px, calc(100% - 24px));
    padding-bottom: clamp(10px, 1.2vw, 14px);
}

.home-market-head-layout {
    grid-template-columns: minmax(0, 1.18fr) minmax(220px, 260px);
    gap: clamp(22px, 2.8vw, 40px);
    align-items: start;
}

.home-market--active .home-market-head-layout {
    grid-template-columns: minmax(0, 1fr) minmax(172px, 214px);
    gap: clamp(18px, 2.2vw, 28px);
}

.home-market-head-copy {
    gap: 12px;
}

.home-market--active .home-market-head-copy {
    gap: 10px;
}

.home-market--active .section-head--market h2,
.home-market--closed .section-head--market h2 {
    max-width: 13.5ch;
    font-size: clamp(2.28rem, 3.28vw, 3.08rem);
    line-height: 0.95;
}

.home-market--active .section-head--market h2 {
    max-width: none;
    font-size: clamp(1.98rem, 2.84vw, 2.54rem);
    line-height: 0.94;
    letter-spacing: -0.044em;
}

.home-market--closed .section-head--market h2 {
    max-width: none;
    font-size: clamp(1.98rem, 2.84vw, 2.54rem);
    line-height: 0.94;
    letter-spacing: -0.044em;
}

.home-market--active .home-market-head-copy > p,
.home-market--closed .home-market-head-copy > p {
    max-width: 46ch;
    font-size: clamp(0.98rem, 1.06vw, 1.08rem);
    line-height: 1.5;
}

.home-market--active .home-market-head-copy > p {
    max-width: 34ch;
    font-size: clamp(0.94rem, 1vw, 1rem);
    line-height: 1.46;
}

.home-market--closed .section-head--market p {
    max-width: 60ch;
    font-size: clamp(0.94rem, 1vw, 1rem);
    line-height: 1.46;
}

.home-market-head-note {
    align-self: start;
    max-width: 252px;
    padding: 11px 12px 12px;
    gap: 5px;
    border-radius: 18px;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 10px 20px rgba(44, 52, 65, 0.03);
}

.home-market-head-note::before {
    left: 12px;
    width: 48px;
}

.home-market-head-note-kicker {
    font-size: 0.6rem;
    letter-spacing: 0.17em;
}

.home-market-head-note p {
    font-size: 0.8rem;
    line-height: 1.4;
}

.home-market--active .home-market-head-note {
    max-width: 208px;
    padding: 9px 11px 10px;
    gap: 4px;
    border-radius: 14px;
    border-color: rgba(105, 118, 140, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.76) 0%, rgba(246, 249, 252, 0.92) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 6px 14px rgba(44, 52, 65, 0.02);
}

.home-market--active .home-market-head-note::before {
    left: 11px;
    width: 36px;
}

.home-market--active .home-market-head-note-kicker {
    font-size: 0.55rem;
    letter-spacing: 0.17em;
}

.home-market--active .home-market-head-note p {
    max-width: 16ch;
    color: #5a6f89;
    font-size: 0.72rem;
    line-height: 1.34;
}

.home-market-priority,
.home-market-priority__copy {
    gap: 10px;
}

.home-market-priority__copy h3 {
    max-width: 16.8ch;
    font-size: clamp(1.34rem, 1.62vw, 1.72rem);
    line-height: 0.95;
}

.home-market-priority__lead {
    max-width: 38ch;
    font-size: 0.89rem;
    line-height: 1.45;
}

.home-market-priority__controls {
    gap: 8px;
}
.home-market-priority__aside {
    gap: 10px;
    padding-top: 12px;
}

.home-market-priority__note {
    max-width: 42ch;
    font-size: 0.8rem;
    line-height: 1.36;
}

.home-market-priority__cta {
    min-height: 42px;
    padding-inline: 1rem;
    font-size: 0.69rem;
}

.home-authority {
    position: relative;
    overflow: hidden;
    margin-top: 0;
    padding-top: clamp(40px, 5.2vw, 62px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-market--active + .home-authority {
    --tn-home-authority-overlap: clamp(18px, 2.2vw, 28px);
    margin-top: calc(var(--tn-home-authority-overlap) * -1);
    padding-top: calc(clamp(10px, 1.4vw, 16px) + var(--tn-home-authority-overlap));
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-market--active + .home-authority::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: calc(var(--tn-home-authority-overlap) * -1);
    height: calc(var(--tn-home-authority-overlap) + clamp(20px, 2.6vw, 34px));
    background: linear-gradient(180deg, rgba(243, 247, 252, 0) 0%, rgba(243, 247, 252, 0.14) 34%, rgba(243, 247, 252, 0.36) 70%, rgba(243, 247, 252, 0.88) 100%);
    pointer-events: none;
}

.home-authority::before {
    content: none;
}

.home-authority .home-shell {
    position: relative;
    z-index: 2;
}

.section-head--authority {
    --tn-section-title-gap: 14px;
    --tn-section-copy-gap: 18px;
    --tn-section-foot-gap: 0;
    max-width: 940px;
    margin-bottom: clamp(14px, 1.6vw, 20px);
    padding-bottom: clamp(8px, 0.9vw, 10px);
}

.section-head--authority .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 0.7rem;
    font-weight: 750;
    letter-spacing: 0.17em;
    opacity: 0.72;
}

.section-head--authority .eyebrow::before {
    content: "";
    width: 54px;
    height: 1px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.12) 0%, rgba(30, 63, 128, 0.42) 100%);
}

.section-head--authority h2 {
    max-width: 17.1ch;
    font-size: clamp(1.86rem, 3vw, 2.94rem);
    line-height: 0.94;
    letter-spacing: -0.048em;
    text-wrap: balance;
}

.section-head--authority p:not(.eyebrow) {
    max-width: none;
    margin-top: var(--tn-section-copy-gap);
    color: #435d7a;
    font-size: clamp(0.92rem, 0.98vw, 0.98rem);
    line-height: 1.5;
}

.home-authority__title-line {
    display: inline;
}

.home-benchmark__panel {
    position: relative;
    display: grid;
    grid-template-columns: minmax(252px, 0.5fr) minmax(0, 1.5fr);
    grid-template-areas: "copy field";
    gap: 18px 42px;
    align-items: start;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}

.home-benchmark__panel::before {
    content: "";
    position: absolute;
    top: -2px;
    left: 0;
    width: clamp(54px, 5vw, 72px);
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.72) 0%, rgba(197, 168, 111, 0.14) 100%);
    pointer-events: none;
}

.home-benchmark__panel::after {
    content: none;
}

.home-benchmark__copy {
    display: grid;
    grid-area: copy;
    align-content: start;
    gap: 13px;
    max-width: 22.5rem;
    padding-top: 24px;
    position: relative;
    z-index: 1;
}

.home-benchmark__eyebrow {
    margin: 0;
    color: #5c6f89;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.home-benchmark__copy h2 {
    margin: 0;
    max-width: 12.6ch;
    color: #1e3653;
    font-size: clamp(1.5rem, 2.1vw, 2.02rem);
    line-height: 0.96;
    letter-spacing: -0.04em;
}

.home-benchmark__copy > p:last-child {
    margin: 0;
    max-width: 28ch;
    color: #536983;
    font-size: 0.865rem;
    line-height: 1.56;
}

.home-benchmark__field {
    grid-area: field;
    display: grid;
    gap: 12px;
    align-content: start;
    padding-top: 22px;
    padding-left: 0;
    border-left: 0;
    position: relative;
    z-index: 1;
}

.home-benchmark__field::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, rgba(111, 125, 145, 0.18) 0%, rgba(111, 125, 145, 0.08) 46%, rgba(111, 125, 145, 0) 100%);
    pointer-events: none;
}

.home-benchmark__field-head {
    display: grid;
    gap: 4px;
}

.home-benchmark__field-kicker {
    margin: 0;
    color: #5f728c;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.175em;
    text-transform: uppercase;
}

.home-benchmark__register {
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(150px, 16vw, 182px);
    gap: 20px;
    align-items: stretch;
}

.home-benchmark__logos {
    grid-area: unset;
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    gap: 0;
    overflow: visible;
    white-space: normal;
    border-top: 1px solid rgba(106, 119, 139, 0.075);
    border-bottom: 1px solid rgba(106, 119, 139, 0.075);
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    background: transparent;
    position: relative;
    z-index: 1;
}

.home-benchmark__logos li {
    min-height: 62px;
    display: flex;
    align-items: center;
    min-width: 0;
    padding: 0 18px 0 16px;
    border-right: 1px solid rgba(106, 119, 139, 0.05);
    border-bottom: 1px solid rgba(106, 119, 139, 0.05);
}

.home-benchmark__logos li:nth-child(4n) {
    border-right: 0;
}

.home-benchmark__logos li:nth-last-child(-n + 4) {
    border-bottom: 0;
}

.home-benchmark__logos span {
    color: #425974;
    font-size: clamp(0.72rem, 0.8vw, 0.79rem);
    font-weight: 730;
    letter-spacing: 0.006em;
    line-height: 1.2;
    text-transform: none;
    opacity: 0.93;
    text-wrap: pretty;
}

.home-benchmark__logos::-webkit-scrollbar {
    height: 4px;
}

.home-benchmark__logos::-webkit-scrollbar-thumb {
    background: rgba(30, 63, 128, 0.16);
    border-radius: 999px;
}

.home-benchmark__margin {
    min-height: 100%;
    display: grid;
    align-content: end;
    padding: 6px 0 2px 18px;
    border-left: 1px solid rgba(106, 119, 139, 0.058);
}

.home-benchmark__note {
    margin: 0;
    color: #667282;
    font-size: 0.655rem;
    line-height: 1.48;
    max-width: 18ch;
    padding-top: 0;
    border-top: 0;
    position: relative;
    z-index: 1;
}

.home-benchmark__panel {
    margin-top: 0;
}

.section-head--testimonials {
    max-width: min(940px, 100%);
}
.home-fit {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-testimonials {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-fit__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.home-fit__card {
    border: 1px solid rgba(98, 108, 124, 0.16);
    border-radius: 16px;
    background: linear-gradient(155deg, rgba(255, 253, 249, 0.98) 0%, rgba(244, 247, 252, 0.95) 100%);
    box-shadow: 0 8px 16px rgba(62, 65, 74, 0.06);
    padding: 18px 18px 16px;
}

.home-fit__card h3 {
    margin: 0;
    color: #1a3253;
    font-size: 1.02rem;
    line-height: 1.24;
}

.home-fit__card ul {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 9px;
}

.home-fit__card li {
    display: flex;
    align-items: flex-start;
    gap: 0.46rem;
    color: #516175;
    font-size: 0.9rem;
    line-height: 1.44;
}

.home-fit__card li::before {
    content: "";
    width: 0.34rem;
    height: 0.34rem;
    margin-top: 0.42rem;
    border-radius: 999px;
    background: #6c809f;
    flex: 0 0 auto;
}

.home-fit__card--yes {
    border-top: 1px solid rgba(57, 98, 158, 0.28);
}

.home-fit__card--yes li::before {
    background: #3f6fab;
}

.home-fit__card--no {
    border-top: 1px solid rgba(147, 118, 84, 0.3);
    background: linear-gradient(155deg, rgba(255, 252, 247, 0.98) 0%, rgba(246, 241, 233, 0.95) 100%);
}

.home-fit__card--no li::before {
    background: #9c7b56;
}

.home-fit__assist {
    margin: 14px 0 0;
    max-width: 78ch;
    color: #4f5f75;
    font-size: 0.92rem;
    line-height: 1.48;
}

.home-fit__assist a {
    color: #1f4e8f;
    font-weight: 760;
    text-decoration: none;
}

.home-fit__assist a:hover,
.home-fit__assist a:focus-visible {
    color: #193f72;
    text-decoration: underline;
    outline: none;
}

.home-blog-card p,
.home-contact__intro p,
.home-contact__form p,
.home-about__card p,
.home-about__cta p {
    margin: 0;
    color: var(--tn-ink-soft);
}

.home-testimonials-box {
    position: relative;
    border-top: 1px solid rgba(100, 110, 125, 0.16);
    border-bottom: 1px solid rgba(100, 110, 125, 0.1);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.18) 0%, rgba(243, 246, 251, 0.12) 48%, rgba(255, 255, 255, 0) 100%);
    box-shadow: none;
    border-radius: 0;
    padding: 16px 0;
}

.home-testimonials-box::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    width: 82px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.92) 0%, rgba(197, 168, 111, 0.52) 100%);
}

#trasnego-home.trasnego-home:not(.is-reviews-runtime-enabled) .home-testimonials .wprev-slider > ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#trasnego-home.trasnego-home:not(.is-reviews-runtime-enabled) .home-testimonials .wprev-slider > ul > li.wprevnextslide {
    display: none !important;
}

.home-testimonials-fallback {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}

.home-testimonials-fallback__item {
    position: relative;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 8px 22px 8px 0;
}

.home-testimonials-fallback__item:not(:first-child) {
    padding-left: 22px;
    border-left: 1px solid rgba(100, 111, 127, 0.12);
}

.home-testimonials-fallback__item p {
    margin: 0;
    color: #4f617b;
    font-size: 0.92rem;
    line-height: 1.5;
}

.home-testimonials-fallback__item p::before {
    content: "“";
    color: rgba(30, 63, 128, 0.28);
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 0;
    vertical-align: -0.2rem;
    margin-right: 0.14rem;
}

.home-testimonials-fallback__item strong {
    margin-top: 12px;
    display: block;
    color: #25456f;
    font-size: 0.73rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.home-testimonials {
    padding-top: clamp(42px, 4.4vw, 58px);
    padding-bottom: clamp(30px, 3.4vw, 42px);
}

.home-testimonials__support {
    display: grid;
    gap: 12px;
    margin-top: clamp(16px, 2vw, 22px);
    padding-top: clamp(14px, 1.8vw, 18px);
    border-top: 1px solid rgba(100, 110, 125, 0.12);
}

.home-testimonials__support-label {
    margin: 0;
    color: #5f7392;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    justify-self: center;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
}

.home-faq__grid--support {
    max-width: none;
    margin: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 10px;
}

.home-faq__grid--support .home-faq__item {
    align-self: start;
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(255, 254, 250, 0.74) 0%, rgba(248, 250, 253, 0.74) 100%);
    box-shadow: 0 6px 16px rgba(37, 51, 76, 0.035);
}

.home-faq__grid--support .home-faq__item[open],
.home-faq__grid--support .home-faq__item:hover,
.home-faq__grid--support .home-faq__item:focus-within {
    transform: none;
    border-color: rgba(30, 63, 128, 0.18);
    box-shadow: 0 10px 18px rgba(34, 51, 83, 0.055);
}

.home-faq__grid--support .home-faq__item summary {
    min-height: 58px;
    padding: 14px 42px 14px 16px;
    font-size: 0.9rem;
    line-height: 1.24;
}

.home-faq__grid--support .home-faq__item summary::after {
    right: 16px;
    width: 24px;
    height: 24px;
    font-size: 0.92rem;
}

.home-faq__grid--support .home-faq__item p {
    margin: -2px 16px 16px;
    font-size: 0.88rem;
    line-height: 1.52;
}

.home-faq {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    max-width: 1040px;
    margin: 0 auto;
}

.home-faq__item {
    border: 1px solid rgba(67, 83, 110, 0.14);
    border-radius: 8px;
    background: linear-gradient(145deg, rgba(255, 254, 250, 0.92) 0%, rgba(248, 250, 253, 0.86) 100%);
    box-shadow: 0 14px 28px rgba(37, 51, 76, 0.07);
    transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.home-faq__item[open],
.home-faq__item:hover,
.home-faq__item:focus-within {
    border-color: rgba(30, 63, 128, 0.24);
    box-shadow: 0 18px 34px rgba(34, 51, 83, 0.1);
    transform: translateY(-2px);
}

.home-faq__item summary {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 74px;
    padding: 18px 48px 18px 20px;
    color: #12243d;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 760;
    line-height: 1.28;
    list-style: none;
}

.home-faq__item summary::-webkit-details-marker {
    display: none;
}

.home-faq__item summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 20px;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(30, 63, 128, 0.18);
    border-radius: 50%;
    color: var(--tn-brand);
    display: grid;
    place-items: center;
    transform: translateY(-50%);
    font-size: 1rem;
    line-height: 1;
    font-weight: 700;
    background: rgba(255, 255, 255, 0.62);
}

.home-faq__item[open] summary::after {
    content: "–";
}

.home-faq__item p {
    margin: -4px 20px 20px;
    max-width: 62ch;
    color: #50627b;
    font-size: 0.94rem;
    line-height: 1.58;
}

.home-contact {
    padding-top: clamp(40px, 4.2vw, 56px);
    padding-bottom: clamp(48px, 5vw, 68px);
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0) 28%),
        linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-contact-bridge {
    position: relative;
    display: grid;
    gap: 12px;
    justify-items: center;
    width: fit-content;
    max-width: min(760px, 100%);
    margin: 0 auto 28px;
    padding: 4px 0 14px;
    text-align: center;
    isolation: isolate;
}

.home-contact-bridge::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -34px;
    width: min(560px, 72vw);
    height: 150px;
    transform: translateX(-50%);
    background: radial-gradient(circle, rgba(24, 54, 103, 0.12) 0%, rgba(24, 54, 103, 0.04) 34%, rgba(24, 54, 103, 0) 72%);
    opacity: 0.38;
    filter: blur(13px);
    pointer-events: none;
    z-index: 0;
}

.home-contact-bridge::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 84px;
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, rgba(24, 54, 103, 0) 0%, rgba(24, 54, 103, 0.34) 24%, rgba(194, 168, 117, 0.18) 52%, rgba(24, 54, 103, 0.22) 78%, rgba(24, 54, 103, 0) 100%);
}

.home-contact-bridge > * {
    position: relative;
    z-index: 1;
}

.home-contact-bridge__body {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(10px, 1.4vw, 14px);
    align-items: start;
    justify-items: center;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
}

.home-contact-bridge__eyebrow {
    width: fit-content;
    margin: 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #5b6f8f;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.home-contact-bridge__eyebrow::before {
    content: "";
    width: 48px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(30, 63, 128, 0.18) 0%, rgba(30, 63, 128, 0.54) 100%);
}

.home-contact-bridge h3 {
    display: grid;
    justify-items: center;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    color: #122744;
    font-size: clamp(1.82rem, 2.9vw, 2.48rem);
    line-height: 0.98;
    letter-spacing: -0.036em;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.16);
}

.home-contact-bridge__title-line {
    display: block;
    white-space: nowrap;
}

.home-contact-bridge p {
    margin: 0 auto;
    max-width: 36ch;
    color: #5a6b82;
    font-size: 0.96rem;
    line-height: 1.56;
}

.home-about__grid,
.home-contact__grid {
    display: grid;
    grid-template-columns: minmax(310px, 0.84fr) minmax(0, 1.16fr);
    gap: clamp(18px, 2.5vw, 28px);
    align-items: stretch;
}

.home-contact__grid {
    gap: clamp(20px, 2.5vw, 30px);
    align-items: start;
}

.home-about__card,
.home-contact__form {
    position: relative;
    border: 1px solid rgba(97, 109, 125, 0.14);
    border-radius: 28px;
    background:
        radial-gradient(circle at 90% 8%, rgba(30, 63, 128, 0.06) 0%, rgba(30, 63, 128, 0) 24%),
        linear-gradient(152deg, rgba(255, 253, 249, 0.98) 0%, rgba(246, 249, 253, 0.96) 100%);
    padding: clamp(24px, 2.5vw, 32px);
    box-shadow: 0 18px 40px rgba(31, 46, 68, 0.065), inset 0 1px 0 rgba(255, 255, 255, 0.62);
}

.home-contact__form {
    overflow: hidden;
    border-color: rgba(114, 126, 143, 0.18);
    margin-top: clamp(14px, 2vw, 24px);
    background:
        radial-gradient(circle at 88% 9%, rgba(26, 57, 107, 0.045) 0%, rgba(26, 57, 107, 0.012) 18%, rgba(26, 57, 107, 0) 34%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.995) 0%, rgba(250, 247, 242, 0.985) 24%, rgba(245, 248, 252, 0.975) 100%);
    box-shadow: 0 22px 40px rgba(26, 39, 59, 0.078), 0 8px 18px rgba(26, 39, 59, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.home-contact__form::after {
    content: "";
    position: absolute;
    inset: 12px;
    border: 1px solid rgba(134, 145, 160, 0.12);
    border-radius: 22px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88), inset 0 -1px 0 rgba(228, 233, 240, 0.22);
    pointer-events: none;
}

.home-about__cta,
.home-contact__intro {
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 28px;
    background:
        radial-gradient(circle at 88% 18%, rgba(135, 169, 224, 0.14) 0%, rgba(135, 169, 224, 0) 26%),
        linear-gradient(132deg, #17335f 0%, #234579 58%, #315d98 100%);
    color: #fff;
    padding: clamp(26px, 2.7vw, 34px);
}

.home-contact__intro,
.home-contact__form {
    transition: transform 0.26s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.26s ease, border-color 0.26s ease;
}

.home-contact__intro {
    position: relative;
    overflow: hidden;
    text-align: left;
    display: grid;
    align-content: start;
    gap: 18px;
    border-color: rgba(255, 255, 255, 0.14);
    background:
        linear-gradient(180deg, rgba(228, 205, 162, 0.08) 0%, rgba(228, 205, 162, 0) 14%),
        radial-gradient(circle at 82% 14%, rgba(181, 204, 238, 0.14) 0%, rgba(181, 204, 238, 0.035) 22%, rgba(181, 204, 238, 0) 44%),
        radial-gradient(circle at 12% 100%, rgba(204, 173, 120, 0.09) 0%, rgba(204, 173, 120, 0.015) 20%, rgba(204, 173, 120, 0) 34%),
        linear-gradient(150deg, #051427 0%, #091f3e 42%, #12355f 100%);
    box-shadow: 0 26px 46px rgba(5, 16, 33, 0.18), 0 8px 20px rgba(6, 18, 35, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.05), inset 0 -1px 0 rgba(255, 255, 255, 0.02);
}

.home-contact__intro::before {
    content: "";
    position: absolute;
    inset: 10px;
    border-radius: 20px;
    border: 1px solid rgba(223, 233, 248, 0.07);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.012) 26%, rgba(255, 255, 255, 0) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), inset 0 -1px 0 rgba(255, 255, 255, 0.015);
    pointer-events: none;
    z-index: 0;
}

.home-contact__intro::after {
    content: "";
    position: absolute;
    top: 0;
    left: clamp(26px, 2.5vw, 34px);
    width: 88px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.64) 0%, rgba(214, 188, 136, 0.38) 72%, rgba(214, 188, 136, 0) 100%);
    pointer-events: none;
    z-index: 0;
}

.home-contact__intro > * {
    position: relative;
    z-index: 1;
}

.home-contact__kicker {
    margin: 0;
    color: rgba(220, 229, 241, 0.8);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-shadow: none;
}

.home-about__cta h3 {
    margin: 0 0 10px;
    color: #fff;
}

.home-contact__intro h2 {
    max-width: 10.4ch;
    margin: 0;
    color: #fff;
    font-size: clamp(1.94rem, 2.72vw, 2.52rem);
    line-height: 0.98;
    letter-spacing: -0.035em;
}

.home-contact__lead {
    max-width: 28ch;
    margin: 0;
    color: rgba(220, 229, 241, 0.8);
    font-size: 0.94rem;
    line-height: 1.52;
    text-shadow: none;
}

.home-contact__routes {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 12px;
    counter-reset: contact-route;
}

.home-contact__route {
    position: relative;
    padding: 0 0 11px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.11);
    counter-increment: contact-route;
    transition: border-color 0.22s ease;
}

.home-contact__route:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.home-contact__route::before {
    content: counter(contact-route, decimal-leading-zero);
    position: absolute;
    left: 0;
    top: 12px;
    color: rgba(214, 188, 136, 0.88);
    font-size: 0.72rem;
    font-weight: 780;
    letter-spacing: 0.14em;
    transition: color 0.22s ease, transform 0.22s ease, text-shadow 0.22s ease;
}

.home-contact__route-button {
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    min-height: 52px;
    display: grid;
    gap: 5px;
    padding: 0 0 0 54px;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    position: relative;
}

.home-contact__route-button::after {
    content: "";
    position: absolute;
    inset: -8px -10px -6px 38px;
    border-radius: 18px;
    border: 1px solid transparent;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.22s ease, border-color 0.22s ease;
}

.home-contact__route-button:focus-visible {
    outline: none;
}

.home-contact__route-button:focus-visible::after {
    opacity: 1;
    border-color: rgba(223, 197, 143, 0.22);
}

.home-contact__route-button strong {
    display: block;
    color: rgba(248, 250, 254, 0.94);
    font-size: 1.08rem;
    font-weight: 780;
    letter-spacing: -0.01em;
    transition: color 0.22s ease;
}

.home-contact__route-button span {
    max-width: 22ch;
    color: #bcc8dc;
    font-size: 0.84rem;
    line-height: 1.46;
    transition: color 0.22s ease;
}

.home-contact__route.is-active {
    border-color: rgba(226, 202, 152, 0.32);
}

.home-contact__route.is-active::before {
    color: rgba(238, 219, 176, 0.98);
    transform: translateX(1px);
    text-shadow: 0 0 12px rgba(214, 183, 124, 0.12);
}

.home-contact__route.is-active .home-contact__route-button strong {
    color: #ffffff;
}

.home-contact__route.is-active .home-contact__route-button span {
    color: #d9e2ef;
}

.home-contact[data-contact-route-active]:not([data-contact-route-active=""]) .home-contact__route.is-active {
    border-color: rgba(226, 202, 152, 0.38);
}

.home-contact[data-contact-route-active]:not([data-contact-route-active=""]) .home-contact__route.is-active::before {
    color: rgba(240, 222, 180, 0.99);
}

.home-about__cta p {
    color: rgba(255, 255, 255, 0.88);
    margin-bottom: 0;
}

.home-contact__intro p {
    margin-bottom: 0;
}

.home-contact__express {
    margin-top: 4px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    text-align: left;
    display: grid;
    gap: 16px;
}

.home-contact__express-head {
    display: grid;
    gap: 5px;
}

.home-contact__express-title {
    margin: 0;
    color: rgba(220, 229, 241, 0.8);
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 780;
    text-shadow: none;
}

.home-contact__express-copy {
    max-width: 28ch;
    margin: 0;
    color: rgba(220, 229, 241, 0.8);
    font-size: 0.85rem;
    line-height: 1.45;
    text-shadow: none;
}

.home-contact__express-actions {
    display: grid;
    gap: 10px;
    margin-top: 6px;
    width: min(100%, 308px);
}

.home-contact__express-actions .btn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    width: 100%;
    min-height: 52px;
    justify-content: center;
    padding-inline: 18px;
    letter-spacing: 0.01em;
}

.home-contact__express-actions .btn::before {
    content: "";
    position: absolute;
    inset: 1px 1px auto;
    height: 44%;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.44) 0%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
    z-index: 0;
}

.home-contact__express-actions .btn::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 62px;
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.66) 44%, rgba(202, 172, 118, 0.28) 78%, rgba(255, 255, 255, 0) 100%);
    opacity: 0.74;
    pointer-events: none;
    z-index: 0;
}

.home-contact__express-actions .btn-primary {
    color: #0f2344;
    border-color: rgba(202, 173, 120, 0.42);
    background: linear-gradient(180deg, rgba(255, 251, 244, 0.99) 0%, rgba(246, 237, 221, 0.97) 100%);
    box-shadow: 0 13px 24px rgba(8, 21, 41, 0.13), 0 3px 8px rgba(8, 21, 41, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.97), inset 0 -1px 0 rgba(186, 156, 105, 0.07);
}

.home-contact__express-actions .btn-secondary {
    color: #102847;
    border-color: rgba(189, 165, 120, 0.34);
    background:
        linear-gradient(180deg, #cad4e4 0%, #bcc8dc 56%, #afbdd3 100%);
    box-shadow: 0 12px 24px rgba(4, 14, 31, 0.16), 0 4px 10px rgba(4, 14, 31, 0.06), inset 0 1px 0 rgba(242, 246, 252, 0.92), inset 0 -1px 0 rgba(123, 145, 177, 0.2);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.45);
}

.home-contact__express-actions .btn-secondary::before {
    height: 50%;
    background: linear-gradient(180deg, rgba(240, 245, 252, 0.82) 0%, rgba(231, 238, 248, 0.28) 42%, rgba(255, 255, 255, 0) 100%);
}

.home-contact__express-actions .btn-secondary::after {
    width: 74px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(241, 246, 252, 0.94) 42%, rgba(209, 183, 135, 0.24) 78%, rgba(255, 255, 255, 0) 100%);
    opacity: 0.9;
}

.home-contact__assurance {
    margin: 0;
    color: rgba(220, 229, 241, 0.8);
    font-size: clamp(0.64rem, 0.78vw, 0.7rem);
    line-height: 1.35;
    letter-spacing: 0.015em;
    text-shadow: none;
    white-space: nowrap;
}

.home-contact__intro .home-contact__kicker,
.home-contact__intro .home-contact__lead,
.home-contact__intro .home-contact__express-title,
.home-contact__intro .home-contact__express-copy,
.home-contact__intro .home-contact__assurance {
    color: rgba(220, 229, 241, 0.72);
    opacity: 1;
    text-shadow: none;
}

.home-contact__form::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 26px;
    width: 88px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(25, 56, 105, 0.7) 0%, rgba(195, 167, 113, 0.22) 100%);
    pointer-events: none;
    z-index: 0;
    transition: width 0.22s ease, background 0.22s ease, opacity 0.22s ease;
}

.home-contact__form > * {
    position: relative;
    z-index: 1;
}

.home-contact[data-contact-route-active]:not([data-contact-route-active=""]) .home-contact__form::before {
    width: 104px;
    background: linear-gradient(90deg, rgba(24, 56, 103, 0.82) 0%, rgba(198, 170, 118, 0.3) 100%);
}

.home-contact__form-head {
    display: grid;
    grid-template-columns: minmax(0, 1.14fr) minmax(220px, 0.86fr);
    gap: clamp(18px, 2.6vw, 34px);
    align-items: end;
    margin-bottom: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(102, 115, 132, 0.11);
}

.home-contact__form-head-main,
.home-contact__form-head-side {
    min-width: 0;
    display: grid;
}

.home-contact__form-head-main {
    align-content: start;
    gap: 8px;
}

.home-contact__form-head-side {
    align-content: end;
    gap: 12px;
    padding: 4px 0 2px 22px;
    border-left: 1px solid rgba(102, 115, 132, 0.11);
}

.home-contact__form-kicker {
    margin: 0;
    color: #67798f;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.home-contact__form h3 {
    max-width: 13.8ch;
    margin: 0;
    color: #132844;
    font-size: clamp(1.26rem, 1.72vw, 1.56rem);
    line-height: 1.02;
    letter-spacing: -0.028em;
}

.home-contact__form-note {
    max-width: 26ch;
    margin: 0;
    color: #607084;
    font-size: 0.83rem;
    line-height: 1.46;
}

.home-contact__form-context {
    max-width: 28ch;
    min-height: 0;
    margin: 0;
    color: #445975;
    font-size: 0.8rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
}

.home-contact__deliverables {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 7px 14px;
    color: #596d88;
    font-size: 0.76rem;
    font-weight: 770;
    transition: color 0.22s ease;
}

.home-contact__deliverables li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    position: relative;
}

.home-contact__deliverables li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -10px;
    top: 50%;
    width: 1px;
    height: 12px;
    transform: translateY(-50%);
    background: rgba(112, 124, 141, 0.16);
}

.home-contact__deliverables li::before {
    content: "";
    width: 0.34rem;
    height: 0.34rem;
    border-radius: 999px;
    background: rgba(30, 63, 128, 0.42);
    flex: 0 0 auto;
    transition: background-color 0.22s ease, box-shadow 0.22s ease;
}

.home-contact[data-contact-route-active]:not([data-contact-route-active=""]) .home-contact__deliverables {
    color: #536883;
}

.home-contact[data-contact-route-active]:not([data-contact-route-active=""]) .home-contact__deliverables li::before {
    background: rgba(24, 56, 103, 0.56);
    box-shadow: 0 0 0 3px rgba(24, 56, 103, 0.04);
}

.home-form-shell--contact {
    margin-top: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
}

.home-form-shell--contact .wpcf7 label {
    gap: 8px;
    color: #5a6d86;
    font-size: 0.79rem;
    font-weight: 700;
    letter-spacing: 0.015em;
    text-transform: none;
    line-height: 1.25;
}

.home-form-shell--contact .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.home-form-shell--contact .wpcf7 select,
.home-form-shell--contact .wpcf7 textarea {
    min-height: 53px;
    border-radius: 14px;
    border-color: rgba(109, 123, 141, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.995) 0%, rgba(251, 249, 245, 0.94) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 1px 0 rgba(255, 255, 255, 0.62);
    transition: border-color 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease;
}

.home-form-shell--contact .wpcf7 select {
    border-color: rgba(24, 56, 103, 0.2);
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 253, 0.96) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 1px 0 rgba(255, 255, 255, 0.64), 0 8px 16px rgba(26, 39, 59, 0.028);
    color: #173355;
    font-weight: 700;
}

.home-form-shell--contact .wpcf7 textarea {
    min-height: 190px;
    border-radius: 16px;
    padding-top: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.995) 0%, rgba(249, 247, 243, 0.94) 100%);
}

.home-form-shell--contact .tn-property-cf7-consent {
    margin: 0;
}

.home-form-shell--contact .tn-property-cf7-consent,
.home-form-shell--contact .tn-property-cf7-consent .wpcf7-form-control-wrap,
.home-form-shell--contact .tn-property-cf7-consent .wpcf7-form-control,
.home-form-shell--contact .tn-property-cf7-consent .wpcf7-acceptance,
.home-form-shell--contact .tn-property-cf7-consent .wpcf7-list-item,
.home-form-shell--contact .tn-property-cf7-consent__row,
.home-form-shell--contact .tn-property-cf7-consent .wpcf7-list-item-label {
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.home-form-shell--contact .tn-property-cf7-consent__row {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #5a6d86;
    font-size: 0.82rem;
    font-weight: 650;
    line-height: 1.42;
}

.home-form-shell--contact .tn-property-cf7-consent input[type="checkbox"] {
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin: 0 !important;
    border: 1.5px solid rgba(82, 105, 132, 0.48);
    border-radius: 6px;
    accent-color: #173a6a;
    box-shadow: 0 2px 8px rgba(20, 42, 70, 0.05);
}

.home-form-shell--contact .tn-property-cf7-consent .wpcf7-list-item-label {
    color: #5a6d86;
}

.home-form-shell--contact .tn-property-cf7-consent__terms {
    padding: 0;
    border: 0;
    background: transparent;
    color: #173355;
    font: inherit;
    font-weight: 780;
    line-height: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
}

.home-form-shell--contact .tn-property-cf7-consent__terms:hover,
.home-form-shell--contact .tn-property-cf7-consent__terms:focus-visible {
    color: #214983;
    outline: none;
}

.home-contact .tn-property-legal-modal {
    width: min(720px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    max-height: min(82vh, 760px);
    padding: 0;
    border: 0;
    border-radius: 26px;
    background: transparent;
    color: #17395f;
    box-shadow: none;
}

.home-contact .tn-property-legal-modal::backdrop {
    background: rgba(12, 25, 43, 0.52);
    backdrop-filter: blur(6px);
}

.home-contact .tn-property-legal-modal__sheet {
    overflow: hidden;
    border: 1px solid rgba(23, 57, 95, 0.08);
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(248, 250, 254, 0.98) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 28px 60px rgba(16, 35, 60, 0.22);
}

.home-contact .tn-property-legal-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px 16px;
    border-bottom: 1px solid rgba(29, 67, 118, 0.08);
}

.home-contact .tn-property-legal-modal__title {
    margin: 0;
    color: #17395f;
    font-size: 1rem;
    font-weight: 760;
    letter-spacing: -0.02em;
}

.home-contact .tn-property-legal-modal__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid rgba(29, 67, 118, 0.09);
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff 0%, #f5f8fc 100%);
    color: #45617f;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
}

.home-contact .tn-property-legal-modal__body {
    max-height: min(calc(82vh - 84px), 620px);
    padding: 18px 22px 24px;
    overflow-y: auto;
}

.home-contact .tn-property-legal-modal__body p {
    margin: 0;
    max-width: none;
    width: 100%;
    color: #5f7492;
    font-size: 0.9rem;
    line-height: 1.72;
}

.home-contact .tn-property-legal-modal__body p + p {
    margin-top: 12px;
}

body.home.tn-property-legal-modal-open,
body.trasnego-home.tn-property-legal-modal-open {
    overflow: hidden;
}

.home-form-shell--contact .wpcf7 label:has(select),
.home-form-shell--contact .wpcf7 label:has(textarea) {
    color: #435875;
    font-weight: 740;
}

.home-form-shell--contact .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):focus,
.home-form-shell--contact .wpcf7 select:focus,
.home-form-shell--contact .wpcf7 textarea:focus {
    border-color: rgba(24, 56, 103, 0.24);
    box-shadow: 0 0 0 3px rgba(24, 56, 103, 0.05), 0 10px 18px rgba(24, 38, 57, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.home-form-shell--contact .wpcf7 input[type="submit"],
.home-form-shell--contact .wpcf7 button[type="submit"],
.home-form-shell--contact .wpcf7 .has-spinner {
    border-radius: var(--tn-boton-radio);
    min-height: var(--tn-envio-alto);
    border: var(--tn-boton-borde);
    background: var(--tn-brand, #1e3f80);
    box-shadow: var(--tn-boton-sombra);
    font-size: 0.93rem;
    font-weight: var(--tn-boton-peso);
    letter-spacing: normal;
    transition: transform 0.22s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.home-form-shell--contact .home-form-shell__body,
.home-form-shell--contact .wpcf7,
.home-form-shell--contact .wpcf7 form {
    gap: 13px;
}

.home-contact__form:focus-within {
    transform: translateY(-2px);
    border-color: rgba(30, 63, 128, 0.22);
    box-shadow: 0 26px 48px rgba(31, 46, 68, 0.1), 0 10px 24px rgba(31, 46, 68, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.home-chip-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.home-chip {
    border: 1px solid var(--tn-border);
    border-radius: 12px;
    background: #fff;
    text-decoration: none;
    color: var(--tn-ink-deep);
    padding: 14px;
    display: grid;
    gap: 4px;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home-chip:hover,
.home-chip:focus-visible {
    transform: translateY(-1px);
    border-color: #c7d8f4;
    box-shadow: 0 12px 24px rgba(18, 42, 85, 0.08);
    outline: none;
}

.home-chip span {
    font-weight: 700;
}

.home-chip small {
    color: var(--tn-ink-soft);
}

.home-hub-cta {
    margin: 14px 0 0;
    text-align: center;
}

.home-hub-cta a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    color: var(--tn-brand-strong);
    font-weight: 700;
    font-size: 0.9rem;
}

.home-hub-cta a::after {
    content: ">";
    font-size: 0.9rem;
}

.home-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.home-blog-card {
    border: 1px solid var(--tn-border);
    border-radius: var(--tn-radius-md);
    background: #fff;
    padding: 14px;
    transition: transform 0.36s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.36s ease, border-color 0.32s ease;
}

.home-blog-card:hover,
.home-blog-card:focus-within {
    transform: translateY(-1px);
    border-color: #c7d8f4;
    box-shadow: 0 16px 28px rgba(18, 42, 85, 0.08);
}

.home-blog-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    border-radius: 10px;
    overflow: hidden;
    background: #eef3fb;
}

.home-blog-card h3 {
    margin: 12px 0 8px;
    font-size: 1.07rem;
}

.home-blog-card h3 a,
.home-link {
    color: var(--tn-brand-strong);
    text-decoration: none;
}

.home-link:hover,
.home-link:focus-visible,
.home-hub-cta a:hover,
.home-hub-cta a:focus-visible {
    color: var(--tn-brand);
    outline: none;
}

.home-market-more .btn,
.home-contact__route-button,
.home-contact__express-actions .btn,
.home-property-card__cta,
.home-property-card__cta-link {
    transition: transform 0.36s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.36s ease, border-color 0.32s ease, background-color 0.36s ease, color 0.32s ease, opacity 0.32s ease;
}

.home-fit__card,
.home-about__card,
.home-testimonials-fallback__item {
    transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.38s ease, border-color 0.34s ease, background-color 0.38s ease;
}

@media (hover: hover) and (pointer: fine) {
    .home-fit__card:hover,
    .home-fit__card:focus-within,
    .home-about__card:hover,
    .home-about__card:focus-within,
    .home-testimonials-fallback__item:hover,
    .home-testimonials-fallback__item:focus-within {
        transform: translateY(-1px);
        border-color: rgba(30, 63, 128, 0.22);
        box-shadow: 0 14px 26px rgba(31, 46, 68, 0.08);
    }

    .home-contact__intro:hover,
    .home-contact__intro:focus-within {
        transform: translateY(-1px);
        border-color: rgba(255, 255, 255, 0.2);
        box-shadow: 0 30px 52px rgba(5, 16, 34, 0.2), 0 10px 24px rgba(5, 16, 34, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.07);
    }

    .home-contact__form:hover,
    .home-contact__form:focus-within {
        transform: translateY(-1px);
        border-color: rgba(28, 59, 106, 0.2);
        box-shadow: 0 24px 42px rgba(24, 37, 57, 0.085), 0 8px 18px rgba(24, 37, 57, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.98);
    }

    .home-contact__route:hover,
    .home-contact__route:focus-within {
        border-color: rgba(226, 202, 152, 0.28);
    }

    .home-contact__route:hover::before,
    .home-contact__route:focus-within::before {
        color: rgba(234, 213, 170, 0.96);
        transform: translateX(1px);
    }

    .home-contact__route-button:hover strong,
    .home-contact__route-button:focus-visible strong {
        color: #ffffff;
    }

    .home-contact__route-button:hover span,
    .home-contact__route-button:focus-visible span {
        color: #d3dceb;
    }

    .home-market-more .btn:hover,
    .home-market-more .btn:focus-visible,
    .home-contact__express-actions .btn:hover,
    .home-contact__express-actions .btn:focus-visible,
    .home-property-card__cta:hover,
    .home-property-card__cta:focus-visible {
        transform: translateY(-1px);
        box-shadow: 0 12px 22px rgba(19, 42, 85, 0.12);
    }

    .home-market-more .home-market-more__cta:hover,
    .home-market-more .home-market-more__cta:focus-visible {
        transform: translateY(-1px);
        outline: none;
    }

    .home-market-more .home-market-more__cta:hover::after,
    .home-market-more .home-market-more__cta:focus-visible::after {
        transform: translateX(1px);
    }

    .home-market-more .home-market-more__cta--active:hover,
    .home-market-more .home-market-more__cta--active:focus-visible {
        border-color: rgba(20, 47, 91, 0.34);
        background: linear-gradient(145deg, #345f97 0%, #244d83 56%, #193f6f 100%);
        color: #ffffff;
        box-shadow: 0 16px 28px rgba(10, 29, 59, 0.14), 0 7px 14px rgba(9, 25, 52, 0.06);
    }

    .home-market-more .home-market-more__cta--closed:hover,
    .home-market-more .home-market-more__cta--closed:focus-visible {
        border-color: rgba(98, 116, 145, 0.22);
        background:
            radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 32%),
            linear-gradient(145deg, #ffffff 0%, #f2f6fb 56%, #eaf1f8 100%);
        color: #14345c;
        box-shadow: 0 15px 26px rgba(29, 46, 72, 0.1), 0 6px 12px rgba(29, 46, 72, 0.04);
    }

    .home-contact__express-actions .btn-primary:hover,
    .home-contact__express-actions .btn-primary:focus-visible {
        color: #0f2344;
        border-color: rgba(202, 173, 120, 0.5);
        background: linear-gradient(180deg, rgba(255, 252, 247, 1) 0%, rgba(247, 239, 226, 0.99) 100%);
        box-shadow: 0 15px 28px rgba(7, 21, 42, 0.16), 0 4px 10px rgba(7, 21, 42, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.98), inset 0 -1px 0 rgba(186, 156, 105, 0.09);
    }

    .home-contact__express-actions .btn-secondary:hover,
    .home-contact__express-actions .btn-secondary:focus-visible {
        color: #0f2344;
        border-color: rgba(189, 165, 120, 0.46);
        background:
            linear-gradient(180deg, #d5ddeb 0%, #c6d1e1 56%, #b7c5da 100%);
        box-shadow: 0 16px 28px rgba(7, 21, 42, 0.18), 0 5px 12px rgba(7, 21, 42, 0.07), inset 0 1px 0 rgba(245, 248, 253, 0.95), inset 0 -1px 0 rgba(123, 145, 177, 0.22);
    }

    .home-form-shell--contact .wpcf7 input[type="submit"]:hover,
    .home-form-shell--contact .wpcf7 input[type="submit"]:focus-visible,
    .home-form-shell--contact .wpcf7 button[type="submit"]:hover,
    .home-form-shell--contact .wpcf7 button[type="submit"]:focus-visible,
    .home-form-shell--contact .wpcf7 .has-spinner:hover,
    .home-form-shell--contact .wpcf7 .has-spinner:focus-visible {
        transform: translateY(-1px);
        border-color: rgba(19, 45, 84, 0.24);
        background: linear-gradient(180deg, #153661 0%, #184174 58%, #1f548f 100%);
        box-shadow: 0 16px 28px rgba(16, 38, 81, 0.16), 0 4px 10px rgba(16, 38, 81, 0.05);
    }

    .home-property-card__cta-link:hover,
    .home-property-card__cta-link:focus-visible {
        transform: translateY(-1px);
    }
}

.home-empty {
    color: var(--tn-ink-soft);
    margin: 10px 0 0;
}

@media (min-width: 1200px) {
    .section-head p {
        color: #415774;
    }

    .section-head--market p {
        color: #3f5674;
    }

    .section-head--authority p:not(.eyebrow) {
        color: #3e5674;
    }

    .section-head--authority h2 {
        max-width: 17.6ch;
    }

    .section-head--authority {
        margin-bottom: 18px;
        padding-bottom: 9px;
    }

    .home-property-card__teaser,
    .home-fit__assist,
    .home-contact-bridge p {
        color: #465d79;
    }

    .home-market .home-shell {
        width: min(1440px, 100% - clamp(14px, 1.9vw, 44px));
    }

    .home-market-priority__copy h3 {
        font-size: clamp(1.28rem, 1.72vw, 1.56rem);
    }

    .home-market-priority__cta {
        min-height: 46px;
        font-size: 0.74rem;
    }

    .section-head--market {
        max-width: 1020px;
        padding: 0 0 18px;
    }

    .section-head--market h2 {
        font-size: clamp(2.38rem, 3.5vw, 3.34rem);
    }

    .home-property-card__body {
        padding: 25px 24px 22px;
    }

    .home-property-card__body h3 {
        font-size: 1.54rem;
    }

    .home-property-card__chips li {
        font-size: 0.82rem;
    }

    .home-property-card__price-value {
        font-size: 1.18rem;
    }

    .home-property-card__cta {
        font-size: 1.07rem;
    }

    .home-property-card__cta-link {
        font-size: 0.9rem;
    }

}

@media (max-width: 1200px) and (min-width: 981px) {
    .home-property-grid,
    .home-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-market .home-shell {
        width: min(1360px, 100% - 28px);
    }

    .section-head--market {
        max-width: 900px;
        padding: 0 0 18px;
    }

    .section-head--market h2 {
        font-size: clamp(2.08rem, 3.2vw, 2.72rem);
    }

    .section-head--market p {
        font-size: 1rem;
    }

    .home-market-priority {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
        padding: 18px;
        border-radius: 24px;
    }

    .home-market-priority::after {
        content: none;
    }

    .home-market-priority__cta {
        justify-self: start;
        max-width: none;
        width: fit-content;
    }

    .home-market-listings {
        margin-top: 34px;
        padding-top: 24px;
    }

    .home-property-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px 10px;
    }

    .home-property-card__body {
        padding: 21px 18px 18px;
    }

    .home-property-card__body h3 {
        font-size: 1.28rem;
    }

    .home-property-card__teaser {
        font-size: 0.91rem;
        line-height: 1.48;
    }

    .home-property-card__chips li {
        min-height: 0;
        padding: 0;
        font-size: 0.72rem;
    }

    .home-property-card__price-value {
        font-size: 1.04rem;
    }

    .home-property-card__actions {
        margin-top: 16px;
        gap: 8px;
    }

    .home-property-card__cta {
        min-height: 52px;
        font-size: 0.98rem;
    }

    .home-property-card__media {
        aspect-ratio: 1 / 1;
    }

    .home-market-more .btn {
        min-height: 44px;
    }

    .home-market-more .home-market-more__cta {
        width: min(100%, 300px);
        min-height: 46px;
        padding: 0.78rem 1.14rem;
        font-size: 0.84rem;
    }

}

@media (max-width: 1366px) and (min-width: 1181px) and (max-height: 900px) {
    .section-head--market {
        padding: 0 0 18px;
    }

    .home-property-card__media {
        aspect-ratio: 1 / 1;
    }

    .home-property-card__body h3 {
        font-size: 1.34rem;
    }

    .home-property-card__actions {
        gap: 9px;
    }
}

@media (max-width: 980px) {
    .home-market,
    .home-sellers--teaser,
    .home-simulator,
    .home-fit,
    .home-testimonials,
    .home-faq,
    .home-contact {
        padding-top: clamp(42px, 6.8vw, 58px);
        padding-bottom: clamp(42px, 7vw, 60px);
    }

    .home-testimonials {
        padding-top: clamp(38px, 5.4vw, 48px);
        padding-bottom: clamp(34px, 5vw, 44px);
    }

    .home-contact {
        padding-top: clamp(34px, 5.2vw, 44px);
        padding-bottom: clamp(44px, 6.4vw, 58px);
    }

    .home-contact-bridge {
        margin-bottom: 20px;
        padding-bottom: 12px;
    }

    .home-testimonials + .home-contact {
        padding-top: clamp(24px, 3.8vw, 30px);
    }

    .home-contact-bridge__body {
        grid-template-columns: 1fr;
        gap: 10px;
        max-width: 38ch;
    }

    .home-market + .home-market {
        padding-top: clamp(22px, 3.4vw, 30px);
    }

    .home-market--active + .home-authority {
        padding-top: calc(clamp(10px, 1.4vw, 16px) + var(--tn-home-authority-overlap));
    }

    .home-authority + .home-market--closed {
        padding-top: clamp(22px, 3.4vw, 30px);
    }

    .home-market--closed + .home-simulator {
        padding-top: clamp(34px, 4.6vw, 46px);
    }

    .home-simulator + .home-benchmark {
        padding-top: clamp(28px, 3.8vw, 36px);
    }

    .home-market--closed + .home-benchmark {
        padding-top: clamp(28px, 3.8vw, 36px);
    }

    .home-benchmark + .home-sellers--teaser {
        padding-top: clamp(38px, 5.2vw, 50px);
    }

    .home-testimonials + .home-contact {
        padding-top: clamp(36px, 5vw, 48px);
    }

    .home-authority--teaser {
        padding-top: clamp(32px, 4.2vw, 42px);
        padding-bottom: clamp(34px, 4.4vw, 46px);
    }

    .home-benchmark {
        padding-top: clamp(22px, 3.2vw, 30px);
        padding-bottom: clamp(28px, 4vw, 36px);
    }

    .home-sellers--teaser {
        padding-top: clamp(28px, 4vw, 38px);
        padding-bottom: clamp(38px, 5vw, 50px);
    }

    .simulator-box__layout {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .simulator-box {
        padding: 20px;
    }

    .simulator-box__editorial {
        gap: 14px;
    }

    .simulator-box__title {
        max-width: 12ch;
        font-size: clamp(1.78rem, 4.8vw, 2.5rem);
    }

    .simulator-box__lead {
        max-width: 34ch;
    }

    .simulator-box__sample {
        padding: 18px;
        width: 100%;
        justify-self: stretch;
    }

    .home-testimonials-mock,
    .home-testimonials-fallback,
    .home-property-grid,
    .home-faq__grid,
    .home-fit__grid,
    .home-about__grid,
    .home-chip-grid,
    .home-blog-grid,
    .home-contact__grid {
        grid-template-columns: 1fr;
    }

    .home-contact__form {
        margin-top: 0;
    }

    .home-contact__form-head {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .home-contact__form-head-side {
        gap: 10px;
        padding: 0;
        border-left: 0;
    }

    .home-authority {
        margin-top: 0;
        padding-top: clamp(30px, 6vw, 44px);
    }

    .home-authority::before {
        content: none;
    }

    .section-head {
        max-width: 720px;
    }

    .home-faq__grid--support {
        grid-template-columns: 1fr;
    }

    .home-benchmark__panel {
        grid-template-columns: 1fr;
        grid-template-areas:
            "copy"
            "field";
        gap: 16px;
        padding: 0;
    }

    .home-benchmark__field {
        gap: 11px;
        padding-top: 16px;
    }

    .home-benchmark__register {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .home-benchmark__logos {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-benchmark__logos li:nth-child(4n) {
        border-right: 1px solid rgba(106, 119, 139, 0.056);
    }

    .home-benchmark__logos li:nth-child(2n) {
        border-right: 0;
    }

    .home-benchmark__logos li:nth-last-child(-n + 4) {
        border-bottom: 1px solid rgba(106, 119, 139, 0.056);
    }

    .home-benchmark__logos li:nth-last-child(-n + 2) {
        border-bottom: 0;
    }

    .home-benchmark__logos li {
        min-height: 50px;
        padding: 0 14px 0 12px;
    }

    .home-benchmark__logos span {
        font-size: 0.72rem;
        letter-spacing: 0.008em;
        line-height: 1.18;
    }

    .home-benchmark__note {
        max-width: 32ch;
        font-size: 0.67rem;
    }

    .home-benchmark__margin {
        min-height: 0;
        justify-self: end;
        width: min(32ch, 100%);
        padding: 10px 0 0;
        border-left: 0;
        border-top: 1px solid rgba(106, 119, 139, 0.058);
    }

    .home-faq__item summary {
        min-height: 66px;
    }

    .home-testimonials-fallback__item {
        padding: 10px 0;
    }

    .home-testimonials-fallback__item:not(:first-child) {
        padding-left: 0;
        border-left: 0;
        border-top: 1px solid rgba(100, 111, 127, 0.12);
    }

    .home-fit__assist {
        margin-top: 10px;
        font-size: 0.86rem;
    }

    .home-contact-bridge {
        margin-bottom: 22px;
        padding: 0 0 16px;
        border-radius: 0;
    }

    .home-contact-bridge__body {
        gap: 8px;
        max-width: 34ch;
    }

    .home-contact-bridge::before {
        top: -24px;
        width: min(340px, 76vw);
        height: 118px;
        opacity: 0.3;
        filter: blur(9px);
    }

    .home-contact-bridge::after {
        width: 52px;
    }

    .home-contact-bridge__eyebrow {
        font-size: 0.68rem;
    }

    .home-contact-bridge h3 {
        font-size: clamp(1rem, 4.2vw, 1.34rem);
    }

    .home-contact-bridge p {
        font-size: 0.88rem;
    }

    .home-contact__express-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .home-contact__intro {
        gap: 14px;
        padding: 24px 22px;
        box-shadow: 0 20px 34px rgba(7, 19, 39, 0.14), 0 6px 14px rgba(7, 20, 41, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.045);
    }

    .home-contact__intro::before {
        inset: 9px;
        border-radius: 18px;
    }

    .home-contact__intro::after {
        width: 86px;
    }

    .home-contact__form {
        margin-top: 0;
        box-shadow: 0 18px 32px rgba(31, 46, 68, 0.07), 0 6px 14px rgba(31, 46, 68, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.94);
    }

    .home-contact__form::before {
        width: 74px;
    }

    .home-contact__route {
        padding-left: 42px;
    }

    .home-contact__express-actions .btn::before {
        opacity: 0.74;
    }

    .home-contact__express-actions .btn-primary {
        box-shadow: 0 10px 18px rgba(8, 21, 41, 0.11), inset 0 1px 0 rgba(255, 255, 255, 0.94), inset 0 -1px 0 rgba(186, 156, 105, 0.07);
    }

    .home-contact__express-actions .btn-secondary {
        box-shadow: 0 10px 18px rgba(4, 14, 31, 0.11), 0 3px 8px rgba(4, 14, 31, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.18), inset 0 -1px 0 rgba(131, 162, 207, 0.08);
    }

    .home-market-priority {
        margin-top: 18px;
        grid-template-columns: 1fr;
        border-radius: 24px;
        padding: 16px 16px;
        gap: 12px;
    }

    .home-market-priority::after {
        content: none;
    }

    .home-market-priority__copy {
        gap: 8px;
    }

    .home-market-priority__copy h3 {
        max-width: 15.8ch;
        font-size: clamp(1.18rem, 4.5vw, 1.36rem);
    }

    .home-market-priority__lead {
        max-width: 37ch;
        font-size: 0.82rem;
    }

    .home-market-priority__controls {
        gap: 7px;
    }

    .home-market-priority__pills {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .home-market-priority__aside {
        grid-template-columns: 1fr;
        align-items: flex-start;
        gap: 8px;
        padding-top: 10px;
    }

    .home-market-priority__actions {
        width: 100%;
        justify-items: stretch;
        gap: 6px;
    }

    .home-market-priority__cta {
        width: 100%;
        min-height: 42px;
        font-size: 0.68rem;
        max-width: none;
    }

    .home-market-priority__link {
        justify-self: start;
    }

    .section-head--market {
        max-width: none;
        padding: 0 0 16px;
        border-radius: 0;
    }

    .section-head--market h2 {
        max-width: 16ch;
        margin-top: 8px;
        font-size: clamp(1.66rem, 6.8vw, 2.16rem);
    }

    .section-head--market p {
        max-width: 35ch;
        margin-top: 10px;
        font-size: 0.93rem;
    }

    .section-head {
        --tn-section-title-gap: 8px;
        --tn-section-copy-gap: 10px;
        --tn-section-foot-gap: 14px;
        margin-bottom: 24px;
        padding-bottom: var(--tn-section-foot-gap);
    }

    .section-head h2 {
        max-width: 18ch;
    }

    .section-head p {
        color: #4a617f;
        font-size: 0.94rem;
        line-height: 1.52;
    }

    .section-head--market h2 {
        max-width: 16ch;
    }

    .section-head--market p {
        color: #435b79;
        font-size: 0.93rem;
    }

    .home-faq__grid {
        gap: 10px;
    }

    .home-faq__item summary {
        padding: 16px 44px 16px 17px;
        font-size: 0.94rem;
    }

    .home-faq__item summary::after {
        right: 16px;
        width: 26px;
        height: 26px;
    }

    .home-faq__item p {
        margin: -2px 17px 17px;
        font-size: 0.9rem;
    }

    .home-market-listings {
        margin-top: 26px;
        padding-top: 18px;
    }

    .home-property-card__actions {
        grid-template-columns: minmax(0, 1fr);
        gap: 6px;
    }

    .home-property-card__cta,
    .home-property-card__cta-link {
        min-height: 0;
        font-size: 0.83rem;
        padding: 0;
    }

    .home-property-card__cta {
        min-height: 47px;
        font-size: 0.93rem;
        padding: 0.6rem 0.86rem;
    }

    .home-property-card__media {
        aspect-ratio: 1 / 1;
        height: auto;
        min-height: 0;
        max-height: none;
    }

    .home-property-card__cta-link {
        min-height: 32px;
        padding: 0.28rem 0.56rem;
    }

    .home-market--active .home-property-card__cta-link {
        min-height: 0;
        padding: 0;
    }

    .home-property-card__body {
        padding: 20px 20px 19px;
    }

    .home-property-card__teaser {
        font-size: 0.84rem;
        min-height: 2.76em;
    }

    .home-property-card__chips {
        margin-top: 17px;
    }

    .home-property-card__pricing {
        margin-top: auto;
    }

    .home-property-card__actions {
        margin-top: 17px;
    }

    .home-property-card__nav {
        width: 29px;
        height: 29px;
    }

    .home-property-card__nav--prev {
        left: 12px;
    }

    .home-property-card__nav--next {
        right: 12px;
    }
}

@media (max-width: 980px) and (min-width: 768px) {
    .home-property-grid,
    .home-fit__grid,
    .home-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-property-card__actions {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-property-card__cta,
    .home-property-card__cta-link {
        font-size: 0.84rem;
    }

}

@media (pointer: coarse) and (min-width: 768px) and (max-width: 1366px) {
    .home-property-card__nav {
        width: 38px;
        height: 38px;
    }

    .home-property-card__cta {
        min-height: 48px;
    }

    .home-market-more .btn {
        min-height: 46px;
    }

    .home-market-more .home-market-more__cta {
        min-height: 48px;
    }
}

@media (max-width: 640px) {
    .home-market,
    .home-sellers--teaser,
    .home-simulator,
    .home-fit,
    .home-testimonials,
    .home-faq,
    .home-contact {
        padding-top: 52px;
        padding-bottom: 56px;
    }

    .home-testimonials {
        padding-top: 50px;
        padding-bottom: 46px;
    }

    .home-contact {
        padding-top: 50px;
        padding-bottom: 58px;
    }

    .home-contact-bridge {
        margin-bottom: 22px;
        padding-bottom: 16px;
    }

    .home-testimonials + .home-contact {
        padding-top: 54px;
    }

    .home-market + .home-market {
        padding-top: 44px;
    }

    .home-market--active + .home-authority {
        padding-top: calc(34px + var(--tn-home-authority-overlap));
    }

    .home-authority + .home-market--closed {
        padding-top: 48px;
    }

    .home-market--closed + .home-benchmark {
        padding-top: 50px;
    }

    .home-market--closed + .home-simulator {
        padding-top: 58px;
    }

    .home-simulator + .home-benchmark {
        padding-top: 52px;
    }

    .home-benchmark + .home-sellers--teaser {
        padding-top: 62px;
    }

    .home-testimonials + .home-contact {
        padding-top: 54px;
    }

    .home-authority--teaser {
        padding-top: 42px;
        padding-bottom: 48px;
    }

    .home-benchmark {
        padding-top: 38px;
        padding-bottom: 42px;
    }

    .simulator-box__title {
        max-width: none;
        font-size: 1.56rem;
    }

    .simulator-box__lead {
        max-width: none;
        font-size: 0.92rem;
    }

    .simulator-box__control {
        min-height: 40px;
        padding: 0.68rem 0.92rem;
    }

    .simulator-box__actions .sim-btn-primary {
        width: 100%;
        min-width: 0;
    }

    .simulator-box__actions {
        align-items: stretch;
        gap: 10px;
    }

    .simulator-box__sample {
        padding: 18px 16px;
        border-radius: 20px;
    }

    .simulator-box__sample-sheet {
        grid-template-columns: 1fr;
    }

    .simulator-box__sample-title {
        font-size: 1.18rem;
    }

    .simulator-box__sample-row strong,
    .simulator-box__sample-verdict-state {
        font-size: 0.98rem;
    }

    .home-sellers--teaser {
        padding-top: 24px;
        padding-bottom: 38px;
    }

    .section-head {
        --tn-section-title-gap: 7px;
        --tn-section-copy-gap: 9px;
        --tn-section-foot-gap: 12px;
        margin-bottom: 22px;
        padding-bottom: var(--tn-section-foot-gap);
    }

    .section-head p {
        color: #4a617f;
        font-size: 0.92rem;
        line-height: 1.5;
    }

    .section-head--market p,
    .section-head--authority p:not(.eyebrow) {
        color: #435b79;
    }

    .section-head--authority h2 {
        max-width: 15.4ch;
        font-size: clamp(1.76rem, 5vw, 2.52rem);
        line-height: 0.96;
    }

    .home-authority__title-line {
        display: inline;
        white-space: normal;
    }

    .home-authority__title-line + .home-authority__title-line {
        margin-top: 0;
    }

    .home-benchmark__panel {
        gap: 14px;
        padding: 0;
    }

    .home-benchmark__field {
        gap: 9px;
        padding-top: 14px;
    }

    .home-benchmark__register {
        gap: 10px;
    }

    .home-benchmark__logos {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-benchmark__logos li {
        min-height: 44px;
        padding: 0 10px 0 9px;
    }

    .home-benchmark__logos span {
        font-size: 0.685rem;
        letter-spacing: 0.006em;
        line-height: 1.18;
    }

    .home-benchmark__note {
        max-width: none;
        font-size: 0.655rem;
    }

    .home-benchmark__margin {
        width: 100%;
        padding-top: 9px;
    }

    .home-contact__intro,
    .home-contact__form {
        border-radius: 24px;
        padding: 20px 16px;
    }

    .home-contact__form::after {
        inset: 10px;
        border-radius: 18px;
    }

    .home-contact__intro {
        gap: 12px;
        box-shadow: 0 16px 24px rgba(7, 19, 39, 0.11), 0 4px 10px rgba(7, 20, 41, 0.045), inset 0 1px 0 rgba(255, 255, 255, 0.035);
    }

    .home-contact-bridge::before {
        top: -16px;
        width: 220px;
        height: 84px;
        opacity: 0.2;
        filter: blur(8px);
    }

    .home-contact-bridge::after {
        width: 46px;
    }

    .home-contact__intro::before {
        inset: 8px;
        border-radius: 16px;
        border-color: rgba(223, 233, 248, 0.06);
    }

    .home-contact__intro::after {
        width: 76px;
    }

    .home-contact__form {
        box-shadow: 0 15px 24px rgba(31, 46, 68, 0.06), 0 4px 10px rgba(31, 46, 68, 0.024), inset 0 1px 0 rgba(255, 255, 255, 0.94);
    }

    .home-contact__form::before {
        width: 68px;
    }

    .home-contact__form-head {
        gap: 12px;
        margin-bottom: 18px;
        padding-bottom: 16px;
    }

    .home-contact__form h3 {
        max-width: 15ch;
        font-size: clamp(1.18rem, 5.7vw, 1.38rem);
    }

    .home-contact__form-note,
    .home-contact__form-context {
        max-width: none;
    }

    .home-contact__form-head-side {
        gap: 8px;
    }

    .home-contact__intro h2 {
        font-size: clamp(1.54rem, 8vw, 1.92rem);
    }

    .home-contact__route {
        padding-bottom: 10px;
    }

    .home-contact__route::before {
        top: 10px;
    }

    .home-contact__route-button {
        min-height: 48px;
        gap: 3px;
        padding-left: 38px;
    }

    .home-contact__route-button::after {
        inset: -7px -8px -6px 24px;
        border-radius: 16px;
    }

    .home-contact__route-button span {
        font-size: 0.84rem;
        line-height: 1.42;
    }

    .home-contact__form-context {
        min-height: 0;
        font-size: 0.78rem;
        line-height: 1.48;
    }

    .home-contact__deliverables {
        gap: 6px 12px;
        font-size: 0.75rem;
    }

    .home-contact__express {
        padding-top: 16px;
        gap: 14px;
    }

    .home-contact__express-copy {
        max-width: 30ch;
    }

    .home-contact__express-actions .btn {
        min-height: 48px;
    }

    .home-contact__express-actions .btn::before {
        opacity: 0.6;
    }

    .home-contact__express-actions .btn::after {
        width: 58px;
        opacity: 0.76;
    }

    .home-contact__express-actions .btn-primary {
        box-shadow: 0 8px 14px rgba(8, 21, 41, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.94), inset 0 -1px 0 rgba(186, 156, 105, 0.055);
    }

    .home-contact__express-actions .btn-secondary {
        box-shadow: 0 8px 14px rgba(4, 14, 31, 0.09), 0 2px 6px rgba(4, 14, 31, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.16), inset 0 -1px 0 rgba(131, 162, 207, 0.07);
    }

    .home-contact__deliverables li:not(:last-child)::after {
        display: none;
    }

    .home-property-card__teaser,
    .home-fit__assist {
        color: #4b617d;
    }

    .home-testimonials__support {
        gap: 10px;
        margin-top: 14px;
        padding-top: 12px;
    }

    .home-faq__grid--support .home-faq__item {
        border-radius: 10px;
    }

    .home-faq__grid--support .home-faq__item summary {
        min-height: 52px;
        padding: 12px 38px 12px 14px;
        font-size: 0.84rem;
    }

    .home-faq__grid--support .home-faq__item summary::after {
        right: 14px;
        width: 22px;
        height: 22px;
        font-size: 0.86rem;
    }

    .home-faq__grid--support .home-faq__item p {
        margin: -2px 14px 14px;
        font-size: 0.84rem;
        line-height: 1.48;
    }

    .home-authority {
        margin-top: 0;
        padding-top: 24px;
    }

    .home-authority::before {
        content: none;
    }

}

@media (max-width: 991px) {
    .home-market--active .section-head--market,
    .home-market--closed .section-head--market {
        margin-bottom: 24px;
        max-width: none;
    }

    .home-market-head-layout {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .home-market-head-note {
        max-width: none;
        width: fit-content;
    }

    .home-market--active .section-head--market {
        margin-bottom: 20px;
        text-align: center;
    }

    .home-market--active .home-market-head-layout {
        gap: 10px;
    }

    .home-market--active .home-market-head-note {
        width: auto;
        max-width: 18ch;
        padding: 8px 0 0 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .home-market--active .home-market-head-note::before {
        content: none;
    }

    .home-market--active .home-market-head-note-kicker {
        font-size: 0.5rem;
    }

    .home-market--active .home-market-head-note p {
        max-width: none;
        font-size: 0.68rem;
        line-height: 1.32;
    }

    .home-market-priority {
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 20px 18px;
        border-radius: 24px;
    }

    .home-market-priority__pills {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .home-market-priority__aside {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }

}

@media (max-width: 640px) {
    .home-market--active .section-head--market h2,
    .home-market--closed .section-head--market h2 {
        max-width: 12.6ch;
        font-size: clamp(1.82rem, 7vw, 2.24rem);
    }

    .home-market--active .home-market-head-copy > p,
    .home-market--closed .home-market-head-copy > p {
        max-width: 34ch;
        font-size: 0.92rem;
    }

    .home-market-head-note {
        width: 100%;
    }

    .home-market--active .section-head--market h2 {
        max-width: none;
        font-size: clamp(1.52rem, 5.2vw, 1.86rem);
    }

    .home-market--closed .section-head--market h2 {
        max-width: none;
        font-size: clamp(1.52rem, 5.2vw, 1.86rem);
    }

    .home-market-priority__pill {
        min-height: 40px;
        font-size: 0.69rem;
    }

    .home-market-priority__detail-panel {
        max-width: none;
        font-size: 0.78rem;
    }

    .home-market-priority__detail {
        min-height: 0;
        padding-top: 4px;
    }

    .home-market-priority {
        padding: 15px 14px;
        border-radius: 22px;
    }

    .home-market-priority__note {
        max-width: none;
        font-size: 0.76rem;
        line-height: 1.3;
    }

    .home-market-priority__actions {
        gap: 5px;
    }

    .home-market-priority__cta {
        min-height: 40px;
    }

    .home-market-priority__link {
        font-size: 0.7rem;
    }
}

/* Final home reveal guard: later home-specific rules must not cancel scroll entry states. */
body.home #trasnego-home.trasnego-home [data-reveal],
body.trasnego-home #trasnego-home.trasnego-home [data-reveal] {
    backface-visibility: hidden;
    will-change: auto;
    transition: opacity 0.72s ease, transform 0.82s cubic-bezier(0.19, 1, 0.22, 1) !important;
    transition-delay: var(--tn-home-reveal-delay, var(--reveal-delay, 0ms)) !important;
}

body.home #trasnego-home.trasnego-home [data-reveal]:not(.is-visible),
body.trasnego-home #trasnego-home.trasnego-home [data-reveal]:not(.is-visible) {
    opacity: 0 !important;
    transform: translate3d(0, 9px, 0) !important;
}

body.home #trasnego-home.trasnego-home [data-reveal].is-visible,
body.trasnego-home #trasnego-home.trasnego-home [data-reveal].is-visible {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
}

@media (max-width: 720px) {
    body.home #trasnego-home.trasnego-home .home-market-listings[data-reveal],
    body.home #trasnego-home.trasnego-home .home-market-listings[data-reveal]:not(.is-visible),
    body.trasnego-home #trasnego-home.trasnego-home .home-market-listings[data-reveal],
    body.trasnego-home #trasnego-home.trasnego-home .home-market-listings[data-reveal]:not(.is-visible) {
        opacity: 1 !important;
        transform: translate3d(0, 0, 0) !important;
        transition: none !important;
    }

    body.home #trasnego-home.trasnego-home [data-reveal]:not(.is-visible),
    body.trasnego-home #trasnego-home.trasnego-home [data-reveal]:not(.is-visible) {
        transform: translate3d(0, 7px, 0) !important;
    }

    body.home #trasnego-home.trasnego-home .home-market .home-property-card,
    body.home #trasnego-home.trasnego-home .home-authority-teaser__card,
    body.home #trasnego-home.trasnego-home .home-market-priority__pill,
    body.home #trasnego-home.trasnego-home .home-market-priority__cta,
    body.home #trasnego-home.trasnego-home .home-market-more__cta,
    body.home #trasnego-home.trasnego-home .home-property-card__cta,
    body.home #trasnego-home.trasnego-home .home-property-card__cta-link,
    body.home #trasnego-home.trasnego-home .sim-btn,
    body.home #trasnego-home.trasnego-home .home-contact-bridge__cta,
    body.trasnego-home #trasnego-home.trasnego-home .home-market .home-property-card,
    body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card,
    body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__pill,
    body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__cta,
    body.trasnego-home #trasnego-home.trasnego-home .home-market-more__cta,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta-link,
    body.trasnego-home #trasnego-home.trasnego-home .sim-btn,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge__cta {
        transition-property: transform, opacity !important;
    }

    body.home #trasnego-home.trasnego-home .home-market .home-property-card__media img,
    body.trasnego-home #trasnego-home.trasnego-home .home-market .home-property-card__media img {
        transform: none !important;
        filter: none !important;
        transition: none !important;
    }
}

/* Runtime parity locks: WordPress/WpResidence injects generic !important typography rules in staging. */
body.home #trasnego-home.trasnego-home,
body.trasnego-home #trasnego-home.trasnego-home {
    font-family: "Manrope", "Segoe UI", sans-serif !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
}

body.home #trasnego-home.trasnego-home .home-hero__label,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__label {
    font-size: 0.64rem !important;
    font-weight: 800 !important;
    line-height: 1.32 !important;
    letter-spacing: 0.18em !important;
}

body.home #trasnego-home.trasnego-home .home-hero__sublead,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__sublead {
    font-size: clamp(0.95rem, 0.96vw, 1rem) !important;
    font-weight: 635 !important;
    line-height: 1.48 !important;
}

body.home #trasnego-home.trasnego-home .home-hero__support-line,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__support-line {
    font-size: 0.71rem !important;
    font-weight: 670 !important;
    line-height: 1.35 !important;
}

body.home #trasnego-home.trasnego-home .section-head h2,
body.trasnego-home #trasnego-home.trasnego-home .section-head h2,
body.home #trasnego-home.trasnego-home .simulator-box__title,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__title,
body.home #trasnego-home.trasnego-home .home-benchmark__copy h2,
body.trasnego-home #trasnego-home.trasnego-home .home-benchmark__copy h2,
body.home #trasnego-home.trasnego-home .home-contact__intro h2,
body.trasnego-home #trasnego-home.trasnego-home .home-contact__intro h2 {
    font-weight: 700 !important;
}

body.home #trasnego-home.trasnego-home .section-head p:not(.eyebrow),
body.trasnego-home #trasnego-home.trasnego-home .section-head p:not(.eyebrow) {
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.58 !important;
}

body.home #trasnego-home.trasnego-home .section-head.section-head--market p:not(.eyebrow),
body.trasnego-home #trasnego-home.trasnego-home .section-head.section-head--market p:not(.eyebrow) {
    font-size: clamp(1.05rem, 1.26vw, 1.16rem) !important;
    line-height: 1.44 !important;
}

body.home #trasnego-home.trasnego-home .home-market-priority__copy h3,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__copy h3 {
    font-weight: 700 !important;
}

body.home #trasnego-home.trasnego-home .home-market-priority__lead,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__lead {
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.34 !important;
}

body.home #trasnego-home.trasnego-home .home-market-kicker,
body.trasnego-home #trasnego-home.trasnego-home .home-market-kicker {
    font-size: clamp(1.05rem, 1.26vw, 1.16rem) !important;
    font-weight: 800 !important;
    line-height: 1.44 !important;
    letter-spacing: 0.16em !important;
}

body.home #trasnego-home.trasnego-home .home-market-priority__eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__eyebrow {
    font-size: 0.66rem !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.15em !important;
}

body.home #trasnego-home.trasnego-home .home-market-priority__detail-panel,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__detail-panel {
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.012em !important;
}

body.home #trasnego-home.trasnego-home .home-market-priority__note,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__note {
    font-size: 0.77rem !important;
    font-weight: 400 !important;
    line-height: 1.28 !important;
}

body.home #trasnego-home.trasnego-home .home-authority__kicker,
body.trasnego-home #trasnego-home.trasnego-home .home-authority__kicker {
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.12em !important;
}

body.home #trasnego-home.trasnego-home .simulator-box__eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__eyebrow {
    font-size: 0.73rem !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.12em !important;
}

body.home #trasnego-home.trasnego-home .simulator-box__lead,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__lead {
    font-size: clamp(0.96rem, 1.06vw, 1.06rem) !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}

body.home #trasnego-home.trasnego-home .simulator-box__control,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__control,
body.home #trasnego-home.trasnego-home .simulator-box__control-tag,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__control-tag {
    line-height: 1.2 !important;
}

body.home #trasnego-home.trasnego-home .simulator-box__sample-kicker,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__sample-kicker,
body.home #trasnego-home.trasnego-home .simulator-box__sample-verdict-label,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__sample-verdict-label,
body.home #trasnego-home.trasnego-home .simulator-box__sample-label,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__sample-label {
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.12em !important;
}

body.home #trasnego-home.trasnego-home .home-benchmark__eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .home-benchmark__eyebrow {
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.14em !important;
}

@media (min-width: 981px) {
    body.home #trasnego-home.trasnego-home .simulator-box__title,
    body.trasnego-home #trasnego-home.trasnego-home .simulator-box__title,
    body.home #trasnego-home.trasnego-home .home-benchmark__copy h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-benchmark__copy h2 {
        margin-top: 45px !important;
    }
}

body.home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser .eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser .eyebrow,
body.home #trasnego-home.trasnego-home .section-head--testimonials .eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .section-head--testimonials .eyebrow {
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    line-height: 1.58 !important;
    letter-spacing: 0.11em !important;
}

body.home #trasnego-home.trasnego-home .home-contact-bridge__eyebrow,
body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge__eyebrow {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1.56 !important;
    letter-spacing: 0.16em !important;
}

body.home #trasnego-home.trasnego-home .home-contact-bridge p:not(.home-contact-bridge__eyebrow),
body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge p:not(.home-contact-bridge__eyebrow) {
    font-size: 0.96rem !important;
    font-weight: 400 !important;
    line-height: 1.56 !important;
}

body.home #trasnego-home.trasnego-home .home-contact__lead,
body.trasnego-home #trasnego-home.trasnego-home .home-contact__lead {
    font-size: 0.94rem !important;
    font-weight: 400 !important;
    line-height: 1.52 !important;
}

body.home #trasnego-home.trasnego-home .home-empty,
body.trasnego-home #trasnego-home.trasnego-home .home-empty {
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

body.home #trasnego-home.trasnego-home .home-hero__actions .btn,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__actions .btn {
    line-height: 1.6 !important;
}

body.home #trasnego-home.trasnego-home .home-hero__actions .btn.btn-large,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__actions .btn.btn-large {
    min-height: 52px !important;
    padding: 14px 30px !important;
    font-size: 0.98rem !important;
    font-weight: 720 !important;
}

body.home #trasnego-home.trasnego-home .home-hero__actions .btn-secondary,
body.trasnego-home #trasnego-home.trasnego-home .home-hero__actions .btn-secondary {
    min-height: 50px !important;
    padding: 12px 22px !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
}

body.home #trasnego-home.trasnego-home .home-property-card__teaser,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__teaser {
    font-size: 0.92rem !important;
    line-height: 1.54 !important;
}

body.home #trasnego-home.trasnego-home .home-property-card__body h3,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__body h3,
body.home #trasnego-home.trasnego-home .home-authority-teaser__card h3,
body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card h3,
body.home #trasnego-home.trasnego-home .home-contact-bridge h3,
body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge h3 {
    font-weight: 700 !important;
}

body.home #trasnego-home.trasnego-home .section-head h2,
body.trasnego-home #trasnego-home.trasnego-home .section-head h2,
body.home #trasnego-home.trasnego-home .section-head--market h2,
body.trasnego-home #trasnego-home.trasnego-home .section-head--market h2,
body.home #trasnego-home.trasnego-home .section-head--authority h2,
body.trasnego-home #trasnego-home.trasnego-home .section-head--authority h2,
body.home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser h2,
body.trasnego-home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser h2,
body.home #trasnego-home.trasnego-home .simulator-box__title,
body.trasnego-home #trasnego-home.trasnego-home .simulator-box__title,
body.home #trasnego-home.trasnego-home .home-benchmark__copy h2,
body.trasnego-home #trasnego-home.trasnego-home .home-benchmark__copy h2,
body.home #trasnego-home.trasnego-home .home-contact__intro h2,
body.trasnego-home #trasnego-home.trasnego-home .home-contact__intro h2 {
    font-size: clamp(1.58rem, 2.7vw, 2.34rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.03em !important;
}

/* Runtime parity: keep premium effects above WpResidence/CF7/global link rules. */
body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit,
body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: var(--tn-envio-alto) !important;
    width: 100% !important;
    border: var(--tn-boton-borde) !important;
    border-radius: var(--tn-boton-radio) !important;
    /* `background-color`, NO el atajo `background`: el atajo borra la imagen del
       brillo que pone site-global.css y deja el botón sin efecto. */
    background-color: var(--tn-brand, #1e3f80) !important;
    box-shadow: var(--tn-boton-sombra) !important;
    color: #ffffff !important;
    font-family: "Manrope", "Segoe UI", sans-serif !important;
    font-size: 0.93rem !important;
    font-weight: var(--tn-boton-peso) !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
    transition: transform var(--tn-boton-duracion, .2s) var(--tn-boton-curva, ease), box-shadow var(--tn-boton-duracion, .2s) ease, background-color var(--tn-boton-duracion, .2s) ease;
}

body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit:hover,
body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit:focus-visible,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit:hover,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 input[type="submit"].wpcf7-submit:focus-visible,
body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner:hover,
body.home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner:focus-visible,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner:hover,
body.trasnego-home #trasnego-home.trasnego-home .home-form-shell--contact .wpcf7 .has-spinner:focus-visible {
    transform: translateY(-1px) !important;
    border-color: rgba(19, 45, 84, 0.24) !important;
    background: var(--tn-brand-strong, #132a55) !important;
    box-shadow: var(--tn-boton-sombra-encima) !important;
    color: #ffffff !important;
    outline: none !important;
}

body.home #trasnego-home.trasnego-home .home-property-card__cta,
body.home #trasnego-home.trasnego-home .home-property-card__cta:hover,
body.home #trasnego-home.trasnego-home .home-property-card__cta:focus-visible,
body.home #trasnego-home.trasnego-home .home-market-more__cta--active,
body.home #trasnego-home.trasnego-home .home-market-priority__cta,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta:hover,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta:focus-visible,
body.trasnego-home #trasnego-home.trasnego-home .home-market-more__cta--active,
body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__cta {
    color: #ffffff !important;
    text-decoration: none !important;
}

body.home #trasnego-home.trasnego-home .home-property-card__cta-link,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta-link {
    color: #1e3f80 !important;
    text-decoration: none !important;
}

body.home #trasnego-home.trasnego-home .home-property-card__cta-link:hover,
body.home #trasnego-home.trasnego-home .home-property-card__cta-link:focus-visible,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta-link:hover,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card__cta-link:focus-visible {
    color: #153b77 !important;
    text-decoration: none !important;
}

body.home #trasnego-home.trasnego-home .home-authority-teaser__card,
body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card {
    transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.38s ease, border-color 0.34s ease, background 0.38s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    body.home #trasnego-home.trasnego-home .home-authority-teaser__card:hover,
    body.home #trasnego-home.trasnego-home .home-authority-teaser__card:focus-within,
    body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card:hover,
    body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card:focus-within {
        transform: translateY(-1px) !important;
        border-color: rgba(30, 63, 128, 0.16) !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 241, 233, 0.9)) !important;
        box-shadow: 0 18px 38px rgba(26, 45, 71, 0.1) !important;
    }
}

body.home #trasnego-home.trasnego-home .home-property-card,
body.home #trasnego-home.trasnego-home .home-authority-teaser__card,
body.trasnego-home #trasnego-home.trasnego-home .home-property-card,
body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card {
    will-change: auto !important;
}

@media (hover: hover) and (pointer: fine) {
    body.home #trasnego-home.trasnego-home .home-property-card:hover,
    body.home #trasnego-home.trasnego-home .home-property-card:focus-within,
    body.home #trasnego-home.trasnego-home .home-authority-teaser__card:hover,
    body.home #trasnego-home.trasnego-home .home-authority-teaser__card:focus-within,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card:hover,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card:focus-within,
    body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card:hover,
    body.trasnego-home #trasnego-home.trasnego-home .home-authority-teaser__card:focus-within {
        will-change: transform !important;
    }

    body.home #trasnego-home.trasnego-home .home-property-card:hover,
    body.home #trasnego-home.trasnego-home .home-property-card:focus-within,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card:hover,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card:focus-within {
        transform: translateY(-3px) !important;
        transition-delay: 0ms !important;
    }
}

@media (min-width: 1200px) {
    body.home #trasnego-home.trasnego-home .home-market-priority__lead,
    body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__lead {
        font-size: 0.89rem !important;
        line-height: 1.45 !important;
    }

    body.home #trasnego-home.trasnego-home .home-market-priority__note,
    body.trasnego-home #trasnego-home.trasnego-home .home-market-priority__note {
        font-size: 0.8rem !important;
        line-height: 1.36 !important;
    }
}

@media (max-width: 980px) {
    body.home #trasnego-home.trasnego-home .section-head p:not(.eyebrow),
    body.trasnego-home #trasnego-home.trasnego-home .section-head p:not(.eyebrow) {
        font-size: 0.94rem !important;
        line-height: 1.52 !important;
    }

    body.home #trasnego-home.trasnego-home .section-head--market p,
    body.trasnego-home #trasnego-home.trasnego-home .section-head--market p {
        font-size: 0.93rem !important;
    }

    body.home #trasnego-home.trasnego-home .home-property-card__teaser,
    body.trasnego-home #trasnego-home.trasnego-home .home-property-card__teaser {
        font-size: 0.84rem !important;
    }

    body.home #trasnego-home.trasnego-home .home-contact-bridge h3,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge h3 {
        display: block !important;
        width: auto !important;
        max-width: 11.85em !important;
        font-size: clamp(1.58rem, 2.7vw, 2.34rem) !important;
        line-height: 1.05 !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        text-wrap: balance;
    }

    body.home #trasnego-home.trasnego-home .home-contact-bridge__title-line,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge__title-line {
        display: inline !important;
        white-space: normal !important;
    }
}

@media (max-width: 640px) {
    body.home #trasnego-home.trasnego-home .home-hero__label,
    body.trasnego-home #trasnego-home.trasnego-home .home-hero__label {
        font-size: 0.58rem !important;
        letter-spacing: 0.16em !important;
    }

    body.home #trasnego-home.trasnego-home .home-hero__sublead,
    body.trasnego-home #trasnego-home.trasnego-home .home-hero__sublead {
        font-size: 0.9rem !important;
    }

    body.home #trasnego-home.trasnego-home .home-hero__support-line,
    body.trasnego-home #trasnego-home.trasnego-home .home-hero__support-line {
        font-size: 0.68rem !important;
    }

    body.home #trasnego-home.trasnego-home .section-head h2,
    body.trasnego-home #trasnego-home.trasnego-home .section-head h2,
    body.home #trasnego-home.trasnego-home .home-market--active .section-head--market h2,
    body.home #trasnego-home.trasnego-home .home-market--closed .section-head--market h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-market--active .section-head--market h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-market--closed .section-head--market h2,
    body.home #trasnego-home.trasnego-home .section-head--authority h2,
    body.trasnego-home #trasnego-home.trasnego-home .section-head--authority h2,
    body.home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-sellers--teaser .section-head--sellers-teaser h2,
    body.home #trasnego-home.trasnego-home .simulator-box__title,
    body.trasnego-home #trasnego-home.trasnego-home .simulator-box__title,
    body.home #trasnego-home.trasnego-home .home-benchmark__copy h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-benchmark__copy h2,
    body.home #trasnego-home.trasnego-home .home-contact__intro h2,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact__intro h2,
    body.home #trasnego-home.trasnego-home .home-contact-bridge h3,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge h3 {
        display: block !important;
        width: auto !important;
        max-width: 11.2em !important;
        font-size: clamp(1.58rem, 6vw, 2.02rem) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.04em !important;
        text-align: center !important;
        text-wrap: balance;
    }

    body.home #trasnego-home.trasnego-home .home-contact-bridge__title-line,
    body.trasnego-home #trasnego-home.trasnego-home .home-contact-bridge__title-line {
        display: inline !important;
        white-space: normal !important;
    }
}

/* ============================================================
   HOME · FASE 1 — estructura / longitud (append)
   1) Método (compradores/vendedores): compacto + numerado + color por perfil
   2) "Traspasos cerrados": rejilla → carrusel horizontal (solo cerrados)
   Reglas al final del CSS de home → ganan por orden, sin !important.
   ============================================================ */

/* ---------- 1) MÉTODO: numeración de pasos 01·02·03 ---------- */
.home-authority-teaser__cards {
    counter-reset: tn-step;
}

.home-authority-teaser__card {
    position: relative;
    padding: clamp(18px, 2vw, 24px) clamp(18px, 2.2vw, 26px);
    gap: 9px;
    border-radius: 22px;
    border-top-width: 3px;
}

.home-authority-teaser__card .home-authority__kicker {
    display: flex;
    align-items: center;
    gap: 9px;
}

.home-authority-teaser__card .home-authority__kicker::before {
    counter-increment: tn-step;
    content: counter(tn-step, decimal-leading-zero);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    flex: 0 0 auto;
}

/* título y detalle más compactos */
.home-authority-teaser__card h3 {
    font-size: clamp(1.08rem, 1.4vw, 1.28rem);
    line-height: 1.12;
}

.home-authority-teaser__card p:not(.home-authority__kicker) {
    font-size: 0.92rem;
    line-height: 1.5;
}

/* --- COMPRADORES = AZUL DE MARCA --- */
.home-authority--teaser .home-authority-teaser__card {
    border-top-color: rgba(30, 63, 128, 0.5);
}

.home-authority--teaser .home-authority-teaser__card .home-authority__kicker::before {
    background: rgba(30, 63, 128, 0.1);
    color: #1e3f80;
}

.home-authority--teaser .section-head--authority .eyebrow {
    color: #1e3f80;
}

/* --- VENDEDORES = DORADO --- */
.home-sellers-teaser .home-authority-teaser__card {
    border-top-color: rgba(169, 126, 66, 0.55);
}

.home-sellers-teaser .home-authority-teaser__card .home-authority__kicker::before {
    background: rgba(169, 126, 66, 0.15);
    color: #9a6f38;
}

.home-sellers--teaser .section-head--sellers-teaser .eyebrow {
    color: #9a6f38;
}

/* móvil: tira de pasos compacta (oculta el párrafo de detalle: número + título + enlace) */
@media (max-width: 767px) {
    .home-authority-teaser__cards {
        gap: 12px;
    }
    .home-authority-teaser__card {
        padding: 15px 17px;
        gap: 7px;
        border-radius: 16px;
    }
    .home-authority-teaser__card p:not(.home-authority__kicker) {
        display: none;
    }
    .home-authority-teaser__card h3 {
        font-size: 1.05rem;
        line-height: 1.16;
    }
}

/* ---------- 2) "TRASPASOS CERRADOS": carrusel horizontal ---------- */
.home-market--closed .home-property-grid {
    display: flex;
    grid-template-columns: none;
    gap: clamp(16px, 2vw, 22px);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 2px;
    padding-bottom: 12px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(30, 63, 128, 0.28) transparent;
}

.home-market--closed .home-property-grid > * {
    flex: 0 0 auto;
    width: calc((100% - 2 * clamp(16px, 2vw, 22px)) / 3);
    scroll-snap-align: start;
}

@media (max-width: 991px) {
    .home-market--closed .home-property-grid > * {
        width: calc((100% - clamp(16px, 2vw, 22px)) / 2);
    }
}

@media (max-width: 767px) {
    .home-market--closed .home-property-grid > * {
        width: 84%;
    }
}

.home-market--closed .home-property-grid::-webkit-scrollbar {
    height: 6px;
}

.home-market--closed .home-property-grid::-webkit-scrollbar-thumb {
    background: rgba(30, 63, 128, 0.24);
    border-radius: 999px;
}
/* ============================================================
   /HOME · FASE 1
   ============================================================ */

/* ---------- Flechas del carrusel de "cerrados" (tablet/escritorio) ---------- */
.home-market--closed .tn-carousel-viewport {
    position: relative;
}

.tn-carousel-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    display: none;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 999px;
    background: linear-gradient(145deg, #24508f 0%, #1e3f80 55%, #163363 100%);
    color: #ffffff;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(16, 35, 60, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.18);
    transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.22s ease, background 0.22s ease, opacity 0.2s ease;
}

.tn-carousel-arrow svg {
    display: block;
    width: 22px;
    height: 22px;
}

.tn-carousel-arrow--prev {
    left: 10px;
}

.tn-carousel-arrow--next {
    right: 10px;
}

.tn-carousel-arrow:hover,
.tn-carousel-arrow:focus-visible {
    transform: translateY(-50%) scale(1.09);
    background: linear-gradient(145deg, #2a5599 0%, #234a8c 55%, #1a3a72 100%);
    box-shadow: 0 16px 32px rgba(16, 35, 60, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.22);
    outline: none;
}

.tn-carousel-arrow.is-disabled {
    opacity: 0.34;
    pointer-events: none;
}

@media (min-width: 768px) {
    .tn-carousel-arrow {
        display: inline-flex;
    }
}

/* ---------- Botón "Pedir comparables privados" (cerrados) en azul ---------- */
.home-market--closed .home-market-more .home-market-more__cta--closed,
.home-market--closed a.home-market-more__cta--closed {
    border-color: rgba(21, 47, 91, 0.28) !important;
    background: linear-gradient(145deg, #2f578d 0%, #21487b 56%, #173b67 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(17, 39, 76, 0.14), 0 5px 12px rgba(13, 32, 61, 0.06);
}
.home-market--closed .home-market-more .home-market-more__cta--closed:hover,
.home-market--closed .home-market-more .home-market-more__cta--closed:focus-visible {
    background: linear-gradient(145deg, #35619b 0%, #274f88 56%, #1c4173 100%) !important;
    color: #ffffff !important;
}


/* ============================================================
   HOME · "Todo incluido en el servicio" (v2, con jerarquía) + recorte móvil
   "Criterio de lectura". La tarjeta "Gestión confidencial" es la pieza focal:
   azul marino oscuro (eco del bloque premium del simulador) entre las crema —
   la tarjeta "privada" es literalmente la discreta. Resto: hover físico,
   iconos con chip, cierre con filete dorado.
   ============================================================ */
.home-included {
    padding-top: clamp(38px, 4.9vw, 58px);
    padding-bottom: clamp(40px, 4.6vw, 62px);
}

.home-included .section-head--included {
    max-width: min(980px, 100%);
    margin-bottom: clamp(24px, 3vw, 36px);
    text-align: center;
}

.home-included .section-head--included h2 {
    max-width: 22ch;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
}

.home-included .section-head--included .eyebrow {
    justify-content: center;
    color: #1e3f80;
}

.home-included__grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: clamp(14px, 1.8vw, 20px);
    align-items: stretch;
}

.home-included__card {
    position: relative;
    display: grid;
    align-content: start;
    gap: 9px;
    padding: clamp(20px, 2.2vw, 26px) clamp(18px, 2.2vw, 26px);
    border: 1px solid rgba(34, 61, 96, 0.08);
    border-top: 3px solid rgba(30, 63, 128, 0.38);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 240, 232, 0.86));
    box-shadow: 0 14px 34px rgba(26, 45, 71, 0.07);
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.32s ease, border-color 0.32s ease;
}

.home-included__card:hover {
    transform: translateY(-5px);
    border-top-color: rgba(30, 63, 128, 0.8);
    box-shadow: 0 24px 48px rgba(26, 45, 71, 0.13);
}

.home-included__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 13px;
    background: rgba(30, 63, 128, 0.09);
    color: #1e3f80;
    transition: background 0.32s ease, color 0.32s ease, transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-included__card:hover .home-included__icon {
    background: #1e3f80;
    color: #ffffff;
    transform: scale(1.06);
}

.home-included__icon svg {
    width: 23px;
    height: 23px;
}

.home-included__card h3 {
    margin: 0;
    color: #14325b;
    font-size: clamp(1.04rem, 1.32vw, 1.18rem);
    line-height: 1.16;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.home-included__card p {
    margin: 0;
    color: #536b86;
    font-size: 0.9rem;
    line-height: 1.52;
}

/* --- Pieza focal: Gestión confidencial (oscura y discreta a propósito) --- */
.home-included__card--featured {
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-top: 3px solid #d39a2f;
    background: linear-gradient(168deg, #1c3c69 0%, #132b4f 52%, #0d2038 100%);
    box-shadow: 0 22px 48px rgba(10, 26, 49, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.home-included__card--featured:hover {
    border-top-color: #e2b45e;
    box-shadow: 0 30px 60px rgba(10, 26, 49, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.home-included__card--featured h3 {
    color: #f5f8fd;
}

.home-included__card--featured p {
    color: rgba(222, 232, 246, 0.82);
}

.home-included__card--featured .home-included__icon {
    background: rgba(211, 154, 47, 0.16);
    color: #e2b45e;
}

.home-included__card--featured:hover .home-included__icon {
    background: #d39a2f;
    color: #10233f;
}

/* --- Cierre con filete dorado --- */
.home-included__closing {
    display: grid;
    justify-items: center;
    gap: 10px;
    margin: clamp(24px, 3vw, 34px) auto 0;
    max-width: 62ch;
    text-align: center;
    color: #536b86;
    font-size: 0.98rem;
    line-height: 1.55;
}

.home-included__closing::before {
    content: "";
    width: 58px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(211, 154, 47, 0) 0%, #d39a2f 50%, rgba(211, 154, 47, 0) 100%);
}

.home-included__closing strong {
    display: block;
    color: #9a6f38;
    font-weight: 780;
    letter-spacing: -0.02em;
}

@media (max-width: 991px) {
    .home-included__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .home-included__card--featured {
        grid-column: 1 / -1;
        order: -1;
    }
    .home-included__card:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    .home-included__grid {
        gap: 10px;
    }
    .home-included__card {
        padding: 15px 16px;
        gap: 7px;
        border-radius: 16px;
    }
    .home-included__icon {
        width: 34px;
        height: 34px;
        border-radius: 10px;
    }
    .home-included__icon svg {
        width: 19px;
        height: 19px;
    }
    .home-included__card h3 {
        font-size: 0.96rem;
    }
    .home-included__card p {
        font-size: 0.79rem;
        line-height: 1.44;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-included__card,
    .home-included__icon {
        transition: none;
    }
    .home-included__card:hover {
        transform: none;
    }
    .home-included__card:hover .home-included__icon {
        transform: none;
    }
}

/* Recorte móvil del bloque "Criterio de lectura" (cerrados): título + línea + botón. */
@media (max-width: 767px) {
    .home-market-priority--closed .home-market-priority__controls {
        display: none;
    }
    .home-market-priority--closed .home-market-priority__note {
        display: none;
    }
}

/* --- v2.1: entrada en cascada + brillo de barrido en la focal --- */
.home-included__grid[data-reveal] .home-included__card {
    opacity: 0;
    transform: translateY(18px);
}

.home-included__grid[data-reveal].is-visible .home-included__card {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(1) { transition-delay: 0.05s; }
.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(2) { transition-delay: 0.16s; }
.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(3) { transition-delay: 0.27s; }
.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(4) { transition-delay: 0.38s; }
.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(5) { transition-delay: 0.49s; }
.home-included__grid[data-reveal].is-visible .home-included__card:nth-child(6) { transition-delay: 0.6s; }

/* el hover recupera prioridad sobre el estado de entrada (y sin retardo) */
.home-included__grid[data-reveal].is-visible .home-included__card:hover {
    transform: translateY(-5px);
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.32s ease, border-color 0.32s ease;
    transition-delay: 0s;
}

/* barrido de brillo en la tarjeta oscura (mismo lenguaje que los btn-primary) */
.home-included__card--featured {
    overflow: hidden;
}

.home-included__card--featured::after {
    content: "";
    position: absolute;
    top: -80%;
    left: -40%;
    width: 36%;
    height: 240%;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.16) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-200%) rotate(18deg);
    transition: transform 0.7s ease;
    pointer-events: none;
}

.home-included__card--featured:hover::after {
    transform: translateX(380%) rotate(18deg);
}

@media (prefers-reduced-motion: reduce) {
    .home-included__grid[data-reveal] .home-included__card {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .home-included__card--featured::after {
        display: none;
    }
}

/* --- v3: miniaturas reales de entregables (hover, escritorio) --- */
.home-included__card--has-preview {
    padding-right: clamp(18px, 2.2vw, 26px);
}

.home-included__preview {
    position: absolute;
    right: 12px;
    bottom: -14px;
    width: 116px;
    opacity: 0;
    transform: translateY(78%) rotate(-5deg);
    transition: transform 0.42s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
    pointer-events: none;
    z-index: 6;
    filter: drop-shadow(0 20px 32px rgba(16, 35, 60, 0.35));
}

.home-included__preview img {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid rgba(34, 61, 96, 0.16);
    border-radius: 7px;
    background: #ffffff;
}

.home-included__card--has-preview:hover {
    z-index: 12;
}

.home-included__card--has-preview:hover .home-included__preview {
    opacity: 1;
    transform: translateY(34%) rotate(-3.5deg);
}

@media (max-width: 991px) {
    .home-included__preview {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-included__preview {
        transition: opacity 0.2s ease;
        transform: translateY(34%) rotate(-3.5deg);
    }
}

/* ============================================================
   HOME · "Marcas cliente" v2 — marquee + cifras vivas + badge Google
   ============================================================ */
.home-benchmark__marquee {
    position: relative;
    overflow: hidden;
    padding: 14px 0 10px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
}

.home-benchmark__track {
    display: flex;
    width: max-content;
    animation: tn-benchmark-scroll 32s linear infinite;
}

.home-benchmark__marquee:hover .home-benchmark__track {
    animation-play-state: paused;
}

.home-benchmark__set {
    display: flex;
    align-items: center;
    gap: 28px;
    padding-right: 28px;
}

.home-benchmark__brand {
    color: #14325b;
    font-size: clamp(1.05rem, 1.4vw, 1.3rem);
    font-weight: 800;
    letter-spacing: -0.022em;
    white-space: nowrap;
}

.home-benchmark__dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d39a2f;
    opacity: 0.65;
    flex: 0 0 auto;
}

@keyframes tn-benchmark-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.home-benchmark__stats {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(18px, 3vw, 40px);
    margin: 18px 0 0;
    padding: 14px 0 0;
    border-top: 1px solid rgba(34, 61, 96, 0.09);
    list-style: none;
}

.home-benchmark__stats li {
    display: grid;
    gap: 2px;
}

.home-benchmark__stats strong {
    color: #14325b;
    font-size: clamp(1.35rem, 1.9vw, 1.7rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1;
}

.home-benchmark__stats span {
    color: #5a6d86;
    font-size: 0.8rem;
}

.home-benchmark__google {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    padding: 8px 15px;
    border: 1px solid rgba(30, 63, 128, 0.14);
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff, #f8fafd);
    box-shadow: 0 6px 16px rgba(20, 42, 70, 0.07);
}

.home-benchmark__google-star {
    display: inline-flex;
    color: #d39a2f;
}

.home-benchmark__google-star svg {
    width: 18px;
    height: 18px;
}

.home-benchmark__google strong {
    color: #14325b;
    font-size: 1rem;
    font-weight: 800;
}

.home-benchmark__google span:last-child {
    color: #5a6d86;
    font-size: 0.82rem;
}

.home-benchmark__note {
    margin: 14px 0 0;
    color: #67758c;
    font-size: 0.78rem;
    line-height: 1.5;
}

@media (prefers-reduced-motion: reduce) {
    .home-benchmark__track {
        animation: none;
        flex-wrap: wrap;
    }
    .home-benchmark__set[aria-hidden="true"] {
        display: none;
    }
}

/* la nota hereda ancho estrecho del layout viejo (__margin): liberar */
.home-benchmark__field .home-benchmark__note {
    max-width: 62ch;
    width: auto;
}

/* --- Barra de confianza bajo el titular de resultados (badge Google + cifras vivas) --- */
.home-trust {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 14px 26px;
    margin-top: 18px;
}

.home-trust__google {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 15px;
    border: 1px solid rgba(30, 63, 128, 0.14);
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff, #f8fafd);
    box-shadow: 0 6px 16px rgba(20, 42, 70, 0.07);
}

.home-trust__star {
    display: inline-flex;
    color: #d39a2f;
}

.home-trust__star svg {
    width: 18px;
    height: 18px;
}

.home-trust__google strong {
    color: #14325b;
    font-size: 1rem;
    font-weight: 800;
}

.home-trust__google span:last-child {
    color: #5a6d86;
    font-size: 0.82rem;
}

.home-trust__stats {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-trust__stats li {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.home-trust__stats li + li::before {
    content: "";
    align-self: center;
    width: 5px;
    height: 5px;
    margin-right: 18px;
    border-radius: 50%;
    background: rgba(211, 154, 47, 0.65);
}

.home-trust__stats strong {
    color: #14325b;
    font-size: 1.12rem;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.home-trust__stats span {
    color: #5a6d86;
    font-size: 0.82rem;
}

/* --- CTA para enseñas en expansión (Marcas cliente) --- */
.home-benchmark__cta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(34, 61, 96, 0.09);
}

.home-benchmark__cta p {
    margin: 0;
    color: #14325b;
    font-size: 0.98rem;
    font-weight: 750;
    letter-spacing: -0.015em;
}

.home-benchmark__cta a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 18px;
    border: 1px solid rgba(30, 63, 128, 0.28);
    border-radius: 999px;
    color: #1e3f80;
    font-size: 0.88rem;
    font-weight: 800;
    text-decoration: none;
    background: linear-gradient(180deg, #ffffff, #f6f9fd);
    transition: transform 0.24s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.24s ease, border-color 0.24s ease;
}

.home-benchmark__cta a:hover,
.home-benchmark__cta a:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(30, 63, 128, 0.5);
    box-shadow: 0 10px 22px rgba(20, 42, 70, 0.12);
    outline: none;
}

/* --- Micro-historias de marcas: indicador + línea viva --- */
.home-benchmark__brand--has-note {
    cursor: pointer;
    text-decoration: underline dotted rgba(211, 154, 47, 0.75);
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
    outline: none;
}

.home-benchmark__brand--has-note:hover,
.home-benchmark__brand--has-note:focus-visible {
    color: #1e3f80;
    text-decoration-style: solid;
}

.home-benchmark__note-live {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 26px;
    margin: 10px 0 0;
    color: #48607d;
    font-size: 0.9rem;
    line-height: 1.5;
    transition: opacity 0.25s ease;
}

.home-benchmark__note-live strong {
    color: #14325b;
    font-weight: 780;
}

.home-benchmark__note-live .home-benchmark__note-hint {
    color: #93a1b5;
    font-size: 0.8rem;
}

.home-benchmark__note-live.is-active::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d39a2f;
    flex: 0 0 auto;
}

/* --- Logos monocromo en la cinta de marcas --- */
.home-benchmark__brand--logo {
    display: inline-flex;
    align-items: center;
}

.home-benchmark__brand--logo img {
    display: block;
    height: 26px;
    width: auto;
    opacity: 0.88;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.home-benchmark__brand--logo:hover img,
.home-benchmark__brand--logo:focus-visible img {
    opacity: 1;
    transform: translateY(-1px);
}

/* indicador de nota unificado (texto y logo): filete punteado dorado inferior */
.home-benchmark__brand--has-note {
    text-decoration: none;
    border-bottom: 2px dotted rgba(211, 154, 47, 0.75);
    padding-bottom: 5px;
}

.home-benchmark__brand--has-note:hover,
.home-benchmark__brand--has-note:focus-visible {
    border-bottom-style: solid;
}

@media (max-width: 767px) {
    .home-benchmark__brand--logo img {
        height: 22px;
    }
}

/* --- Muro de marcas estático: las 8 siempre visibles --- */
.home-benchmark__wall {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(22px, 2.6vw, 34px) clamp(20px, 2.4vw, 36px);
    align-items: center;
    justify-items: center;
    padding: 14px 0 6px;
}

.home-benchmark__wall-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    color: #14325b;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    opacity: 0.82;
    transition: opacity 0.28s ease, transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-benchmark__wall-item img {
    display: block;
    height: 30px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.home-benchmark__wall-item:hover {
    opacity: 1;
    transform: translateY(-2px);
}

/* Logos compactos más grandes (5-oct): Mahalo Poké y 100 Montaditos. */
.home-benchmark__wall-item--grande img {
    height: 52px;
}

@media (max-width: 767px) {
    .home-benchmark__wall {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 18px;
    }
    .home-benchmark__wall-item img {
        height: 24px;
    }
    .home-benchmark__wall-item--grande img {
        height: 40px;
    }
}

/* HOME · Criterio de lectura compacto (10-ago): sin pastillas ni nota, la rejilla
   de 2 columnas dejaba media caja vacía y la CTA huérfana. Pasa a UNA fila:
   texto a la izquierda, CTA + Ver muestra a la derecha, centrados en vertical. */
.home-market-priority--closed {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px 32px;
    padding: clamp(16px, 1.7vw, 24px) clamp(18px, 2.2vw, 30px);
}

.home-market-priority--closed .home-market-priority__copy {
    flex: 1 1 340px;
}

.home-market-priority--closed .home-market-priority__copy h3 {
    max-width: 26ch;
}

.home-market-priority--closed .home-market-priority__lead {
    max-width: 52ch;
}

.home-market-priority--closed .home-market-priority__aside {
    display: block;
    padding-top: 0;
    border-top: 0;
    flex: 0 0 auto;
    margin-left: auto;
}

.home-market-priority--closed .home-market-priority__actions {
    display: flex;
    align-items: center;
    gap: 10px 20px;
    width: auto;
    text-align: left;
}

.home-market-priority--closed .home-market-priority__cta {
    width: auto;
    flex: 0 0 auto;
    padding-inline: 1.35rem;
}

.home-market-priority--closed .home-market-priority__link {
    width: auto;
    flex: 0 0 auto;
}

@media (max-width: 767px) {
    .home-market-priority--closed .home-market-priority__aside {
        margin-left: 0;
        width: 100%;
    }

    .home-market-priority--closed .home-market-priority__actions {
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
    }

    .home-market-priority--closed .home-market-priority__cta {
        width: 100%;
    }
}

/* Caso real (11-ago): operación cerrada con números verificados del CRM,
   entre las reseñas y las FAQ. Pieza navy destacada, eco del panel premium. */
.home-caso {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 22px 40px;
    margin: clamp(26px, 3.2vw, 40px) auto 0;
    max-width: min(1240px, 100%);
    padding: clamp(24px, 3vw, 36px) clamp(22px, 2.8vw, 38px);
    border: 1px solid rgba(20, 47, 91, 0.3);
    border-radius: 20px;
    background:
        radial-gradient(circle at 86% 12%, rgba(182, 148, 93, 0.16) 0%, rgba(182, 148, 93, 0) 34%),
        linear-gradient(145deg, #16365c 0%, #1e3f80 100%);
    color: #ffffff;
    box-shadow: 0 18px 36px rgba(10, 26, 52, 0.16);
}

.home-caso__copy {
    max-width: 560px;
}

.home-caso__kicker {
    margin: 0 0 8px;
    color: #d8b878;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.home-caso__copy h3 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: clamp(1.4rem, 2.2vw, 1.85rem);
    line-height: 1.08;
    font-weight: 800;
}

.home-caso__copy > p:not(.home-caso__kicker) {
    margin: 0 0 16px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.96rem;
    line-height: 1.55;
}

.home-caso__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.92rem;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-color: rgba(216, 184, 120, 0.7);
    transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.home-caso__cta:hover {
    color: #f4e3c2;
    text-decoration-color: #f4e3c2;
}

.home-caso__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, auto));
    gap: 14px 34px;
    margin: 0;
}

.home-caso__stat dt {
    margin: 0 0 2px;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.home-caso__stat dd {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.35rem, 2vw, 1.7rem);
    font-weight: 800;
    line-height: 1.05;
}

@media (max-width: 767px) {
    .home-caso__stats {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Tira "Buscar por zona" (11-ago): enlaces vivos a las páginas de distrito,
   bajo el catálogo de activos. Conteo del catálogo real. */
.home-distritos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    margin: clamp(18px, 2.2vw, 26px) 0 4px;
}

.home-distritos__label {
    margin: 0;
    color: #64778f;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.home-distritos ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-distritos a {
    display: inline-block;
    padding: 7px 13px;
    border: 1px solid rgba(30, 63, 128, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.85);
    color: #35507a;
    font-size: 0.84rem;
    font-weight: 600;
    text-decoration: none;
    transition: border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.home-distritos a span {
    color: #8a99ad;
    font-weight: 700;
}

.home-distritos a:hover {
    border-color: rgba(30, 63, 128, 0.42);
    color: #1e3f80;
    transform: translateY(-1px);
    text-decoration: none;
}

/* Caso real v2 (11-ago): rotador de 3 casos. El contenedor pasa a block y el
   layout flex vive en cada slide; puntos de control abajo a la derecha. */
.home-caso {
    display: block;
    position: relative;
}

.home-caso__slide {
    display: none;
}

.home-caso__slide.is-active {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 22px 40px;
    animation: home-caso-fade 0.45s ease;
}

@keyframes home-caso-fade {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .home-caso__slide.is-active { animation: none; }
}

.home-caso__dots {
    position: absolute;
    right: clamp(18px, 2.4vw, 30px);
    bottom: 14px;
    display: flex;
    gap: 7px;
}

.home-caso__dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.32);
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
}

.home-caso__dot:hover {
    background: rgba(255, 255, 255, 0.55);
}

.home-caso__dot.is-active {
    background: #d8b878;
    transform: scale(1.15);
}

/* Caso real v3 (11-ago): altura ESTABLE — los 3 slides se apilan en la misma
   celda de grid (la caja mide siempre como el más alto) y el cambio es un
   fundido de opacidad, sin saltos de tamaño. */
.home-caso {
    display: grid;
}

.home-caso__slide {
    display: flex;
    grid-area: 1 / 1;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 22px 40px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease;
}

.home-caso__slide.is-active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    animation: none;
}

@media (prefers-reduced-motion: reduce) {
    .home-caso__slide {
        transition: none;
    }
}

/* ========================================
   MÓVIL: que Safari no amplíe la portada al tocar un campo
   ======================================== */

/*
 * La regla de arriba usa `font: inherit`, así que estos campos heredan 14px del
 * contenedor — y Safari amplía la página en cuanto se toca un campo por debajo
 * de 16px. Al ampliar, la portada se sale por la derecha y hay que pellizcar.
 *
 * La regla global de site-global.css ya lo cubría para el resto de la web, pero
 * aquí PERDÍA la disputa: `.home-form-shell .wpcf7 input…` es más específica que
 * `input[type="text"]`, y `inherit` ganaba. Medido en un iPhone real: eran diez
 * campos, incluidos el buscador de locales y el formulario de contacto de la
 * portada, que es la página más visitada.
 *
 * Solo bajo 767px: el diseño de escritorio, ya aprobado, no cambia.
 */
@media (max-width: 767px) {
  .home-form-shell .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
  .home-form-shell .wpcf7 select,
  .home-form-shell .wpcf7 textarea,
  .home-search-mock__form input:not([type="submit"]),
  .home-search-mock__form select,
  .tn-market-results__quick-select,
  .tn-market-results__quick-filters input:not([type="submit"]),
  .tn-market-results__quick-filters select {
    font-size: 16px;
  }
}

/* ========================================
   MÓVIL: que los botones no se salgan de su caja
   ======================================== */

/*
 * 🔴 Medido en un iPhone real el 17-ago-2026, a partir de una captura del fundador: en la
 * caja «Acceso directo» de la portada, los dos botones —«Agendar llamada privada» y
 * «Ordenarlo con el simulador»— medían 418 píxeles dentro de un contenedor de 362, en una
 * pantalla de 390. Se salían por la derecha y la frase de abajo («Confidencial · Trato
 * directo · Respuesta en menos de 1 hora») quedaba cortada a media palabra.
 *
 * LA CAUSA, que no es evidente: estos bloques son rejillas (`display: grid`), y una rejilla
 * NO encoge por debajo del ancho de su contenido salvo que se le diga. Su `min-width` vale
 * `auto`, así que el botón más largo impone su tamaño y arrastra a toda la caja — por eso
 * la regla `width: min(100%, 308px)` de más arriba no servía de nada: el 100% se calculaba
 * sobre una caja que ya se había estirado.
 *
 * `min-width: 0` es lo que le devuelve el permiso de encoger. Es el arreglo estándar de este
 * fallo y el motivo por el que conviene dejarlo escrito: sin este comentario, alguien lo
 * borrará por parecer inofensivo y los botones volverán a salirse.
 *
 * Se aplica a la caja, a su contenedor de botones y a los propios botones, y solo en
 * pantallas pequeñas: en escritorio nunca hubo problema y el diseño no cambia.
 */
@media (max-width: 767px) {
  /* La rejilla del contenedor es la que de verdad manda: medido en el navegador, su columna
     valía 417,64px dentro de una caja de 362, porque no descontaba su propio relleno lateral
     (22px por lado). Todo lo de dentro se estiraba a esa columna, y por eso poner min-width
     en los hijos no bastaba — se comprobó, la regla llegaba y los botones seguían en 418. */
  .home-contact__intro {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-contact__express,
  .home-contact__express-head,
  .home-contact__express-actions {
    min-width: 0;
    max-width: 100%;
  }

  .home-contact__express-actions .btn {
    min-width: 0;
    max-width: 100%;
    /* Un texto largo sin espacios no puede volver a estirar el botón. */
    overflow-wrap: anywhere;
  }

  /* La frase de cierre («Confidencial · Trato directo · Respuesta en menos de 1 día hábil»)
     salía cortada: se veía «...Respuesta en menos» y ahí acababa.
     
     La causa NO era el tamaño de la letra, que fue lo primero que pareció: es
     `white-space: nowrap` en la regla de escritorio, que le prohíbe partirse en dos líneas.
     Con la prohibición puesta, el texto se sale por donde puede y el resto se pierde. En
     escritorio cabe de sobra en una línea y ahí sigue igual; en móvil se le deja partir.
     
     Se parte por los separadores «·» gracias al espacio que llevan alrededor, así que cae en
     dos líneas limpias sin cortar ninguna palabra. */
  .home-contact__assurance {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: break-word;
    text-wrap: pretty;
  }
}

/* ── Precios en la home (24-ago-2026) ─────────────────────────────────────────
   Tarjetas con EL MISMO lenguaje que `.home-included__card`: radio 22, filete azul superior,
   degradado blanco→crema, sombra suave y elevación al pasar el ratón. Los valores se copian
   de esa tarjeta a propósito: las familias de tarjetas de la portada deben leerse igual.
   La cabecera, el ancho y el ritmo los da el sistema (`home-section` + `section-head`). */
.home-precios__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(258px, 1fr));
    gap: clamp(14px, 1.8vw, 20px);
    align-items: stretch;
    margin: 0 0 26px;
    padding-top: 14px; /* sitio para la etiqueta, que sobresale por arriba de la destacada */
}

.home-precios__card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: clamp(20px, 2.2vw, 26px) clamp(18px, 2.2vw, 26px);
    border: 1px solid rgba(34, 61, 96, 0.08);
    border-top: 3px solid rgba(30, 63, 128, 0.38);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 240, 232, 0.86));
    box-shadow: 0 14px 34px rgba(26, 45, 71, 0.07);
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.32s ease, border-color 0.32s ease;
}

.home-precios__card:hover {
    transform: translateY(-5px);
    border-top-color: rgba(30, 63, 128, 0.8);
    box-shadow: 0 24px 48px rgba(26, 45, 71, 0.13);
}

.home-precios__card.is-destacada {
    border-top-color: #1e3f80;
    box-shadow: 0 18px 42px rgba(30, 63, 128, 0.16);
}

.home-precios__card-name {
    margin: 0 0 12px;
    color: #14325b;
    font-weight: 700;
    font-size: clamp(1.04rem, 1.32vw, 1.18rem);
    line-height: 1.16;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.home-precios__card-price {
    margin: 0 0 10px;
    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    color: #68778e;
    font-size: 0.9rem;
}

.home-precios__card-price strong {
    font-size: clamp(2.6rem, 4.6vw, 3.4rem);
    line-height: 0.95;
    color: #10233f;
    letter-spacing: -0.035em;
}

.home-precios__card-note {
    margin: 0 0 20px;
    color: #536b86;
    font-size: 0.9rem;
    line-height: 1.52;
}

.home-precios__card-note strong {
    color: #1e3f80;
}

/* ── La ventaja de la tarjeta destacada (29-ago-2026) ─────────────────────────
   «No pagas nada por adelantado» y «Por separado: desde 1.480 €» iban en la misma letra
   pequeña gris que el «Antes de empezar» de las otras dos, así que no los leía nadie: son
   justo lo que decide la contratación. Van ANTES de la nota, en azul de marca, en negrita y
   un punto más grandes — los tres a la vez, porque uno solo no gana a tres líneas de gris.
   La frase la fija la tabla de tarifas (`home_destacado`), no esta hoja.

   ⚠️ Va en PÍLDOLA, no solo en negrita: con la tipografía de marca el peso 700 casi no se
   distingue del texto normal (se vio en la captura de producción, no en la maqueta local, donde
   la fuente del sistema sí engorda). El fondo es lo único que separa esta línea de la gris de
   debajo. Misma píldora que en /servicios-precios/, para que se lean como lo mismo. */
.home-precios__card-fuerte {
    display: inline-flex;
    align-items: center;
    margin: 0 0 8px;
    padding: 7px 15px;
    border-radius: 999px;
    background: #eaf1fd;
    color: #1e3f80;
    font-weight: 700;
    font-size: clamp(0.94rem, 1.1vw, 1.02rem);
    line-height: 1.3;
    text-wrap: balance;
}

/* Etiqueta de la destacada: el borde azul decía que era especial, pero no POR QUÉ.
   Va ABSOLUTA sobre el filete superior, con sitio reservado arriba en el grid. Si fuera una
   línea más dentro de la tarjeta empujaría el precio hacia abajo y las tres columnas dejarían
   de alinearse — justo lo que hay que evitar. Modificador de la tarjeta que ya existe, no una
   tarjeta nueva, y mismo lenguaje que la pastilla de /servicios-precios/. */
.home-precios__badge {
    position: absolute;
    top: -13px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    padding: 5px 15px;
    border-radius: 999px;
    background: #1e3f80;
    color: #fff;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
    white-space: nowrap;
    box-shadow: 0 4px 12px rgba(30, 63, 128, 0.22);
}

.home-precios__card-cta {
    margin-top: auto;
    font-weight: 700;
    color: #1e3f80;
    text-decoration: underline;
}

.home-precios__cta-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0;
}

.home-precios__cta-wrap > .sim-btn {
    flex: 0 0 auto;
    width: auto;
}

/* Conmutador Madrid / fuera de Madrid */
.home-precios__switch {
    display: inline-flex;
    gap: 4px;
    padding: 5px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(34, 61, 96, 0.12);
}

.home-precios__chip {
    appearance: none;
    border: 0;
    background: transparent;
    color: #4a5a72;
    font: inherit;
    font-weight: 600;
    padding: 10px 22px;
    border-radius: 999px;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.home-precios__chip:hover {
    color: #1e3f80;
}

.home-precios__chip.is-active {
    background: var(--tn-brand, #1e3f80);
    color: #fff;
}

/* 30-ago: el conmutador activo ES un botón azul, así que lleva el mismo brillo
   que el resto. Se dejó fuera al principio por considerarlo una pestaña; el
   fundador pidió que no queden excepciones que él no haya decidido. */
.home-precios__chip.is-active {
    position: relative;
    overflow: hidden;
}

.home-precios__chip.is-active::after {
    content: "";
    position: absolute;
    top: -110%;
    left: -55%;
    width: 48%;
    height: 290%;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.28) 52%, rgba(255, 255, 255, 0) 90%);
    transform: translateX(-140%) rotate(14deg);
    transition: transform 0.52s ease;
    pointer-events: none;
}

.home-precios__chip.is-active:hover::after,
.home-precios__chip.is-active:focus-visible::after {
    transform: translateX(260%) rotate(14deg);
}

.home-precios__chip:focus-visible {
    outline: 3px solid #1e3f80;
    outline-offset: 3px;
}

.home-precios__panel[hidden] {
    display: none;
}

.home-precios__aviso {
    margin: 0 auto 22px;
    max-width: 62ch;
    padding: 12px 16px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(34, 61, 96, 0.08);
    color: #35455f;
    line-height: 1.55;
    text-align: center;
}

@media (max-width: 640px) {
    .home-precios__switch {
        display: flex;
        width: 100%;
    }

    .home-precios__chip {
        flex: 1 1 50%;
        padding: 11px 8px;
        text-align: center;
    }
}

/* ── Barra de secciones pegada arriba (24-ago-2026) ───────────────────────────
   Enlaces normales a anclas: sin JavaScript y sin depender de la caché. La cabecera del
   sitio no es fija, así que esta barra puede quedarse en top:0 sin taparla. */
/* NO se usa `position: sticky`: el tema pone `overflow` en `html` y en `body`, lo que hace que
   el scroll ocurra dentro del body y el sticky se ancle ahí en vez de a la ventana — probado en
   producción, la barra no se quedaba. Se fija con una clase que añade el script al pasar el
   titular. Sin JavaScript la barra sigue estando y sigue llevando a cada apartado: simplemente
   no se queda pegada. Un extra de navegación puede depender del JS; el contenido nunca. */
.home-tabs {
    position: relative;
    z-index: 700;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: saturate(180%) blur(10px);
    border-bottom: 1px solid #e4eaf3;
}

.home-tabs.is-fija {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
}

/* Reserva el hueco que deja la barra al despegarse, para que el contenido no dé un salto. */
.home-tabs__hueco {
    display: none;
}

.home-tabs__hueco.is-activo {
    display: block;
}

.home-tabs__list {
    display: flex;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-x: auto;
    scrollbar-width: none;
}

.home-tabs__list::-webkit-scrollbar {
    display: none;
}

.home-tabs__link {
    display: block;
    padding: 15px 18px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 0.95rem;
    color: #35455f;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: color 0.15s ease, border-color 0.15s ease;
}

.home-tabs__link:hover,
.home-tabs__link:focus-visible {
    color: #1e3f80;
    border-bottom-color: #1e3f80;
}

/* Que el ancla no deje la sección debajo de la barra al saltar. */
#home-market,
#home-sellers,
#home-precios,
#home-contact {
    scroll-margin-top: 78px;
}

/* ── Conmutador Madrid / fuera de Madrid en la home ───────────────────────── */
.home-precios__switch {
    display: inline-flex;
    gap: 4px;
    margin-top: 20px;
    padding: 5px;
    border-radius: 999px;
    background: #eef2f8;
    border: 1px solid #dde4ee;
}

.home-precios__chip {
    appearance: none;
    border: 0;
    background: transparent;
    color: #4a5a72;
    font: inherit;
    font-weight: 600;
    padding: 10px 22px;
    border-radius: 999px;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.home-precios__chip:hover {
    color: #1e3f80;
}

.home-precios__chip.is-active {
    background: var(--tn-brand, #1e3f80);
    color: #fff;
}

.home-precios__chip:focus-visible {
    outline: 3px solid #1e3f80;
    outline-offset: 3px;
}

.home-precios__panel[hidden] {
    display: none;
}

.home-precios__aviso {
    margin: 0 auto 22px;
    max-width: 62ch;
    padding: 12px 16px;
    border-radius: 12px;
    background: #eef3fc;
    color: #35455f;
    line-height: 1.55;
}

@media (max-width: 640px) {
    .home-precios__switch {
        display: flex;
        width: 100%;
    }

    .home-precios__chip {
        flex: 1 1 50%;
        padding: 11px 8px;
        text-align: center;
    }

    .home-tabs__link {
        padding: 13px 14px;
        font-size: 0.9rem;
    }
}

/* ── Tres guías al final de la portada (24-ago-2026) ──────────────────────────
   MISMO lenguaje de tarjeta que el resto de la portada (ver `.home-included__card`): radio 22,
   filete azul superior, degradado blanco→crema, sombra suave y elevación al pasar el ratón.
   La cabecera y el ritmo los da el sistema. El porqué del sitio y del recorte por frase, en
   template-parts/home/section-guias.php. */
.home-guias__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(258px, 1fr));
    gap: clamp(14px, 1.8vw, 20px);
    align-items: stretch;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-guias__item {
    display: flex;
}

.home-guias__link {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: clamp(20px, 2.2vw, 26px) clamp(18px, 2.2vw, 26px);
    border: 1px solid rgba(34, 61, 96, 0.08);
    border-top: 3px solid rgba(30, 63, 128, 0.38);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 240, 232, 0.86));
    box-shadow: 0 14px 34px rgba(26, 45, 71, 0.07);
    text-decoration: none;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.32s ease, border-color 0.32s ease;
}

.home-guias__link:hover,
.home-guias__link:focus-visible {
    transform: translateY(-5px);
    border-top-color: rgba(30, 63, 128, 0.8);
    box-shadow: 0 24px 48px rgba(26, 45, 71, 0.13);
}

/* Foto del artículo. ⚠️ El marco es 19/10 porque las portadas son 2400×1260 (proporción 1,9)
   y llevan el titular pegado al borde: con 16/10 se recortaban los lados y se perdía la primera
   letra («n bar sin traspaso…», «945 €»). El fondo de reserva evita el salto mientras carga. */
.home-guias__media {
    display: block;
    aspect-ratio: 19 / 10;
    margin-bottom: 14px;
    border-radius: 14px;
    overflow: hidden;
    background: #eef3fb;
}

.home-guias__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-guias__link:hover .home-guias__media img,
.home-guias__link:focus-visible .home-guias__media img {
    transform: scale(1.035);
}

.home-guias__icono {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-bottom: 14px;
    border-radius: 13px;
    background: rgba(30, 63, 128, 0.09);
    color: #1e3f80;
    transition: background 0.32s ease, color 0.32s ease;
}

.home-guias__link:hover .home-guias__icono {
    background: rgba(30, 63, 128, 0.16);
}

.home-guias__meta {
    display: block;
    margin-bottom: 9px;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: var(--tn-brand, #1e3f80);
}

.home-guias__item-title {
    display: block;
    margin: 0 0 9px;
    color: #14325b;
    font-weight: 700;
    font-size: clamp(1.04rem, 1.32vw, 1.18rem);
    line-height: 1.16;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.home-guias__item-desc {
    display: block;
    margin: 0;
    color: #536b86;
    font-size: 0.9rem;
    line-height: 1.52;
}

.home-guias__leer {
    display: block;
    margin-top: auto;
    padding-top: 16px;
    font-size: 0.9rem;
    font-weight: 700;
    color: #1e3f80;
}

.home-guias__pie {
    margin: 26px 0 0;
    text-align: center;
}

.home-guias__todas {
    display: inline-block;
    padding: 12px 22px;
    border: 1px solid rgba(34, 61, 96, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.75);
    color: #1e3f80;
    font-weight: 600;
    text-decoration: none;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.home-guias__todas:hover,
.home-guias__todas:focus-visible {
    border-color: rgba(30, 63, 128, 0.55);
    background: #fff;
    color: #16305f;
}

/* Lo único propio que necesitan las dos secciones nuevas: el resto (padding de sección,
   cabecera centrada, eyebrow con su rayita, tipografía del h2) lo dan `.home-section`,
   `.section-head` y `.eyebrow` del sistema, como en todas las demás secciones de la portada. */
/* Sin fondo propio: las demás secciones usan el de la portada y un gris suelto aquí se
   veía como un parche, más aún entre dos secciones con degradado. */

.home-guias {
    border-top: 1px solid #e9eef6;
}

.section-head--precios .home-precios__switch {
    margin-top: 18px;
}

/* ---------- Caja de TRIA (24-oct-2026; reforzada a las 12:21 a petición de Javidan) ----------
   «Quiero marcar más la caja de TRIA»: tinte azul de marca, logo grande, título, tres puntos y
   botón azul. El FONDO DE LA SECCIÓN es el mismo velo que usan sus vecinas («Por qué fiarse» y
   «Proceso para vendedores»): sin él, .home-tria era transparente y dejaba ver el degradado
   blanco de #trasnego-home (main.css) a todo lo ancho, como una banda blanca. */
.trasnego-home .home-tria {
    padding: clamp(22px, 3.4vw, 40px) 0;
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

.home-tria__franja {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px 28px;
    max-width: 1040px;
    margin: 0 auto;
    padding: clamp(22px, 2.6vw, 30px) clamp(22px, 3vw, 36px);
    border: 1px solid rgba(30, 63, 128, 0.2);
    border-radius: 22px;
    background:
        radial-gradient(circle at 0% 0%, rgba(191, 239, 255, 0.45) 0%, rgba(191, 239, 255, 0) 42%),
        linear-gradient(135deg, #ffffff 0%, #eef4fd 100%);
    box-shadow:
        0 22px 44px -28px rgba(19, 42, 85, 0.42),
        0 6px 16px -10px rgba(19, 42, 85, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
    overflow: hidden;
    text-align: left;
}

/* Filo azul de marca a la izquierda: lo que hace que la caja «se marque» sin gritar. */
.home-tria__franja::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: linear-gradient(180deg, #1e3f80 0%, #3f6fc4 100%);
}

.home-tria .tn-tria-logo {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 16px;
    box-shadow: 0 12px 24px -12px rgba(19, 42, 85, 0.55);
}

.home-tria__cuerpo {
    min-width: 0;
}

.home-tria .home-tria__titulo {
    margin: 0 0 6px;
    font-size: clamp(1.28rem, 1.05rem + 0.8vw, 1.62rem);
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: -0.01em;
    color: #10233f;
}

.home-tria .home-tria__texto {
    margin: 0;
    max-width: 60ch;
    font-size: 1rem;
    line-height: 1.55;
    color: #425b7d;
}

.home-tria .home-tria__puntos {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.home-tria .home-tria__puntos li {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 6px 12px;
    border: 1px solid rgba(30, 63, 128, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
    font-weight: 600;
    line-height: 1.2;
    color: #1e3f80;
}

.home-tria .home-tria__puntos li::before {
    content: "";
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #1e3f80;
}

.home-tria__enlace {
    display: inline-flex;
    margin: 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: var(--tn-boton-alto, 52px);
    padding: 0 26px;
    border: var(--tn-boton-borde, 1px solid rgba(20, 47, 91, 0.24));
    border-radius: var(--tn-boton-radio, 999px);
    background: #1e3f80;
    color: #fff;
    font-weight: var(--tn-boton-peso, 720);
    font-size: 0.98rem;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: var(--tn-boton-sombra, 0 12px 24px rgba(19, 42, 85, 0.18));
    transition: background-color var(--tn-boton-duracion, 0.2s) ease, box-shadow var(--tn-boton-duracion, 0.2s) ease;
}

.home-tria__enlace span {
    transition: transform var(--tn-boton-duracion, 0.2s) ease;
}

.home-tria__enlace:hover,
.home-tria__enlace:focus-visible {
    background: var(--tn-boton-encendido, #24549b);
    color: #fff;
    text-decoration: none;
    box-shadow: var(--tn-boton-sombra-encima, 0 14px 28px rgba(16, 38, 76, 0.2));
}

.home-tria__enlace:hover span,
.home-tria__enlace:focus-visible span {
    transform: translateX(3px);
}

.home-tria__enlace:focus-visible {
    outline: 3px solid rgba(30, 63, 128, 0.34);
    outline-offset: 3px;
}

@media (max-width: 860px) {
    .home-tria__franja {
        grid-template-columns: auto minmax(0, 1fr);
    }
    .home-tria__enlace {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .home-tria__franja {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        padding: 22px 20px 22px 24px;
        border-radius: 20px;
    }
    .home-tria .tn-tria-logo {
        width: 48px;
        height: 48px;
        border-radius: 13px;
    }
    .home-tria .home-tria__texto {
        font-size: 0.96rem;
    }
    .home-tria__enlace {
        grid-column: 1;
        justify-self: stretch;
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-tria__enlace,
    .home-tria__enlace span {
        transition: none;
    }
}

/* Lo de encima del pie (24-oct-2026 12:21, «la parte de arriba del footer sale blanco»):
   «Guías» era la única sección final sin velo, así que enseñaba el final del degradado de
   #trasnego-home (#edf2fb, más oscuro) y el hueco del margin-top del pie (#tn-colophon, que deja
   ver el fondo de la página #f3f7fb) se leía como una franja blanca. Con el mismo velo que las
   demás, sección y hueco son del mismo color y el paso al pie queda limpio. */
.trasnego-home .home-guias {
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.96) 0%, rgba(243, 247, 252, 0.96) 100%);
}

/* ---------- Aviso «Ya estamos en Valencia» (24-oct-2026, Javidan 15:14; mejora 15:43) ----------
   Tarjeta justo debajo del hero y del buscador, del mismo ancho que el buscador. Mismo velo
   #f3f7fb que las secciones vecinas (sin bandas blancas a los lados). A la izquierda el mensaje
   y el botón azul de marca; a la derecha, en un panel azul muy claro, dónde trabajamos. */
.trasnego-home .home-valencia {
    padding: clamp(18px, 2.6vw, 30px) 0 clamp(6px, 1.2vw, 12px);
    background: linear-gradient(180deg, rgba(243, 247, 252, 0.98) 0%, rgba(243, 247, 252, 0.98) 100%);
}

.home-valencia__tarjeta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    align-items: stretch;
    gap: clamp(18px, 2.6vw, 34px);
    max-width: none;   /* mismo ancho que el buscador de encima: quedan alineados */
    margin: 0;
    padding: clamp(22px, 2.8vw, 34px) clamp(22px, 3vw, 36px) clamp(22px, 2.8vw, 34px) clamp(26px, 3.4vw, 42px);
    border: 1px solid rgba(30, 63, 128, 0.2);
    border-radius: 22px;
    background:
        radial-gradient(circle at 0% 0%, rgba(191, 239, 255, 0.45) 0%, rgba(191, 239, 255, 0) 42%),
        #fff;
    box-shadow: 0 22px 46px -30px rgba(19, 42, 85, 0.5);
    overflow: hidden;
}

.home-valencia__tarjeta::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, #1e3f80 0%, #3f6fc4 100%);
}

.home-valencia__cuerpo {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.home-valencia .home-valencia__etiqueta {
    display: inline-block;
    margin: 0 0 10px;
    padding: 5px 12px;
    border-radius: 999px;
    background: #eaf1fb;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #1e3f80;
}

.home-valencia .home-valencia__titulo {
    margin: 0 0 8px;
    font-size: clamp(1.5rem, 1.15rem + 1.2vw, 2.05rem);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: #10233f;
}

.home-valencia .home-valencia__pregunta {
    margin: 0 0 6px;
    max-width: 52ch;
    font-size: 1.06rem;
    line-height: 1.45;
    font-weight: 650;
    color: #1e3f80;
}

.home-valencia .home-valencia__texto {
    margin: 0 0 18px;
    max-width: 56ch;
    font-size: 1rem;
    line-height: 1.55;
    color: #425b7d;
}

.home-valencia__enlace {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: var(--tn-boton-alto, 52px);
    padding: 0 26px;
    border: var(--tn-boton-borde, 1px solid rgba(20, 47, 91, 0.24));
    border-radius: var(--tn-boton-radio, 999px);
    background: #1e3f80;
    color: #fff;
    font-weight: var(--tn-boton-peso, 720);
    white-space: nowrap;
    text-decoration: none;
    transition: background var(--tn-boton-duracion, 0.2s) ease, box-shadow var(--tn-boton-duracion, 0.2s) ease;
}

.home-valencia__enlace span {
    transition: transform var(--tn-boton-duracion, 0.2s) ease;
}

.home-valencia__enlace:hover,
.home-valencia__enlace:focus-visible {
    background: var(--tn-boton-encendido, #24549b);
    color: #fff;
    text-decoration: none;
    box-shadow: var(--tn-boton-sombra-encima, 0 14px 28px rgba(16, 38, 76, 0.2));
}

.home-valencia__enlace:hover span,
.home-valencia__enlace:focus-visible span {
    transform: translateX(3px);
}

.home-valencia__enlace:focus-visible {
    outline: 3px solid rgba(30, 63, 128, 0.34);
    outline-offset: 3px;
}

.home-valencia__zona {
    min-width: 0;
    padding: clamp(16px, 2vw, 24px);
    border-radius: 18px;
    background: #f3f7fb;
    border: 1px solid rgba(30, 63, 128, 0.12);
}

.home-valencia .home-valencia__zona-titulo {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 6px;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #3f6fc4;
}

.home-valencia__icono {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 11px;
    background: #fff;
    color: #1e3f80;
    box-shadow: 0 6px 14px -10px rgba(19, 42, 85, 0.5);
}

.home-valencia .home-valencia__ciudad {
    margin: 0 0 12px;
    font-size: 1.08rem;
    font-weight: 750;
    color: #10233f;
}

.home-valencia .home-valencia__municipios {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-valencia .home-valencia__municipios li {
    margin: 0;
    padding: 4px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(30, 63, 128, 0.14);
    font-size: 0.82rem;
    line-height: 1.3;
    color: #2b4468;
}

.home-valencia .home-valencia__municipios li::before {
    content: none;
}

@media (max-width: 860px) {
    .home-valencia__tarjeta {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .home-valencia__tarjeta {
        gap: 16px;
        padding: 22px 18px 18px 24px;
    }
    .home-valencia .home-valencia__pregunta {
        font-size: 1rem;
    }
    .home-valencia .home-valencia__texto {
        font-size: 0.96rem;
    }
    .home-valencia__enlace {
        align-self: stretch;
        width: 100%;
    }
    .home-valencia__zona {
        padding: 14px;
    }
    .home-valencia .home-valencia__municipios {
        gap: 5px;
    }
    .home-valencia .home-valencia__municipios li {
        padding: 3px 9px;
        font-size: 0.78rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-valencia__enlace,
    .home-valencia__enlace span {
        transition: none;
    }
}
