/* CEO Trust — home, "Come funziona": ciclo in quattro passi */
#vLanding .cf-stage{position:relative;max-width:1100px;height:900px;margin:0 auto}
#vLanding .cf-loop{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#vLanding .cf-arc{fill:none;stroke:#D9C7D0;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:6 9}
#vLanding .cf-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:300px;display:grid;justify-items:center}
#vLanding .cf-glow{position:absolute;inset:-40px;border-radius:50%;background:radial-gradient(closest-side,rgba(156,140,245,.28),rgba(217,120,140,.14) 55%,transparent 75%);filter:blur(4px)}
#vLanding .cf-mz{position:relative;width:240px}
#vLanding .cf-loopl{position:relative;margin-top:2px;font:italic 600 18px/1.2 var(--serif);color:#A8475C}
#vLanding .cf-step{position:absolute;width:310px}
#vLanding .cf-1{left:50%;top:0;transform:translateX(-50%)}
#vLanding .cf-2{right:0;top:50%;transform:translateY(-50%)}
#vLanding .cf-3{left:50%;bottom:0;transform:translateX(-50%)}
#vLanding .cf-4{left:0;top:50%;transform:translateY(-50%)}
#vLanding .cf-step h3{display:flex;align-items:center;gap:10px;font:600 21px/1.2 var(--sans);letter-spacing:-.01em;margin:0 0 12px}
#vLanding .cf-step h3 span{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;font-size:15px}
#vLanding .cf-step>p{color:var(--muted);font-size:15px;line-height:1.45;margin:12px 0 0}
#vLanding .cf-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 18px 40px -26px rgba(30,26,28,.35)}
/* 1 */
#vLanding .cf-bar{display:flex;gap:6px;margin-bottom:10px}.cf-bar i{width:9px;height:9px;border-radius:50%;background:#EF6B5E}.cf-bar i+i{background:#F1C14E}.cf-bar i+i+i{background:#5CC170}
#vLanding .cf-you{border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:600;font-size:14.5px;background:var(--soft)}
#vLanding .cf-src{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:6px}
#vLanding .cf-src li{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:6px 9px;font-size:13px}
#vLanding .cf-src svg{width:15px;color:#8E7CF0}
/* 2 */
#vLanding .cf-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
#vLanding .cf-row b{font-size:16px}
#vLanding .cf-row em{font-style:normal;font-weight:700;color:#2E8B57;background:var(--ok-soft);border-radius:999px;padding:3px 10px;font-size:14px}
#vLanding .cf-tg{width:42px;height:24px;border-radius:999px;background:#5CC170;position:relative}
#vLanding .cf-tg i{position:absolute;right:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2)}
#vLanding .cf-exp{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}
#vLanding .cf-exp li{display:flex;align-items:center;gap:7px;font-size:13.5px}
#vLanding .cf-exp i{width:9px;height:9px;border-radius:50%;background:var(--c)}
#vLanding .cf-live{display:flex;align-items:center;gap:8px;margin-top:12px;background:#F3F0FE;color:#5B4BC4;border-radius:10px;padding:7px 10px;font-size:13px;font-weight:500}
#vLanding .cf-live i{width:8px;height:8px;border-radius:50%;background:#8E7CF0;animation:cfPulse 1.6s ease-in-out infinite}
@keyframes cfPulse{50%{opacity:.25}}
/* 3 */
#vLanding .cf-goal{display:flex;align-items:center;gap:14px;position:relative}
#vLanding .cf-ring{width:74px;flex:none}
#vLanding .cf-pc{position:absolute;left:16px;width:74px;text-align:center;font-weight:700;font-size:16px;color:#7A63E0}
#vLanding .cf-goal b{display:block;font-size:15.5px;line-height:1.3}
#vLanding .cf-goal small{display:block;color:var(--muted);font-size:13.5px;margin-top:4px}
/* 4 */
#vLanding .cf-bars{display:flex;align-items:flex-end;gap:8px;height:82px;margin-top:12px}
#vLanding .cf-bars span{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}
#vLanding .cf-bars i{width:100%;height:var(--v);border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#9ED7B3,#E6F4EC)}
#vLanding .cf-bars small{font-size:11px;color:var(--muted)}
#vLanding .cf-todo{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:6px}
#vLanding .cf-todo li{display:flex;align-items:center;gap:8px;font-size:13px;background:var(--soft);border-radius:9px;padding:6px 9px}
#vLanding .cf-todo i{width:8px;height:8px;border-radius:50%;flex:none;background:var(--crit)}
#vLanding .cf-todo li.y i{background:var(--warn)}
/* ingresso */
#vLanding .cf-wait .cf-step,#vLanding .cf-wait .cf-core{opacity:0}
#vLanding .cf-wait .cf-arc{stroke-dashoffset:300}
#vLanding .cf-in .cf-core{animation:cfFade .6s ease both}
#vLanding .cf-in .cf-step{animation:cfFade .6s ease both}
#vLanding .cf-in .cf-1{animation-delay:.15s}#vLanding .cf-in .cf-2{animation-delay:.35s}#vLanding .cf-in .cf-3{animation-delay:.55s}#vLanding .cf-in .cf-4{animation-delay:.75s}
@keyframes cfFade{from{opacity:0}to{opacity:1}}
@media (max-width:1060px){#vLanding .cf-step{width:280px}#vLanding .cf-mz{width:200px}#vLanding .cf-core{width:240px}}
@media (max-width:900px){
  #vLanding .cf-stage{height:auto;max-width:440px;display:flex;flex-direction:column;gap:0}
  #vLanding .cf-loop{display:none}
  #vLanding .cf-core{position:relative;left:auto;top:auto;transform:none;margin:0 auto 18px;width:auto}
  #vLanding .cf-mz{width:170px}
  #vLanding .cf-step{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:auto;padding:0 0 34px 0}
  #vLanding .cf-step:not(:last-child)::after{content:"";position:absolute;left:14px;bottom:4px;height:24px;border-left:2px dashed #D9C7D0}
}

/* home: guide */
#vLanding .lp-gcards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
#vLanding .lp-gcard{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;color:var(--ink);text-decoration:none;transition:border-color .2s}
#vLanding .lp-gcard:hover{border-color:#d9c7d0}
#vLanding .lp-gcard b{display:block;font:600 18px/1.3 var(--sans)}
#vLanding .lp-gcard span{display:block;color:var(--muted);font-size:15px;line-height:1.5;margin-top:8px}
#vLanding .lp-gall{text-align:center;margin:22px 0 0}
#vLanding .lp-gall a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#cdc3c0}
@media (max-width:900px){#vLanding .lp-gcards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){#vLanding .lp-gcards{grid-template-columns:1fr}}
/* contrasto più leggibile */
#vLanding .lp-xc li{color:color-mix(in srgb,var(--fg) 62%,#1E1A1C)}
#vLanding .lp-top .logo i,#vLanding footer .logo i{color:#C05A74}

/* 5: scarica il tuo report */
#vLanding .cf-rep{position:relative;max-width:1060px;margin:10px auto 0;display:grid;justify-items:center}
#vLanding .cf-rep-arrow{width:24px;height:60px;margin-bottom:10px}
#vLanding .cf-rep-card{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:48px;align-items:center;padding:44px 48px;border-radius:28px;background:linear-gradient(135deg,#F3F0FD 0%,#FBEFF2 55%,#FEF4EC 100%);border:1px solid #EADFE3;overflow:hidden}
#vLanding .cf-rep-card::before{content:"";position:absolute;inset:-1px;border-radius:28px;padding:2px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
#vLanding .cf-rep-pages{position:relative;height:430px}
#vLanding .cf-rep-pages img{position:absolute;width:62%;height:auto;border-radius:8px;background:#fff;box-shadow:0 24px 50px -24px rgba(30,26,28,.45),0 2px 6px rgba(30,26,28,.08)}
#vLanding .cf-rep-pages .p2{left:0;top:34px;transform:rotate(-7deg);opacity:.92}
#vLanding .cf-rep-pages .p3{right:0;top:34px;transform:rotate(6deg);opacity:.92}
#vLanding .cf-rep-pages .p1{left:19%;top:0;z-index:2}
#vLanding .cf-rep-pdf{position:absolute;z-index:3;right:12%;bottom:22px;background:#1E1A1C;color:#fff;font-weight:700;font-size:13px;letter-spacing:.08em;padding:7px 12px;border-radius:10px;box-shadow:0 10px 24px -10px rgba(30,26,28,.6)}
#vLanding .cf-rep-k{display:inline-flex;align-items:center;gap:10px;font:italic 600 18px/1.2 var(--serif);color:#A8475C}
#vLanding .cf-rep-k span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;font:600 15px var(--sans)}
#vLanding .cf-rep-tx h3{margin:10px 0 12px;font:700 40px/1.06 var(--sans);letter-spacing:-.03em}
#vLanding .cf-rep-tx>p{margin:0;font-size:17px;line-height:1.55;color:#3B3437;max-width:470px}
#vLanding .cf-rep-tx ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:9px}
#vLanding .cf-rep-tx li{position:relative;padding-left:30px;font-size:15.5px;line-height:1.4}
#vLanding .cf-rep-tx li::before{content:"";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:#2F8F5B url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}
#vLanding .cf-rep-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
#vLanding .cf-rep-acts .lp-btn{padding:14px 20px}
#vLanding .cf-rep-free{display:block;margin-top:12px;color:var(--muted);font-size:13.5px}
@media (max-width:900px){
  #vLanding .cf-rep-card{grid-template-columns:1fr;gap:26px;padding:28px 20px}
  #vLanding .cf-rep-pages{height:auto;aspect-ratio:1/1.08;max-width:460px;width:100%;margin:0 auto 6px}
  #vLanding .cf-rep-tx h3{font-size:31px}
  #vLanding .cf-rep-acts .lp-btn{flex:1 1 100%}
}

#come .come-video{max-width:960px;margin:0 auto 56px}
#come .come-video video{display:block;width:100%;aspect-ratio:16/9;border-radius:18px;border:1px solid rgba(30,26,28,.1);background:#F4F2EF;box-shadow:0 18px 50px -24px rgba(30,26,28,.35)}
#come .come-video-n{margin-top:14px;text-align:center;font-size:15px;line-height:1.5;color:#5b5155}
#come .come-video-n a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}
@media (max-width:640px){#come .come-video{margin-bottom:36px}#come .come-video video{border-radius:12px}}

/* schemi del viaggio dei dati */
.come-diag{margin:48px auto 120px;max-width:1100px}
.come-diag-h{text-align:center;max-width:62ch;margin:0 auto 22px}
.come-diag-h h3{margin:0;font:400 clamp(26px,3vw,36px)/1.15 "Bodoni Moda",Georgia,serif;letter-spacing:-.01em}
.come-diag-h p{margin:10px 0 0;color:var(--muted,#6F6669);font-size:16.5px;line-height:1.55}
.come-diag-g{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.come-diag-f{position:relative;display:block;border-radius:22px;overflow:hidden;background:#17131A;box-shadow:0 30px 60px -34px rgba(40,20,40,.6);text-decoration:none;color:#fff;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.come-diag-f img{display:block;width:100%;height:auto}
.come-diag-f:hover{transform:translateY(-4px);box-shadow:0 40px 70px -34px rgba(40,20,40,.7)}
.come-diag-f:focus-visible{outline:3px solid #9C8CF5;outline-offset:3px}
.come-diag-c{position:absolute;left:0;right:0;bottom:0;padding:44px 22px 18px;background:linear-gradient(180deg,rgba(23,19,26,0),rgba(23,19,26,.92) 55%);display:grid;gap:2px;font-size:15px;color:#CFC5D6}
.come-diag-c b{font-size:19px;font-weight:600;line-height:1.2;color:#fff}
.come-diag-c i{font-style:normal;margin-top:8px;font-weight:600;color:#F2C9D2}
@media (max-width:760px){.come-diag-g{grid-template-columns:1fr}.come-diag{margin-top:34px;margin-bottom:72px}}
@media (prefers-reduced-motion:reduce){.come-diag-f{transition:none}.come-diag-f:hover{transform:none}}
