
:root{--blue:#0b4dff;--dark:#08111f;--ink:#162033;--muted:#667085;--soft:#f4f7fb;--green:#18b26b;--orange:#ff9f1c;--card:#ffffff;--line:#e6ebf3}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.topbar{background:#06101f;color:#c9d7ff;font-size:14px}.topbar .wrap{display:flex;justify-content:space-between;gap:15px;padding:10px 22px}.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav .wrap{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:24px;font-weight:900;letter-spacing:-.5px}.logo{display:inline-grid;place-items:center;background:linear-gradient(135deg,var(--blue),#00c2ff);color:#fff;width:48px;height:48px;border-radius:15px;margin-right:8px;box-shadow:0 12px 30px #0b4dff44}.menu{display:flex;align-items:center;gap:20px;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 20px;font-weight:900;box-shadow:0 10px 24px #00000010;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:linear-gradient(135deg,var(--blue),#00a6ff);color:#fff}.green{background:linear-gradient(135deg,#0dbb72,#31d98b);color:#fff}.light{background:#fff;color:#101828}.darkbtn{background:#101828;color:white}.hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(5,12,27,.94),rgba(5,23,55,.74)),url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80') center/cover;min-height:680px;display:flex;align-items:center}.hero:after{content:"";position:absolute;inset:auto -10% -160px -10%;height:300px;background:#fff;transform:rotate(-4deg)}.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.badge{display:inline-flex;padding:9px 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.12);font-weight:800;color:#dff2ff}.hero h1{font-size:62px;line-height:1.02;margin:22px 0 18px;letter-spacing:-2px}.hero p{font-size:21px;line-height:1.55;color:#d9e7ff;max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.hero-collage{display:grid;grid-template-columns:1fr 1fr;gap:16px;transform:rotate(1deg)}.photo{min-height:190px;border-radius:30px;background:center/cover;box-shadow:0 30px 80px #0008;border:1px solid rgba(255,255,255,.25)}.photo.big{grid-column:span 2;min-height:260px}.p1{background-image:url('https://images.unsplash.com/photo-1556740738-b6a63e27c4df?auto=format&fit=crop&w=1200&q=80')}.p2{background-image:url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=900&q=80')}.p3{background-image:url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=900&q=80')}.section{padding:92px 0}.section.alt{background:var(--soft)}h2{font-size:42px;letter-spacing:-1.2px;margin:0 0 14px}.lead{color:var(--muted);font-size:19px;line-height:1.65;max-width:840px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px}.card{background:white;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 18px 50px #15213b0d;transition:.2s}.card:hover{transform:translateY(-6px);box-shadow:0 25px 65px #15213b1a}.card-img{height:190px;background:center/cover}.card-body{padding:25px}.card h3{font-size:23px;margin:0 0 10px}.card p{color:var(--muted);line-height:1.55}.ico{font-size:34px}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.image-panel{min-height:480px;border-radius:36px;background:center/cover;box-shadow:0 28px 75px #0002;position:relative;overflow:hidden}.image-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45))}.floating{position:absolute;z-index:2;left:25px;right:25px;bottom:25px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);padding:22px;border-radius:24px;box-shadow:0 20px 60px #0004}.features{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:25px}.feature{padding:16px 18px;border-radius:18px;background:#fff;border:1px solid var(--line);font-weight:800}.dark{background:radial-gradient(circle at top left,#173cff,#08111f 42%,#050910);color:#fff}.dark .lead,.dark p{color:#d7e4ff}.dark .feature{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.16)}.showcase{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}.shot{height:170px;border-radius:24px;background:center/cover;box-shadow:0 18px 44px #0002}.cta{border-radius:34px;padding:46px;background:linear-gradient(135deg,#0b4dff,#00c2ff);color:#fff;display:flex;justify-content:space-between;gap:25px;align-items:center;box-shadow:0 30px 70px #0b4dff33}.footer{background:#06101f;color:#cbd5e1;padding:50px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.wa{position:fixed;right:22px;bottom:22px;z-index:60;background:#18b26b;color:white;padding:15px 22px;border-radius:999px;font-weight:900;box-shadow:0 16px 42px #18b26b66}.page-hero{padding:110px 0;color:white;background:linear-gradient(90deg,rgba(6,16,31,.92),rgba(6,16,31,.45)),var(--bg) center/cover}.page-hero h1{font-size:56px;line-height:1.05;margin:15px 0}.list{display:grid;gap:14px;margin-top:24px}.list div{padding:16px 18px;background:white;border:1px solid var(--line);border-radius:18px;font-weight:800}.form{display:grid;gap:14px;background:white;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:0 20px 60px #0001}.form input,.form textarea,.form select{width:100%;padding:15px;border:1px solid #d0d5dd;border-radius:15px;font-size:16px}.form textarea{min-height:140px}@media(max-width:900px){.hero .wrap,.split{grid-template-columns:1fr}.hero{min-height:auto;padding:85px 0}.hero h1,.page-hero h1{font-size:42px}.grid{grid-template-columns:1fr}.showcase{grid-template-columns:1fr 1fr}.menu{display:none}.topbar .wrap{display:block}.footer-grid{grid-template-columns:1fr}.cta{display:block}.hero-collage{margin-top:25px}}
/* Dettagli aggiunti nelle pagine servizio */
.list.detailed{gap:16px}
.list.detailed .service-row{padding:18px 20px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 28px #15213b0a;font-weight:400}
.list.detailed .service-row strong{display:block;font-size:17px;color:#08111f;margin-bottom:6px}
.list.detailed .service-row p{margin:0;color:var(--muted);line-height:1.55;font-size:15.5px}

/* Immagini fotografiche settore nelle card */
.card .sector-img{width:100%;height:190px;object-fit:cover;display:block;background:#eef3f8}
.card .sector-img+.card-body{padding:25px}
.grid .card{min-height:360px}
@media(max-width:900px){.card .sector-img{height:210px}.grid .card{min-height:auto}}

/* Homepage servizi: card professionali con immagini e descrizioni estese */
.services-section{background:linear-gradient(180deg,#fff 0%,#f6f9fd 100%)}
.section-kicker{display:inline-flex;margin-bottom:12px;padding:8px 13px;border-radius:999px;background:#eaf2ff;color:#0b4dff;font-weight:900;font-size:14px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}
.service-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dfe7f2;border-radius:22px;overflow:hidden;box-shadow:0 18px 45px #15213b12;transition:.22s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 26px 70px #15213b20;border-color:#cbd9eb}
.service-card img{width:100%;height:185px;object-fit:cover;display:block;background:#eef3f8}
.service-body{display:flex;flex-direction:column;gap:12px;padding:24px;min-height:355px}
.service-tag{align-self:flex-start;padding:7px 11px;border-radius:999px;background:#f0f6ff;color:#0b4dff;font-size:13px;font-weight:900}
.service-card h3{font-size:24px;line-height:1.15;margin:0;color:#08111f}
.service-card p{margin:0;color:#53627a;line-height:1.58;font-size:15.5px}
.service-card ul{margin:2px 0 0;padding-left:18px;color:#344054;line-height:1.55;font-size:14.5px}
.service-card li+li{margin-top:4px}
.service-link{margin-top:auto;color:#0b4dff;font-weight:900}
.service-card-wide{grid-column:span 3;display:grid;grid-template-columns:1.05fr 1.4fr}
.service-card-wide img{height:100%;min-height:300px}
.service-card-wide .service-body{min-height:auto}
.service-card-logo .product-logo-panel{height:185px;display:grid;place-items:center;background:linear-gradient(135deg,#f8fbff,#eef4fb);border-bottom:1px solid #e2e9f4}
.service-card-logo .product-logo-panel img{width:132px;height:132px;object-fit:contain;background:transparent}
.product-page-hero{background:linear-gradient(90deg,rgba(6,16,31,.94),rgba(6,16,31,.62)),var(--bg) center/cover}
.product-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.product-hero-card{background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.35);border-radius:28px;padding:34px;text-align:center;box-shadow:0 28px 75px rgba(0,0,0,.28)}
.product-hero-card img{width:170px;height:170px;object-fit:contain;margin-bottom:18px}
.product-hero-card h3{margin:0 0 8px;color:#08111f;font-size:28px}
.product-hero-card p{margin:0;color:#53627a;font-size:16px}
.product-summary{display:grid;gap:16px}
.product-summary div{padding:22px;border:1px solid #dfe7f2;border-radius:22px;background:#fff;box-shadow:0 16px 42px #15213b10}
.product-summary strong{display:block;margin-bottom:7px;color:#08111f;font-size:18px}
.product-summary p{margin:0;color:#53627a;line-height:1.55}
.feature-cards .card{min-height:auto}
.custom-software-section{background:linear-gradient(180deg,#f6f9fd 0%,#fff 100%)}
.custom-software-box{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;padding:38px;border:1px solid #dfe7f2;border-radius:28px;background:#fff;box-shadow:0 24px 70px #15213b14}
.custom-software-box h2{margin-bottom:12px}
.custom-points{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.custom-points div{padding:16px 18px;border-radius:18px;background:#f0f6ff;border:1px solid #dbe8fb;color:#12315f;font-weight:900;line-height:1.35}
.partner-logo{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e2e9f4;border-radius:14px;background:#f8fbff}
.partner-logo span{font-size:12px;font-weight:900;color:#667085;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}
.partner-logo img{width:auto;height:42px;max-width:185px;object-fit:contain;background:transparent}
.partner-hero{display:inline-flex;align-items:center;gap:16px;margin-top:20px;padding:12px 16px;border:1px solid rgba(255,255,255,.28);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(0,0,0,.18)}
.partner-hero span{font-size:13px;font-weight:900;color:#344054;text-transform:uppercase;letter-spacing:.6px}
.partner-hero img{height:50px;width:auto;max-width:220px;object-fit:contain}
@media(max-width:1000px){.services-grid{grid-template-columns:repeat(2,1fr)}.service-card-wide{grid-column:span 2}.product-hero-grid{grid-template-columns:1fr}.custom-software-box{grid-template-columns:1fr}}
@media(max-width:700px){.services-grid{grid-template-columns:1fr}.service-card-wide{grid-column:span 1;display:flex}.service-card img,.service-card-wide img{height:210px;min-height:0}.service-card-logo .product-logo-panel{height:210px}.service-body{min-height:auto;padding:22px}.section-kicker{font-size:13px}.partner-logo{align-items:flex-start;flex-direction:column}.partner-hero{align-items:flex-start;flex-direction:column}.partner-hero img{height:46px;max-width:200px}.product-hero-card{padding:26px}.product-hero-card img{width:140px;height:140px}.custom-software-box{padding:24px}.custom-points{grid-template-columns:1fr}}
.topbar .topbar-contact{justify-content:flex-start;align-items:center;gap:8px;flex-wrap:wrap;color:#fff}
.topbar .topbar-contact a{color:#fff;font-weight:700}
.topbar .topbar-contact a:hover{text-decoration:underline}
.topbar-icon{color:#ff3b5c;font-weight:900}
.topbar-mail{color:#e8edf8}
.topbar-whatsapp{white-space:nowrap}
@media(max-width:700px){.topbar .topbar-contact{gap:6px;font-size:13px;line-height:1.45}.topbar .topbar-contact span{display:inline-block}}
