/* Targeted restyling layered over the original site's styles. */
:root{--page-gutter:clamp(24px,5vw,96px);--header-h:84px;--green-ink:#087b4b;--muted:#52616a}
html{scroll-padding-top:calc(var(--header-h) + 20px)}
.section,.final-cta,#vantaggi{scroll-margin-top:0}
[hidden]{display:none!important}
button{font:inherit;cursor:pointer}
svg{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:3px solid var(--green);outline-offset:5px}
section:focus,main:focus,#inizio:focus{outline:none}
.container,.header-inner{width:min(calc(100% - 2 * var(--page-gutter)),1680px)}
.header-inner{gap:clamp(22px,2.4vw,46px)}
.nav-shell{gap:24px}
.primary-nav{gap:clamp(15px,1.6vw,30px);font-size:clamp(.88rem,.87vw,1.04rem)}
.primary-nav a{min-height:44px;display:flex;align-items:center;white-space:nowrap}
.brand img{width:44px;height:44px}
.brand strong,.brand em{font-size:1rem}
.button{min-height:54px;font-size:1rem;font-weight:800;border:0}
.button-small{min-height:44px;font-size:.9rem;padding-inline:18px}
.button-primary{background:linear-gradient(180deg,#098454,#066e45);box-shadow:0 12px 28px #18c87926}
.button-ghost,.button-outline{border:1px solid #ffffff80;background:#07111936}
.hero{min-height:800px;min-height:clamp(760px,94svh,1000px)}
.hero-bg{background-image:url('../assets/hero.webp');height:100%;opacity:1;animation:none;transform:none;will-change:auto}
.hero-light-lines{animation:none}
.hero-content{min-height:clamp(760px,94svh,1000px);padding:calc(var(--header-h) + 54px) 0 34px;gap:58px}
.hero-copy{width:min(100%,860px);padding-top:0}
.hero-kicker{font-size:clamp(1rem,1.05vw,1.25rem);margin-bottom:24px;font-weight:800}
.hero h1{max-width:850px;font-size:clamp(3.3rem,4.35vw,5.3rem);line-height:1.08;letter-spacing:-.025em;font-weight:850;text-wrap:initial}
.hero-subtitle{max-width:690px;font-size:clamp(1.12rem,1.24vw,1.48rem);line-height:1.58;font-weight:600;margin-top:28px}
.hero-actions{margin-top:32px}
.hero-benefits{gap:28px;border-top:1px solid #ffffff24;padding-top:26px}
.hero-benefits article{gap:14px}
.benefit-icon{width:52px;height:52px;flex:0 0 auto}
.benefit-icon svg{width:24px;height:24px}
.hero-benefits strong{font-size:1.05rem}
.hero-benefits small{font-size:.94rem;margin-top:5px;line-height:1.45}
.section{padding:clamp(56px,5vw,90px) 0}
.section-heading{max-width:940px;margin-bottom:40px}
.section-heading h2,.screens-copy h2,.final-cta h2{font-size:clamp(2rem,2.5vw,3rem);line-height:1.17;letter-spacing:-.025em;font-weight:850}
.section-heading h2 span,.screens-copy h2 span{color:var(--green-ink)}
.section-heading p{font-size:clamp(1.03rem,1.07vw,1.25rem);line-height:1.6;color:var(--muted);margin-top:14px}
.flow-section{background:white}
.journey-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;color:var(--muted);font-size:.95rem}
.journey-controls{display:flex;align-items:center;gap:10px}
.journey-controls button{border:1px solid #bfdccd;background:#f3fbf7;color:#085b39;border-radius:8px;padding:10px 16px;display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;font-size:.9rem;font-weight:750}
.journey-controls svg{width:21px;height:21px}
.journey-controls button:hover{background:#e1f5eb;border-color:var(--green-ink)}
.journey-main{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;position:relative}
.journey-main:before{content:'';position:absolute;top:43px;left:10%;right:10%;height:2px;background:#c9e5d7}
.journey-node{min-width:0;position:relative}
.journey-choice{border:0;padding:0 10px 18px;background:transparent;width:100%;text-align:center;border-radius:12px;color:var(--ink);position:relative}
.journey-icon{position:relative;display:flex;align-items:center;justify-content:center;width:86px;height:86px;border:1px solid #c5e5d4;border-radius:50%;background:#f3fbf7;color:var(--green-ink);margin:0 auto 20px;box-shadow:0 0 0 10px #fff;transition:background .25s,color .25s,box-shadow .25s}
.journey-icon svg{width:38px;height:38px;stroke-width:1.6}
.step-number{position:absolute;bottom:-4px;right:-3px;background:white;border:1px solid #c5e5d4;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:.73rem;font-weight:800;color:#087344}
.journey-text{display:block}
.journey-text strong{display:block;font-size:clamp(1.03rem,1.1vw,1.3rem);line-height:1.3;font-weight:800;max-width:230px;margin-inline:auto}
.journey-summary{display:block;margin:9px auto 0;max-width:225px;font-size:1rem;color:var(--muted);line-height:1.5}
.journey-choice:hover .journey-icon,.is-selected .journey-icon{background:#087b4b;color:#fff;box-shadow:0 0 0 8px #e7f8ef}
.journey-choice:hover .journey-text strong{color:var(--green-ink)}
.journey-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}
.journey-branch{border:1px solid #dce7e2;border-radius:10px;background:#fafcfb;transition:border-color .25s,background .25s}
.journey-branch .journey-choice{display:flex;align-items:center;gap:20px;padding:22px;text-align:left;height:100%}
.journey-branch .journey-icon{width:56px;height:56px;border-radius:14px;flex:0 0 auto;margin:0;box-shadow:none}
.journey-branch .journey-icon svg{width:29px;height:29px}
.journey-branch .journey-text strong{max-width:none;font-size:1.12rem;margin:0}
.journey-branch .journey-summary{max-width:none;margin-top:6px;font-size:.96rem}
.branch-label{display:block;color:#546a5f;font-size:.77rem;font-weight:750;margin-bottom:7px}
.branch-cargos{border-color:#8bd6ae;background:#effbf4}
.branch-cargos:before{content:'';position:absolute;left:50%;bottom:100%;height:27px;border-left:2px dashed #55b082}
.branch-cargos .branch-label{color:#087b4b}
.journey-branch.is-selected{border-color:#087b4b;background:#e9f8f0}
.journey-detail{margin-top:24px;padding:25px 28px;display:flex;align-items:center;gap:22px;background:#eff8f3;border:1px solid #d9ede1;border-radius:10px;min-height:148px}
.detail-icon{color:#087b4b;flex:0 0 auto}
.detail-icon svg{width:42px;height:42px}
.detail-label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#38624c;font-weight:750;margin-bottom:6px}
.journey-detail h3{font-size:1.25rem;line-height:1.35;font-weight:800}
.journey-detail p{margin-top:7px;font-size:1.04rem;line-height:1.55;color:#43564c;max-width:1100px}
.detail-position{margin-left:auto;white-space:nowrap;color:#476b58;font-variant-numeric:tabular-nums;font-size:.86rem;align-self:flex-start;padding-top:3px}
.journey-note{text-align:center;font-size:.88rem;line-height:1.5;color:var(--muted);margin:18px auto 0;max-width:950px}
.mobile-detail{display:none}
.is-playing .is-selected .journey-icon{animation:stepGlow 3.8s ease-in-out}
@keyframes stepGlow{0%,100%{box-shadow:0 0 0 8px #e7f8ef}50%{box-shadow:0 0 0 13px #e7f8ef}}
.features-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.feature-card{padding:28px;min-height:252px;border-color:#dbe7e0;border-radius:10px;box-shadow:0 10px 28px #07111906}
.feature-card:hover{transform:translateY(-3px)}
.feature-icon{width:54px;height:54px;display:inline-flex;border-radius:12px;background:#eaf7f0;color:#087b4b}
.feature-icon svg{width:29px;height:29px;stroke-width:1.65}
.feature-card h3{margin-top:20px;font-size:clamp(1.12rem,1.16vw,1.36rem);line-height:1.3;font-weight:800}
.feature-card p{font-size:1.05rem;line-height:1.6;color:#52616a;margin-top:10px}
.feature-emphasis{border-color:#a8dcbf;background:linear-gradient(135deg,#fff,#f2fbf6)}
.website-service{margin-top:28px;border:1px solid #bcdccb;border-left:4px solid #18c879;border-radius:10px;background:#eff9f3;padding:34px 36px;display:grid;grid-template-columns:1.05fr 1fr;gap:42px}
.website-intro{display:flex;gap:22px;align-items:flex-start}
.website-intro>.feature-icon{flex:0 0 auto;background:#fff}
.service-eyebrow{font-size:.83rem;color:#236443;font-weight:750;margin-bottom:8px}
.website-intro h3{font-size:1.5rem;font-weight:800;line-height:1.3;max-width:490px}
.website-intro h3+p{margin-top:13px;color:#465b50;line-height:1.65;font-size:1.04rem;max-width:600px}
.website-options{list-style:none;display:grid;gap:17px;margin:0;padding:0}
.website-options li{display:flex;gap:14px;align-items:flex-start}
.website-options svg{width:24px;height:24px;flex:0 0 auto;color:#087b4b;margin-top:2px}
.website-options strong{display:block;font-size:1.06rem}
.website-options span{display:block;font-size:1rem;color:#465b50;line-height:1.5;margin-top:4px}
.feature-note{font-size:.9rem;color:var(--muted);margin-top:20px;text-align:center;line-height:1.5}
.screens-layout{grid-template-columns:minmax(250px,.82fr) minmax(0,2.5fr);gap:40px}
.screens-copy p{font-size:1.08rem;color:var(--muted)}
.screens-copy .screens-caption{font-size:.8rem;margin-top:18px}
.screenshot-card h3{font-size:1.18rem;font-weight:800}
.screenshot-card p{font-size:1rem;line-height:1.55}
.screenshots-grid{gap:24px}
.screenshot-card img{box-shadow:0 14px 30px #07111913;border:1px solid #dce7e2}
.final-cta{padding:68px 0}
.cta-grid{grid-template-columns:1.35fr .75fr auto;gap:40px}
.custom-quote{max-width:660px;color:#d4e3dc;font-size:1.07rem;line-height:1.65;margin-top:24px}
.cta-benefits{gap:22px}
.cta-benefits article{gap:14px}
.cta-benefits strong{font-size:1.04rem}
.cta-actions{flex-direction:column;align-items:stretch}
.contact-layout{grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.contact-copy h2{font-size:clamp(2rem,2.5vw,3rem);font-weight:850;line-height:1.17;letter-spacing:-.025em}
.contact-copy>p:last-child{font-size:1.1rem;line-height:1.7;max-width:570px}
.contact-cards{padding:0;border:0;background:none;box-shadow:none;gap:13px}
.contact-card{grid-template-columns:60px minmax(0,1fr) auto;padding:24px;border-radius:10px;gap:20px;color:var(--ink);background:#fff;border:1px solid #cbded3;box-shadow:0 8px 24px #07111906}
.contact-card:hover,.contact-card:focus-visible{background:#f0faf4;border-color:#5aaf82;box-shadow:0 12px 28px #0711190b}
.contact-card-phone{border-left:4px solid #087b4b}
.contact-icon{width:60px;height:60px;border-radius:12px;background:#eaf7f0;color:#087b4b;border:0}
.contact-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8}
.contact-card-kicker{color:#087b4b;font-size:.9rem;font-weight:800;letter-spacing:.045em}
.contact-card strong{color:var(--ink);font-size:clamp(1.17rem,1.28vw,1.55rem);font-weight:800;line-height:1.3;overflow-wrap:anywhere}
.contact-card-phone strong,.contact-card-whatsapp strong{font-size:clamp(1.65rem,1.9vw,2.2rem);letter-spacing:.015em}
.contact-card small{color:#52616a;font-size:.98rem;line-height:1.5}
.contact-arrow{width:22px;height:22px;color:#087b4b}
.footer-grid{grid-template-columns:auto 1fr auto;gap:40px;padding:28px 0}
.site-footer nav{justify-content:center;font-size:.92rem;flex-wrap:wrap;gap:24px}
.site-footer nav a{padding-block:8px;overflow-wrap:anywhere}
.footer-copy{font-size:.82rem}
@media(max-width:1450px){
  :root{--page-gutter:4vw}
  .primary-nav{gap:15px;font-size:.87rem}
  .header-inner{gap:22px}.nav-shell{gap:18px}
  .button-small{font-size:.8rem;padding-inline:13px}
  .brand{gap:9px}.brand img{width:38px;height:38px}.brand strong,.brand em{font-size:.9rem}
  .hero-copy{max-width:740px}.hero h1{font-size:clamp(3.3rem,4.5vw,4.2rem);max-width:740px}
  .feature-card{padding:24px}.feature-card p{font-size:1rem}
  .journey-main{gap:15px}.journey-text strong{font-size:1.05rem}.journey-summary{font-size:.94rem}
  .journey-branch .journey-choice{padding:20px 16px;gap:14px}
  .journey-branch .journey-text strong{font-size:1.02rem}
  .cta-grid{grid-template-columns:1.25fr .75fr;gap:32px}.cta-actions{grid-column:1/-1;flex-direction:row;justify-content:flex-start}
  .cta-benefits{display:grid;grid-template-columns:1fr}
  .screens-layout{grid-template-columns:1fr}.screens-copy{max-width:750px}.screens-copy .button{width:auto}
  .contact-layout{gap:40px}
}
@media(max-width:1190px){
  :root{--header-h:76px;--page-gutter:32px}
  .header-inner{grid-template-columns:auto auto;justify-content:space-between}
  .nav-toggle{display:inline-block}.nav-shell{position:fixed;top:calc(var(--header-h) + 8px);left:var(--page-gutter);right:var(--page-gutter);display:grid;grid-template-columns:1fr;gap:16px;padding:20px;border:1px solid #18c87940;border-radius:8px;background:#071119;max-height:calc(100dvh - var(--header-h) - 24px);overflow-y:auto;box-shadow:0 14px 40px #0004;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-8px)}
  .nav-shell.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:none}
  .primary-nav,.header-actions{display:grid;grid-template-columns:1fr;gap:6px}
  .primary-nav a,.header-actions .button{justify-content:center;width:100%;font-size:1rem}
  .primary-nav a:after{display:none}
  .hero h1{max-width:700px;font-size:3.8rem}.hero-subtitle{font-size:1.18rem;max-width:650px}
  .hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .hero-content{gap:46px}.features-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .journey-main{gap:8px}.journey-choice{padding-inline:4px}.journey-summary{font-size:.9rem}
  .journey-branches{gap:12px}.journey-branch .journey-choice{flex-direction:column;align-items:flex-start;gap:16px}
  .journey-branch .journey-summary{font-size:.93rem}
  .website-service{grid-template-columns:1fr;gap:30px}.website-options{grid-template-columns:repeat(3,1fr);gap:28px}
  .website-options li{display:block}.website-options svg{margin-bottom:12px}
  .website-intro h3,.website-intro h3+p{max-width:none}
  .contact-layout{grid-template-columns:1fr}.contact-copy>p:last-child{max-width:700px}.contact-cards{max-width:800px}
  .footer-grid{grid-template-columns:auto 1fr}.site-footer nav{justify-content:flex-end}.footer-copy{grid-column:1/-1}
  html:not(.js) .site-header{position:relative;height:auto}
  html:not(.js) .header-inner{display:block;padding:18px 0}
  html:not(.js) .nav-toggle{display:none}
  html:not(.js) .nav-shell{position:static;visibility:visible;opacity:1;pointer-events:auto;transform:none;margin-top:20px;max-height:none}
  html:not(.js) .hero-content{padding-top:55px}
}
@media(max-width:800px){
  :root{--page-gutter:24px}
  .hero,.hero-content{min-height:auto}
  .hero-content{padding:calc(var(--header-h) + 52px) 0 32px;gap:44px}
  .hero-copy{text-align:left;margin:0}.hero h1{font-size:clamp(2.45rem,7vw,3.6rem);max-width:600px;text-wrap:initial}.hero-kicker{margin-bottom:22px;font-size:1rem}
  .hero-subtitle{font-size:1.06rem;max-width:570px;margin-top:24px}
  .hero-bg{background-position:58% center}.hero-overlay{background:linear-gradient(90deg,#040a10dc,#040a1066),linear-gradient(0deg,#040a10eb,#040a1000)}
  .hero-actions{justify-content:flex-start;margin-top:28px}.hero-actions .button{font-size:.92rem}
  .hero-benefits{gap:22px 15px;text-align:left}.hero-benefits article{gap:11px;align-items:flex-start}.benefit-icon{width:42px;height:42px}.benefit-icon svg{width:21px;height:21px}
  .hero-benefits strong{font-size:.92rem;line-height:1.3}.hero-benefits small{font-size:.82rem;line-height:1.5}
  .section{padding:56px 0}.section-heading{margin-bottom:28px}.section-heading p{font-size:1rem}
  .journey-toolbar{display:block;font-size:.9rem}.journey-controls{margin-top:16px;flex-wrap:wrap}
  .journey-main{display:grid;grid-template-columns:1fr;gap:12px}
  .journey-main:before{top:40px;bottom:40px;left:38px;right:auto;width:2px;height:auto}
  .journey-main .journey-choice{display:flex;align-items:center;gap:21px;text-align:left;padding:15px 17px;background:#fff;border:1px solid #dae9e1;border-radius:10px}
  .journey-icon{width:64px;height:64px;flex:0 0 auto;margin:0;box-shadow:none}
  .journey-icon svg{width:30px;height:30px}.step-number{width:24px;height:24px;font-size:.68rem}
  .journey-text strong{max-width:none;font-size:1.06rem;margin:0}.journey-summary{max-width:none;margin:6px 0 0;font-size:.92rem}
  .journey-main .is-selected .journey-choice{border-color:#64ba8d;background:#f2fbf6}
  .journey-branches{grid-template-columns:1fr;margin-top:28px;gap:12px}
  .journey-branch .journey-choice{flex-direction:row;align-items:center;padding:20px 17px;gap:21px;height:auto}
  .journey-branch .journey-icon{width:64px;height:64px}
  .branch-cargos:before{display:none}.branch-cargos{order:-1}
  .journey-detail{display:none}
  .js .is-selected .mobile-detail{display:block;padding:15px 18px;font-size:.97rem;line-height:1.65;background:#eff8f3;border-radius:0 0 10px 10px;color:#3b5346;border:1px solid #d9ede1;border-top:0}
  .journey-note{text-align:left;font-size:.85rem}
  .features-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.feature-card{padding:23px;min-height:0}.feature-card h3{font-size:1.15rem}.feature-card p{font-size:.98rem;line-height:1.6}
  .website-service{padding:28px;gap:26px}.website-intro{gap:18px}.website-intro h3{font-size:1.35rem}.website-intro h3+p{font-size:1rem}
  .website-options{grid-template-columns:1fr;gap:22px}.website-options li{display:flex;gap:16px}.website-options svg{margin:2px 0 0}
  .screenshots-grid{grid-template-columns:1fr;gap:30px}.screenshot-card img{max-width:550px}.screens-layout{gap:32px}
  .cta-grid{grid-template-columns:1fr;gap:30px}.cta-benefits{grid-template-columns:repeat(3,1fr);gap:20px}.cta-benefits article{flex-direction:column;align-items:flex-start}.cta-benefits strong{font-size:.96rem}.custom-quote{font-size:1rem;margin-top:20px}
  .contact-layout{gap:28px}.contact-card{padding:20px;gap:16px}.contact-copy>p:last-child{font-size:1.02rem}
  .footer-grid{grid-template-columns:1fr;gap:20px}.site-footer nav{justify-content:flex-start;display:grid;gap:3px}.footer-copy{grid-column:auto}
}
@media(max-width:480px){
  :root{--page-gutter:20px;--header-h:72px}
  .hero-content{padding-top:calc(var(--header-h) + 42px)}.hero h1{font-size:2.58rem;letter-spacing:-.035em}.hero-kicker .mini-logo{width:34px;height:34px}.mini-logo img{width:24px;height:24px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:12px}.hero-actions .button{width:100%;font-size:.96rem;min-height:52px}
  .hero-benefits{gap:23px 12px}.hero-benefits article{display:block}.hero-benefits .benefit-icon{margin-bottom:12px}.hero-benefits strong{font-size:.94rem}
  .section-heading h2{font-size:2rem;line-height:1.18}.section-heading{text-align:left}.section-heading p{font-size:1rem}
  .journey-controls button{padding:10px 12px;font-size:.84rem}.journey-controls{gap:8px}
  .journey-main .journey-choice,.journey-branch .journey-choice{gap:17px;padding:16px 13px}.journey-icon,.journey-branch .journey-icon{width:56px;height:56px}.journey-icon svg{width:28px;height:28px}.journey-text strong{font-size:1rem}.journey-summary{font-size:.89rem}.journey-main:before{left:42px}
  .features-grid{grid-template-columns:1fr;gap:14px}.feature-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px 18px;padding:22px}.feature-card .feature-icon{width:48px;height:48px;grid-row:1/3}.feature-card h3{margin:0;font-size:1.13rem;align-self:center}.feature-card p{grid-column:2;margin:0;font-size:.96rem}.feature-icon svg{width:26px;height:26px}
  .website-service{padding:24px 20px}.website-intro{display:block}.website-intro .feature-icon{margin-bottom:20px}.website-options strong{font-size:1rem}.website-options span{font-size:.95rem}
  .cta-actions{flex-direction:column}.cta-benefits{gap:12px}.cta-benefits strong{font-size:.85rem}.final-cta{padding:50px 0}
  .contact-card{grid-template-columns:42px minmax(0,1fr);gap:14px;padding:18px 14px}.contact-icon{width:42px;height:42px}.contact-icon svg{width:23px;height:23px}.contact-card strong{font-size:1rem}.contact-card small{font-size:.85rem}.contact-arrow{display:none}
  .contact-card-phone strong,.contact-card-whatsapp strong{font-size:1.6rem}.contact-card-kicker{font-size:.82rem}
}
@media(prefers-reduced-motion:reduce){.is-playing .is-selected .journey-icon{animation:none}.journey-choice,.journey-icon{transition:none}}
