﻿/* Homepage parallela: tutti gli stili restano limitati a .home-new. */
.home-new { --home-ink: #182b43; --home-muted: #526176; color: var(--home-ink); padding-bottom: 3rem; }
.home-new .home-hero { padding: 3.5rem 0 4rem; }
.home-new .home-eyebrow { display: inline-flex; align-items: center; gap: .5rem; font-size: .9rem; color: #365577; margin-bottom: 1.5rem; }
.home-new h1 { font-size: clamp(2.3rem, 4vw, 3.8rem); line-height: 1.12; letter-spacing: -.035em; font-weight: 800; margin-bottom: 1.5rem; }
.home-new h1 span { color: #0b5ed7; }
.home-new h2 { font-size: clamp(1.65rem, 2.5vw, 2.3rem); line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
.home-new h3 { font-size: 1.25rem; font-weight: 700; }
.home-new p { color: var(--home-muted); line-height: 1.7; }
.home-new .home-lead { font-size: 1.1rem; line-height: 1.75; }
.home-new .home-how-link { display: inline-flex; gap: .75rem; font-weight: 700; color: #0b5ed7; text-decoration: none; padding-block: .5rem; }
.home-new .home-how-link:hover { text-decoration: underline; }
.home-new .home-trust { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; margin-top: 2rem; padding: 0; list-style: none; color: #42576e; font-size: .85rem; }
.home-new .home-trust i { margin-right: .35rem; color: #0b5ed7; }
.home-new .home-kicker { display: block; color: #456183; font-size: .75rem; font-weight: 700; letter-spacing: .11em; margin-bottom: .75rem; }
.home-new .home-search { padding: 2rem; background: #fff; border: 1px solid #dce5ef; border-top: 4px solid #0d6efd; border-radius: 1.25rem; box-shadow: 0 14px 50px rgba(24,43,67,.09); scroll-margin-top: 2rem; }
.home-new .home-search h2 { font-size: 1.55rem; }
.home-new .home-search-kind { display: block; }
.home-new .home-search-kind input[type="radio"] { margin: .5rem .4rem .5rem 0; accent-color: #0b5ed7; }
.home-new .home-search-kind label { display: inline-block; padding: .4rem .8rem .4rem 0; cursor: pointer; font-weight: 700; font-size: .95rem; }
.home-new .home-search-kind input:focus-visible { outline: 3px solid #0b5ed7; outline-offset: 3px; }
.home-new .home-role-note { display: block; color: #526176; margin-bottom: 1rem; }
.home-new .home-role-note:empty { display: none; }
.home-new .home-date-fields { padding: 1rem; border: 1px solid #e1e8f0; border-radius: .75rem; background: #f7f9fc; }
.home-new .home-date-fields legend { float: none; width: auto; font-size: .95rem; margin-bottom: .5rem; }
.home-new .home-search-button { border-radius: .65rem; font-weight: 700; }
.home-new .home-results { border-top: 1px solid #dce5ef; padding: 2rem 0; scroll-margin-top: 1rem; }
.home-new #risultati { scroll-margin-top: 1.5rem; }
.home-new .home-result-photo { width: 100px; height: 100px; object-fit: cover; }
.home-new .hover-effect { transition: box-shadow .2s ease; }
.home-new .hover-effect:hover { box-shadow: 0 .5rem 1.5rem rgba(24,43,67,.14) !important; }
.home-new .mask-sensitive { color: #526176; }
.home-new .home-section { padding: 3.5rem 0; border-top: 1px solid #e5eaf1; scroll-margin-top: 2rem; }
.home-new .home-section-heading { margin-bottom: 2rem; max-width: 44rem; }
.home-new .home-step { padding: 1rem 1.5rem 0 0; height: 100%; }
.home-new .home-step-number { display: inline-block; color: #0b5ed7; font-size: 2.25rem; font-weight: 700; margin-bottom: 1rem; }
/* Frecce decorative: percorso orizzontale su desktop e verticale su mobile. */
.home-new .home-steps > div { position: relative; }
.home-new .home-steps .home-step-number { display: inline-grid; place-items: center; width: 4rem; height: 4rem; border: 1px solid #c9dcf8; border-radius: 1.25rem; background: linear-gradient(145deg, #f3f8ff, #e7f0ff); box-shadow: 0 5px 15px rgba(11, 94, 215, .07); font-size: 1.6rem; position: relative; z-index: 1; }
.home-new .home-steps > div:not(:last-child)::before { content: ""; position: absolute; top: 3rem; left: 6rem; right: 1rem; height: 2px; background: linear-gradient(90deg, #c9dcf8, #6297e2); }
.home-new .home-steps > div:not(:last-child)::after { content: ""; position: absolute; top: calc(3rem - 4px); right: 1rem; width: 10px; height: 10px; border-top: 2px solid #6297e2; border-right: 2px solid #6297e2; transform: rotate(45deg); }
@media (max-width: 767.98px) {
    .home-new .home-steps > div:not(:last-child) { padding-bottom: 2rem; }
    .home-new .home-steps > div:not(:last-child)::before { top: auto; bottom: 0; left: calc(var(--bs-gutter-x) / 2 + 2rem); right: auto; width: 2px; height: 1.75rem; background: linear-gradient(#c9dcf8, #6297e2); }
    .home-new .home-steps > div:not(:last-child)::after { top: auto; bottom: 0; left: calc(var(--bs-gutter-x) / 2 + 2rem - 4px); right: auto; transform: rotate(135deg); }
}
.home-new .home-role-card { height: 100%; padding: 2rem; border: 1px solid #dce5ef; border-radius: 1.1rem; }
.home-new .home-owner-card { background: #f3f7fd; }
.home-new .home-substitute-card { background: #f0f8f4; border-color: #d4e7dc; }
.home-new .home-role-icon { display: inline-grid; place-items: center; width: 3rem; height: 3rem; border-radius: .85rem; background: #e2ecfc; color: #0b5ed7; font-size: 1.25rem; margin-bottom: 1rem; }
.home-new .home-substitute-card .home-role-icon { color: #146c43; background: #dcefe4; }
.home-new .home-role-card li { margin-bottom: .7rem; color: #42576e; line-height: 1.6; }
.home-new .home-role-card ul { padding-left: 1.2rem; margin-block: 1.5rem; }
.home-new .home-story-image { width: 100%; height: auto; max-height: 30rem; object-fit: cover; border-radius: 1.1rem; }
.home-new .home-value { display: flex; gap: 1rem; margin-top: 1.3rem; }
.home-new .home-value > i { color: #0b5ed7; margin-top: .25rem; font-size: 1.1rem; }
.home-new .home-value h3 { font-size: 1rem; margin-bottom: .2rem; }
.home-new .home-value p { margin-bottom: 0; font-size: .95rem; }
.home-new .home-faq details { border-bottom: 1px solid #dce5ef; padding: 1.1rem 0; }
.home-new .home-faq summary { font-weight: 700; cursor: pointer; line-height: 1.6; }
.home-new .home-faq details p { margin: .85rem 0 .25rem; }
.home-new .home-final-cta { display: flex; align-items: center; gap: 2rem; justify-content: space-between; padding: 2.5rem; background: #edf3fc; border-radius: 1.25rem; }
.home-new .home-final-cta h2 { font-size: 1.8rem; }
.home-new .home-final-cta p { margin-bottom: 0; }
.home-new .home-final-actions { display: flex; flex-direction: column; gap: .75rem; flex-shrink: 0; }
.home-new .home-final-actions > a { display: block; text-align: center; }
.home-new a:focus-visible, .home-new summary:focus-visible { outline: 3px solid #0b5ed7; outline-offset: 4px; border-radius: .25rem; }
@media (max-width: 991.98px) {
    .home-new .home-hero { padding-top: 1.5rem; }
    .home-new .home-intro { max-width: 42rem; }
    .home-new .home-trust { margin-top: 1rem; }
    .home-new .home-final-cta { flex-direction: column; align-items: stretch; }
    .home-new .home-final-actions { flex-direction: row; flex-wrap: wrap; }
}
@media (max-width: 575.98px) {
    .home-new h1 { font-size: 1.9rem; margin-bottom: 1rem; }
    .home-new .home-eyebrow { margin-bottom: 1rem; }
    .home-new .home-intro .home-lead { font-size: 1rem; margin-bottom: 0; }
    .home-new .home-intro .home-trust, .home-new .home-intro .home-how-link { display: none; }
    .home-new .home-search, .home-new .home-role-card, .home-new .home-final-cta { padding: 1.25rem; }
    .home-new .home-section { padding-block: 2.5rem; }
    .home-new .home-final-actions { flex-direction: column; }
    .home-new .home-trust { gap: .6rem; }
    .home-new .home-search-kind label { width: calc(100% - 2rem); }
}
@media (prefers-reduced-motion: reduce) { .home-new .hover-effect { transition: none; } }

/* Accenti secondari: blu principale, petrolio per la collaborazione, ocra per il percorso. */
.home-new { --home-petrol: #278477; --home-ochre: #b78324; }
.home-new .home-trust li:nth-child(2) i { color: var(--home-petrol); }
.home-new .home-trust li:nth-child(3) i { color: var(--home-ochre); }
.home-new .home-steps > div:nth-child(2) .home-step-number { color: #216e64; border-color: #b8ddd5; background: linear-gradient(145deg, #f0faf7, #e0f1ec); box-shadow: 0 5px 15px rgba(39,132,119,.08); }
.home-new .home-steps > div:nth-child(3) .home-step-number { color: #8a611c; border-color: #ead5ae; background: linear-gradient(145deg, #fffaf0, #f9edd5); box-shadow: 0 5px 15px rgba(183,131,36,.08); }
.home-new .home-steps > div:not(:last-child)::before { background: #cbd5e1; }
.home-new .home-steps > div:not(:last-child)::after { border-color: #94a3b8; }
.home-new .home-substitute-card { background: #eff8f5; border-color: #c9e4dc; }
.home-new .home-substitute-card .home-role-icon { color: var(--home-petrol); background: #dcefe8; }
.home-new .home-value > .fa-list-check, .home-new .home-value > .fa-lock { color: var(--home-petrol); }
.home-new .home-value > .fa-phone { color: var(--home-ochre); }
.home-province-proposal { color: #8a611c; border-color: #d9b974; background: #fffaf0; }
.home-province-proposal:hover { color: #725018; border-color: #b78324; background: #f9edd5; }
