

/*
 * AffittiInTorino — foglio grafico moderno rifattorizzato.
 * Consolidamento strutturale del 21 luglio 2026.
 *
 * Ordine della cascata, breakpoint, valori dimensionali e geometrie attive
 * sono stati preservati. Rimossi soltanto duplicati esatti, dichiarazioni
 * identiche ripetute, blocchi equivalenti e intestazioni storiche dei lotti.
 */

:root {
    --ait-navy: #061a3a;
    --ait-navy-2: #0a2f63;
    --ait-red: #ed102d;
    --ait-ink: #0b1c3b;
    --ait-muted: #61708a;
    --ait-line: #e2e8f0;
    --ait-surface: #ffffff;
    --ait-bg: #f5f7fb;
    --ait-radius: 16px;
    --ait-shadow: 0 18px 45px rgba(6, 26, 58, 0.12);
}

* {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body.ait-modern-site {
    min-width: 0;
    margin: 0;
    color: var(--ait-ink);
    background: var(--ait-bg);
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: clamp(14px, 0.2vw + 13px, 17px);
    line-height: 1.5;
}

body.ait-modern-site img,
body.ait-modern-site video,
body.ait-modern-site iframe {
    max-width: 100%;
    height: auto;
}

.ait-shell {
    margin-inline: auto;
}

.ait-topbar {
    position: relative;
    z-index: 1002;
    color: #ffffff;
}

.ait-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.ait-topbar-claim {
    font-size: 0.83rem;
    white-space: nowrap;
}

.ait-topbar-actions {
    display: flex;
    align-items: center;
    font-size: 0.8rem;
}

.ait-topbar a,
.ait-link-button {
    color: inherit;
    text-decoration: none;
}

.ait-link-button {
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    cursor: pointer;
}

.ait-topbar-cta {
    padding: 8px 16px;
    border-radius: 6px;
    background: var(--ait-red);
    font-weight: 700;
    text-transform: uppercase;
}

.ait-site-header {
    position: relative;
    z-index: 1001;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 1px 0 rgba(6, 26, 58, 0.08);
}

.ait-site-header-inner {
    display: grid;
    align-items: center;
    gap: 30px;
}

.ait-brand {
    display: inline-flex;
    align-items: center;
    width: fit-content;
}

.ait-brand img {
    object-fit: contain;
}

.ait-main-nav {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ait-main-nav a,
.ait-language-links a {
    color: var(--ait-ink);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ait-main-nav a:hover,
.ait-language-links a:hover {
    color: var(--ait-red);
}

.ait-language-links {
    display: flex;
    gap: 10px;
}

.ait-hero {
    position: relative;
    overflow: hidden;
    color: #ffffff;
}

.ait-hero::after {
    position: absolute;
    inset: auto 0 0;
    height: 42%;
    background: linear-gradient(transparent, rgba(3, 21, 47, 0.42));
    content: "";
}

.ait-hero-inner {
    position: relative;
    z-index: 1;
    min-height: inherit;
}

.ait-eyebrow {
    margin: 0 0 14px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ait-hero h1 {
    margin: 0;
    letter-spacing: -0.045em;
}

.ait-hero h1 strong {
    color: var(--ait-red);
}

.ait-hero-text {
    color: #eef4ff;
}

.ait-trust-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.ait-trust-row span {
    position: relative;
}

.ait-trust-row span::before {
    position: absolute;
    left: 0;
    top: 0.2em;
    border: 2px solid #ffcf00;
    content: "";
}

/* Nasconde solo la testata storica, mantenendo operativo il form login/modal. */

#header > :not(#login),
#control #navigation {
    display: none !important;
}

#wrapper {
    padding: 0 0 40px !important;
    background: transparent !important;
}

#main-container,
#main {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#header {
    position: static !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#login.ait-home-login-compact {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: visible;
    clip-path: inset(50%);
}

#login .ait-login-modal {
    clip-path: none;
}

#control {
    position: relative;
    z-index: 20;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

#search.box-aside {
    float: none !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
}

#search h1 {
    margin: 0 0 20px !important;
    color: var(--ait-ink) !important;
}

#search-table {
    flex: 1;
    width: auto !important;
}

#search-table tbody,
#search-table tr,
#search-table td {
    display: contents;
}

#search-table .label {
    display: none;
}

#search-table .field {
    display: block;
}

#search-table select,
#search-table input {
    margin: 0 !important;
}

#search-table tr:nth-child(n/**/+8) {
    display: none;
}

#search fieldset {
    padding: 0 !important;
    border: 0;
}

#search_bt {
    margin: 0 !important;
    box-shadow: 0 10px 22px rgba(237, 16, 45, 0.24);
}

#search fieldset::after {
    position: absolute;
    transform: translateY(50%);
    color: #ffffff;
    font-weight: 800;
    pointer-events: none;
    content: "CERCA IMMOBILI";
}

#middle {
    display: grid;
    width: 100% !important;
    margin: 28px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

#middle > .box-content,
#middle > .box-aside {
    float: none !important;
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
}

#content {
    width: 100% !important;
    min-width: 0;
}

#middle > .box-aside > * {
    border-radius: 14px !important;
}

#footer {
    width: 100% !important;
    min-height: 180px;
    margin: 30px 0 0 !important;
    padding: 34px !important;
    border-radius: var(--ait-radius);
    background: var(--ait-navy) !important;
}

@media (max-width: 1180px) {

.ait-site-header-inner {
    grid-template-columns: 220px 1fr auto;
}

.ait-main-nav {
    gap: 16px;
}

.ait-main-nav a {
    font-size: 0.8rem;
}

#search-table {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
}
}

@media (max-width: 900px) {

:root {
    --ait-shell: min(100% - 28px, 760px);
}

.ait-topbar-claim,
    .ait-topbar-actions > a:not(.ait-topbar-cta) {
    display: none;
}

.ait-topbar-inner {
    justify-content: flex-end;
}

.ait-site-header-inner {
    min-height: 76px;
}

.ait-main-nav {
    display: none;
}

.ait-brand img {
    width: 190px;
}

.ait-hero-copy {
    width: 100%;
}

.ait-trust-row {
    grid-template-columns: 1fr;
}

#search form {
    display: block;
}

#search-table {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

#search fieldset {
    position: relative;
    margin-top: 14px !important;
}

#search_bt {
    width: 100% !important;
}

#search fieldset::after {
    right: 50%;
    bottom: 25px;
    transform: translate(50%, 50%);
}

#middle {
    grid-template-columns: 1fr;
}
}

@media (max-width: 560px) {

:root {
    --ait-shell: calc(100% - 20px);
}

.ait-topbar-cta {
    padding-inline: 10px;
    font-size: 0.7rem;
}

.ait-hero {
    min-height: 390px;
}

.ait-hero h1 {
    font-size: clamp(2rem, 11vw, 3rem);
}

#wrapper {
    margin-top: -48px !important;
}

#search.box-aside {
    padding: 18px !important;
}

#search-table {
    grid-template-columns: 1fr;
}
}

.ait-hero-copy {
    padding: 0;
}

.ait-hero-properties > script,
.ait-hero-properties > style {
    display: none !important;
}

#search.box-aside {
    position: relative;
    z-index: 30;
}

#middle {
    grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 1250px) {

.ait-hero-inner {
    grid-template-columns: minmax(0, 0.8fr) minmax(500px, 1.2fr);
    gap: 30px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 180px;
}
}

@media (max-width: 1040px) {

.ait-hero-inner {
    grid-template-columns: 1fr;
    padding-bottom: 110px;
}

.ait-hero-copy {
    max-width: 680px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 220px;
}
}

@media (max-width: 760px) {

.ait-hero-properties {
    grid-template-columns: 1fr;
}
}

@media (max-width: 560px) {

.ait-hero-inner {
    padding-top: 34px;
}

#wrapper {
    margin-top: -54px !important;
}
}

body.ait-modern-site {
    overflow-x: hidden;
}

.ait-topbar-inner,
.ait-site-header-inner,
.ait-hero-inner {
    width: min(1500px, calc(100% - clamp(28px, 5vw, 110px)));
}

.ait-topbar {
    background: linear-gradient(90deg, #02132d, #061d42);
}

.ait-topbar-actions {
    gap: clamp(14px, 1.45vw, 28px);
}

.ait-topbar-actions a,
.ait-topbar-actions button {
    font-size: clamp(0.74rem, 0.15vw + 0.72rem, 0.86rem);
}

.ait-main-nav {
    gap: clamp(20px, 2.15vw, 44px);
}

.ait-main-nav a {
    font-size: clamp(0.82rem, 0.12vw + 0.8rem, 0.94rem);
}

.ait-eyebrow {
    color: #ffffff;
}

.ait-trust-row {
    max-width: 610px;
}

.ait-trust-row span {
    min-height: 42px;
    display: flex;
    align-items: flex-start;
    padding-left: 34px;
    font-size: clamp(0.72rem, 0.12vw + 0.7rem, 0.82rem);
}

.ait-trust-row span::before {
    width: 20px;
    height: 20px;
    border-color: #ffcf00;
    border-radius: 7px;
}

.ait-hero-properties {
    align-items: start;
}

#search h1 {
    margin-bottom: 16px !important;
    font-size: clamp(1.08rem, 0.65vw + 0.95rem, 1.4rem) !important;
}

.ait-home-categories span {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    color: var(--ait-red);
    border-radius: 50%;
    background: #fff3f5;
    font-size: 1.2rem;
}

.ait-home-categories strong {
    min-width: 0;
    font-size: clamp(0.69rem, 0.1vw + 0.67rem, 0.8rem);
    line-height: 1.15;
}

.ait-home-categories a:hover {
    color: var(--ait-red);
    transform: translateY(-2px);
}

.ait-value-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    margin: 24px 0 0;
    padding: 8px;
    border-radius: 18px;
    background: #ffffff;
}

.ait-value-strip > div {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 14px;
    padding: 16px clamp(14px, 2vw, 30px);
    border-right: 1px solid #e8edf3;
}

.ait-value-strip > div:last-child {
    border-right: 0;
}

.ait-value-strip > div > span {
    display: grid;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    place-items: center;
    color: var(--ait-navy);
    border: 2px solid var(--ait-navy);
    border-radius: 14px;
    font-size: 1.25rem;
}

.ait-value-strip p {
    display: grid;
    gap: 2px;
    min-width: 0;
    margin: 0;
}

.ait-value-strip strong {
    font-size: clamp(0.82rem, 0.16vw + 0.78rem, 0.94rem);
}

.ait-value-strip small {
    color: var(--ait-muted);
    font-size: clamp(0.72rem, 0.12vw + 0.69rem, 0.82rem);
}

@media (max-width: 1320px) {

.ait-hero-inner {
    grid-template-columns: minmax(330px, 0.82fr) minmax(560px, 1.18fr);
    gap: 34px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 200px;
}

.ait-home-categories {
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (max-width: 1060px) {

.ait-hero-inner {
    grid-template-columns: 1fr;
    padding-bottom: 128px;
}

.ait-hero-copy {
    max-width: 720px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 230px;
}

.ait-value-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ait-value-strip > div:nth-child(2) {
    border-right: 0;
}
}

@media (max-width: 760px) {

.ait-topbar-actions {
    gap: 10px;
}

.ait-site-header-inner {
    grid-template-columns: 1fr auto;
}

.ait-hero-inner {
    padding-bottom: 92px;
}

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

.ait-value-strip {
    grid-template-columns: 1fr;
}

.ait-value-strip > div,
    .ait-value-strip > div:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid #e8edf3;
}

.ait-value-strip > div:last-child {
    border-bottom: 0;
}
}

@media (max-width: 560px) {

.ait-hero h1 {
    font-size: clamp(2.35rem, 12vw, 3.4rem);
}

.ait-home-categories {
    grid-template-columns: 1fr;
}
}

body#single.ait-modern-site {
    padding: 0 !important;
    overflow-x: hidden;
    background: #f5f7fb !important;
}

body#single.ait-modern-site::before,
body#single.ait-modern-site::after {
    display: none !important;
}

.ait-shell {
    width: min(1460px, calc(100% - clamp(24px, 5vw, 80px)));
}

.ait-hero {
    background: linear-gradient(90deg, rgba(3, 21, 47, 0.96) 0%, rgba(7, 47, 99, 0.84) 45%, rgba(4, 27, 60, 0.50) 100%),
        url("/images/control_image_1.jpg") center 48% / cover no-repeat;
}

.ait-hero-inner {
    display: grid;
    align-items: center;
}

.ait-hero-copy {
    width: auto;
    padding-block: clamp(50px, 6vw, 86px) clamp(86px, 9vw, 128px);
}

.ait-hero-properties {
    position: relative;
    z-index: 3;
    display: grid;
    width: 100%;
    min-width: 0;
}

/* Il banner storico diventa il grande componente del mockup. */

/* Hot banner in scheda laterale sotto la ricerca, come nel mockup. */

/* Ricerca realmente flottante e centrata. */

#wrapper {
    width: min(1460px, calc(100% - clamp(24px, 5vw, 80px))) !important;
    margin: -76px auto 0 !important;
}

.ait-search-panel {
    width: calc(100% - min(325px, 23%));
    padding: 0 22px 8px;
}

#search.box-aside {
    border: 0 !important;
    box-shadow: none !important;
}

#search form {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: end;
}

#search-table {
    display: grid;
}

#search-table tr:nth-child(n/**/+7) {
    display: none;
}

#search-table td.field {
    position: relative;
    display: block;
}

#search-table td.field::before {
    position: absolute;
    z-index: 2;
    top: 8px;
    left: 14px;
    color: var(--ait-muted);
    content: attr(data-label);
    font-size: 0.68rem;
}

#search-table select,
#search-table input {
    width: 100% !important;
    min-width: 0;
    height: 52px !important;
    padding: 18px 12px 4px !important;
    border: 1px solid #dfe6ef !important;
    border-radius: 8px !important;
    color: var(--ait-ink) !important;
    background: #fff !important;
    font: inherit;
}

#search fieldset {
    width: auto !important;
    margin: 0 !important;
}

#search_bt {
    min-width: 190px !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: #fff !important;
    background: var(--ait-red) !important;
    font-weight: 800;
    cursor: pointer;
}

#search_bt::after {
    content: "CERCA IMMOBILI";
}

/* input submit non supporta ::after: testo visibile tramite background disattivato e value CSS fallback */

#search_bt {
    font-size: 0.88rem !important;
    text-indent: 0 !important;
}

.ait-home-categories {
    width: calc(100% - min(325px, 23%));
    margin-top: 10px;
}

#middle {
    padding-right: min(325px, 23%) !important;
}

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

@media (max-width: 1180px) {

.ait-hero-inner {
    grid-template-columns: minmax(0, 0.85fr) minmax(500px, 1.15fr);
    gap: 28px;
}

.ait-search-panel,
    .ait-home-categories {
    width: 100%;
}

#middle {
    padding-right: 0 !important;
}
}

@media (max-width: 900px) {

.ait-site-header-inner {
    grid-template-columns: 1fr auto;
}

.ait-hero-inner {
    padding-bottom: 100px;
}

.ait-hero-copy {
    padding-bottom: 0;
}

#search-table {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

#content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 640px) {

.ait-topbar-claim,
    .ait-topbar-actions a:not(.ait-topbar-cta) {
    display: none;
}

.ait-topbar-inner {
    justify-content: flex-end;
}

#search form {
    grid-template-columns: 1fr;
}

#search-table {
    grid-template-columns: 1fr 1fr;
}

#search fieldset,
    #search_bt {
    width: 100% !important;
}

#content {
    grid-template-columns: 1fr;
}
}

:root {
    --ait-shell: min(1410px, calc(100% - clamp(24px, 5vw, 84px)));
    --ait-radius-lg: 18px;
    --ait-shadow-soft: 0 14px 34px rgba(6, 26, 58, 0.12);
}

.ait-topbar-inner {
    min-height: 40px;
}

.ait-site-header-inner {
    min-height: 86px;
    grid-template-columns: minmax(220px, 280px) 1fr auto;
}

.ait-brand img {
    width: clamp(190px, 15vw, 240px);
    max-width: 100%;
    height: auto;
    max-height: 70px;
}

.ait-hero {
    min-height: clamp(390px, 31vw, 470px);
    background-position: center 54%;
}

.ait-hero-inner {
    grid-template-columns: minmax(360px, 0.9fr) minmax(560px, 1.12fr);
    gap: clamp(28px, 3.2vw, 58px);
    padding-block: clamp(30px, 3.6vw, 48px) clamp(70px, 6vw, 88px);
}

.ait-hero-copy {
    align-self: center;
    max-width: 610px;
}

.ait-eyebrow {
    margin-bottom: 10px;
    font-size: clamp(0.75rem, 0.25vw + 0.7rem, 0.88rem);
}

.ait-hero h1 {
    max-width: 620px;
    font-size: clamp(2.45rem, 3.35vw, 4.05rem);
    line-height: 1.04;
}

.ait-hero-text {
    max-width: 490px;
    margin: 17px 0 22px;
    font-size: clamp(0.98rem, 0.38vw + 0.9rem, 1.15rem);
}

.ait-trust-row {
    gap: clamp(12px, 1.4vw, 20px);
    font-size: clamp(0.68rem, 0.18vw + 0.65rem, 0.78rem);
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 210px;
    gap: 12px;
    align-self: center;
}

#wrapper {
    margin-top: -64px !important;
}

.ait-search-panel {
    overflow: hidden;
    border: 1px solid rgba(6, 26, 58, 0.08);
    border-radius: var(--ait-radius-lg);
    background: rgba(255, 255, 255, 0.99);
    box-shadow: var(--ait-shadow-soft);
}

.ait-search-tabs {
    min-height: 48px;
    align-items: end;
}

.ait-search-tabs a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
}

#search.box-aside {
    border: 0;
    box-shadow: none;
}

#search h1 {
    display: none;
}

#search form {
    gap: 10px;
}

#search-table {
    grid-template-columns: repeat(6, minmax(105px, 1fr));
    gap: 8px;
}

#search-table select,
#search-table input {
    height: 46px;
    padding-inline: 11px !important;
    border-radius: 8px;
    font-size: 0.78rem;
}

#search_bt {
    width: 178px !important;
    height: 46px !important;
}

#search fieldset::after {
    right: 49px;
    bottom: 23px;
    font-size: 0.75rem;
}

.ait-home-categories {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin: 10px auto 0;
    padding: 0 clamp(10px, 2vw, 28px);
}

.ait-home-categories a {
    display: flex;
    min-width: 0;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 10px;
    color: var(--ait-ink);
    border: 1px solid rgba(6, 26, 58, 0.08);
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(6, 26, 58, 0.06);
    font-size: 0.72rem;
    text-align: left;
    text-decoration: none;
}

.ait-home-categories a span {
    display: grid;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    place-items: center;
    color: var(--ait-red);
    border-radius: 50%;
    background: #f7f9fc;
    font-size: 1.1rem;
}

#middle {
    margin-top: 16px !important;
    gap: 20px;
}

#middle > .box-content {
    overflow: hidden;
    border: 1px solid rgba(6, 26, 58, 0.08);
    border-radius: var(--ait-radius-lg);
    background: #ffffff;
    box-shadow: 0 9px 25px rgba(6, 26, 58, 0.07);
}

.ait-value-strip {
    margin-top: 18px;
    border: 1px solid rgba(6, 26, 58, 0.08);
    box-shadow: 0 9px 25px rgba(6, 26, 58, 0.06);
}

/* I banner pubblicitari fissi restano operativi, ma non devono deformare la pagina. */

body.ait-modern-site img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 1180px) {

.ait-hero-inner {
    grid-template-columns: minmax(300px, 0.82fr) minmax(500px, 1.18fr);
    gap: 26px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) 180px;
}

.ait-home-categories {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (max-width: 900px) {

.ait-hero {
    min-height: auto;
}

.ait-hero-inner {
    grid-template-columns: 1fr;
    padding-block: 42px 82px;
}

.ait-hero-copy {
    max-width: 680px;
}

.ait-hero-properties {
    grid-template-columns: minmax(0, 1fr) minmax(170px, 0.38fr);
}

#wrapper {
    margin-top: -52px !important;
}
}

@media (max-width: 680px) {

.ait-hero-properties {
    grid-template-columns: 1fr;
}

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

.ait-search-panel {
    position: relative;
    z-index: 40;
    margin-inline: auto;
}

.ait-search-tabs {
    display: flex;
    gap: clamp(20px, 3vw, 48px);
    padding: 0 clamp(22px, 3vw, 40px);
    border-bottom: 1px solid var(--ait-line);
    background: #ffffff;
    border-radius: var(--ait-radius) var(--ait-radius) 0 0;
}

.ait-search-tabs a {
    position: relative;
    padding: 18px 0 16px;
    color: var(--ait-ink);
    font-size: clamp(0.82rem, 0.2vw + 0.78rem, 0.95rem);
    font-weight: 700;
    text-decoration: none;
}

.ait-search-tabs a.is-active::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: var(--ait-red);
    content: "";
}

#search.box-aside {
    border-top: 0 !important;
    border-radius: 0 0 var(--ait-radius) var(--ait-radius) !important;
}

.ait-search-heading {
    display: none;
}

.ait-property-search {
    width: 100%;
}

.ait-search-field {
    display: flex;
    min-width: 0;
    min-height: 52px;
    align-items: center;
    gap: 10px;
    padding: 9px 11px;
    border: 1px solid #dfe6f0;
    border-radius: 9px;
    background: #ffffff;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ait-search-field:focus-within {
    border-color: rgba(237, 16, 45, 0.55);
    box-shadow: 0 0 0 3px rgba(237, 16, 45, 0.08);
}

.ait-search-field-icon {
    flex: 0 0 auto;
    color: var(--ait-red);
    font-size: 1.2rem;
    font-weight: 800;
}

.ait-search-field-copy {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    gap: 1px;
}

.ait-search-field-copy strong {
    color: var(--ait-muted);
    font-size: 0.69rem;
    font-weight: 600;
    line-height: 1.15;
}

