@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--navy:#10243d;--navy2:#183452;--gold:#b88a45;--gold-light:#d9b36f;--cream:#f6f2eb;--ink:#17283d;--muted:#617083;--white:#fff;--border:#e5e0d7}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.topbar{background:#0b1a2d;color:#f7f4ef;font-size:.82rem}.topbar-inner{display:flex;gap:28px;align-items:center;min-height:40px;flex-wrap:wrap}.topbar a:hover,.footer a:hover{text-decoration:underline}
.site-header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border)}.nav-wrap{display:flex;justify-content:space-between;align-items:center;min-height:86px;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-size:2.6rem;color:var(--gold);line-height:1}.brand strong{display:block;font-family:'Playfair Display',serif;font-size:1.28rem;letter-spacing:.02em}.brand small{display:block;font-size:.76rem;color:var(--muted)}.nav{display:flex;align-items:center;gap:24px;font-size:.91rem;font-weight:600}.nav>a:not(.nav-cta):hover{color:var(--gold)}.nav-cta{background:var(--gold);color:#fff;padding:12px 17px;border-radius:3px}.menu-toggle{display:none;border:1px solid var(--border);background:white;padding:9px 12px;border-radius:4px;color:var(--navy)}
.hero{position:relative;isolation:isolate;min-height:530px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(10,27,47,.98) 0%,rgba(13,35,58,.92) 45%,rgba(13,35,58,.3) 100%),linear-gradient(135deg,#10243d,#536579);color:#fff;overflow:hidden}.hero:after{content:"⚖";position:absolute;z-index:-1;right:8%;top:4%;font-size:20rem;line-height:1;color:rgba(219,179,111,.22);font-family:serif}.hero-content{padding:74px 0;max-width:1160px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:700;color:var(--gold-light);margin:0 0 16px}.hero h1,.approach h2,.section h2,.contact-section h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.12;letter-spacing:-.025em}.hero h1{font-size:clamp(2.8rem,6vw,4.8rem);max-width:760px;margin:0 0 20px}.hero h1 em,.approach h2 em{color:var(--gold-light);font-style:normal}.hero-copy{font-size:1.12rem;max-width:660px;color:#edf1f5}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;padding:14px 20px;border:0;border-radius:3px;font:600 .95rem 'DM Sans',sans-serif;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:#fff}.button-gold:hover,.nav-cta:hover{background:#9e7134}.button-outline{border:1px solid rgba(255,255,255,.75);color:white;background:transparent}.hero-note{font-size:.78rem;color:#c9d1da;margin-top:18px}
.trust-strip{background:var(--cream);border-bottom:1px solid var(--border)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 0}.trust-grid article{text-align:center;padding:4px 22px;border-right:1px solid #d6cfc4}.trust-grid article:last-child{border:0}.line-icon{font-size:2rem;color:var(--gold)}.trust-grid h3{font-size:1rem;margin:7px 0 4px}.trust-grid p{font-size:.87rem;color:var(--muted);margin:0}
.section{padding:86px 0}.section-heading{text-align:center;max-width:730px;margin:0 auto 38px}.eyebrow.dark{color:var(--gold)}.section h2,.contact-section h2,.approach h2{font-size:clamp(2.2rem,4vw,3.25rem);margin:0 0 16px}.section-heading>p:last-child{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{padding:27px 23px;border:1px solid var(--border);background:white;min-height:245px;transition:box-shadow .2s,transform .2s}.service-card:hover{box-shadow:0 14px 35px #10243d12;transform:translateY(-3px)}.card-number{color:var(--gold);font-family:'Playfair Display',serif;font-size:1.4rem}.service-card h3{font-family:'Playfair Display',serif;font-size:1.25rem;line-height:1.3;margin:15px 0 10px}.service-card p{font-size:.91rem;color:var(--muted);margin:0}.disclaimer{font-size:.78rem;color:var(--muted);text-align:center;margin:22px auto 0;max-width:900px}
.approach{background:var(--navy);color:#fff;padding:82px 0}.approach-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.approach-copy>p{color:#d9e0e8;margin-top:0}.steps{list-style:none;padding:0;margin:25px 0 0}.steps li{display:flex;gap:16px;padding:15px 0;border-top:1px solid #ffffff25}.steps li>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid var(--gold);border-radius:50%;color:var(--gold-light)}.steps strong{display:block}.steps p{margin:2px 0 0;color:#c5d0db;font-size:.9rem}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}.about-art{min-height:350px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(145deg,#e8e1d5,#f8f6f1);color:var(--gold);border:1px solid var(--border)}.about-art span{font-size:8rem}.about-art small{color:var(--navy);letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:0 16px}.body-copy{color:var(--muted)}.text-link{display:inline-flex;gap:12px;color:var(--gold);font-weight:700;margin-top:12px}
.faq-section{background:var(--cream)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.section-heading.left{text-align:left;margin:0}.faq-list details{border-bottom:1px solid #d8d0c5;padding:18px 0}.faq-list details:first-child{border-top:1px solid #d8d0c5}.faq-list summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-list summary:after{content:"+";font-size:1.3rem;color:var(--gold)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{color:var(--muted);font-size:.93rem;margin-bottom:4px}
.contact-section{background:var(--navy);color:white;padding:84px 0}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:75px}.contact-section p{color:#d5dde6}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;margin-top:28px}.contact-details p{margin:0;font-size:.9rem}.contact-details strong{color:var(--gold-light)}.contact-form{background:#fff;color:var(--ink);padding:30px}.contact-form h3{font-family:'Playfair Display',serif;font-size:1.6rem;margin:0 0 5px}.form-intro{font-size:.84rem;color:var(--muted)!important;margin-top:0}.contact-form label{display:block;font-size:.85rem;font-weight:600;margin:13px 0 5px}.contact-form input:not([type=checkbox]){width:100%;padding:12px;border:1px solid #d9dfe5;border-radius:3px;font:inherit}.contact-form input:focus{outline:2px solid #d9b36f;outline-offset:1px}.contact-form .consent{display:flex;align-items:flex-start;gap:8px;font-size:.76rem;font-weight:400;line-height:1.45}.consent input{margin-top:4px}.consent span{color:var(--muted)}.contact-form button{width:100%;margin:15px 0}.contact-form small,.form-message{display:block;color:var(--muted);font-size:.75rem}.form-message{color:#285e47;font-weight:600}
.footer{background:#091626;color:#d9e0e8;padding:30px 0}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center}.footer strong{font-family:'Playfair Display',serif;font-size:1.1rem}.footer p{margin:3px 0;color:#aeb9c5;font-size:.8rem}.footer-links{display:flex;gap:20px;font-size:.83rem}.legal-note{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:15px}
@media(max-width:950px){.nav{gap:13px;font-size:.83rem}.brand strong{font-size:1.08rem}.service-grid{grid-template-columns:repeat(2,1fr)}.approach-grid,.faq-grid{gap:35px}.contact-grid{gap:35px}}
@media(max-width:720px){.container{width:min(100% - 30px,1160px)}.topbar-inner{gap:7px 18px;padding:9px 0}.topbar-inner span:last-child{display:none}.nav-wrap{min-height:74px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:18px 22px 24px;box-shadow:0 14px 20px #10243d12;align-items:stretch;flex-direction:column;gap:16px}.nav.open{display:flex}.nav-cta{text-align:center}.hero{min-height:0}.hero-content{padding:65px 0}.hero:after{right:-10%;top:20%;font-size:13rem}.hero h1{font-size:clamp(2.5rem,12vw,4rem)}.hero-copy{font-size:1rem}.hero-actions{align-items:stretch;flex-direction:column;max-width:370px}.button{width:100%}.trust-grid{grid-template-columns:1fr 1fr;gap:22px 0;padding:25px 0}.trust-grid article{padding:6px 12px}.trust-grid article:nth-child(2){border-right:0}.trust-grid article:nth-child(3),.trust-grid article:nth-child(4){border-top:1px solid #d6cfc4;padding-top:20px}.section{padding:62px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.approach{padding:60px 0}.approach-grid,.about-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.about-art{min-height:230px}.about-art span{font-size:6rem}.section-heading.left{margin-bottom:0}.contact-section{padding:60px 0}.contact-details{grid-template-columns:1fr 1fr;gap:15px}.contact-form{padding:22px}.footer-inner{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.legal-note{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.service-card .text-link{font-size:.84rem;margin-top:18px}.service-card{display:flex;flex-direction:column}.service-card .text-link{margin-top:auto;padding-top:18px}.service-grid{grid-template-columns:repeat(3,1fr)}@media(max-width:950px){.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.service-grid{grid-template-columns:1fr}}.detail-hero{background:#10243d;color:#fff;padding:70px 0}.detail-hero h1{font-family:Playfair Display,Georgia,serif;font-size:clamp(2.3rem,5vw,3.8rem);line-height:1.15;max-width:850px}.detail-content{max-width:780px;padding:70px 0}.detail-content h2{font-family:Playfair Display,Georgia,serif;font-size:2rem}.detail-content p,.detail-content li{color:#536579}.detail-cta{background:#f6f2eb;padding:35px;margin-top:40px}.breadcrumb{font-size:.85rem;color:#d9b36f}

/* Versione rosso / verde: problema → possibile soluzione */
:root{--navy:#063d26;--navy2:#0a603a;--gold:#b50917;--gold-light:#f1a7ad;--cream:#f3f8f3;--ink:#173426;--muted:#52665a;--border:#dce7de;--red:#b50917;--green:#086a36}
.topbar{background:#06482b}.brand-mark{color:var(--red)}.nav-cta,.button-gold{background:var(--red)}.nav-cta:hover,.button-gold:hover{background:#910514}.nav>a:not(.nav-cta):hover,.text-link{color:var(--red)}
.hero{background:linear-gradient(105deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.93) 63%,rgba(224,241,226,.76) 100%),linear-gradient(135deg,#fff,#cde7d2);color:var(--ink);min-height:510px}
.hero:after{color:rgba(5,97,49,.14);right:3%;font-size:19rem}.hero h1{max-width:900px}.hero h1 em{color:var(--green)}.hero-red{color:var(--red)}.hero-copy{color:#32493b}.hero-note{color:#52665a}.hero .eyebrow{color:var(--green)}.button-outline{border-color:var(--green);color:var(--green)}.button-outline:hover{background:#e6f3e9}.hero-actions .button:last-child{background:var(--green);border-color:var(--green);color:#fff}.hero-actions .button:last-child:hover{background:#05512a}
.trust-strip{background:#edf5ee}.line-icon{color:var(--green)}.section-heading h2{color:#093e25}.eyebrow.dark{color:var(--red)}
.problem-solution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.ps-card{display:grid;grid-template-columns:1fr 1fr;min-height:170px;border-radius:11px;overflow:hidden;box-shadow:0 7px 22px #133a2412;transition:transform .2s,box-shadow .2s}
.ps-card:hover{transform:translateY(-3px);box-shadow:0 13px 25px #133a2425}
.ps-problem{background:linear-gradient(135deg,#b50917,#92030d);color:#fff;display:flex;gap:11px;align-items:flex-start;padding:21px 18px;position:relative}
.ps-problem:after{content:'';position:absolute;right:-12px;top:calc(50% - 12px);width:24px;height:24px;background:#97040f;transform:rotate(45deg);z-index:1;border-top:2px solid white;border-right:2px solid white}
.ps-solution{background:linear-gradient(135deg,#078342,#07572f);color:#fff;padding:21px 19px 17px 24px;display:flex;flex-direction:column;justify-content:center}
.ps-icon{font-size:1.8rem;line-height:1.1;flex:0 0 30px}.ps-label{display:block;font-size:.65rem;letter-spacing:.12em;font-weight:800;opacity:.85;margin-bottom:8px}.ps-card h3{font-family:'Playfair Display',Georgia,serif;font-size:1.23rem;line-height:1.25;margin:0 0 8px}.ps-card p{font-size:.83rem;line-height:1.45;margin:0}.ps-solution p{font-size:.95rem;font-weight:600}.ps-more{font-size:.73rem;opacity:.9;margin-top:12px;text-decoration:underline;text-underline-offset:3px}
.approach,.contact-section{background:linear-gradient(135deg,#06452a,#075d37)}.approach h2 em{color:#b5e6c5}.approach .eyebrow,.contact-section .eyebrow{color:#c2f0cf}.steps li>span{border-color:#b5e6c5;color:#b5e6c5}.about-art{background:linear-gradient(135deg,#e9f3ea,#fafcf9);color:var(--green)}.faq-section{background:#f2f7f3}.faq-list summary:after{color:var(--red)}.contact-details strong{color:#b5e6c5}.footer{background:#063521}
.detail-hero{background:linear-gradient(120deg,#b50917,#8e0c16)!important}.detail-hero .eyebrow{color:#ffe6e8}.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:34px;overflow:hidden;border-radius:12px}.detail-problem,.detail-solution{padding:28px;color:#fff}.detail-problem{background:#b50917}.detail-solution{background:#08723c}.detail-pair h2{color:#fff;font-size:1.4rem;line-height:1.4;margin:0;font-family:'Playfair Display',serif}.detail-cta{background:#e8f5ec!important;border-left:5px solid var(--green)}
@media(max-width:850px){.problem-solution-grid{grid-template-columns:1fr}}
@media(max-width:520px){.ps-card{grid-template-columns:1fr 1fr}.ps-problem,.ps-solution{padding:16px 12px}.ps-problem{gap:5px}.ps-icon{font-size:1.1rem;flex-basis:18px}.ps-card h3{font-size:1rem}.ps-card p,.ps-solution p{font-size:.76rem}.ps-label{font-size:.58rem}.detail-pair{grid-template-columns:1fr}}


/* Percorsi per privati e aziende — rosso problema, verde soluzioni */
.audience-section{padding:88px 0}.audience-private{background:#fff}.audience-business{background:#f0f7f1;border-top:1px solid #dce7de}
.audience-heading{max-width:850px;margin:0 auto 35px;text-align:center}.audience-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2rem,4vw,3.1rem);line-height:1.17;color:#103e27;margin:0 0 13px}.audience-heading>p:last-child{color:#52665a;margin:0 auto;max-width:780px}
.audience-layout{display:grid;grid-template-columns:1fr 1.14fr;gap:0;border-radius:14px;overflow:hidden;box-shadow:0 16px 38px #133a2418}
.audience-problem{background:linear-gradient(150deg,#b50917,#8c1019);color:white;padding:35px 35px 38px}
.audience-solution{background:linear-gradient(145deg,#078342,#07562f);color:white;padding:35px 35px 38px}
.audience-kicker{display:block;font-size:.72rem;font-weight:800;letter-spacing:.13em;opacity:.9;margin-bottom:15px}
.audience-layout h3{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;margin:0 0 16px;color:white}
.audience-layout p{color:#fff;opacity:.95;margin:0 0 20px}.audience-problem ul{padding-left:20px;margin:0}.audience-problem li{padding:7px 0;line-height:1.4}
.audience-links{padding:0;margin:0;list-style:none}.audience-links li{border-top:1px solid #ffffff48}.audience-links li:last-child{border-bottom:1px solid #ffffff48}
.audience-links a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;color:#fff;font-weight:600;font-size:.96rem;line-height:1.4}.audience-links a:hover{text-decoration:underline;text-underline-offset:4px}.audience-links span{flex:0 0 auto}
.audience-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px}.audience-footer p{font-size:.82rem;color:#52665a;max-width:650px;margin:0}.audience-button{background:#086a36;color:white;white-space:nowrap}.audience-button:hover{background:#054e2a}
@media(max-width:800px){.audience-layout{grid-template-columns:1fr}.audience-footer{flex-direction:column;align-items:flex-start}.audience-button{white-space:normal}}
@media(max-width:520px){.audience-section{padding:60px 0}.audience-problem,.audience-solution{padding:27px 23px}.audience-button{width:100%}}


/* Restyling editoriale: più gerarchia, profondità e navigazione immediata */
:root{--red:#a70f24;--green:#086a43;--ink:#19382b;--border:#dce9df}
body{background:#fffdfb;-webkit-font-smoothing:antialiased}
.site-header{box-shadow:0 4px 22px rgba(18,55,33,.055)}
.nav-cta,.button,.audience-button{border-radius:10px}
.nav-cta{box-shadow:0 7px 16px #a70f2420}
.hero{background:radial-gradient(ellipse at 92% 15%,#cce9d4 0%,transparent 42%),radial-gradient(ellipse at 98% 95%,#f5e4e5 0%,transparent 39%),linear-gradient(125deg,#fffdfb,#f1f8f2);min-height:650px}
.hero:after{content:'⚖';font-size:clamp(14rem,27vw,27rem);right:-2%;top:9%;color:rgba(6,106,67,.095);transform:rotate(-12deg)}
.hero-content{padding:77px 0 70px}
.hero .eyebrow{letter-spacing:.12em}
.hero h1{max-width:860px;line-height:1.09;letter-spacing:-.045em}
.hero-copy{max-width:720px}
.hero-route{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:790px;margin-top:31px}
.route-card{display:flex;align-items:center;gap:17px;background:#fff;border:1px solid #dbe8de;border-radius:16px;padding:19px 20px;box-shadow:0 12px 32px #153b2512;transition:transform .2s,box-shadow .2s,border-color .2s}
.route-card:hover,.route-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 35px #153b2523;border-color:#6ca78a}
.route-icon{display:grid;place-items:center;flex:0 0 50px;height:50px;background:#eaf5ee;color:#087044;border-radius:13px;font-weight:800;font-size:1.08rem}
.route-card:nth-child(2) .route-icon{background:#fcebee;color:#aa142a}
.route-card small{display:block;color:#718579;font-size:.62rem;font-weight:800;letter-spacing:.08em}
.route-card strong{display:block;font-size:1.12rem;line-height:1.3;margin:3px 0;color:#153d28}
.route-card em{display:block;font-style:normal;color:#a70f24;font-size:.8rem;font-weight:700}
.hero-actions{margin-top:21px}
.hero-actions .button{box-shadow:0 8px 20px #123c2015}
.trust-strip{position:relative;z-index:1}
.trust-grid article{transition:transform .2s}.trust-grid article:hover{transform:translateY(-3px)}
.audience-section{padding:106px 0;position:relative;overflow:hidden}
.audience-section:before{content:'';position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#ae142a 0%,#ae142a 49.8%,#fff 49.8%,#fff 50.2%,#087044 50.2%,#087044 100%)}
.audience-private{background:linear-gradient(180deg,#fffdfb,#fff)}
.audience-business{background:linear-gradient(180deg,#f1f8f2,#eaf4ed)}
.audience-heading{max-width:870px;margin-bottom:42px}
.audience-heading .eyebrow{font-size:.72rem;letter-spacing:.18em}
.audience-heading h2{font-size:clamp(2.3rem,4.5vw,3.65rem);letter-spacing:-.035em}
.audience-layout{position:relative;border-radius:23px;box-shadow:0 24px 70px rgba(12,52,30,.16);isolation:isolate}
.audience-layout:after{content:'→';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;width:61px;height:61px;border:6px solid #fff;border-radius:50%;background:#fff;color:#087044;font-size:1.8rem;font-weight:800;box-shadow:0 6px 22px #0002}
.audience-problem,.audience-solution{position:relative;isolation:isolate;padding:48px 44px 52px;overflow:hidden}
.audience-problem{background:linear-gradient(145deg,#bd1a31,#8f0b20)}
.audience-solution{background:linear-gradient(145deg,#0b8b59,#075737)}
.audience-watermark{position:absolute;z-index:-1;right:-5px;top:-66px;font-weight:800;font-size:18rem;line-height:1;color:#fff;opacity:.055;pointer-events:none}
.audience-kicker{display:inline-flex;align-items:center;gap:9px;background:#ffffff20;border:1px solid #ffffff38;padding:7px 12px;border-radius:30px;font-size:.66rem;letter-spacing:.14em}
.status-dot{display:inline-block;background:#fff;width:7px;height:7px;border-radius:50%}
.audience-layout h3{font-size:clamp(1.7rem,2.65vw,2.4rem);max-width:440px;margin-top:9px}
.audience-problem li{list-style:none;position:relative;padding:12px 0 12px 27px;border-bottom:1px solid #ffffff30}
.audience-problem ul{padding:0}
.audience-problem li:before{content:'!';position:absolute;left:0;top:12px;display:grid;place-items:center;width:18px;height:18px;background:#ffffff30;border-radius:50%;font-size:.7rem;font-weight:800}
.audience-links li{border-top:1px solid #ffffff32}
.audience-links a{padding:14px 0;transition:padding .2s,background .2s}
.audience-links a:hover{padding-left:8px;text-decoration:none;background:#ffffff0c}
.audience-links a span{display:grid;place-items:center;width:24px;height:24px;background:#ffffff26;border-radius:50%;font-size:.8rem}
.audience-footer{background:#fff;border:1px solid #e2eee5;border-radius:14px;padding:17px 20px;margin-top:20px;box-shadow:0 8px 20px #153b2509}
.audience-button{box-shadow:0 8px 18px #0b6a3625}
.ps-card{border-radius:17px;box-shadow:0 12px 30px #123b2316}
.ps-problem,.ps-solution{padding:27px 23px}
.ps-card h3{font-size:1.38rem}
.ps-more{font-weight:700}
.approach{background:linear-gradient(130deg,#06432b,#075e42)}
.about-art{border-radius:20px;box-shadow:0 15px 40px #123b2310}
.contact-form{border-radius:18px;box-shadow:0 20px 40px #0002}
.detail-hero{background:linear-gradient(120deg,#aa142b,#810c21)!important}
.detail-pair{box-shadow:0 15px 35px #163b2520}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #edb93e;outline-offset:4px}
@media(max-width:950px){.audience-problem,.audience-solution{padding:35px 30px}}
@media(max-width:800px){.audience-layout:after{left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}.audience-section{padding:75px 0}.audience-footer{flex-direction:column;align-items:stretch}.audience-button{width:100%}}
@media(max-width:720px){.hero{min-height:0}.hero-content{padding:56px 0}.hero-route{grid-template-columns:1fr}.route-card{padding:15px 17px}.audience-heading h2{font-size:2.3rem}.audience-layout:after{top:50%}}
@media(max-width:520px){.audience-problem,.audience-solution{padding:29px 23px 37px}.audience-layout h3{font-size:1.7rem}.audience-links a{font-size:.9rem}.audience-section{padding:65px 0}.audience-footer{padding:15px}.ps-problem,.ps-solution{padding:16px 12px}}

/* Perché affidarsi a noi — continuità con il linguaggio visivo rosso/verde */
.why-us{background:linear-gradient(180deg,#fffdfb 0%,#f0f8f2 100%);padding:100px 0}
.why-header{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:54px;margin-bottom:37px}
.why-header h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.14;letter-spacing:-.035em;margin-bottom:0}
.why-header h2 em{font-style:normal;color:#087044}
.why-header>p{color:#435c4c;line-height:1.8;font-size:1.03rem;margin:0}
.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.why-card{position:relative;min-height:260px;background:#fff;border:1px solid #deebe1;border-radius:19px;padding:29px 23px 27px;box-shadow:0 12px 35px #103c2410;overflow:hidden;transition:transform .2s,box-shadow .2s}
.why-card:before{content:'';position:absolute;left:0;right:0;top:0;height:5px;background:#087044}
.why-card:nth-child(2):before,.why-card:nth-child(4):before{background:#a70f24}
.why-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #103c2420}
.why-number{position:absolute;top:22px;right:22px;font-size:.78rem;color:#7b9482;font-weight:800;letter-spacing:.08em}
.why-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#e7f5ec;color:#087044;font-size:1.55rem;margin-bottom:24px}
.why-card:nth-child(2) .why-icon,.why-card:nth-child(4) .why-icon{background:#fbeaed;color:#a70f24}
.why-card h3{color:#153d28;font-size:1.2rem;line-height:1.3;margin:0 0 12px}
.why-card p{color:#53685b;line-height:1.65;font-size:.91rem;margin:0}
.why-bottom{margin-top:23px;background:#0a603e;color:#fff;border-radius:17px;padding:23px 28px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.why-bottom p{margin:0;max-width:700px;line-height:1.6;color:#fff}
.why-cta{flex-shrink:0;background:#fff;color:#075b39;border-radius:10px;font-weight:750}
.why-cta:hover{background:#e8f5ec}
@media(max-width:1000px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.why-header{grid-template-columns:1fr;gap:16px}}
@media(max-width:700px){.why-us{padding:68px 0}.why-bottom{flex-direction:column;align-items:stretch}.why-cta{text-align:center}}
@media(max-width:520px){.why-grid{grid-template-columns:1fr}.why-card{min-height:0}.why-bottom{padding:22px}}

.collaborator-footer{padding:16px 0;font-size:0.95rem}.collaborator-footer a{color:inherit;text-decoration:underline}

/* Recapiti telefonici in colonna, senza nominativi aggiuntivi */
.topbar-phones{display:inline-flex;align-items:flex-start;gap:7px}.phone-stack{display:flex;flex-direction:column;gap:2px}.contact-phone-stack a{display:inline-block;margin-top:2px}

/* Homepage: percorsi principali più grandi e ben visibili */
.hero-route{max-width:940px;gap:20px;margin-top:38px}
.hero-route .route-card{min-height:174px;padding:29px 27px;border:2px solid transparent;border-radius:22px;gap:22px;box-shadow:0 16px 36px rgba(24,35,29,.20);text-decoration:none}
.hero-route .route-card:first-child{background:linear-gradient(135deg,#b41d32 0%,#871325 100%);border-color:#d65b6a}
.hero-route .route-card:nth-child(2){background:linear-gradient(135deg,#108654 0%,#075c3a 100%);border-color:#55a77f}
.hero-route .route-card:hover,.hero-route .route-card:focus-visible{transform:translateY(-6px);box-shadow:0 24px 46px rgba(20,40,27,.26);outline-offset:4px}
.hero-route .route-icon,.hero-route .route-card:nth-child(2) .route-icon{flex-basis:66px;height:66px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.40);color:#fff;border-radius:17px;font-size:1.32rem}
.hero-route .route-card small{color:#fff;font-size:.76rem;letter-spacing:.09em;opacity:.94}
.hero-route .route-card strong{color:#fff;font-size:clamp(1.35rem,2.2vw,1.65rem);margin:7px 0;line-height:1.2}
.hero-route .route-card em{color:#fff;font-size:.98rem;text-decoration:underline;text-underline-offset:4px}
@media(max-width:720px){.hero-route{gap:15px}.hero-route .route-card{min-height:144px;padding:22px 20px;gap:16px}.hero-route .route-icon,.hero-route .route-card:nth-child(2) .route-icon{flex-basis:55px;height:55px}}

/* Entrambi i percorsi iniziali in verde, come richiesto. */
.hero-route .route-card:first-child,
.hero-route .route-card:nth-child(2){background:linear-gradient(135deg,#108654 0%,#075c3a 100%);border-color:#55a77f}

/* Entrambi i pulsanti iniziali bianchi con testi verde scuro. */
.hero-route .route-card:first-child,
.hero-route .route-card:nth-child(2){background:#fff;border-color:#c7dfd0;box-shadow:0 15px 35px rgba(14,60,37,.14)}
.hero-route .route-card:first-child:hover,
.hero-route .route-card:nth-child(2):hover{background:#f4faf6;border-color:#087447}
.hero-route .route-card .route-icon,
.hero-route .route-card:nth-child(2) .route-icon{background:#e5f3e9;border-color:#c5e5d0;color:#086a43}
.hero-route .route-card small{color:#3b6851;opacity:1}
.hero-route .route-card strong{color:#104b31}
.hero-route .route-card em{color:#087447}

/* 04/11: WhatsApp in primo piano e percorsi più compatti, anche su smartphone. */
.hero-whatsapp-cta{display:inline-flex;align-items:center;justify-content:center;gap:11px;max-width:100%;margin-top:22px;padding:15px 20px;background:#087c49;color:#fff;border-radius:13px;font-weight:800;font-size:1rem;line-height:1.35;text-decoration:none;box-shadow:0 9px 22px rgba(8,106,67,.20);transition:background .2s,transform .2s}
.hero-whatsapp-cta:hover,.hero-whatsapp-cta:focus-visible{background:#056038;transform:translateY(-2px)}
.hero-whatsapp-cta svg{flex:0 0 25px}
.hero-route{max-width:790px;gap:14px;margin-top:22px}
.hero-route .route-card{min-height:112px;padding:17px 18px;gap:14px;border-radius:16px}
.hero-route .route-icon,.hero-route .route-card:nth-child(2) .route-icon{flex:0 0 48px;height:48px;font-size:1rem;border-radius:12px}
.hero-route .route-card small{font-size:.66rem}
.hero-route .route-card strong{font-size:1.18rem;margin:4px 0}
.hero-route .route-card em{font-size:.83rem}
@media(max-width:720px){
 .hero-content{padding:30px 0 38px}
 .hero h1{font-size:clamp(1.85rem,8vw,2.65rem)}
 .hero-copy{margin-bottom:0}
 .hero-whatsapp-cta{display:flex;width:100%;padding:14px 12px;margin-top:17px;font-size:.94rem}
 .hero-route{gap:10px;margin-top:15px}
 .hero-route .route-card{min-height:90px;padding:12px 14px;gap:12px}
 .hero-route .route-icon,.hero-route .route-card:nth-child(2) .route-icon{flex-basis:42px;height:42px}
 .hero-route .route-card strong{font-size:1.05rem;margin:2px 0}
 .hero-route .route-card small{font-size:.58rem}
 .hero-route .route-card em{font-size:.77rem}
}

/* Pulsante WhatsApp più compatto, posizione invariata. */
.hero-whatsapp-cta{gap:8px;padding:11px 16px;font-size:.92rem;border-radius:11px}
.hero-whatsapp-cta svg{width:21px;height:21px;flex:0 0 21px}
@media(max-width:720px){.hero-whatsapp-cta{display:inline-flex;width:auto;max-width:100%;padding:11px 15px;font-size:.9rem;margin-top:17px}}

/* Fotografia originale ad alta risoluzione, senza ritocchi del volto */
.about-art{overflow:hidden;padding:0 0 16px;}
.about-art .studio-portrait{display:block;width:100%;height:auto;max-height:540px;object-fit:contain;object-position:center;margin:0 auto 12px;}
