/* =========================================================
   QAS Informatica - Modern pages stylesheet
   Layout pulito delle nuove pagine + branding/palette QAS reale
   ========================================================= */
:root{
  --qas-blue:#2383c4;
  --qas-blue-dark:#1a6699;
  --qas-cyan:#6ac3eb;
  --qas-navy:#15486b;
  --qas-orange:#ed9542;
  --qas-orange-dark:#d97f2c;
  --qas-text:#333333;
  --qas-muted:#666666;
  --qas-light:#f4f9fd;
  --qas-border:#e2e9f1;
  --qas-white:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.qas-modern{margin:0;font-family:"Open Sans",Arial,Helvetica,sans-serif;color:var(--qas-text);background:#fff;line-height:1.65}
.qas-modern a{color:inherit;text-decoration:none}
.qas-modern h1,.qas-modern h2,.qas-modern h3{font-family:"Raleway","Open Sans",sans-serif;font-weight:700}
.qas-modern .container{width:min(1140px,92%);margin:0 auto}

/* Topbar */
.qas-modern .topbar{background:var(--qas-navy);color:#fff;font-size:14px}
.qas-modern .topbar .container{display:flex;justify-content:space-between;gap:18px;padding:8px 0;flex-wrap:wrap}
.qas-modern .topbar a{color:#fff;font-weight:600}
.qas-modern .topbar a:hover{color:var(--qas-cyan)}

/* Navbar */
.qas-modern .navbar{background:#fff;border-bottom:1px solid var(--qas-border);position:sticky;top:0;z-index:30}
.qas-modern .navbar .container{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.qas-modern .logo-img{display:block}
.qas-modern .logo-img img{height:54px;width:auto;display:block}
.qas-modern .nav-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;color:#33424f;font-size:15px;font-weight:600}
.qas-modern .nav-links a:hover{color:var(--qas-blue)}
.qas-modern .nav-ticket{background:var(--qas-orange);color:#fff !important;padding:8px 16px;border-radius:4px;font-weight:700}
.qas-modern .nav-ticket:hover{background:var(--qas-orange-dark);color:#fff !important}
.qas-modern .has-drop{position:relative}
.qas-modern .has-drop>span{cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.qas-modern .has-drop>span::after{content:"";border:5px solid transparent;border-top-color:currentColor;margin-top:4px}
.qas-modern .dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(8px);min-width:248px;background:#fff;border:1px solid var(--qas-border);border-radius:8px;box-shadow:0 14px 38px rgba(18,52,91,.16);padding:8px;opacity:0;visibility:hidden;transition:.18s ease;z-index:40}
.qas-modern .has-drop:hover .dropdown,.qas-modern .has-drop:focus-within .dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.qas-modern .dropdown a{display:block;padding:9px 12px;border-radius:6px;font-size:14.5px;color:#33424f}
.qas-modern .dropdown a:hover{background:var(--qas-light);color:var(--qas-blue)}

/* Fascia promozionale (banner Lenovo) */
.qas-modern .promo-band{background:#0e2c44}
.qas-modern .promo-band .container{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:12px 0}
.qas-modern .promo-band a{display:block;line-height:0}
.qas-modern .promo-band img{width:100%;height:auto;display:block;border-radius:6px;transition:.2s ease}
.qas-modern .promo-band a:hover img{opacity:.9}

/* Hero standard (pagine servizio) */
.qas-modern .hero{background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.84)),linear-gradient(135deg,#e6f4fc,#ffffff 55%,#eef8ff);border-bottom:1px solid var(--qas-border);padding:84px 0 72px}
.qas-modern .hero-inner{max-width:900px}
.qas-modern .eyebrow{display:inline-block;color:var(--qas-blue);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin-bottom:14px}
.qas-modern h1{margin:0 0 22px;color:var(--qas-navy);font-size:clamp(34px,5vw,54px);line-height:1.12}
.qas-modern .hero p{margin:0 0 30px;max-width:780px;color:#4c5563;font-size:20px}

/* Hero con video di sfondo (homepage) */
.qas-modern .hero-home{position:relative;padding:0;border-bottom:1px solid var(--qas-border);min-height:clamp(440px,60vh,580px);display:flex;overflow:hidden;background:radial-gradient(900px 420px at 78% -12%,rgba(106,195,235,.40),transparent 60%),radial-gradient(720px 380px at 10% 120%,rgba(35,131,196,.45),transparent 60%),linear-gradient(125deg,#0b2438 0%,#123f5e 45%,#1d6699 100%)}
.qas-modern .hero-home video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.qas-modern .hero-home .hero-fallback{display:none}
.qas-modern .hero-home .overlay{position:relative;z-index:2;width:100%;display:flex;align-items:center;background:linear-gradient(90deg,rgba(8,26,42,.62),rgba(8,26,42,.20))}
.qas-modern .hero-home .overlay .container{padding:84px 0}
.qas-modern .hero-home .eyebrow{color:var(--qas-cyan)}
.qas-modern .hero-home h1{color:#fff;max-width:820px}
.qas-modern .hero-home p{color:rgba(255,255,255,.92);max-width:720px}
.qas-modern .hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.qas-modern .hero-actions .btn-outline{background:transparent;color:#fff;border-color:#fff}
.qas-modern .hero-actions .btn-outline:hover{background:#fff;color:var(--qas-navy)}

/* Buttons */
.qas-modern .btn{display:inline-block;padding:13px 26px;border-radius:4px;font-weight:700;transition:.2s ease;border:2px solid var(--qas-blue);cursor:pointer}
.qas-modern .btn-primary{background:var(--qas-blue);color:#fff}
.qas-modern .btn-primary:hover{background:var(--qas-blue-dark);border-color:var(--qas-blue-dark)}
.qas-modern .btn-outline{color:var(--qas-blue);background:#fff}
.qas-modern .btn-outline:hover{background:var(--qas-blue);color:#fff}

/* Sections */
.qas-modern section{padding:66px 0}
.qas-modern .section-light{background:var(--qas-light)}
.qas-modern .section-title{max-width:860px;margin:0 0 38px}
.qas-modern .section-title h2{color:var(--qas-navy);margin:0 0 14px;font-size:clamp(27px,4vw,38px);line-height:1.18}
.qas-modern .section-title p{margin:0;color:var(--qas-muted);font-size:18px}
.qas-modern .intro-text{
    max-width:960px;
    font-size:18px;
    text-align: justify;
}
.qas-modern .intro-text strong{color:var(--qas-navy)}

/* Grids & cards */
.qas-modern .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.qas-modern .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.qas-modern .card{background:#fff;border:1px solid var(--qas-border);border-radius:8px;padding:28px;box-shadow:0 6px 20px rgba(18,52,91,.06);transition:transform .18s ease,box-shadow .18s ease}
.qas-modern .card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(18,52,91,.12)}
.qas-modern .card h3{margin:0 0 12px;color:var(--qas-navy);font-size:22px}
.qas-modern .card p{margin:0;color:var(--qas-muted)}
.qas-modern .card ul{margin:16px 0 0;padding-left:20px;color:var(--qas-muted)}
.qas-modern .card li{margin-bottom:7px}
.qas-modern .card-accent{border-top:4px solid var(--qas-cyan)}

/* Brand grid */
.qas-modern .brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.qas-modern .brand{background:#fff;border:1px solid var(--qas-border);border-radius:8px;padding:18px;color:var(--qas-navy);text-align:center;font-weight:800;box-shadow:0 4px 14px rgba(18,52,91,.05)}

/* Benefit */
.qas-modern .benefit{display:flex;gap:16px;background:#fff;border:1px solid var(--qas-border);border-radius:8px;padding:24px}
.qas-modern .check{flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--qas-blue);color:#fff;display:grid;place-items:center;font-weight:800}
.qas-modern .benefit h3{color:var(--qas-navy);margin:0 0 8px;font-size:20px}
.qas-modern .benefit p{margin:0;color:var(--qas-muted)}

/* Info box */
.qas-modern .info-box{background:#fff;border-left:5px solid var(--qas-cyan);border-radius:8px;padding:28px;box-shadow:0 6px 20px rgba(18,52,91,.06)}
.qas-modern .info-box h3{margin:0 0 10px;color:var(--qas-navy);font-size:24px}
.qas-modern .info-box p{margin:0;color:var(--qas-muted)}

/* CTA */
.qas-modern .cta{background:var(--qas-navy);color:#fff;text-align:center;padding:70px 0}
.qas-modern .cta h2{margin:0 0 16px;font-size:clamp(28px,4vw,40px)}
.qas-modern .cta p{max-width:820px;margin:0 auto 28px;color:rgba(255,255,255,.9);font-size:18px}
.qas-modern .cta .btn-primary{background:var(--qas-orange);border-color:var(--qas-orange)}
.qas-modern .cta .btn-primary:hover{background:var(--qas-orange-dark);border-color:var(--qas-orange-dark)}
.qas-modern .contacts{margin-top:28px;color:rgba(255,255,255,.9)}
.qas-modern .contacts a{color:#fff;font-weight:700}
.qas-modern .contacts a:hover{color:var(--qas-cyan)}

/* Footer */
.qas-modern .footer{background:#0e2c44;color:#fff;padding:30px 0;font-size:14px}
.qas-modern .footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.qas-modern .footer a{color:#fff}
.qas-modern .footer a:hover{color:var(--qas-cyan)}
.qas-modern .footer .foot-links a{margin-left:16px}

/* Back to top */
.qas-modern .to-top{position:fixed;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;background:var(--qas-blue);color:#fff;display:grid;place-items:center;font-size:20px;box-shadow:0 6px 18px rgba(18,52,91,.25);opacity:0;visibility:hidden;transition:.25s ease;z-index:50}
.qas-modern .to-top.show{opacity:1;visibility:visible}
.qas-modern .to-top:hover{background:var(--qas-blue-dark)}

/* Service card con immagine (homepage) */
.qas-modern a.service-card{padding:0;overflow:hidden;display:flex;flex-direction:column;color:inherit}
.qas-modern a.service-card img{width:100%;height:184px;object-fit:cover;display:block}
.qas-modern a.service-card .sc-body{padding:24px;display:flex;flex-direction:column;flex:1}
.qas-modern a.service-card h3{margin:0 0 10px;color:var(--qas-navy);font-size:21px}
.qas-modern a.service-card p{margin:0 0 16px;color:var(--qas-muted)}
.qas-modern a.service-card .sc-link{margin-top:auto;font-weight:700;color:var(--qas-blue)}
.qas-modern a.service-card .sc-link::after{content:" \2192";transition:.2s ease}
.qas-modern a.service-card:hover .sc-link::after{margin-left:5px}

/* Contatti */
.qas-modern .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.qas-modern .contact-info .ci-row{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}
.qas-modern .contact-info .ci-ico{flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:var(--qas-light);color:var(--qas-blue);display:grid;place-items:center;font-size:18px}
.qas-modern .contact-info .ci-row strong{color:var(--qas-navy);display:block;margin-bottom:2px}
.qas-modern .contact-info .ci-row span{color:var(--qas-muted)}
.qas-modern .contact-info iframe{width:100%;height:220px;border:0;border-radius:8px;margin-top:10px;box-shadow:0 6px 20px rgba(18,52,91,.08)}
.qas-modern .contact-form{background:#fff;border:1px solid var(--qas-border);border-radius:10px;padding:28px;box-shadow:0 6px 20px rgba(18,52,91,.06)}
.qas-modern .contact-form .form-group{margin-bottom:14px}
.qas-modern .contact-form input,.qas-modern .contact-form textarea{width:100%;padding:12px 14px;border:1px solid var(--qas-border);border-radius:6px;font-family:inherit;font-size:15px;color:var(--qas-text)}
.qas-modern .contact-form input:focus,.qas-modern .contact-form textarea:focus{outline:none;border-color:var(--qas-blue);box-shadow:0 0 0 3px rgba(35,131,196,.12)}
.qas-modern .contact-form button{background:var(--qas-blue);color:#fff;border:none;padding:13px 28px;border-radius:4px;font-weight:700;cursor:pointer;font-family:inherit;font-size:15px}
.qas-modern .contact-form button:hover{background:var(--qas-blue-dark)}
.qas-modern .social-links{display:flex;gap:10px;margin-top:6px}
.qas-modern .social-links a{width:38px;height:38px;border-radius:50%;background:var(--qas-light);color:var(--qas-blue);display:grid;place-items:center;transition:.2s ease;font-weight:700}
.qas-modern .social-links a:hover{background:var(--qas-blue);color:#fff}

/* Responsive */
@media(max-width:980px){
  .qas-modern .grid-3{grid-template-columns:repeat(2,1fr)}
  .qas-modern .brand-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .qas-modern .navbar .container{align-items:flex-start;flex-direction:column}
  .qas-modern .nav-links{gap:14px}
  .qas-modern .dropdown{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;padding:4px 0 4px 12px;min-width:auto}
  .qas-modern .hero{padding:60px 0}
  .qas-modern section{padding:50px 0}
  .qas-modern .grid-3,.qas-modern .grid-2,.qas-modern .brand-grid{grid-template-columns:1fr}
  .qas-modern .promo-band .container{grid-template-columns:1fr;gap:10px}
  .qas-modern .contact-grid{grid-template-columns:1fr}
  .qas-modern .hero-home .overlay .container{padding:56px 0}
}


/* Sfondo decorativo hero homepage (griglia tech + bagliore) */
.qas-modern .hero-home::before{content:"";position:absolute;inset:0;z-index:1;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:radial-gradient(circle at 72% 32%,#000 0%,transparent 78%);
  mask-image:radial-gradient(circle at 72% 32%,#000 0%,transparent 78%);}
.qas-modern .hero-home::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;z-index:1;
  background:radial-gradient(circle,rgba(106,195,235,.30),transparent 65%);top:-140px;right:-60px;
  animation:qasFloat 9s ease-in-out infinite;pointer-events:none}
@keyframes qasFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(30px)}}
.qas-modern .hero-home::before,.qas-modern .hero-home::after{display:none}

/* Messaggi esito form */
.qas-modern .form-alert{padding:14px 18px;border-radius:8px;margin-bottom:18px;font-weight:600}
.qas-modern .form-alert.ok{background:#e6f6ec;color:#1c7a3e;border:1px solid #b7e4c7}
.qas-modern .form-alert.err{background:#fdeaea;color:#b13a3a;border:1px solid #f3c2c2}
