:root{--teal:#008b92;--teal2:#19cbd0;--dark:#111820;--ink:#20252b;--muted:#69747f;--bg:#f5fbfb;--line:#deeeee;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1180px,92%);margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{width:min(1320px,94%);margin:auto;height:98px;display:flex;align-items:center;gap:28px}.logo img{width:270px}.nav{margin-left:auto;display:flex;gap:34px}.nav-group{display:grid;gap:5px}.nav-group span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:900}.nav-group a{font-weight:800;font-size:14px;color:#29313a}.nav-group a:hover{color:var(--teal)}.fast{background:#07131b;color:white;padding:12px 18px;border-radius:18px;font-size:12px;line-height:1.2}.fast b{font-size:17px}.menu{display:none;margin-left:auto;border:0;background:var(--teal);color:white;border-radius:12px;padding:10px 14px;font-size:24px}
.hero{padding:86px 0 74px;background:radial-gradient(circle at 80% 15%,rgba(25,203,208,.22),transparent 32%),linear-gradient(135deg,#fff,#eefafa)}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.sup{color:var(--teal);font-weight:900;text-transform:uppercase;letter-spacing:.13em;font-size:14px}.hero h1{font-size:clamp(58px,8vw,112px);line-height:.88;letter-spacing:-.075em;margin:18px 0 24px}.lead{font-size:22px;line-height:1.6;color:var(--muted);max-width:690px}.hero-img img{border-radius:0;box-shadow:0 26px 80px rgba(0,70,80,.16)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;font-weight:900;border:1px solid var(--teal);cursor:pointer}.btn.primary{background:var(--teal);color:white}.btn.ghost{background:white;color:var(--teal)}.hero-actions,.download-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.section{padding:92px 0}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.title-block span{font-size:clamp(48px,7vw,92px);font-weight:900;letter-spacing:-.06em;display:block;color:#101820}.title-block h2{font-size:clamp(48px,7vw,92px);margin:0;color:var(--teal);letter-spacing:-.06em}.text-block h3{font-size:34px;line-height:1.1;margin:0 0 22px}.text-block p,.feature p,.services p,.contact p,.downloads p{font-size:18px;line-height:1.72;color:var(--muted)}
.steps-section{background:#07131b;color:white}.center{text-align:center}.steps-section h2,.plans h2,.services h2,.sectors h2,.news h2,.contact h2,.downloads h2,.feature h2{font-size:clamp(36px,5vw,70px);line-height:.98;letter-spacing:-.06em;margin:12px 0 36px}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.steps article{padding:34px;border-right:1px solid rgba(255,255,255,.18)}.steps b{font-size:48px;color:var(--teal2)}.steps h3{font-size:26px}.steps p{color:#cde6e9;line-height:1.55}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.feature img{box-shadow:0 26px 80px rgba(0,70,80,.16)}.feature.alt{background:var(--bg)}.reverse img{order:2}.check{list-style:none;padding:0;margin:24px 0}.check li{padding:14px 0 14px 34px;border-bottom:1px solid var(--line);position:relative;color:#404a53}.check li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:900}
.plans{background:#f7fbfb}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.plan-grid article{background:white;border:1px solid var(--line);padding:34px;min-height:330px;display:flex;flex-direction:column}.plan-grid .featured{background:#07131b;color:white;transform:translateY(-18px)}.plan-grid span{color:var(--teal);font-weight:900;text-transform:uppercase;letter-spacing:.12em}.plan-grid h3{font-size:44px;margin:14px 0}.plan-grid p{color:var(--muted);line-height:1.65}.plan-grid .featured p{color:#d6eff0}.plan-grid a{margin-top:auto;color:var(--teal);font-weight:900}
.services h2{max-width:920px}.service-list{list-style:none;padding:0;margin:34px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.service-list li{display:grid;grid-template-columns:1fr;padding:30px 20px;border-bottom:1px solid var(--line);gap:20px}.service-list span{font-size:24px;font-weight:900;color:var(--teal)}.service-list strong{font-size:24px}.service-list p{grid-column:2;margin:8px 0 0}
.sectors{background:#07131b;color:white}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sector-grid article{border:1px solid rgba(255,255,255,.15);padding:28px;min-height:180px;background:rgba(255,255,255,.05)}.sector-grid h3{font-size:24px}.sector-grid p{color:#cde6e9;line-height:1.6}
.downloads{background:var(--bg)}.qr-card{background:white;padding:30px;border:1px solid var(--line);text-align:center}.qr-card img{width:250px;margin:auto}.qr-card h3{font-size:28px}
.news-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 0 28px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card{border:1px solid var(--line);background:white;padding:24px}.news-card img{aspect-ratio:16/9;object-fit:cover;margin-bottom:15px;background:#eefafa}.news-card .date{font-size:13px;color:var(--teal);font-weight:900;text-transform:uppercase}.news-card h3{font-size:22px;line-height:1.18}.news-card p{color:var(--muted);line-height:1.55}.news-card a{color:var(--teal);font-weight:900}
.contact{background:#f7fbfb}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px}.form{display:grid;gap:16px;background:white;border:1px solid var(--line);padding:34px}.form label{font-weight:900}.form input,.form textarea{display:block;width:100%;margin-top:8px;border:1px solid var(--line);padding:15px;font:inherit}
.footer{background:#07131b;color:white;padding:54px 0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.footer img{width:250px;background:white;padding:8px}.footer a{display:block;color:#b7ffff;margin:9px 0}.footer p{color:#cde6e9;line-height:1.6}
@media(max-width:1050px){.menu{display:block}.fast{display:none}.nav{display:none;position:absolute;top:98px;left:0;right:0;background:white;padding:24px 4%;box-shadow:0 20px 60px rgba(0,0,0,.12);grid-template-columns:1fr;gap:20px}.open .nav{display:grid}.hero-grid,.two-col,.feature-grid,.contact-grid{grid-template-columns:1fr}.reverse img{order:0}.steps,.plan-grid,.sector-grid,.news-grid{grid-template-columns:1fr 1fr}.service-list{grid-template-columns:1fr}.logo img{width:235px}}
@media(max-width:680px){.header-inner{height:78px}.nav{top:78px}.hero{padding:54px 0}.hero h1{font-size:56px}.section{padding:62px 0}.steps,.plan-grid,.sector-grid,.news-grid{grid-template-columns:1fr}.service-list li{grid-template-columns:1fr}.service-list p{grid-column:auto}.footer-grid{grid-template-columns:1fr}.text-block h3{font-size:28px}}

.services-intro{
  max-width:820px;
  font-size:19px;
  line-height:1.7;
  color:var(--muted);
  margin:-18px 0 38px;
}
.service-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.service-card{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  padding:34px 30px;
  min-height:310px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.service-card:before{
  content:"";
  position:absolute;
  inset:auto -70px -90px auto;
  width:180px;
  height:180px;
  background:radial-gradient(circle, rgba(0,139,146,.18), transparent 68%);
  transition:transform .25s ease;
}
.service-card:hover{
  transform:translateY(-8px);
  border-color:rgba(0,139,146,.38);
  box-shadow:0 28px 80px rgba(0,80,90,.14);
}
.service-card:hover:before{
  transform:scale(1.25);
}
.service-card-icon{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,#e9fbfb,#ffffff);
  border:1px solid var(--line);
  font-size:30px;
  margin-bottom:22px;
}
.service-card h3{
  font-size:24px;
  line-height:1.15;
  margin:0 0 14px;
}
.service-card p{
  font-size:16.5px;
  line-height:1.65;
  color:var(--muted);
  margin:0 0 24px;
}
.service-card a{
  position:absolute;
  left:30px;
  bottom:28px;
  color:var(--teal);
  font-weight:900;
}
@media(max-width:1050px){
  .service-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .service-cards{grid-template-columns:1fr}
  .service-card{min-height:280px}
}

/* PRO Blog + automatic news */
.blog-pro{
  background:linear-gradient(180deg,#ffffff 0%,#f5fbfb 100%);
}
.blog-intro{
  max-width:860px;
  font-size:19px;
  line-height:1.7;
  color:var(--muted);
  margin:-18px 0 34px;
}
.blog-tabs,.news-filters{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 28px;
}
.tab-btn,.filter-btn{
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  border-radius:999px;
  padding:12px 18px;
  font-weight:900;
  cursor:pointer;
}
.tab-btn.active,.filter-btn.active{
  background:var(--teal);
  color:#fff;
  border-color:var(--teal);
}
.tab-panel{display:none}
.tab-panel.active{display:block}
.blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.blog-card{
  background:#fff;
  border:1px solid var(--line);
  padding:30px;
  min-height:290px;
  display:flex;
  flex-direction:column;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.blog-card:hover{
  transform:translateY(-7px);
  border-color:rgba(0,139,146,.35);
  box-shadow:0 26px 70px rgba(0,80,90,.13);
}
.blog-card span{
  color:var(--teal);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:13px;
}
.blog-card h3{
  font-size:25px;
  line-height:1.15;
  margin:16px 0 12px;
}
.blog-card p{
  color:var(--muted);
  line-height:1.65;
  margin:0 0 24px;
}
.blog-card a{
  color:var(--teal);
  font-weight:900;
  margin-top:auto;
}
.featured-blog{
  grid-column:span 2;
  background:linear-gradient(135deg,#07131b,#063b3e);
  color:#fff;
}
.featured-blog p{color:#d7ffff}
.featured-blog span,.featured-blog a{color:#7fffff}
.wa-floating{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:60;
  background:#25D366;
  color:#fff;
  font-weight:900;
  padding:15px 20px;
  border-radius:999px;
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}
.wa-floating:hover{transform:translateY(-3px)}
@media(max-width:1050px){
  .blog-grid{grid-template-columns:1fr 1fr}
  .featured-blog{grid-column:span 2}
}
@media(max-width:680px){
  .blog-grid{grid-template-columns:1fr}
  .featured-blog{grid-column:auto}
  .wa-floating{right:14px;bottom:14px;padding:13px 16px}
}

/* Pagina separata Blog e News */
.blog-hero{
  padding:82px 0 74px;
  background:radial-gradient(circle at 82% 18%,rgba(25,203,208,.22),transparent 32%),linear-gradient(135deg,#fff,#eefafa);
}
.blog-hero-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:54px;
  align-items:center;
}
.blog-hero h1{
  font-size:clamp(48px,7vw,92px);
  line-height:.9;
  letter-spacing:-.075em;
  margin:18px 0 24px;
}
.blog-hero img,.blog-news-head img{
  box-shadow:0 26px 80px rgba(0,70,80,.16);
}
.blog-news-separated{
  background:#07131b;
  color:#fff;
}
.blog-news-separated h2{color:#fff}
.blog-news-separated .blog-intro{color:#cde6e9}
.blog-news-head{
  display:grid;
  grid-template-columns:1fr .75fr;
  gap:42px;
  align-items:center;
  margin-bottom:34px;
}
.blog-news-head img{
  border:1px solid rgba(255,255,255,.18);
}
.blog-news-separated .news-card{
  background:#fff;
  color:var(--ink);
}
.blog-news-separated .filter-btn{
  background:rgba(255,255,255,.08);
  color:white;
  border-color:rgba(255,255,255,.18);
}
.blog-news-separated .filter-btn.active{
  background:var(--teal);
  border-color:var(--teal);
}
@media(max-width:1050px){
  .blog-hero-grid,.blog-news-head{grid-template-columns:1fr}
}

/* Upgrade finale hero, trust e conversione */
.hero-sub{
  font-size:clamp(24px,3vw,36px);
  font-weight:900;
  margin:8px 0 20px;
  color:var(--teal);
  letter-spacing:-.035em;
}
.hero-trust{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:26px;
}
.hero-trust span{
  background:#ffffff;
  color:#33424b;
  border:1px solid var(--line);
  border-radius:999px;
  padding:10px 15px;
  font-size:14px;
  font-weight:900;
  box-shadow:0 12px 30px rgba(0,80,90,.06);
}
.hero-trust span:before{
  content:"✓";
  color:var(--teal);
  margin-right:8px;
}
.hero-img img,
.feature img,
.blog-hero img,
.blog-news-head img{
  transition:transform .35s ease, box-shadow .35s ease;
}
.hero-img img:hover,
.feature img:hover,
.blog-hero img:hover,
.blog-news-head img:hover{
  transform:translateY(-6px);
  box-shadow:0 34px 90px rgba(0,70,80,.22);
}
.trust-section{
  background:#fff;
}
.trust-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:34px;
}
.trust-grid article{
  background:#fff;
  border:1px solid var(--line);
  padding:34px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.trust-grid article:hover{
  transform:translateY(-8px);
  border-color:rgba(0,139,146,.36);
  box-shadow:0 28px 80px rgba(0,80,90,.12);
}
.trust-grid strong{
  color:var(--teal);
  font-size:38px;
  font-weight:900;
}
.trust-grid h3{
  font-size:26px;
  margin:14px 0 10px;
}
.trust-grid p{
  color:var(--muted);
  line-height:1.65;
}
.stats-section{
  padding:36px 0;
  background:linear-gradient(90deg,#07131b,#006a70);
}
.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
}
.stats-grid div{
  padding:26px 24px;
  color:white;
  border-right:1px solid rgba(255,255,255,.16);
}
.stats-grid b{
  display:block;
  font-size:24px;
}
.stats-grid span{
  display:block;
  margin-top:6px;
  color:#d7ffff;
}
.service-card,
.blog-card,
.plan-grid article,
.news-card{
  border-radius:0;
}
@media(max-width:1050px){
  .trust-grid,.stats-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .trust-grid,.stats-grid{grid-template-columns:1fr}
}

/* Area download - supporto remoto RustDesk */
.remote-support-box{
  margin-top:30px;
  display:grid;
  grid-template-columns:76px 1fr;
  gap:22px;
  align-items:start;
  background:#ffffff;
  border:1px solid var(--line);
  padding:28px;
  box-shadow:0 22px 70px rgba(0,80,90,.10);
}
.remote-icon{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#e9fbfb,#ffffff);
  border:1px solid var(--line);
  font-size:34px;
}
.remote-support-box h3{
  margin:0 0 10px;
  font-size:26px;
}
.remote-support-box p{
  margin:0 0 20px;
  color:var(--muted);
  line-height:1.65;
}
@media(max-width:680px){
  .remote-support-box{
    grid-template-columns:1fr;
  }
}

/* Area riservata gestionale */
.reserved-area{
  background:linear-gradient(135deg,#07131b,#063b3e);
  color:#fff;
}
.reserved-area h2,
.backend-guide h2{
  font-size:clamp(36px,5vw,70px);
  line-height:.98;
  letter-spacing:-.06em;
  margin:12px 0 24px;
}
.reserved-area p{
  color:#d7ffff;
  font-size:18px;
  line-height:1.7;
}
.reserved-grid{
  display:grid;
  grid-template-columns:1fr .85fr;
  gap:54px;
  align-items:center;
}
.reserved-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:28px;
}
.login-preview-card{
  background:#fff;
  color:var(--ink);
  padding:34px;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 28px 90px rgba(0,0,0,.22);
}
.login-preview-card h3{
  font-size:30px;
  margin:0 0 18px;
}
.login-preview-card ul{
  padding-left:20px;
  line-height:1.8;
  color:var(--muted);
}
.login-note{
  margin-top:24px;
  padding:18px;
  background:#f4fbfb;
  border:1px solid var(--line);
  color:#20272f;
  line-height:1.7;
}
@media(max-width:1050px){
  .reserved-grid{grid-template-columns:1fr}
  }
@media(max-width:680px){
  }


/* Header professionale SEO con mega menu */
.pro-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.top-strip{
  background:#07131b;
  color:#d7ffff;
  font-size:13px;
}
.top-strip-inner{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}
.top-strip a{
  color:#d7ffff;
  font-weight:800;
}
.top-strip span{
  color:#9edfe3;
}
.top-wa{
  background:#008b92;
  color:#fff!important;
  padding:6px 12px;
  border-radius:999px;
}
.main-nav{
  background:#fff;
}
.main-nav-inner{
  min-height:82px;
  display:flex;
  align-items:center;
  gap:24px;
}
.pro-header .logo img{
  width:255px;
}
.pro-nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:22px;
}
.pro-nav>a,
.dropdown>a{
  color:#20272f;
  font-weight:900;
  font-size:15px;
  padding:30px 0;
}
.pro-nav>a:hover,
.dropdown>a:hover{
  color:#008b92;
}
.dropdown{
  position:relative;
}
.mega-menu{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:78px;
  width:760px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 28px 90px rgba(0,30,40,.16);
  padding:28px;
  display:none;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.dropdown:hover .mega-menu{
  display:grid;
}
.mega-menu strong{
  display:block;
  color:#008b92;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:12px;
}
.mega-menu a{
  display:block;
  color:#334;
  font-weight:800;
  padding:9px 0;
}
.mega-menu a:hover{
  color:#008b92;
}
.nav-actions{
  display:flex;
  gap:10px;
  align-items:center;
}
.btn.small{
  min-height:40px;
  padding:0 15px;
  font-size:13px;
}
@media(max-width:1100px){
  .top-strip-inner{
    justify-content:center;
  }
  .nav-actions{
    display:none;
  }
  .pro-nav{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:120px;
    background:#fff;
    padding:22px 4%;
    box-shadow:0 20px 60px rgba(0,0,0,.14);
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }
  .open .pro-nav{
    display:flex;
  }
  .pro-nav>a,.dropdown>a{
    padding:8px 0;
  }
  .dropdown{
    width:100%;
  }
  .mega-menu{
    position:static;
    transform:none;
    width:100%;
    box-shadow:none;
    border:1px solid var(--line);
    display:grid;
    grid-template-columns:1fr;
    margin-top:10px;
  }
  .menu{
    display:block!important;
    margin-left:auto;
  }
}
@media(max-width:680px){
  .top-strip span{
    display:none;
  }
  .main-nav-inner{
    min-height:72px;
  }
  .pro-header .logo img{
    width:215px;
  }
  .pro-nav{
    top:110px;
  }
}

/* FIX MENU MOBILE - Area Clienti sempre visibile */
@media (max-width:1100px){
  body.open .pro-nav,
  .open .pro-nav{
    display:flex !important;
    position:absolute;
    left:0;
    right:0;
    top:110px;
    background:#fff;
    padding:28px 4%;
    box-shadow:0 20px 60px rgba(0,0,0,.14);
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
    max-height:calc(100vh - 110px);
    overflow-y:auto;
    z-index:9999;
  }

  .pro-nav > a,
  .dropdown > a{
    display:block;
    width:100%;
    font-size:22px;
    padding:8px 0;
  }

  .mega-menu{
    position:static !important;
    transform:none !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    box-shadow:none !important;
    border:1px solid var(--line);
    padding:22px;
    margin-top:10px;
  }

  .mobile-client-access{
    display:block !important;
    width:100%;
    text-align:center;
    background:#008b92;
    color:#fff !important;
    padding:16px 18px !important;
    border-radius:999px;
    font-weight:900;
    margin-top:8px;
  }
}
/* HOTFIX MENU MOBILE */
@media (max-width: 900px){
  .menu{display:block!important;position:relative;z-index:100001;cursor:pointer}
  .pro-nav{display:none!important}
  body.menu-open{overflow:hidden}
  body.menu-open .pro-nav{
    display:flex!important;position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;
    width:100vw!important;height:100vh!important;background:#fff!important;z-index:100000!important;
    padding:95px 26px 40px!important;flex-direction:column!important;align-items:flex-start!important;gap:20px!important;overflow-y:auto!important
  }
  body.menu-open .pro-nav a{display:block!important;width:100%!important;font-size:24px!important;font-weight:900!important;color:#07131b!important;padding:8px 0!important}
  body.menu-open .menu{position:fixed!important;top:22px!important;right:22px!important;z-index:100002!important}
  body.menu-open .mega-menu{position:static!important;display:block!important;width:100%!important;box-shadow:none!important;border:1px solid #dceeee!important;padding:18px!important;margin:8px 0!important}
}
