/* Vivipedia 29.0 RC2 — primo percorso completo: Ho la testa piena */
.v291-journey{--v291-ink:#20352a;--v291-line:rgba(54,87,67,.2);--v291-soft:#eef4ef;--v291-warm:#f7f1e7;--v291-accent:#496b55;}
.v291-journey main{padding-bottom:7rem}
.v291-shell{width:min(980px,calc(100% - 32px));margin:0 auto}
.v291-hero{padding:38px 0 22px}
.v291-hero-card,.v291-card{border:1px solid var(--v291-line);border-radius:28px;background:rgba(255,255,255,.82);box-shadow:0 18px 55px rgba(42,68,51,.08)}
.v291-hero-card{padding:36px;background:linear-gradient(145deg,rgba(238,244,239,.96),rgba(255,255,255,.92))}
.v291-eyebrow{display:inline-flex;margin-bottom:12px;font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#4c6c57}
.v291-hero h1{font-size:clamp(2.35rem,6vw,5.2rem);line-height:.95;margin:0 0 18px;color:var(--v291-ink);max-width:850px}
.v291-lead{font-size:1.12rem;line-height:1.72;color:#52635a;max-width:760px;margin:0}
.v291-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.v291-card{padding:30px;margin:18px 0}
.v291-card h2{font-size:clamp(1.5rem,3.5vw,2.35rem);margin:0 0 8px;color:var(--v291-ink)}
.v291-card h3{color:var(--v291-ink)}
.v291-muted{color:#68776e;line-height:1.62}
.v291-hidden{display:none!important}
.v291-progress-wrap{display:grid;gap:12px;margin-bottom:26px}
.v291-progress{height:10px;border-radius:999px;background:#e6ede8;overflow:hidden}
.v291-progress span{display:block;height:100%;width:20%;border-radius:inherit;background:#607f68;transition:width .25s ease}
.v291-step-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.v291-step-nav button{border:1px solid var(--v291-line);border-radius:14px;background:#fff;padding:9px 7px;font:inherit;font-size:.78rem;color:#65746b;cursor:pointer}
.v291-step-nav button[aria-current="step"]{background:var(--v291-soft);border-color:#789481;color:#2e503a;font-weight:800}
.v291-step{display:none}
.v291-step.is-active{display:block}
.v291-step-intro{margin-bottom:20px}
.v291-step-intro strong{display:block;color:var(--v291-ink);font-size:1.04rem;margin-bottom:5px}
.v291-form label{display:block;margin:16px 0 7px;font-weight:780;color:var(--v291-ink)}
.v291-form input[type="text"],.v291-form input[type="date"],.v291-form select,.v291-form textarea{width:100%;border:1px solid var(--v291-line);border-radius:16px;padding:13px 14px;background:#fff;color:#20352a;font:inherit}
.v291-form textarea{min-height:150px;resize:vertical}
.v291-form .v291-short{min-height:100px}
.v291-hint{display:block;margin-top:6px;color:#718078;font-size:.88rem;line-height:1.5}
.v291-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.v291-score{padding:16px;border:1px solid var(--v291-line);border-radius:18px;background:var(--v291-soft)}
.v291-score label{display:flex;justify-content:space-between;gap:12px;margin:0 0 10px}
.v291-score output{font-weight:850;color:#355740}
.v291-score input{width:100%}
.v291-step-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:26px;padding-top:20px;border-top:1px solid var(--v291-line)}
.v291-step-actions .v291-right{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.v291-status{min-height:24px;margin:14px 0 0;color:#496b55;font-size:.92rem}
.v291-rest{padding:22px;border-radius:22px;background:linear-gradient(145deg,var(--v291-soft),#fff);border:1px solid var(--v291-line)}
.v291-rest p{line-height:1.68;margin:8px 0}
.v291-rest strong{color:var(--v291-ink)}
.v291-return{background:linear-gradient(145deg,var(--v291-warm),#fff)}
.v291-return-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.v291-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.v291-choice label{display:flex;align-items:center;gap:8px;margin:0;padding:12px;border:1px solid var(--v291-line);border-radius:15px;background:#fff;cursor:pointer}
.v291-private{padding:14px 16px;border-left:4px solid #789481;background:#f2f6f2;border-radius:0 14px 14px 0;color:#596b60;font-size:.9rem;line-height:1.55;margin-top:18px}
.v291-crisis{padding:16px 18px;border-radius:18px;background:#fff7e8;border:1px solid rgba(157,111,31,.22);line-height:1.58}
.v291-pilot-card{display:grid;gap:12px;padding:20px;border-radius:22px;background:linear-gradient(145deg,#eef4ef,#fff);border:1px solid rgba(54,87,67,.18)}
.v291-pilot-card strong{font-size:1.15rem;color:#20352a}
.v291-pilot-card p{margin:0;color:#607066;line-height:1.55}
.v291-pilot-meta{display:flex;flex-wrap:wrap;gap:8px}
.v291-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid rgba(54,87,67,.18);font-size:.8rem;color:#53675a}
@media(max-width:700px){
  .v291-shell{width:min(100% - 22px,980px)}
  .v291-hero{padding-top:20px}
  .v291-hero-card,.v291-card{padding:22px;border-radius:22px}
  .v291-step-nav{grid-template-columns:repeat(5,1fr)}
  .v291-step-nav button{font-size:0;padding:10px 4px}
  .v291-step-nav button::first-letter{font-size:.82rem}
  .v291-score-grid,.v291-return-grid{grid-template-columns:1fr}
  .v291-step-actions{display:block}
  .v291-step-actions .v291-right{margin-top:12px;justify-content:flex-start}
  .v291-choice{grid-template-columns:1fr}
}
