@font-face{font-family:'Inter';src:url('/fonts/Inter-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Manrope';src:url('/fonts/Manrope-Variable.woff2') format('woff2');font-weight:200 800;font-display:swap}
/* bandiere dei prefissi telefonici: Windows non ha le emoji delle bandiere. Twemoji Country Flags (country-flag-emoji-polyfill, grafica Twemoji CC-BY 4.0), solo per i caratteri delle bandiere */
@font-face{font-family:'Twemoji Country Flags';src:url('/fonts/TwemojiCountryFlags.woff2') format('woff2');unicode-range:U+1F1E6-1F1FF,U+1F3F4,U+E0062-E007F;font-display:swap}
/* typescale: dimensione, interlinea e spaziatura (desktop; i valori mobile sono sotto i 720px). Pesi: display 700, altri titoli 600, testi 400/700, etichette 500/600, etichette in maiuscolo 500 */
:root{
  --fs-dl:70px;--lh-dl:80px;--ls-dl:-1.28px;--fw-dl:700;
  --fs-dm:58px;--lh-dm:68px;--ls-dm:-1px;--fw-dm:700;
  --fs-ds:48px;--lh-ds:56px;--ls-ds:-.5px;--fw-ds:700;
  --fs-hl:40px;--lh-hl:48px;--ls-hl:0;--fw-hl:600;
  --fs-hm:32px;--lh-hm:40px;--ls-hm:0;--fw-hm:600;
  --fs-hs:24px;--lh-hs:32px;--ls-hs:0;--fw-hs:600;
  --fs-tl:20px;--lh-tl:24px;--ls-tl:0;--fw-tl:600;
  --fs-tm:18px;--lh-tm:22px;--ls-tm:0;--fw-tm:600;
  --fs-bl:18px;--lh-bl:27px;--ls-bl:0;
  --fs-bm:16px;--lh-bm:24px;--ls-bm:0;
  --fs-bs:14px;--lh-bs:21px;--ls-bs:0;
  --fw-body:400;--fw-body-bold:700;
  --fs-ll:14px;--lh-ll:16px;--ls-ll:.1px;
  --fs-lm:12px;--lh-lm:15px;--ls-lm:.5px;
  --fs-lsm:10px;--lh-lsm:13px;--ls-lsm:.5px;
  --fw-label:500;--fw-label-bold:600;
  --lh-caps:1.3125rem;--ls-caps:.0875rem;--fw-caps:500;
}
@media (max-width:720px){
  :root{
    --fs-dl:40px;--lh-dl:48px;
    --fs-dm:36px;--lh-dm:44px;
    --fs-ds:32px;--lh-ds:40px;
    --fs-hl:28px;--lh-hl:36px;
    --fs-hm:24px;--lh-hm:32px;
    --fs-hs:20px;--lh-hs:24px;
    --fs-tl:18px;--lh-tl:24px;
    --fs-tm:16px;--lh-tm:22px;
  }
}
:root{
  --ink:#2b3036;--ink-2:#4a5058;--muted:#646b73;
  --page:#edeff2;--card:#f6f7f8;--sunken:#d8dbe0;--line:#dbe0e3;
  --teal:#307e82;--teal-700:#2c6266;--teal-900:#1a4345;--teal-950:#162d31;
  --cyan:#48c0d6;--sky:#92dae5;--amber:#f7a963;--amber-deep:#d9985f;
  --foot:#2b7275;--foot-bar:#295a5e;
  --r-xl:28px;--r-lg:20px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{overflow-x:clip}
body{margin:0;background:var(--page);color:var(--ink);font-family:'Inter',Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:'Manrope',Arial,sans-serif;font-weight:600;margin:0;color:var(--ink)}
p{margin:0}
.wrap{width:min(1440px,calc(100% - 80px));margin:0 auto;position:relative}
svg.i{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
svg.i.f{fill:currentColor;stroke:none}

/* header */
.hdr{position:absolute;top:0;left:0;right:0;height:80px;z-index:20}
.hdr .wrap{display:flex;align-items:center;height:80px;gap:56px}
.hdr .logo{width:163px;height:33px;flex:none}
.nav{display:flex;gap:40px;font-family:'Manrope',Arial,sans-serif;color:var(--ink-2);flex:1;font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.nav a{display:flex;align-items:center;gap:8px;white-space:nowrap}
.nav svg{width:12px;height:12px}
.hdr .tools{display:flex;align-items:center;gap:20px;color:var(--ink-2)}
.hdr .globe{display:flex;align-items:center;gap:6px}
.hdr .moon{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:rgba(255,255,255,.4)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;font-family:'Manrope',Arial,sans-serif;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;border:2px solid transparent;transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}
.btn svg{width:20px;height:20px;stroke-width:2.2}
.btn-amber{background:var(--amber);color:#2b3036;box-shadow:0 2px 6px rgba(0,0,0,.08)}
/* pulsanti pieni: arancione #F7A963 e verde #307E82; all'hover (e alla pressione su touch) state layer #FCFCFC al 40%, in dissolvenza.
   Lo state layer è un'ombra interna (si anima, a differenza di un gradiente); il bordo prende lo stesso colore già miscelato */
@media (hover:hover){
  .btn-amber:hover{border-color:#f9caa0;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.08)}
  .btn-teal:hover{border-color:#82b0b3;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.12)}
}
.btn-amber:active{border-color:#f9caa0;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.08)}
.btn-teal:active{border-color:#82b0b3;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.12)}
/* stesso state layer sugli altri pulsanti pieni (scuro e verde-azzurro) */
@media (hover:hover){
  .btn-ink:hover{border-color:#7f8285;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4)}
  .btn-x:hover{border-color:#91b8bf;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.15)}
}
.btn-ink:active{border-color:#7f8285;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4)}
.btn-x:active{border-color:#91b8bf;box-shadow:inset 0 0 0 100px rgba(252,252,252,.4),0 2px 6px rgba(0,0,0,.15)}

.btn-sm{height:42px;padding:0 20px;font-size:var(--fs-bm);letter-spacing:var(--ls-bm)}
.btn-lg{height:64px;padding:0 34px;font-size:var(--fs-tl);letter-spacing:var(--ls-tl)}
.btn-md{height:44px;padding:0 24px;font-size:var(--fs-tm);letter-spacing:var(--ls-tm)}
.btn-out{background:transparent;border-color:var(--teal);color:var(--teal-700)}
.btn-out:hover{background:rgba(48,126,130,.08)}
.btn-teal{background:var(--teal);color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.btn-ink{background:#2b3036;color:#fff}
.btn-white-out{border-color:#fff;color:#fff;background:rgba(255,255,255,.12)}
.btn-xs{height:38px;padding:0 20px;font-size:var(--fs-bm);letter-spacing:var(--ls-bm)}

/* tag chip */
.tag{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 18px;border:1.5px solid #78b9ba;border-radius:999px;color:var(--teal-700);text-transform:uppercase;font-size:var(--fs-ll);line-height:var(--lh-caps);letter-spacing:var(--ls-caps);font-weight:var(--fw-caps)}
.tag svg{width:20px;height:20px}
.tag.o{border-color:#f0b27d;color:#8a5a2a}
.tag.w{border-color:rgba(255,255,255,.6);color:#fff}
.tag.wo{border-color:#f7a963;color:#f7c392}
.tag.d{border-color:#2b3036;color:#2b3036}
.hl{background:linear-gradient(90deg,var(--amber-deep) 0,#8b8a62 55%,#3f6760 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.h2{font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.lead{color:var(--muted);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}

/* decor */
.ring{position:absolute;border-radius:50%;border:60px solid rgba(48,126,130,.07);pointer-events:none}
.blob{position:absolute;border-radius:999px;background:rgba(48,126,130,.08);pointer-events:none}

/* hero */
.hero{position:relative;background:linear-gradient(180deg,#d4d9da 0,#e9eded 5%,#f3f7f7 30%,#f4f8f8 52%,#d6eeee 78%,#aedfe1 100%);padding-top:200px;height:1833px;overflow:hidden;text-align:center}
.hero .chip{display:inline-flex;align-items:center;gap:10px;background:#fff;border-radius:999px;min-height:40px;padding:6px 20px;text-transform:uppercase;color:var(--teal-700);font-size:var(--fs-ll);line-height:var(--lh-caps);letter-spacing:var(--ls-caps);font-weight:var(--fw-caps)}
.hero .chip svg{width:18px;height:18px}
.hero h1{margin-top:26px;font-size:var(--fs-dl);line-height:var(--lh-dl);letter-spacing:var(--ls-dl);font-weight:var(--fw-dl)}
.hero .sub{width:760px;max-width:100%;margin:51px auto 0;color:var(--ink-2);font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.hero .hcta{display:flex;justify-content:center;gap:24px;margin-top:49px}
.hero .bul{display:flex;justify-content:center;gap:48px;margin-top:39px;color:var(--ink-2);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.hero .bul span{display:flex;align-items:center;gap:10px}
.hero .bul span:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--teal)}
.hero .photo{margin-top:66px;border-radius:var(--r-lg);overflow:hidden;height:754px}
.hero .photo img{width:100%;height:100%;object-fit:cover}
.trust{margin-top:90px;display:flex;align-items:center;gap:30px;color:var(--ink-2);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.trust i{flex:1;height:1px;background:rgba(43,48,54,.25)}
.trust-band{margin-top:30px;height:66px;border:2px dashed rgba(48,126,130,.6);border-radius:16px;display:flex;align-items:center;justify-content:center;color:var(--teal-700);background:rgba(255,255,255,.35);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}

/* products */
.sec{position:relative;padding:100px 0}
.sec .intro{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.prod{padding-top:99px;padding-bottom:0}
.prod .lead{width:700px;max-width:100%}
.cards2{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:33px}
.pc{background:var(--card);border-radius:var(--r-xl);overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.pc .top{padding:20px 24px 0;display:flex;flex-direction:column;height:253px}
.pc .eyebrow{color:var(--muted);font-size:var(--fs-ll);line-height:var(--lh-ll);letter-spacing:var(--ls-ll);font-weight:var(--fw-label)}
.pc h3{margin-top:6px;font-size:var(--fs-hl);line-height:var(--lh-hl);letter-spacing:var(--ls-hl);font-weight:var(--fw-hl)}
.pc p.t{margin-top:16px;color:var(--ink-2);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.pc .btn-row{margin-top:auto;display:flex;justify-content:flex-end;padding-bottom:20px}
.pc img.m{width:100%;height:532px;object-fit:cover;background:var(--teal)}
.pc.wide{grid-column:1/3;display:grid;grid-template-columns:40% 60%;margin-top:0}
.pc.wide .left{padding:40px 24px;display:flex;flex-direction:column}
.pc.wide .left p.t{margin-top:20px}
.pc.wide .left .btn{margin-top:36px;align-self:flex-start}
.pc.wide img.m{height:100%;min-height:568px}

/* overview */
.over{padding:160px 0 0;text-align:center;position:relative}
.over .intro{align-items:center;gap:20px}
.over h2{font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.demo{margin-top:38px;background:#1a4345;border-radius:var(--r-xl);height:696px;display:flex;justify-content:center;align-items:flex-start;padding-top:80px;position:relative;overflow:hidden}
.demo img{width:952px;height:auto;border-radius:24px 24px 0 0}
.demo .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:rgba(43,48,54,.85);color:#fff;display:grid;place-items:center;margin-top:-30px}
.demo .play svg{width:22px;height:22px;fill:#fff;stroke:none}

/* solutions */
.sol{padding-top:108px;padding-bottom:79px}
.sol .head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.sol .head .lead{max-width:508px;margin-left:0;margin-top:40px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.segs{display:inline-flex;gap:6px;margin-top:53px;padding:6px;border:1.5px solid #c7cdd2;border-radius:999px;font-weight:500}
.segs button{font:inherit;border:0;background:transparent;color:var(--ink);padding:0 30px;height:54px;border-radius:999px;cursor:pointer;font-size:var(--fs-tm);letter-spacing:var(--ls-tm)}
.segs button.on{background:var(--cyan);font-weight:600;color:#1f2a30}
.solp{margin-top:32px;background:var(--sunken);border-radius:var(--r-xl);padding:40px;display:grid;grid-template-columns:660px 1fr;gap:40px;min-height:672px}
.solp img{width:660px;height:592px;object-fit:cover;border-radius:24px}
.solp h3{font-size:var(--fs-hl);line-height:var(--lh-hl);letter-spacing:var(--ls-hl);font-weight:var(--fw-hl)}
.solp p{color:var(--ink-2);margin-top:20px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.solp ul{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-direction:column;gap:14px;color:var(--ink-2)}
.solp li{display:flex;align-items:center;gap:14px}
.solp li svg{width:24px;height:24px;color:var(--ink-2)}
.solp .btn{margin-top:50px}
.ctl{display:flex;justify-content:space-between;align-items:center;padding:0 32px;margin-top:28px}
.dots{display:flex;gap:7px;align-items:center}
.dots i{width:8px;height:8px;border-radius:50%;background:#c5cbd0}
.dots i.on{width:32px;border-radius:4px;background:var(--teal)}
.arrows{display:flex;gap:16px}
.arrows b{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#a6c0c3;color:#fff;cursor:pointer}
.arrows b.on{background:var(--teal)}
.arrows svg{width:22px;height:22px;stroke-width:2.2}

/* numbers */
.nums{background:linear-gradient(160deg,#162d31 0,#1d3d41 42%,#2a5459 75%,#7f785f 100%);color:#fff;padding:151px 0 76px;position:relative;overflow:hidden}
.nums h2{color:#fff;margin-top:26px;font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:48px;margin-top:69px}
.stats>div{border-top:1px solid rgba(143,191,194,.8);padding-top:20px}
.stats b{display:block;font-family:'Manrope',Arial,sans-serif;font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.stats span{display:block;margin-top:16px;color:#d5e2e3;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}

/* features */
.feat{padding:80px 0 141px;position:relative;overflow:hidden}
.feat .head{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.feat .lead{width:640px}
.track{display:flex;gap:24px;margin-top:94px;overflow:hidden;position:relative}
.fc{flex:0 0 438px;background:var(--card);border-radius:var(--r-xl);overflow:hidden}
.fc img{width:100%;height:292px;object-fit:cover}
.fc .b{padding:28px 24px 28px}
.fc .ic{width:56px;height:56px;border-radius:14px;background:var(--teal);color:#fff;display:grid;place-items:center}
.fc .ic svg{width:28px;height:28px}
.fc h3{margin-top:28px;font-size:var(--fs-hs);line-height:var(--lh-hs);letter-spacing:var(--ls-hs);font-weight:var(--fw-hs)}
.fc p{color:var(--muted);margin-top:14px;min-height:50px;font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.fc .btn{margin-top:26px}
.feat .ctl{margin-top:30px;justify-content:center}

/* case */
.case{padding:0 0 29px;position:relative;overflow:hidden}
.case .head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.case .head .l{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.case .lead{width:640px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.cs{margin-top:30px;background:var(--card);border-radius:var(--r-xl);padding:24px;display:grid;grid-template-columns:1fr 668px;gap:24px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.cs .l{padding:8px 0 0 8px;display:flex;flex-direction:column}
.cs .ttl{color:#3a4047;font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.cs .logo-ph{margin-top:20px;height:56px;width:190px;border:2px dashed rgba(48,126,130,.6);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--teal-700);font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.cs dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;margin:28px 0 0}
.cs dt{text-transform:uppercase;color:var(--muted);font-size:var(--fs-ll);line-height:var(--lh-caps);letter-spacing:var(--ls-caps);font-weight:var(--fw-caps)}
.cs dd{margin:6px 0 0;color:var(--ink);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.cs .feats{margin-top:22px}
.cs .feats .dt{text-transform:uppercase;color:var(--muted);font-size:var(--fs-ll);line-height:var(--lh-caps);letter-spacing:var(--ls-caps);font-weight:var(--fw-caps)}
.cs ul{margin:8px 0 0;padding-left:30px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.cs .foot{margin-top:auto;border-top:1px solid #cfd5d9;padding-top:22px;margin-right:16px}
.cs img{width:668px;height:560px;object-fit:cover;border-radius:var(--r-lg)}
.note{display:inline-block;margin-top:14px;border:2px dashed rgba(48,126,130,.6);border-radius:10px;padding:6px 14px;color:var(--teal-700);background:rgba(255,255,255,.5);font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}

/* about */
.about{background:var(--sky);padding:80px 0 81px;position:relative;overflow:hidden}
.about h2{margin-top:26px;width:900px;max-width:100%;font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.about .grid{display:grid;grid-template-columns:700px 1fr;gap:40px;margin-top:40px;align-items:stretch}
.about img{width:700px;height:532px;object-fit:cover;border-radius:24px}
.about .txt{padding-top:14px;display:flex;flex-direction:column;position:relative}
.about .txt .plus{line-height:1;font-size:var(--fs-hs);letter-spacing:var(--ls-hs);font-weight:var(--fw-hs)}
.about .txt .p{margin-top:auto;display:flex;flex-direction:column;gap:20px;color:#2b3036;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.about .btn{margin-top:36px;align-self:flex-start}

/* resources */
.res{padding:80px 0 77px;position:relative}
.res .head{display:flex;justify-content:space-between;align-items:flex-end}
.res .head .l{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.rg{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:322px 322px;gap:24px;margin-top:37px}
.rc{position:relative;border-radius:var(--r-xl);overflow:hidden;color:#fff;background:#1c2024;display:flex;flex-direction:column;justify-content:flex-end;padding:24px 24px 24px}
.rc.big{grid-row:1/3}
.rc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rc:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,30,.2) 0,rgba(20,24,30,.78) 55%,rgba(20,24,30,.92) 100%)}
.rc>*{position:relative;z-index:1}
.rc .k{text-transform:uppercase;font-size:var(--fs-ll);line-height:var(--lh-caps);letter-spacing:var(--ls-caps);font-weight:var(--fw-caps)}
.rc h3{color:#fff;margin-top:8px;font-size:var(--fs-hm);line-height:var(--lh-hm);letter-spacing:var(--ls-hm);font-weight:var(--fw-hm)}
.rc.big h3{font-size:var(--fs-hm);line-height:var(--lh-hm);letter-spacing:var(--ls-hm);font-weight:var(--fw-hm)}
.rc .d{margin-top:18px;color:#e5e8ea;font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}

/* cta */
.cta{background:linear-gradient(180deg,#184042 0,#1f5558 45%,#2b7275 100%);color:#fff;padding:159px 0 0;height:728px}
.cta h2{color:#fff;margin-top:26px;font-size:var(--fs-dm);line-height:var(--lh-dm);letter-spacing:var(--ls-dm);font-weight:var(--fw-dm)}
.cta p{margin-top:40px;color:#dbe7e8;width:960px;max-width:100%;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.cta .cta-btns{display:flex;gap:24px;margin-top:56px}

/* footer */
.ft{background:var(--foot);color:#fff;padding:0}
.ft .cols{display:grid;grid-template-columns:365px 275px 275px 275px 1fr;gap:0;margin-top:0;padding-top:0}
.ft .logo{width:200px;height:40px}
.ft h4{color:#fff;margin:0 0 20px;font-family:'Manrope',Arial,sans-serif;font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.ft ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;color:#e6f0f0;font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.ft .bar{background:var(--foot-bar);color:#fff;padding:22px 0 23px;font-size:var(--fs-lm);line-height:var(--lh-lm);letter-spacing:var(--ls-lm);font-weight:var(--fw-label)}
.ft .bar .wrap{display:flex;justify-content:space-between;align-items:center}
.ft .bar b{display:block;margin-bottom:4px;font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.ft .bar .legal{display:flex;gap:20px;align-items:center;color:var(--amber);margin-right:34px;font-size:var(--fs-ll);line-height:var(--lh-ll);letter-spacing:var(--ls-ll);font-weight:var(--fw-label)}
.ft .bar .legal i{width:1px;height:16px;background:rgba(255,255,255,.7)}
.soc{display:flex;gap:14px}
.soc a{width:44px;height:44px;border-radius:50%;background:var(--amber);display:grid;place-items:center;color:#2b3036}
.soc svg{width:22px;height:22px;fill:currentColor;stroke:none}
.ftwrap{padding-top:48px;padding-bottom:87px}

/* compare page */
.chero{position:relative;background:linear-gradient(180deg,#ced3d4 0,#e9eeee 22%,#f3f7f7 60%,#e2f1f1 100%);padding-top:180px;padding-bottom:110px;overflow:hidden}
.chero .in{max-width:900px;display:flex;flex-direction:column;gap:30px;align-items:flex-start}
.chero h1{font-size:var(--fs-dl);line-height:var(--lh-dl);letter-spacing:var(--ls-dl);font-weight:var(--fw-dl)}
.chero .sub{color:var(--ink-2);max-width:760px;font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.ver{display:inline-flex;align-items:center;gap:10px;background:#fff;border-radius:999px;height:40px;padding:0 20px;color:var(--teal-700);border:2px dashed rgba(48,126,130,.6);font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}
.two .pc{padding:40px 36px}
.two .pc h3{font-size:var(--fs-hm);line-height:var(--lh-hm);letter-spacing:var(--ls-hm);font-weight:var(--fw-hm)}
.two .pc ul{margin:22px 0 0;padding-left:24px;color:var(--ink-2);display:flex;flex-direction:column;gap:10px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.two .pc.hi{background:var(--teal-900);}
.two .pc.hi h3,.two .pc.hi ul{color:#fff}
.two .pc.hi ul{color:#dbe7e8}
.tbl{margin-top:56px;background:var(--card);border-radius:var(--r-xl);overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.tbl table{width:100%;border-collapse:collapse;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.tbl th{background:var(--teal-900);color:#fff;text-align:left;font-family:'Manrope',Arial,sans-serif;font-weight:600;padding:20px 24px}
.tbl td{padding:18px 24px;border-top:1px solid var(--line);vertical-align:top;color:var(--ink-2)}
.tbl td:first-child{color:var(--ink);font-weight:500;width:28%}
.tbl .ph{border:2px dashed rgba(48,126,130,.55);border-radius:10px;padding:6px 12px;color:var(--teal-700);display:inline-block;font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.tbl .tv{color:var(--teal-700);font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.faq{margin-top:56px;display:flex;flex-direction:column;gap:14px}
.faq details{background:var(--card);border-radius:var(--r-lg);padding:22px 28px}
.faq summary{cursor:pointer;font-family:'Manrope',Arial,sans-serif;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:var(--fs-tl);line-height:var(--lh-tl);letter-spacing:var(--ls-tl);font-weight:var(--fw-tl)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-size:28px;line-height:1}
.faq details[open] summary:after{content:"–"}
.faq p{margin-top:14px;color:var(--ink-2);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.ph-card{margin-top:56px;border:2px dashed rgba(48,126,130,.6);border-radius:var(--r-xl);padding:44px;background:rgba(255,255,255,.5);display:grid;grid-template-columns:1fr 1fr;gap:40px}
.ph-card h3{font-size:var(--fs-hm);line-height:var(--lh-hm);letter-spacing:var(--ls-hm);font-weight:var(--fw-hm)}
.ph-card p{margin-top:14px;color:var(--ink-2);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.legal-note{margin-top:56px;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.crumb{display:flex;gap:10px;color:var(--muted);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}

/* responsive */
@media (max-width:1100px){
  .wrap{width:calc(100% - 32px)}
  .nav,.hdr .globe{display:none}
  .hdr .wrap{justify-content:space-between}
  .hero{height:auto;padding-bottom:70px}
  .hero .sub{margin-top:36px}
  .hero .photo{height:auto}
  .trust-band{height:auto;padding:14px;text-align:center}
  .cards2,.pc.wide,.solp,.cs,.about .grid,.rg,.two,.ph-card,.sol .head{grid-template-columns:1fr}
  .pc.wide{grid-column:auto}
  .pc .top{height:auto;padding-bottom:20px}
  .pc .btn-row{margin-top:20px}
  .pc img.m,.pc.wide img.m{height:auto;min-height:0}
  .demo{height:auto;padding:24px 24px 0}
  .demo img{width:100%}
  .sol{padding-top:80px}
  .sol .head .lead{margin-top:0}
  .solp{min-height:0;padding:24px}
  .solp img{width:100%;height:auto}
  .stats{grid-template-columns:1fr 1fr;gap:32px}
  .track{overflow-x:auto}
  .fc{flex-basis:300px}
  .feat .ctl{display:none}
  .case .head,.res .head{flex-direction:column;align-items:flex-start}
  .cs img{width:100%;height:auto}
  .about .grid{gap:24px}
  .about img{width:100%;height:auto}
  .rg{grid-template-rows:none}
  .rc{min-height:260px}.rc.big{grid-row:auto;min-height:420px}
  .cta{height:auto;padding:80px 0}
  .ft .cols{grid-template-columns:1fr 1fr;gap:32px}
  .ft .bar .wrap{flex-direction:column;align-items:flex-start;gap:20px}
  .ft .bar .wrap>div:last-child{flex-direction:column;align-items:flex-start;gap:16px}
  .tbl{overflow-x:auto}.tbl table{min-width:760px}
  .chero{padding-top:140px}
}
@media (max-width:600px){
  .hdr .btn{display:none}
  .stats{grid-template-columns:1fr}
  .hero .hcta,.cta .cta-btns{flex-direction:column;align-items:stretch}
  .hero .bul{flex-direction:column;align-items:center;gap:12px}
  .btn-lg{height:56px;padding:0 24px}
  .ft .cols{grid-template-columns:1fr}
  .ph-card,.two .pc{padding:24px}
  .segs{max-width:100%;gap:4px}
  .segs button{padding:0 12px;white-space:nowrap}
}

/* landing */
.lhdr{height:80px;display:flex;align-items:center;position:absolute;top:0;left:0;right:0;z-index:5}
.lhdr .wrap{display:flex;justify-content:space-between;align-items:center}
.lhdr .logo{width:163px;height:33px}
.lhero{position:relative;background:linear-gradient(180deg,#d4d9da 0,#e9eded 6%,#f3f7f7 40%,#e2f1f1 100%);padding:170px 0 110px;overflow:hidden}
.lhero .in{max-width:980px;display:flex;flex-direction:column;gap:30px;align-items:flex-start}
.lhero h1{font-size:var(--fs-dl);line-height:var(--lh-dl);letter-spacing:var(--ls-dl);font-weight:var(--fw-dl)}
.lhero .sub{color:var(--ink-2);max-width:760px;font-size:var(--fs-tm);line-height:var(--lh-tm);letter-spacing:var(--ls-tm);font-weight:var(--fw-tm)}
.lcta{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.proof{border:2px dashed rgba(48,126,130,.6);border-radius:14px;padding:12px 18px;color:var(--teal-700);background:rgba(255,255,255,.55);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.lsec{padding:90px 0 0}
.lsec .intro{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.three .pc{padding:32px}
.three h3{font-size:var(--fs-hs);line-height:var(--lh-hs);letter-spacing:var(--ls-hs);font-weight:var(--fw-hs)}
.three p{margin-top:12px;color:var(--ink-2);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.steps{display:flex;flex-direction:column;gap:24px;margin-top:44px}
.step{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:var(--card);border-radius:var(--r-xl);padding:32px}
.step .n{width:44px;height:44px;border-radius:50%;background:var(--teal);color:#fff;font-family:'Manrope',Arial,sans-serif;display:grid;place-items:center;font-size:var(--fs-tl);line-height:var(--lh-tl);letter-spacing:var(--ls-tl);font-weight:var(--fw-tl)}
.step h3{margin-top:18px;font-size:var(--fs-hm);line-height:var(--lh-hm);letter-spacing:var(--ls-hm);font-weight:var(--fw-hm)}
.step p{margin-top:12px;color:var(--ink-2);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.shot{height:260px;border:3px dashed var(--teal);border-radius:var(--r-lg);background:#e6eeee;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--teal-700);text-align:center;padding:16px}
.shot b{font-family:'Manrope',Arial,sans-serif;color:var(--teal-900);font-size:var(--fs-tl);line-height:var(--lh-tl);letter-spacing:var(--ls-tl);font-weight:var(--fw-tl)}
.calc{margin-top:44px;background:var(--card);border-radius:var(--r-xl);padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:36px}
.field{display:flex;flex-direction:column;gap:8px;color:var(--ink-2);font-size:var(--fs-bm);line-height:var(--lh-bm);letter-spacing:var(--ls-bm);font-weight:var(--fw-body)}
.field input,.field select{font:inherit;height:52px;border:1.5px solid #c7cdd2;border-radius:999px;padding:0 20px;background:#fff;color:var(--ink);font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.field input:hover,.field select:hover,.field input:focus,.field select:focus{border-color:var(--amber);outline:none}
.res-box{background:var(--teal-900);color:#fff;border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column;gap:12px;font-size:var(--fs-bl);line-height:var(--lh-bl);letter-spacing:var(--ls-bl);font-weight:var(--fw-body)}
.res-box b{font-family:'Manrope',Arial,sans-serif;font-size:var(--fs-hl);line-height:var(--lh-hl);letter-spacing:var(--ls-hl);font-weight:var(--fw-hl)}
.formband{margin-top:90px;background:linear-gradient(180deg,#184042 0,#2b7275 100%);color:#fff;padding:90px 0}
.formband h2{color:#fff;font-size:var(--fs-ds);line-height:var(--lh-ds);letter-spacing:var(--ls-ds);font-weight:var(--fw-ds)}
.formband .fg{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.formband form{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:var(--r-xl);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.formband .field{color:#dbe7e8}
.formband .field.full{grid-column:1/3}
.formband .ok{display:none;grid-column:1/3;background:#fff;color:var(--ink);border-radius:16px;padding:16px 20px}
.lfoot{background:var(--foot-bar);color:#e6f0f0;padding:26px 0;font-size:var(--fs-bs);line-height:var(--lh-bs);letter-spacing:var(--ls-bs);font-weight:var(--fw-body)}
.lfoot .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media (max-width:1100px){
  .lhero{padding-top:130px}
  .three,.step,.calc,.formband .fg,.formband form{grid-template-columns:1fr}
  .formband .field.full,.formband .ok{grid-column:auto}
}
@media (max-width:600px){.lhdr .btn{height:38px;padding:0 14px}}
/* Modulo a una colonna: gli stili inline grid-column:1/3 creerebbero una seconda colonna e la sezione sborderebbe (fino a ~700px). */
@media (max-width:720px){
  .formband .fg,.formband form{grid-template-columns:minmax(0,1fr)}
  .formband form [style*="grid-column"]{grid-column:1/-1 !important}
  .formband .field input,.formband .field select{min-width:0}
}
/* mobile: CTA delle hero a tutta larghezza */
@media (max-width:720px){
  :is(.hero .hcta,.phero .btns,.shero .btns,.fhero .btns,.fx-hero .btns,.cs-hero .btns,.ab-hero .btns,.lhero .lcta){display:flex;flex-direction:column;align-items:stretch;align-self:stretch;width:100%}
  :is(.hero .hcta,.phero .btns,.shero .btns,.fhero .btns,.fx-hero .btns,.cs-hero .btns,.ab-hero .btns,.lhero .lcta) .btn{width:100%;white-space:normal;text-align:center}
}
/* Link «Preferenze cookie» nel footer: apre la CMP (/cmp.js) */
.legal a,.legal .cmp-open{white-space:nowrap}
.cmp-open{background:none;border:0;padding:0;margin:0;font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;text-decoration:inherit}
.cmp-open:hover{text-decoration:underline}