.ait-search-field select,
.ait-search-field input {
    width: 100%;
    min-width: 0;
    height: 27px;
    padding: 0;
    border: 0;
    outline: 0;
    color: var(--ait-ink);
    background: transparent;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 650;
}

.ait-search-range {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 4px;
}

.ait-search-submit {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 18px;
    border: 0;
    border-radius: 9px;
    color: #ffffff;
    background: var(--ait-red);
    box-shadow: 0 10px 22px rgba(237, 16, 45, 0.22);
    font-size: 0.82rem;
    font-weight: 800;
    text-transform: uppercase;
    cursor: pointer;
}

.ait-search-submit:hover {
    filter: brightness(0.94);
    transform: translateY(-1px);
}

.ait-home-showcase {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 300px);
    gap: clamp(18px, 2vw, 30px);
    margin-top: 18px;
    align-items: start;
}

.ait-home-showcase-main {
    min-width: 0;
    padding: clamp(18px, 2vw, 28px);
    border: 1px solid rgba(6, 26, 58, 0.08);
    border-radius: var(--ait-radius);
    background: #ffffff;
    box-shadow: 0 10px 30px rgba(6, 26, 58, 0.07);
}

.ait-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}

.ait-section-kicker {
    display: block;
    margin-bottom: 3px;
    color: var(--ait-red);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.ait-section-heading h2,
.ait-contact-card h2 {
    margin: 0;
    color: var(--ait-ink);
    font-size: clamp(1.25rem, 1vw + 1rem, 1.75rem);
    line-height: 1.15;
}

.ait-section-heading a {
    color: var(--ait-navy-2);
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

#middle.box-container,
#middle .box-content,
#middle #content {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.ait-contact-card {
    position: sticky;
    top: 18px;
    padding: clamp(22px, 2.5vw, 30px);
    border: 1px solid rgba(6, 26, 58, 0.1);
    border-radius: var(--ait-radius);
    background: linear-gradient(145deg, #ffffff 0%, #f7f9fc 100%);
    box-shadow: 0 14px 34px rgba(6, 26, 58, 0.08);
}

.ait-contact-card p {
    margin: 16px 0 22px;
    color: var(--ait-muted);
    font-size: 0.88rem;
}

.ait-contact-primary,
.ait-contact-whatsapp {
    display: flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 800;
    text-decoration: none;
}

.ait-contact-primary {
    gap: 12px;
    color: #ffffff;
    background: var(--ait-navy);
}

.ait-contact-whatsapp {
    margin-top: 10px;
    color: #16883d;
    border: 1px solid #cfe9d8;
    background: #f4fff7;
}

@media (max-width: 1280px) {

#search .ait-search-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ait-search-submit {
    grid-column: span 1;
}
}

@media (max-width: 900px) {

#search .ait-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ait-home-showcase {
    grid-template-columns: 1fr;
}

.ait-contact-card {
    position: static;
}
}

@media (max-width: 620px) {

.ait-search-tabs {
    gap: 18px;
    overflow-x: auto;
}

#search .ait-search-grid {
    grid-template-columns: 1fr;
}

.ait-search-submit {
    width: 100%;
}

.ait-section-heading {
    align-items: flex-start;
    flex-direction: column;
}
}

#search .ait-property-search,
#search .ait-property-search * {
    box-sizing: border-box;
}

#search .ait-search-grid {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 165px), 1fr)) !important;
    gap: clamp(10px, 1vw, 14px) !important;
    align-items: stretch !important;
    margin: 0 !important;
}

#search .ait-search-field {
    position: relative;
    display: grid !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: clamp(74px, 5.4vw, 82px) !important;
    align-items: center !important;
    padding: 12px 13px !important;
    overflow: visible !important;
    border: 1px solid #dfe6f0 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
}

#search .ait-search-field-icon {
    align-items: center;
    justify-content: center;
    color: var(--ait-red);
    font-size: 1.15rem;
    line-height: 1;
}

#search .ait-search-field-copy {
    display: grid !important;
    min-width: 0 !important;
    gap: 5px !important;
    overflow: visible !important;
}

#search .ait-search-field-copy strong {
    display: block !important;
    min-width: 0 !important;
    overflow: visible !important;
    color: #58677d !important;
    font-weight: 700 !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

#search .ait-search-field select,
#search .ait-search-field input {
    position: static !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 24px 0 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    color: var(--ait-ink) !important;
    background-color: transparent !important;
    background-image: none !important;
    font-family: inherit !important;
    font-weight: 700 !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
}

#search .ait-search-field select {
    cursor: pointer;
}

#search .ait-search-range {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 6px !important;
}

#search .ait-search-range input,
#search .ait-search-range select {
    min-width: 0 !important;
    padding-right: 4px !important;
}

#search #search_bt.ait-search-submit {
    position: static !important;
    right: auto !important;
    bottom: auto !important;
    display: inline-flex !important;
    float: none !important;
    width: 100% !important;
    min-width: 165px !important;
    min-height: clamp(74px, 5.4vw, 82px) !important;
    height: auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 12px 18px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    background: var(--ait-red) !important;
    box-shadow: 0 12px 25px rgba(237, 16, 45, 0.22) !important;
    font-family: inherit !important;
    font-size: clamp(0.78rem, 0.2vw + 0.74rem, 0.92rem) !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    text-indent: 0 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

#search #search_bt::before,
#search #search_bt::after {
    display: none !important;
    content: none !important;
}

@media (min-width: 1320px) {

#search .ait-search-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

#search #search_bt.ait-search-submit {
    min-width: 0 !important;
}
}

@media (min-width: 1540px) {

#search .ait-search-grid {
    grid-template-columns: repeat(7, minmax(135px, 1fr)) minmax(190px, 1.15fr) !important;
}
}

@media (max-width: 760px) {

#search .ait-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#search #search_bt.ait-search-submit {
    grid-column: 1 / -1;
}
}

@media (max-width: 480px) {

#search .ait-search-grid {
    grid-template-columns: 1fr !important;
}

#search .ait-search-field,
    #search #search_bt.ait-search-submit {
    min-height: 70px !important;
}
}

.ait-modern-site .ait-topbar,
.ait-modern-site .ait-site-header,
.ait-modern-site .ait-hero,
.ait-modern-site .ait-hero * {
    box-sizing: border-box;
}

.ait-modern-site .ait-shell {
    width: min(100% - clamp(28px, 5vw, 96px), 1450px);
    margin-inline: auto;
}

.ait-modern-site .ait-topbar {
    min-height: 42px;
    background: #031b3d;
}

.ait-modern-site .ait-topbar-inner {
    min-height: 42px;
    gap: 24px;
}

.ait-modern-site .ait-topbar-claim,
.ait-modern-site .ait-topbar-actions a,
.ait-modern-site .ait-topbar-actions button {
    font-size: clamp(0.72rem, 0.16vw + 0.69rem, 0.84rem);
}

.ait-modern-site .ait-site-header {
    background: #ffffff;
    box-shadow: 0 2px 16px rgba(3, 27, 61, 0.06);
}

.ait-modern-site .ait-site-header-inner {
    display: grid;
    align-items: center;
}

.ait-modern-site .ait-brand img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.ait-modern-site .ait-main-nav {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.ait-modern-site .ait-main-nav a,
.ait-modern-site .ait-language-links a {
    color: #061a3a;
    font-size: clamp(0.78rem, 0.14vw + 0.75rem, 0.9rem);
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.ait-modern-site .ait-hero {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background: linear-gradient(90deg, rgba(3, 24, 54, 0.97) 0%, rgba(5, 39, 81, 0.83) 48%, rgba(6, 29, 63, 0.5) 100%),
        url("/images/control_image_1.jpg") center 50% / cover no-repeat;
}

.ait-modern-site .ait-hero::after {
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    background: linear-gradient(transparent, rgba(2, 20, 46, 0.4));
    content: "";
    pointer-events: none;
}

.ait-modern-site .ait-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    align-items: center;
}

.ait-modern-site .ait-hero-copy {
    width: auto;
    padding: 0;
}

.ait-modern-site .ait-eyebrow {
    display: none;
}

.ait-modern-site .ait-hero h1 {
    margin: 0;
    color: #ffffff;
    font-weight: 760;
    letter-spacing: -0.035em;
}

.ait-modern-site .ait-hero h1 strong {
    color: #f20f2f;
    font-weight: 850;
}

.ait-modern-site .ait-hero-text {
    color: rgba(255, 255, 255, 0.95);
}

.ait-modern-site .ait-trust-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    color: #ffffff;
    line-height: 1.35;
}

.ait-modern-site .ait-trust-row span {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
}

.ait-modern-site .ait-trust-row span::before {
    display: inline-grid;
    flex: 0 0 26px;
    place-items: center;
    border: 2px solid #ffd400;
    color: #ffd400;
    content: "✓";
    font-size: 0.78rem;
    font-weight: 900;
}

.ait-modern-site .ait-hero-properties {
    display: block;
    min-width: 0;
    align-self: center;
}

.ait-modern-site .ait-home-slider {
    display: grid;
    margin-left: auto;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.34);
    background: #031b3d;
}

.ait-modern-site .ait-home-slider-media {
    position: relative;
    display: block;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    background: #dfe6ef;
}

.ait-modern-site .ait-home-slider-media img {
    display: block;
}

.ait-modern-site .ait-home-slider-badge {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    color: #ffffff;
    background: #f20f2f;
    box-shadow: 0 7px 18px rgba(242, 15, 47, 0.26);
    font-weight: 850;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.ait-modern-site .ait-home-slider-content {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: #ffffff;
    background: #031b3d;
}

.ait-modern-site .ait-home-slider-heading {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

.ait-modern-site .ait-home-slider-heading h2 {
    margin: 0;
    color: #ffffff;
    font-weight: 850;
}

.ait-modern-site .ait-home-slider-heading strong {
    color: #f20f2f;
    white-space: nowrap;
}

.ait-modern-site .ait-home-slider-deal {
    color: rgba(255, 255, 255, 0.84);
    font-weight: 650;
}

.ait-modern-site .ait-home-slider-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ait-modern-site .ait-home-slider-facts span {
    display: flex;
    min-width: 0;
    align-items: center;
    overflow: hidden;
    color: #061a3a;
    background: #ffffff;
    font-weight: 700;
}

.ait-modern-site .ait-home-slider-facts span b {
    flex: 0 0 auto;
    color: #f20f2f;
}

.ait-modern-site .ait-home-slider-price {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 7px;
    color: #ffffff;
    background: #f20f2f;
    text-decoration: none;
    clip-path: polygon(16px 0, 100% 0, 100% 100%, 16px 100%, 0 50%);
}

.ait-modern-site .ait-home-slider-price strong {
    font-weight: 900;
    line-height: 1;
}

.ait-modern-site .ait-home-slider-price small {
    font-weight: 700;
}

@media (max-width: 1120px) {

.ait-modern-site .ait-site-header-inner {
    grid-template-columns: 190px minmax(0, 1fr) auto;
}

.ait-modern-site .ait-main-nav {
    gap: 16px 22px;
}

.ait-modern-site .ait-hero-inner {
    grid-template-columns: minmax(300px, 0.78fr) minmax(500px, 1.22fr);
    gap: 28px;
}
}

@media (max-width: 940px) {

.ait-modern-site .ait-topbar-claim {
    display: none;
}

.ait-modern-site .ait-topbar-inner {
    justify-content: flex-end;
}

.ait-modern-site .ait-site-header-inner {
    grid-template-columns: 190px 1fr auto;
    padding-block: 14px;
}

.ait-modern-site .ait-main-nav {
    display: none;
}

.ait-modern-site .ait-hero-inner {
    grid-template-columns: 1fr;
    padding-block: 42px 58px;
}

.ait-modern-site .ait-hero-copy {
    max-width: 680px;
}

.ait-modern-site .ait-home-slider {
    max-width: 760px;
    margin-inline: auto;
}
}

@media (max-width: 660px) {

.ait-modern-site .ait-shell {
    width: min(100% - 24px, 1450px);
}

.ait-modern-site .ait-topbar-actions a:nth-of-type(-n/**/+2),
    .ait-modern-site .ait-topbar-actions button,
    .ait-modern-site .ait-topbar-actions a:nth-last-of-type(2) {
    display: none;
}

.ait-modern-site .ait-site-header-inner {
    grid-template-columns: 1fr auto;
}

.ait-modern-site .ait-language-links {
    grid-column: 2;
}

.ait-modern-site .ait-brand {
    width: min(100%, 210px);
}

.ait-modern-site .ait-trust-row {
    grid-template-columns: 1fr;
}

.ait-modern-site .ait-home-slider {
    grid-template-columns: 1fr;
}

.ait-modern-site .ait-home-slider-media img {
    min-height: 250px;
    max-height: 320px;
}

.ait-modern-site .ait-home-slider-content {
    padding-bottom: 70px;
}
}

.ait-modern-site .ait-topbar,
.ait-modern-site .ait-topbar-inner {
    min-height: 36px;
}

.ait-modern-site .ait-site-header-inner {
    min-height: 82px;
    grid-template-columns: minmax(200px, 250px) minmax(0, 1fr) auto;
    gap: clamp(20px, 2.4vw, 42px);
}

.ait-modern-site .ait-brand {
    width: min(100%, 225px);
}

.ait-modern-site .ait-brand img {
    max-height: 68px;
}

.ait-modern-site .ait-main-nav {
    gap: clamp(16px, 1.7vw, 30px);
}

.ait-modern-site .ait-hero {
    min-height: 412px;
    background-position: center 52%;
}

.ait-modern-site .ait-hero-inner {
    min-height: 412px;
    grid-template-columns: minmax(350px, 0.95fr) minmax(560px, 1.05fr);
    gap: clamp(28px, 3.2vw, 54px);
    padding-block: 14px 24px;
}

.ait-modern-site .ait-hero-copy {
    max-width: 540px;
}

.ait-modern-site .ait-hero h1 {
    max-width: 520px;
    font-size: clamp(2.25rem, 2.75vw, 3.45rem);
    line-height: 1.06;
}

.ait-modern-site .ait-hero-text {
    max-width: 390px;
    margin: 16px 0 22px;
    font-size: clamp(0.92rem, 0.25vw + 0.87rem, 1.05rem);
    line-height: 1.48;
}

.ait-modern-site .ait-trust-row {
    max-width: 535px;
    gap: 14px;
    font-size: clamp(0.64rem, 0.12vw + 0.62rem, 0.73rem);
}

.ait-modern-site .ait-trust-row span {
    gap: 8px;
}

.ait-modern-site .ait-trust-row span::before {
    width: 23px;
    height: 23px;
    flex-basis: 23px;
    border-radius: 8px;
}

.ait-modern-site .ait-home-slider {
    width: min(100%, 630px);
    max-width: 630px;
    min-height: 302px;
    grid-template-columns: minmax(0, 54%) minmax(0, 46%);
    border-radius: 15px;
    box-shadow: 0 18px 42px rgba(0, 10, 28, 0.32);
}

.ait-modern-site .ait-home-slider-media img {
    min-height: 302px;
    max-height: 302px;
}

.ait-modern-site .ait-home-slider-badge {
    top: 12px;
    left: 12px;
    min-height: 24px;
    padding: 5px 9px;
    border-radius: 6px;
    font-size: 0.62rem;
}

.ait-modern-site .ait-home-slider-content {
    padding: 16px 17px 56px;
}

.ait-modern-site .ait-home-slider-deal {
    margin: 9px 0 10px;
}

.ait-modern-site .ait-home-slider-facts {
    gap: 6px;
}

.ait-modern-site .ait-home-slider-facts span {
    border-radius: 6px;
}

.ait-modern-site .ait-home-slider-price {
    min-width: 182px;
    min-height: 45px;
    padding: 8px 15px 8px 25px;
}

.ait-modern-site .ait-home-slider-price strong {
    font-size: clamp(1.2rem, 0.7vw + 1rem, 1.55rem);
}

.ait-modern-site .ait-home-slider-price small {
    font-size: 0.68rem;
}

@media (max-width: 1120px) {

.ait-modern-site .ait-hero,
    .ait-modern-site .ait-hero-inner {
    min-height: 390px;
}

.ait-modern-site .ait-hero-inner {
    grid-template-columns: minmax(300px, 0.88fr) minmax(500px, 1.12fr);
    gap: 24px;
}

.ait-modern-site .ait-home-slider {
    width: min(100%, 590px);
    min-height: 286px;
}

.ait-modern-site .ait-home-slider-media img {
    min-height: 286px;
    max-height: 286px;
}
}

@media (max-width: 940px) {

.ait-modern-site .ait-hero,
    .ait-modern-site .ait-hero-inner {
    min-height: auto;
}

.ait-modern-site .ait-hero-inner {
    padding-block: 34px 46px;
}

.ait-modern-site .ait-home-slider {
    width: min(100%, 680px);
    max-width: 680px;
}
}

@media (max-width: 660px) {

.ait-modern-site .ait-site-header-inner {
    min-height: 70px;
}

.ait-modern-site .ait-brand {
    width: min(100%, 185px);
}

.ait-modern-site .ait-home-slider-media img {
    min-height: 220px;
    max-height: 270px;
}
}

html,
html body#single.ait-modern-site {
    margin: 0 !important;
    padding: 0 !important;
}

html body#single.ait-modern-site > .ait-topbar {
    margin-top: 0 !important;
}

@media (min-width: 941px) {

.ait-modern-site .ait-hero,
    .ait-modern-site .ait-hero-inner {
    min-height: 336px;
    height: 336px;
}

.ait-modern-site .ait-hero-inner {
    grid-template-columns: minmax(330px, 0.92fr) minmax(570px, 1.08fr);
    gap: clamp(24px, 2.8vw, 46px);
    padding-block: 12px 18px;
}

.ait-modern-site .ait-hero-copy {
    max-width: 500px;
}

.ait-modern-site .ait-hero h1 {
    max-width: 480px;
    font-size: clamp(2.05rem, 2.5vw, 3rem);
    line-height: 1.04;
}

.ait-modern-site .ait-hero-text {
    max-width: 350px;
    margin: 13px 0 17px;
    font-size: clamp(0.84rem, 0.2vw + 0.81rem, 0.96rem);
    line-height: 1.42;
}

.ait-modern-site .ait-trust-row {
    max-width: 500px;
    gap: 11px;
    font-size: clamp(0.58rem, 0.1vw + 0.57rem, 0.67rem);
}

.ait-modern-site .ait-trust-row span::before {
    width: 21px;
    height: 21px;
    flex-basis: 21px;
}

.ait-modern-site .ait-home-slider {
    width: min(100%, 630px);
    max-width: 630px;
    grid-template-columns: minmax(0, 55%) minmax(0, 45%);
    overflow: hidden;
}

.ait-modern-site .ait-home-slider-media,
    .ait-modern-site .ait-home-slider-media img {
    min-height: 286px;
    height: 286px;
    max-height: 286px;
}

.ait-modern-site .ait-home-slider-content {
    min-height: 0;
    height: 286px;
    padding: 14px 15px 48px;
}

.ait-modern-site .ait-home-slider-heading h2 {
    font-size: clamp(1.08rem, 0.55vw + 0.96rem, 1.38rem);
}

.ait-modern-site .ait-home-slider-heading strong {
    font-size: 0.86rem;
}

.ait-modern-site .ait-home-slider-deal {
    margin: 7px 0 8px;
    font-size: 0.66rem;
    line-height: 1.2;
}

.ait-modern-site .ait-home-slider-facts {
    gap: 5px;
}

.ait-modern-site .ait-home-slider-facts span {
    min-height: 31px;
    padding: 5px 7px;
    font-size: 0.61rem;
    line-height: 1.1;
}

.ait-modern-site .ait-home-slider-facts span b {
    font-size: 0.7rem;
}

.ait-modern-site .ait-home-slider-price {
    min-width: 174px;
    min-height: 42px;
    padding: 7px 13px 7px 23px;
}

.ait-modern-site .ait-home-slider-price strong {
    font-size: 1.38rem;
}

.ait-modern-site .ait-home-slider-price small {
    font-size: 0.62rem;
}

.ait-modern-site .ait-hero,
    .ait-modern-site .ait-hero-inner {
    min-height: 410px;
    height: 410px;
}

.ait-modern-site .ait-hero-inner {
    padding-block: 22px 54px;
    align-items: center;
}

.ait-modern-site .ait-hero-copy,
    .ait-modern-site .ait-hero-properties {
    align-self: center;
}

.ait-modern-site .ait-home-slider {
    min-height: 286px;
    height: 286px;
    align-self: center;
}

.ait-modern-site .ait-home-slider-media,
    .ait-modern-site .ait-home-slider-media img,
    .ait-modern-site .ait-home-slider-content {
    min-height: 286px;
    height: 286px;
    max-height: 286px;
}
}

.ait-modern-site .ait-home-slider-carousel {
    position: relative;
    width: min(100%, 630px);
    max-width: 630px;
}

.ait-modern-site .ait-home-slider-track {
    position: relative;
    width: 100%;
    height: 286px;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    position: absolute;
    inset: 0;
    display: grid;
    width: 100%;
    max-width: 100%;
    min-height: 286px;
    height: 286px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-active {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0);
}

.ait-modern-site .ait-home-slider-arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: grid;
    width: 38px;
    height: 38px;
    padding: 0;
    place-items: center;
    color: #071b3b;
    border: 1px solid rgba(7, 27, 59, 0.12);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
    font-size: 1.7rem;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
}

.ait-modern-site .ait-home-slider-arrow-prev {
    left: -19px;
}

.ait-modern-site .ait-home-slider-arrow-next {
    right: -19px;
}

.ait-modern-site .ait-home-slider-dots {
    position: absolute;
    left: 50%;
    bottom: -24px;
    z-index: 5;
    display: flex;
    gap: 10px;
    transform: translateX(-50%);
}

.ait-modern-site .ait-home-slider-dots button {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.78);
    cursor: pointer;
}

.ait-modern-site .ait-home-slider-dots button.is-active {
    background: #f20f32;
}

