    :root{
      --bg:#eef3f8;
      --card:#ffffff;
      --surface:rgba(255,255,255,.7);
      --text:#07111f;
      --muted:#667489;
      --border:#d7e0ea;
      --blue:#2f6fe5;
      --blue-dark:#1f5fd6;
      --shadow:0 3px 14px rgba(15,23,42,.05);
      --radius-lg:24px;
      --radius-md:14px;
      --container:1180px;
      --font-display:"Space Grotesk",system-ui,sans-serif;
      --font-body:"Space Grotesk",system-ui,sans-serif;
      --font-mono:"JetBrains Mono",ui-monospace,monospace;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
    .hero{display:flex;align-items:center;justify-content:center;text-align:center;padding:50px 0 25px}
    .hero-inner{max-width:920px;margin:0 auto}
    .status-pill{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--border);background:rgba(255,255,255,.56);color:var(--muted);border-radius:999px;padding:11px 18px;font-family:var(--font-mono);font-size:14px;box-shadow:var(--shadow);margin-bottom:28px}
    .prompt{color:var(--blue);font-weight:600}
    h1,h2,h3,p{margin-top:0}
    h1{font-family:var(--font-display);font-size:clamp(76px,10vw,118px);line-height:.92;margin:0 0 24px;font-weight:400;letter-spacing:-.07em}
      .sostanza{font-weight: 700}
      .leggerezza{font-weight: 400}
      .vaderetro{text-decoration: line-through}
    .subtitle{color:var(--muted);font-size:clamp(24px,2.6vw,31px);line-height:1.35;max-width:860px;margin:0 auto}
    .meta{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px;margin:34px 0 28px;color:var(--muted);font-family:var(--font-mono);font-size:17px}
    .meta .dot{opacity:.55}
    .actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:6px}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-width:188px;padding:10px 20px;border-radius:12px;border:1px solid transparent;font-size:17px;font-weight:700;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease;box-shadow:var(--shadow)}
    .btn:hover{transform:translateY(-1px)}
    .btn-primary{background:var(--blue);color:#fff}
    .btn-primary:hover{background:var(--blue-dark)}
    .btn-secondary{background:rgba(255,255,255,.62);border-color:var(--border);color:var(--text)}
    .scroll-cue{margin-top:108px;color:var(--muted);font-size:22px}
    .section{padding:40px 0}
    .card{background:var(--card);border-radius:18px;box-shadow:0 6px 20px rgba(0,0,0,.04);padding:28px 28px;margin:0 14px;flex:1;min-width:260px}
    .grid{display:flex;gap:28px;flex-wrap:wrap;justify-content:center}
    .section-title{font-size:28px;margin:0 0 14px;text-align:center}
    form{display:flex;flex-direction:column;gap:14px;max-width:520px;margin:0 auto}
    label{font-size:14px;color:#334155}
    input[type="text"],input[type="email"]{padding:10px 10px;border-radius:10px;border:1px solid #dbe6f1;background:#fff;font-size:16px}
    .gdpr{display:flex;align-items:center;gap:8px}
    button[type="submit"]{background:#2b69f6;border:none;color:white;padding:12px 18px;border-radius:10px;font-weight:700;cursor:pointer}
    .when-where-section{padding:20px 0;margin: 35px 0}
    .when-where-title{font-family:var(--font-display);font-size:clamp(52px,5.6vw,72px);line-height:.98;letter-spacing:-.06em;margin:0 0 44px;font-weight:700;max-width:920px}
    .when-where-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:980px;margin:0 auto}
    .when-card{background:rgba(255,255,255,.58);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:34px 30px;min-height:224px;width:100%}
    .when-card-top{display:flex;gap:18px;align-items:flex-start}
    .when-icon{width:56px;height:56px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#e9f1ff;color:var(--blue);font-size:24px;flex:0 0 auto}
    .when-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--blue);font-size:14px;margin-bottom:10px}
    .when-value{font-family:var(--font-display);font-size:26px;line-height:1.15;letter-spacing:-.04em;font-weight:700}
    .when-subvalue{font-family:var(--font-display);font-size:18px;line-height:1.15;letter-spacing:-.04em;font-weight:400;margin-top:8px}
    .where-address{color:var(--muted);font-size:18px;line-height:1.45;margin-top:10px;max-width:360px}
    .map-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
    .map-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.62);color:var(--text);font-weight:600;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}
    .map-btn:hover{transform:translateY(-1px);border-color:#c9d5e4}
    .why-section{padding:20px 0;margin: 35px 0}
    .eyebrow{font-family:var(--font-mono);font-size:18px;color:var(--blue);margin-bottom:16px}
    .why-title{font-family:var(--font-display);font-size:clamp(52px,5.6vw,72px);line-height:.98;letter-spacing:-.06em;margin:0 0 24px;font-weight:700;max-width:920px}
    .why-copy{color:var(--muted);font-size:clamp(22px,2.2vw,28px);line-height:1.35;max-width:1100px;margin:0 0 35px}
    .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
    .why-card{background:rgba(255,255,255,.58);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:34px 32px;min-height:330px}
    .why-icon{width:56px;height:56px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#e9f1ff;color:var(--blue);font-size:24px;margin-bottom:22px}
    .why-card h3{font-family:var(--font-display);font-size:24px;line-height:1.1;letter-spacing:-.04em;margin:0 0 18px;font-weight:700}
    .why-card p{color:var(--muted);font-size:18px;line-height:1.5;margin:0}
    .why-micro{margin-bottom:15px;font-family:var(--font-mono);font-size:14px;color:var(--blue);font-weight:500}
    @media (max-width:900px){
      .when-where-grid{grid-template-columns:1fr;gap:22px}
      .why-grid{grid-template-columns:1fr}
      .container{width:min(var(--container),calc(100% - 32px))}
    }
    @media (max-width:600px){
        .breakmysoul{flex-basis: 100%;}
      .hero{min-height:auto;padding:36px 0 26px}
      .actions{flex-direction:column;align-items:center}
      .btn{width:100%;max-width:320px}
      .scroll-cue{margin-top:72px}
      .grid{gap:14px}
      .card{min-width:260px}
      .when-where-section{padding:84px 0 56px}
      .when-card,.why-card{padding:24px 22px;border-radius:20px}
      .map-actions{flex-direction:column;align-items:center}
      .map-btn{width:100%;max-width:320px}
      .when-value,.when-subvalue{font-size:23px}
      .where-address,.why-card p{font-size:17px}
        .form-group {flex-direction: column;align-items: stretch !important;}
    }
        .policy h3{margin-top: 25px; margin-bottom: 10px; color:var(--blue)}
        .policy h4{margin-bottom: 5px; margin-left: 20px; color:var(--muted)}
        .policy p{margin-left: 40px}
        .policy ul{margin-left: 50px; color:var(--muted)}
        .policy ul li::marker {content: "\003E ";}

.form-group {
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.form-group input {
    flex: 1;
    min-width: 0;
}

.form-gdpr {
    display:flex;
    align-items:flex-start;
    gap:.5rem;
}

input:focus {
    outline: 2px solid var(--blue);
    outline-offset: 2px;
}

a:focus,
button:focus {
    outline: 2px solid var(--blue);
    outline-offset: 2px;
}

a {
  transition: background-color 0.2s ease, color 0.2s ease;
}

p a:hover, li a:hover, .dettagli a:hover {
  background-color: var(--blue-dark);
  color: var(--card);
  text-decoration: none;
}

h1 a:hover {
  background-color: transparent;
  color: inherit;
}

#footer{background: var(--border); padding-top: 20px; padding-bottom: 20px; text-align: center}
.salutifinali{color:var(--muted);font-size: smaller;font-family: var(--font-mono)}
.dettagli{margin-top: 10px;font-size: smaller;color:var(--muted)}


/* Contenitore */
.cal-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 5px;
    margin-top: 25px;
}

.cal-container p {
    flex: 0 0 100%; /* Occupazione totale della riga */
    text-align: center; /* Opzionale: per centrare la scritta */
    margin: 0 0 10px 0; /* Spazio sotto la scritta */
    font-weight: 700;
    margin-bottom: 5px;
}

/* Stile comune dei link */
.cal-link {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px; /* Leggermente migliorato il padding laterale */
    text-decoration: none;
    font-size: 10px;
    font-weight: 600;
    color: #333;
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    box-shadow: 0 1px 3px #0000001a, 0 1px 2px #0000000f;
    transition: all 0.2s ease;
    white-space: nowrap;
}

/* Effetto hover (opzionale ma consigliato) */
.cal-link:hover {
    background-color: #f9f9f9;
    border-color: #ccc;
    box-shadow: 0 2px 5px #0000001f,0 1px 3px #00000014;
    transform: translateY(-1px);
}

/* Stile dell'immagine dentro il link */
.cal-link img {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    object-fit: contain;
}

/* Stili Who */
.who-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#e9f1ff;color:var(--blue);font-size:12px;flex:0 0 auto}
.who-photo img{
    border-radius: 16px;
    width: 120px;
    height: 120px
}
.who-section{
    margin-bottom: 30px;
}


.when-thanks {
    margin-top: 20px;
}

.when-logo img{
    max-height: 150px;
}

.when-logo {
    text-align: center;
}