:root{
  --bg:#f6f8f9;--surface:#fff;--ink:#17272f;--muted:#5f6d74;--line:#dfe6ea;
  --brand:#09699b;--brand-deep:#075176;--brand-soft:#deedf4;--shadow:0 24px 70px rgba(21,65,88,.10);--shadow-soft:0 12px 34px rgba(21,65,88,.08);
  --r-xl:34px;--r-lg:26px;--r-md:20px;--max:1220px;--header:78px;
  --font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:radial-gradient(circle at 88% 0%,rgba(9,105,155,.08),transparent 24rem),var(--bg);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit}button,input,select,textarea{font:inherit}svg{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 44px));margin:auto}.skip-link{position:fixed;left:16px;top:-100px;z-index:3000;background:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow)}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:1200;height:var(--header);display:flex;align-items:center;background:rgba(255,255,255,.90);backdrop-filter:blur(18px);border-bottom:1px solid rgba(23,39,47,.08)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand-logo{display:block;width:auto;height:54px;max-width:178px;object-fit:contain;mix-blend-mode:multiply}.main-nav{display:flex;align-items:center;gap:24px}.main-nav a{font-size:.92rem;text-decoration:none;color:#344751;font-weight:650}.main-nav a:hover{color:var(--brand)}.header-actions{display:flex;align-items:center;gap:10px}.header-cta,.btn,.btn-secondary{border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;font-weight:780;text-decoration:none;cursor:pointer;transition:.22s ease}.header-cta,.btn{background:var(--brand);color:#fff}.header-cta:hover,.btn:hover{background:var(--brand-deep);transform:translateY(-1px)}.btn-secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-secondary:hover{border-color:#bccbd2;transform:translateY(-1px)}.mobile-menu{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-weight:750}.mobile-panel{display:none;position:fixed;inset:var(--header) 0 auto 0;z-index:1150;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);padding:18px 22px 26px;box-shadow:0 22px 50px rgba(0,0,0,.07)}.mobile-panel.is-open{display:block}.mobile-panel a,.mobile-panel button{display:flex;width:100%;justify-content:space-between;align-items:center;padding:14px 4px;text-decoration:none;border:0;border-bottom:1px solid var(--line);background:transparent;font-weight:740;text-align:left;color:var(--ink)}.mobile-panel button{border-bottom:0;color:var(--brand)}
.hero{padding:82px 0 30px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr);gap:54px;align-items:end}.eyebrow{margin:0 0 18px;text-transform:uppercase;font-size:.74rem;letter-spacing:.14em;font-weight:850;color:var(--brand)}.display{margin:0;max-width:850px;font-size:clamp(3.25rem,6.9vw,6.45rem);line-height:.91;letter-spacing:-.065em;font-weight:820;text-wrap:balance}.hero-tagline{margin:28px 0 0;max-width:720px;font-size:clamp(1.35rem,2.35vw,2rem);line-height:1.18;letter-spacing:-.035em;font-weight:720}.lead{margin:20px 0 0;max-width:720px;color:var(--muted);font-size:1.08rem;line-height:1.68}.hero-visual{min-height:410px;border-radius:var(--r-xl);padding:28px;position:relative;overflow:hidden;background:linear-gradient(145deg,#075176,#0d78ad);box-shadow:var(--shadow)}.hero-visual:before{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-120px;top:-140px}.hero-visual:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-90px;bottom:-90px}.visual-kicker{color:#cce6f2;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;position:relative;z-index:2}.visual-title{color:#fff;font-size:2rem;line-height:1.07;letter-spacing:-.045em;font-weight:760;max-width:390px;margin:14px 0 26px;position:relative;z-index:2}.visual-stack{display:grid;gap:10px;position:relative;z-index:2}.visual-line{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:14px;color:#fff}.visual-line span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.14);font-weight:800}.visual-line strong{display:block;font-size:.94rem}.visual-line em{display:block;font-style:normal;color:#bfdeec;font-size:.8rem;margin-top:3px}
.routes-section{padding:36px 0 26px}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px}.section-head h2,.section-title{margin:0;font-size:clamp(2.15rem,4.4vw,4rem);line-height:.98;letter-spacing:-.055em;font-weight:790;text-wrap:balance}.section-head p{margin:0;max-width:480px;color:var(--muted);line-height:1.6}.route-mosaic{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.route-card{position:relative;overflow:hidden;min-height:315px;border-radius:var(--r-lg);padding:28px;text-decoration:none;border:1px solid rgba(23,39,47,.08);display:flex;flex-direction:column;justify-content:space-between;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.route-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft);border-color:rgba(9,105,155,.20)}.route-card:nth-child(1){grid-column:span 7;background:linear-gradient(150deg,#e1eef4,#f9fbfc)}.route-card:nth-child(2){grid-column:span 5;background:linear-gradient(150deg,#f3eadc,#fbf8f2)}.route-card:nth-child(3){grid-column:span 5;background:linear-gradient(150deg,#e4ebef,#f9fbfc)}.route-card:nth-child(4){grid-column:span 4;background:linear-gradient(150deg,#f1e6e2,#fbf7f5)}.route-card:nth-child(5){grid-column:span 3;background:linear-gradient(150deg,#e9e9e2,#fafaf7)}.route-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.route-code{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:840;color:#526b77}.route-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.8);box-shadow:0 8px 20px rgba(31,72,94,.06)}.route-icon svg{width:26px;height:26px;stroke:var(--brand-deep);stroke-width:1.7}.route-card h3{margin:44px 0 12px;font-size:clamp(1.65rem,2.5vw,2.55rem);line-height:1.03;letter-spacing:-.045em;font-weight:770}.route-card p{margin:0;max-width:600px;color:#52636c;line-height:1.57}.route-card:nth-child(5) h3{font-size:clamp(1.5rem,2.15vw,2.1rem)}.route-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:30px;font-weight:800;color:var(--brand-deep)}.route-arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.72);transition:transform .24s ease}.route-card:hover .route-arrow{transform:translateX(4px)}.safety-strip{margin-top:16px;border-radius:var(--r-lg);padding:26px 28px;background:var(--brand-deep);color:#fff;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;box-shadow:0 16px 34px rgba(7,81,118,.14)}.safety-strip h3{margin:0 0 6px;font-size:1.35rem;letter-spacing:-.03em}.safety-strip p{margin:0;max-width:780px;color:#d2e5ee;line-height:1.55}.safety-strip .btn-secondary{border-color:rgba(255,255,255,.25)}
.section{padding:92px 0}.section--soft{background:rgba(255,255,255,.62);border-top:1px solid rgba(23,39,47,.05);border-bottom:1px solid rgba(23,39,47,.05)}.split{display:grid;grid-template-columns:1.03fr .97fr;gap:62px;align-items:center}.section-copy{margin:24px 0 0;max-width:760px;color:var(--muted);font-size:1.04rem;line-height:1.72}.digital-board{border-radius:var(--r-xl);background:#fff;border:1px solid var(--line);padding:20px;box-shadow:var(--shadow-soft)}.browser-bar{display:flex;align-items:center;gap:7px;padding:4px 2px 18px}.browser-dot{width:8px;height:8px;border-radius:50%;background:#cfd9de}.flow-row{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:16px;border-radius:16px;background:#f5f8f9;margin-top:10px}.flow-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:850}.flow-row strong{display:block;font-size:.98rem}.flow-row small{display:block;margin-top:4px;color:var(--muted)}.status{font-size:.72rem;padding:7px 9px;border-radius:999px;background:#e2eef4;color:var(--brand-deep);font-weight:800}.statement{margin-top:24px;border-left:4px solid var(--brand);padding-left:18px;font-weight:780;font-size:1.15rem;line-height:1.45}
.tool-shell{position:relative;overflow:hidden;border-radius:var(--r-xl);background:linear-gradient(135deg,#075b84,#064a6d);color:#fff;padding:50px;box-shadow:var(--shadow)}.tool-shell:after{content:"";position:absolute;right:-110px;bottom:-180px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.18)}.tool-shell .eyebrow{color:#c4e1ee}.tool-shell .section-title{max-width:780px}.tool-shell p{max-width:760px;color:#d8e8ef;line-height:1.66}.metric-band{display:grid;grid-template-columns:1fr 54px 1fr 54px 1fr;gap:10px;align-items:center;margin:34px 0}.metric-box{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);padding:18px;border-radius:18px}.metric-box small{display:block;color:#c4e1ee;text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:.68rem}.metric-box strong{display:block;margin-top:8px;font-size:1.3rem}.metric-arrow{text-align:center;color:#c4e1ee;font-size:1.4rem}
.pro-section{padding:100px 0;background:#172d38;color:#fff;position:relative;overflow:hidden}.pro-section:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;border:1px solid rgba(255,255,255,.07);right:-220px;top:-220px}.pro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start;position:relative;z-index:2}.pro-section .eyebrow{color:#bed8e4}.pro-section .section-copy{color:#ccdbe2}.pro-points{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pro-point{padding:22px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.pro-point strong{display:block;font-size:1rem;margin-bottom:7px}.pro-point span{color:#cbd9df;line-height:1.5;font-size:.91rem}.pro-claim{margin:26px 0 0;font-size:1.25rem;line-height:1.42;font-weight:760;max-width:650px}.button-row{margin-top:26px}
.guides-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}.guide-card{padding:24px;min-height:225px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;transition:.22s ease}.guide-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:#c6d5dc}.guide-no{font-size:.7rem;color:var(--brand);font-weight:840;letter-spacing:.1em}.guide-card h3{margin:24px 0 8px;font-size:1.25rem;letter-spacing:-.03em;line-height:1.14}.guide-card p{margin:0;color:var(--muted);line-height:1.5;font-size:.93rem}.guide-card b{margin-top:22px;color:var(--brand-deep)}
.trust-wrap{padding:92px 0 76px}.trust-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:58px;align-items:start}.trust-panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:30px}.trust-item{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.trust-item:last-child{border-bottom:0}.trust-badge{width:44px;height:44px;border-radius:14px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand-deep);font-weight:850}.trust-item strong{display:block}.trust-item span{display:block;margin-top:4px;color:var(--muted);font-size:.92rem;line-height:1.45}.closing{padding:95px 0 115px;text-align:center}.closing .section-title{max-width:820px;margin:auto}.closing .section-copy{max-width:720px;margin:22px auto 28px}.closing-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.site-footer{background:#142a35;color:#d5e0e5;padding:50px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}.footer-brand{color:#fff;font-size:1.25rem;font-weight:850}.footer-copy{color:#9fb3bd;max-width:380px;line-height:1.6;margin-top:12px}.footer-col strong{display:block;color:#fff;margin-bottom:12px}.footer-col a{display:block;color:#b9cbd3;text-decoration:none;padding:5px 0;font-size:.92rem}.footer-col a:hover{color:#fff}.footer-bottom{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:#8fa5af;font-size:.82rem}
/* compatibility with current hub pages */.hub-hero{padding:72px 0 42px}.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.87rem;margin-bottom:28px}.breadcrumbs a{text-decoration:none}.hub-code{color:var(--brand);font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.hub-title{max-width:930px;margin:10px 0 0;font-size:clamp(2.55rem,5.7vw,5.2rem);line-height:.98;letter-spacing:-.052em}.hub-intro{max-width:760px;color:var(--muted);font-size:1.12rem;margin:24px 0 0}.prototype-note{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:8px 12px;border-radius:999px;background:#fff4d9;color:#695016;font-size:.8rem;font-weight:700}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:22px 0 80px}.option-card{display:flex;flex-direction:column;justify-content:space-between;min-height:210px;padding:26px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);transition:transform .2s ease,box-shadow .2s ease,border .2s ease}.option-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:rgba(9,105,155,.24)}.option-card h2{margin:0;font-size:1.38rem;line-height:1.15;letter-spacing:-.025em}.option-card p{color:var(--muted);margin:10px 0 20px}.option-card span{font-weight:780;color:var(--brand-deep)}
.modal{display:none;position:fixed;inset:0;z-index:2500}.modal[aria-hidden="false"]{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(7,28,39,.68);backdrop-filter:blur(7px)}.modal-dialog{position:relative;z-index:2;width:min(700px,calc(100% - 28px));max-height:calc(100vh - 40px);overflow:auto;margin:20px auto;background:#fff;border-radius:28px;padding:32px;box-shadow:0 40px 130px rgba(0,0,0,.35)}.modal-close{position:absolute;right:18px;top:18px;border:1px solid var(--line);background:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem}.modal h2{margin:10px 50px 6px 0;font-size:2.3rem;letter-spacing:-.045em;line-height:1}.modal p{color:var(--muted);line-height:1.55}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.field{display:flex;flex-direction:column;gap:7px}.field--full{grid-column:1/-1}.field label{font-size:.83rem;font-weight:760}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd8de;border-radius:12px;padding:13px 14px;outline:none;background:#fff}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(9,105,155,.12)}.form-note{font-size:.78rem;color:var(--muted)}.form-success{display:none;margin-top:14px;padding:13px 15px;border-radius:12px;background:var(--brand-soft);color:var(--brand-deep);font-weight:760}.form-success.is-visible{display:block}.optional{font-weight:500;color:#69777e}.mobile-safety{display:none}
@media(max-width:980px){.main-nav,.header-cta{display:none}.mobile-menu{display:inline-flex}.hero-grid,.split,.pro-grid,.trust-layout{grid-template-columns:1fr}.hero-visual{min-height:360px}.route-card:nth-child(1),.route-card:nth-child(2){grid-column:span 6}.route-card:nth-child(3),.route-card:nth-child(4),.route-card:nth-child(5){grid-column:span 4}.guides-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}}
@media(max-width:720px){:root{--header:70px}.brand-logo{height:46px;max-width:152px}.container{width:calc(100% - 28px)}.hero{padding-top:48px}.hero-grid{gap:30px}.display{font-size:clamp(2.75rem,13vw,4.25rem)}.hero-tagline{font-size:1.45rem}.hero-visual{display:none}.section-head{display:block}.section-head p{margin-top:13px}.route-card,.route-card:nth-child(1),.route-card:nth-child(2),.route-card:nth-child(3),.route-card:nth-child(4),.route-card:nth-child(5){grid-column:span 12;min-height:245px}.route-card h3{margin-top:34px}.safety-strip{grid-template-columns:1fr}.section{padding:70px 0}.tool-shell{padding:34px 24px}.metric-band{grid-template-columns:1fr}.metric-arrow{transform:rotate(90deg)}.pro-points{grid-template-columns:1fr}.guides-grid{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.mobile-safety{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:1300;min-height:52px;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:800;box-shadow:0 18px 44px rgba(0,0,0,.22)}.site-footer{padding-bottom:92px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* ===== Percorso 1 — Voglio affittare · V0.5 ===== */
.journey-hero{padding:70px 0 38px}.journey-hero .hub-title{max-width:1030px}.journey-hero .hub-intro{max-width:860px;line-height:1.68}
.journey-section{padding:24px 0 88px}.journey-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(270px,.52fr);gap:28px;align-items:start}.journey-main{min-width:0}.journey-aside{position:sticky;top:calc(var(--header) + 24px);display:grid;gap:14px}
.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(24px,4vw,46px);box-shadow:var(--shadow-soft)}.content-card+.content-card{margin-top:16px}.content-card h2{margin:0 0 14px;font-size:clamp(1.65rem,3.2vw,2.55rem);line-height:1.06;letter-spacing:-.04em}.content-card h3{margin:28px 0 10px;font-size:1.24rem;letter-spacing:-.025em}.content-card p{margin:0 0 16px;color:#42545d;line-height:1.72}.content-card p:last-child{margin-bottom:0}.content-card .btn,.content-card .btn-secondary{margin-top:8px}
.callout{border-radius:20px;padding:22px 24px;background:linear-gradient(145deg,#e2f0f6,#f8fbfc);border:1px solid #cfe1e9}.callout strong{display:block;font-size:1.08rem;margin-bottom:7px}.callout p{margin:0;color:#45606c;line-height:1.6}.callout--dark{background:linear-gradient(145deg,#075176,#09699b);border:0;color:#fff}.callout--dark p{color:#d7e8f0}.callout--warm{background:#fbf4e8;border-color:#eee1cc}
.path-aside{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px}.path-aside .eyebrow{margin-bottom:12px}.path-aside h3{margin:0 0 8px;font-size:1.15rem}.path-aside p{margin:0;color:var(--muted);line-height:1.55;font-size:.92rem}.path-list{display:grid;gap:8px;margin-top:16px}.path-list a{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:12px;text-decoration:none;background:#f5f8f9;font-size:.87rem;font-weight:730}.path-list a:hover{background:var(--brand-soft);color:var(--brand-deep)}
.choice-stack{display:grid;gap:12px}.choice-panel{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;transition:.2s ease}.choice-panel:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft);border-color:#bed3dd}.choice-no{width:44px;height:44px;border-radius:14px;background:var(--brand-soft);color:var(--brand-deep);display:grid;place-items:center;font-weight:850}.choice-panel h3{margin:0 0 5px;font-size:1.08rem}.choice-panel p{margin:0;color:var(--muted);line-height:1.5;font-size:.93rem}.choice-panel b{color:var(--brand);font-size:1.15rem}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-tile{padding:22px;border-radius:18px;background:#f6f9fa;border:1px solid var(--line)}.info-tile small{display:block;text-transform:uppercase;letter-spacing:.1em;color:var(--brand);font-weight:840;font-size:.68rem;margin-bottom:9px}.info-tile strong{display:block;font-size:1.15rem;margin-bottom:7px}.info-tile p{font-size:.92rem;margin:0;color:var(--muted);line-height:1.55}
.steps{display:grid;gap:10px;counter-reset:step}.step-card{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.step-card:before{counter-increment:step;content:counter(step);width:48px;height:48px;border-radius:15px;background:var(--brand-soft);color:var(--brand-deep);display:grid;place-items:center;font-weight:850}.step-card h3{margin:2px 0 7px}.step-card p{margin:0;color:var(--muted);line-height:1.55}
.route-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.route-option{padding:23px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;display:flex;flex-direction:column;min-height:210px;justify-content:space-between;transition:.2s ease}.route-option:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:#bcd2dc}.route-option .hub-code{margin-bottom:22px}.route-option h2{font-size:1.35rem;margin:0 0 8px;letter-spacing:-.03em}.route-option p{margin:0;color:var(--muted);line-height:1.54}.route-option span:last-child{margin-top:24px;color:var(--brand-deep);font-weight:800}
.diagnosis{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,4vw,38px);box-shadow:var(--shadow-soft)}.diagnosis-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.diagnosis-progress{height:6px;flex:1;background:#e9eff2;border-radius:999px;overflow:hidden}.diagnosis-progress span{display:block;height:100%;background:var(--brand);width:25%;transition:width .25s ease}.diagnosis-count{font-size:.78rem;color:var(--muted);font-weight:800}.diagnosis-step{display:none}.diagnosis-step.is-active{display:block}.diagnosis-step h2{margin:0 0 8px;font-size:clamp(1.55rem,3vw,2.35rem);letter-spacing:-.04em;line-height:1.06}.diagnosis-step>p{color:var(--muted);line-height:1.6}.answer-grid{display:grid;gap:10px;margin-top:22px}.answer-btn{width:100%;text-align:left;padding:17px 18px;border:1px solid #cbd9df;background:#fff;border-radius:15px;color:var(--ink);cursor:pointer;font-weight:720;line-height:1.4;transition:.18s ease}.answer-btn:hover{border-color:var(--brand);background:#f1f8fb;transform:translateY(-1px)}.diagnosis-back{margin-top:18px;background:transparent;border:0;color:var(--muted);font-weight:720;cursor:pointer;padding:5px 0}.diagnosis-result{display:none}.diagnosis-result.is-active{display:block}.result-badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand-deep);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.diagnosis-result h2{margin:16px 0 12px;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.05;letter-spacing:-.045em}.diagnosis-result p{color:#43565f;line-height:1.68}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.operator-inline{margin-top:18px;padding:22px 24px;border-radius:20px;background:#142e3b;color:#fff;display:flex;justify-content:space-between;gap:20px;align-items:center}.operator-inline p{margin:5px 0 0;color:#c9dce5;line-height:1.5}.operator-inline h3{margin:0}.operator-inline .btn-secondary{flex:0 0 auto}
@media(max-width:900px){.journey-grid{grid-template-columns:1fr}.journey-aside{position:static}.route-options,.two-col{grid-template-columns:1fr}}
@media(max-width:720px){.journey-hero{padding-top:48px}.journey-section{padding-bottom:72px}.content-card{padding:24px 20px}.choice-panel{grid-template-columns:42px 1fr}.choice-panel b{display:none}.operator-inline{display:block}.operator-inline .btn-secondary{margin-top:15px;width:100%}.result-actions .btn,.result-actions .btn-secondary{width:100%}.diagnosis{padding:22px 18px}}


/* ===== Percorso 2 — Rendimento · V0.6 ===== */
.p2-hub-grid{margin-bottom:6px}.p2-hub-grid .route-option{min-height:260px}.portfolio-form{margin-top:26px}.portfolio-list{display:grid;gap:14px;margin-top:22px}.property-block{border:1px solid var(--line);border-radius:18px;padding:22px;background:#f8fafb}.property-block legend{padding:0 8px;font-weight:850;color:var(--brand-deep)}.portfolio-success{line-height:1.55}.choice-panel .btn,.choice-panel .btn-secondary{white-space:nowrap;margin-top:0}.p2-renew .diagnosis-result .result-actions{margin-bottom:8px}@media(max-width:720px){.choice-panel .btn,.choice-panel .btn-secondary{grid-column:2;width:100%;white-space:normal}.p2-hub-grid .route-option{min-height:230px}}


/* ===== Percorso 3 — Professionisti · V0.7 ===== */
.pro-quick-hero{padding-bottom:26px}.pro-quick-hero .hub-title{max-width:900px}.pro-quick-hero .hub-intro{margin-top:16px;font-size:1.3rem;color:var(--ink)}.pro-fast-copy{max-width:900px;color:var(--muted);line-height:1.62;font-size:1rem;margin:16px 0 0}.pro-fast-claim{display:inline-block;margin:18px 0 0;padding:10px 14px;border-radius:999px;background:var(--brand-soft);color:var(--brand-deep);font-weight:820}.pro-hub-section{padding-top:12px}.pro-fast-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:16px}.pro-fast-head .eyebrow{margin:0}.pro-fast-head h2{margin:0;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.045em}.pro-primary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pro-action-card{display:grid;grid-template-columns:48px 1fr;gap:14px;min-height:180px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;transition:.2s ease}.pro-action-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:#bcd2dc}.pro-action-no{width:44px;height:44px;border-radius:14px;background:var(--brand-soft);color:var(--brand-deep);display:grid;place-items:center;font-weight:850}.pro-action-card h2{margin:2px 0 7px;font-size:1.25rem;letter-spacing:-.03em}.pro-action-card p{margin:0;color:var(--muted);line-height:1.48;font-size:.92rem}.pro-action-card b{grid-column:2;color:var(--brand-deep);align-self:end}.pro-secondary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.pro-secondary-card{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 20px;border-radius:18px;background:#f1f5f7;border:1px solid var(--line);text-decoration:none}.pro-secondary-card span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;font-weight:850;color:var(--brand)}.pro-secondary-card h3{margin:5px 0 4px;font-size:1rem}.pro-secondary-card p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.pro-secondary-card b{white-space:nowrap;color:var(--brand-deep)}.pro-compact-hero{padding-bottom:24px}.pro-compact-hero .hub-title{font-size:clamp(2.25rem,4.8vw,4.45rem);max-width:1000px}.pro-compact-hero .hub-intro{max-width:900px}.pro-choice-stack .choice-panel{min-height:94px}.choice-panel--button{width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit}.pro-next-card{scroll-margin-top:calc(var(--header) + 20px)}.pro-contract-grid .route-option{min-height:180px}.pro-form .form-success{line-height:1.55}.pro-form select[multiple]{min-height:154px}.pro-form input[type=file]{padding:10px;background:#fff}.pro-form .btn{margin-top:18px}
@media(max-width:820px){.pro-primary-grid,.pro-secondary-grid{grid-template-columns:1fr}.pro-fast-head{display:block}.pro-fast-head h2{margin-top:6px}.pro-secondary-card{align-items:flex-start;flex-direction:column}.pro-secondary-card b{white-space:normal}}
@media(max-width:560px){.pro-action-card{grid-template-columns:42px 1fr;padding:18px}.pro-action-card b{grid-column:1/-1}.pro-fast-claim{border-radius:16px}}


/* ===== Pilastro 4 — Problemi · V0.8 ===== */
.route-mosaic--four .route-card:nth-child(1){grid-column:span 6;background:linear-gradient(150deg,#e1eef4,#f9fbfc)}
.route-mosaic--four .route-card:nth-child(2){grid-column:span 6;background:linear-gradient(150deg,#f3eadc,#fbf8f2)}
.route-mosaic--four .route-card:nth-child(3){grid-column:span 6;background:linear-gradient(150deg,#e4ebef,#f9fbfc)}
.route-mosaic--four .route-card:nth-child(4){grid-column:span 6;background:linear-gradient(150deg,#f1e6e2,#fbf7f5)}
.problem-hero{padding-bottom:24px}.problem-hero .hub-title{max-width:930px}.problem-hero .hub-intro{max-width:820px;font-size:1.18rem;line-height:1.62}.problem-promise{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;border-radius:999px;background:#fff1ec;color:#784633;border:1px solid #f0ddd5;font-size:.86rem;font-weight:800}
.problem-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.problem-card{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;cursor:pointer;transition:.2s ease}.problem-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:#c4d7df}.problem-card-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:#f7ebe6;color:#8a4c38;font-weight:900}.problem-card h2{margin:0 0 5px;font-size:1.2rem;letter-spacing:-.03em}.problem-card p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.48}.problem-card b{color:var(--brand-deep);font-size:1.15rem}.problem-card--neutral .problem-card-icon{background:var(--brand-soft);color:var(--brand-deep)}
.problem-detail-wrap{margin-top:18px}.problem-detail{display:none;scroll-margin-top:calc(var(--header) + 18px)}.problem-detail.is-active{display:block}.problem-detail .content-card{border-color:#dbe5e9}.problem-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.problem-detail-head h2{margin:0;max-width:800px}.problem-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:#8a4c38;font-weight:850}.problem-detail-copy{max-width:850px}.problem-subchoices{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}.problem-subchoice{border:1px solid var(--line);background:#f8fafb;border-radius:16px;padding:16px 17px;text-align:left;cursor:pointer;color:var(--ink);transition:.18s ease}.problem-subchoice:hover{border-color:#b8d0da;background:#fff;transform:translateY(-1px)}.problem-subchoice strong{display:block;font-size:.98rem}.problem-subchoice span{display:block;margin-top:5px;color:var(--muted);font-size:.85rem;line-height:1.43}.problem-back{border:0;background:transparent;color:var(--brand-deep);font-weight:800;cursor:pointer;padding:4px 0}.problem-note{margin-top:18px;padding:14px 16px;border-radius:14px;background:#fff8ef;border:1px solid #f0e1cb;color:#624f37;font-size:.88rem;line-height:1.52}.problem-modal-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 0}.problem-meta-tag{padding:6px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand-deep);font-size:.72rem;font-weight:800}.problem-form-lead{margin-top:4px}.problem-modal textarea{min-height:155px}.problem-modal .modal-dialog{width:min(760px,calc(100% - 28px))}.problem-success-title{display:block;margin-bottom:4px}.problem-privacy-note{font-size:.76rem;color:var(--muted);margin-top:9px}.problem-inline-cta{margin-top:16px}.problem-inline-cta .btn{margin-right:8px}
@media(max-width:900px){.problem-grid,.problem-subchoices{grid-template-columns:1fr}.route-mosaic--four .route-card:nth-child(1),.route-mosaic--four .route-card:nth-child(2),.route-mosaic--four .route-card:nth-child(3),.route-mosaic--four .route-card:nth-child(4){grid-column:span 6}}
@media(max-width:720px){.route-mosaic--four .route-card:nth-child(1),.route-mosaic--four .route-card:nth-child(2),.route-mosaic--four .route-card:nth-child(3),.route-mosaic--four .route-card:nth-child(4){grid-column:span 12}.problem-card{grid-template-columns:46px 1fr}.problem-card b{display:none}.problem-card-icon{width:44px;height:44px;border-radius:14px}.problem-detail-head{display:block}.problem-modal .modal-dialog{padding:26px 20px}}


/* ===== Pilastro 4 — Problemi · V0.9 pagine dedicate ===== */
.issue-hero{padding-bottom:28px}.issue-hero .hub-title{max-width:980px}.issue-hero .hub-intro{max-width:900px;font-size:1.16rem;line-height:1.66}.issue-support{max-width:900px;margin-top:22px;padding:16px 18px;border-radius:18px;background:#fff;border:1px solid #eadfd8;box-shadow:0 10px 28px rgba(93,55,39,.04)}.issue-support strong{display:block;color:#7d4b37;margin-bottom:5px}.issue-support span{color:#4f6068;line-height:1.55}.issue-section{padding-top:12px}.issue-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.issue-main{display:grid;gap:14px}.issue-card{margin:0}.issue-card h2{margin:4px 0 14px;font-size:clamp(1.45rem,2.7vw,2.15rem);letter-spacing:-.035em}.issue-card-intro,.issue-gentle{color:var(--muted);line-height:1.6}.issue-list{margin:0;padding:0;list-style:none;display:grid;gap:9px}.issue-list li{position:relative;padding:12px 14px 12px 42px;border:1px solid var(--line);background:#f8fafb;border-radius:14px;line-height:1.5}.issue-list li:before{content:"✓";position:absolute;left:14px;top:11px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-deep);font-size:.72rem;font-weight:900}.issue-card--warning{border-color:#eadfd8;background:#fffdfb}.issue-list--warning li{background:#fff8f4;border-color:#efddd3}.issue-list--warning li:before{content:"!";background:#f4e5dd;color:#8a4c38}.issue-gentle{margin:16px 0 0;padding-top:16px;border-top:1px solid var(--line)}.issue-aside{position:sticky;top:calc(var(--header) + 20px)}.issue-cta-card{border-radius:22px;padding:24px;background:#172d38;color:#fff;box-shadow:var(--shadow-soft)}.issue-cta-card .eyebrow{color:#bcdce9;margin-bottom:10px}.issue-cta-card h2{margin:0;font-size:1.55rem;line-height:1.08;letter-spacing:-.04em}.issue-cta-card p{color:#d2e1e8;line-height:1.55}.issue-cta-card .btn{width:100%;margin-top:8px;background:#fff;color:var(--brand-deep)}.issue-cta-card .btn:hover{background:#eef6fa}.issue-cta-card small{display:block;margin-top:12px;color:#b9cbd4;line-height:1.45}.issue-back-link{display:block;margin-top:12px;padding:12px 4px;color:var(--brand-deep);font-weight:780;text-decoration:none}.problem-subchoice{text-decoration:none;display:block}.problem-subchoice strong,.problem-subchoice span{color:inherit}.problem-subchoice span{color:var(--muted)}
@media(max-width:900px){.issue-layout{grid-template-columns:1fr}.issue-aside{position:static}.issue-cta-card{margin-top:2px}}
@media(max-width:720px){.issue-cta-card{padding:21px}.issue-card h2{font-size:1.45rem}.issue-list li{padding-left:38px}}

/* ===== QA finale estetico e coerenza · V1.2.3 ===== */
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(9,105,155,.28);outline-offset:3px}
body{line-height:1.5}p,li{ text-wrap:pretty }h1,h2,h3{ text-wrap:balance }
.main-nav{gap:22px}.main-nav a{line-height:1.2;white-space:nowrap}.header-cta,.btn,.btn-secondary{min-height:46px;line-height:1.16}.mobile-panel{max-height:calc(100vh - var(--header));overflow:auto}
.breadcrumbs{align-items:center;line-height:1.35;margin-bottom:26px}.breadcrumbs a:hover{color:var(--brand)}
.hub-hero,.journey-hero{padding-top:68px;padding-bottom:36px}.hub-intro,.journey-hero .hub-intro{line-height:1.66}.journey-section{padding-top:24px;padding-bottom:92px}.journey-section.issue-section,.journey-section.pro-hub-section{padding-top:24px;padding-bottom:92px}
.journey-grid{gap:30px}.journey-aside{gap:16px}.content-card{box-shadow:0 12px 32px rgba(21,65,88,.07)}.content-card h2{margin-bottom:16px}.content-card h3{line-height:1.25}.content-card p{line-height:1.7}.content-card ul,.content-card ol{margin:12px 0 18px;padding-left:1.25rem}.content-card li{margin:7px 0;line-height:1.58;color:#42545d}
.callout{margin-top:18px}.callout:first-child{margin-top:0}.spacing-top-xs{margin-top:12px!important}.spacing-top-sm{margin-top:14px!important}.spacing-top-lg{margin-top:26px!important}.block-space-lg{margin:34px 0 80px!important}.safety-strip--page{margin:18px 0 70px}.pdf-embed{display:block;width:100%;height:760px;border:1px solid #dbe5e9;border-radius:18px;background:#fff}
.choice-panel,.route-option,.pro-action-card,.guide-card,.problem-card{height:100%}.choice-panel p,.route-option p,.pro-action-card p,.guide-card p,.problem-card p{line-height:1.55}.path-list a{align-items:center;line-height:1.35}.path-list b{flex:0 0 auto}.path-aside{box-shadow:0 8px 24px rgba(21,65,88,.04)}
.form-grid{gap:16px}.field{gap:8px}.field input,.field select,.field textarea{min-height:48px}.field textarea{min-height:118px}.form-note{line-height:1.5}.form-success{line-height:1.5}
.site-footer{padding:56px 0 30px}.footer-grid{align-items:start;gap:34px}.footer-copy{margin:12px 0 0}.footer-col strong{margin-bottom:14px}.footer-col a{padding:6px 0;line-height:1.38}.footer-bottom{align-items:center}.footer-bottom a{color:#b9cbd3;text-decoration:none}.footer-bottom a:hover{color:#fff}
.issue-support{margin-top:20px}.issue-main{gap:16px}.issue-card h2{line-height:1.12}.issue-list li{line-height:1.52}.issue-cta-card h2{line-height:1.12}
.pro-primary-grid,.pro-secondary-grid,.problem-grid,.guides-grid,.two-col{align-items:stretch}
@media(max-width:980px){.footer-grid{grid-template-columns:1.25fr 1fr 1fr}.footer-grid>div:last-child{grid-column:auto}}
@media(max-width:720px){.hub-hero,.journey-hero{padding-top:46px;padding-bottom:28px}.journey-section,.journey-section.issue-section,.journey-section.pro-hub-section{padding-top:18px;padding-bottom:74px}.breadcrumbs{margin-bottom:22px}.content-card{padding:24px 20px}.callout{padding:20px}.site-footer{padding-top:44px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px}.footer-grid>div:first-child{grid-column:1/-1}.pdf-embed{height:560px}.safety-strip--page{margin-bottom:56px}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.pdf-embed{height:480px}}

/* Lecco production refinements */
.agreement-table-wrap{overflow-x:auto;margin:22px 0 14px}.agreement-table{width:100%;border-collapse:collapse;min-width:620px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.agreement-table th,.agreement-table td{padding:15px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.agreement-table th{background:var(--brand-soft);color:var(--brand-deep);font-size:.86rem;text-transform:uppercase;letter-spacing:.035em}.agreement-table tr:last-child td{border-bottom:0}.footer-col a[href^="mailto:"],.footer-col a[href^="tel:"]{font-weight:720;color:#d5e0e5}.button-row .btn-secondary{margin:6px 8px 0 0}@media(max-width:720px){.agreement-table{min-width:560px}.button-row .btn-secondary{width:100%;margin-right:0}}

.modal .modal-support-title{margin:10px 50px 6px 0;font-size:2.3rem;letter-spacing:-.045em;line-height:1;color:var(--ink);font-weight:700}


.faq-list{display:grid;gap:10px;margin-top:22px}
.faq-list details{border:1px solid var(--line);border-radius:16px;background:#fff;padding:0 18px}
.faq-list summary{cursor:pointer;list-style:none;font-weight:760;padding:16px 28px 16px 0;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:0;top:14px;font-size:1.4rem;font-weight:500}
.faq-list details[open] summary:after{content:"−"}
.faq-list details p{margin:0 0 18px;color:var(--muted);line-height:1.65}
.faq-cta{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.faq-cta h3{margin:0 0 8px}
.faq-cta p{margin:0 0 16px;color:var(--muted)}


.legal-content{max-width:980px}
.legal-content h2{margin-top:34px}
.legal-content h3{margin-top:24px}
.legal-content ul{padding-left:1.25rem;line-height:1.7}
.legal-content li+li{margin-top:8px}
.legal-table-wrap{overflow-x:auto}
.legal-content table{width:100%;border-collapse:collapse;margin-top:14px}
.legal-content th,.legal-content td{padding:12px 14px;border:1px solid var(--line);text-align:left;vertical-align:top}
.page-update{margin:0;padding:16px 0 28px;color:var(--muted);font-size:.84rem;line-height:1.5}
.footer-legal{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:8px;font-size:.82rem;line-height:1.55}
.footer-legal a{color:inherit;text-decoration:underline;text-underline-offset:3px}