@media (min-width: 941px) {

.ait-modern-site .ait-hero-properties {
    transform: translateY(-10%);
}
}

@media (max-width: 940px) {

.ait-modern-site .ait-home-slider-carousel,
    .ait-modern-site .ait-home-slider-track {
    width: 100%;
    max-width: 100%;
}

.ait-modern-site .ait-home-slider-arrow-prev {
    left: 8px;
}

.ait-modern-site .ait-home-slider-arrow-next {
    right: 8px;
}
}

@media (max-width: 620px) {

.ait-modern-site .ait-home-slider-track,
    .ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    min-height: auto;
    height: auto;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    position: relative;
    display: none;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-active {
    display: grid;
}
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    transform: translateX(0);
    filter: none;
    transition: opacity 900ms ease,
        transform 1050ms cubic-bezier(0.22, 1, 0.36, 1),
        filter 900ms ease,
        visibility 0s linear 1050ms;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-active {
    transition-delay: 0s;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-fade {
    opacity: 0;
    filter: blur(5px) brightness(0.86);
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-fade.is-active {
    opacity: 1;
    filter: blur(0) brightness(1);
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-slide {
    transform: translateX(11%);
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-slide.is-active {
    transform: translateX(0);
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-zoom {
    transform: scale(1.11);
    filter: brightness(0.88);
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider.is-effect-zoom.is-active {
    transform: scale(1);
    filter: brightness(1);
}

.ait-modern-site .ait-home-slider-media img {
    max-width: 100%;
    transform: scale(1.02);
    transform-origin: center center;
    animation: none;
    will-change: transform;
}

.ait-modern-site .ait-home-slider-media img.is-zoom-running {
    animation: ait-home-slider-image-zoom 9s linear both;
}

@keyframes ait-home-slider-image-zoom {

from {
    transform: scale(1.02);
}

to {
    transform: scale(1.12);
}
}

#search .ait-search-field {
    grid-template-columns: clamp(22px, 1.8vw, 28px) minmax(0, 1fr) !important;
    gap: clamp(6px, 0.65vw, 10px) !important;
    padding-inline: clamp(9px, 0.8vw, 13px) !important;
}

#search .ait-search-field-copy {
    position: relative;
    max-width: 100%;
}

#search .ait-search-field select {
    appearance: none !important;
    -webkit-appearance: none !important;
    font-size: clamp(0.72rem, 0.28vw + 0.68rem, 0.86rem) !important;
}

#search .ait-search-field-copy:has(select)::after {
    position: absolute;
    bottom: 8px;
    width: 7px;
    height: 7px;
    border-right: 2px solid #071b3b;
    border-bottom: 2px solid #071b3b;
    content: "";
    pointer-events: none;
    transform: rotate(45deg);
}

@media (min-width: 1540px) and (max-width: 1799px) {

#search .ait-search-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

#search #search_bt.ait-search-submit {
    min-width: 0 !important;
}
}

@media (min-width: 1800px) {

#search .ait-search-grid {
    grid-template-columns: repeat(7, minmax(150px, 1fr)) minmax(190px, 1.15fr) !important;
}
}

@media (prefers-reduced-motion: reduce) {

.ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    transition-duration: 1ms !important;
}

.ait-modern-site .ait-home-slider-media img.is-zoom-running {
    animation-duration: 1ms !important;
}
}

.ait-modern-site .ait-home-slider-media img.is-zoom-running {
    animation-fill-mode: forwards;
}

.ait-modern-site .ait-home-slider-carousel .ait-home-slider:not(.is-active)
    .ait-home-slider-media img.is-zoom-running {
    transform: scale(1.12);
}

.ait-modern-site .ait-home-slider-heading h2 {
    font-size: clamp(1.42rem, 0.8vw + 1.08rem, 1.72rem);
    line-height: 1.08;
}

.ait-modern-site .ait-home-slider-heading strong {
    font-size: clamp(0.92rem, 0.22vw + 0.86rem, 1.06rem);
    line-height: 1.15;
}

.ait-modern-site .ait-home-slider-deal {
    margin-block: 10px 12px;
    font-size: clamp(0.78rem, 0.16vw + 0.75rem, 0.88rem);
    line-height: 1.35;
}

.ait-modern-site .ait-home-slider-facts span {
    min-height: 38px;
    gap: clamp(6px, 0.45vw, 8px);
    padding: 7px clamp(8px, 0.65vw, 10px);
    font-size: clamp(0.69rem, 0.14vw + 0.66rem, 0.79rem);
    line-height: 1.22;
}

.ait-modern-site .ait-home-slider-facts span b {
    font-size: clamp(0.8rem, 0.14vw + 0.77rem, 0.9rem);
}

#search .ait-search-field-copy strong {
    font-size: clamp(0.78rem, 0.16vw + 0.75rem, 0.88rem) !important;
    line-height: 1.22 !important;
}

#search .ait-search-field select,
#search .ait-search-field input {
    font-size: clamp(0.88rem, 0.2vw + 0.84rem, 1rem) !important;
    line-height: 1.25 !important;
}

@media (min-width: 941px) and (max-width: 1180px) {

.ait-modern-site .ait-home-slider-heading h2 {
    font-size: clamp(1.32rem, 1.55vw, 1.55rem);
}

.ait-modern-site .ait-home-slider-facts span {
    font-size: clamp(0.66rem, 0.9vw, 0.74rem);
}

#search .ait-search-field-copy strong {
    font-size: clamp(0.74rem, 0.85vw, 0.82rem) !important;
}

#search .ait-search-field select,
    #search .ait-search-field input {
    font-size: clamp(0.82rem, 0.95vw, 0.92rem) !important;
}
}

@media (min-width: 941px) {

.ait-modern-site .ait-home-slider,
    .ait-modern-site .ait-home-slider-track,
    .ait-modern-site .ait-home-slider-carousel .ait-home-slider {
    min-height: clamp(300px, 20vw, 326px);
    height: clamp(300px, 20vw, 326px);
}

.ait-modern-site .ait-home-slider-media,
    .ait-modern-site .ait-home-slider-media img,
    .ait-modern-site .ait-home-slider-content {
    min-height: clamp(300px, 20vw, 326px);
    height: clamp(300px, 20vw, 326px);
    max-height: none;
}

.ait-modern-site .ait-home-slider-content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: clamp(14px, 1.05vw, 18px) clamp(14px, 1.05vw, 18px)
            clamp(58px, 4vw, 66px);
    overflow: hidden;
}

.ait-modern-site .ait-home-slider-facts {
    min-width: 0;
    align-content: start;
}

.ait-modern-site .ait-home-slider-price {
    right: 0;
    bottom: 0;
    z-index: 2;
    min-width: clamp(176px, 14vw, 210px);
    max-width: 72%;
}
}

#search .ait-search-field {
    min-width: 0;
}

#search .ait-search-field-copy {
    min-width: 0;
}

#search .ait-search-field select {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-right: clamp(24px, 1.8vw, 30px) !important;
    text-overflow: clip;
    white-space: nowrap;
}

#search .ait-search-field-copy:has(select)::after {
    right: clamp(2px, 0.35vw, 6px);
}

@media (min-width: 1181px) and (max-width: 1799px) {

#search .ait-search-grid {
    grid-template-columns: repeat(4, minmax(220px, 1fr)) !important;
}

#search .ait-search-field select,
    #search .ait-search-field input {
    font-size: clamp(0.9rem, 0.22vw + 0.84rem, 1rem) !important;
}
}

.ait-modern-site img,
.ait-modern-site svg,
.ait-modern-site video {
    max-width: 100%;
    height: auto;
}

.ait-modern-site .ait-home-slider-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ======================================================================
   VARIAZIONE 013 — HEADER E SEARCH RICOSTRUITI SENZA REGOLE DUPLICATE
   ====================================================================== */

.ait-modern-site,
.ait-modern-site *,
.ait-modern-site *::before,
.ait-modern-site *::after {
    box-sizing: border-box;
}

/* Header: mantiene le bandiere e rende leggibile il brand senza usare
   nuove immagini. */

.ait-modern-site .ait-brand {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: clamp(10px, 0.8vw, 14px);
    color: var(--ait-ink);
    text-decoration: none;
}

.ait-modern-site .ait-brand-mark {
    position: relative;
    display: block;
    width: clamp(42px, 2.9vw, 52px);
    height: clamp(66px, 4.7vw, 82px);
    flex: 0 0 auto;
    overflow: hidden;
}

.ait-modern-site .ait-brand-mark::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 18%;
    background: #ffffff;
    content: "";
}

.ait-modern-site .ait-brand-mark img {
    position: absolute;
    top: 0;
    left: 50%;
    width: clamp(126px, 8.2vw, 150px);
    max-width: none;
    height: auto;
    transform: translateX(-26%);
    filter: saturate(0.35) contrast(1.08) brightness(0.74) hue-rotate(153deg);
}

.ait-modern-site .ait-brand-copy {
    display: grid;
    min-width: 0;
    gap: 1px;
    line-height: 1;
}

.ait-modern-site .ait-brand-name {
    display: inline-flex;
    align-items: baseline;
    max-width: 100%;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 1.45vw + 0.78rem, 2.3rem);
    font-weight: 700;
    letter-spacing: -0.045em;
    white-space: nowrap;
}

.ait-modern-site .ait-brand-name .ait-brand-affitti {
    color: #25272a;
}

.ait-modern-site .ait-brand-name .ait-brand-in {
    color: #18a9dc;
}

.ait-modern-site .ait-brand-name .ait-brand-torino {
    color: #526f7c;
}

.ait-modern-site .ait-brand-copy small {
    color: #202226;
    font-size: clamp(0.62rem, 0.13vw + 0.58rem, 0.72rem);
    font-weight: 800;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.ait-modern-site .ait-language-links {
    display: flex;
    align-items: center;
    gap: clamp(8px, 0.75vw, 12px);
}

.ait-modern-site .ait-language-links a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.ait-modern-site .ait-flag {
    position: relative;
    display: inline-block;
    width: clamp(22px, 1.5vw, 28px);
    aspect-ratio: 3 / 2;
    flex: 0 0 auto;
    overflow: hidden;
    border: 1px solid rgba(6, 26, 58, 0.16);
    box-shadow: 0 1px 3px rgba(6, 26, 58, 0.12);
}

.ait-modern-site .ait-flag-it {
    background: linear-gradient(90deg, #159447 0 33.333%, #ffffff 33.333% 66.666%, #d91f32 66.666% 100%);
}

.ait-modern-site .ait-flag-gb {
    background: linear-gradient(33deg, transparent 43%, #ffffff 43% 49%, #cf142b 49% 53%, #ffffff 53% 59%, transparent 59%),
        linear-gradient(-33deg, transparent 43%, #ffffff 43% 49%, #cf142b 49% 53%, #ffffff 53% 59%, transparent 59%),
        linear-gradient(90deg, transparent 40%, #ffffff 40% 60%, transparent 60%),
        linear-gradient(transparent 35%, #ffffff 35% 65%, transparent 65%),
        linear-gradient(90deg, transparent 45%, #cf142b 45% 55%, transparent 55%),
        linear-gradient(transparent 42%, #cf142b 42% 58%, transparent 58%),
        #012169;
}

.ait-modern-site .ait-search-panel {
    position: relative;
    z-index: 8;
    container-type: inline-size;
}

#search.box-aside {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 0;
    padding: clamp(14px, 1.15vw, 18px) !important;
    overflow: visible;
}

#search .ait-search-heading {
    display: none;
}

#search .ait-property-search,
#search .ait-search-grid,
#search .ait-search-field,
#search .ait-search-field-copy,
#search .ait-search-combined-selects,
#search .ait-search-range,
#search .ait-search-submit {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
}

#search .ait-property-search {
    position: static;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

#search .ait-search-grid {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(10px, 1vw, 14px);
    align-items: stretch;
    overflow: visible;
}

#search .ait-search-field,
#search .ait-search-submit {
    position: relative;
    inset: auto;
    width: 100%;
    margin: 0;
}

#search .ait-search-field {
    display: grid;
    grid-template-columns: clamp(21px, 1.7vw, 27px) minmax(0, 1fr);
    align-items: center;
    gap: clamp(7px, 0.7vw, 10px);
    min-height: clamp(62px, 4.5vw, 70px);
    padding: clamp(9px, 0.8vw, 12px) clamp(9px, 0.8vw, 13px);
    overflow: visible;
}

#search .ait-search-field-icon {
    display: grid;
    width: clamp(21px, 1.7vw, 27px);
    height: clamp(21px, 1.7vw, 27px);
    place-items: center;
    flex: 0 0 auto;
}

#search .ait-search-field-copy {
    display: grid;
    width: 100%;
    gap: 2px;
    overflow: visible;
}

#search .ait-search-field-copy strong {
    display: block;
    min-width: 0;
    font-size: clamp(0.69rem, 0.19vw + 0.66rem, 0.81rem);
    line-height: 1.15;
    white-space: nowrap;
}

#search .ait-search-combined-selects {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    overflow: visible;
}

#search .ait-search-field select,
#search .ait-search-field input {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: clamp(25px, 2vw, 29px);
    margin: 0;
    border: 0;
    background-color: transparent;
    color: #081a39;
    font-family: inherit;
    font-size: clamp(0.76rem, 0.2vw + 0.71rem, 0.91rem);
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: clip;
}

#search .ait-search-field select {
    padding: 0 clamp(18px, 1.35vw, 22px) 0 0;
    overflow: visible;
}

#search .ait-search-field input {
    padding: 0;
}

#search .ait-search-range {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: clamp(4px, 0.45vw, 6px);
    overflow: visible;
}

#search .ait-search-range input {
    min-width: 0;
}

#search #search_bt.ait-search-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: clamp(46px, 3.5vw, 52px);
    padding: 10px clamp(12px, 1vw, 16px);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 9px;
    background: linear-gradient(180deg, #ff2542 0%, #ed102d 58%, #c90b24 100%);
    box-shadow: 0 5px 0 #a8071d, 0 10px 20px rgba(237, 16, 45, 0.24);
    color: #ffffff;
    font-size: clamp(0.75rem, 0.18vw + 0.71rem, 0.88rem);
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
    overflow: visible;
    transform: translateY(-2px);
    transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}

#search #search_bt.ait-search-submit:hover {
    filter: brightness(1.06);
    transform: translateY(-5px);
    box-shadow: 0 8px 0 #a8071d, 0 15px 28px rgba(237, 16, 45, 0.3);
}

#search #search_bt.ait-search-submit:active {
    transform: translateY(2px);
    box-shadow: 0 2px 0 #a8071d, 0 5px 12px rgba(237, 16, 45, 0.2);
}

/* Il numero di colonne dipende dalla larghezza reale del pannello,
   non dalla sola larghezza della finestra. */

@container (min-width: 620px) {

#search .ait-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@container (min-width: 900px) {

#search .ait-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@container (min-width: 1260px) {

#search .ait-search-grid {
    grid-template-columns: minmax(206px, 1.34fr)
            minmax(145px, 0.95fr)
            minmax(158px, 1fr)
            minmax(158px, 1fr)
            minmax(190px, 1.2fr)
            minmax(164px, 1fr);
    grid-template-rows: auto auto;
}

#search #search_bt.ait-search-submit {
    grid-column: 6;
    grid-row: 2;
    align-self: start;
}
}

/* Fallback per browser senza supporto alle container query. */

@supports not (container-type: inline-size) {

@media (min-width: 680px) {

#search .ait-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (min-width: 1040px) {

#search .ait-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (min-width: 1420px) {

#search .ait-search-grid {
    grid-template-columns: minmax(206px, 1.34fr)
                minmax(145px, 0.95fr)
                minmax(158px, 1fr)
                minmax(158px, 1fr)
                minmax(190px, 1.2fr)
                minmax(164px, 1fr);
    grid-template-rows: auto auto;
}

#search #search_bt.ait-search-submit {
    grid-column: 6;
    grid-row: 2;
    align-self: start;
}
}
}

/* Categorie: sempre nel normale flusso, mai coperte dalla sezione seguente. */

.ait-modern-site .ait-home-categories {
    position: relative;
    inset: auto;
    z-index: 4;
    display: grid;
    grid-template-columns: 1fr;
    width: min(calc(100% - clamp(24px, 5vw, 88px)), 1380px);
    max-width: 100%;
    height: auto;
    margin: clamp(14px, 1.3vw, 20px) auto clamp(24px, 2vw, 34px);
    gap: clamp(9px, 0.8vw, 13px);
    overflow: visible;
    transform: none;
}

.ait-modern-site .ait-home-categories a {
    display: grid;
    grid-template-columns: clamp(42px, 3vw, 50px) minmax(0, 1fr);
    align-items: center;
    gap: clamp(9px, 0.8vw, 12px);
    width: 100%;
    min-width: 0;
    min-height: clamp(58px, 4vw, 68px);
    padding: 6px clamp(9px, 0.8vw, 13px) 6px 6px;
    border: 1px solid rgba(6, 26, 58, 0.08);
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(6, 26, 58, 0.08);
    color: #071b3b;
    text-decoration: none;
}

.ait-modern-site .ait-home-categories a > span {
    display: grid;
    width: clamp(42px, 3vw, 50px);
    aspect-ratio: 1;
    place-items: center;
    border: 1px solid rgba(6, 26, 58, 0.09);
    border-radius: 50%;
    background: #ffffff;
    color: var(--ait-red);
    font-size: clamp(1.15rem, 0.45vw + 1rem, 1.45rem);
}

.ait-modern-site .ait-home-categories a > strong {
    min-width: 0;
    font-size: clamp(0.78rem, 0.17vw + 0.74rem, 0.94rem);
    font-weight: 700;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: anywhere;
}

@media (min-width: 560px) {

.ait-modern-site .ait-home-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (min-width: 900px) {

.ait-modern-site .ait-home-categories {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
}

@media (min-width: 1280px) {

.ait-modern-site .ait-home-categories {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}
}

.ait-modern-site .ait-home-showcase {
    position: relative;
    inset: auto;
    clear: both;
    margin-top: 0;
    overflow: visible;
}

@media (max-width: 660px) {

.ait-modern-site .ait-brand-mark {
    width: 42px;
}

.ait-modern-site .ait-brand-mark img {
    width: 112px;
}

.ait-modern-site .ait-brand-name {
    font-size: clamp(1.22rem, 5.2vw, 1.5rem);
}

.ait-modern-site .ait-language-links a > span:last-child {
    display: none;
}
}

.ait-modern-site #search .ait-search-field {
    border-radius: clamp(8px, 0.65vw, 11px);
}

.ait-modern-site #search #search_bt.ait-search-submit {
    border: 0 !important;
    font-weight: 700 !important;
}

.ait-modern-site #search #search_bt.ait-search-submit:hover {
    background: #d80f2d !important;
    box-shadow: 0 6px 14px rgba(237, 21, 53, 0.28) !important;
    transform: translateY(-1px) !important;
}

.ait-modern-site #search #search_bt.ait-search-submit:active {
    box-shadow: 0 2px 7px rgba(237, 21, 53, 0.2) !important;
    transform: translateY(0) !important;
}

/* Desktop: sei gruppi compatti sulla prima riga e pulsante sotto Prezzo,
   come nel progetto grafico approvato. */

@media (min-width: 1180px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(200px, 1.28fr)
            minmax(142px, 0.9fr)
            minmax(150px, 0.96fr)
            minmax(150px, 0.96fr)
            minmax(176px, 1.1fr)
            minmax(154px, 0.96fr) !important;
    grid-template-rows: auto auto !important;
}

.ait-modern-site #search #search_bt.ait-search-submit {
    grid-column: 6 !important;
    grid-row: 2 !important;
    width: 100% !important;
    align-self: start !important;
    justify-self: stretch !important;
}
}

@media (min-width: 900px) and (max-width: 1179px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
}

@media (min-width: 620px) and (max-width: 899px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
}

@media (max-width: 619px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(0, 1fr) !important;
}
}

.ait-modern-site .ait-search-panel {
    height: auto;
}

.ait-modern-site .ait-search-tabs {
    min-height: clamp(44px, 3.2vw, 52px);
    padding-inline: clamp(14px, 1.15vw, 20px);
}

.ait-modern-site .ait-search-tabs a {
    display: inline-flex;
    min-height: clamp(44px, 3.2vw, 52px);
    align-items: center;
    padding: 0 clamp(16px, 1.5vw, 24px);
}

.ait-modern-site #search .ait-search-grid {
    gap: clamp(7px, 0.55vw, 10px) !important;
    align-items: center !important;
}

.ait-modern-site #search .ait-search-field {
    overflow: hidden !important;
}

.ait-modern-site #search .ait-search-field-copy {
    align-content: center;
    gap: 1px !important;
    overflow: hidden !important;
}

.ait-modern-site #search .ait-search-combined-selects {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
}

.ait-modern-site #search .ait-search-field select,
.ait-modern-site #search .ait-search-field input {
    height: 19px !important;
    min-height: 19px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    font-size: clamp(0.69rem, 0.12vw + 0.67rem, 0.78rem) !important;
    line-height: 19px !important;
}

.ait-modern-site #search .ait-search-range {
    gap: 4px !important;
}

.ait-modern-site #search #search_bt.ait-search-submit {
    width: 100% !important;
    border-radius: 8px !important;
    background: #ed1535 !important;
    box-shadow: 0 5px 12px rgba(237, 21, 53, 0.2) !important;
    transform: none !important;
}

/* Desktop ampio: i sei gruppi e il pulsante condividono una sola riga.
   Le proporzioni assegnano più spazio a Tipologia/Contratto e Via. */

@media (min-width: 1360px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(0, 1.65fr)
            minmax(0, 1.15fr)
            minmax(0, 1.15fr)
            minmax(0, 1.15fr)
            minmax(0, 1.3fr)
            minmax(0, 1fr)
            minmax(0, 1.2fr) !important;
    grid-template-rows: 58px !important;
}

.ait-modern-site #search #search_bt.ait-search-submit {
    grid-column: 7 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    justify-self: stretch !important;
}
}

