/* CEO Trust — pagina d'apertura in cima alla schermata "I tuoi dati restano tuoi" */
:is(#ctGate,#vLanding) .op{--op-bg:#f4f2f1;--op-surface:#fff;--op-ink:#1e1a1c;--op-muted:#6b6266;--op-line:#e7e1df;
  --g1:#9c8cf5;--g2:#d9788c;--g3:#f2a97e;--op-wine:#8a3a4c;--op-chip:#f6efee;--op-dark:#1e1a1c;--op-dark-ink:#f4f2f1;
  --op-display:"Bodoni Moda",Didot,"Bodoni 72",Georgia,serif;--op-body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  max-width:1180px;margin:0 auto;padding:clamp(28px,6vh,56px) 20px 8px;display:grid;gap:64px;color:var(--op-ink);font-family:var(--op-body);font-size:17px;line-height:1.55}
:is(#ctGate,#vLanding) .op *{box-sizing:border-box}
:is(#ctGate,#vLanding) .op-eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--op-wine)}
:is(#ctGate,#vLanding) .op-hero{display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center}
:is(#ctGate,#vLanding) .op-hero>*{min-width:0}
:is(#ctGate,#vLanding) .op-h1{font-family:var(--op-body);font-weight:700;font-size:clamp(42px,6.4vw,84px);line-height:.98;letter-spacing:-.03em;margin:14px 0 0;text-wrap:balance}
:is(#ctGate,#vLanding) .op-h1 em{display:block;font-family:var(--op-display);font-style:italic;font-weight:500;letter-spacing:-.01em;padding-bottom:.08em;
  background:linear-gradient(100deg,var(--g1) 0%,var(--g2) 50%,var(--g3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
:is(#ctGate,#vLanding) .op-lead{font-size:clamp(18px,1.6vw,21px);color:var(--op-muted);max-width:34em;margin:24px 0 0}
:is(#ctGate,#vLanding) .op-lead b{color:var(--op-ink);font-weight:600}
:is(#ctGate,#vLanding) .op-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;align-items:center}
:is(#ctGate,#vLanding) .op-btn{appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:999px;font:600 16px/1.2 var(--op-body);text-decoration:none;border:1px solid var(--op-line);color:var(--op-ink);background:var(--op-surface)}
:is(#ctGate,#vLanding) .op-btn.op-primary{background:var(--op-dark);color:var(--op-dark-ink);border-color:transparent}
:is(#ctGate,#vLanding) .op-btn:focus-visible{outline:3px solid var(--g1);outline-offset:3px}
:is(#ctGate,#vLanding) .op-fine{font-size:14px;color:var(--op-muted);margin:14px 0 0}
/* Le cose di oggi */
:is(#ctGate,#vLanding) .op-today{background:var(--op-dark);color:var(--op-dark-ink);border-radius:28px;padding:26px;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px rgba(156,140,245,.55)}
:is(#ctGate,#vLanding) .op-today::before{content:"";position:absolute;inset:-40% -30% auto auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(156,140,245,.55),transparent 65%)}
:is(#ctGate,#vLanding) .op-today>*{position:relative}
:is(#ctGate,#vLanding) .op-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
:is(#ctGate,#vLanding) .op-today h3{margin:0;font-family:var(--op-display);font-style:italic;font-weight:500;font-size:28px;color:inherit}
:is(#ctGate,#vLanding) .op-date{font-size:13px;opacity:.7}
:is(#ctGate,#vLanding) .op-today ol{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px;counter-reset:t}
:is(#ctGate,#vLanding) .op-today li{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:start;padding:14px;border-radius:16px;background:rgba(255,255,255,.07);font-size:15px;line-height:1.4}
:is(#ctGate,#vLanding) .op-today li::before{counter-increment:t;content:counter(t);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;background:rgba(255,255,255,.12)}
:is(#ctGate,#vLanding) .op-tag{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:999px;white-space:nowrap}
:is(#ctGate,#vLanding) .op-t-cassa{background:rgba(242,169,126,.22);color:#f6c3a5}
:is(#ctGate,#vLanding) .op-t-cred{background:rgba(217,120,140,.25);color:#f1b3c0}
:is(#ctGate,#vLanding) .op-t-forn{background:rgba(156,140,245,.25);color:#cfc6ff}
:is(#ctGate,#vLanding) .op-t-banca{background:rgba(140,198,160,.22);color:#b9e2c6}
:is(#ctGate,#vLanding) .op-note{font-size:12px;opacity:.6;margin:14px 0 0}
/* fascia scura "Cosa fa per te" */
:is(#ctGate,#vLanding) .op-night{--n-bg:#141018;--n-bg2:#1f1824;--n-ink:#f6f1f4;--n-mute:#c3b6c0;--n-line:rgba(255,255,255,.10);--n-card:rgba(255,255,255,.045);
  position:relative;isolation:isolate;overflow:hidden;border-radius:36px;color:var(--n-ink);
  background:radial-gradient(48rem 30rem at 18% 30%,rgba(156,140,245,.30),transparent 62%),
             radial-gradient(40rem 26rem at 92% 8%,rgba(217,120,140,.26),transparent 60%),
             radial-gradient(36rem 24rem at 70% 105%,rgba(242,169,126,.20),transparent 60%),
             linear-gradient(160deg,var(--n-bg2),var(--n-bg));
  padding-block:clamp(40px,6vw,80px);padding-inline:clamp(20px,4.5vw,64px)}
:is(#ctGate,#vLanding) .op-stars{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.8}
:is(#ctGate,#vLanding) .op-nhead{text-align:center;max-width:46rem;margin-inline:auto}
:is(#ctGate,#vLanding) .op-neyebrow{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#f1b3c0}
:is(#ctGate,#vLanding) .op-ntitle{font:700 clamp(34px,5.2vw,64px)/1.02 var(--op-body);letter-spacing:-.03em;margin:14px 0 0;text-wrap:balance;color:var(--n-ink)}
:is(#ctGate,#vLanding) .op-ntitle em{display:inline-block;font-family:var(--op-display);font-style:italic;font-weight:500;letter-spacing:-.01em;padding-right:.08em;
  background:linear-gradient(100deg,var(--g1),var(--g2) 50%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent}
:is(#ctGate,#vLanding) .op-nsub{color:var(--n-mute);font-size:clamp(16px,1.5vw,19px);max-width:32em;margin:18px auto 0}
:is(#ctGate,#vLanding) .op-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;justify-content:center}
:is(#ctGate,#vLanding) .op-stats span{display:inline-flex;align-items:baseline;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--n-line);font-size:14px;color:var(--n-mute)}
:is(#ctGate,#vLanding) .op-stats b{font-family:var(--op-display);font-style:italic;font-weight:500;font-size:22px;color:var(--n-ink)}
:is(#ctGate,#vLanding) .op-orbit{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1.15fr) minmax(0,1fr);grid-template-rows:repeat(3,auto);gap:16px clamp(16px,2.4vw,32px);margin-top:clamp(36px,5vw,56px);align-items:stretch}
:is(#ctGate,#vLanding) .op-c1{grid-area:1/1}:is(#ctGate,#vLanding) .op-c2{grid-area:2/1}:is(#ctGate,#vLanding) .op-c3{grid-area:3/1}:is(#ctGate,#vLanding) .op-c4{grid-area:1/3}:is(#ctGate,#vLanding) .op-c5{grid-area:2/3}:is(#ctGate,#vLanding) .op-c6{grid-area:3/3}
:is(#ctGate,#vLanding) .op-nhero{grid-area:1/2/4/3;position:relative;display:grid;place-items:center;align-self:center;aspect-ratio:1/1;width:118%;max-width:500px;margin-inline:-9%;justify-self:center}
:is(#ctGate,#vLanding) .op-ring{position:absolute;inset:6%;border-radius:50%;border:1px dashed rgba(233,163,240,.35)}
:is(#ctGate,#vLanding) .op-ring.op-r2{inset:18%;border-style:solid;border-color:rgba(255,255,255,.07)}
:is(#ctGate,#vLanding) .op-halo{position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 50% 55%,rgba(233,163,240,.45),rgba(156,140,245,.18) 45%,transparent 70%);filter:blur(6px)}
:is(#ctGate,#vLanding) .op-nhero .mz{position:relative;width:78%;display:block}
:is(#ctGate,#vLanding) .op-nhero .mz svg{display:block;width:100%;height:auto;overflow:visible}
:is(#ctGate,#vLanding) .op-nhero .mz-shadow{fill:rgba(185,168,255,.30)}
:is(#ctGate,#vLanding) .op-spark{position:absolute;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 12px 3px rgba(233,163,240,.9)}
:is(#ctGate,#vLanding) .op-s1{top:12%;left:22%}:is(#ctGate,#vLanding) .op-s2{top:30%;right:8%}:is(#ctGate,#vLanding) .op-s3{bottom:16%;left:10%}
:is(#ctGate,#vLanding) .op-card{--mx:50%;--my:0%;position:relative;border-radius:24px;padding:22px 22px 24px;background:var(--n-card);border:1px solid var(--n-line);
  display:grid;container-type:inline-size;grid-template-columns:minmax(0,1fr);grid-template-areas:'m' 'b' 'h' 'p';gap:6px 14px;align-items:center;align-content:start;overflow:hidden;text-align:left;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,background .35s}
:is(#ctGate,#vLanding) .op-card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(18rem 12rem at var(--mx) var(--my),rgba(233,163,240,.18),transparent 70%)}
:is(#ctGate,#vLanding) .op-card:hover{transform:translateY(-4px);border-color:rgba(233,163,240,.38);background:rgba(255,255,255,.07)}
:is(#ctGate,#vLanding) .op-card:hover::before{opacity:1}
:is(#ctGate,#vLanding) .op-card .mz{grid-area:m;width:58px;justify-self:start;display:block;margin:-8px 0 -4px -6px}
:is(#ctGate,#vLanding) .op-card .mz svg{display:block;width:100%;height:auto;overflow:visible}
:is(#ctGate,#vLanding) .op-card .mz-shadow{fill:rgba(0,0,0,.25)}
:is(#ctGate,#vLanding) .op-big{grid-area:b;min-width:0;white-space:nowrap;font-family:var(--op-display);font-style:italic;font-weight:500;font-size:clamp(20px,12.5cqi,34px);line-height:1.05;
  background:linear-gradient(100deg,#cfc6ff,#f1b3c0 55%,#f6c3a5);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.1em}
:is(#ctGate,#vLanding) .op-card h3{grid-area:h;margin:8px 0 0;font:700 18px/1.3 var(--op-body);letter-spacing:-.01em;color:var(--n-ink)}
:is(#ctGate,#vLanding) .op-card p{grid-area:p;margin:2px 0 0;color:var(--n-mute);font-size:15px;line-height:1.5}
@media (prefers-reduced-motion:no-preference){
  :is(#ctGate,#vLanding) .op-nhero .mz-body{animation:opBob 3.4s ease-in-out infinite;transform-box:fill-box}
  :is(#ctGate,#vLanding) .op-card .mz-body{animation:opBob 3.2s ease-in-out infinite;transform-box:fill-box}
  :is(#ctGate,#vLanding) .op-card:nth-child(2n) .mz-body{animation-delay:-1.1s}:is(#ctGate,#vLanding) .op-card:nth-child(3n) .mz-body{animation-delay:-2s}
  :is(#ctGate,#vLanding) .op-ring{animation:opSpin 40s linear infinite}
  :is(#ctGate,#vLanding) .op-spark{animation:opTw 2.8s ease-in-out infinite}:is(#ctGate,#vLanding) .op-s2{animation-delay:-1s}:is(#ctGate,#vLanding) .op-s3{animation-delay:-1.8s}
  :is(#ctGate,#vLanding) .op-today li{animation:opIn .6s both}:is(#ctGate,#vLanding) .op-today li:nth-child(2){animation-delay:.12s}:is(#ctGate,#vLanding) .op-today li:nth-child(3){animation-delay:.24s}:is(#ctGate,#vLanding) .op-today li:nth-child(4){animation-delay:.36s}
  @keyframes opBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
  @keyframes opSpin{to{transform:rotate(360deg)}}
  @keyframes opTw{0%,100%{opacity:.3;transform:scale(.7)}50%{opacity:1;transform:scale(1.2)}}
  @keyframes opIn{from{transform:translateY(6px)}to{transform:none}}
}
/* passaggio a "Segui il percorso di un dato" */
:is(#ctGate,#vLanding) .op-bridge{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:28px 30px;border-radius:24px;background:var(--op-chip);border:1px solid var(--op-line)}
:is(#ctGate,#vLanding) .op-bridge p{margin:0;font-size:clamp(20px,2.2vw,26px);font-weight:600;letter-spacing:-.01em;max-width:28em;line-height:1.3}
:is(#ctGate,#vLanding) .op-bridge p em{font-family:var(--op-display);font-style:italic;font-weight:500;background:linear-gradient(100deg,var(--g1),var(--g2) 50%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent}
:is(#ctGate,#vLanding) .pg-vh{scroll-margin-top:16px}
:is(#ctGate,#vLanding) .pg-act{scroll-margin-top:24px}
:is(#ctGate,#vLanding) .op~.pg-in .pg-logo{display:none}
@media (max-width:1060px){:is(#ctGate,#vLanding) .op-orbit{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
  :is(#ctGate,#vLanding) .op-nhero{grid-area:auto;grid-column:1/-1;order:-1;width:100%;max-width:320px;margin-inline:auto}
  :is(#ctGate,#vLanding) .op-c1,:is(#ctGate,#vLanding) .op-c2,:is(#ctGate,#vLanding) .op-c3,:is(#ctGate,#vLanding) .op-c4,:is(#ctGate,#vLanding) .op-c5,:is(#ctGate,#vLanding) .op-c6{grid-area:auto}}
@media (max-width:900px){:is(#ctGate,#vLanding) .op-hero{grid-template-columns:1fr}}
@media (max-width:760px){:is(#ctGate,#vLanding) .op-night{border-radius:28px}:is(#ctGate,#vLanding) .op-orbit{grid-template-columns:1fr;gap:12px}
  :is(#ctGate,#vLanding) .op-nhero{max-width:260px;margin-bottom:-4px}
  :is(#ctGate,#vLanding) .op-card{grid-template-columns:60px minmax(0,1fr);grid-template-areas:'m b' 'h h' 'p p';padding:18px 20px 20px}
  :is(#ctGate,#vLanding) .op-card .mz{width:60px}:is(#ctGate,#vLanding) .op-big{font-size:clamp(20px,9cqi,30px)}}
@media (max-width:560px){:is(#ctGate,#vLanding) .op{gap:48px;padding-top:32px}:is(#ctGate,#vLanding) .op-today li{grid-template-columns:28px 1fr}:is(#ctGate,#vLanding) .op-today li .op-tag{grid-column:2;justify-self:start}
  :is(#ctGate,#vLanding) .op-bridge{padding:22px}:is(#ctGate,#vLanding) .op-bridge .op-btn{width:100%;justify-content:center}}

/* sulla Home pubblica */
#vLanding .op{padding:clamp(24px,5vh,48px) 0 clamp(40px,6vh,72px)}
#vLanding #nomi-in-codice{scroll-margin-top:90px}
#vLanding .op-btn{color:var(--op-ink)}
#vLanding .op-btn.op-primary{color:var(--op-dark-ink)}
@media (max-width:560px){:is(#ctGate,#vLanding) .op-top{flex-wrap:wrap;row-gap:2px}:is(#ctGate,#vLanding) .op-today h3{white-space:nowrap}}

/* logo CT accanto alla scritta CEO Trust in alto */
#vLanding .lp-top .logo{display:inline-flex;align-items:center;gap:10px}
#vLanding .lp-logo-mark{display:inline-grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:linear-gradient(100deg,#9c8cf5 0%,#d9788c 55%,#f2a97e 100%);color:#fff;font:italic 500 16px/1 "Bodoni Moda",Didot,Georgia,serif;letter-spacing:.02em;box-shadow:0 8px 18px -8px rgba(217,120,140,.75)}
@media (max-width:560px){#vLanding .lp-logo-mark{width:30px;height:30px;border-radius:9px;font-size:13px}#vLanding .lp-top .logo{gap:8px}}
@media (max-width:420px){#vLanding .lp-top .lp-btn,#vLanding .lp-top .lp-lang{white-space:nowrap}#vLanding .lp-top .lp-wrap{gap:8px}#vLanding .lp-top .logo{font-size:19px}#vLanding .lp-top .lp-acts{gap:6px}#vLanding .lp-top .lp-acts .lp-btn{padding-inline:12px}}
/* barra in alto sempre su una riga */
#vLanding .lp-top .logo,#vLanding .lp-top nav a,#vLanding .lp-top .lp-btn{white-space:nowrap;flex:none}
#vLanding .lp-top .lp-wrap{gap:20px}
@media (max-width:1500px){#vLanding .lp-top nav{gap:0}#vLanding .lp-top nav a{padding:8px 9px;font-size:14.5px}}
@media (max-width:1140px){#vLanding .lp-top nav a:nth-child(n+6){display:none}}
@media (max-width:1000px){#vLanding .lp-top nav a:nth-child(5){display:none}}
@media (max-width:440px){#vLanding .lp-top .logo{font-size:0;gap:0}#vLanding .lp-top .logo .lp-logo-mark{font-size:13px}}

/* check-up gratuito dalla PEC */
.op-ck{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;background:var(--op-surface,#fff);border:1px solid var(--op-line,#E7E2E0);border-radius:28px;padding:clamp(24px,4vw,44px)}
.op-ck-pill{display:inline-block;font:600 13px/1 var(--op-body,inherit);color:#5B4FC0;background:#F2EFFE;border-radius:99px;padding:7px 12px}
.op-ck-h{margin:14px 0 0;font:700 clamp(30px,4vw,48px)/1.04 var(--op-body);letter-spacing:-.03em;color:var(--op-ink,#1E1A1C);text-wrap:balance}
.op-ck-h em{font:italic 400 1.04em var(--op-display);color:#B0566B;letter-spacing:-.01em}
.op-ck-p{margin:14px 0 0;font-size:17px;line-height:1.55;color:#4C4447;max-width:52ch}
.op-ck-f{margin-top:20px;display:flex;flex-direction:column;gap:8px;max-width:540px}
.op-ck-f label{font-weight:600;font-size:15px}
.op-ck-row{display:flex;flex-wrap:wrap;gap:10px}
.op-ck-row input{flex:1 1 200px;min-height:52px;border:1px solid #D6CED2;border-radius:14px;padding:0 16px;font:inherit;font-size:17px;background:#fff;color:#1E1A1C}
.op-ck-row input:focus{outline:2px solid #B9AEFF;outline-offset:1px}
.op-ck-row .op-btn{width:auto}
.op-ck-f small{color:#6F6669;font-size:13px}
.op-ck-r{display:flex;flex-direction:column;gap:14px}
.op-ck-why{background:#17131A;color:#F4F0F6;border-radius:20px;padding:24px 26px}
.op-ck-why b{display:block;font:italic 400 24px/1.25 var(--op-display);color:#fff}
.op-ck-why p{margin:10px 0 0;font-size:15px;line-height:1.55;color:#CFC6D3}
.op-ck-steps{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.op-ck-steps li{border:1px solid #E8E1E4;border-radius:14px;padding:14px;font-size:14px;line-height:1.4;display:flex;flex-direction:column;gap:4px;background:#fff}
.op-ck-steps b{font:italic 400 24px var(--op-display);color:#B0566B}
@media (max-width:860px){.op-ck{grid-template-columns:1fr}.op-ck-steps{grid-template-columns:1fr}}
