/* ===================================================================
   QSISTEMI / CLOUD – CONTATTI
   Solo CSS locale: la validazione, l'invio e i controlli rimangono quelli esistenti.
   Palette ufficiale: #980000 / #121212 / #1b1b1b.
   =================================================================== */
.cloud-contact { --cc-red:#980000; --cc-bg:#121212; --cc-panel:#1b1b1b; --cc-muted:rgba(255,255,255,.72); --cc-line:rgba(255,255,255,.14); --cc-red-line:rgba(152,0,0,.42); background:var(--cc-bg); color:#fff; padding:clamp(20px,2.5vw,32px) 0 clamp(68px,7vw,100px); }
.cloud-contact *, .cloud-contact *::before, .cloud-contact *::after {box-sizing:border-box;}
.cloud-contact .cc-topline {display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:clamp(20px,2vw,28px);font-size:11px;font-weight:650;letter-spacing:.12em;color:var(--cc-muted);}
.cloud-contact .cc-topline a {color:inherit;letter-spacing:.02em;text-decoration:none;}
.cloud-contact .cc-topline a:hover {color:#fff;}
.cloud-contact .cc-eyebrow {display:flex;align-items:center;gap:12px;color:var(--cc-muted);font-size:11px;letter-spacing:.17em;font-weight:700;margin-bottom:17px;}
.cloud-contact .cc-eyebrow::before {content:'';width:25px;height:2px;flex:none;background:var(--cc-red);}
.cloud-contact .cc-heading {max-width:900px;margin-bottom:clamp(35px,5vw,60px);}
.cloud-contact .cc-heading h1 {font-size:clamp(34px,4.5vw,62px);letter-spacing:-.044em;line-height:1.11;margin:0 0 19px;font-weight:650;color:#fff;}
.cloud-contact .cc-heading h1 em, .cloud-contact .cc-steps-heading h2 em {color:var(--cc-red);font-style:normal;}
.cloud-contact .cc-heading p {max-width:690px;color:var(--cc-muted);font-size:clamp(15px,1.3vw,17px);line-height:1.8;margin:0;}
.cloud-contact .cc-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);align-items:start;gap:clamp(25px,5vw,75px);}
.cloud-contact .cc-steps-heading h2 {font-size:clamp(29px,3vw,39px);font-weight:630;line-height:1.18;letter-spacing:-.035em;margin:0 0 14px;color:#fff;}
.cloud-contact .cc-steps-heading p {max-width:440px;color:var(--cc-muted);font-size:14px;line-height:1.75;margin:0 0 25px;}
.cloud-contact .cc-steps-list {display:grid;gap:12px;}
.cloud-contact .cc-step {display:grid;grid-template-columns:23px 44px minmax(0,1fr);gap:14px;align-items:start;background:radial-gradient(ellipse at 5% 0%,rgba(152,0,0,.13),transparent 65%),#1b1b1b;border:1px solid rgba(152,0,0,.36);border-radius:11px;padding:23px 20px;}
.cloud-contact .cc-step-num {font-size:10px;font-weight:700;color:var(--cc-muted);letter-spacing:.13em;padding-top:14px;}
.cloud-contact .cc-step-icon {width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(152,0,0,.58);border-radius:9px;background:rgba(152,0,0,.20);}
.cloud-contact .cc-step-icon img {filter:brightness(0) invert(1);}
.cloud-contact .cc-step h3 {color:#fff;font-size:17px;font-weight:630;letter-spacing:-.02em;margin:0 0 7px;}
.cloud-contact .cc-step p {color:var(--cc-muted);font-size:13px;line-height:1.7;margin:0;}
.cloud-contact .cc-note {display:flex;align-items:start;gap:16px;border:1px solid var(--cc-line);border-left:3px solid var(--cc-red);background:var(--cc-panel);border-radius:10px;padding:21px 23px;margin-top:16px;}
.cloud-contact .cc-note-icon {display:grid;place-items:center;flex:none;width:37px;height:37px;background:rgba(152,0,0,.2);border:1px solid var(--cc-red-line);border-radius:8px;}
.cloud-contact .cc-note-icon img {filter:brightness(0) invert(1);}
.cloud-contact .cc-note strong {display:block;margin:0 0 6px;font-size:15px;font-weight:650;color:#fff;}
.cloud-contact .cc-note p {margin:0;color:var(--cc-muted);font-size:12px;line-height:1.7;}
.cloud-contact .cc-form-shell {background:radial-gradient(ellipse at 0% 0%,rgba(152,0,0,.14),transparent 62%),var(--cc-panel);border:1px solid var(--cc-red-line);border-radius:12px;padding:clamp(22px,3.2vw,37px);position:relative;overflow:hidden;}
.cloud-contact .cc-form-shell::before {content:'';position:absolute;top:0;left:35px;width:60px;height:3px;background:var(--cc-red);}
.cloud-contact .cc-form-head h2 {font-size:clamp(23px,2.5vw,30px);font-weight:630;line-height:1.25;letter-spacing:-.03em;color:#fff;margin:0 0 11px;}
.cloud-contact .cc-form-head p {color:var(--cc-muted);font-size:13px;line-height:1.7;margin:0 0 23px;}
/* Rimozione del box del vecchio tema: form integrato nel riquadro con colori corretti. */
.cloud-contact .cc-form {padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;}
.cloud-contact .cc-field {margin-bottom:13px;}
.cloud-contact .cc-form .cc-field label {display:block;color:rgba(255,255,255,.86);font-size:12px;font-weight:600;margin:0 0 6px;}
.cloud-contact .cc-form .cc-field input, .cloud-contact .cc-form .cc-field textarea {display:block;width:100%;background:#121212;color:#fff;border:1px solid rgba(255,255,255,.20);border-radius:7px;padding:12px 14px;margin:0;outline:none;font:inherit;font-size:14px;line-height:1.5;}
.cloud-contact .cc-form .cc-field input::placeholder, .cloud-contact .cc-form .cc-field textarea::placeholder {color:rgba(255,255,255,.42);}
.cloud-contact .cc-form .cc-field input:focus, .cloud-contact .cc-form .cc-field textarea:focus {border-color:var(--cc-red);box-shadow:0 0 0 2px rgba(152,0,0,.14);}
.cloud-contact .cc-form .cc-field textarea {resize:vertical;min-height:102px;}
.cloud-contact .cc-form .qcaptcha-card {margin:13px 0 10px;border-color:var(--cc-line);}
.cloud-contact .cc-form .contact-privacy {display:flex;align-items:flex-start;gap:10px;margin:12px 0 15px;padding:11px 12px;background:rgba(18,18,18,.55);border:1px solid var(--cc-line);border-radius:7px;color:var(--cc-muted);font-size:12px;line-height:1.55;}
.cloud-contact .cc-form .contact-privacy input {appearance:auto;flex:0 0 17px;width:17px;height:17px;margin:1px 0 0;padding:0;accent-color:var(--cc-red);}
.cloud-contact .cc-form .contact-privacy a {color:#fff;text-decoration:underline;text-underline-offset:2px;}
.cloud-contact .cc-form #contactResult {margin:10px 0;}
.cloud-contact .cc-form .btn {width:100%;display:flex;justify-content:center;align-items:center;gap:10px;background:var(--cc-red);border:1px solid var(--cc-red);padding:13px 20px;border-radius:7px;color:#fff;font-weight:650;cursor:pointer;}
.cloud-contact .cc-form .btn:hover {background:#fff;border-color:#fff;color:var(--cc-red);}
.cloud-contact .cc-form .btn .icon {flex:none;}
@media(max-width:900px){.cloud-contact .cc-layout{grid-template-columns:1fr;gap:38px;}.cloud-contact .cc-step {padding:20px;}.cloud-contact .cc-note{margin-top:12px;}}
@media(max-width:640px){.cloud-contact {padding:18px 0 60px;}.cloud-contact .cc-topline{margin-bottom:20px;}.cloud-contact .cc-heading{margin-bottom:36px;}.cloud-contact .cc-heading h1{font-size:clamp(32px,8vw,42px);}.cloud-contact .cc-step{grid-template-columns:20px 40px minmax(0,1fr);gap:11px;padding:18px 14px;}.cloud-contact .cc-step-icon{width:39px;height:39px;}.cloud-contact .cc-step h3{font-size:16px;}.cloud-contact .cc-step p{font-size:12px;}.cloud-contact .cc-form-shell{padding:23px 19px;}.cloud-contact .cc-form-head h2{font-size:24px;}}

/* Ritorno alla home: icona Lucide trattata come parte del link testuale. */
.cloud-contact .cc-topline a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.cloud-contact .cc-topline a .icon {
    width: 16px;
    height: 16px;
}