/* Desktop medio: evita compressioni e mantiene una composizione compatta. */

@media (min-width: 900px) and (max-width: 1359px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
}

.ait-modern-site #search #search_bt.ait-search-submit {
    grid-column: auto !important;
    grid-row: auto !important;
}
}

@media (max-width: 899px) {

.ait-modern-site #search .ait-search-field,
    .ait-modern-site #search #search_bt.ait-search-submit {
    min-height: 54px !important;
}
}

.ait-modern-site #search .ait-compact-select {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}

.ait-modern-site #search .ait-compact-select select {
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: 100% !important;
    color: transparent !important;
    caret-color: transparent;
}

.ait-modern-site #search .ait-compact-select select option {
    color: #061a3a;
}

.ait-modern-site #search .ait-compact-select-label {
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    display: flex;
    min-width: 0;
    align-items: center;
    overflow: hidden;
    color: #061a3a;
    font: inherit;
    font-size: clamp(0.69rem, 0.12vw + 0.67rem, 0.78rem);
    font-weight: 700;
    line-height: 19px;
    white-space: nowrap;
    pointer-events: none;
}

.ait-modern-site #search .ait-compact-select:focus-within .ait-compact-select-label {
    color: #061a3a;
}

@media (max-width: 899px) {

.ait-modern-site #search .ait-compact-select {
    height: auto;
    min-height: 22px;
}

.ait-modern-site #search .ait-compact-select-label {
    min-height: 22px;
    line-height: 1.15;
}
}

.ait-modern-site #search .ait-search-field {
    min-height: 66px !important;
    height: 66px !important;
    padding: 7px 10px !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
}

.ait-modern-site #search .ait-search-field-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 1.04rem !important;
}

.ait-modern-site #search .ait-search-field-copy strong {
    font-size: clamp(0.74rem, 0.12vw + 0.71rem, 0.83rem) !important;
    line-height: 1.05 !important;
}

.ait-modern-site #search .ait-search-combined-selects {
    grid-template-rows: repeat(2, 22px) !important;
}

.ait-modern-site #search .ait-search-field select,
.ait-modern-site #search .ait-search-field input,
.ait-modern-site #search .ait-compact-select-label {
    height: 22px !important;
    min-height: 22px !important;
    font-size: clamp(0.79rem, 0.14vw + 0.76rem, 0.9rem) !important;
    line-height: 22px !important;
}

.ait-modern-site #search .ait-compact-select {
    height: 22px !important;
}

.ait-modern-site #search .ait-compact-select-label {
    right: 22px !important;
    text-overflow: clip !important;
}

.ait-modern-site #search .ait-search-field select {
    padding-right: 22px !important;
}

.ait-modern-site #search #search_bt.ait-search-submit {
    min-height: 66px !important;
    height: 66px !important;
    padding: 9px 12px !important;
    font-size: clamp(0.81rem, 0.15vw + 0.78rem, 0.92rem) !important;
}

.ait-modern-site .ait-search-tabs a {
    font-size: clamp(0.94rem, 0.18vw + 0.9rem, 1.08rem) !important;
}

@media (min-width: 1360px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(0, 1.55fr)
            minmax(0, 0.94fr)
            minmax(0, 0.98fr)
            minmax(0, 1.34fr)
            minmax(0, 1.28fr)
            minmax(0, 0.88fr)
            minmax(0, 1.18fr) !important;
    grid-template-rows: 66px !important;
}
}

@media (min-width: 1180px) and (max-width: 1359px) {

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(0, 1.35fr)
            minmax(0, 0.9fr)
            minmax(0, 0.92fr)
            minmax(0, 1.24fr)
            minmax(0, 1.2fr)
            minmax(0, 0.82fr) !important;
}
}

@media (max-width: 899px) {

.ait-modern-site #search .ait-search-field,
    .ait-modern-site #search #search_bt.ait-search-submit {
    height: auto !important;
    min-height: 62px !important;
}
}

@media (min-width: 1360px) {

.ait-modern-site .ait-search-panel {
    width: min(calc(100% - clamp(24px, 4vw, 72px) + 80px), 1620px) !important;
    max-width: calc(100% - 16px) !important;
    transform: translateX(-40px);
}

.ait-modern-site #search .ait-search-grid {
    grid-template-columns: minmax(0, 1.52fr)
            minmax(0, 0.9fr)
            minmax(0, 0.94fr)
            minmax(0, 1.42fr)
            minmax(0, 1.4fr)
            minmax(0, 0.82fr)
            minmax(0, 1.18fr) !important;
}
}

@media (min-width: 1360px) and (max-width: 1439px) {

.ait-modern-site .ait-search-panel {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    transform: translateX(-12px);
}
}

.ait-modern-site .ait-search-panel {
    width: min(1600px, calc(100% - clamp(24px, 4vw, 64px))) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    transform: none !important;
    overflow: visible !important;
}

.ait-modern-site #search.box-aside {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: clamp(12px, 0.85vw, 16px) !important;
    border-radius: clamp(16px, 1.15vw, 20px) !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-property-search-v2,
.ait-modern-site #search .ait-search-grid-v2,
.ait-modern-site #search .ait-search-grid-v2 > *,
.ait-modern-site #search .ait-search-field-copy,
.ait-modern-site #search .ait-search-combined-selects,
.ait-modern-site #search .ait-compact-select,
.ait-modern-site #search .ait-search-range-v2 {
    box-sizing: border-box;
    min-width: 0 !important;
    max-width: 100% !important;
}

.ait-modern-site #search .ait-property-search-v2 {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.ait-modern-site #search .ait-search-grid-v2 {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    gap: clamp(8px, 0.7vw, 12px) !important;
    align-items: stretch !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field,
.ait-modern-site #search .ait-search-grid-v2 #search_bt.ait-search-submit {
    position: relative !important;
    inset: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: clamp(62px, 4.25vw, 68px) !important;
    margin: 0 !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field {
    display: grid !important;
    grid-template-columns: clamp(20px, 1.4vw, 23px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(6px, 0.55vw, 9px) !important;
    padding: clamp(7px, 0.55vw, 10px) clamp(8px, 0.7vw, 12px) !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field-icon {
    display: grid !important;
    width: clamp(20px, 1.4vw, 23px) !important;
    height: clamp(20px, 1.4vw, 23px) !important;
    place-items: center !important;
    font-size: clamp(0.9rem, 0.22vw + 0.84rem, 1.04rem) !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field-copy {
    display: grid !important;
    width: 100% !important;
    gap: 1px !important;
    align-content: center !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field-copy strong {
    display: block !important;
    min-width: 0 !important;
    font-size: clamp(0.7rem, 0.13vw + 0.67rem, 0.82rem) !important;
    line-height: 1.1 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-combined-selects {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    gap: 0 !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-compact-select {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: clamp(21px, 1.55vw, 23px) !important;
    min-height: clamp(21px, 1.55vw, 23px) !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-grid-v2 select,
.ait-modern-site #search .ait-search-grid-v2 input {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: clamp(21px, 1.55vw, 23px) !important;
    min-height: clamp(21px, 1.55vw, 23px) !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-family: inherit !important;
    font-size: clamp(0.78rem, 0.14vw + 0.75rem, 0.9rem) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

.ait-modern-site #search .ait-search-grid-v2 select {
    padding: 0 clamp(19px, 1.25vw, 23px) 0 0 !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-compact-select-label {
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 clamp(19px, 1.25vw, 23px) 0 0 !important;
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
    height: auto !important;
    min-height: 0 !important;
    color: #061a3a !important;
    font-size: clamp(0.78rem, 0.14vw + 0.75rem, 0.9rem) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    pointer-events: none !important;
}

.ait-modern-site #search .ait-search-range-v2 {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(3px, 0.4vw, 6px) !important;
    overflow: visible !important;
}

.ait-modern-site #search .ait-search-range-v2 input[type="number"] {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 2px !important;
    text-align: center !important;
    -moz-appearance: textfield;
    appearance: textfield;
}

.ait-modern-site #search .ait-search-range-v2 input[type="number"]::-webkit-inner-spin-button,
.ait-modern-site #search .ait-search-range-v2 input[type="number"]::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.ait-modern-site #search .ait-search-range-v2 input::placeholder {
    color: #536078 !important;
    opacity: 1 !important;
}

.ait-modern-site #search .ait-search-grid-v2 #search_bt.ait-search-submit {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(5px, 0.45vw, 8px) !important;
    padding: 9px clamp(10px, 0.8vw, 15px) !important;
    border-radius: 9px !important;
    font-size: clamp(0.78rem, 0.14vw + 0.75rem, 0.9rem) !important;
    line-height: 1.1 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-align: center !important;
}

@container (min-width: 620px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
}

@container (min-width: 940px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
}

@container (min-width: 1240px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
}

@container (min-width: 1460px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: minmax(0, 1.46fr)
            minmax(0, 0.9fr)
            minmax(0, 0.94fr)
            minmax(0, 1.22fr)
            minmax(0, 1.3fr)
            minmax(0, 1.08fr)
            minmax(0, 1.22fr) !important;
}
}

@supports not (container-type: inline-size) {

@media (min-width: 680px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
}

@media (min-width: 1040px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
}

@media (min-width: 1320px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
}

@media (min-width: 1540px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: minmax(0, 1.46fr)
                minmax(0, 0.9fr)
                minmax(0, 0.94fr)
                minmax(0, 1.22fr)
                minmax(0, 1.3fr)
                minmax(0, 1.08fr)
                minmax(0, 1.22fr) !important;
}
}
}

.ait-modern-site img,
.ait-modern-site picture,
.ait-modern-site video,
.ait-modern-site svg {
    max-width: 100%;
    height: auto;
}

@media (min-width: 1280px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: minmax(0, 1.55fr)
            minmax(0, 0.86fr)
            minmax(0, 0.92fr)
            minmax(0, 1.2fr)
            minmax(0, 1.3fr)
            minmax(0, 0.96fr)
            minmax(0, 1.18fr) !important;
    grid-template-rows: minmax(0, auto) !important;
    gap: clamp(7px, 0.55vw, 10px) !important;
    align-items: stretch !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field,
    .ait-modern-site #search .ait-search-grid-v2 #search_bt.ait-search-submit {
    grid-column: auto !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field {
    padding-inline: clamp(7px, 0.55vw, 10px) !important;
    gap: clamp(5px, 0.4vw, 8px) !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field-icon {
    width: clamp(18px, 1.2vw, 22px) !important;
    height: clamp(18px, 1.2vw, 22px) !important;
    font-size: clamp(0.82rem, 0.18vw + 0.78rem, 1rem) !important;
}

.ait-modern-site #search .ait-search-grid-v2 .ait-search-field-copy strong {
    font-size: clamp(0.66rem, 0.1vw + 0.64rem, 0.78rem) !important;
}

.ait-modern-site #search .ait-search-grid-v2 select,
    .ait-modern-site #search .ait-search-grid-v2 input,
    .ait-modern-site #search .ait-search-grid-v2 .ait-compact-select-label {
    font-size: clamp(0.74rem, 0.1vw + 0.72rem, 0.86rem) !important;
}

.ait-modern-site #search .ait-search-grid-v2 #search_bt.ait-search-submit {
    padding-inline: clamp(8px, 0.65vw, 13px) !important;
    font-size: clamp(0.72rem, 0.11vw + 0.69rem, 0.86rem) !important;
    white-space: nowrap !important;
}
}

@media (min-width: 1600px) {

.ait-modern-site #search .ait-search-grid-v2 {
    grid-template-columns: minmax(0, 1.5fr)
            minmax(0, 0.9fr)
            minmax(0, 0.95fr)
            minmax(0, 1.2fr)
            minmax(0, 1.28fr)
            minmax(0, 0.94fr)
            minmax(0, 1.18fr) !important;
}
}

.ait-modern-site .ait-home-search-hot-layout {
    display: grid;
    width: min(calc(100% - clamp(24px, 4vw, 72px)), 1540px);
    max-width: 1540px;
    margin: clamp(-78px, -5vw, -58px) auto 0;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 294px);
    gap: clamp(12px, 1.2vw, 18px);
    align-items: stretch;
    position: relative;
    z-index: 20;
}

.ait-modern-site .ait-home-search-hot-layout #control.ait-home-search-column {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.ait-modern-site .ait-home-search-hot-layout #control #navigation {
    display: none !important;
}

.ait-modern-site .ait-home-search-hot-layout .ait-search-panel {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.ait-modern-site .ait-home-search-hot-layout .ait-home-categories {
    width: calc(100% - clamp(22px, 2vw, 34px)) !important;
    max-width: 100% !important;
    margin: 8px auto 0 !important;
}

.ait-modern-site .ait-hot-banner {
    flex-direction: column;
}

.ait-modern-site .ait-hot-banner-header h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1rem, 0.35vw + 0.94rem, 1.18rem);
    line-height: 1.1;
}

.ait-modern-site .ait-hot-banner-header a {
    color: #ffffff;
    font-size: clamp(0.66rem, 0.12vw + 0.64rem, 0.74rem);
    text-decoration: none;
    white-space: nowrap;
}

.ait-modern-site .ait-hot-banner-media {
    height: 100%;
}

.ait-modern-site .ait-hot-banner-copy {
    height: 100%;
}

.ait-modern-site .ait-hot-banner-copy h3,
.ait-modern-site .ait-hot-banner-copy p {
    margin: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.ait-modern-site .ait-hot-banner-copy h3 {
    font-size: clamp(0.8rem, 0.22vw + 0.76rem, 0.94rem);
    line-height: 1.15;
}

.ait-modern-site .ait-hot-banner-copy p {
    margin-top: 4px;
}

.ait-modern-site .ait-hot-banner-meta span:not(:last-child)::after {
    content: " •";
}

.ait-modern-site .ait-hot-banner-price small {
    font-size: 0.62em;
    font-weight: 700;
}

/* Desktop: sei campi sulla prima riga; pulsante sotto Prezzo. */

@media (min-width: 1280px) {

.ait-modern-site .ait-home-search-hot-layout #search .ait-search-grid-v2 {
    grid-template-columns: minmax(0, 1.34fr)
            minmax(0, 0.9fr)
            minmax(0, 0.98fr)
            minmax(0, 1.18fr)
            minmax(0, 1.28fr)
            minmax(0, 0.94fr) !important;
    grid-template-rows: auto auto !important;
}

.ait-modern-site .ait-home-search-hot-layout #search .ait-search-grid-v2 .ait-search-field {
    grid-row: 1 !important;
}

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit {
    grid-column: 6 !important;
    grid-row: 2 !important;
    min-height: clamp(48px, 3.3vw, 54px) !important;
    height: auto !important;
}
}

@media (max-width: 1279px) {

.ait-modern-site .ait-home-search-hot-layout {
    grid-template-columns: minmax(0, 1fr);
    margin-top: clamp(-52px, -4vw, -34px);
}

.ait-modern-site .ait-home-hot-column {
    min-height: 260px;
}
}

@media (max-width: 620px) {

.ait-modern-site .ait-hot-banner-media {
    min-height: 180px;
}
}

.ait-modern-site .ait-home-hot-column {
    display: flex;
    min-width: 0;
    align-items: flex-start;
}

.ait-modern-site .ait-hot-banner {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 0;
    padding: clamp(14px, 1.1vw, 18px);
    overflow: hidden;
    border-radius: 14px;
    color: #ffffff;
    background: linear-gradient(145deg, #071d40 0%, #001634 100%);
    box-shadow: 0 14px 34px rgba(6, 26, 58, 0.18);
}

.ait-modern-site .ait-hot-banner-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: clamp(10px, 0.8vw, 14px);
}

.ait-modern-site .ait-hot-banner-card {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(92px, 0.8fr) minmax(0, 1.2fr);
    gap: clamp(10px, 0.9vw, 14px);
    align-items: stretch;
}

.ait-modern-site .ait-hot-banner-media {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: clamp(104px, 8vw, 126px);
    overflow: hidden;
    border-radius: 8px;
}

.ait-modern-site .ait-hot-banner-media img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

.ait-modern-site .ait-hot-banner-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: flex-start;
}

.ait-modern-site .ait-hot-banner-heading {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}

.ait-modern-site .ait-hot-banner-heading h3 {
    min-width: 0;
    margin: 0;
    color: #ffffff;
    font-size: clamp(0.82rem, 0.22vw + 0.78rem, 0.96rem);
    line-height: 1.2;
}

.ait-modern-site .ait-hot-banner-heading span {
    flex: 0 0 auto;
    color: rgba(255, 255, 255, 0.72);
    font-size: clamp(0.58rem, 0.08vw + 0.56rem, 0.66rem);
    white-space: nowrap;
}

.ait-modern-site .ait-hot-banner-copy p {
    margin: 4px 0 0;
    overflow: visible;
    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(0.66rem, 0.11vw + 0.64rem, 0.74rem);
    line-height: 1.25;
    text-overflow: clip;
    white-space: normal;
}

.ait-modern-site .ait-hot-banner-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 6px;
    margin-top: 8px;
    color: rgba(255, 255, 255, 0.88);
    font-size: clamp(0.6rem, 0.08vw + 0.58rem, 0.68rem);
    line-height: 1.2;
}

.ait-modern-site .ait-hot-banner-price {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    width: fit-content;
    margin-top: auto;
    padding-top: 9px;
    color: #ff1738;
    font-size: clamp(1rem, 0.42vw + 0.9rem, 1.22rem);
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
}

@media (max-width: 620px) {

.ait-modern-site .ait-hot-banner-card {
    grid-template-columns: 1fr;
}
}

/* ======================================================================
   VARIAZIONE 016 — SPOSTAMENTO ORIZZONTALE DEL SOLO HOT BANNER
   Nessuna modifica alla Search, alla griglia o agli altri componenti.
   ====================================================================== */

@media (min-width: 1280px) {

.ait-modern-site .ait-home-hot-column > .ait-hot-banner {
    width: 110%;
    max-width: 110%;
    margin-left: -11%;
    transform: translateX(-20px);
}

.ait-modern-site .ait-home-search-hot-layout #search.box-aside {
    padding-bottom: clamp(7px, 0.55vw, 10px) !important;
}

.ait-modern-site .ait-home-search-hot-layout #search .ait-search-grid-v2 {
    row-gap: clamp(5px, 0.42vw, 7px) !important;
}

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit {
    grid-column: 5 / 7 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    width: 100% !important;
    min-height: clamp(38px, 2.55vw, 42px) !important;
    height: clamp(38px, 2.55vw, 42px) !important;
    padding: 6px clamp(18px, 1.45vw, 26px) !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, #ff3049 0%, #f20d2d 56%, #d90021 100%) !important;
    box-shadow: 0 5px 0 #a9001a,
            0 9px 16px rgba(105, 0, 20, 0.24) !important;
    color: #ffffff !important;
    font-size: clamp(0.78rem, 0.15vw + 0.74rem, 0.92rem) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    transform: translateY(-2px) !important;
    transition: transform 180ms ease,
            box-shadow 180ms ease,
            filter 180ms ease !important;
    cursor: pointer !important;
}

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 8px 0 #a9001a,
            0 14px 24px rgba(105, 0, 20, 0.3) !important;
    filter: brightness(1.07) saturate(1.06) !important;
}

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit:active {
    transform: translateY(3px) !important;
    box-shadow: 0 2px 0 #a9001a,
            0 5px 10px rgba(105, 0, 20, 0.2) !important;
    filter: brightness(0.98) !important;
}

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit:focus-visible {
    outline: 3px solid rgba(242, 13, 45, 0.28) !important;
    outline-offset: 4px !important;
}
}

@media (prefers-reduced-motion: reduce) {

.ait-modern-site .ait-home-search-hot-layout #search #search_bt.ait-search-submit {
    transition-duration: 1ms !important;
}
}

/* ======================================================================
   VARIAZIONE 028 — IMMOBILI IN EVIDENZA ALLINEATI AL RIFERIMENTO
   Scope rigoroso: sola sezione annunci della homepage moderna.
   ====================================================================== */

.ait-modern-site .ait-home-showcase-main {
    min-width: 0;
    overflow: visible;
}

.ait-modern-site .ait-home-showcase-main #middle,
.ait-modern-site .ait-home-showcase-main #middle .box-content,
.ait-modern-site .ait-home-showcase-main #content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.ait-modern-site .ait-home-showcase-main #content > div:first-child[style],
.ait-modern-site .ait-home-showcase-main #content > br.clear {
    display: none !important;
}

.ait-modern-site .ait-home-showcase-main #content {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(12px, 1.15vw, 18px) !important;
    align-items: stretch;
}

.ait-modern-site .ait-home-showcase-main #content > .content-box {
    position: relative;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    flex-direction: column;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #dfe6ef;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(6, 26, 58, 0.08);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.ait-modern-site .ait-home-showcase-main #content > .content-box:nth-of-type(n + 4) {
    display: none !important;
}

.ait-modern-site .ait-home-showcase-main #content > .content-box:hover {
    box-shadow: 0 12px 25px rgba(6, 26, 58, 0.13);
    transform: translateY(-2px);
}

.ait-modern-site .ait-home-showcase-main .content-box > h2.rounded-top {
    position: absolute !important;
    z-index: 6;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none;
}

.ait-modern-site .ait-home-showcase-main .ait-card-location {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-flex;
    max-width: calc(100% - 64px);
    min-height: 28px;
    align-items: center;
    padding: 6px 10px;
    overflow: hidden;
    border-radius: 7px;
    color: #ffffff !important;
    background: #061a3a;
    box-shadow: 0 5px 12px rgba(6, 26, 58, 0.24);
    font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.72rem) !important;
    font-weight: 750;
    line-height: 1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ait-modern-site .ait-home-showcase-main .ait-card-price {
    position: absolute;
    bottom: 45px;
    left: 10px;
    display: inline-flex;
    min-height: 35px;
    align-items: baseline;
    gap: 4px;
    padding: 8px 11px;
    border-radius: 7px;
    color: #ffffff !important;
    background: #061a3a;
    box-shadow: 0 6px 15px rgba(6, 26, 58, 0.26);
    font-size: clamp(0.86rem, 0.16vw + 0.83rem, 0.98rem) !important;
    font-weight: 850;
    line-height: 1;
}

.ait-modern-site .ait-home-showcase-main .ait-card-price-value,
.ait-modern-site .ait-home-showcase-main .ait-card-price-value font {
    color: inherit !important;
    font: inherit !important;
}

.ait-modern-site .ait-home-showcase-main .ait-card-category,
.ait-modern-site .ait-home-showcase-main .ait-card-id,
.ait-modern-site .ait-home-showcase-main .ait-card-availability,
.ait-modern-site .ait-home-showcase-main .ait-card-country {
    display: none !important;
}

.ait-modern-site .ait-home-showcase-main .content-box::after {
    position: absolute;
    z-index: 7;
    top: 10px;
    right: 10px;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid rgba(6, 26, 58, 0.14);
    border-radius: 7px;
    color: #061a3a;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 4px 10px rgba(6, 26, 58, 0.1);
    content: "♡";
    font-size: 1.15rem;
    line-height: 1;
    pointer-events: none;
}

.ait-modern-site .ait-home-showcase-main .object-container {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1;
    flex-direction: column;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.ait-modern-site .ait-home-showcase-main .object-container > a:first-child {
    position: absolute;
    z-index: 5;
    inset: 0;
    display: block;
}

.ait-modern-site .ait-home-showcase-main .object-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: clamp(132px, 10.8vw, 166px) !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #e8edf4;
}

.ait-modern-site .ait-home-showcase-main .object-image::after {
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    background: linear-gradient(to top, rgba(6, 26, 58, 0.24), transparent);
    content: "";
    pointer-events: none;
}

.ait-modern-site .ait-home-showcase-main .object-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    object-fit: cover;
    object-position: center;
    transition: transform 420ms ease;
}

.ait-modern-site .ait-home-showcase-main .content-box:hover .object-image img {
    transform: scale(1.025);
}

.ait-modern-site .ait-home-showcase-main .object-data {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 0 !important;
    background: #ffffff !important;
}

.ait-modern-site .ait-home-showcase-main .object-data ul {
    display: flex !important;
    width: 100%;
    height: 44px;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.ait-modern-site .ait-home-showcase-main .object-data li {
    display: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    color: #26364d !important;
    background: transparent !important;
    font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.72rem) !important;
    font-weight: 650;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(3),
.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(4),
.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(5) {
    display: block !important;
    flex: 1 1 0;
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(4) {
    order: 1;
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(3) {
    order: 2;
    text-align: center;
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(5) {
    order: 3;
    text-align: right;
}

.ait-modern-site .ait-home-showcase-main .object-data li::before {
    display: inline-block;
    margin-right: 4px;
    color: #061a3a;
    font-weight: 850;
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(3)::before {
    content: "⌂";
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(4)::before {
    content: "↗";
}

.ait-modern-site .ait-home-showcase-main .object-data li:nth-child(5)::before {
    content: "▥";
}

.ait-modern-site .ait-home-showcase-main .object-intro,
.ait-modern-site .ait-home-showcase-main .object-container > br.clear {
    display: none !important;
}

@media (max-width: 980px) {

.ait-modern-site .ait-home-showcase-main #content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ait-modern-site .ait-home-showcase-main #content > .content-box:nth-of-type(3) {
    display: none !important;
}
}

@media (max-width: 620px) {

.ait-modern-site .ait-home-showcase-main #content {
    grid-template-columns: 1fr !important;
}

.ait-modern-site .ait-home-showcase-main #content > .content-box:nth-of-type(n + 2) {
    display: none !important;
}

.ait-modern-site .ait-home-showcase-main .object-image {
    height: clamp(180px, 54vw, 245px) !important;
}
}

@media (prefers-reduced-motion: reduce) {

.ait-modern-site .ait-home-showcase-main #content > .content-box,
    .ait-modern-site .ait-home-showcase-main .object-image img {
    transition-duration: 1ms !important;
}
}

/* ======================================================================
   VARIAZIONE 030 — CAROSELLO ANNUNCI HOMEPAGE CON LOGICA STORICA
   Scope: banner Google e quattro annunci generati da objekti.php.
   ====================================================================== */

.ait-modern-site .ait-home-showcase-main #content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}

.ait-modern-site .ait-home-showcase-main .ait-google-ad {
    width: 100%;
    max-width: 100%;
    margin: 0 0 clamp(14px, 1.5vw, 20px);
    padding: 0;
    overflow: hidden;
    line-height: 0;
    text-align: center;
}

.ait-modern-site .ait-home-showcase-main .ait-google-ad .adsbygoogle {
    width: 100% !important;
    max-width: 710px !important;
    height: auto;
    margin-inline: auto !important;
}

.ait-modern-site .ait-home-listings-carousel {
    position: relative;
    width: 100%;
    min-width: 0;
    padding-inline: 1px;
}

.ait-modern-site .ait-home-listings-track {
    display: grid !important;
    width: 100%;
    min-width: 0;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (2 * clamp(12px, 1.15vw, 18px))) / 3);
    gap: clamp(12px, 1.15vw, 18px);
    align-items: stretch;
    margin: 0;
    padding: 0 1px 8px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
}

.ait-modern-site .ait-home-listings-track::-webkit-scrollbar {
    display: none;
}

.ait-modern-site .ait-home-listings-track > .content-box {
    position: relative;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    flex-direction: column;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #dfe6ef;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(6, 26, 58, 0.08);
    scroll-snap-align: start;
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.ait-modern-site .ait-home-listings-track > .content-box:nth-of-type(n) {
    display: flex !important;
}

.ait-modern-site .ait-home-listings-track > .content-box:hover {
    box-shadow: 0 12px 25px rgba(6, 26, 58, 0.13);
    transform: translateY(-2px);
}

.ait-modern-site .ait-home-listings-track .content-box > h2.rounded-top {
    position: absolute !important;
    z-index: 6;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none;
}

.ait-modern-site .ait-home-listings-track .ait-card-location {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-flex;
    max-width: calc(100% - 64px);
    min-height: 28px;
    align-items: center;
    padding: 6px 10px;
    overflow: hidden;
    border-radius: 7px;
    color: #ffffff !important;
    background: #061a3a;
    box-shadow: 0 5px 12px rgba(6, 26, 58, 0.24);
    font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.72rem) !important;
    font-weight: 750;
    line-height: 1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ait-modern-site .ait-home-listings-track .ait-card-price {
    position: absolute;
    bottom: 45px;
    left: 10px;
    display: inline-flex;
    min-height: 35px;
    align-items: baseline;
    gap: 4px;
    padding: 8px 11px;
    border-radius: 7px;
    color: #ffffff !important;
    background: #061a3a;
    box-shadow: 0 6px 15px rgba(6, 26, 58, 0.26);
    font-size: clamp(0.86rem, 0.16vw + 0.83rem, 0.98rem) !important;
    font-weight: 850;
    line-height: 1;
}

.ait-modern-site .ait-home-listings-track .ait-card-price-value,
.ait-modern-site .ait-home-listings-track .ait-card-price-value font {
    color: inherit !important;
    font: inherit !important;
}

.ait-modern-site .ait-home-listings-track .ait-card-category,
.ait-modern-site .ait-home-listings-track .ait-card-id,
.ait-modern-site .ait-home-listings-track .ait-card-availability,
.ait-modern-site .ait-home-listings-track .ait-card-country {
    display: none !important;
}

.ait-modern-site .ait-home-listings-track .content-box::after {
    position: absolute;
    z-index: 7;
    top: 10px;
    right: 10px;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid rgba(6, 26, 58, 0.14);
    border-radius: 7px;
    color: #061a3a;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 4px 10px rgba(6, 26, 58, 0.1);
    content: "♡";
    font-size: 1.15rem;
    line-height: 1;
    pointer-events: none;
}

.ait-modern-site .ait-home-listings-track .object-container {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1;
    flex-direction: column;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.ait-modern-site .ait-home-listings-track .object-container > a:first-child {
    position: absolute;
    z-index: 5;
    inset: 0;
    display: block;
}

.ait-modern-site .ait-home-listings-track .object-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: clamp(132px, 10.8vw, 166px) !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #e8edf4;
}

.ait-modern-site .ait-home-listings-track .object-image::after {
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    background: linear-gradient(to top, rgba(6, 26, 58, 0.24), transparent);
    content: "";
    pointer-events: none;
}

.ait-modern-site .ait-home-listings-track .object-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    object-fit: cover;
    object-position: center;
    transition: transform 420ms ease;
}

.ait-modern-site .ait-home-listings-track .content-box:hover .object-image img {
    transform: scale(1.025);
}

.ait-modern-site .ait-home-listings-track .object-data {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 0 !important;
    background: #ffffff !important;
}

.ait-modern-site .ait-home-listings-track .object-data ul {
    display: flex !important;
    width: 100%;
    height: 44px;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.ait-modern-site .ait-home-listings-track .object-data li {
    display: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    color: #26364d !important;
    background: transparent !important;
    font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.72rem) !important;
    font-weight: 650;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(3),
.ait-modern-site .ait-home-listings-track .object-data li:nth-child(4),
.ait-modern-site .ait-home-listings-track .object-data li:nth-child(5) {
    display: block !important;
    flex: 1 1 0;
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(4) {
    order: 1;
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(3) {
    order: 2;
    text-align: center;
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(5) {
    order: 3;
    text-align: right;
}

.ait-modern-site .ait-home-listings-track .object-data li::before {
    display: inline-block;
    margin-right: 4px;
    color: #061a3a;
    font-weight: 850;
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(3)::before {
    content: "⌂";
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(4)::before {
    content: "↗";
}

.ait-modern-site .ait-home-listings-track .object-data li:nth-child(5)::before {
    content: "▥";
}

.ait-modern-site .ait-home-listings-track .object-intro,
.ait-modern-site .ait-home-listings-track .object-container > br.clear {
    display: none !important;
}

.ait-modern-site .ait-home-listings-arrow {
    position: absolute;
    z-index: 12;
    top: 50%;
    display: grid;
    width: clamp(34px, 3vw, 42px);
    height: clamp(34px, 3vw, 42px);
    place-items: center;
    padding: 0;
    border: 1px solid rgba(6, 26, 58, 0.12);
    border-radius: 50%;
    color: #061a3a;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 8px 20px rgba(6, 26, 58, 0.14);
    font: inherit;
    font-size: 1.65rem;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
    transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

.ait-modern-site .ait-home-listings-arrow:hover {
    box-shadow: 0 11px 24px rgba(6, 26, 58, 0.2);
    transform: translateY(-50%) scale(1.05);
}

.ait-modern-site .ait-home-listings-arrow:disabled {
    opacity: 0.34;
    cursor: default;
}

.ait-modern-site .ait-home-listings-arrow-prev {
    left: calc(clamp(34px, 3vw, 42px) / -2);
}

.ait-modern-site .ait-home-listings-arrow-next {
    right: calc(clamp(34px, 3vw, 42px) / -2);
}

@media (max-width: 980px) {

.ait-modern-site .ait-home-listings-track {
    grid-auto-columns: calc((100% - clamp(12px, 1.15vw, 18px)) / 2);
}
}

@media (max-width: 620px) {

.ait-modern-site .ait-home-listings-track {
    grid-auto-columns: min(88%, 340px);
}

.ait-modern-site .ait-home-listings-track .object-image {
    height: clamp(180px, 54vw, 245px) !important;
}

.ait-modern-site .ait-home-listings-arrow {
    display: none;
}
}

@media (prefers-reduced-motion: reduce) {

.ait-modern-site .ait-home-listings-track {
    scroll-behavior: auto;
}

.ait-modern-site .ait-home-listings-track > .content-box,
    .ait-modern-site .ait-home-listings-track .object-image img,
    .ait-modern-site .ait-home-listings-arrow {
    transition-duration: 1ms !important;
}
}

/* ======================================================================
   HOMEPAGE — ULTIMI 3 IMMOBILI, GOOGLE ORIZZONTALE, 2 SCHEDE COMPLETE
   ====================================================================== */

.ait-modern-site .ait-home-showcase-main .ait-google-ad-920 {
    display: flex;
    width: min(100%, 970px);
    height: 90px;
    align-items: center;
    justify-content: center;
    margin: clamp(22px, 2.4vw, 34px) auto;
    overflow: hidden;
    line-height: 0;
}

.ait-modern-site .ait-home-showcase-main .ait-google-ad-920 .adsbygoogle {
    display: inline-block !important;
    width: 970px !important;
    height: 90px !important;
    min-width: 970px !important;
    min-height: 90px !important;
}

.ait-modern-site .ait-home-full-listings {
    display: grid;
    width: 100%;
    min-width: 0;
    gap: clamp(18px, 2vw, 28px);
}

.ait-modern-site .ait-home-full-card {
    position: relative;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(6, 26, 58, 0.12);
    border-radius: clamp(14px, 1.2vw, 18px);
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(6, 26, 58, 0.09);
}

.ait-modern-site .ait-home-full-card-link {
    position: absolute;
    z-index: 5;
    inset: 0;
}

.ait-modern-site .ait-home-full-card-header {
    position: relative;
    z-index: 2;
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: clamp(14px, 2vw, 28px);
    padding: clamp(13px, 1.4vw, 18px) clamp(16px, 2vw, 28px);
    color: #ffffff;
    background: linear-gradient(90deg, #061a3a, #0a2f63);
}

.ait-modern-site .ait-home-full-card-title {
    display: flex;
    min-width: 0;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px clamp(10px, 1.3vw, 18px);
}

.ait-modern-site .ait-home-full-card-title strong {
    font-size: clamp(1rem, 0.45vw + 0.9rem, 1.28rem);
    font-weight: 900;
    text-transform: uppercase;
}

.ait-modern-site .ait-home-full-card-title > span:last-child {
    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(0.75rem, 0.16vw + 0.72rem, 0.86rem);
    font-weight: 700;
}

.ait-modern-site .ait-home-full-card-price,
.ait-modern-site .ait-home-full-card-price font {
    color: #ffd400 !important;
    font: inherit !important;
    font-size: clamp(1.05rem, 0.52vw + 0.94rem, 1.42rem) !important;
    font-weight: 900 !important;
}

.ait-modern-site .ait-home-full-card-id {
    flex: 0 0 auto;
    color: #ff3150;
    font-size: clamp(0.9rem, 0.26vw + 0.84rem, 1.08rem);
    font-weight: 900;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-body {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(220px, 0.82fr) minmax(220px, 0.78fr) minmax(0, 1.4fr);
}

.ait-modern-site .ait-home-full-card-media {
    position: relative;
    min-width: 0;
    min-height: clamp(220px, 16vw, 270px);
    margin: 0;
    overflow: hidden;
    background: #e8edf4;
}

.ait-modern-site .ait-home-full-card-media img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    object-position: center;
    transition: transform 350ms ease;
}

.ait-modern-site .ait-home-full-card:hover .ait-home-full-card-media img {
    transform: scale(1.025);
}

.ait-modern-site .ait-home-full-card-data {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 0;
    margin: 0;
    padding: clamp(18px, 2vw, 26px);
    border-right: 1px solid #e4eaf2;
    background: #f7f9fc;
}

.ait-modern-site .ait-home-full-card-data div {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(82px, auto) minmax(0, 1fr);
    gap: 10px;
    padding: 7px 0;
    border-bottom: 1px solid #e3e9f1;
}

.ait-modern-site .ait-home-full-card-data div:last-child {
    border-bottom: 0;
}

.ait-modern-site .ait-home-full-card-data dt,
.ait-modern-site .ait-home-full-card-data dd {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
}

.ait-modern-site .ait-home-full-card-data dt {
    color: #061a3a;
    font-size: clamp(0.73rem, 0.14vw + 0.7rem, 0.82rem);
    font-weight: 850;
}

.ait-modern-site .ait-home-full-card-data dd {
    color: #3f5068;
    font-size: clamp(0.73rem, 0.14vw + 0.7rem, 0.84rem);
    font-weight: 650;
}

.ait-modern-site .ait-home-full-card-description {
    min-width: 0;
    padding: clamp(20px, 2.2vw, 30px);
    color: #34445c;
    background: #ffffff;
    font-size: clamp(0.82rem, 0.18vw + 0.78rem, 0.94rem);
    line-height: 1.7;
    overflow-wrap: anywhere;
}

@media (max-width: 1100px) {
    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: minmax(240px, 0.9fr) minmax(0, 1.1fr);
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: 1 / -1;
        border-top: 1px solid #e4eaf2;
    }
}

@media (max-width: 700px) {
    .ait-modern-site .ait-home-showcase-main .ait-google-ad-920 {
        width: 100%;
    }


    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-home-full-card-media {
        min-height: clamp(230px, 62vw, 340px);
    }

    .ait-modern-site .ait-home-full-card-data {
        border-right: 0;
        border-bottom: 1px solid #e4eaf2;
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: auto;
        border-top: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ait-modern-site .ait-home-full-card-media img {
        transition-duration: 1ms;
    }
}

/* ======================================================================
   VARIAZIONE 018 — CARD ULTIMI IMMOBILI E SCHEDE COMPLETE COMPATTE
   Allineamento al mockup approvato e alle proporzioni dell'annuncio storico.
   ====================================================================== */

.ait-modern-site .ait-home-listings-track .ait-card-price {
    display: inline-flex !important;
    min-width: 0;
    align-items: baseline;
    gap: 0.28em;
    white-space: nowrap;
}

.ait-modern-site .ait-home-listings-track .ait-card-price-currency,
.ait-modern-site .ait-home-listings-track .ait-card-price-value,
.ait-modern-site .ait-home-listings-track .ait-card-price-value font,
.ait-modern-site .ait-home-listings-track .ait-card-price-period {
    color: #ffffff !important;
    font: inherit !important;
    line-height: 1 !important;
}

.ait-modern-site .ait-home-listings-track .ait-card-price-currency {
    font-size: clamp(0.76rem, 0.16vw + 0.72rem, 0.88rem) !important;
    font-weight: 800 !important;
}

.ait-modern-site .ait-home-listings-track .ait-card-price-value,
.ait-modern-site .ait-home-listings-track .ait-card-price-value font {
    font-size: clamp(0.98rem, 0.28vw + 0.92rem, 1.16rem) !important;
    font-weight: 900 !important;
}

.ait-modern-site .ait-home-listings-track .ait-card-price-period {
    font-size: clamp(0.58rem, 0.1vw + 0.56rem, 0.67rem) !important;
    font-weight: 750 !important;
}

.ait-modern-site .ait-home-full-listings {
    gap: clamp(12px, 1.25vw, 18px);
}

.ait-modern-site .ait-home-full-card {
    border-radius: clamp(8px, 0.65vw, 11px);
    box-shadow: 0 8px 20px rgba(6, 26, 58, 0.08);
}

.ait-modern-site .ait-home-full-card-header {
    min-height: clamp(34px, 2.4vw, 40px);
    padding: clamp(5px, 0.45vw, 7px) clamp(12px, 1.2vw, 18px);
    gap: clamp(10px, 1vw, 18px);
    background: linear-gradient(180deg, #555a63 0%, #252a32 100%);
}

.ait-modern-site .ait-home-full-card-title {
    gap: 5px clamp(8px, 0.8vw, 13px);
}

.ait-modern-site .ait-home-full-card-title strong {
    font-size: clamp(0.82rem, 0.2vw + 0.78rem, 0.96rem);
    text-transform: none;
}

.ait-modern-site .ait-home-full-card-title > span:last-child {
    font-size: clamp(0.68rem, 0.12vw + 0.65rem, 0.76rem);
}

.ait-modern-site .ait-home-full-card-price,
.ait-modern-site .ait-home-full-card-price font {
    display: inline-flex;
    align-items: baseline;
    gap: 0.22em;
    color: #e8ff00 !important;
    font: inherit !important;
    font-size: clamp(0.9rem, 0.22vw + 0.85rem, 1.04rem) !important;
    font-weight: 900 !important;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-price small {
    color: #ffffff;
    font-size: 0.64em;
    font-weight: 750;
}

.ait-modern-site .ait-home-full-card-id {
    color: #ff0d55;
    font-size: clamp(0.8rem, 0.18vw + 0.76rem, 0.92rem);
}

.ait-modern-site .ait-home-full-card-body {
    min-height: clamp(142px, 10.5vw, 158px);
    grid-template-columns:
        minmax(150px, clamp(170px, 18vw, 205px))
        minmax(200px, clamp(215px, 22vw, 250px))
        minmax(0, 1fr);
}

.ait-modern-site .ait-home-full-card-media {
    min-height: clamp(142px, 10.5vw, 158px);
    height: clamp(142px, 10.5vw, 158px);
}

.ait-modern-site .ait-home-full-card-media img {
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
}

.ait-modern-site .ait-home-full-card-data {
    grid-template-columns: 1fr;
    align-content: center;
    padding: clamp(8px, 0.8vw, 12px) clamp(12px, 1.15vw, 17px);
}

.ait-modern-site .ait-home-full-card-data div {
    display: flex;
    min-width: 0;
    align-items: baseline;
    gap: 5px;
    padding: 1px 0;
    border-bottom: 0;
}

.ait-modern-site .ait-home-full-card-data dt,
.ait-modern-site .ait-home-full-card-data dd {
    font-size: clamp(0.67rem, 0.1vw + 0.65rem, 0.75rem);
    line-height: 1.3;
}

.ait-modern-site .ait-home-full-card-data dt {
    flex: 0 0 auto;
}

.ait-modern-site .ait-home-full-card-data dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-description {
    display: -webkit-box;
    min-width: 0;
    max-height: clamp(142px, 10.5vw, 158px);
    padding: clamp(10px, 1vw, 14px) clamp(14px, 1.35vw, 20px);
    overflow: hidden;
    color: #26364d;
    font-size: clamp(0.72rem, 0.12vw + 0.69rem, 0.81rem);
    line-height: 1.48;
    text-align: justify;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
}

@media (max-width: 900px) {
    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: minmax(170px, 0.72fr) minmax(210px, 0.9fr) minmax(0, 1.38fr);
    }
}

@media (max-width: 720px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: center;
        flex-direction: row;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: minmax(130px, 0.72fr) minmax(0, 1.28fr);
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: 1 / -1;
        max-height: none;
        border-top: 1px solid #e4eaf2;
        -webkit-line-clamp: 5;
    }
}

@media (max-width: 520px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-home-full-card-media {
        min-height: clamp(180px, 58vw, 250px);
        height: clamp(180px, 58vw, 250px);
    }

    .ait-modern-site .ait-home-full-card-data {
        border-right: 0;
        border-bottom: 1px solid #e4eaf2;
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: auto;
    }
}

/* ======================================================================
   VARIAZIONE 019 — CARD SUPERIORI NON ESPANDIBILI E TESTATA COMPLETA
   Markup dedicato per gli ultimi tre immobili e ripristino dei dati
   superiori delle due schede complete. Nessuna logica dati modificata.
   ====================================================================== */

.ait-modern-site .ait-home-listings-track > .ait-home-mini-card {
    position: relative;
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #dfe6ef;
    border-radius: clamp(9px, 0.7vw, 12px);
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(6, 26, 58, 0.08);
    scroll-snap-align: start;
    transition: box-shadow 180ms ease, transform 180ms ease;
}

.ait-modern-site .ait-home-listings-track > .ait-home-mini-card:hover {
    box-shadow: 0 12px 25px rgba(6, 26, 58, 0.13);
    transform: translateY(-2px);
}

.ait-modern-site .ait-home-mini-card-link {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: block;
}

.ait-modern-site .ait-home-mini-card-media {
    position: relative;
    width: 100%;
    min-width: 0;
    height: clamp(142px, 11vw, 174px);
    margin: 0;
    overflow: hidden;
    background: #e8edf4;
}

.ait-modern-site .ait-home-mini-card-media::after {
    position: absolute;
    inset: auto 0 0;
    height: 38%;
    background: linear-gradient(to top, rgba(6, 26, 58, 0.36), transparent);
    content: "";
    pointer-events: none;
}

.ait-modern-site .ait-home-mini-card-media img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 420ms ease;
}

.ait-modern-site .ait-home-mini-card:hover .ait-home-mini-card-media img {
    transform: scale(1.025);
}

.ait-modern-site .ait-home-mini-card-location,
.ait-modern-site .ait-home-mini-card-id,
.ait-modern-site .ait-home-mini-card-price {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    color: #ffffff;
    background: #061a3a;
    box-shadow: 0 5px 12px rgba(6, 26, 58, 0.24);
    font-weight: 850;
    line-height: 1;
}

.ait-modern-site .ait-home-mini-card-location {
    top: 10px;
    left: 10px;
    max-width: calc(100% - 106px);
    min-height: 28px;
    padding: 6px 10px;
    overflow: hidden;
    border-radius: 7px;
    font-size: clamp(0.63rem, 0.1vw + 0.61rem, 0.72rem);
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ait-modern-site .ait-home-mini-card-id {
    top: 10px;
    right: 10px;
    min-height: 28px;
    padding: 6px 9px;
    border-radius: 7px;
    color: #ff3150;
    background: rgba(6, 26, 58, 0.96);
    font-size: clamp(0.61rem, 0.09vw + 0.59rem, 0.69rem);
    white-space: nowrap;
}

.ait-modern-site .ait-home-mini-card-price {
    bottom: 10px;
    left: 10px;
    min-height: 36px;
    gap: 0.28em;
    padding: 8px 11px;
    border-radius: 7px;
    white-space: nowrap;
}

.ait-modern-site .ait-home-mini-card-price strong {
    font-size: clamp(0.98rem, 0.28vw + 0.92rem, 1.16rem);
    font-weight: 900;
}

.ait-modern-site .ait-home-mini-card-price small,
.ait-modern-site .ait-home-mini-card-price > span {
    font-size: clamp(0.58rem, 0.1vw + 0.56rem, 0.67rem);
    font-weight: 800;
}

.ait-modern-site .ait-home-mini-card-address {
    display: flex;
    min-width: 0;
    min-height: 38px;
    align-items: center;
    gap: 5px;
    padding: 8px 11px 6px;
    overflow: hidden;
    color: #061a3a;
    border-bottom: 1px solid #e7ecf3;
    font-size: clamp(0.65rem, 0.1vw + 0.63rem, 0.74rem);
    font-weight: 750;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-home-mini-card-address span {
    flex: 0 0 auto;
    color: #ed102d;
    font-size: 0.9rem;
}

.ait-modern-site .ait-home-mini-card-facts {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(5px, 0.55vw, 9px);
    margin: 0;
    padding: 9px 11px 10px;
    list-style: none;
}

.ait-modern-site .ait-home-mini-card-facts li {
    min-width: 0;
    overflow: hidden;
    color: #26364d;
    font-size: clamp(0.61rem, 0.09vw + 0.59rem, 0.69rem);
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-home-mini-card-facts li span {
    margin-right: 4px;
    color: #061a3a;
    font-weight: 900;
}

.ait-modern-site .ait-home-full-card-header {
    min-width: 0;
}

.ait-modern-site .ait-home-full-card-title {
    flex: 1 1 auto;
}

.ait-modern-site .ait-home-full-card-category {
    color: #ffffff !important;
    font-size: clamp(0.68rem, 0.12vw + 0.65rem, 0.76rem) !important;
    font-weight: 750 !important;
}

.ait-modern-site .ait-home-full-card-header-meta {
    display: flex;
    min-width: 0;
    flex: 0 1 auto;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px clamp(9px, 0.9vw, 14px);
}

.ait-modern-site .ait-home-full-card-availability,
.ait-modern-site .ait-home-full-card-country {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    color: rgba(255, 255, 255, 0.94);
    font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.72rem);
    font-weight: 750;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-country img {
    display: block;
    width: auto;
    max-width: 22px;
    height: auto;
}

.ait-modern-site .ait-home-full-card-id {
    white-space: nowrap;
}

@media (max-width: 900px) {
    .ait-modern-site .ait-home-mini-card-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ait-modern-site .ait-home-mini-card-facts li:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        width: 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 620px) {
    .ait-modern-site .ait-home-mini-card-media {
        height: clamp(190px, 56vw, 250px);
    }

    .ait-modern-site .ait-home-mini-card-facts {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ait-modern-site .ait-home-mini-card-facts li:last-child {
        grid-column: auto;
    }
}

@media (max-width: 420px) {
    .ait-modern-site .ait-home-mini-card-location {
        max-width: calc(100% - 94px);
    }

    .ait-modern-site .ait-home-mini-card-facts {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-home-mini-card-facts li:last-child {
        grid-column: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ait-modern-site .ait-home-listings-track > .ait-home-mini-card,
    .ait-modern-site .ait-home-mini-card-media img {
        transition-duration: 1ms !important;
    }
}

/* Variazione 020 — schede complete fedeli alla struttura storica. */
.ait-modern-site .ait-home-full-listings {
    display: grid;
    gap: clamp(12px, 1.2vw, 16px);
    width: 100%;
    min-width: 0;
}

.ait-modern-site .ait-home-full-card {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #cfd5dd;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 5px 14px rgba(6, 26, 58, 0.08);
}

.ait-modern-site .ait-home-full-card-header {
    display: flex;
    min-width: 0;
    min-height: 34px;
    align-items: center;
    justify-content: space-between;
    gap: clamp(10px, 1vw, 16px);
    padding: 5px clamp(12px, 1.4vw, 18px);
    color: #ffffff;
    background: linear-gradient(180deg, #4d535c 0%, #242a33 100%);
}

.ait-modern-site .ait-home-full-card-title {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
    gap: clamp(7px, 0.8vw, 12px);
    overflow: hidden;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-title > strong {
    overflow: hidden;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(0.78rem, 0.16vw + 0.75rem, 0.9rem);
    font-style: italic;
    text-overflow: ellipsis;
}

.ait-modern-site .ait-home-full-card-price {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: baseline;
    gap: 4px;
    color: #e9ff00 !important;
    font-size: clamp(0.8rem, 0.18vw + 0.77rem, 0.94rem) !important;
    font-weight: 900 !important;
}

.ait-modern-site .ait-home-full-card-price strong {
    color: inherit;
    font-size: 1.2em;
}

.ait-modern-site .ait-home-full-card-price small {
    color: #ffffff;
    font-size: 0.72em;
    font-weight: 800;
}

.ait-modern-site .ait-home-full-card-category {
    overflow: hidden;
    color: #ffffff !important;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(0.72rem, 0.12vw + 0.7rem, 0.82rem) !important;
    font-weight: 700 !important;
    text-overflow: ellipsis;
}

.ait-modern-site .ait-home-full-card-header-meta {
    display: flex;
    min-width: max-content;
    flex: 0 0 auto;
    align-items: center;
    gap: clamp(8px, 0.8vw, 13px);
}

.ait-modern-site .ait-home-full-card-country,
.ait-modern-site .ait-home-full-card-id,
.ait-modern-site .ait-home-full-card-availability {
    color: #ffffff;
    font-size: clamp(0.68rem, 0.12vw + 0.66rem, 0.78rem);
    font-weight: 800;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-id {
    color: #ff1260;
    font-size: clamp(0.76rem, 0.16vw + 0.73rem, 0.9rem);
}

.ait-modern-site .ait-home-full-card-body {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(150px, 20%) minmax(190px, 25%) minmax(0, 1fr);
    min-height: clamp(138px, 11vw, 166px);
    background: #eef1f5;
}

.ait-modern-site .ait-home-full-card-media {
    min-width: 0;
    height: 100%;
    min-height: clamp(138px, 11vw, 166px);
    margin: 0;
    overflow: hidden;
    background: #dce2e9;
}

.ait-modern-site .ait-home-full-card-media img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

.ait-modern-site .ait-home-full-card-data {
    display: grid;
    align-content: center;
    min-width: 0;
    margin: 0;
    padding: clamp(10px, 1vw, 15px) clamp(13px, 1.4vw, 20px);
    border-right: 1px solid #d7dce3;
    background: #e8ebef;
}

.ait-modern-site .ait-home-full-card-data div {
    display: grid;
    min-width: 0;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 5px;
    padding: 0;
    border: 0;
}

.ait-modern-site .ait-home-full-card-data dt,
.ait-modern-site .ait-home-full-card-data dd {
    min-width: 0;
    margin: 0;
    color: #10213c;
    font-size: clamp(0.68rem, 0.11vw + 0.66rem, 0.78rem);
    line-height: 1.35;
}

.ait-modern-site .ait-home-full-card-data dt {
    font-weight: 850;
}

.ait-modern-site .ait-home-full-card-data dd {
    overflow-wrap: anywhere;
}

.ait-modern-site .ait-home-full-card-description {
    min-width: 0;
    max-height: clamp(138px, 11vw, 166px);
    padding: clamp(10px, 1vw, 15px) clamp(15px, 1.7vw, 24px);
    overflow: hidden;
    color: #172841;
    background: #f4f5f7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(0.7rem, 0.13vw + 0.67rem, 0.82rem);
    line-height: 1.38;
    text-align: justify;
}

@media (max-width: 850px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ait-modern-site .ait-home-full-card-title {
        width: 100%;
        flex-wrap: wrap;
        white-space: normal;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        width: 100%;
        min-width: 0;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: minmax(160px, 34%) minmax(0, 1fr);
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: 1 / -1;
        max-height: none;
        border-top: 1px solid #d7dce3;
    }
}

@media (max-width: 560px) {
    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-home-full-card-media {
        min-height: clamp(190px, 58vw, 260px);
    }

    .ait-modern-site .ait-home-full-card-data {
        border-right: 0;
        border-bottom: 1px solid #d7dce3;
    }
}

/* ======================================================================
   VARIAZIONE 021 — SFONDO HERO ALLINEATO AL RIFERIMENTO APPROVATO
   Intervento limitato all'immagine e agli overlay della Hero.
   Geometrie, dimensioni e posizionamento dei componenti restano invariati.
   ====================================================================== */

.ait-modern-site .ait-hero {
    background-color: #061f48;
    background-image:
        linear-gradient(
            90deg,
            rgba(2, 22, 51, 0.96) 0%,
            rgba(5, 43, 91, 0.82) 42%,
            rgba(5, 37, 78, 0.54) 70%,
            rgba(3, 24, 55, 0.68) 100%
        ),
        linear-gradient(
            180deg,
            rgba(3, 24, 54, 0.04) 0%,
            rgba(2, 20, 46, 0.12) 56%,
            rgba(2, 18, 42, 0.52) 100%
        ),
        url("/images/control_image_1.jpg");
    background-repeat: no-repeat;
    background-position: center center, center center, center 48%;
    background-size: cover, cover, cover;
}

.ait-modern-site .ait-hero::after {
    height: 36%;
    background: linear-gradient(
        180deg,
        rgba(2, 20, 46, 0) 0%,
        rgba(2, 20, 46, 0.18) 48%,
        rgba(2, 18, 42, 0.52) 100%
    );
}

@media (max-width: 940px) {
    .ait-modern-site .ait-hero {
        background-position: center center, center center, 46% 48%;
    }
}

@media (max-width: 660px) {
    .ait-modern-site .ait-hero {
        background-position: center center, center center, 43% 48%;
    }
}

/* ==========================================================================
   VARIAZIONE 027 — HERO DEFINITIVA CON TORINO 1.JPG
   Unica regola finale per fotografia e overlay della Hero.
   Nessuna geometria di Hero, Slider Banner, Search o Hot Banner è modificata.
   ========================================================================== */

.ait-modern-site .ait-hero {
    background-color: #06224a;
    background-image:
        linear-gradient(
            90deg,
            rgba(3, 24, 54, 0.72) 0%,
            rgba(5, 39, 81, 0.48) 42%,
            rgba(6, 29, 63, 0.18) 100%
        ),
        url("/images/walls/Torino%201.jpg");
    background-position:
        center center,
        center 36%;
    background-repeat:
        no-repeat,
        no-repeat;
    background-size:
        100% 100%,
        cover;
}

.ait-modern-site .ait-hero::after {
    height: 22%;
    background: linear-gradient(
        to bottom,
        rgba(2, 20, 46, 0),
        rgba(2, 20, 46, 0.10)
    );
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            center 34%;
    }
}

@media (max-width: 940px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            44% 32%;
    }
}

@media (max-width: 660px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            42% 30%;
    }
}


/* ==========================================================================
   VARIAZIONE 014-B — CORREZIONE HERO: MOLE, VISIBILITA E COLORI TITOLO
   Intervento esclusivamente visivo. Non modifica geometrie o componenti.
   ========================================================================== */

.ait-modern-site .ait-hero {
    background-image:
        linear-gradient(
            90deg,
            rgba(3, 24, 54, 0.48) 0%,
            rgba(5, 39, 81, 0.28) 42%,
            rgba(6, 29, 63, 0.08) 100%
        ),
        url("/images/walls/Torino%201.jpg");
    background-position:
        center center,
        74% 20%;
    background-repeat:
        no-repeat,
        no-repeat;
    background-size:
        100% 100%,
        cover;
    filter: none;
}

.ait-modern-site .ait-hero::after {
    height: 18%;
    background: linear-gradient(
        to bottom,
        rgba(2, 20, 46, 0),
        rgba(2, 20, 46, 0.08)
    );
}

.ait-modern-site .ait-hero h1 .hero-blue {
    color: #42b7ff !important;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            70% 18%;
    }
}

@media (max-width: 940px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            58% 16%;
    }
}

@media (max-width: 660px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            52% 14%;
    }
}

/* ==========================================================================
   VARIAZIONE 022 — RIPOSIZIONAMENTO E MAGGIORE LEGGIBILITÀ DELLA MOLE
   Intervento limitato allo sfondo fotografico e al relativo overlay.
   Non modifica dimensioni, posizioni o geometrie di Hero, Slider e Search.
   ========================================================================== */

.ait-modern-site .ait-hero {
    background-image:
        linear-gradient(
            90deg,
            rgba(3, 24, 54, 0.58) 0%,
            rgba(5, 39, 81, 0.20) 34%,
            rgba(6, 29, 63, 0.04) 52%,
            rgba(6, 29, 63, 0) 100%
        ),
        url("/images/walls/Torino%201.jpg");
    background-position:
        center center,
        100% 58%;
    background-repeat:
        no-repeat,
        no-repeat;
    background-size:
        100% 100%,
        cover;
}

.ait-modern-site .ait-hero::after {
    height: 16%;
    background: linear-gradient(
        to bottom,
        rgba(2, 20, 46, 0),
        rgba(2, 20, 46, 0.06)
    );
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            94% 54%;
    }
}

@media (max-width: 940px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            72% 48%;
    }
}

@media (max-width: 660px) {
    .ait-modern-site .ait-hero {
        background-position:
            center center,
            58% 42%;
    }
}

/* ==========================================================================
   VARIAZIONE 025 — SPOSTAMENTO REALE DELLA MOLE VERSO DESTRA
   La fotografia viene separata dal background della Hero e traslata tramite
   pseudo-elemento. Questo rende efficace lo spostamento orizzontale anche
   quando background-size: cover non produce ritaglio laterale.
   ========================================================================== */

.ait-modern-site .ait-hero {
    background-color: #06224a;
    background-image: none;
}

.ait-modern-site .ait-hero::before {
    position: absolute;
    z-index: 0;
    inset: -4%;
    background-image:
        linear-gradient(
            90deg,
            rgba(3, 24, 54, 0.58) 0%,
            rgba(5, 39, 81, 0.20) 34%,
            rgba(6, 29, 63, 0.04) 52%,
            rgba(6, 29, 63, 0) 100%
        ),
        url("/images/walls/Torino%201.jpg");
    background-position:
        center center,
        center 58%;
    background-repeat:
        no-repeat,
        no-repeat;
    background-size:
        100% 100%,
        cover;
    content: "";
    pointer-events: none;
    transform: translateX(5%);
}

.ait-modern-site .ait-hero::after {
    z-index: 0;
}

.ait-modern-site .ait-hero-inner {
    z-index: 1;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hero::before {
        background-position:
            center center,
            center 54%;
        transform: translateX(4%);
    }
}

@media (max-width: 940px) {
    .ait-modern-site .ait-hero::before {
        background-position:
            center center,
            center 48%;
        transform: translateX(2%);
    }
}

@media (max-width: 660px) {
    .ait-modern-site .ait-hero::before {
        background-position:
            center center,
            center 42%;
        transform: none;
    }
}

/* ==========================================================================
   VARIAZIONE 027 — TESTI CARD "ULTIMI IMMOBILI INSERITI"
   Selettori reali del componente mini-card.
   ========================================================================== */

.ait-modern-site .ait-home-mini-card-address {
    font-size: clamp(0.82rem, 0.18vw + 0.78rem, 0.94rem) !important;
    line-height: 1.28;
}

.ait-modern-site .ait-home-mini-card-address span {
    font-size: 1.05em;
}

.ait-modern-site .ait-home-mini-card-facts li {
    font-size: clamp(0.78rem, 0.16vw + 0.74rem, 0.88rem) !important;
    line-height: 1.25;
}

.ait-modern-site .ait-home-mini-card-facts li span {
    font-size: 1.05em;
}

/* ==========================================================================
   VARIAZIONE 028 — ANNUNCI COMPLETI MODERNI, ORIZZONTALI E COMPATTI
   Mantiene la geometria orizzontale e tutte le funzioni PHP esistenti.
   ========================================================================== */

.ait-modern-site .ait-home-full-listings {
    gap: clamp(14px, 1.3vw, 18px);
}

.ait-modern-site .ait-home-full-card {
    position: relative;
    isolation: isolate;
    border: 1px solid rgba(6, 26, 58, 0.14);
    border-radius: 14px;
    background: #ffffff;
    box-shadow:
        0 12px 28px rgba(6, 26, 58, 0.10),
        0 2px 7px rgba(6, 26, 58, 0.05);
    transition:
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

.ait-modern-site .ait-home-full-card:hover {
    border-color: rgba(237, 16, 45, 0.30);
    box-shadow:
        0 17px 38px rgba(6, 26, 58, 0.15),
        0 3px 9px rgba(6, 26, 58, 0.07);
    transform: translateY(-2px);
}

.ait-modern-site .ait-home-full-card-header {
    min-height: 42px;
    padding: 7px clamp(14px, 1.5vw, 21px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    background:
        linear-gradient(100deg, #071b3b 0%, #123764 58%, #071b3b 100%);
}

.ait-modern-site .ait-home-full-card-title {
    gap: clamp(9px, 0.9vw, 14px);
}

.ait-modern-site .ait-home-full-card-title > strong {
    color: #ffffff;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: clamp(0.9rem, 0.2vw + 0.86rem, 1.03rem);
    font-style: normal;
    font-weight: 850;
    letter-spacing: 0.01em;
}

.ait-modern-site .ait-home-full-card-price {
    min-height: 27px;
    padding: 3px 10px;
    border-radius: 999px;
    color: #071b3b !important;
    background: #f4ff24;
    box-shadow: 0 5px 14px rgba(0, 0, 0, 0.16);
}

.ait-modern-site .ait-home-full-card-price strong {
    font-size: 1.14em;
}

.ait-modern-site .ait-home-full-card-price small {
    color: #071b3b;
    font-size: 0.72em;
}

.ait-modern-site .ait-home-full-card-category {
    color: rgba(255, 255, 255, 0.92) !important;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: clamp(0.72rem, 0.13vw + 0.69rem, 0.84rem) !important;
    font-weight: 750 !important;
}

.ait-modern-site .ait-home-full-card-header-meta {
    gap: clamp(8px, 0.85vw, 14px);
}

.ait-modern-site .ait-home-full-card-country,
.ait-modern-site .ait-home-full-card-id {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: clamp(0.72rem, 0.13vw + 0.69rem, 0.84rem);
}

.ait-modern-site .ait-home-full-card-id {
    padding: 3px 8px;
    border-radius: 999px;
    color: #ffffff;
    background: var(--ait-red);
    font-weight: 900;
}

.ait-modern-site .ait-home-full-card-availability {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    gap: 7px;
    padding: 3px 10px;
    border: 1px solid rgba(126, 255, 190, 0.45);
    border-radius: 999px;
    color: #d9ffe9;
    background: rgba(13, 118, 73, 0.28);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
    font-size: clamp(0.7rem, 0.13vw + 0.67rem, 0.82rem);
    font-weight: 850;
}

.ait-modern-site .ait-home-full-card-availability::before {
    display: inline-grid;
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    place-items: center;
    border-radius: 6px;
    background: #73f2aa;
    color: #063921;
    content: "▣";
    font-size: 0.72rem;
    animation: ait-home-availability-pulse 1.8s ease-in-out infinite;
}

@keyframes ait-home-availability-pulse {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(115, 242, 170, 0.42);
        transform: scale(1);
    }

    50% {
        box-shadow: 0 0 0 5px rgba(115, 242, 170, 0);
        transform: scale(1.06);
    }
}

.ait-modern-site .ait-home-full-card-body {
    grid-template-columns:
        minmax(170px, 20%)
        minmax(235px, 25%)
        minmax(0, 1fr);
    min-height: clamp(150px, 11.5vw, 174px);
    background: #f7f9fc;
}

.ait-modern-site .ait-home-full-card-media {
    min-height: clamp(150px, 11.5vw, 174px);
    border-right: 1px solid rgba(6, 26, 58, 0.09);
    background: #dfe6ef;
}

.ait-modern-site .ait-home-full-card-media img {
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ait-modern-site .ait-home-full-card:hover .ait-home-full-card-media img {
    transform: scale(1.035);
}

.ait-modern-site .ait-home-full-card-data {
    gap: 3px;
    padding: clamp(12px, 1.1vw, 17px) clamp(16px, 1.5vw, 22px);
    border-right: 1px solid rgba(6, 26, 58, 0.10);
    background:
        linear-gradient(145deg, #ffffff 0%, #edf2f8 100%);
}

.ait-modern-site .ait-home-full-card-data div {
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 6px;
    align-items: baseline;
}

.ait-modern-site .ait-home-full-card-data dt,
.ait-modern-site .ait-home-full-card-data dd {
    font-size: clamp(0.78rem, 0.15vw + 0.74rem, 0.89rem);
    line-height: 1.34;
}

.ait-modern-site .ait-home-full-card-data dt {
    color: #516079;
    font-weight: 750;
}

.ait-modern-site .ait-home-full-card-data dt::after {
    content: ":";
}

.ait-modern-site .ait-home-full-card-data dd {
    color: #071b3b;
    font-weight: 850;
}

.ait-modern-site .ait-home-full-card-description {
    position: relative;
    max-height: clamp(150px, 11.5vw, 174px);
    padding: clamp(14px, 1.25vw, 19px) clamp(18px, 1.8vw, 28px);
    color: #243650;
    background: #ffffff;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: clamp(0.79rem, 0.16vw + 0.75rem, 0.91rem);
    line-height: 1.48;
    text-align: left;
}

.ait-modern-site .ait-home-full-card-description::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 24px;
    background: linear-gradient(transparent, #ffffff 82%);
    content: "";
    pointer-events: none;
}

@media (max-width: 980px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        min-width: 0;
        flex-wrap: wrap;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: minmax(170px, 30%) minmax(0, 1fr);
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: 1 / -1;
        max-height: 126px;
        border-top: 1px solid rgba(6, 26, 58, 0.08);
    }
}

@media (max-width: 620px) {
    .ait-modern-site .ait-home-full-card-title {
        align-items: flex-start;
        flex-wrap: wrap;
        white-space: normal;
    }

    .ait-modern-site .ait-home-full-card-body {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-home-full-card-media {
        min-height: 220px;
        max-height: 280px;
    }

    .ait-modern-site .ait-home-full-card-data {
        border-right: 0;
        border-bottom: 1px solid rgba(6, 26, 58, 0.08);
    }

    .ait-modern-site .ait-home-full-card-description {
        grid-column: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ait-modern-site .ait-home-full-card,
    .ait-modern-site .ait-home-full-card-media img,
    .ait-modern-site .ait-home-full-card-availability::before {
        animation: none !important;
        transition: none !important;
    }
}\n\n/* ==========================================================================\n   VARIAZIONE 030 — CORREZIONI ANNUNCI COMPLETI\n   ========================================================================== */\n\n.ait-modern-site .ait-home-full-card-header {\n    display: grid !important;\n    min-height: 36px !important;\n    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);\n    align-items: center;\n    gap: clamp(10px, 1vw, 16px);\n    padding: 5px clamp(14px, 1.4vw, 20px) !important;\n    background: linear-gradient(100deg, #0a2448 0%, #12345d 52%, #0a2448 100%) !important;\n    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.08);\n}\n\n.ait-modern-site .ait-home-full-card-title {\n    min-width: 0;\n    gap: clamp(7px, 0.7vw, 11px) !important;\n}\n\n.ait-modern-site .ait-home-full-card-price {\n    min-height: 24px !important;\n    padding: 2px 9px !important;\n    box-shadow: none !important;\n}\n\n.ait-modern-site .ait-home-full-card-availability {\n    justify-self: center;\n    min-width: 0;\n    min-height: 24px !important;\n    padding: 2px 9px !important;\n    border: 0 !important;\n    color: #e5fff0 !important;\n    background: rgba(25, 138, 82, 0.34) !important;\n    box-shadow: none !important;\n    white-space: nowrap;\n}\n\n.ait-modern-site .ait-home-full-card-availability::before {\n    display: none !important;\n    content: none !important;\n}\n\n.ait-modern-site .ait-home-full-card-availability > span[aria-hidden="true"] {\n    display: inline-block;\n    font-size: 0.95em;\n    line-height: 1;\n    animation: ait-home-calendar-float 1.8s ease-in-out infinite;\n}\n\n@keyframes ait-home-calendar-float {\n    0%,\n    100% {\n        transform: translateY(0);\n    }\n\n    50% {\n        transform: translateY(-2px);\n    }\n}\n\n.ait-modern-site .ait-home-full-card-header-meta {\n    justify-self: end;\n}\n\n.ait-modern-site .ait-home-full-card-furniture {\n    display: block !important;\n    min-width: 0;\n}\n\n.ait-modern-site .ait-home-full-card-furniture dd {\n    display: block;\n    width: 100%;\n    min-width: 0;\n    overflow: visible;\n    font-size: clamp(0.76rem, 0.14vw + 0.73rem, 0.87rem) !important;\n    line-height: 1.28 !important;\n    white-space: normal;\n    overflow-wrap: anywhere;\n    text-overflow: clip;\n}\n\n@media (max-width: 1120px) {\n    .ait-modern-site .ait-home-full-card-header {\n        grid-template-columns: minmax(0, 1fr) auto;\n    }\n\n    .ait-modern-site .ait-home-full-card-availability {\n        grid-column: 1 / -1;\n        grid-row: 2;\n        justify-self: center;\n    }\n}\n\n@media (max-width: 760px) {\n    .ait-modern-site .ait-home-full-card-header {\n        grid-template-columns: 1fr;\n    }\n\n    .ait-modern-site .ait-home-full-card-header-meta,\n    .ait-modern-site .ait-home-full-card-availability {\n        grid-column: auto;\n        justify-self: start;\n    }\n}\n\n@media (prefers-reduced-motion: reduce) {\n    .ait-modern-site .ait-home-full-card-availability > span[aria-hidden="true"] {\n        animation: none !important;\n    }\n}\n

/* ==========================================================================
   VARIAZIONE 031 — HEADER PIÙ SOBRIO, DISPONIBILITÀ CENTRATA, EURO PRIMA
   ========================================================================== */

.ait-modern-site .ait-home-full-card-header {
    display: grid !important;
    min-height: 32px !important;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(250px, 0.72fr)
        auto !important;
    align-items: center !important;
    gap: clamp(8px, 0.8vw, 13px) !important;
    padding: 3px clamp(12px, 1.25vw, 18px) !important;
    border-bottom: 1px solid rgba(66, 211, 255, 0.20) !important;
    background:
        linear-gradient(
            105deg,
            #202833 0%,
            #2a3543 42%,
            #1d2b3a 72%,
            #202833 100%
        ) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 0 -1px 0 rgba(66, 211, 255, 0.12) !important;
}

.ait-modern-site .ait-home-full-card-title {
    min-width: 0;
    gap: clamp(6px, 0.6vw, 10px) !important;
}

.ait-modern-site .ait-home-full-card-title > strong {
    font-size: clamp(0.82rem, 0.17vw + 0.79rem, 0.94rem) !important;
}

.ait-modern-site .ait-home-full-card-price {
    min-height: 22px !important;
    gap: 4px !important;
    padding: 1px 8px !important;
    font-size: clamp(0.74rem, 0.14vw + 0.71rem, 0.84rem) !important;
}

.ait-modern-site .ait-home-full-card-category {
    font-size: clamp(0.68rem, 0.12vw + 0.65rem, 0.78rem) !important;
}

.ait-modern-site .ait-home-full-card-availability {
    grid-column: 2 !important;
    justify-self: center !important;
    min-height: 22px !important;
    max-width: 100%;
    padding: 1px 9px !important;
    border: 1px solid rgba(102, 240, 184, 0.30) !important;
    color: #dbffec !important;
    background:
        linear-gradient(
            90deg,
            rgba(20, 115, 79, 0.34),
            rgba(29, 148, 102, 0.24)
        ) !important;
    font-size: clamp(0.68rem, 0.12vw + 0.65rem, 0.78rem) !important;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-availability > span[aria-hidden="true"] {
    margin-right: 2px;
}

.ait-modern-site .ait-home-full-card-header-meta {
    grid-column: 3 !important;
    justify-self: end !important;
    gap: 8px !important;
}

.ait-modern-site .ait-home-full-card-country,
.ait-modern-site .ait-home-full-card-id {
    font-size: clamp(0.67rem, 0.11vw + 0.64rem, 0.76rem) !important;
}

.ait-modern-site .ait-home-full-card-id {
    padding: 2px 7px !important;
}

.ait-modern-site .ait-home-full-card-media img {
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-full-card-header {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .ait-modern-site .ait-home-full-card-availability {
        grid-column: 1 / -1 !important;
        grid-row: 2;
        justify-self: center !important;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        grid-column: 2 !important;
    }
}

@media (max-width: 760px) {
    .ait-modern-site .ait-home-full-card-header {
        grid-template-columns: 1fr !important;
        padding-block: 6px !important;
    }

    .ait-modern-site .ait-home-full-card-availability,
    .ait-modern-site .ait-home-full-card-header-meta {
        grid-column: 1 !important;
        justify-self: start !important;
    }
}

/* ==========================================================================
   VARIAZIONE 032 — DISPONIBILITÀ CENTRATA E BARRA SFUMATA
   ========================================================================== */

.ait-modern-site .ait-home-full-card-availability::before,
.ait-modern-site .ait-home-full-card-availability::after {
    display: none !important;
    content: none !important;
}

.ait-modern-site .ait-home-full-card-header {
    position: relative;
    display: grid !important;
    min-height: 32px !important;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(260px, auto)
        minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(8px, 0.9vw, 14px) !important;
    padding: 3px clamp(12px, 1.25vw, 18px) !important;
    overflow: hidden;
    border-bottom: 1px solid rgba(66, 211, 255, 0.16) !important;
    background:
        linear-gradient(
            90deg,
            rgba(7, 27, 59, 0.98) 0%,
            rgba(9, 39, 78, 0.94) 38%,
            rgba(16, 55, 96, 0.76) 64%,
            rgba(22, 69, 111, 0.38) 84%,
            rgba(22, 69, 111, 0.08) 100%
        ) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 0 -1px 0 rgba(66, 211, 255, 0.10) !important;
}

.ait-modern-site .ait-home-full-card-title {
    grid-column: 1 !important;
    justify-self: start !important;
    min-width: 0;
}

.ait-modern-site .ait-home-full-card-availability {
    grid-column: 2 !important;
    justify-self: center !important;
    align-self: center !important;
    min-width: max-content;
    max-width: 100%;
    margin: 0 !important;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-header-meta {
    grid-column: 3 !important;
    justify-self: end !important;
    align-self: center !important;
    min-width: 0;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-full-card-header {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .ait-modern-site .ait-home-full-card-title {
        grid-column: 1 !important;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        grid-column: 2 !important;
    }

    .ait-modern-site .ait-home-full-card-availability {
        grid-column: 1 / -1 !important;
        grid-row: 2;
        justify-self: center !important;
    }
}

@media (max-width: 760px) {
    .ait-modern-site .ait-home-full-card-header {
        grid-template-columns: 1fr !important;
    }

    .ait-modern-site .ait-home-full-card-title,
    .ait-modern-site .ait-home-full-card-availability,
    .ait-modern-site .ait-home-full-card-header-meta {
        grid-column: 1 !important;
    }

    .ait-modern-site .ait-home-full-card-title,
    .ait-modern-site .ait-home-full-card-header-meta {
        justify-self: start !important;
    }

    .ait-modern-site .ait-home-full-card-availability {
        justify-self: center !important;
    }
}

/* ==========================================================================
   VARIAZIONE 033 — BARRA BLU PIÙ CHIARA E DISPONIBILITÀ DOPO IL CONTRATTO
   ========================================================================== */

.ait-modern-site .ait-home-full-card-header {
    display: flex !important;
    min-height: 32px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: clamp(10px, 1vw, 16px) !important;
    padding: 3px clamp(12px, 1.25vw, 18px) !important;
    overflow: hidden;
    border-bottom: 1px solid rgba(92, 176, 255, 0.22) !important;
    background:
        linear-gradient(
            90deg,
            #153b69 0%,
            #1c4d82 48%,
            #245d93 100%
        ) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        inset 0 -1px 0 rgba(5, 25, 52, 0.14) !important;
}

.ait-modern-site .ait-home-full-card-title {
    display: flex !important;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center !important;
    gap: clamp(7px, 0.65vw, 11px) !important;
    flex-wrap: nowrap !important;
}

.ait-modern-site .ait-home-full-card-availability {
    display: inline-flex !important;
    min-width: 0 !important;
    min-height: auto !important;
    flex: 0 1 auto;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    margin-left: clamp(14px, 2vw, 34px) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #e9fff3 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: clamp(0.68rem, 0.12vw + 0.65rem, 0.78rem) !important;
    font-weight: 850 !important;
    white-space: nowrap;
}

.ait-modern-site .ait-home-full-card-availability::before,
.ait-modern-site .ait-home-full-card-availability::after {
    display: none !important;
    content: none !important;
}

.ait-modern-site .ait-home-full-card-header-meta {
    display: flex !important;
    min-width: max-content;
    flex: 0 0 auto;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-full-card-title {
        flex-wrap: wrap !important;
    }

    .ait-modern-site .ait-home-full-card-availability {
        margin-left: 0 !important;
    }
}

@media (max-width: 760px) {
    .ait-modern-site .ait-home-full-card-header {
        align-items: flex-start !important;
        flex-direction: column !important;
        padding-block: 6px !important;
    }

    .ait-modern-site .ait-home-full-card-title {
        width: 100%;
        flex-wrap: wrap !important;
    }

    .ait-modern-site .ait-home-full-card-header-meta {
        justify-content: flex-start !important;
    }
}

/* ==========================================================================
   VARIAZIONE 034 — SPAZIO DISPONIBILITÀ RIDOTTO
   ========================================================================== */

.ait-modern-site .ait-home-full-card-availability {
    margin-left: clamp(5px, 0.55vw, 10px) !important;
}

/* ==========================================================================
   VARIAZIONE 036 — CATEGORIE RAPIDE STABILI IN ITALIANO E INGLESE
   ========================================================================== */

.ait-modern-site .ait-home-categories {
    align-items: stretch !important;
    gap: clamp(8px, 0.75vw, 12px) !important;
}

.ait-modern-site .ait-home-categories a {
    grid-template-columns: clamp(36px, 2.35vw, 42px) minmax(0, 1fr) !important;
    gap: clamp(6px, 0.55vw, 9px) !important;
    min-height: clamp(58px, 4vw, 66px) !important;
    padding: 6px clamp(8px, 0.65vw, 11px) 6px 6px !important;
}

.ait-modern-site .ait-home-categories a > span {
    width: clamp(36px, 2.35vw, 42px) !important;
    min-width: clamp(36px, 2.35vw, 42px) !important;
    font-size: clamp(1rem, 0.35vw + 0.92rem, 1.2rem) !important;
}

.ait-modern-site .ait-home-categories a > strong {
    display: block;
    min-width: 0;
    overflow: visible;
    font-size: clamp(0.72rem, 0.13vw + 0.69rem, 0.84rem) !important;
    line-height: 1.18 !important;
    text-align: left;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

@media (min-width: 1280px) {
    .ait-modern-site .ait-home-categories {
        grid-template-columns: repeat(6, minmax(145px, 1fr)) !important;
    }
}

@media (min-width: 900px) and (max-width: 1279px) {
    .ait-modern-site .ait-home-categories {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 560px) and (max-width: 899px) {
    .ait-modern-site .ait-home-categories {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 559px) {
    .ait-modern-site .ait-home-categories {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   VARIAZIONE 042 — HOT BANNER STORICO CON TESTATA BLU E 4 OPZIONI
   ========================================================================== */

.ait-modern-site .ait-hot-legacy-card {
    width: 100%;
    max-width: 100%;
    height: clamp(148px, 10.5vw, 170px);
    overflow: hidden;
    border: 1px solid rgba(6, 26, 58, 0.32);
    border-radius: 8px;
    color: #ffffff;
    background: #10181c;
    box-shadow: 0 8px 20px rgba(6, 26, 58, 0.22);
    cursor: pointer;
}

.ait-modern-site .ait-hot-legacy-top {
    position: relative;
    height: clamp(30px, 2.2vw, 34px);
    padding-inline: clamp(8px, 0.7vw, 11px);
    color: #ffffff;
    background:
        linear-gradient(
            180deg,
            #174f8a 0%,
            #0a2f63 55%,
            #07254f 100%
        );
    font-size: clamp(0.75rem, 0.16vw + 0.71rem, 0.88rem);
    font-weight: 900;
    line-height: clamp(30px, 2.2vw, 34px);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.28);
}

.ait-modern-site .ait-hot-legacy-zone {
    position: absolute;
    top: 0;
    left: clamp(8px, 0.7vw, 11px);
    width: 31%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-hot-legacy-price {
    position: absolute;
    top: 0;
    left: 31%;
    width: 40%;
    overflow: hidden;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ait-modern-site .ait-hot-legacy-id {
    position: absolute;
    top: 0;
    right: clamp(8px, 0.7vw, 11px);
    width: 27%;
    overflow: hidden;
    text-align: right;
    white-space: nowrap;
}

.ait-modern-site .ait-hot-legacy-body {
    display: grid;
    width: 100%;
    height: calc(100% - clamp(30px, 2.2vw, 34px));
    grid-template-columns: minmax(68px, 29%) minmax(0, 71%);
    background:
        linear-gradient(
            180deg,
            #111c20 0%,
            #091115 100%
        );
}

.ait-modern-site .ait-hot-legacy-photo {
    min-width: 0;
    height: 100%;
    overflow: hidden;
    background: #111111;
}

.ait-modern-site .ait-hot-legacy-photo img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.ait-modern-site .ait-hot-legacy-content {
    min-width: 0;
    height: 100%;
    padding: clamp(6px, 0.55vw, 9px) clamp(6px, 0.55vw, 9px) 4px;
    overflow: hidden;
}

.ait-modern-site .ait-hot-legacy-main-line {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: clamp(3px, 0.32vw, 5px);
    overflow: hidden;
    color: #f7f9fc;
    font-size: clamp(0.58rem, 0.1vw + 0.56rem, 0.68rem);
    font-weight: 850;
    line-height: 1.25;
    text-align: center;
    text-shadow: 1px 1px 2px #000000;
    white-space: nowrap;
}

.ait-modern-site .ait-hot-legacy-main-line span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ait-modern-site .ait-hot-legacy-main-line b {
    flex: 0 0 auto;
    color: #ed102d;
    font-size: 0.82rem;
}

.ait-modern-site .ait-hot-legacy-deal {
    min-height: clamp(24px, 2vw, 30px);
    margin-top: 2px;
    overflow: hidden;
    color: #f7f9fc;
    font-size: clamp(0.58rem, 0.1vw + 0.56rem, 0.68rem);
    font-weight: 850;
    line-height: 1.22;
    text-align: center;
    text-shadow: 1px 1px 2px #000000;
}

.ait-modern-site .ait-hot-legacy-separator {
    height: 1px;
    margin: 3px 0 5px;
    background: #66747a;
    opacity: 0.75;
}

.ait-modern-site .ait-hot-legacy-icons {
    display: flex;
    height: clamp(52px, 4.2vw, 63px);
    align-items: flex-start;
    justify-content: space-between;
    gap: 1px;
    overflow: hidden;
    text-align: center;
}

.ait-modern-site .ait-hot-legacy-icon {
    width: 25%;
    min-width: 0;
    height: 100%;
    overflow: hidden;
    color: #ffffff;
    font-size: clamp(0.46rem, 0.07vw + 0.44rem, 0.54rem);
    line-height: 1.05;
    text-align: center;
    vertical-align: top;
}

.ait-modern-site .ait-hot-legacy-symbol {
    display: block;
    height: clamp(24px, 1.9vw, 29px);
    color: #ed102d;
    font-size: clamp(1rem, 0.35vw + 0.9rem, 1.24rem);
    font-weight: 900;
    line-height: clamp(24px, 1.9vw, 29px);
    text-shadow: 1px 1px 1px #000000;
}

.ait-modern-site .ait-hot-legacy-label {
    display: block;
    max-height: 26px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hot-legacy-card {
        max-width: 330px;
    }
}

@media (max-width: 620px) {
    .ait-modern-site .ait-hot-legacy-card {
        height: 170px;
    }
}

/* ==========================================================================
   VARIAZIONE 043 — ROTAZIONE RANDOM E TITOLO 3D OFFERTE SPECIALI
   ========================================================================== */

.ait-modern-site .ait-hot-banner-header {
    align-items: center !important;
    gap: 10px !important;
}

.ait-modern-site .ait-hot-banner-header h2 {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 6px clamp(12px, 1vw, 16px);
    border: 1px solid #b40822;
    border-radius: 8px;
    color: #ffffff !important;
    background:
        linear-gradient(
            180deg,
            #ff3853 0%,
            #ed102d 48%,
            #bd0822 100%
        );
    box-shadow:
        0 4px 0 #870419,
        0 7px 14px rgba(112, 3, 24, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.38);
    font-size: clamp(0.78rem, 0.18vw + 0.74rem, 0.92rem) !important;
    font-weight: 900 !important;
    line-height: 1.1;
    letter-spacing: 0.01em;
    text-shadow: 0 1px 1px rgba(73, 0, 14, 0.65);
    transform: translateY(-2px);
}

.ait-modern-site .ait-hot-banner-header h2::before {
    margin-right: 7px;
    content: "★";
    color: #ffffff;
    font-size: 0.8em;
}

.ait-modern-site .ait-hot-banner-header a {
    flex: 0 0 auto;
}

/* ==========================================================================
   VARIAZIONE 044 — PULSANTE RIDOTTO E TESTATA SENZA "VEDI TUTTE"
   ========================================================================== */

.ait-modern-site .ait-hot-banner-header {
    justify-content: flex-start !important;
}

.ait-modern-site .ait-hot-banner-header h2 {
    min-height: 32px !important;
    padding: 5px clamp(12px, 1vw, 16px) !important;
}

.ait-modern-site .ait-hot-banner-header a {
    display: none !important;
}

/* ==========================================================================
   VARIAZIONE 047 — RICOSTRUZIONE STABILE HOMEPAGE E 4 HOT BANNER
   ========================================================================== */

.ait-modern-site .ait-home-dashboard {
    display: grid;
    width: min(calc(100% - clamp(24px, 4vw, 72px)), 1540px);
    max-width: 1540px;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 294px);
    gap: clamp(14px, 1.3vw, 20px);
    align-items: start;
    margin: clamp(-78px, -5vw, -58px) auto 0;
    position: relative;
    z-index: 20;
}

.ait-modern-site .ait-home-dashboard-main,
.ait-modern-site .ait-home-dashboard-side {
    min-width: 0;
}

.ait-modern-site .ait-home-dashboard-main {
    display: grid;
    gap: clamp(18px, 1.5vw, 24px);
}

.ait-modern-site .ait-home-dashboard-main #control {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ait-modern-site .ait-home-dashboard-main #navigation {
    display: none !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-search-panel,
.ait-modern-site .ait-home-dashboard-main .ait-home-categories {
    width: 100% !important;
    max-width: 100% !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-home-categories {
    margin: 8px auto 0 !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-home-showcase-main {
    width: 100%;
    min-width: 0;
    margin: 0;
}

.ait-modern-site .ait-home-dashboard-main #middle {
    margin-top: 0 !important;
}

.ait-modern-site .ait-home-dashboard-side {
    display: grid;
    align-content: start;
    gap: clamp(16px, 1.5vw, 22px);
}

.ait-modern-site .ait-home-dashboard-side .ait-contact-card {
    position: static !important;
    top: auto !important;
    width: 100%;
    min-width: 0;
}

.ait-modern-site .ait-home-hot-column {
    display: block !important;
    width: 100%;
    min-width: 0;
    margin: 0;
}

.ait-modern-site .ait-hot-banner {
    display: block !important;
    width: 100%;
    min-width: 0;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: clamp(10px, 0.8vw, 13px) !important;
}

.ait-modern-site .ait-hot-banner-list {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr;
    gap: 6px;
    margin-top: 7px;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-card {
    width: 100% !important;
    max-width: 100% !important;
    height: 135px !important;
    min-height: 135px !important;
    margin: 0 !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-top {
    height: 31px !important;
    line-height: 31px !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-body {
    height: 104px !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-photo,
.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-content {
    height: 104px !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-photo img {
    height: 104px !important;
}

.ait-modern-site .ait-value-strip {
    width: min(calc(100% - clamp(24px, 4vw, 72px)), 1540px);
    max-width: 1540px;
    margin-inline: auto;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-dashboard {
        grid-template-columns: 1fr;
        margin-top: clamp(-52px, -4vw, -34px);
    }

    .ait-modern-site .ait-home-dashboard-side {
        grid-template-columns: 1fr;
    }

    .ait-modern-site .ait-hot-banner-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
}

@media (max-width: 700px) {
    .ait-modern-site .ait-hot-banner-list {
        grid-template-columns: 1fr;
        gap: 6px;
    }
}

/* ==========================================================================
   VARIAZIONE 048 — SPAZIATURE DASHBOARD E HOT BANNER
   ========================================================================== */

/*
 * Il vecchio .box-container può mantenere un'altezza propria proveniente
 * dai fogli storici. La forzatura ad altezza automatica elimina lo spazio
 * vuoto tra categorie rapide e "Ultimi Immobili Inseriti".
 */
.ait-modern-site .ait-home-dashboard-main #control.ait-home-search-column {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

.ait-modern-site .ait-home-dashboard-main {
    align-content: start !important;
    gap: clamp(10px, 0.8vw, 14px) !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-home-showcase-main {
    margin-top: 0 !important;
}

/*
 * Separazione visiva tra blocco principale e colonna Hot Banner:
 * valore massimo pari a circa 2 centimetri su schermi desktop.
 */
.ait-modern-site .ait-home-dashboard {
    column-gap: clamp(56px, 4.2vw, 76px) !important;
}

/*
 * Distanza tra le quattro card: circa 1 millimetro.
 */
.ait-modern-site .ait-hot-banner-list {
    gap: 4px !important;
    margin-top: 7px !important;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-dashboard {
        column-gap: 0 !important;
        row-gap: clamp(18px, 2vw, 26px) !important;
    }

    .ait-modern-site .ait-hot-banner-list {
        gap: 4px !important;
    }
}

@media (max-width: 700px) {
    .ait-modern-site .ait-hot-banner-list {
        gap: 4px !important;
    }
}

/* ==========================================================================
   VARIAZIONE 049 — ALLINEAMENTO CATEGORIE E SPAZIATURE HOT BANNER
   ========================================================================== */

/*
 * Riduce la separazione eccessiva tra contenuto principale e colonna
 * Hot Banner, mantenendo comunque un distacco visivo pulito.
 */
.ait-modern-site .ait-home-dashboard {
    column-gap: clamp(22px, 1.8vw, 32px) !important;
}

/*
 * Le categorie rapide tornano compatte, centrate e distribuite in modo
 * uniforme senza occupare inutilmente tutta la larghezza disponibile.
 */
.ait-modern-site .ait-home-dashboard-main .ait-home-categories {
    width: min(100%, 1080px) !important;
    max-width: 1080px !important;
    grid-template-columns: repeat(6, minmax(130px, 1fr)) !important;
    justify-content: center !important;
    gap: clamp(7px, 0.65vw, 10px) !important;
    margin: 8px auto 0 !important;
    padding-inline: 0 !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-home-categories a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 7px clamp(8px, 0.6vw, 11px) !important;
}

.ait-modern-site .ait-home-dashboard-main .ait-home-categories a > strong {
    text-align: left !important;
}

/*
 * Mantiene un piccolo distacco visibile tra le singole card laterali.
 */
.ait-modern-site .ait-hot-banner-list {
    gap: 6px !important;
    margin-top: 7px !important;
}

@media (max-width: 1279px) {
    .ait-modern-site .ait-home-dashboard-main .ait-home-categories {
        width: 100% !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 899px) {
    .ait-modern-site .ait-home-dashboard-main .ait-home-categories {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 559px) {
    .ait-modern-site .ait-home-dashboard-main .ait-home-categories {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-home-dashboard {
        column-gap: 0 !important;
    }

    .ait-modern-site .ait-hot-banner-list {
        gap: 6px !important;
    }
}

/* ========================================================================== 
   VARIAZIONE 050 — 4 HOT BANNER, CITTÀ SOLO NELLA CARD E SPAZIATURA
   ========================================================================== */

.ait-modern-site .ait-hot-banner-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin-top: 8px !important;
}

.ait-modern-site .ait-hot-banner-list > .ait-hot-legacy-card {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hot-banner-list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }
}

@media (max-width: 700px) {
    .ait-modern-site .ait-hot-banner-list {
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }
}

/* ==========================================================================
   VARIAZIONE 051 — COMUNE COMPLETO E PREZZO CON SUFFISSO CORRETTO
   ========================================================================== */

.ait-modern-site .ait-hot-legacy-card {
    height: auto !important;
    min-height: 135px !important;
}

.ait-modern-site .ait-hot-legacy-top {
    position: relative !important;
    display: grid !important;
    width: 100%;
    height: auto !important;
    min-height: 31px !important;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: clamp(6px, 0.55vw, 9px);
    padding: 5px clamp(8px, 0.7vw, 11px) !important;
    line-height: 1.15 !important;
}

.ait-modern-site .ait-hot-legacy-zone,
.ait-modern-site .ait-hot-legacy-price,
.ait-modern-site .ait-hot-legacy-id {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: auto !important;
}

.ait-modern-site .ait-hot-legacy-zone {
    min-width: 0;
    overflow: visible !important;
    font-size: clamp(0.68rem, 0.13vw + 0.65rem, 0.79rem);
    line-height: 1.15;
    text-align: left !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: normal;
    word-break: normal;
}

.ait-modern-site .ait-hot-legacy-price {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    overflow: visible !important;
    font-size: clamp(0.65rem, 0.12vw + 0.62rem, 0.75rem);
    line-height: 1;
    text-align: center !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.ait-modern-site .ait-hot-legacy-price small {
    font-size: clamp(0.43rem, 0.06vw + 0.42rem, 0.5rem);
    font-weight: 800;
}

.ait-modern-site .ait-hot-legacy-id {
    overflow: visible !important;
    font-size: clamp(0.62rem, 0.1vw + 0.60rem, 0.7rem);
    line-height: 1;
    text-align: right !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

/*
 * Con i comuni lunghi il nome occupa tutta la prima riga.
 * Prezzo e ID si spostano automaticamente sulla seconda riga.
 */
.ait-modern-site .ait-hot-legacy-top.is-long-zone {
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: 4px;
    padding-block: 6px !important;
}

.ait-modern-site .ait-hot-legacy-top.is-long-zone .ait-hot-legacy-zone {
    grid-column: 1 / -1;
    font-size: clamp(0.64rem, 0.11vw + 0.62rem, 0.73rem);
    font-weight: 900;
    text-align: left !important;
}

.ait-modern-site .ait-hot-legacy-top.is-long-zone .ait-hot-legacy-price {
    grid-column: 1;
    justify-self: start;
}

.ait-modern-site .ait-hot-legacy-top.is-long-zone .ait-hot-legacy-id {
    grid-column: 2;
    justify-self: end;
}

/*
 * Il corpo segue l'altezza reale della testata senza tagli o sovrapposizioni.
 */
.ait-modern-site .ait-hot-legacy-body {
    height: 104px !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-card {
    height: auto !important;
    min-height: 135px !important;
}

.ait-modern-site .ait-hot-banner-list .ait-hot-legacy-top {
    height: auto !important;
    line-height: 1.15 !important;
}

/* ==========================================================================
   VARIAZIONE 053 — SLIDER PRINCIPALE REALMENTE AUTO-RESPONSIVE
   ========================================================================== */

/*
 * Il pannello informativo non usa più un prezzo posizionato in assoluto.
 * Titolo, contratto, caratteristiche e prezzo diventano righe reali della
 * stessa griglia: nessun elemento può sovrapporsi agli altri.
 */
@media (min-width: 941px) {
    .ait-modern-site .ait-home-slider-content {
        display: grid !important;
        min-width: 0 !important;
        min-height: clamp(300px, 20vw, 326px) !important;
        height: clamp(300px, 20vw, 326px) !important;
        grid-template-rows:
            auto
            auto
            minmax(0, 1fr)
            auto !important;
        align-content: stretch !important;
        gap: clamp(7px, 0.55vw, 10px) !important;
        padding:
            clamp(14px, 1.05vw, 18px)
            clamp(14px, 1.05vw, 18px)
            clamp(12px, 0.9vw, 16px) !important;
        overflow: hidden !important;
    }

    .ait-modern-site .ait-home-slider-heading {
        display: grid !important;
        min-width: 0 !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: start !important;
        gap: clamp(8px, 0.7vw, 12px) !important;
    }

    .ait-modern-site .ait-home-slider-heading h2 {
        min-width: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        font-size: clamp(1.34rem, 0.72vw + 1.08rem, 1.7rem) !important;
        line-height: 1.06 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .ait-modern-site .ait-home-slider-heading strong {
        align-self: start !important;
        padding-top: 2px;
        white-space: nowrap !important;
    }

    .ait-modern-site .ait-home-slider-deal {
        min-width: 0 !important;
        margin: 0 !important;
        font-size: clamp(0.76rem, 0.15vw + 0.73rem, 0.87rem) !important;
        line-height: 1.28 !important;
    }

    .ait-modern-site .ait-home-slider-facts {
        display: grid !important;
        min-width: 0 !important;
        min-height: 0 !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: minmax(33px, auto) !important;
        align-content: start !important;
        gap: clamp(5px, 0.4vw, 7px) !important;
        overflow: hidden !important;
    }

    .ait-modern-site .ait-home-slider-facts span {
        min-width: 0 !important;
        min-height: 33px !important;
        padding:
            clamp(5px, 0.38vw, 7px)
            clamp(7px, 0.55vw, 9px) !important;
        overflow: hidden !important;
        font-size: clamp(0.66rem, 0.12vw + 0.63rem, 0.76rem) !important;
        line-height: 1.15 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    /*
     * Il prezzo è l'ultima riga della griglia, non più un livello assoluto.
     * Mantiene la forma grafica a freccia senza coprire le caratteristiche.
     */
    .ait-modern-site .ait-home-slider-price {
        position: relative !important;
        right: auto !important;
        bottom: auto !important;
        z-index: 2 !important;
        display: inline-flex !important;
        width: min(100%, clamp(176px, 14vw, 210px)) !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: clamp(42px, 3.1vw, 48px) !important;
        align-self: end !important;
        justify-self: end !important;
        margin: 0 !important;
        padding:
            clamp(8px, 0.6vw, 10px)
            clamp(16px, 1.3vw, 22px)
            clamp(8px, 0.6vw, 10px)
            clamp(28px, 2vw, 34px) !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
    }

    .ait-modern-site .ait-home-slider-price strong {
        font-size: clamp(1.1rem, 0.45vw + 1rem, 1.34rem) !important;
    }

    .ait-modern-site .ait-home-slider-price small {
        font-size: clamp(0.6rem, 0.09vw + 0.58rem, 0.69rem) !important;
    }
}

/*
 * Nei viewport più stretti il pannello resta fluido e il prezzo continua
 * a seguire il contenuto, senza sovrapposizioni.
 */
@media (max-width: 940px) {
    .ait-modern-site .ait-home-slider-content {
        display: grid !important;
        min-width: 0 !important;
        grid-template-rows: auto auto auto auto !important;
        gap: 9px !important;
        padding-bottom: 14px !important;
        overflow: visible !important;
    }

    .ait-modern-site .ait-home-slider-price {
        position: relative !important;
        right: auto !important;
        bottom: auto !important;
        width: min(100%, 220px) !important;
        max-width: 100% !important;
        justify-self: end !important;
        margin: 0 !important;
    }
}

/* ==========================================================================
   VARIAZIONE 054 — TITOLO SU UNA RIGA, 8 OPZIONI E PREZZO CORRETTO
   ========================================================================== */

@media (min-width: 941px) {
    /*
     * Il nome del comune resta sempre su una sola riga.
     * Le classi applicate dal PHP riducono progressivamente il font.
     */
    .ait-modern-site .ait-home-slider-heading h2 {
        display: block !important;
        min-width: 0 !important;
        overflow: hidden !important;
        font-size: clamp(1.25rem, 0.62vw + 1.08rem, 1.62rem) !important;
        line-height: 1 !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }

    .ait-modern-site .ait-home-slider-heading.is-long-title h2 {
        font-size: clamp(1.02rem, 0.44vw + 0.91rem, 1.3rem) !important;
        letter-spacing: -0.025em !important;
    }

    .ait-modern-site .ait-home-slider-heading.is-very-long-title h2 {
        font-size: clamp(0.88rem, 0.34vw + 0.8rem, 1.12rem) !important;
        letter-spacing: -0.035em !important;
    }

    .ait-modern-site .ait-home-slider-heading strong {
        font-size: clamp(0.78rem, 0.15vw + 0.74rem, 0.9rem) !important;
    }

    /*
     * Il pannello conserva spazio sufficiente per tutte le 8 caselle:
     * 3 dati principali + 5 caratteristiche.
     */
    .ait-modern-site .ait-home-slider-content {
        min-height: clamp(300px, 20vw, 326px) !important;
        height: clamp(300px, 20vw, 326px) !important;
        grid-template-rows:
            auto
            auto
            minmax(156px, 1fr)
            auto !important;
        gap: clamp(6px, 0.45vw, 8px) !important;
    }

    .ait-modern-site .ait-home-slider-facts {
        min-height: 156px !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(4, minmax(34px, 1fr)) !important;
        grid-auto-rows: minmax(34px, 1fr) !important;
        align-content: stretch !important;
        gap: 6px !important;
        overflow: visible !important;
    }

    .ait-modern-site .ait-home-slider-facts span {
        min-height: 34px !important;
        padding: 6px 8px !important;
        overflow: hidden !important;
        font-size: clamp(0.64rem, 0.1vw + 0.62rem, 0.73rem) !important;
        line-height: 1.12 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .ait-modern-site .ait-home-slider-price {
        min-height: 44px !important;
        padding-block: 8px !important;
    }
}

@media (max-width: 940px) {
    .ait-modern-site .ait-home-slider-heading h2 {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }

    .ait-modern-site .ait-home-slider-heading.is-long-title h2 {
        font-size: clamp(1.1rem, 4.2vw, 1.5rem) !important;
    }

    .ait-modern-site .ait-home-slider-heading.is-very-long-title h2 {
        font-size: clamp(0.94rem, 3.7vw, 1.28rem) !important;
    }

    .ait-modern-site .ait-home-slider-facts {
        overflow: visible !important;
    }
}

/* ==========================================================================
   VARIAZIONE 059 — SIDEBAR DEFINITIVA CON 3 HOT BANNER
   ========================================================================== */

.ait-modern-site .ait-hot-banner-list {
    display: grid !important;
    min-width: 0;
    grid-template-columns: 1fr !important;
    gap: clamp(8px, 0.65vw, 10px) !important;
}

/*
 * Nessuna altezza rigida: il contenitore segue l'altezza realmente
 * restituita da AdSense e gli elementi successivi restano nel flusso.
 */
.ait-modern-site .ait-sidebar-google-ad {
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 0 !important;
    height: auto !important;
    align-items: flex-start;
    justify-content: center;
    padding: clamp(6px, 0.55vw, 9px);
    overflow: visible;
    border: 1px solid rgba(8, 38, 81, 0.12);
    border-radius: 14px;
    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.98),
            rgba(247, 249, 253, 0.98)
        );
    box-shadow: 0 12px 28px rgba(7, 28, 62, 0.10);
}

.ait-modern-site .ait-sidebar-google-ad .adsbygoogle {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto;
    margin: 0 auto !important;
}

/*
 * La scheda contatti chiude la colonna dopo i tre Hot Banner.
 */
.ait-modern-site .ait-contact-card-inline {
    position: static !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: clamp(18px, 1.4vw, 24px) !important;
    border-radius: 14px !important;
}

.ait-modern-site .ait-contact-card-inline h2 {
    font-size: clamp(1.18rem, 0.42vw + 1.08rem, 1.48rem) !important;
    line-height: 1.15 !important;
}

.ait-modern-site .ait-contact-card-inline p {
    font-size: clamp(0.76rem, 0.12vw + 0.73rem, 0.86rem) !important;
    line-height: 1.45 !important;
}

.ait-modern-site .ait-contact-card-inline img,
.ait-modern-site .ait-sidebar-google-ad img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 1180px) {
    .ait-modern-site .ait-hot-banner-list {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 700px) {
    .ait-modern-site .ait-sidebar-google-ad {
        padding-inline: 4px;
    }
}

/* ==========================================================================
   VARIAZIONE 060 — RIDUZIONE SPAZIO BIANCO FINALE ANNUNCI HOMEPAGE
   ========================================================================== */

/*
 * Riduce esclusivamente il padding inferiore del contenitore principale
 * degli annunci. Rimane un margine minimo per non far aderire le schede
 * al bordo arrotondato.
 */
.ait-modern-site .ait-home-showcase-main{
    padding-bottom: 0 !important;
}

.ait-modern-site .ait-home-showcase-main #middle,
.ait-modern-site .ait-home-showcase-main #middle .box-content,
.ait-modern-site .ait-home-showcase-main #content,
.ait-modern-site .ait-home-showcase-main .ait-home-full-listings{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* ==========================================================================
   FIX GLOBALE ADSENSE ORIZZONTALE — RESPONSIVE REALE
   Corregge il taglio del banner Google in homepage.
   Nessuna modifica a Hero, cards, slider, sidebar o query.
   ========================================================================== */

.ait-modern-site .ait-home-showcase-main .ait-google-ad-920 {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 970px !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: clamp(22px, 2.4vw, 34px) auto !important;
    padding: 0 !important;
    overflow: visible !important;
    line-height: 0 !important;
    text-align: center !important;
}

.ait-modern-site .ait-home-showcase-main .ait-google-ad-920 .adsbygoogle {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
}

.ait-modern-site .ait-home-showcase-main .ait-google-ad-920 iframe {
    max-width: 100% !important;
}