/* ==========================================================================
   Contify — design system (estratto fedelmente da index_contify.html)
   Sistema colore attuale del sito, allineato a contify-ab.it.
   NB brand manual 2023 (Pantone 7474 C #048587) — vedi README.
   ========================================================================== */

/* ---- Font self-hosted (ex Google Fonts) ---- */
/* ===== Font self-hosted (ex Google Fonts) - nessuna terza parte ===== */
@font-face{
  font-family:'DM Sans';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url('/fonts/dm-sans-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'DM Sans';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url('/fonts/dm-sans-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'DM Sans';
  font-style:italic;
  font-weight:400 800;
  font-display:swap;
  src:url('/fonts/dm-sans-italic-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'DM Sans';
  font-style:italic;
  font-weight:400 800;
  font-display:swap;
  src:url('/fonts/dm-sans-italic-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'JetBrains Mono';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('/fonts/jetbrains-mono-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'JetBrains Mono';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('/fonts/jetbrains-mono-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ---- Design system ---- */
  :root{
    --navy:#0E2A2A; --navy-2:#081D1D; --teal:#339999; --teal-deep:#0E7C86;
    --mint:#8FF0DD; --light:#E8F5F2; --ink:#1A2A2A; --grey:#5A6A6A;
    --paper:#FFFFFF; --line:#CCD9D9; --line-soft:#DDE8E6;
    --font-display:'DM Sans',system-ui,-apple-system,sans-serif;
    --font-mono:'JetBrains Mono',ui-monospace,monospace;
    --maxw:1160px; --r:16px;
    --argo:#4C90FF; --argo-deep:#2563EB; --argo-glow:rgba(76,144,255,.20);
    /* ---- Outsourcing Contabilità & Paghe (palette firma, da outsourcingpaghe.it) ---- */
    --osp:#FC8F39; --osp-deep:#FB7307; --osp-lime:#E7FC39;
    --osp-navy:#0B1C42; --osp-navy-2:#020D26; --osp-glow:rgba(252,143,57,.20);
    /* ---- Neura Studio (palette firma, da neurastudio.pro) ---- */
    --neura-ink:#0b0f17; --neura-ink-2:#10161f; --neura-sky:#0ea5e9; --neura-sky-d:#0284c7;
    --neura-cyan:#06b6d4; --neura-teal:#2dd4bf; --neura-violet:#8b5cf6; --neura-blue:#3b82f6;
    --neura-glow:rgba(14,165,233,.22);
    /* ---- alias sistema landing AB (palette identica) ---- */
    --pri:#339999; --priL:#3db8b8; --priD:#267373; --priGlow:rgba(51,153,153,.30);
    --acc:#e8c547; --accD:#c9a52e;
    --bg:#f5f7fa; --bgCard:#ffffff; --bgSoft:#eef1f5;
    --tx:#1a1f2e; --txM:#5a6370; --txD:#8b95a4; --bd:#dde2ea;
    --ok:#4ecb71; --wrn:#f0a030; --dng:#e05555; /* semafori AB (anteprima grafica) */
    --radius:16px; --radiusSm:10px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--font-display);color:var(--ink);background:var(--paper);
    line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  ::selection{background:var(--mint);color:var(--navy)}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:600;
    letter-spacing:.22em;text-transform:uppercase;color:var(--teal);
    display:inline-flex;align-items:center;gap:10px}
  .eyebrow::before{content:"";width:26px;height:1px;background:var(--teal);display:inline-block}
  .eyebrow.on-dark{color:var(--mint)}
  .eyebrow.on-dark::before{background:var(--mint)}
  .eyebrow.center{justify-content:center}
  .eyebrow.center::before{display:none}

  h1,h2,h3{line-height:1.08;letter-spacing:-.02em;font-weight:700}
  .lead{color:var(--grey);font-size:1.12rem;max-width:60ch}

  .btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display);
    font-weight:600;font-size:.98rem;padding:14px 24px;border-radius:var(--radiusSm);cursor:pointer;
    border:1.5px solid transparent;transition:.2s ease;white-space:nowrap}
  .btn .arw{transition:transform .2s ease}
  .btn:hover .arw{transform:translateX(4px)}
  .btn-primary{background:linear-gradient(135deg,var(--pri),var(--priD));color:#fff;box-shadow:0 4px 24px var(--priGlow)}
  .btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 40px var(--priGlow)}
  .btn-ghost{background:transparent;color:var(--navy);border-color:var(--line)}
  .btn-ghost:hover{border-color:var(--teal);color:var(--teal)}
  .btn-ghost.on-dark{color:#fff;border-color:rgba(143,240,221,.4)}
  .btn-ghost.on-dark:hover{border-color:var(--mint);color:var(--mint)}
  .btn-mint{background:var(--pri);color:#fff}
  .btn-mint:hover{background:var(--priL)}
  a:focus-visible,.btn:focus-visible{outline:2.5px solid var(--teal);outline-offset:3px;border-radius:6px}
  .on-dark a:focus-visible{outline-color:var(--mint)}

  /* ---------- HEADER / NAV (sistema landing AB) ---------- */
/* ═══ NAV ═══ */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:14px 0;background:#ffffff;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid transparent;transition:all .3s}
.nav.scrolled{border-bottom-color:var(--bd);padding:10px 0;background:#ffffff}
.nav-inner{max-width:1140px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}
.nav-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:1.2rem;font-weight:800;color:#1a1f2e}
.nav-brand img{height:36px;width:auto;flex-shrink:0;object-fit:contain;border-radius:0}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:.86rem;font-weight:500;color:var(--txM);white-space:nowrap}
.nav-links a:hover{color:var(--tx)}
.nav-links a.nav-cta{padding:10px 22px;border-radius:8px;font-size:.84rem;font-weight:700;background:var(--pri);color:#fff;transition:all .2s}
.nav-links a.nav-cta:hover{background:var(--priL);color:#fff;transform:translateY(-1px)}
.nav-links a.nav-portal{font-weight:700;color:var(--pri)}
.nav-links a.nav-portal:hover{color:var(--priL)}
/* Dropdown Prodotti */
.nav-dd{position:relative;display:flex;align-items:center}
.nav-dd-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.86rem;font-weight:500;color:var(--txM);padding:0;line-height:inherit}
.nav-dd-toggle:hover,.nav-dd:hover .nav-dd-toggle,.nav-dd:focus-within .nav-dd-toggle{color:var(--tx)}
.nav-dd-caret{transition:transform .2s;flex-shrink:0}
.nav-dd:hover .nav-dd-caret,.nav-dd:focus-within .nav-dd-caret,.nav-dd.open .nav-dd-caret{transform:rotate(180deg)}
.nav-dd-menu{position:absolute;top:100%;left:0;margin-top:14px;min-width:280px;max-width:340px;background:#fff;border:1px solid var(--bd);border-radius:12px;box-shadow:0 18px 48px rgba(14,42,42,.14);padding:10px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;z-index:101}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dd-menu::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
/* Tendina piu' alta della finestra (es. portatili 1366x768): scorre al suo interno. Il ponte per l'hover
   sta sul contenitore perche' overflow taglierebbe il ::before del menu. */
@media(min-width:961px){
  .nav-dd-menu{max-height:calc(100vh - 90px);overflow-y:auto;overscroll-behavior:contain}
  .nav-dd:hover::after,.nav-dd:focus-within::after{content:"";position:absolute;top:100%;left:0;width:280px;height:16px}
}
.nav-dd-menu a{display:block;padding:9px 12px;border-radius:8px;font-size:.86rem;font-weight:500;color:var(--txM);line-height:1.3}
.nav-dd-menu a:hover{background:var(--bg);color:var(--tx)}
.nav-dd-sub{margin-top:6px;padding-top:8px;border-top:1px solid var(--bd)}
.nav-dd-label{display:block;padding:9px 12px;font-size:.86rem;font-weight:700;color:var(--tx);line-height:1.3}
.nav-dd-sub-head{font-weight:700!important;color:var(--tx)!important}
.nav-dd-sub-child{padding-left:26px!important;position:relative}
.nav-dd-sub-child::before{content:"";position:absolute;left:13px;top:50%;width:7px;height:1px;background:var(--txM)}
/* Hamburger */
.nav-hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;-webkit-tap-highlight-color:transparent}
.nav-hamburger svg{display:block}
@media(max-width:960px){
  .nav-links{position:fixed;top:0;right:-100%;width:75%;max-width:320px;height:100vh;overflow-y:auto;overscroll-behavior:contain;background:#ffffff;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);flex-direction:column;align-items:stretch;gap:0;padding:80px 24px 40px;transition:right .35s cubic-bezier(.4,0,.2,1);z-index:99;border-left:1px solid var(--bd)}
  .nav-links.open{right:0}
  .nav-links a{padding:16px 0;font-size:1rem;border-bottom:1px solid var(--bd)}
  .nav-links a.nav-cta{text-align:center;margin-top:16px;padding:16px 22px;border-bottom:none}
  /* Dropdown → accordion nel drawer mobile */
  .nav-dd{flex-direction:column;align-items:stretch}
  .nav-dd-toggle{justify-content:space-between;width:100%;padding:16px 0;font-size:1rem;border-bottom:1px solid var(--bd)}
  .nav-dd-menu{position:static;min-width:0;max-width:none;margin:0;padding:0;border:none;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;max-height:0;overflow:hidden;transition:max-height .3s ease}
  .nav-dd.open .nav-dd-menu{max-height:1100px}
  .nav-dd-menu::before{display:none}
  .nav-dd-menu a{padding:14px 0 14px 16px;border-bottom:1px solid var(--bd);border-radius:0;font-size:.95rem}
  .nav-dd-sub{margin:0;padding:0;border-top:none}
  .nav-dd-label{padding:14px 0 14px 16px;border-bottom:1px solid var(--bd)}
  .nav-dd-sub-child{padding-left:32px!important}
  .nav-dd-sub-child::before{left:18px}
  .nav-hamburger{display:block}
  .nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:98}
  .nav-overlay.open{display:block}
}
  /* brand + tagline agency sulla nav bianca */
  .nav-brandwrap{display:flex;align-items:center;gap:12px}
  .nav-tag{font-family:var(--font-display);font-size:.72rem;font-weight:500;letter-spacing:.01em;color:var(--txM);white-space:nowrap;padding-left:12px;border-left:1px solid var(--bd);line-height:1.15}
  @media(max-width:560px){.nav-tag{display:none}}
  @media(min-width:961px) and (max-width:1100px){.nav-tag{display:none}}

  /* ---------- HERO ---------- */
  .hero{position:relative;color:var(--ink);padding:168px 0 104px;overflow:hidden;background:var(--bg)}
  .hero .wrap{position:relative;z-index:2}
  /* ---- ambient background (stessi effetti di index.html) ---- */
  .nh-amb{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
  .nh-grid{position:absolute;inset:0;
    background-image:linear-gradient(rgba(51,153,153,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(51,153,153,.05) 1px,transparent 1px);
    background-size:54px 54px;
    -webkit-mask-image:radial-gradient(ellipse 75% 65% at 62% 42%,#000 8%,transparent 72%);
    mask-image:radial-gradient(ellipse 75% 65% at 62% 42%,#000 8%,transparent 72%)}
  .nh-glow{position:absolute;top:-12%;right:-6%;width:660px;height:660px;border-radius:50%;
    background:radial-gradient(circle,var(--priGlow) 0%,rgba(51,153,153,.05) 42%,transparent 68%);
    filter:blur(8px);animation:nhBreathe 9s ease-in-out infinite;will-change:transform,opacity}
  .nh-glow2{top:auto;bottom:-18%;left:-10%;right:auto;width:520px;height:520px;
    background:radial-gradient(circle,rgba(143,240,221,.2) 0%,transparent 66%);animation-delay:-4s}
  @keyframes nhBreathe{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.08);opacity:1}}
  @media(prefers-reduced-motion:reduce){.nh-glow{animation:none!important}}
  .hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .hero h1{font-size:clamp(2.4rem,5vw,3.9rem);margin:22px 0 22px;letter-spacing:-.03em}
  .hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--priD) 0%,var(--pri) 25%,#e8c547 50%,var(--pri) 75%,var(--priD) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
  .hero .lead{color:var(--grey);font-size:clamp(1.05rem,1.6vw,1.2rem);max-width:50ch}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
  .hero-meta{display:flex;gap:30px;flex-wrap:wrap;margin-top:44px;padding-top:26px;
    border-top:1px solid var(--line)}
  .hero-meta div{font-family:var(--font-mono)}
  .hero-meta b{display:block;font-size:1.45rem;color:var(--ink);font-weight:600;letter-spacing:-.02em}
  .hero-meta span{font-size:.72rem;color:var(--teal);letter-spacing:.08em;text-transform:uppercase}

  /* ---------- GAUGE (signature) ---------- */
  .gauge-wrap{display:flex;justify-content:center;align-items:center}
  .gauge{width:min(500px,100%);height:auto;filter:drop-shadow(0 22px 64px rgba(143,240,221,.16))}
  .g-track{stroke:rgba(255,255,255,.07)}
  .g-tick-minor line{stroke:rgba(255,255,255,.16);stroke-width:1.5}
  .g-tick-major line{stroke:rgba(143,240,221,.5);stroke-width:2.5}
  .g-seg{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);
    animation:gdraw 1.15s cubic-bezier(.4,.05,.2,1) forwards}
  .g-needle{transform-origin:300px 320px;transform:rotate(-90deg);
    animation:gneedle 1.9s cubic-bezier(.34,.12,.2,1) .5s forwards}
  .g-zone{font-family:var(--font-mono);font-size:14px;letter-spacing:.16em;
    fill:rgba(255,255,255,.4);opacity:0;animation:gfade .6s ease 1.5s forwards}
  .g-read{font-family:var(--font-display);font-weight:700;font-size:54px;fill:#fff;
    letter-spacing:-.02em;opacity:0;animation:gfade .6s ease 1.5s forwards}
  .g-cap{font-family:var(--font-mono);font-size:14px;letter-spacing:.16em;fill:var(--mint);
    opacity:0;animation:gfade .6s ease 1.7s forwards}
  @keyframes gdraw{to{stroke-dashoffset:0}}
  @keyframes gneedle{0%{transform:rotate(-90deg)}72%{transform:rotate(var(--over))}100%{transform:rotate(var(--settle))}}
  @keyframes gfade{to{opacity:1}}

  /* ---------- DASHBOARD (hero panel) ---------- */
  .dash{color:#fff;background:linear-gradient(160deg,rgba(21,54,54,.88),rgba(8,29,29,.9));
    border:1px solid rgba(143,240,221,.18);border-radius:22px;padding:24px 24px 26px;
    box-shadow:0 34px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(143,240,221,.08);
    -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:100%;max-width:540px}
  .dash-head{display:flex;justify-content:space-between;align-items:center}
  .dash-title{font-family:var(--font-display);font-weight:600;font-size:.98rem;color:#fff}
  .dash-live{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;color:var(--mint);
    display:inline-flex;align-items:center;gap:7px}
  .dash-live i{width:7px;height:7px;border-radius:50%;background:var(--mint);animation:pulse 2.2s infinite}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(143,240,221,.5)}70%{box-shadow:0 0 0 8px rgba(143,240,221,0)}100%{box-shadow:0 0 0 0 rgba(143,240,221,0)}}
  .dash-gauge{margin:-4px 0 0}
  .dash-gauge .gauge{width:100%;filter:drop-shadow(0 14px 38px rgba(143,240,221,.14))}
  .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:2px}
  .kpi{background:rgba(143,240,221,.05);border:1px solid rgba(143,240,221,.14);border-radius:12px;padding:11px 11px}
  .kpi-l{display:block;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;color:rgba(255,255,255,.5)}
  .kpi-v{display:block;font-family:var(--font-mono);font-weight:600;font-size:1.12rem;color:#fff;margin-top:4px;letter-spacing:-.01em}
  .kpi-d{display:block;font-family:var(--font-mono);font-size:.62rem;color:var(--mint);margin-top:3px}
  .dash-div{height:1px;background:rgba(143,240,221,.12);margin:20px 0 15px}
  .bars-head{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.68rem;
    color:rgba(255,255,255,.55);margin-bottom:12px}
  .bars-head .bars-tag{color:var(--mint)}
  .bars{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:end}
  .bar{display:flex;flex-direction:column;align-items:center;gap:9px}
  .bar-track{width:100%;height:118px;display:flex;align-items:flex-end;justify-content:center}
  .bar-fill{width:100%;max-width:44px;height:var(--h);border-radius:7px 7px 3px 3px;
    background:linear-gradient(180deg,var(--teal),var(--teal-deep));
    transform:scaleY(0);transform-origin:bottom;animation:grow 1s cubic-bezier(.3,.9,.25,1) forwards}
  .bar.hot .bar-fill{background:linear-gradient(180deg,var(--mint),#5FD9C4);
    box-shadow:0 0 24px rgba(143,240,221,.28)}
  .bar-x{font-family:var(--font-mono);font-size:.64rem;color:rgba(255,255,255,.45)}
  @keyframes grow{to{transform:scaleY(1)}}


  /* ---------- HERO TABS (switcher) ---------- */
  .hero-top{margin-bottom:40px}
  .hero-tabs{display:inline-flex;gap:6px;margin-top:0;padding:6px;max-width:100%;
    background:var(--bgSoft);border:1px solid var(--line);border-radius:999px}
  .hero-tab{position:relative;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;
    font-family:var(--font-display);font-weight:600;font-size:.95rem;color:var(--txM);
    background:transparent;border:0;cursor:pointer;padding:11px 20px;border-radius:999px;
    transition:color .2s ease,background .2s ease;overflow:hidden}
  .hero-tab:hover{color:var(--ink)}
  .hero-tab.is-active{color:#fff;background:var(--pri)}
  .hero-tab .ht-ic{display:inline-flex}
  .hero-tab .ht-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
  .hero-tab .ht-prog{position:absolute;left:0;bottom:0;height:2px;width:0;background:#fff;opacity:.55}
  .hero-tab:focus-visible{outline:2.5px solid var(--mint);outline-offset:3px}

  /* ---------- HERO SLIDES (stacked, crossfade) ---------- */
  .hero-slides{display:grid}
  .hero-slide{grid-area:1/1;opacity:0;visibility:hidden;pointer-events:none}
  .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;
    transition:opacity .45s ease}
  .hero-h{font-size:clamp(2.4rem,5vw,3.9rem);margin:0 0 22px;letter-spacing:-.03em;
    line-height:1.08;font-weight:700}
  .hero-h em{font-style:normal;background:linear-gradient(90deg,var(--priD) 0%,var(--pri) 25%,#e8c547 50%,var(--pri) 75%,var(--priD) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
  @keyframes shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
  .hero-copy{max-width:none}

  /* ---------- HERO DEVICE: Neura chat ---------- */
  .hv-chat{display:flex;flex-direction:column;gap:11px;margin-top:2px}
  .hv-msg{max-width:92%;padding:12px 15px;border-radius:15px;font-size:.9rem;line-height:1.5}
  .hv-msg .who{display:block;font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;
    text-transform:uppercase;margin-bottom:5px}
  .hv-msg.user{align-self:flex-end;background:rgba(143,240,221,.08);border:1px solid rgba(143,240,221,.16);
    color:rgba(255,255,255,.92);border-bottom-right-radius:5px}
  .hv-msg.user .who{color:var(--mint)}
  .hv-msg.ai{align-self:flex-start;background:linear-gradient(150deg,var(--teal),var(--teal-deep));
    color:#fff;border-bottom-left-radius:5px}
  .hv-msg.ai .who{color:var(--mint)}
  /* I 4 messaggi (2 domande + 2 risposte) si compongono in sequenza. Stato
     base visibile: senza JS o con reduced-motion (animation:none) restano tutti
     mostrati. Il clone del .hero-visual allo switch di tab riavvia la sequenza. */
  .hv-msg{opacity:1;animation:hvMsgIn .5s cubic-bezier(.3,.9,.25,1) both}
  .hv-msg:nth-child(1){animation-delay:.2s}
  .hv-msg:nth-child(2){animation-delay:1s}
  .hv-msg:nth-child(3){animation-delay:1.9s}
  .hv-msg:nth-child(4){animation-delay:2.7s}
  @keyframes hvMsgIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}

  /* ---------- HERO DEVICE: Learning checklist ---------- */
  .hv-check{display:flex;flex-direction:column;margin-top:2px}
  .hv-crow{display:flex;align-items:center;gap:12px;padding:12px 0;
    border-bottom:1px solid rgba(143,240,221,.12)}
  .hv-crow:last-child{border-bottom:0}
  .hv-cbox{flex:0 0 22px;height:22px;border-radius:7px;display:grid;place-items:center;
    border:1px solid rgba(143,240,221,.28)}
  .hv-cbox svg{width:13px;height:13px;fill:none;stroke-width:2.2}
  .hv-crow.done .hv-cbox{background:rgba(143,240,221,.16);border-color:var(--mint)}
  .hv-crow.done .hv-cbox svg{stroke:var(--mint)}
  .hv-crow .lbl{font-size:.92rem;color:#fff}
  .hv-crow.todo .lbl{color:rgba(255,255,255,.5)}
  .hv-prog{margin-top:18px}
  .hv-prog-head{display:flex;justify-content:space-between;font-family:var(--font-mono);
    font-size:.68rem;color:rgba(255,255,255,.6);margin-bottom:9px}
  .hv-prog-tag{color:var(--mint)}
  .hv-bar{height:6px;border-radius:3px;background:rgba(143,240,221,.14);overflow:hidden}
  .hv-bar i{display:block;height:100%;border-radius:3px;width:var(--w);transform-origin:left;
    background:linear-gradient(90deg,var(--teal),var(--mint));
    animation:pvgrow 1.05s cubic-bezier(.3,.9,.25,1) forwards}
  @keyframes pvgrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}

  /* ---------- HERO DEVICE: shared footer ---------- */
  .hv-foot{display:flex;align-items:center;gap:9px;margin-top:20px;padding-top:16px;
    border-top:1px solid rgba(143,240,221,.14);font-family:var(--font-mono);
    font-size:.7rem;letter-spacing:.02em;color:rgba(255,255,255,.55)}
  .hv-foot svg{width:14px;height:14px;fill:none;stroke:var(--mint);stroke-width:1.8;flex:0 0 auto}

  /* ---------- HERO DEVICE: Contify growth (panoramica) ---------- */
  .hv-grow{position:relative;margin-top:2px}
  .hv-curve{width:100%;height:auto;display:block;overflow:visible;margin-top:4px}
  .hv-area{fill:url(#hvGrad);opacity:0;animation:hvFade .8s ease .2s forwards}
  .hv-line{fill:none;stroke:var(--mint);stroke-width:2.5;stroke-linecap:round;
    stroke-dasharray:100;stroke-dashoffset:100;animation:hvDraw 1.4s cubic-bezier(.4,.05,.2,1) forwards}
  @keyframes hvDraw{to{stroke-dashoffset:0}}
  .hv-dot{fill:var(--mint);filter:drop-shadow(0 0 8px rgba(143,240,221,.75));
    opacity:0;animation:hvFade .5s ease 1.2s forwards}
  @keyframes hvFade{to{opacity:1}}
  .hv-badge{position:absolute;top:0;right:0;display:inline-flex;align-items:center;gap:6px;
    font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.03em;
    color:var(--navy);background:var(--mint);padding:6px 12px;border-radius:999px;
    box-shadow:0 10px 26px rgba(143,240,221,.3);
    opacity:0;transform:translateY(-6px);animation:hvBadge .5s ease 1.3s forwards}
  @keyframes hvBadge{to{opacity:1;transform:none}}
  .hv-drivers{display:flex;flex-direction:column;margin-top:16px}
  .hv-drv{display:flex;align-items:center;gap:12px;padding:11px 0;
    border-bottom:1px solid rgba(143,240,221,.12);font-size:.9rem;color:#fff}
  .hv-drv:last-child{border-bottom:0}
  .hv-di{flex:0 0 30px;height:30px;border-radius:9px;display:grid;place-items:center;
    background:rgba(143,240,221,.11);border:1px solid rgba(143,240,221,.24)}
  .hv-di svg{width:16px;height:16px;fill:none;stroke:var(--mint);stroke-width:1.8}

  /* ---------- SECTION BASE ---------- */
  .sec{padding:100px 0}
  .sec-light{background:var(--light)}
  .sec-navy{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff}
  .sec-head{max-width:60ch}
  .sec-head h2{font-size:clamp(1.9rem,3.4vw,2.6rem);margin:18px 0}
  .sec-navy .sec-head h2{color:#fff}
  .reveal{opacity:1;transform:none}
  html.has-anim .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}
  html.has-anim .reveal.in{opacity:1;transform:none}
  html.all-visible .reveal{opacity:1!important;transform:none!important;transition:none!important}

  /* ---------- PRODUCTS ---------- */
  .prod-list{display:flex;flex-direction:column;gap:26px;margin-top:54px}
  .prod{border-radius:26px;padding:52px;position:relative;overflow:hidden}
  .prod.dark{background:linear-gradient(155deg,var(--navy),var(--navy-2));color:#fff;
    box-shadow:0 26px 70px rgba(14,42,42,.24)}
  .prod.dark::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(620px 340px at 90% -12%,rgba(51,153,153,.26),transparent 62%)}
  .prod.light{background:var(--paper);border:1px solid var(--line-soft);color:var(--ink);
    box-shadow:0 18px 50px rgba(14,42,42,.08)}
  .prod-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:46px;align-items:center}
  .prod.rev .prod-main{order:2}
  .prod-mark{height:30px;margin-bottom:18px}
  .prod-name{font-family:var(--font-display);font-weight:700;
    font-size:clamp(1.7rem,3.1vw,2.35rem);letter-spacing:-.02em;margin:12px 0 14px}
  .prod-name em{font-style:normal;background:linear-gradient(90deg,var(--priD) 0%,var(--pri) 25%,#e8c547 50%,var(--pri) 75%,var(--priD) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
  .prod.dark .prod-name{color:#fff}
  .prod.dark .prod-name em{color:var(--mint)}
  .prod-desc{font-size:1.05rem;line-height:1.62;max-width:52ch}
  .prod.dark .prod-desc{color:rgba(255,255,255,.76)}
  .prod.light .prod-desc{color:var(--grey)}
  .prod-cta{margin-top:28px}
  .badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);
    font-size:.72rem;font-weight:600;letter-spacing:.08em;padding:7px 13px;border-radius:999px;margin-bottom:4px}
  .prod.dark .badge{background:rgba(143,240,221,.12);border:1px solid rgba(143,240,221,.3);color:var(--mint)}
  .prod.light .badge{background:var(--light);border:1px solid var(--line);color:var(--teal-deep)}
  .badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}
  .chips{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 4px}
  .chip{font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--mint);
    background:rgba(143,240,221,.09);border:1px solid rgba(143,240,221,.24);padding:7px 12px;border-radius:8px}
  .prod.light .chip{color:var(--teal-deep);background:var(--light);border-color:var(--line)}
  .page-hero-light .chip{color:var(--teal-deep);background:var(--light);border-color:var(--bd)}

  .prod-panel{display:flex;flex-direction:column}
  .ppt{display:flex;gap:15px;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.1)}
  .prod.light .ppt{border-color:var(--line-soft)}
  .ppt:last-child{border-bottom:0;padding-bottom:0}
  .ppt:first-child{padding-top:0}
  .ppt-ic{flex:0 0 42px;height:42px;border-radius:12px;display:grid;place-items:center}
  .prod.dark .ppt-ic{background:rgba(143,240,221,.11);border:1px solid rgba(143,240,221,.24)}
  .prod.light .ppt-ic{background:var(--light)}
  .ppt-ic svg{width:20px;height:20px;fill:none;stroke-width:1.8}
  .prod.dark .ppt-ic svg{stroke:var(--mint)}
  .prod.light .ppt-ic svg{stroke:var(--teal)}
  .ppt h4{font-size:1rem;font-weight:600;margin-bottom:2px}
  .prod.dark .ppt h4{color:#fff}
  .ppt p{font-size:.9rem;line-height:1.45}
  .prod.dark .ppt p{color:rgba(255,255,255,.62)}
  .prod.light .ppt p{color:var(--grey)}

  /* ---------- ARGO MANAGER (signature accent = Argo brand blue) ---------- */
  .eyebrow.argo{color:var(--argo-deep)}
  .eyebrow.argo::before{background:var(--argo-deep)}
  .argo-em{font-style:normal;color:var(--argo-deep)}
  .prod.argo{background:linear-gradient(155deg,var(--navy),var(--navy-2));color:#fff;
    box-shadow:0 26px 70px rgba(14,42,42,.26)}
  .prod.argo::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(620px 340px at 90% -12%,var(--argo-glow),transparent 62%)}
  .prod.argo .prod-name{color:#fff}
  .prod.argo .prod-name em{font-style:normal;background:linear-gradient(90deg,var(--argo-deep) 0%,var(--argo) 25%,#a9ccff 50%,var(--argo) 75%,var(--argo-deep) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
  .prod.argo .prod-desc{color:rgba(255,255,255,.78)}
  .prod.argo .badge{color:var(--argo);
    background:color-mix(in srgb,var(--argo) 15%,transparent);
    border:1px solid color-mix(in srgb,var(--argo) 38%,transparent)}
  .prod.argo .chip{color:var(--argo);
    background:color-mix(in srgb,var(--argo) 11%,transparent);
    border:1px solid color-mix(in srgb,var(--argo) 30%,transparent)}
  .prod.argo .ppt{border-bottom:1px solid rgba(255,255,255,.1)}
  .prod.argo .ppt-ic{background:color-mix(in srgb,var(--argo) 14%,transparent);
    border:1px solid color-mix(in srgb,var(--argo) 30%,transparent)}
  .prod.argo .ppt-ic svg{stroke:var(--argo)}
  .prod.argo .ppt h4{color:#fff}
  .prod.argo .ppt p{color:rgba(255,255,255,.64)}
  .btn-argo{background:var(--argo-deep);color:#fff}
  .btn-argo:hover{background:color-mix(in srgb,var(--argo-deep) 84%,#fff)}

  /* ---------- OUTSOURCING CONTABILITÀ & PAGHE (signature accent = arancione outsourcingpaghe.it) ---------- */
  .eyebrow.osp{color:var(--osp)}
  .eyebrow.osp::before{background:var(--osp)}
  .osp-em{font-style:normal;color:var(--osp)}
  .prod.osp{background:linear-gradient(155deg,var(--osp-navy),var(--osp-navy-2));color:#fff;
    box-shadow:0 26px 70px rgba(3,16,43,.34)}
  .prod.osp::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(620px 340px at 90% -12%,var(--osp-glow),transparent 62%)}
  .prod.osp .prod-name{color:#fff}
  .prod.osp .prod-name em{font-style:normal;background:linear-gradient(90deg,var(--osp-deep) 0%,var(--osp) 25%,var(--osp-lime) 50%,var(--osp) 75%,var(--osp-deep) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
  .prod.osp .prod-desc{color:rgba(255,255,255,.78)}
  .prod.osp .badge{color:var(--osp);
    background:color-mix(in srgb,var(--osp) 15%,transparent);
    border:1px solid color-mix(in srgb,var(--osp) 38%,transparent)}
  .prod.osp .chip{color:var(--osp);
    background:color-mix(in srgb,var(--osp) 11%,transparent);
    border:1px solid color-mix(in srgb,var(--osp) 30%,transparent)}
  .prod.osp .ppt{border-bottom:1px solid rgba(255,255,255,.1)}
  .prod.osp .ppt-ic{background:color-mix(in srgb,var(--osp) 14%,transparent);
    border:1px solid color-mix(in srgb,var(--osp) 30%,transparent)}
  .prod.osp .ppt-ic svg{stroke:var(--osp)}
  .prod.osp .ppt h4{color:#fff}
  .prod.osp .ppt p{color:rgba(255,255,255,.64)}
  .btn-osp{background:var(--osp);color:#0A1020;font-weight:700}
  .btn-osp:hover{background:var(--osp-deep);color:#0A1020;transform:translateY(-2px)}

  /* ---------- NEURA STUDIO (signature accent = spettro Neura) ---------- */
  .eyebrow.neura{color:var(--neura-teal)}
  .eyebrow.neura::before{background:var(--neura-teal)}
  .prod.neura{background:linear-gradient(160deg,var(--neura-ink),var(--neura-ink-2));color:#fff;
    box-shadow:0 26px 70px rgba(11,15,23,.34)}
  .prod.neura::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(700px 400px at 88% -16%,var(--neura-glow),transparent 60%)}
  .prod.neura .prod-name{color:#fff}
  .prod.neura .prod-name em{font-style:normal;background:linear-gradient(115deg,var(--neura-violet) 0%,var(--neura-blue) 38%,var(--neura-cyan) 70%,var(--neura-teal) 100%);background-size:220% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3.6s linear infinite}
  .prod.neura .prod-desc{color:rgba(233,238,247,.80)}
  .prod.neura .ppt{border-bottom:1px solid rgba(255,255,255,.09)}
  .prod.neura .ppt-ic{background:color-mix(in srgb,var(--neura-sky) 15%,transparent);
    border:1px solid color-mix(in srgb,var(--neura-sky) 32%,transparent)}
  .prod.neura .ppt-ic svg{stroke:var(--neura-teal)}
  .prod.neura .ppt h4{color:#fff}
  .prod.neura .ppt p{color:rgba(233,238,247,.62)}
  .btn-neura{background:linear-gradient(135deg,var(--neura-sky),var(--neura-teal));color:#04131b;font-weight:700;box-shadow:0 6px 22px rgba(14,165,233,.28)}
  .btn-neura:hover{transform:translateY(-3px);box-shadow:0 12px 34px rgba(14,165,233,.36);filter:brightness(1.04)}
  .neura-sum{position:relative;z-index:1;margin-top:36px;padding:22px 26px;border-radius:16px;
    background:color-mix(in srgb,var(--neura-sky) 9%,transparent);
    border:1px solid color-mix(in srgb,var(--neura-teal) 26%,transparent)}
  .neura-sum strong{display:block;color:#fff;font-weight:700;font-size:clamp(1.02rem,1.6vw,1.16rem);letter-spacing:-.01em;line-height:1.35}
  .neura-sum .flow{margin-top:9px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.02em;color:var(--neura-teal);line-height:1.6}

  /* ---------- SECONDARY CARDS ---------- */
  .more-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:46px}
  .mcard{background:var(--paper);border:1px solid var(--line-soft);border-radius:18px;padding:32px;
    display:flex;gap:20px;align-items:flex-start;
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
  .mcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(14,42,42,.10);border-color:var(--teal)}
  .mcard-ic{flex:0 0 52px;height:52px;border-radius:14px;background:var(--light);display:grid;place-items:center}
  .mcard-ic svg{width:26px;height:26px;stroke:var(--teal)}
  .mcard-body .tag{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
  .mcard-body h3{font-size:1.3rem;margin:6px 0 8px}
  .mcard-body p{color:var(--grey);font-size:.96rem;line-height:1.55}
  .mcard-body p em{font-style:normal;color:var(--teal-deep);font-weight:600}
  .mcard-body .more{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--teal);
    margin-top:14px;display:inline-flex;align-items:center;gap:6px}
  .mcard-body .more .arw{transition:transform .2s}.mcard:hover .more .arw{transform:translateX(4px)}

  /* ---------- APPROACH ---------- */
  .appr-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .appr h2{font-size:clamp(1.9rem,3.4vw,2.5rem);margin:18px 0 20px}
  .appr h2 em{font-style:normal;color:var(--mint)}
  .appr .lead{color:rgba(255,255,255,.74)}
  .stat-strip{display:flex;flex-direction:column}
  .stat{display:flex;align-items:baseline;justify-content:space-between;gap:20px;
    padding:22px 0;border-bottom:1px solid rgba(143,240,221,.16)}
  .stat:first-child{border-top:1px solid rgba(143,240,221,.16)}
  .stat b{font-family:var(--font-mono);font-size:clamp(1.4rem,2.6vw,1.9rem);
    font-weight:600;color:var(--mint);letter-spacing:-.01em}
  .stat span{font-size:.98rem;color:rgba(255,255,255,.7);text-align:right;max-width:26ch}

  /* ── Manifesto AI (4 baluardi) — vocabolario dark riusato da .prod.dark ── */
  .appr-intro{max-width:72ch}
  .appr-intro h2{font-size:clamp(1.9rem,3.4vw,2.5rem);margin:18px 0 20px}
  .appr-intro .lead{max-width:66ch}
  .tenets{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;margin-top:52px}
  .tenet{background:rgba(255,255,255,.035);border:1px solid rgba(143,240,221,.16);
    border-radius:var(--radius);padding:26px 24px 28px;transition:.25s ease}
  .tenet:hover{transform:translateY(-4px);border-color:rgba(143,240,221,.4);
    background:rgba(255,255,255,.06)}
  .tenet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
  .tenet-n{font-family:var(--font-mono);font-weight:600;font-size:1.9rem;
    letter-spacing:-.02em;color:var(--mint);line-height:1}
  .tenet-ic{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;
    border-radius:10px;background:rgba(143,240,221,.10);border:1px solid rgba(143,240,221,.22)}
  .tenet-ic svg{width:20px;height:20px;stroke:var(--mint)}
  .tenet h3{font-size:1.12rem;color:#fff;margin-bottom:8px;letter-spacing:-.01em}
  .tenet p{font-size:.94rem;color:rgba(255,255,255,.7);line-height:1.6}
  .appr-sign{margin-top:36px;font-size:1.02rem;color:rgba(255,255,255,.62);max-width:62ch}
  .appr-sign em{font-style:normal;color:var(--mint)}

  /* ---------- INSIGHTS ---------- */
  .grid-ins{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
  .post{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--r);
    padding:30px;display:flex;flex-direction:column;gap:14px;min-height:230px;
    transition:transform .22s,box-shadow .22s,border-color .22s}
  .post:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(14,42,42,.10);border-color:var(--teal)}
  .post .tag{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal)}
  .post h3{font-size:1.16rem;line-height:1.28}
  .post .more{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--teal);
    margin-top:auto;display:inline-flex;align-items:center;gap:6px}
  .post .more .arw{transition:transform .2s}.post:hover .more .arw{transform:translateX(4px)}
  .post.cta-post{background:linear-gradient(160deg,var(--teal),var(--teal-deep));color:#fff;justify-content:center;align-items:flex-start}
  .post.cta-post h3,.post.cta-post .more{color:#fff}

  /* ---------- CONTACT ---------- */
  .contact{text-align:center;position:relative;overflow:hidden}
  .contact::before{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(700px 400px at 50% 120%,rgba(51,153,153,.28),transparent 60%)}
  .contact-in{position:relative;max-width:640px;margin:0 auto}
  .contact h2{font-size:clamp(2rem,4vw,2.9rem);margin:18px 0 18px;color:#fff}
  .contact h2 em{font-style:normal;color:var(--mint)}
  .contact .lead{color:rgba(255,255,255,.76);margin:0 auto 34px}
  .contact-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  .contact .addr{font-family:var(--font-mono);font-size:.82rem;color:rgba(255,255,255,.5);margin-top:40px;letter-spacing:.03em}

  /* ---------- FOOTER (sistema landing AB) ---------- */
.footer{background:var(--navy);color:#eef7f5;font-family:'DM Sans',sans-serif;font-size:15px;padding:64px 0 28px;border-top:1px solid rgba(143,240,221,.14)}
.footer-inner{max-width:1140px;margin:0 auto;padding:0 24px}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1.2fr .8fr;gap:44px;padding-bottom:40px;border-bottom:1px solid rgba(143,240,221,.12)}
.footer-brand img{height:42px;width:auto;display:block;margin-bottom:18px}
.footer-brand p{color:#b7d0cc;font-size:.92rem;line-height:1.65;max-width:340px;margin:0}
.footer-contact{margin-top:18px;display:flex;flex-direction:column;gap:6px;color:#b7d0cc;font-size:.9rem}
.footer-contact .fc-name{color:#eef7f5;font-weight:700}
.footer-contact a{color:#8FF0DD;text-decoration:none;transition:color .2s}
.footer-contact a:hover{color:#fff;text-decoration:underline}
.footer-col h4{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8FF0DD;margin-bottom:16px}
.footer-social{display:flex;gap:14px;align-items:center}
.footer-social a{color:#8FF0DD;display:inline-flex;transition:color .2s,transform .2s}
.footer-social a:hover{color:#fff;transform:translateY(-2px)}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.footer-col a{color:#cfe5e1;text-decoration:none;font-size:.92rem;transition:color .2s}
.footer-col a:hover{color:#fff}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;color:#8aa8a3;font-size:.82rem}
.footer-bottom a{color:#8aa8a3;text-decoration:none;transition:color .2s}
.footer-bottom a:hover{color:#fff}
.footer-bottom .sep{opacity:.4;margin:0 4px}
  @media(max-width:768px){
    .footer{padding:48px 0 24px}
    .footer-top{grid-template-columns:1fr;gap:32px;padding-bottom:32px}
    .footer-brand p{max-width:none}
    .footer-bottom{justify-content:flex-start}
  }

  /* ---------- RESPONSIVE ---------- */
  @media(max-width:900px){
    .hero-grid,.appr-grid{grid-template-columns:1fr;gap:40px}
    .gauge-wrap{order:-1}.gauge{width:100%}
    .hero-tabs{overflow-x:auto;padding:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
    .hero-tabs::-webkit-scrollbar{display:none}
    .hero-tab{flex:0 0 auto;font-size:.9rem;padding:10px 15px;gap:7px}
    .hero-visual{width:100%}
    .dash{margin:0 auto}
    .prod-grid{grid-template-columns:1fr;gap:36px}
    .prod.rev .prod-main{order:0}
    .prod{padding:36px 26px}
    .grid-ins{grid-template-columns:1fr}
    .more-list{grid-template-columns:1fr}
    .sec{padding:74px 0}.hero{padding:132px 0 78px}
  }
  @media(max-width:520px){
    .wrap{padding:0 20px}.hero-meta{gap:22px}.hdr-tag{display:none}
    .hero-cta .btn,.contact-cta .btn{flex:1 1 auto;justify-content:center}
    .kpis{grid-template-columns:repeat(2,1fr)}
    .dash{padding:20px}
  }
  @media(prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
    html.has-anim .reveal{opacity:1!important;transform:none!important}
    .g-seg{stroke-dashoffset:0}
    .g-needle{transform:rotate(var(--settle))}
    .g-zone,.g-read,.g-cap{opacity:1}
    .bar-fill{transform:scaleY(1)}
    .dash-live i{animation:none}
  }

  /* ── Testo accento display: gradiente teal→oro identico alla hero (index) ──
     Applicato solo al testo "grande" (em dei titoli sezione + valori .stat),
     esattamente come la hero usa il gradiente sul suo <em>. Le micro-label
     mono restano mint, come nella hero stessa (.dash-live, .kpi-d, .who…).
     Il color:var(--mint) dei selettori base resta come fallback non-webkit. */
  .prod.dark .prod-name em,
  .appr h2 em,
  .contact h2 em,
  .stat b,
  .tenet-n{
    background:linear-gradient(90deg,var(--priD) 0%,var(--pri) 25%,#e8c547 50%,var(--pri) 75%,var(--priD) 100%);
    background-size:200% 100%;
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
    animation:shimmer 3s linear infinite;
  }

  /* ---------- CONTACT: card in stile "scheda Contify AB" su sfondo chiaro ---------- */
  /* fondale col marchio a ciambella segmentato (dal logo), ingrandito e sfumato */
  .contact-amb{position:relative;overflow:hidden;
    background:linear-gradient(180deg,#EFF7F5 0%,#E3F0EE 100%)}
  /* alone morbido dietro al marchio */
  .contact-amb::before{content:"";position:absolute;z-index:0;pointer-events:none;
    top:-230px;right:-210px;width:740px;height:740px;border-radius:50%;
    background:radial-gradient(circle,rgba(143,240,221,.24),transparent 60%);filter:blur(22px)}
  /* la ciambella del logo, grande e sfumata, che ruota lentissima */
  .contact-bg{position:absolute;z-index:0;pointer-events:none;
    top:-186px;right:-150px;width:720px;height:720px;opacity:.22;
    animation:donutSpin 90s linear infinite}
  .contact-bg svg{display:block;width:100%;height:100%}
  .contact-amb > .wrap{position:relative;z-index:1}
  @keyframes donutSpin{to{transform:rotate(360deg)}}
  @media (prefers-reduced-motion: reduce){
    .contact-bg{animation:none}
  }
  .prod-contact .prod-grid{align-items:start}

  /* recapiti (colonna sinistra) */
  .contact-info{list-style:none;margin:26px 0 8px;padding:0;display:flex;flex-direction:column;gap:15px}
  .contact-info li{display:flex;align-items:center;gap:13px}
  .ci-ic{flex:0 0 40px;height:40px;border-radius:11px;background:var(--light);display:grid;place-items:center}
  .ci-ic svg{width:18px;height:18px;fill:none;stroke:var(--teal);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ci-txt{display:flex;flex-direction:column;line-height:1.3}
  .ci-lb{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
  .ci-txt a,.ci-val{font-size:.98rem;color:var(--ink);font-weight:600;text-decoration:none}
  .ci-txt a:hover{color:var(--teal-deep)}

  /* form contatti — nel pannello destro della card */
  .cf{display:flex;flex-direction:column;gap:15px}
  .cf-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
  .cf-field{display:flex;flex-direction:column;gap:7px}
  .cf label{font-size:.82rem;font-weight:600;color:var(--ink);letter-spacing:.01em}
  .cf input,.cf select,.cf textarea{
    font-family:'DM Sans',sans-serif;font-size:.95rem;color:var(--ink);
    background:var(--bgSoft);border:1px solid var(--line);
    border-radius:10px;padding:12px 14px;width:100%;box-sizing:border-box;
    transition:border-color .18s,box-shadow .18s,background .18s;
  }
  .cf textarea{resize:vertical;min-height:110px}
  .cf input:focus,.cf select:focus,.cf textarea:focus{
    outline:none;background:#fff;border-color:var(--teal);box-shadow:0 0 0 3px var(--priGlow);
  }
  .cf input::placeholder,.cf textarea::placeholder{color:#9aa8a8}
  .cf select{
    appearance:none;-webkit-appearance:none;padding-right:40px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231A2A2A' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 14px center;
  }
  .cf-privacy{display:flex;align-items:flex-start;gap:10px;font-size:.84rem;color:var(--grey);line-height:1.5;cursor:pointer;margin-top:2px}
  .cf-privacy input{width:18px;height:18px;margin-top:1px;flex:0 0 auto;accent-color:var(--teal)}
  .cf-privacy a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
  .cf-privacy a:hover{color:var(--ink)}
  .cf-terms{font-size:.8rem;color:var(--grey);line-height:1.5;margin:10px 0 0}
  .cf-terms a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
  .cf-terms a:hover{color:var(--ink)}
  .cf-submit{
    align-self:flex-start;margin-top:6px;display:inline-flex;align-items:center;gap:9px;
    background:linear-gradient(135deg,var(--pri),var(--priD));color:#fff;border:none;border-radius:999px;
    padding:14px 30px;font-family:'DM Sans',sans-serif;font-size:.92rem;font-weight:700;
    cursor:pointer;box-shadow:0 4px 24px var(--priGlow);
    transition:transform .18s,filter .18s,box-shadow .18s;
  }
  .cf-submit:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 10px 30px var(--priGlow)}
  .cf-submit:focus-visible{outline:2.5px solid var(--teal);outline-offset:3px}
  .cf-submit:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none;filter:none}
  .cf-submit .arw{transition:transform .18s}
  .cf-submit:hover .arw{transform:translateX(3px)}
  .cf-status{margin:4px 0 0;font-size:.9rem;font-weight:600;min-height:1.2em}
  .cf-status.ok{color:#0a7a3a}
  .cf-status.err{color:#c02626}
  .cf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
  @media(max-width:600px){
    .cf-row{grid-template-columns:1fr}
  }
  /* patch11: contatori social-proof + prezzo promo */
  .hero-stats-intro{flex-basis:100%;width:100%;margin-bottom:4px}
  .lead-price{font-size:1.4em;font-weight:700;color:var(--teal-deep);white-space:nowrap;letter-spacing:-.01em}

/* ==========================================================================
   Helper pagine interne — ADDITIVO (non modifica il design system sopra).
   Serve a prodotti/blog/legali/chi-siamo/contatti mantenendo lo stesso look.
   ========================================================================== */
.page-hero{padding:clamp(118px,16vh,188px) 0 clamp(46px,7vh,82px)}
.page-hero h1{font-size:clamp(2.1rem,4.4vw,3.2rem);margin:16px 0 18px;letter-spacing:-.03em}
.page-hero-light h1 em{font-style:normal;background:linear-gradient(90deg,var(--priD) 0%,var(--pri) 25%,#e8c547 50%,var(--pri) 75%,var(--priD) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
.page-hero .lead{font-size:clamp(1.05rem,1.6vw,1.2rem);max-width:60ch}
.page-hero .hero-cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:14px}
.sec-navy.page-hero .lead{color:rgba(255,255,255,.76)}
.page-hero-light{background:var(--bg)}
/* Hero interne con artefatto grafico (stile hero home) */
.hero-art-sec{position:relative;overflow:hidden}
.hero-art-sec > .wrap{position:relative;z-index:1}
.page-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.page-hero-grid .sec-head{max-width:none}
.page-hero-art{display:flex;justify-content:center;align-items:center}
.page-hero-art img{width:auto;max-width:100%;height:auto;max-height:600px}
.pha-orb{position:relative;width:min(420px,100%);max-width:100%}
.pha-orb > svg{width:100%;height:auto;display:block;filter:drop-shadow(0 26px 60px rgba(14,42,42,.12))}
.pha-chip{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:8px;
  background:var(--paper);border:1px solid var(--bd);border-radius:999px;padding:9px 16px;
  font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.02em;color:var(--navy);
  box-shadow:0 12px 32px rgba(14,42,42,.12);white-space:nowrap}
.pha-chip .pha-ic{display:inline-flex;color:var(--teal-deep)}
.pha-chip .pha-ic svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:860px){
  .page-hero-grid{grid-template-columns:1fr;gap:36px}
  .page-hero-art{order:-1;max-width:340px;margin:0 auto}
}
@media(max-width:520px){ .page-hero-art{display:none} }
/* --- Artefatti hero: globo / calendario / giornale --- */
.art-wrap{position:relative;width:min(400px,100%);margin:0 auto;text-align:center}
.art-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 26px 56px rgba(14,42,42,.16))}
.art-chip{display:inline-flex;align-items:center;gap:8px;margin-top:16px;
  background:var(--paper);border:1px solid var(--bd);border-radius:999px;padding:9px 16px;
  font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.02em;color:var(--navy);
  box-shadow:0 12px 30px rgba(14,42,42,.10);white-space:nowrap}
.art-chip .pha-ic{display:inline-flex;color:var(--teal-deep)}
.art-chip .pha-ic svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.art-float{animation:artFloat 6.5s ease-in-out infinite}
@keyframes artFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.g-merid{fill:none;stroke:rgba(255,255,255,.45);stroke-width:1.1}
.g-m1{animation:gMerid 9s ease-in-out infinite}
.g-m2{animation:gMerid 9s ease-in-out infinite;animation-delay:-3s}
.g-m3{animation:gMerid 9s ease-in-out infinite;animation-delay:-6s}
@keyframes gMerid{0%,100%{rx:116px}50%{rx:6px}}
.art-pulse{transform-box:fill-box;transform-origin:center;animation:artPulse 2.6s ease-out infinite}
@keyframes artPulse{0%{opacity:.5;transform:scale(.5)}80%,100%{opacity:0;transform:scale(2.8)}}
.cal-day{transform-box:fill-box;transform-origin:center;animation:calPulse 2.2s ease-in-out infinite}
@keyframes calPulse{0%,100%{opacity:1}50%{opacity:.5}}
@media(prefers-reduced-motion:reduce){.art-float,.g-m1,.g-m2,.g-m3,.art-pulse,.cal-day{animation:none!important}}

/* breadcrumb */
.crumbs{font-family:var(--font-mono);font-size:.76rem;color:var(--grey);display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}
.crumbs a{color:var(--grey);text-decoration:none;border-bottom:1px solid transparent}
.crumbs a:hover{color:var(--teal-deep);border-color:var(--teal-deep)}
.crumbs .sep{opacity:.5}
.sec-navy .crumbs,.sec-navy .crumbs a{color:rgba(255,255,255,.62)}
.sec-navy .crumbs a:hover{color:#fff;border-color:#fff}

/* prose (testi lunghi: legali, articoli) */
.prose{max-width:72ch;color:var(--ink);font-size:1.06rem;line-height:1.72}
.prose h2{font-size:clamp(1.5rem,2.6vw,1.9rem);margin:44px 0 14px;color:var(--navy)}
.prose h3{font-size:1.2rem;margin:30px 0 10px;color:var(--navy)}
.prose p{margin:0 0 18px}
.prose ul,.prose ol{margin:0 0 18px;padding-left:1.3em}
.prose li{margin:6px 0}
.prose a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:2px}
.prose strong{color:var(--navy)}
.prose hr{border:none;border-top:1px solid var(--line);margin:34px 0}
.prose table{width:100%;border-collapse:collapse;margin:8px 0 22px;font-size:.98rem}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line-soft)}
.prose th{font-family:var(--font-mono);font-size:.8rem;color:var(--teal-deep);background:var(--light)}
.prose .muted{color:var(--grey);font-size:.95rem}
/* Prose dentro sezioni navy: testo leggibile su fondo scuro */
.sec-navy .prose{color:rgba(255,255,255,.82)}
.sec-navy .prose h2,.sec-navy .prose h3,.sec-navy .prose strong{color:#fff}
.sec-navy .prose a{color:var(--mint)}

/* griglia card 3 colonne */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.cards2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:8px}
@media(max-width:860px){.cards3,.cards2{grid-template-columns:1fr}}

/* feature card semplice */
.fcard{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--r);padding:26px}
.fcard h3{font-size:1.08rem;margin:12px 0 8px;color:var(--navy)}
.fcard p{color:var(--grey);font-size:.98rem;margin:0;line-height:1.6}
.fcard .fic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--light);color:var(--teal-deep)}
.fcard .fic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* FAQ (details/summary, nessun JS) */
.faq details{border-bottom:1px solid var(--line-soft);padding:16px 2px}
.faq summary{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--teal);font-weight:400;font-size:1.5rem;line-height:1}
.faq details[open] summary::after{content:'\2013'}
.faq p{color:var(--grey);margin:12px 0 0;line-height:1.66}

/* blog: card articolo */
.post-card{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s,border-color .18s}
.post-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(14,42,42,.10);border-color:var(--line)}
.post-card .pc-tag{font-family:var(--font-mono);font-size:.72rem;color:var(--teal-deep);text-transform:uppercase;letter-spacing:.06em}
.post-card h3{font-size:1.16rem;margin:0;color:var(--navy)}
.post-card p{color:var(--grey);font-size:.96rem;margin:0}
.post-card .pc-more{color:var(--teal-deep);font-weight:600;font-size:.92rem;margin-top:auto}
.post-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--grey);display:flex;gap:10px;flex-wrap:wrap;margin:2px 0 0}
.post-card p a{color:var(--teal-deep);font-weight:600;text-decoration:underline;text-underline-offset:2px}
/* --- Trasparenza AI (AI Act art. 50 par. 4): badge nell'hero + nota a fine articolo --- */
.ai-badge{display:inline-flex;align-items:center;gap:7px;margin-top:12px;
  font-family:var(--font-mono);font-size:.72rem;letter-spacing:.02em;color:var(--teal-deep);
  background:var(--light);border:1px solid var(--bd);border-radius:999px;padding:6px 12px 6px 10px}
.ai-badge svg{width:14px;height:14px;flex:none;fill:currentColor;stroke:none}
.ai-note{max-width:72ch;margin-top:34px;padding:18px 20px;border-radius:var(--radiusSm);
  background:var(--light);border:1px solid var(--line-soft);border-left:3px solid var(--teal)}
.ai-note p{margin:0;font-size:.92rem;line-height:1.65;color:var(--grey)}
.ai-note strong{color:var(--navy)}

.blog-back{margin-top:30px}
.blog-back a{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--teal-deep);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}
.blog-back a:hover{border-color:var(--teal-deep)}

/* banda CTA riutilizzabile */
.cta-band{background:linear-gradient(150deg,#0E2A2A,#081D1D);border-radius:26px;padding:clamp(34px,5vw,58px);text-align:center;color:#fff;position:relative;overflow:hidden}
.cta-band h2{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 12px}
.cta-band p{color:rgba(255,255,255,.78);max-width:58ch;margin:0 auto 24px}
.cta-band .hero-cta{justify-content:center}

/* utility spaziatura */
.mt-0{margin-top:0}.center{text-align:center}

/* Pricing — piani Neura Studio (stile neurastudio.pro) */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;margin-top:8px}
.plan{position:relative;display:flex;flex-direction:column;background:var(--bgCard);border:1px solid var(--bd);border-radius:18px;padding:34px 28px;transition:transform .2s,box-shadow .2s}
.plan:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(14,42,42,.10)}
.plan.featured{border-color:var(--pri);box-shadow:0 18px 50px rgba(51,153,153,.16)}
.plan-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--pri);color:#fff;font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.10em;text-transform:uppercase;padding:6px 15px;border-radius:999px;white-space:nowrap}
.plan-name{font-size:1.28rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.plan-price{margin:6px 0 2px;font-family:var(--font-mono);font-size:1.05rem;font-weight:600;color:var(--teal-deep)}
.plan-note{font-size:.82rem;color:var(--txM);margin-bottom:20px}
.plan-feats{list-style:none;margin:0 0 26px;padding:20px 0 0;border-top:1px solid var(--bd);display:flex;flex-direction:column;gap:12px}
.plan-feats li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem;line-height:1.45;color:var(--tx)}
.plan-feats svg{flex:0 0 18px;width:18px;height:18px;margin-top:2px;stroke:var(--pri);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.plan-feats li.plan-feats-more{font-weight:600;color:var(--teal-deep)}
.plan .btn{margin-top:auto;width:100%;justify-content:center}
.plan-price-lg{font-family:var(--font-mono);font-size:2.1rem;font-weight:700;color:var(--ink);line-height:1.05;margin:6px 0 2px}
.plan-price-lg .plan-per{font-size:.9rem;color:var(--txM);font-weight:500}
.plan-old{font-size:1rem;color:var(--txM);text-decoration:line-through;font-weight:500;margin-left:8px}
.plan-tag{display:inline-block;font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);background:var(--light);border-radius:999px;padding:5px 12px;margin-bottom:2px}
.plans-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1080px){.plans-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.plans{grid-template-columns:1fr;gap:30px}.plan.featured{order:-1}.plans-4{grid-template-columns:1fr}.plans-4 .plan.featured{order:0}}

/* Griglia moduli — pagina Contify AB */
.modgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px;margin-top:8px}
.modcard{background:var(--bgCard);border:1px solid var(--bd);border-radius:14px;padding:20px 20px 22px;transition:transform .18s,box-shadow .18s,border-color .18s}
.modcard:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(14,42,42,.08);border-color:var(--line)}
.modcard h3{font-size:1.02rem;margin:0 0 7px;color:var(--navy);letter-spacing:-.01em}
.modcard p{font-size:.9rem;line-height:1.5;color:var(--grey);margin:0}
.modcard .chip{margin-top:12px;color:var(--teal-deep);background:var(--light);border:1px solid var(--bd)}
/* Elenco formati/banche a pillole */
.taglist{display:flex;flex-wrap:wrap;gap:9px;margin-top:6px}
.taglist span{font-family:var(--font-mono);font-size:.76rem;color:var(--teal-deep);background:var(--bgCard);border:1px solid var(--bd);border-radius:8px;padding:7px 11px}
/* Passi "come funziona" */
.steps{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:14px;font-weight:600;color:var(--tx)}
.steps .stepn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--pri);color:#fff;font-family:var(--font-mono);font-size:.8rem;margin-right:8px}
.steps .arw{color:var(--txD)}

/* ==========================================================================
   Tema ARGO (blu #2563EB) — pagina Argo Manager, colori come argomanager.com.
   Scoped a .theme-argo: ricolora accenti teal → blu argo solo su questa pagina.
   ========================================================================== */
.theme-argo .eyebrow{color:var(--argo-deep)}
.theme-argo .eyebrow::before{background:var(--argo-deep)}
.theme-argo .page-hero-light h1 em{background:linear-gradient(90deg,var(--argo-deep) 0%,var(--argo) 25%,#a9ccff 50%,var(--argo) 75%,var(--argo-deep) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
.theme-argo .prod.light .prod-name em,.theme-argo .sec-head h2{background:linear-gradient(90deg,var(--argo-deep) 0%,var(--argo) 25%,#a9ccff 50%,var(--argo) 75%,var(--argo-deep) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
.theme-argo .sec-head h2 em{-webkit-text-fill-color:transparent}
.theme-argo .page-hero-light .chip,.theme-argo .prod.light .chip{color:var(--argo-deep);background:var(--argo-glow);border-color:color-mix(in srgb,var(--argo) 30%,transparent)}
.theme-argo .fcard .fic{background:var(--argo-glow);color:var(--argo-deep)}
.theme-argo .modcard .chip{color:var(--argo-deep);background:var(--argo-glow);border:1px solid color-mix(in srgb,var(--argo) 30%,transparent)}
.theme-argo .taglist span{color:var(--argo-deep)}
.theme-argo .steps .stepn{background:var(--argo-deep)}
.theme-argo .pc-tag,.theme-argo .pc-more{color:var(--argo-deep)}
.theme-argo .plan.featured{border-color:var(--argo-deep);box-shadow:0 18px 50px var(--argo-glow)}
.theme-argo .plan-badge{background:var(--argo-deep)}
.theme-argo .plan-feats svg{stroke:var(--argo-deep)}
.theme-argo .plan-tag,.theme-argo .plan-price-lg .plan-per{color:var(--argo-deep)}
.theme-argo .plan-price{color:var(--argo-deep)}

/* Tema OUTSOURCING (arancio osp) — pagine outsourcing, colori come la home.
   Scoped a .theme-osp: ricolora accenti teal → arancio osp solo su queste pagine. */
.theme-osp .eyebrow{color:var(--osp-deep)}
.theme-osp .eyebrow::before{background:var(--osp-deep)}
.theme-osp .page-hero-light h1 em,.theme-osp .prod.light .prod-name em,.theme-osp .sec-head h2{background:linear-gradient(90deg,var(--osp-deep) 0%,var(--osp) 30%,#FFB259 50%,var(--osp) 70%,var(--osp-deep) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
.theme-osp .sec-head h2 em{-webkit-text-fill-color:transparent}
.theme-osp .page-hero-light .chip,.theme-osp .prod.light .chip{color:var(--osp-deep);background:var(--osp-glow);border-color:color-mix(in srgb,var(--osp) 34%,transparent)}
.theme-osp .fcard .fic{background:var(--osp-glow);color:var(--osp-deep)}
.theme-osp .modcard .chip{color:var(--osp-deep);background:var(--osp-glow);border:1px solid color-mix(in srgb,var(--osp) 34%,transparent)}
.theme-osp .taglist span{color:var(--osp-deep)}
.theme-osp .steps .stepn{background:var(--osp-deep)}
.theme-osp .pc-tag,.theme-osp .pc-more{color:var(--osp-deep)}
.theme-osp .plan.featured{border-color:var(--osp-deep);box-shadow:0 18px 50px var(--osp-glow)}
.theme-osp .plan-badge{background:var(--osp-deep)}
.theme-osp .plan-feats svg{stroke:var(--osp-deep)}
.theme-osp .plan-tag,.theme-osp .plan-price-lg .plan-per{color:var(--osp-deep)}
.theme-osp .plan-price{color:var(--osp-deep)}

/* Scoped a .theme-neura: ricolora accenti teal → identità Neura solo su questa pagina.
   Sky/teal della card Neura (home · sezione "I prodotti Contify"). */
.theme-neura .eyebrow{color:var(--neura-sky-d)}
.theme-neura .eyebrow::before{background:var(--neura-sky-d)}
.theme-neura .prod.neura .eyebrow{color:var(--neura-teal)}
.theme-neura .prod.neura .eyebrow::before{background:var(--neura-teal)}
.theme-neura .page-hero-light h1 em,.theme-neura .prod.light .prod-name em,.theme-neura .sec-head h2{background:linear-gradient(90deg,var(--neura-sky-d) 0%,var(--neura-sky) 26%,var(--neura-teal) 50%,var(--neura-sky) 74%,var(--neura-sky-d) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}
.theme-neura .sec-head h2 em{-webkit-text-fill-color:transparent}
.theme-neura .page-hero-light .chip,.theme-neura .prod.light .chip{color:var(--neura-sky-d);background:color-mix(in srgb,var(--neura-sky) 12%,transparent);border-color:color-mix(in srgb,var(--neura-sky) 34%,transparent)}
.theme-neura .fcard .fic{background:color-mix(in srgb,var(--neura-sky) 13%,transparent);color:var(--neura-sky-d)}
.theme-neura .modcard .chip{color:var(--neura-sky-d);background:color-mix(in srgb,var(--neura-sky) 12%,transparent);border:1px solid color-mix(in srgb,var(--neura-sky) 34%,transparent)}
.theme-neura .steps .stepn{background:var(--neura-sky-d)}
.theme-neura .pc-tag,.theme-neura .pc-more{color:var(--neura-sky-d)}
.theme-neura .plan.featured{border-color:var(--neura-sky-d);box-shadow:0 18px 50px var(--neura-glow)}
.theme-neura .plan-badge{background:var(--neura-sky-d)}
.theme-neura .plan-feats svg{stroke:var(--neura-sky-d)}
.theme-neura .plan-price{color:var(--neura-sky-d)}

/* ==========================================================================
   Cruscotti BI di esempio — pagina Business Intelligence (Contify BI).
   Mockup statici illustrativi: KPI tile + grafici SVG inline, palette validata.
   ========================================================================== */
.bi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:8px}
.bi-dash{background:var(--bgCard);border:1px solid var(--bd);border-radius:16px;padding:22px 22px 20px;display:flex;flex-direction:column;gap:15px;transition:box-shadow .2s,transform .2s}
.bi-dash:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(14,42,42,.09)}
.bi-dash-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.bi-dash-head h3{font-size:1.06rem;margin:0;color:var(--navy);letter-spacing:-.01em}
.bi-dash-tag{font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep);background:var(--light);border-radius:999px;padding:5px 10px;white-space:nowrap}
.bi-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.bi-kpi{background:var(--bg);border:1px solid var(--bd);border-radius:10px;padding:10px 9px;min-width:0}
.bi-kpi .v{font-family:var(--font-mono);font-weight:700;font-size:.88rem;color:var(--ink);letter-spacing:-.03em;display:block;line-height:1.1;white-space:nowrap}
.bi-kpi .l{font-size:.63rem;color:var(--txM);text-transform:uppercase;letter-spacing:.04em;display:block;margin-top:4px;line-height:1.2}
.bi-kpi .d{font-size:.64rem;font-weight:600;display:block;margin-top:4px}
.bi-kpi .d.up{color:#0a7a3a}
.bi-kpi .d.down{color:#c02626}
.bi-chart svg{width:100%;height:auto;display:block;overflow:visible}
.bi-ax{font-family:var(--font-mono);font-size:8.5px;fill:var(--txD)}
.bi-val{font-family:var(--font-mono);font-size:9px;font-weight:600;fill:var(--txM)}
.bi-grid-l{stroke:var(--bd);stroke-width:1}
.bi-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:2px;font-size:.72rem;color:var(--txM)}
.bi-legend span{display:inline-flex;align-items:center;gap:6px}
.bi-legend i{width:10px;height:10px;border-radius:3px;display:inline-block;flex:0 0 auto}
@media(max-width:820px){.bi-grid{grid-template-columns:1fr}}
@media(max-width:520px){.bi-kpis{grid-template-columns:repeat(2,1fr)}.bi-kpi .v{font-size:.82rem}}
.bi-cap{font-size:.72rem;color:var(--txD);margin:2px 0 0}
/* Tooltip interattivi cruscotti BI */
rect[data-t],.bi-dot{cursor:pointer}
.bi-chart.bi-hovering rect[data-t]{opacity:.4;transition:opacity .12s}
.bi-chart.bi-hovering rect[data-t].is-hi{opacity:1}
.bi-dot{fill:#0E7C86;stroke:#fff;stroke-width:2;opacity:0;transition:opacity .12s}
.bi-dot.is-hi{opacity:1}
.bi-cross{stroke:var(--txD);stroke-width:1;stroke-dasharray:3 3;opacity:0}
.bi-chart.bi-hovering .bi-cross{opacity:.55}
.bi-tip{position:fixed;z-index:200;pointer-events:none;background:var(--navy);color:#fff;border-radius:9px;padding:7px 11px;line-height:1.25;box-shadow:0 10px 28px rgba(14,42,42,.30);opacity:0;transform:translateY(4px);transition:opacity .12s,transform .12s;white-space:nowrap}
.bi-tip.show{opacity:1;transform:translateY(0)}
.bi-tip strong{font-family:var(--font-mono);display:block;font-size:.9rem;letter-spacing:-.02em}
.bi-tip span{color:rgba(255,255,255,.72);font-size:.64rem;text-transform:uppercase;letter-spacing:.06em}

/* ==========================================================================
   Contify Incognito — demo interattiva di anonimizzazione (/prodotti/contify-incognito)
   ========================================================================== */
.ci-demo{background:var(--bgCard);border:1px solid var(--bd);border-radius:18px;padding:clamp(16px,2.4vw,26px);box-shadow:0 10px 30px rgba(14,42,42,.06)}
.ci-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-bottom:16px}
.ci-modes{display:flex;gap:8px;flex-wrap:wrap}
.ci-mode{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid var(--bd);border-radius:999px;cursor:pointer;font-size:.9rem;color:var(--txM);background:var(--bg);transition:border-color .15s,color .15s,background .15s}
.ci-mode small{color:var(--txD);font-weight:400}
.ci-mode input{accent-color:var(--pri);margin:0}
.ci-mode:has(input:checked){border-color:var(--pri);color:var(--tx);background:color-mix(in srgb,var(--pri) 8%,transparent)}
.ci-mode:has(input:checked) small{color:var(--priD)}
.ci-count{font-family:var(--font-mono);font-size:.78rem;color:var(--priD);background:color-mix(in srgb,var(--pri) 10%,transparent);border:1px solid color-mix(in srgb,var(--pri) 30%,transparent);border-radius:999px;padding:4px 11px}
.ci-count:empty{display:none}
.ci-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ci-col{display:flex;flex-direction:column;min-width:0}
.ci-col-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.ci-lbl{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--txD)}
.ci-input,.ci-restore-input{width:100%;min-height:190px;resize:vertical;border:1px solid var(--bd);border-radius:12px;background:var(--bg);color:var(--tx);padding:13px 15px;font-family:inherit;font-size:.92rem;line-height:1.6}
.ci-input:focus,.ci-restore-input:focus{outline:none;border-color:var(--pri);box-shadow:0 0 0 3px color-mix(in srgb,var(--pri) 18%,transparent)}
.ci-output,.ci-restore-output{min-height:190px;border:1px solid var(--bd);border-radius:12px;background:var(--bg);color:var(--tx);padding:13px 15px;font-size:.92rem;line-height:1.7;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}
.ci-placeholder{color:var(--txD);font-style:italic}
.ci-seg{background:color-mix(in srgb,var(--pri) 15%,transparent);border:1px solid color-mix(in srgb,var(--pri) 45%,transparent);border-radius:5px;padding:0 4px;color:var(--priD);font-weight:600;font-family:var(--font-mono);font-size:.86em;white-space:nowrap}
.ci-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.ci-copy{border:1px solid var(--bd);background:transparent;color:var(--txM);border-radius:999px;padding:4px 12px;font-size:.78rem;cursor:pointer;transition:border-color .15s,color .15s}
.ci-copy:hover{border-color:var(--pri);color:var(--priD)}
.ci-mapping{margin-top:20px;border:1px solid var(--bd);border-radius:12px;overflow:hidden}
.ci-map-head{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:11px 15px;background:var(--bgSoft);border-bottom:1px solid var(--bd)}
.ci-map-sub{font-size:.78rem;color:var(--txD)}
.ci-map-body{padding:6px 0}
.ci-map-row{display:grid;grid-template-columns:minmax(96px,auto) minmax(90px,auto) 1fr;gap:12px;align-items:center;padding:7px 15px;font-size:.86rem}
.ci-map-row+.ci-map-row{border-top:1px solid var(--bgSoft)}
.ci-map-row code{font-family:var(--font-mono);font-size:.82rem;color:var(--priD);background:color-mix(in srgb,var(--pri) 10%,transparent);border-radius:4px;padding:1px 6px;white-space:nowrap}
.ci-map-type{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--txD)}
.ci-map-orig{color:var(--tx);word-break:break-word}
.ci-restore{margin-top:20px;padding-top:20px;border-top:1px dashed var(--bd)}
.ci-restore-intro{font-size:.88rem;color:var(--txM);margin:2px 0 12px;max-width:70ch}
.ci-restore-output{margin-top:12px;background:color-mix(in srgb,var(--pri) 6%,transparent)}
.ci-demo-note-inline{color:var(--txD);font-size:.92em}
@media(max-width:760px){.ci-grid{grid-template-columns:1fr}.ci-map-row{grid-template-columns:1fr;gap:3px}.ci-map-type{margin-top:2px}}

/* Chip "nudi" (figli diretti di .wrap) su sezione chiara — es. "Cosa riconosce":
   il colore base .chip è mint (per card scure) e su fondo chiaro è illeggibile.
   Non tocca i chip dentro le card .prod (che non sono figli diretti di .wrap). */
.sec-light > .wrap > .chips .chip{color:var(--teal-deep);background:var(--light);border-color:var(--bd)}


/* ===== Prova self-service Incognito — /prova-incognito/ (spec incognito-v1_16_0, Fase A) ===== */
.prova-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:34px;align-items:start;margin-top:34px}
.prova-card{background:var(--bgCard);border:1px solid var(--bd);border-radius:18px;padding:28px;box-shadow:0 10px 40px rgba(14,42,42,.06)}
.prova-card .cf-submit{align-self:stretch;justify-content:center}
.prova-card .cf-turnstile{min-height:65px;margin-top:2px}
.prova-nota{font-size:.84rem;color:var(--grey);line-height:1.55;margin:6px 0 0}
.prova-nota a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
.prova-side{display:flex;flex-direction:column;gap:18px}
.prova-side-box{background:var(--light);border:1px solid var(--bd);border-radius:16px;padding:22px 24px}
.prova-side-box p{margin:12px 0 0;color:var(--ink);line-height:1.6;font-size:.98rem}
.prova-lista{margin:12px 0 0;padding-left:18px;color:var(--ink);line-height:1.6;font-size:.96rem}
.prova-lista li{margin-bottom:8px}
.prova-esito .eyebrow{margin-bottom:10px}
.prova-esito-nota{color:var(--grey);font-size:.95rem;margin:0 0 16px}
.prova-dato{margin:0 0 16px}
.prova-lbl{display:block;font-size:.8rem;font-weight:600;color:var(--ink);letter-spacing:.01em;margin-bottom:7px}
.prova-lbl small{font-weight:500;color:var(--grey)}
.prova-val-row{display:flex;gap:10px;align-items:stretch}
.prova-val{flex:1 1 auto;min-width:0;font-family:var(--font-mono);font-size:clamp(1.02rem,2.2vw,1.35rem);font-weight:600;letter-spacing:.04em;color:var(--teal-deep);background:var(--bgSoft);border:1px solid var(--line);border-radius:10px;padding:12px 14px;overflow-wrap:anywhere;user-select:all}
.prova-copy{flex:0 0 auto;font-family:var(--font-display);font-size:.84rem;font-weight:700;color:var(--teal-deep);background:#fff;border:1px solid var(--teal);border-radius:10px;padding:0 16px;cursor:pointer;transition:background .18s,color .18s}
.prova-copy:hover{background:var(--teal);color:#fff}
.prova-hint{font-size:.82rem;color:var(--grey);margin:7px 0 0;line-height:1.5}
.prova-passi{margin:18px 0 0;padding-left:20px;color:var(--ink);line-height:1.6;font-size:.96rem}
.prova-passi li{margin-bottom:8px}
@media(max-width:860px){.prova-grid{grid-template-columns:1fr}.prova-card{padding:22px}}
@media(max-width:520px){.prova-val-row{flex-direction:column}.prova-copy{padding:10px 16px}}

/* ===== Acquisto Incognito — /acquista-incognito/ e /acquista-incognito/grazie/ (spec checkout Stripe §2.10, prefisso aq-, sulle classi .prova-* e .cf) ===== */
.aq-set{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:15px}
.aq-set + .aq-set{border-top:1px solid var(--line-soft);padding-top:22px;margin-top:6px}
.aq-leg{padding:0;margin:0 0 4px;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep)}
.aq-tipi{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cf .aq-tipo{position:relative;display:flex;flex-direction:column;gap:5px;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px 14px 44px;background:#fff;cursor:pointer;font-size:inherit;font-weight:400;letter-spacing:0;transition:border-color .18s,background .18s}
.cf .aq-tipo input{position:absolute;left:16px;top:16px;width:18px;height:18px;margin:0;padding:0;accent-color:var(--teal)}
.aq-tipo strong{font-size:.98rem;color:var(--ink)}
.aq-tipo small{font-size:.83rem;color:var(--grey);line-height:1.45}
.aq-tipo .aq-prezzo{font-family:var(--font-mono);font-size:.78rem;font-weight:600;color:var(--teal-deep);margin-top:2px}
.cf .aq-tipo:has(input:checked){border-color:var(--teal);background:var(--light)}
.cf .aq-tipo:has(input:focus-visible){outline:2.5px solid var(--teal);outline-offset:2px}
.aq-hint{font-size:.8rem;color:var(--grey);line-height:1.45;margin:0}
.aq-hint a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:2px}
.aq-hint-row{margin-top:-6px}
.aq-facolt{font-weight:500;color:var(--grey)}
.cf input[aria-invalid="true"]{border-color:#c02626;background:#fff}
.aq-riep{width:100%;border-collapse:collapse;font-size:.95rem;margin:0}
.aq-riep th{text-align:left;font-weight:500;color:var(--ink);padding:9px 12px 9px 0;border-bottom:1px solid var(--line-soft)}
.aq-riep td{text-align:right;font-family:var(--font-mono);font-weight:600;color:var(--ink);padding:9px 0;border-bottom:1px solid var(--line-soft);white-space:nowrap}
.aq-riep .aq-tot th,.aq-riep .aq-tot td{border-bottom:0;padding-top:12px;font-weight:700;font-size:1.06rem;color:var(--teal-deep)}
.aq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aq-incl{margin:-4px 0 4px;font-family:var(--font-mono);font-size:.74rem;color:var(--grey);letter-spacing:.02em}
.aq-sicuro{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:.82rem;color:var(--grey);line-height:1.5}
.aq-sicuro svg{width:16px;height:16px;flex:0 0 auto;margin-top:2px;stroke:var(--teal-deep)}
.aq-attesa{display:flex;gap:14px;align-items:flex-start}
.aq-attesa[hidden]{display:none!important}
.aq-form[hidden]{display:none!important}
.aq-collaudo{margin:0 0 16px;padding:10px 14px;border-radius:10px;background:#fff6e0;border:1px solid #e8c547;color:#6b5200;font-size:.84rem;font-weight:600;line-height:1.45}
.aq-attesa p{margin:0;color:var(--ink);line-height:1.55}
.aq-spin{flex:0 0 auto;width:22px;height:22px;margin-top:1px;border-radius:50%;border:2.5px solid var(--line);border-top-color:var(--teal);animation:aqspin .9s linear infinite}
@keyframes aqspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.aq-spin{animation-duration:2.4s}}
.aq-scaduto{margin:0 0 6px;color:var(--ink);line-height:1.6}
.aq-h{margin:26px 0 0;font-size:1.12rem;color:var(--ink)}
.prova-side-box p a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
@media(max-width:600px){.aq-tipi{grid-template-columns:1fr}}
@media(max-width:420px){.aq-btn-prezzo{display:none}}

/* ===== Blog «Vendere o aggregare lo studio commercialista» — /blog/vendere-studio-commercialista/ (prefisso vs-, sui token del sito) ===== */
.vs-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:28px 0 8px}
.vs-stat{background:var(--light);border:1px solid var(--line-soft);border-radius:var(--r);padding:20px 18px}
.vs-stat b{display:block;font-size:30px;line-height:1.1;color:var(--teal-deep);letter-spacing:-.02em;margin-bottom:8px}
.vs-stat span{display:block;font-size:14px;line-height:1.45;color:var(--ink)}
.vs-stat small{display:block;margin-top:8px;font-family:var(--font-mono);font-size:11px;color:var(--grey);letter-spacing:.02em}
.vs-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:24px 0}
.vs-card{border:1px solid var(--line);border-radius:var(--r);padding:22px 22px 18px;background:#fff}
.vs-card h3{margin:0 0 8px!important;font-size:18px!important}
.vs-card p{margin:0!important;font-size:15px}
.vs-card .vs-tag{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:10px}
.vs-callout{border-left:3px solid var(--teal);background:var(--light);padding:18px 22px;border-radius:0 12px 12px 0;margin:26px 0}
.vs-callout p{margin:0!important}
.vs-highlight{position:relative;overflow:hidden;border-radius:var(--r);background:var(--navy);color:#fff;padding:34px 34px 30px;margin:30px 0 34px}
.vs-highlight::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(143,240,221,.22),rgba(143,240,221,0) 70%)}
.vs-highlight .vs-kicker{display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:12px}
.vs-highlight h3{color:#fff!important;font-size:26px!important;line-height:1.25!important;margin:0 0 14px!important;max-width:640px}
.vs-highlight h3 em{color:var(--mint);font-style:normal}
.vs-highlight p{color:rgba(255,255,255,.88)!important;margin:0 0 12px!important;font-size:16px;max-width:680px;position:relative;z-index:1}
.vs-highlight p:last-child{margin-bottom:0!important}
.vs-highlight strong{color:var(--mint)!important}
.vs-check{list-style:none;padding:0!important;margin:22px 0!important}
.vs-check li{margin:0 0 10px!important;padding:0!important}
.vs-check li::before{display:none!important;content:none!important}
.vs-check label{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line-soft);border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .2s,background .2s}
.vs-check label:hover{border-color:var(--teal)}
.vs-check input{margin-top:4px;width:18px;height:18px;accent-color:var(--teal);flex:0 0 auto}
.vs-check input:checked + span{color:var(--navy)}
.vs-check label:has(input:checked){background:var(--light);border-color:var(--teal)}
.vs-result{border-radius:var(--r);background:var(--light);border:1px solid var(--teal);padding:22px 24px;margin:8px 0 28px}
.vs-result b{color:var(--teal-deep);font-size:20px;display:block;margin-bottom:6px}
.vs-result p{margin:0!important;font-size:15px}
.vs-result a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
.cf select{width:100%}
/* tabelle larghe negli articoli: scorrono in orizzontale sotto i 600px invece di essere tagliate dal body overflow-x:hidden */
.table-scroll{margin:8px 0 22px}
.table-scroll table{margin:0}
@media (max-width:600px){.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:560px}}
@media (max-width:860px){.vs-stats{grid-template-columns:repeat(2,1fr)}.vs-cards{grid-template-columns:1fr}.vs-highlight{padding:26px 22px}.vs-highlight h3{font-size:22px!important}}
@media (max-width:480px){.vs-stats{grid-template-columns:1fr}}

/* ===== Contify AB — anteprima grafica portata da contify-ab.it (/prodotti/software-analisi-bilancio/) =====
   HTML+SVG copiati dal sorgente della landing (sezioni #anteprima, #flussi, #fatture, #valore) con i prefissi
   originali prev-/preview-/fb-/fe-/vg-/val-; qui solo il CSS necessario, sui token del sito (alias AB in :root).
   Regola del sito: tutto visibile senza JS — le barre partono piene e si animano solo con html.has-anim + .reveal.in. */

/* Dashboard preview (9 card) */
.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.prev-card{border-radius:16px;background:var(--bgCard);border:1px solid var(--bd);overflow:hidden;transition:all .4s}
.prev-card:hover{border-color:rgba(51,153,153,.35);transform:translateY(-6px);box-shadow:0 16px 48px rgba(0,0,0,.08)}
.prev-label{padding:14px 20px 0;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pri);font-family:var(--font-mono)}
.prev-panel{padding:16px 20px 20px}
.prev-rating-ring{position:relative;width:120px;height:120px;margin:0 auto 12px}
.prev-rating-score{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:32px;font-weight:800;color:var(--tx)}
.prev-rating-class{text-align:center;font-size:28px;font-weight:800;color:var(--pri);letter-spacing:.02em}
.prev-rating-pd{text-align:center;font-size:11px;color:var(--txM);margin:6px 0 16px}
.prev-rating-bars{display:flex;flex-direction:column;gap:8px}
.prev-rb{display:flex;align-items:center;gap:8px}
.prev-rb-l{font-size:10px;color:var(--txD);width:72px;text-align:right;flex-shrink:0}
.prev-rb-track{flex:1;height:6px;background:rgba(0,0,0,.05);border-radius:3px;overflow:hidden}
.prev-rb-fill{height:100%;border-radius:3px;transition:width 1.2s ease}
.prev-rb-v{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--txM);width:24px}
.prev-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.prev-kpi{background:var(--bgSoft);border:1px solid rgba(0,0,0,.04);border-radius:10px;padding:12px 14px}
.prev-kpi-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px;gap:6px}
.prev-kpi-name{font-size:10.5px;font-weight:600;color:var(--txM)}
.prev-badge{font-size:8px;font-weight:700;padding:2px 7px;border-radius:4px;letter-spacing:.04em;white-space:nowrap;font-family:var(--font-mono)}
.prev-badge-ok{color:#1a8a4a;background:rgba(78,203,113,.14)}.prev-badge-wrn{color:#b4720e;background:rgba(240,160,48,.14)}.prev-badge-dng{color:#e05555;background:rgba(224,85,85,.1)}
.prev-kpi-val{font-family:var(--font-mono);font-size:18px;font-weight:800;line-height:1.2}
.prev-kpi-bench{font-size:9px;color:var(--txD);margin-top:3px}
.prev-ccii-main{text-align:center;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--bd)}
.prev-ccii-dscr-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--txD);font-weight:600;font-family:var(--font-mono)}
.prev-ccii-dscr-val{font-family:var(--font-mono);font-size:38px;font-weight:800;color:#4ecb71;line-height:1.1;margin:4px 0 8px}
.prev-ccii-dscr-val span{font-size:18px;color:var(--txM)}
.prev-ccii-semaforo{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 12px;border-radius:6px}
.prev-ccii-green{color:#1a8a4a;background:rgba(78,203,113,.12)}
.prev-ccii-row{display:flex;justify-content:space-between;padding:6px 0;font-size:11px;border-bottom:1px solid rgba(0,0,0,.04)}
.prev-ccii-row span:first-child{color:var(--txM)}
.prev-ccii-ref{margin-top:12px;font-size:9px;color:var(--txD);font-style:italic;text-align:center}
.prev-dd-class{font-family:var(--font-mono);font-size:32px;font-weight:800;color:#4ecb71;letter-spacing:.05em}
.prev-dd-areas{display:flex;flex-direction:column;gap:8px}
.prev-dd-area{display:flex;align-items:center;gap:10px}
.prev-dd-area span{font-size:10px;color:var(--txD);width:90px;text-align:right;flex-shrink:0}
.prev-dd-bar{flex:1;height:6px;background:rgba(0,0,0,.05);border-radius:3px;overflow:hidden}
.prev-dd-bar div{height:100%;border-radius:3px;transition:width 1.2s ease}
.prev-dd-flags{margin-top:14px;display:flex;align-items:center;gap:6px;justify-content:center;font-size:11px;color:#1a8a4a;font-weight:600}
@media(max-width:900px){.preview-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.preview-grid{grid-template-columns:1fr}}
@media(max-width:480px){.prev-kpi-grid{grid-template-columns:1fr}}

/* Flussi bancari: grafico saldo + KPI (sinistra), feature (destra) */
.fb-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:40px}
.fb-chart-panel{position:relative;background:var(--bgCard);border:1px solid var(--bd);border-radius:var(--radius);padding:28px 20px 20px;overflow:hidden}
.fb-chart-panel::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--pri),#2E86C1)}
.fb-chart-title,.fe-chart-title,.vg-chart-title{font-family:var(--font-mono);font-size:.7rem;color:var(--txD);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}
.fb-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.fb-kpi{padding:12px 10px;border-radius:var(--radiusSm);background:var(--bgCard);text-align:center;border:1px solid var(--bd)}
.fb-kpi-val{font-family:var(--font-mono);font-size:1.1rem;font-weight:800;line-height:1}
.fb-kpi-label{font-size:.62rem;color:var(--txD);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-family:var(--font-mono)}
.fb-bal-line{fill:none;stroke:var(--pri);stroke-width:2;stroke-linecap:round;stroke-dasharray:600;stroke-dashoffset:600;animation:fbDraw 2.5s ease .5s forwards}
.fb-bal-area{fill:url(#fbAreaGrad);opacity:0;animation:vgReveal 1.5s ease .8s forwards}
.fb-neg-area{fill:url(#fbNegGrad);opacity:0;animation:vgReveal 1.5s ease 1s forwards}
@keyframes fbDraw{to{stroke-dashoffset:0}}
.fb-right,.fe-left{display:flex;flex-direction:column;gap:16px}
.fb-feature,.fe-feature{display:flex;gap:14px;padding:16px 18px;border-radius:var(--radiusSm);background:var(--bgCard);border:1px solid var(--bd);transition:all .35s}
.fb-feature:hover{border-color:rgba(51,153,153,.3);transform:translateX(6px);box-shadow:0 4px 20px rgba(0,0,0,.04)}
.fe-feature:hover{border-color:rgba(232,197,71,.3);transform:translateX(-6px);box-shadow:0 4px 20px rgba(0,0,0,.04)}
.fb-feature-icon,.fe-feature-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fb-feature h4,.fe-feature h4{font-size:.9rem;margin:0 0 3px;color:var(--tx)}
.fb-feature p,.fe-feature p{font-size:.78rem;color:var(--txM);line-height:1.5;margin:0}
@media(max-width:900px){.fb-layout{grid-template-columns:1fr}.fb-kpi-row{grid-template-columns:repeat(2,1fr)}}

/* Fatture XML: feature (sinistra), aging + CCC (destra) */
.fe-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;margin-top:40px}
.fe-chart-panel{position:relative;background:var(--bgCard);border:1px solid var(--bd);border-radius:var(--radius);padding:28px 20px 20px;overflow:hidden}
.fe-chart-panel::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--acc),var(--accD))}
.fe-aging-bar{height:24px;border-radius:4px;position:relative;overflow:hidden;display:flex;align-items:center}
.fe-aging-fill{height:100%;border-radius:4px;width:var(--fill);transition:width 1.2s cubic-bezier(.4,0,.2,1)}
html.has-anim .reveal .fe-aging-fill{width:0}
html.has-anim .reveal.in .fe-aging-fill{width:var(--fill)}
.fe-aging-val{font-family:var(--font-mono);font-size:.72rem;font-weight:700;margin-left:8px;white-space:nowrap}
.fe-ccc-flow{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:20px;flex-wrap:wrap}
.fe-ccc-block{padding:10px 14px;border-radius:8px;text-align:center;font-size:.72rem;font-weight:700;min-width:70px}
.fe-ccc-arrow{color:var(--txD);font-size:1.2rem}
@media(max-width:900px){.fe-layout{grid-template-columns:1fr}.fe-left{order:2}}

/* ROI su navy: curva con/senza Contify + metriche */
.ab-roi .lead{color:rgba(255,255,255,.78)}
.ab-roi .eyebrow{color:var(--mint)}
.val-grow-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:40px}
.val-grow-chart{position:relative;background:var(--bgCard);border:1px solid var(--bd);border-radius:var(--radius);padding:32px 24px 24px;overflow:hidden;color:var(--tx)}
.val-grow-chart::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--pri),var(--acc))}
.vg-chart-title{font-size:.72rem;margin-bottom:20px}
.vg-svg{width:100%;height:auto;display:block}
.vg-area{fill:url(#vgGrad);opacity:0;animation:vgReveal 1.5s ease .5s forwards}
.vg-line{fill:none;stroke:var(--pri);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:500;stroke-dashoffset:500;animation:vgDraw 2s ease .3s forwards}
.vg-dot{fill:var(--pri);opacity:0;animation:vgDotIn .4s ease forwards}
.vg-label-end{font-family:var(--font-mono);font-size:11px;font-weight:700;fill:#1a8a4a}
@keyframes vgReveal{to{opacity:1}}
@keyframes vgDraw{to{stroke-dashoffset:0}}
@keyframes vgDotIn{to{opacity:1}}
.vg-baseline{stroke:rgba(0,0,0,.06);stroke-dasharray:4,4}
.vg-month{font-size:8px;fill:var(--txD);font-family:var(--font-display)}
.vg-val{font-size:8px;fill:var(--txD);font-family:var(--font-mono)}
.val-grow-metrics{display:flex;flex-direction:column;gap:20px}
.vg-metric{padding:20px 24px;border-radius:var(--radiusSm);background:var(--bgCard);border:1px solid var(--bd);position:relative;overflow:hidden;transition:all .35s;color:var(--tx)}
.vg-metric:hover{border-color:rgba(51,153,153,.3);transform:translateX(6px)}
.vg-metric::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 3px 3px 0}
.vg-metric:nth-child(1)::before{background:var(--pri)}.vg-metric:nth-child(2)::before{background:var(--acc)}.vg-metric:nth-child(3)::before{background:var(--ok)}.vg-metric:nth-child(4)::before{background:#a78bfa}
.vg-metric-top{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}
.vg-metric-num{font-family:var(--font-mono);font-size:1.8rem;font-weight:800;line-height:1}
.vg-metric-unit{font-size:.85rem;color:var(--txD);font-weight:500}
.vg-metric-desc{font-size:.82rem;color:var(--txM);line-height:1.5}
.vg-metric-bar{height:4px;border-radius:2px;background:rgba(0,0,0,.05);margin-top:10px;overflow:hidden}
.vg-metric-bar-fill{height:100%;border-radius:2px;width:var(--fill);transition:width 1.5s cubic-bezier(.4,0,.2,1)}
html.has-anim .reveal .vg-metric-bar-fill{width:0}
html.has-anim .reveal.in .vg-metric-bar-fill{width:var(--fill)}
@media(max-width:900px){.val-grow-layout{grid-template-columns:1fr;gap:32px}}

/* CTA doppia nel piano e nel blocco contatti (prova self-service) */
.plan-cta{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.plan-cta .btn{margin-top:0;width:100%;justify-content:center}
.hero-note{margin-top:14px;font-size:.9rem;color:var(--txM)}
.contact-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.contact-cta-row .prod-cta{margin-top:0}

/* Movimento ridotto: grafici subito nello stato finale */
@media(prefers-reduced-motion:reduce){
  .fb-bal-line,.vg-line{animation:none;stroke-dashoffset:0}
  .fb-bal-area,.fb-neg-area,.vg-area,.vg-dot,.fb-chart-panel circle[style]{animation:none!important;opacity:1!important}
  .fe-aging-fill,.vg-metric-bar-fill,.prev-rb-fill,.prev-dd-bar div{transition:none}
  html.has-anim .reveal .fe-aging-fill,html.has-anim .reveal .vg-metric-bar-fill{width:var(--fill)}
}


/* ===== Preventivo outsourcing paghe — /prodotti/outsourcing/preventivo-paghe/ (prefisso pv-, sui token del sito, accento osp) =====
   Il risultato è impaginato come un cedolino: voci, quantità, importi, totale in fondo.
   Regola del sito: tutto leggibile senza JS — l'HTML parte già calcolato per 5 dipendenti e le tariffe sono in tabella. */
.pv-hero{padding-bottom:clamp(60px,8vh,96px)}
.pv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:28px;align-items:start;margin-top:44px}
.pv-in{background:var(--paper);border:1px solid var(--line-soft);border-radius:22px;padding:34px 32px}
.pv-q{display:block;font-size:1.3rem;font-weight:700;letter-spacing:-.015em;color:var(--navy)}
.pv-hint{color:var(--grey);font-size:.92rem;margin:6px 0 18px;line-height:1.5}
.pv-sub{font-size:.95rem;font-weight:700;color:var(--navy);margin:26px 0 10px}
.pv-step{display:grid;grid-template-columns:58px minmax(0,1fr) 58px;gap:10px}
.pv-step button{border:1px solid var(--line);background:var(--bgSoft);border-radius:14px;font:inherit;font-size:1.7rem;line-height:1;color:var(--navy);cursor:pointer;transition:border-color .15s,background .15s}
.pv-step button:hover{border-color:var(--osp-deep);background:#fff}
.pv-step input{width:100%;min-width:0;text-align:center;font-family:var(--font-mono);font-size:2.1rem;font-weight:700;color:var(--navy);background:var(--bgSoft);border:1px solid var(--line);border-radius:14px;padding:8px 10px;-moz-appearance:textfield;appearance:textfield}
.pv-in input[type=number]::-webkit-outer-spin-button,.pv-in input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pv-in input:focus-visible,.pv-in button:focus-visible{outline:2.5px solid var(--osp-deep);outline-offset:2px}
.pv-in input:disabled,.pv-in button:disabled{opacity:.42;cursor:default}
.pv-range{display:block;width:100%;margin:18px 0 12px;accent-color:var(--osp-deep)}
.pv-rapidi{display:flex;flex-wrap:wrap;gap:8px}
.pv-rapidi button{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 15px;cursor:pointer;transition:border-color .15s,color .15s}
.pv-rapidi button:hover{border-color:var(--osp-deep);color:var(--osp-deep)}
.pv-mini{display:none;margin:18px 0 0;padding:12px 14px;border-radius:12px;background:var(--osp-navy);color:rgba(255,255,255,.8);font-size:.9rem;justify-content:space-between;align-items:baseline;gap:12px}
.pv-mini b{font-family:var(--font-mono);font-size:1.15rem;color:#fff;white-space:nowrap}
.pv-fasce{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0}
.pv-fasce li{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line-soft);border-radius:12px;padding:10px 10px 11px;background:var(--bgSoft);transition:background .15s,border-color .15s}
.pv-fasce span{font-size:.74rem;color:var(--grey);white-space:nowrap}
.pv-fasce b{font-family:var(--font-mono);font-size:.98rem;color:var(--navy);white-space:nowrap}
.pv-fasce li.on{background:var(--osp-glow);border-color:var(--osp-deep)}
.pv-fasce li.on span{color:var(--ink)}
.pv-fasce+.pv-hint{margin:10px 0 0}
.pv-opt{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding-top:20px;border-top:1px solid var(--line-soft);cursor:pointer;font-weight:600;color:var(--navy);font-size:.98rem;line-height:1.4}
.pv-opt input{width:19px;height:19px;margin-top:2px;flex:0 0 auto;accent-color:var(--osp-deep)}
.pv-opt small{display:block;font-weight:400;color:var(--grey);font-size:.86rem;margin-top:3px;line-height:1.45}
.pv-mesi{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px}
.pv-mesi[hidden]{display:none}
.pv-mesi label{display:flex;flex-direction:column;gap:4px;font-family:var(--font-mono);font-size:.72rem;color:var(--grey)}
.pv-mesi input{width:100%;min-width:0;font-family:var(--font-mono);font-size:1rem;font-weight:600;text-align:center;color:var(--navy);background:var(--bgSoft);border:1px solid var(--line);border-radius:10px;padding:8px 4px;-moz-appearance:textfield;appearance:textfield}
.pv-nojs{margin:20px 0 0;padding:12px 14px;border-radius:12px;background:var(--bgSoft);font-size:.9rem;color:var(--ink)}
.pv-out{position:sticky;top:96px}
.pv-slip{background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--osp-deep);border-radius:6px 6px 22px 22px;box-shadow:0 22px 60px rgba(11,28,66,.13);overflow:hidden}
.pv-slip-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:18px 24px 0}
.pv-slip-head strong{font-size:1.04rem;color:var(--navy);letter-spacing:-.01em}
.pv-slip-head span{font-family:var(--font-mono);font-size:.74rem;font-weight:600;color:var(--osp-deep);white-space:nowrap}
.pv-chi{margin:0;padding:3px 24px 14px;color:var(--grey);font-size:.92rem}
.pv-voci{width:100%;border-collapse:collapse;font-size:.93rem}
.pv-voci th,.pv-voci td{padding:11px 10px;border-top:1px solid var(--line-soft);text-align:right;font-variant-numeric:tabular-nums}
.pv-voci thead th{font-family:var(--font-mono);font-size:.68rem;font-weight:600;color:var(--grey);background:var(--bgSoft)}
.pv-voci th:first-child{text-align:left;padding-left:24px}
.pv-voci td:last-child,.pv-voci th:last-child{padding-right:24px}
.pv-voci tbody th{font-weight:600;color:var(--navy)}
.pv-voci td{font-family:var(--font-mono);color:var(--ink);white-space:nowrap}
.pv-voci td:last-child{font-weight:700;color:var(--navy)}
.pv-tot{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 16px;padding:22px 24px 20px;background:linear-gradient(155deg,var(--osp-navy),var(--osp-navy-2));color:#fff}
.pv-tot>span{align-self:center;font-size:.92rem;color:rgba(255,255,255,.8)}
.pv-tot b{font-family:var(--font-mono);font-size:clamp(1.9rem,3.4vw,2.45rem);letter-spacing:-.03em;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}
.pv-tot small{grid-column:1/-1;margin-top:9px;font-size:.84rem;line-height:1.5;color:rgba(255,255,255,.72)}
.pv-fatt{margin:0;padding:5px 24px 7px}
.pv-fatt div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;border-bottom:1px solid var(--line-soft)}
.pv-fatt div:last-child{border-bottom:0}
.pv-fatt dt{font-size:.92rem;color:var(--ink)}
.pv-fatt dt small{display:block;margin-top:2px;font-size:.78rem;color:var(--grey)}
.pv-fatt dd{margin:0;font-family:var(--font-mono);font-size:.95rem;font-weight:700;color:var(--navy);white-space:nowrap}
.pv-det{border-top:1px solid var(--line-soft);padding:12px 24px 16px}
.pv-det-t{margin:0;font-weight:700;font-size:.92rem;color:var(--navy)}
.pv-det table{width:100%;border-collapse:collapse;font-size:.84rem;margin-top:8px}
.pv-det th,.pv-det td{padding:7px 6px;border-bottom:1px solid var(--line-soft);text-align:right;white-space:nowrap}
.pv-det th:first-child,.pv-det td:first-child{text-align:left}
.pv-det td{font-family:var(--font-mono)}
.pv-det th{font-size:.72rem;font-weight:600;color:var(--grey)}
.pv-cta{width:100%;justify-content:center;margin-top:16px}
.pv-nota{margin:12px 4px 0;font-size:.84rem;line-height:1.5;color:var(--grey)}
.pv-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:stretch;margin-top:36px}
.pv-wide{grid-column:1/-1}
.pv-card{background:var(--paper);border:1px solid var(--line-soft);border-radius:22px;padding:30px 30px 26px}
.pv-card h3{font-size:1.12rem;color:var(--navy);margin:0 0 14px}
.pv-table{width:100%;border-collapse:collapse;font-size:.95rem}
.pv-table th,.pv-table td{padding:11px 10px;border-bottom:1px solid var(--line-soft);text-align:right;vertical-align:top}
.pv-table th:first-child{text-align:left;padding-left:0}
.pv-table td:last-child,.pv-table th:last-child{padding-right:0}
.pv-table thead th{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--grey);vertical-align:bottom}
.pv-table tbody th{font-weight:600;color:var(--navy)}
.pv-table td{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink)}
.pv-esempi td:nth-child(3){font-weight:700;color:var(--navy)}
.pv-legal{margin:16px 0 0;font-size:.84rem;line-height:1.55;color:var(--grey)}
.pv-legal-out{max-width:92ch;margin:20px 4px 0}
.pv-incl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 28px}
.pv-incl li{display:flex;gap:11px;align-items:flex-start;font-size:.95rem;line-height:1.45;color:var(--ink)}
.pv-incl svg{flex:0 0 18px;width:18px;height:18px;margin-top:2px;fill:none;stroke:var(--osp-deep);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pv-vedi{max-width:72ch;margin:26px 0 0;color:var(--grey)}
.pv-vedi a{color:var(--osp-deep);font-weight:600;text-decoration:underline;text-underline-offset:2px}
#esempi .pv-card{margin-top:36px}
.pv-rie{margin:20px 0 22px;padding:4px 18px;background:var(--bgSoft);border:1px solid var(--line-soft);border-radius:14px}
.pv-rie div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
.pv-rie div:last-child{border-bottom:0}
.pv-rie dt{font-size:.9rem;color:var(--grey)}
.pv-rie dd{margin:0;font-family:var(--font-mono);font-weight:700;color:var(--navy);white-space:nowrap}
@media(max-width:900px){
  .pv,.pv-grid{grid-template-columns:minmax(0,1fr)}
  .pv-incl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pv-out{position:static}
  .pv-mini{display:flex}
}
@media(max-width:560px){
  .pv{margin-top:32px}
  .pv-in{padding:24px 18px}
  .pv-card{padding:22px 18px}
  .pv-fasce{grid-template-columns:minmax(0,1fr)}
  .pv-fasce li{flex-direction:row;align-items:baseline;gap:10px;padding:9px 12px}
  .pv-fasce span{flex:1 1 auto;font-size:.86rem}
  .pv-mesi{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pv-voci{font-size:.8rem}
  .pv-voci th,.pv-voci td{padding:10px 5px}
  .pv-voci th:first-child{padding-left:16px}
  .pv-voci td:last-child,.pv-voci th:last-child{padding-right:16px}
  .pv-slip-head{padding:16px 16px 0}
  .pv-chi{padding:3px 16px 12px}
  .pv-tot{grid-template-columns:minmax(0,1fr);padding:20px 16px 18px}
  .pv-fatt{padding:4px 16px 6px}
  .pv-det{padding:12px 16px 14px}
  .pv-det th:nth-child(3),.pv-det td:nth-child(3),.pv-det th:nth-child(4),.pv-det td:nth-child(4){display:none}
  .pv-table{font-size:.88rem}
  .pv-table th,.pv-table td{padding:10px 6px}
  .pv-aparte td{white-space:normal;width:36%}
  .pv-esempi th:nth-child(2),.pv-esempi td:nth-child(2),.pv-esempi th:nth-child(5),.pv-esempi td:nth-child(5){display:none}
  .pv-incl{grid-template-columns:minmax(0,1fr)}
}

/* ----- Preventivo outsourcing contabilità — /prodotti/outsourcing/preventivo-contabilita/ -----
   Stesso impianto pv- del preventivo paghe; qui i controlli in più: scelte a segmenti,
   elenco dei dichiarativi, ditte già aggiunte al preventivo. */
.pv [hidden]{display:none!important}
.pv-campo{border:0;margin:0 0 22px;padding:0;min-width:0}
.pv-campo legend{padding:0;margin-bottom:10px;font-size:1.02rem;font-weight:700;color:var(--navy)}
.pv-campo .pv-hint{margin:8px 0 0}
.pv-seg{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pv-seg-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pv-in .pv-seg input,.pv-in .pv-seg input:disabled{position:absolute;opacity:0;pointer-events:none}
.pv-seg label{display:flex;align-items:center;justify-content:center;text-align:center;min-height:50px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--bgSoft);font-size:.9rem;font-weight:600;line-height:1.25;color:var(--navy);cursor:pointer;transition:background .15s,border-color .15s}
.pv-seg label:hover{border-color:var(--osp-deep)}
.pv-seg input:checked+label{background:var(--osp-glow);border-color:var(--osp-deep)}
.pv-seg input:focus-visible+label{outline:2.5px solid var(--osp-deep);outline-offset:2px}
.pv-seg input:disabled+label{opacity:.42;cursor:default;border-color:var(--line)}
.pv-fasce-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pv-opz{margin-left:6px;font-family:var(--font-mono);font-size:.7rem;font-weight:500;color:var(--grey)}
.pv-checks{display:flex;flex-direction:column;gap:6px}
.pv-checks label{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:12px;font-size:.93rem;line-height:1.35;color:var(--ink);cursor:pointer}
.pv-checks label:hover{border-color:var(--line)}
.pv-checks input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--osp-deep)}
.pv-checks span{flex:1 1 auto}
.pv-checks b{font-family:var(--font-mono);font-size:.88rem;color:var(--navy);white-space:nowrap}
.pv-sel select{flex:0 1 210px;min-width:0;font:inherit;font-size:.9rem;color:var(--ink);background:var(--bgSoft);border:1px solid var(--line);border-radius:9px;padding:7px 10px}
label.pv-sub{display:block}
.pv-step-s{max-width:230px;grid-template-columns:48px minmax(0,1fr) 48px}
.pv-step-s input{font-size:1.4rem;padding:6px 8px}
.pv-step-s button{font-size:1.4rem}
.pv-add{width:100%;justify-content:center;margin-top:22px}
.pv-avviso{min-height:1.3em;margin:10px 0 0;font-size:.88rem;font-weight:600;color:var(--osp-deep)}
.pv-salvate{padding:0 24px 8px}
.pv-salvate p{margin:0 0 4px;font-family:var(--font-mono);font-size:.7rem;color:var(--grey)}
.pv-salvate ul{list-style:none;margin:0;padding:0}
.pv-salvate li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:baseline;padding:9px 0;border-top:1px solid var(--line-soft);font-size:.88rem;color:var(--ink)}
.pv-salvate b{font-family:var(--font-mono);color:var(--navy);white-space:nowrap}
.pv-salvate button{border:0;background:none;padding:0;font:inherit;font-size:.82rem;font-weight:600;color:var(--osp-deep);text-decoration:underline;cursor:pointer}
.pv-voci th small{display:block;margin-top:3px;font-family:var(--font-display);font-size:.78rem;font-weight:400;line-height:1.4;color:var(--grey)}
.pv-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pv-due{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 44px}
.pv-due .pv-incl{grid-template-columns:minmax(0,1fr)}
.pv-incl .pv-no svg{stroke:var(--grey)}
.pv-table th small{display:block;margin-top:2px;font-size:.8rem;font-weight:400;color:var(--grey)}
.pv-esempi-c td:nth-child(3){font-weight:700;color:var(--navy)}
.pv-table th small.pv-solo-s{display:none;font-family:var(--font-mono);font-size:.74rem}
@media(max-width:900px){
  .pv-grid-2{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:700px){
  .pv-due{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:560px){
  .pv-seg{grid-template-columns:minmax(0,1fr)}
  .pv-seg-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pv-seg label{min-height:44px}
  .pv-fasce-4{grid-template-columns:minmax(0,1fr)}
  .pv-salvate{padding:0 16px 8px}
  .pv-dich{font-size:.8rem;table-layout:fixed}
  .pv-dich th,.pv-dich td{padding:10px 3px}
  .pv-dich th:first-child{width:35%}
  .pv-dich thead th{font-size:.62rem;text-transform:capitalize}
  .pv-dich td{font-size:.74rem}
  .pv-solo-l{display:none}
  .pv-table th small.pv-solo-s{display:block}
  .pv-esempi-c td{font-size:.8rem}
  .pv-esempi-c th:nth-child(2),.pv-esempi-c td:nth-child(2){display:none}
}
@media(max-width:360px){
  .pv-voci-3{font-size:.74rem}
  .pv-voci-3 th,.pv-voci-3 td{padding:10px 3px}
  .pv-dich td{font-size:.68rem}
  .pv-dich th:first-child{width:31%}
  .pv-esempi-c th:nth-child(4),.pv-esempi-c td:nth-child(4){display:none}
}

/* ----- Blog — tabelle dei prezzi negli articoli (.t-prezzi) e link in fondo alle card (.vs-go) -----
   Numeri a destra in mono; su mobile le colonne .no-s spariscono e il loro contenuto
   passa sotto l'intestazione di riga, in uno <small class="solo-s">. */
.prose table.t-prezzi td,.prose table.t-prezzi thead th{text-align:right}
.prose table.t-prezzi thead th:first-child{text-align:left}
.prose table.t-prezzi td{font-family:var(--font-mono);font-size:.92rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.prose table.t-prezzi tbody th{font-family:inherit;font-size:inherit;font-weight:600;color:var(--navy);background:none;text-align:left}
.prose table.t-prezzi tbody th small{display:block;margin-top:2px;font-size:.82rem;font-weight:400;color:var(--grey)}
.prose table.t-prezzi .t-tot{font-weight:700;color:var(--navy)}
.prose table.t-prezzi small.solo-s{display:none;font-family:var(--font-mono);font-size:.76rem}
.prose .t-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:6px}
.prose .t-duo h3{margin-top:18px}
.prose .t-duo table{margin-bottom:14px}
.vs-card .vs-go{margin-top:14px!important}
.vs-card .vs-go a{font-weight:600}
@media(max-width:600px){
  .prose .t-duo{grid-template-columns:minmax(0,1fr)}
  .prose table.t-prezzi th,.prose table.t-prezzi td{padding:10px 5px}
  .prose table.t-prezzi thead th{font-size:.72rem}
  .prose table.t-prezzi td{font-size:.78rem}
  .prose table.t-prezzi .no-s{display:none}
  .prose table.t-prezzi small.solo-s{display:block}
}
@media(max-width:360px){
  .prose table.t-prezzi .no-xs{display:none}
}

/* Blog — tabelle di confronto a cinque colonne: scorrono in orizzontale fino a 860px */
@media (max-width:860px){.table-scroll.t-wide{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll.t-wide table{min-width:820px}}
/* Blog — tabella prodotto / prezzo / prova a tre colonne, senza scorrimento su mobile */
.prose table.t-listino td small{display:block;margin-top:2px;font-size:.82rem;color:var(--grey)}
@media (max-width:600px){.prose table.t-listino{font-size:.9rem}.prose table.t-listino th,.prose table.t-listino td{padding:9px 8px}}

/* ===== Contify AB — motion nella hero (10/2026) =====
   /prodotti/software-analisi-bilancio/: la hero è il video (26 s, muto, in loop, parte da solo, nessun comando);
   titolo e CTA stanno nella sezione .ab-intro subito sotto. Il video parte sotto il menu fisso ed è SEMPRE largo
   quanto la finestra, senza bande ai lati: se la finestra è bassa, il fondo del video (la cornice) scende sotto
   la piega. Unica eccezione i monitor ultrawide (oltre 21:9), dove a tutta larghezza sarebbe alto una volta e
   mezza lo schermo: lì si centra su fondo #01262A, lo stesso colore dei bordi del video.
   16:9 (1920x1080) da 641px, 9:16 leggera (720x1280) sugli smartphone: il file lo sceglie <source media>.
   object-fit:cover e non contain: con il riquadro già nelle proporzioni del video il risultato è identico,
   ma non restano filetti di 1px ai bordi per gli arrotondamenti dei sub-pixel. */
.ab-stage{--nav-h:70px;padding-top:var(--nav-h);background:#01262A}
.ab-stage-frame{position:relative;width:100%;aspect-ratio:16/9;margin:0 auto;background:#01262A;overflow:hidden}
.ab-reel-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.ab-intro.page-hero{padding:clamp(52px,8vh,92px) 0 clamp(46px,7vh,82px)}
@media(min-aspect-ratio:21/9) and (min-width:641px){
  .ab-stage-frame{width:calc(100vh * 16 / 9);width:calc(100svh * 16 / 9)}
}
@media(max-width:640px){
  .ab-stage-frame{aspect-ratio:9/16}
}

/* ===== Neura Studio — motion nella hero (10/2026) =====
   /prodotti/intelligenza-artificiale/neura-studio/: stesso schema di Contify AB (vedi sopra). La hero è il video
   (33 s, muto, in loop, parte da solo, nessun comando); titolo e CTA stanno nella sezione .ns-intro subito sotto.
   Fondo #0b0f17 (--neura-ink), lo stesso dei bordi del video, per i monitor oltre 21:9. */
.ns-stage{--nav-h:70px;padding-top:var(--nav-h);background:#0b0f17}
.ns-stage-frame{position:relative;width:100%;aspect-ratio:16/9;margin:0 auto;background:#0b0f17;overflow:hidden}
.ns-reel-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.ns-intro.page-hero{padding:clamp(52px,8vh,92px) 0 clamp(46px,7vh,82px)}
@media(min-aspect-ratio:21/9) and (min-width:641px){
  .ns-stage-frame{width:calc(100vh * 16 / 9);width:calc(100svh * 16 / 9)}
}
@media(max-width:640px){
  .ns-stage-frame{aspect-ratio:9/16}
}

/* ===== Home — motion nella hero (11/10/2026) =====
   /: stesso schema di Contify AB e Neura Studio (vedi sopra). La hero è il video «Facciamo AI di mestiere»
   (42 s, muto, in loop, parte da solo, nessun comando); titolo, CTA e chip stanno nella sezione .hm-intro subito sotto.
   Fondo #01262A, lo stesso dei bordi del video, per i monitor oltre 21:9. */
.hm-stage{--nav-h:70px;padding-top:var(--nav-h);background:#01262A}
.hm-stage-frame{position:relative;width:100%;aspect-ratio:16/9;margin:0 auto;background:#01262A;overflow:hidden}
.hm-reel-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.hm-intro.page-hero{padding:clamp(52px,8vh,92px) 0 clamp(46px,7vh,82px)}
@media(min-aspect-ratio:21/9) and (min-width:641px){
  .hm-stage-frame{width:calc(100vh * 16 / 9);width:calc(100svh * 16 / 9)}
}
@media(max-width:640px){
  .hm-stage-frame{aspect-ratio:9/16}
}

/* ===== Argo Manager — motion nella hero (11/10/2026) =====
   /prodotti/argo-manager/: stesso schema di Contify AB, Neura Studio e home (vedi sopra). La hero è il video
   (36 s, muto, in loop, parte da solo, nessun comando) con i colori della pagina; percorso, titolo, CTA e chip
   stanno nella sezione .ar-intro subito sotto. Fondo var(--bg) #F5F7FA, lo stesso del video e della sezione sotto,
   anche per i monitor oltre 21:9. */
.ar-stage{--nav-h:70px;padding-top:var(--nav-h);background:var(--bg)}
.ar-stage-frame{position:relative;width:100%;aspect-ratio:16/9;margin:0 auto;background:var(--bg);overflow:hidden}
.ar-reel-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.ar-intro.page-hero{padding:clamp(52px,8vh,92px) 0 clamp(46px,7vh,82px)}
@media(min-aspect-ratio:21/9) and (min-width:641px){
  .ar-stage-frame{width:calc(100vh * 16 / 9);width:calc(100svh * 16 / 9)}
}
@media(max-width:640px){
  .ar-stage-frame{aspect-ratio:9/16}
}

/* ===== Contify Web — motion nella hero (12/10/2026) =====
   /prodotti/intelligenza-artificiale/contify-web/: stesso schema di Contify AB, Neura Studio, home e Argo (vedi sopra).
   La hero è il video (33 s, muto, in loop, parte da solo, nessun comando): un portatile in una stanza buia Pantone 7474 C;
   percorso, titolo, CTA e chip stanno nella sezione .cw-intro subito sotto. Fondo #01262A, lo stesso dei bordi del video,
   per i monitor oltre 21:9. */
.cw-stage{--nav-h:70px;padding-top:var(--nav-h);background:#01262A}
.cw-stage-frame{position:relative;width:100%;aspect-ratio:16/9;margin:0 auto;background:#01262A;overflow:hidden}
.cw-reel-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.cw-intro.page-hero{padding:clamp(52px,8vh,92px) 0 clamp(46px,7vh,82px)}
@media(min-aspect-ratio:21/9) and (min-width:641px){
  .cw-stage-frame{width:calc(100vh * 16 / 9);width:calc(100svh * 16 / 9)}
}
@media(max-width:640px){
  .cw-stage-frame{aspect-ratio:9/16}
}

/* ===== Contify Incognito — motion nella hero (11/10/2026) =====
   /prodotti/contify-incognito/: qui la hero resta com'è (percorso, titolo, testo, CTA e chip a sinistra) e la motion
   occupa la colonna destra, prima vuota. Video 3:4 (1080x1440, 28 s, muto, in loop, parte da solo, nessun comando):
   card scura Pantone 7474 C con angoli arrotondati, come il riquadro «Il problema» subito sotto. Da 1120px in su sta
   a destra del testo, centrata in altezza; sotto scende dopo i chip, larga al massimo 440px. */
.ci-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,5vw,44px)}
.ci-hero-media{position:relative;width:100%;max-width:440px;aspect-ratio:3/4;border-radius:26px;overflow:hidden;background:#023C3E;
  box-shadow:0 34px 80px -40px rgba(14,42,42,.55),0 0 0 1px rgba(14,42,42,.06)}
.ci-hero-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
@media(min-width:1120px){
  .ci-hero .wrap{grid-template-columns:minmax(0,60ch) minmax(0,1fr);align-items:center;gap:44px}
  .ci-hero-media{justify-self:end}
}

/* ===== Blog — card prodotto con motion nella hero dell'articolo (12/10/2026; riusata il 20/10 in blog/miglior-software-antiriciclaggio-commercialisti per Contify AR) =====
   blog/sito-web-studio-commercialista: accanto al titolo (da 1120px) o sotto (fino a 1119px) una card scura con la motion
   di Contify Web e le CTA. Il video si scarica solo quando la card entra nello schermo (blog-reel.js); senza JS resta il
   poster, che è un link alla pagina del servizio. Stessa griglia a due colonne della hero di Contify Incognito. */
.bl-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,5vw,44px)}
.bl-product{width:100%;max-width:560px;border-radius:var(--r);overflow:hidden;background:var(--navy);color:#fff;
  box-shadow:0 34px 80px -40px rgba(14,42,42,.55),0 0 0 1px rgba(14,42,42,.06)}
.bl-reel{display:block;aspect-ratio:16/9;background:#01262A}
.bl-reel video{display:block;width:100%;height:100%;object-fit:cover}
.bl-product-body{padding:22px 24px 24px}
.bl-kicker{display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:10px}
.bl-product-title{font-size:22px;line-height:1.25;font-weight:700;color:#fff;margin:0 0 10px}
.bl-product-title em{font-style:normal;color:var(--mint)}
.bl-product-text{font-size:15px;line-height:1.55;color:rgba(255,255,255,.82);margin:0}
.bl-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.bl-cta .btn{padding:13px 16px;font-size:.9rem}
@media(min-width:1120px){
  .bl-hero .wrap{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:44px}
  .bl-product{justify-self:end;max-width:480px}
}

/* ===== Neura Studio — NEURA in 3D (14/10/2026) =====
   /prodotti/intelligenza-artificiale/neura-studio/, subito dopo «Cos'è»: testo a sinistra e il modello 3D di NEURA a destra
   (da 960px), sotto il testo fino a 959px. neura-360.js disegna su fondo trasparente dentro .ns-360-view (quadrato) e al primo
   disegno aggiunge .n360-ready: da lì l'immagine di riserva (per chi non ha JS o WebGL) si nasconde. Si gira trascinando in
   orizzontale; sul telefono lo scorrimento verticale della pagina resta libero (touch-action: pan-y sul canvas). */
.ns-360-sec{padding-top:0}
.ns-360-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center}
.ns-360-sec .chip{color:var(--neura-sky-d);background:color-mix(in srgb,var(--neura-sky) 12%,transparent);border-color:color-mix(in srgb,var(--neura-sky) 34%,transparent)}
.ns-360{margin:0;width:100%;max-width:560px;justify-self:center;display:grid;gap:6px}
.ns-360-view{position:relative;width:100%;aspect-ratio:1/1}
.ns-360-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.ns-360-view.n360-ready .ns-360-poster{display:none}
.ns-360-hint{display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--grey)}
.ns-360-hint svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--neura-sky-d);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:960px){
  .ns-360-grid{grid-template-columns:minmax(0,1fr) minmax(0,540px)}
  .ns-360{justify-self:end}
}

/* ===== Blog — NEURA in 3D nella hero dell'articolo sull'AI privata (18/10/2026) =====
   blog/ai-privata-commercialisti-aziende: la card .bl-product nei colori Neura, con in testa il modello 3D di NEURA della pagina
   Neura Studio (neura-360.js, stesse classi .ns-360-view/.ns-360-poster). blog-neura-360.js accende la rotazione continua
   solo se l'utente non ha chiesto meno animazioni; si gira anche trascinando. Senza JS o WebGL resta l'immagine. */
.bl-product.bl-neura{background:radial-gradient(440px 300px at 50% 34%,rgba(14,165,233,.22),transparent 72%),linear-gradient(165deg,var(--neura-ink),var(--neura-ink-2) 62%,#0c1d26);
  box-shadow:0 34px 80px -40px rgba(11,15,23,.7),0 0 0 1px rgba(14,165,233,.14)}
.bl-n360{margin:0;padding:10px 12px 0}
.bl-n360 .ns-360-view{aspect-ratio:5/4}
.bl-n360-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:2px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.bl-n360-hint svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--neura-teal);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bl-neura .bl-product-body{padding-top:14px}
.bl-neura .bl-kicker{color:var(--neura-teal)}
.bl-neura .bl-product-title em{background:linear-gradient(110deg,var(--neura-sky),var(--neura-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.bl-neura .btn-ghost.on-dark{border-color:rgba(45,212,191,.42)}
.bl-neura .btn-ghost.on-dark:hover{border-color:var(--neura-teal);color:var(--neura-teal)}

/* ===== Contify AR — pagina prodotto /prodotti/contify-ar/ (19/10/2026) =====
   Prefisso aml- (ar- è già di Argo Manager). Schermate reali dello Studio Collaudo (static/assets/img/ar-*.png, 1280×820)
   dentro cornici .aml-shot; percorso «Come lavora» in cinque passi .aml-steps (testo e schermata alternati da 900px);
   confronto software/servizio .aml-vs, usato anche nella pagina del servizio; tabella «Cosa include» .aml-table che
   sotto i 600px diventa un elenco (niente scorrimento orizzontale); riquadro prezzo .aml-price sopra .plan.featured. */
.aml-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,52px);align-items:center}
.aml-hero .sec-head{max-width:none}
.aml-hero .lead{max-width:56ch}
.aml-hero-art{margin:0;width:100%;max-width:640px;justify-self:center}
.aml-hero-art figcaption{margin-top:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;color:var(--grey);text-align:center}
.aml-shot{margin:0;border-radius:14px;background:#fff;border:1px solid var(--bd);box-shadow:0 34px 70px -38px rgba(14,42,42,.5);overflow:hidden}
.aml-shot-bar{display:flex;align-items:center;gap:7px;padding:9px 12px;background:#eef3f3;border-bottom:1px solid var(--bd)}
.aml-shot-bar i{width:9px;height:9px;border-radius:50%;background:#cfdcdb;display:block;flex:none}
.aml-shot-bar span{flex:1;margin-left:6px;font-family:var(--font-mono);font-size:.66rem;color:var(--grey);background:#fff;border:1px solid var(--line-soft);border-radius:6px;padding:3px 10px;text-align:center;max-width:380px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aml-shot img{width:100%;height:auto;display:block}
@media(min-width:1024px){
  .aml-hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,560px)}
  .aml-hero-art{justify-self:end}
}
.aml-steps{display:grid;gap:clamp(40px,6vw,72px);margin-top:18px}
.aml-step{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.aml-step-n{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--pri);color:#fff;font-family:var(--font-mono);font-size:.9rem;font-weight:700}
.aml-step h3{font-size:clamp(1.28rem,2.2vw,1.62rem);margin:14px 0 10px;letter-spacing:-.02em;color:var(--navy);line-height:1.2}
.aml-step p{color:var(--grey);line-height:1.64;margin:0 0 10px}
.aml-norm{display:inline-block;margin-top:4px;font-family:var(--font-mono);font-size:.74rem;color:var(--teal-deep);background:var(--paper);border:1px solid var(--bd);border-radius:8px;padding:6px 10px}
@media(min-width:900px){
  .aml-step{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,56px)}
  .aml-step:nth-child(even) .aml-step-text{order:2}
}
.prose table.aml-table td:first-child{font-weight:600;color:var(--navy);width:21%}
.prose table.aml-table td:last-child{font-family:var(--font-mono);font-size:.78rem;color:var(--teal-deep);white-space:nowrap}
@media(max-width:600px){
  .prose table.aml-table thead{display:none}
  .prose table.aml-table,.prose table.aml-table tbody,.prose table.aml-table tr,.prose table.aml-table td{display:block;width:auto}
  .prose table.aml-table tr{padding:12px 0 14px;border-bottom:1px solid var(--line-soft)}
  .prose table.aml-table td{padding:2px 0;border:0}
  .prose table.aml-table td:first-child{width:auto;font-size:1.02rem;margin-bottom:4px}
  .prose table.aml-table td:last-child{white-space:normal;margin-top:6px}
}
.aml-vs{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:8px}
.aml-vs-card{background:var(--bgCard);border:1px solid var(--bd);border-radius:18px;padding:26px 26px 24px;display:flex;flex-direction:column}
.aml-vs-card.is-this{border-color:var(--pri);box-shadow:0 16px 44px -24px rgba(51,153,153,.45)}
.aml-vs-kind{font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--teal-deep)}
.aml-vs-card h3{font-size:1.3rem;margin:8px 0 14px;color:var(--navy);letter-spacing:-.01em}
.aml-vs-card dl{margin:0;display:grid;gap:12px}
.aml-vs-card dt{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--txM);margin-bottom:3px}
.aml-vs-card dd{margin:0;color:var(--tx);font-size:.96rem;line-height:1.55}
.aml-vs-card .btn{margin-top:22px;align-self:flex-start}
.aml-vs-both{margin:20px 0 0;padding:16px 20px;border-radius:14px;background:var(--light);color:var(--ink);font-size:.96rem;line-height:1.55}
.aml-vs-both strong{color:var(--teal-deep)}
@media(min-width:760px){.aml-vs{grid-template-columns:1fr 1fr;gap:22px}}
.aml-price{max-width:640px;margin:26px auto 0}
.aml-price .plan{padding:38px 32px 32px}
.aml-price .plan-feats{grid-template-columns:1fr}
.aml-was{display:block;font-family:var(--font-mono);font-size:.76rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep);margin:4px 0 2px}
.aml-was s{color:var(--grey);font-weight:500;margin-right:8px}
.aml-price-rows{margin:0 0 26px;display:grid;gap:10px}
.aml-price-rows div{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:12px 14px;border-radius:12px;background:var(--light);font-size:.94rem}
.aml-price-rows dt{color:var(--tx);font-weight:600}
.aml-price-rows dd{margin:0;font-family:var(--font-mono);font-weight:700;color:var(--teal-deep);white-space:nowrap}
.aml-price-foot{margin:14px 0 0;text-align:center;font-size:.86rem;color:var(--txM);line-height:1.5}
.aml-price-foot a{color:var(--teal-deep);font-weight:600;text-decoration:underline}
.aml-price-foot a:hover{color:var(--ink)}
@media(max-width:520px){
  .aml-price .plan{padding:30px 20px 24px}
  .aml-price-rows div{flex-direction:column;gap:4px}
  .aml-price-rows dd{white-space:normal}
}
.faq p a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:2px}
/* Demo in 90 secondi (video con comandi, poster, nella cornice .aml-shot) */
.aml-demo{max-width:1120px;margin:0 auto}
.aml-demo video{width:100%;height:auto;aspect-ratio:16/9;display:block;background:#01262A}
.aml-hero .hero-note{max-width:56ch}
.aml-btn-play svg{width:15px;height:15px;fill:currentColor;margin-right:2px}
.aml-motivo .aq-tipo{scroll-margin-top:160px}
.aml-demo-note{margin:14px auto 0;max-width:1120px;text-align:center;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em;color:var(--grey)}
/* DPA Contify AR — tabelle degli allegati (20/10/2026) */
.prose table.t-dpa{font-size:.92rem}
.prose table.t-dpa th[scope=row]{width:24%;min-width:150px;vertical-align:top;font-family:inherit;font-size:inherit;font-weight:600;color:var(--navy);background:none}
.prose table.t-dpa td{vertical-align:top}
.t-dpa-wrap{margin:8px 0 22px}.t-dpa-wrap table{margin:0}
@media (max-width:600px){
  .prose table.t-dpa th[scope=row]{min-width:120px}
  .prose table.t-kv,.prose table.t-kv tbody,.prose table.t-kv tr{display:block;width:100%}
  .prose table.t-kv th[scope=row],.prose table.t-kv td{display:block;width:auto;min-width:0;padding:8px 0}
  .prose table.t-kv th[scope=row]{border-bottom:none;padding-bottom:0;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--teal-deep)}
  .prose table.t-kv td{border-bottom:1px solid var(--line-soft);padding-top:4px;padding-bottom:14px}
}

/* ===== Contify Marketplace — voce «Nuovo» nel menu e sezione dell'hub /prodotti/ (21/10/2026) ===== */
.nav-dd-new{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:999px;background:var(--light);border:1px solid var(--bd);font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);vertical-align:2px;line-height:1.4}
@media(max-width:960px){.nav-dd-new{display:none}}

/* ===== Contenzioso Tributario (abacusTax) — /prodotti/contenzioso-tributario/ (21/10/2026) =====
   Primo prodotto di Contify Marketplace. Pagina costruita dal mockup di abacusTax (Pietro Vignati, 20/10/2026) sui
   componenti del sito; prefisso abt-. Le parole chiave dei titoli sono <em> (gradiente teal statico nelle sezioni,
   shimmer del sito nell'h1, mint nella CTA band). Riquadro navy nella hero perché il logo abacusTax è bianco e va solo
   su fondo scuro. Il processo in cinque fasi è contenzioso-tributario.js: le schermate imitano l'app abacusTax, quindi
   tengono i colori dell'app (blu/smeraldo) dentro le finestre; cornice, linguette e didascalie usano i token del sito. */
.abt-page .sec-head h2 em{font-style:normal;color:var(--teal-deep);background:linear-gradient(90deg,var(--teal-deep),var(--pri));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.abt-page .cta-band h2 em{font-style:normal;color:var(--mint)}
.abt-page .sec-head h2,.abt-page .cta-band h2{text-wrap:balance}
.abt-nowrap{white-space:nowrap}

/* Hero: testo a sinistra, riquadro navy con logo e processo a destra */
.abt-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,4vw,52px);align-items:start}
.abt-hero .sec-head{max-width:none}
.abt-hero .lead{max-width:56ch}
.abt-hero .hero-note{max-width:56ch;text-wrap:pretty}
.abt-trust{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;font-size:.92rem;color:var(--ink)}
.abt-trust li{display:inline-flex;align-items:center;gap:8px}
.abt-trust li::before{content:"";flex:0 0 16px;height:16px;border-radius:50%;background:var(--pri) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23fff'%3E%3Cpath fill-rule='evenodd' d='M16.7 5.3a1 1 0 010 1.4l-7.5 7.5a1 1 0 01-1.4 0L3.3 9.7a1 1 0 111.4-1.4l3.8 3.8 6.8-6.8a1 1 0 011.4 0z' clip-rule='evenodd'/%3E%3C/svg%3E") center/10px no-repeat}
@media(min-width:1024px){.abt-hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,520px)}}
@media(min-width:1180px){.abt-hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,580px)}}
.abt-panel{position:relative;width:100%;max-width:640px;justify-self:center;border-radius:22px;padding:26px 24px 22px;color:#fff;
  background:radial-gradient(560px 300px at 88% -12%,rgba(51,153,153,.42),transparent 62%),linear-gradient(160deg,var(--navy),var(--navy-2));
  box-shadow:0 34px 70px -38px rgba(14,42,42,.6)}
@media(min-width:1024px){.abt-panel{justify-self:end}}
.abt-brand{display:grid;justify-items:center;gap:10px;margin-bottom:18px}
.abt-brand a{display:block;border-radius:8px;transition:opacity .2s,transform .2s}
.abt-brand a:hover{opacity:.85;transform:translateY(-1px)}
.abt-brand a:focus-visible{outline:2px solid var(--mint);outline-offset:6px}
.abt-brand img{width:200px;height:auto}
/* Badge «Contify è Premium Partner» (pagina Contenzioso Tributario e card dell'articolo): pillola mint con l'anello del logo */
.partner-badge{display:inline-flex;align-items:center;gap:9px;padding:4px 14px 4px 4px;border-radius:999px;background:var(--mint);color:var(--navy);font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1;white-space:nowrap;box-shadow:0 10px 26px -12px rgba(143,240,221,.8),inset 0 0 0 1px rgba(255,255,255,.4)}
.partner-badge b{font-weight:800}
.partner-dot{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;flex:0 0 26px}
.partner-ring{display:block}
.bl-product .partner-badge{margin-bottom:14px}
.abt-brand::after{content:"";width:100%;height:1px;margin-top:8px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.24) 20%,rgba(255,255,255,.24) 80%,transparent)}

/* Processo: cornice, linguette, didascalia */
.abt-stepper{--abt-line:rgba(255,255,255,.12);--abt-fill:rgba(255,255,255,.05);--abt-fill-on:rgba(255,255,255,.13);--abt-ring-on:rgba(143,240,221,.42);--abt-text:#fff;--abt-sub:rgba(255,255,255,.74);--abt-st-ms:2500ms;position:relative;min-width:0}
.abt-st-static{list-style:none;display:grid;gap:8px}
.abt-st-static li{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--abt-fill);box-shadow:inset 0 0 0 1px var(--abt-line);font-size:.9rem;line-height:1.5;color:var(--abt-sub)}
.abt-st-static b{display:block;color:#fff;font-weight:600}
.abt-st-static .abt-st-tag{margin-left:auto;margin-top:2px}
.abt-st-num{flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:.76rem;font-weight:600;background:var(--abt-fill-on);color:var(--abt-text);box-shadow:inset 0 0 0 1px var(--abt-line);font-variant-numeric:tabular-nums}
.abt-st-tag{flex-shrink:0;font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap}
.abt-st-tag.abt-you{background:rgba(255,255,255,.1);color:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.abt-st-tag.abt-ai{background:rgba(143,240,221,.12);color:var(--mint);box-shadow:inset 0 0 0 1px rgba(143,240,221,.32)}
.abt-st-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.abt-st-tabs::-webkit-scrollbar{display:none}
.abt-st-tab{position:relative;overflow:hidden;flex:1 0 auto;display:flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:12px;border:0;background:var(--abt-fill);box-shadow:inset 0 0 0 1px var(--abt-line);color:var(--abt-sub);font:600 .82rem/1.2 var(--font-display);white-space:nowrap;text-align:left;cursor:pointer;transition:background .3s,box-shadow .3s}
.abt-st-tab .abt-st-num{flex-basis:24px;height:24px;font-size:.7rem}
.abt-st-tab[aria-selected="true"]{background:var(--abt-fill-on);box-shadow:inset 0 0 0 1px var(--abt-ring-on);color:var(--abt-text)}
.abt-st-tab[aria-selected="true"] .abt-st-num{background:var(--mint);color:var(--navy);box-shadow:none}
.abt-st-lbl{display:none}
.abt-st-tab[aria-selected="true"] .abt-st-lbl{display:inline}
.abt-st-tab:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.abt-st-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--mint);transform-origin:left;animation:abtProgress var(--abt-st-ms) linear forwards}
@keyframes abtProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.abt-st-enter{animation:abtEnter .7s ease-out}
@keyframes abtEnter{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
.abt-st-caption{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-size:.92rem;line-height:1.5;color:var(--abt-sub);min-height:3.2em}
.abt-st-caption .abt-st-tag{margin-top:2px}
.abt-st-stage{margin-top:4px}
.abt-st-frame{min-height:calc(var(--abt-st-h,460px) + 48px);display:flex;align-items:flex-start;justify-content:center;padding-top:28px}
.abt-st-probe{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none}
.abt-st-probe > *,.abt-st-frame > *{width:100%;max-width:560px}
@media(max-width:1023px){.abt-st-frame{min-height:0}}

/* Schermate del processo (stile app abacusTax) */
.abt-pi{position:relative;color:#0f172a;font-family:var(--font-display);line-height:1.6;text-align:left}
.abt-win{margin:0;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 24px 60px -20px rgba(2,8,23,.45),0 0 0 1px rgba(15,23,42,.08)}
.abt-win-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid #e2e8f0;background:rgba(241,245,249,.9)}
.abt-win-bar i{width:8px;height:8px;border-radius:50%;background:#cbd5e1}
.abt-win-title{margin-left:8px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;color:#64748b}
.abt-win-act{display:flex;align-items:center;gap:4px;font-size:10.5px;font-weight:500;color:#64748b;flex-shrink:0}
.abt-co{position:absolute;z-index:2;border-radius:12px;background:#fff;padding:12px;color:#0f172a;box-shadow:0 20px 45px -14px rgba(2,8,23,.6),0 0 0 1px rgba(0,0,0,.05)}
.abt-co-corner{right:-20px;bottom:-20px}
.abt-co-row{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.35}
.abt-co b{display:block;font-weight:600}
.abt-co-ok{color:#047857;font-weight:600;display:block}
.abt-co-mut{color:#64748b;display:block}
.abt-cal{width:56px;flex-shrink:0;overflow:hidden;border-radius:8px;text-align:center;box-shadow:0 0 0 1px #a7f3d0}
.abt-cal span{display:block;background:#059669;padding:2px 0;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff}
.abt-cal strong{display:block;background:#fff;padding:4px 0;font-size:22px;font-weight:700;line-height:1.2;color:#0f172a}
.abt-fb{display:inline-flex;height:16px;align-items:center;justify-content:center;border-radius:3px;padding:0 4px;font-size:8.5px;font-weight:700;color:#fff}
.abt-fb-w{background:#2563eb}.abt-fb-p{background:#e11d48}
.abt-bar{display:block;height:6px;border-radius:999px;background:#e2e8f0}
.abt-ic{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
/* avviso fac-simile */
.abt-fx{position:relative;border-radius:6px;background:#fff;box-shadow:0 18px 36px -14px rgba(2,8,23,.55),0 0 0 1px #e2e8f0}
.abt-fx-sm{padding:12px 12px 20px}.abt-fx-md{padding:16px 20px 24px}
.abt-fx-corner{position:absolute;right:0;top:0;border-bottom-left-radius:6px;background:#e2e8f0;width:16px;height:16px}
.abt-fx-md .abt-fx-corner{width:20px;height:20px}
.abt-fx-ente{font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#334155;font-size:7px}
.abt-fx-demo{color:#94a3b8;font-size:6px}
.abt-fx-t{text-align:center;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#0f172a;margin-top:8px;font-size:8px}
.abt-fx-md .abt-fx-ente{font-size:8.5px}.abt-fx-md .abt-fx-demo{font-size:7.5px}.abt-fx-md .abt-fx-t{font-size:10px;margin-top:12px}
.abt-fx-lines{position:relative;display:grid;gap:6px;margin-top:8px}
.abt-fx-md .abt-fx-lines{gap:8px;margin-top:12px}
.abt-fx-l{position:relative}
.abt-fx-l .abt-bar{height:4px}.abt-fx-md .abt-fx-l .abt-bar{height:6px}
.abt-fx-l .abt-bar-mk{background:#fcd34d}
.abt-fx-n{position:absolute;left:-16px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#fbbf24;font-size:8.5px;font-weight:700;color:#0f172a;box-shadow:0 0 0 2px #fff}
.abt-fx-pdf{position:absolute;left:6px;bottom:6px;border-radius:2px;background:#e11d48;padding:0 2px;font-size:6.5px;font-weight:700;color:#fff}
.abt-fx-md .abt-fx-pdf{left:10px;bottom:10px;padding:0 4px;font-size:8px}
/* fase 1 */
.abt-f1-pad{padding:16px 16px 8px}
.abt-drop{display:flex;min-height:150px;align-items:center;border-radius:12px;border:2px dashed #93c5fd;background:rgba(239,246,255,.7);padding:20px 44% 20px 20px}
.abt-drop-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;color:#2563eb;font-size:20px;box-shadow:0 0 0 1px #bfdbfe}
.abt-drop-t{margin-top:12px;font-size:14px;font-weight:600;line-height:1.35}
.abt-drop-s{margin-top:4px;font-size:12px;line-height:1.35;color:#64748b}
.abt-crop{position:relative;width:100%;overflow:hidden;aspect-ratio:770/184;margin-bottom:12px}
.abt-crop img{position:absolute;max-width:none;width:142.08%;height:auto;left:-23.38%;top:-482.6%;user-select:none}
.abt-f1-fx{position:absolute;right:9%;top:-20px;width:34%;max-width:150px;transform:rotate(7deg)}
.abt-f1-arrow{position:absolute;right:40%;top:120px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#2563eb;color:#fff;font-size:16px;box-shadow:0 0 0 4px #eff6ff,0 8px 18px rgba(0,0,0,.2)}
/* fase 2 */
.abt-f2{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:center;padding:20px;background:#f8fafc}
.abt-f2 .abt-fx{width:100%;max-width:220px;margin:0 auto}
.abt-big{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.abt-big strong{font-size:28px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.abt-big span{font-size:13px;font-weight:600}
.abt-big em{margin-left:auto;font-style:normal;font-size:11px;color:#64748b}
.abt-vz{list-style:none;margin:12px 0 0;display:grid;gap:8px}
.abt-vz li{display:flex;align-items:flex-start;gap:10px;border-radius:8px;background:#fff;padding:10px;box-shadow:0 0 0 1px #e2e8f0}
.abt-vz-n{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fbbf24;font-size:11px;font-weight:700}
.abt-vz b{display:block;font-size:12.5px;font-weight:600;line-height:1.35}
.abt-vz small{font-size:11px;color:#64748b}
.abt-more{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11.5px;color:#64748b}
/* fase 3 */
.abt-f3{padding:16px 20px 0;background:#f8fafc}
.abt-sc-list{display:grid;gap:10px;margin-top:12px}
.abt-sc{border-radius:8px;background:#fff;padding:12px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 0 0 1px #e2e8f0}
.abt-sc-on{box-shadow:0 1px 2px rgba(0,0,0,.04),0 0 0 1px #6ee7b7}
.abt-sc-h{display:flex;align-items:center;gap:8px}
.abt-sc-box{flex:0 0 16px;height:16px;border-radius:4px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #cbd5e1;font-size:12px;color:#fff}
.abt-sc-on .abt-sc-box{background:#059669;box-shadow:none}
.abt-sc-auth{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;color:#1d4ed8}
.abt-sc-pc{flex-shrink:0;border-radius:999px;background:#ecfdf5;padding:2px 8px;font-size:10.5px;font-weight:700;color:#047857;box-shadow:inset 0 0 0 1px #a7f3d0}
.abt-sc-n{margin-top:4px;padding-left:24px;font-size:13.5px;font-weight:700}
.abt-sc-n span{font-weight:400;color:#94a3b8}
.abt-sc-q{margin:6px 0 0 24px;border-left:2px solid #6ee7b7;padding-left:8px;font-size:11.5px;font-style:italic;line-height:1.4;color:#475569}
.abt-sc-q mark{background:#d1fae5;color:#0f172a;border-radius:2px;padding:0 2px}
.abt-sc-stub{height:40px;border-radius:8px 8px 0 0;background:#fff;padding:12px 12px 0;box-shadow:0 0 0 1px #e2e8f0;-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent);display:flex;align-items:flex-start;gap:8px}
.abt-sc-stub i{display:block;height:16px;border-radius:4px}
/* fase 4 */
.abt-f4{padding:16px 20px 0;background:#f8fafc}
.abt-sheet{border-radius:6px 6px 0 0;background:#fff;padding:20px 20px 24px;font-family:Georgia,"Times New Roman",serif;font-size:11px;line-height:1.6;color:#334155;box-shadow:0 1px 2px rgba(0,0,0,.04),0 0 0 1px #e2e8f0}
.abt-sheet-t{text-align:center;font-size:13px;font-weight:700;letter-spacing:.3em;color:#0f172a}
.abt-sheet-s{text-align:center;font-size:10px;color:#64748b}
.abt-sheet dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;align-items:baseline;margin:16px 0 0}
.abt-sheet dt{font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0f172a}
.abt-sheet dd{margin:0;display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
.abt-sheet-sec{margin-top:16px}
.abt-sheet-sec > p:first-child{text-align:center;font-size:10px;font-weight:700;letter-spacing:.2em;color:#0f172a;margin-bottom:8px}
.abt-sheet-sec .abt-sheet-h{font-weight:600;color:#0f172a}
.abt-rows{display:grid;gap:6px}
.abt-r{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.abt-r .abt-bar{flex:1;min-width:32px}
.abt-vf{white-space:nowrap;border-radius:2px;background:#fef3c7;padding:0 4px;color:#78350f;box-shadow:inset 0 0 0 1px #fcd34d}
.abt-ct{white-space:nowrap;border-radius:2px;background:#ecfdf5;padding:0 4px;color:#065f46;box-shadow:inset 0 0 0 1px #a7f3d0}
.abt-pen{position:absolute;left:-16px;top:48px;z-index:2;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#059669;padding:4px 12px;font-family:var(--font-display);font-size:12px;font-weight:600;color:#fff;box-shadow:0 10px 20px rgba(0,0,0,.2)}
.abt-pen-in{display:none}
.abt-c4 strong{font-size:26px;font-weight:700;line-height:1;color:#b45309;font-variant-numeric:tabular-nums}
.abt-c4 p:first-child{display:flex;align-items:baseline;gap:6px;font-size:12px;font-weight:600}
.abt-c4 p + p{margin-top:4px;font-size:11px;color:#64748b}
/* fase 5 */
.abt-f5{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;padding:20px;background:#f8fafc}
.abt-card5{border-radius:8px;background:#fff;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 0 0 1px #e2e8f0}
.abt-card5-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.abt-rt{font-family:Georgia,serif;font-size:12px;font-weight:700;letter-spacing:.2em}
.abt-month{font-size:12.5px;font-weight:600}
.abt-month-ic{color:#94a3b8;font-size:16px;display:inline-flex}
.abt-okpill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:#ecfdf5;padding:2px 8px;font-size:10.5px;font-weight:600;color:#047857;box-shadow:inset 0 0 0 1px #a7f3d0}
.abt-card5-sec{margin-top:14px}
.abt-card5-sec > p{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#334155}
.abt-card5-sec > p .abt-ic{color:#059669;font-size:14px}
.abt-card5-sec .abt-rows{margin-top:6px;padding-left:20px}
.abt-calg{display:grid;grid-template-columns:repeat(7,1fr);gap:2px 0;margin-top:10px;text-align:center;font-size:10px}
.abt-calg b{padding-bottom:4px;font-weight:600;color:#94a3b8}
.abt-calg span{height:24px;display:grid;place-items:center;color:#475569;font-variant-numeric:tabular-nums}
.abt-calg .abt-dl em{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#059669;font-style:normal;font-weight:700;color:#fff}
.abt-term{margin-top:10px;border-left:2px solid #10b981;border-radius:6px;background:#ecfdf5;padding:6px 10px;font-size:11px}
.abt-term b{display:block;font-weight:600;color:#0f172a}
.abt-term span{color:#065f46}
.abt-rem{margin-top:8px;display:flex;align-items:center;gap:6px;font-size:10.5px;color:#64748b}
.abt-rem .abt-ic{color:#f59e0b;font-size:14px}
@media(max-width:1023px){
  .abt-co-corner{position:relative;right:auto;bottom:auto;margin:-12px 12px 0 auto;width:fit-content}
  .abt-pi > .abt-pen{display:none}
  .abt-pen-in{display:flex;justify-content:center;margin-top:10px}
  .abt-pen-in .abt-pen{display:inline-flex;position:static;box-shadow:none;padding:2px 10px;font-size:11px}
}
@media(max-width:560px){
  .abt-panel{padding:20px 14px 16px;border-radius:18px}
  .abt-brand img{width:170px}
  .abt-f2,.abt-f5{grid-template-columns:1fr}
  .abt-f1-arrow{display:none}
  .abt-f1-fx{top:-10px}
}
@media(prefers-reduced-motion:reduce){.abt-st-enter,.abt-st-bar{animation:none}}

/* Numeri, a cavallo tra hero e sezione successiva */
.abt-stats-sec{background:linear-gradient(var(--bg) 50%,var(--paper) 50%);padding:8px 0 0}
.abt-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--paper);border:1px solid var(--line-soft);border-radius:20px;box-shadow:0 16px 40px rgba(14,42,42,.08)}
.abt-stat{padding:26px 24px}
.abt-stat + .abt-stat{border-left:1px solid var(--line-soft)}
.abt-stat b{display:block;font-size:clamp(1.7rem,2.6vw,2.1rem);font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--navy)}
.abt-stat b span{color:var(--teal)}
.abt-stat small{display:block;margin-top:10px;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep)}
.abt-stat-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.abt-stat-tags i{font-style:normal;font-family:var(--font-mono);font-size:.66rem;font-weight:600;color:var(--teal-deep);background:var(--light);border:1px solid var(--bd);border-radius:999px;padding:2px 9px;white-space:nowrap}
.abt-stats-src{margin-top:12px;text-align:right;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.03em;color:var(--txD)}
@media(max-width:860px){
  .abt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .abt-stat:nth-child(3){border-left:0}
  .abt-stat:nth-child(n+3){border-top:1px solid var(--line-soft)}
  .abt-stats-src{text-align:left}
}
@media(max-width:420px){.abt-stat{padding:20px 16px}}

/* L'iter completo: tre card con etichetta del grado e spunte */
.abt-tag{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep)}
.abt-grado h3{margin-top:10px}
.abt-ticks{list-style:none;margin:16px 0 0;display:grid;gap:9px}
.abt-ticks li{display:flex;gap:10px;font-size:.95rem;line-height:1.5;color:var(--ink)}
.abt-ticks li::before{content:"";flex:0 0 18px;height:18px;margin-top:2px;border-radius:50%;background:var(--light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%230E7C86'%3E%3Cpath fill-rule='evenodd' d='M16.7 5.3a1 1 0 010 1.4l-7.5 7.5a1 1 0 01-1.4 0L3.3 9.7a1 1 0 111.4-1.4l3.8 3.8 6.8-6.8a1 1 0 011.4 0z' clip-rule='evenodd'/%3E%3C/svg%3E") center/12px no-repeat}

/* Come funziona: cinque passaggi, tu a sinistra e abacusTax a destra */
.abt-steps{list-style:none;display:grid;gap:14px;margin-top:8px}
.abt-step{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--r);padding:22px 26px}
.abt-step-n{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--pri);color:#fff;font-family:var(--font-mono);font-size:.9rem;font-weight:700}
.abt-step h3{font-size:1.08rem;margin:2px 0 6px;color:var(--navy);letter-spacing:-.01em;line-height:1.25}
.abt-step p{color:var(--grey);font-size:.96rem;line-height:1.6}
.abt-step .abt-who{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--txD);margin-bottom:4px}
.abt-step .abt-who-ai{color:var(--teal-deep)}
.abt-step-ai{padding-left:22px;border-left:1px solid var(--line-soft)}
@media(max-width:860px){
  .abt-step{grid-template-columns:44px minmax(0,1fr);gap:14px 18px;padding:20px}
  .abt-step-ai{grid-column:2;padding:14px 0 0;border-left:0;border-top:1px solid var(--line-soft)}
}
@media(max-width:480px){
  .abt-step{grid-template-columns:minmax(0,1fr)}
  .abt-step-ai{grid-column:1}
}

/* Dove va il tempo: oggi / con il Contenzioso Tributario */
.abt-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:8px}
.abt-compare > div{border-radius:20px;padding:30px}
.abt-before{background:var(--bg);border:1px solid var(--line-soft)}
.abt-after{background:var(--light);border:1px solid color-mix(in srgb,var(--pri) 35%,transparent)}
.abt-compare h3{font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--txM);margin-bottom:18px}
.abt-after h3{color:var(--teal-deep)}
.abt-after .abt-ticks{margin-top:0}
.abt-after .abt-ticks li::before{background-color:var(--paper)}
.abt-dash{list-style:none;display:grid;gap:12px}
.abt-dash li{display:flex;gap:12px;font-size:.95rem;line-height:1.5;color:var(--grey)}
.abt-dash li::before{content:"–";color:var(--txD)}
.abt-cta-row{margin-top:30px}
@media(max-width:760px){.abt-compare{grid-template-columns:1fr}.abt-compare > div{padding:24px 22px}}

/* Sicurezza: titolo a sinistra, quattro riquadri a destra */
.abt-security{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.abt-sec-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.abt-sec-item{background:var(--paper);border:1px solid var(--line-soft);border-radius:14px;padding:18px}
.abt-sec-item b{display:block;color:var(--navy);margin-bottom:4px}
.abt-sec-item span{font-size:.92rem;line-height:1.5;color:var(--grey)}
@media(max-width:960px){.abt-security{grid-template-columns:1fr;gap:28px}}
@media(max-width:520px){.abt-sec-list{grid-template-columns:1fr}}

/* Nota finale sotto la CTA band */
.abt-disclaimer{margin-top:18px;text-align:center;font-size:.84rem;color:var(--txM)}
.abt-disclaimer a{color:var(--teal-deep);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.abt-disclaimer a:hover{color:var(--ink)}
@media(max-width:560px){.abt-page .hero-cta .btn,.abt-cta-row .btn{width:100%;justify-content:center}}

/* ===== Orisia (Nerva Antonina) — /prodotti/orisia/ (22/10/2026) =====
   Secondo prodotto di Contify Marketplace. Identità dal brand pack di Nerva Antonina (CONTIFY_ORISIA_BRAND_PACK.md, OneDrive
   CONTIFY/Contify Marketplace/ORISIA) e dal volantino A5: carta calda #f5f1eb, inchiostro marrone #33210f, teal #3f7480, titoli in
   Instrument Serif (self-hosted, licenza OFL), corpo e numeri nel DM Sans del sito. L'accordo con Nerva Antonina (art. 9.4) chiede di
   presentare il brand solo secondo i loro materiali: dentro .ors-page niente gradienti teal del sito, niente mint, niente shimmer.
   L'«1» di Instrument Serif in tondo sembra una «l»: cifre e codice promo mai in serif tondo (DM Sans, JetBrains Mono o serif corsivo).
   La sezione contatti in fondo resta Contify (fuori da .ors-page). Prefisso ors-. */
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-latin.woff2') format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-italic-latin.woff2') format('woff2')}
.ors-page{--o-ink:#33210f;--o-deep:#1f1409;--o-mid:#4a2f1a;--o-muted:#6b5d4d;--o-faint:#a8927a;--o-canvas:#f5f1eb;--o-canvas2:#f0ebe4;--o-sub:#faf8f5;--o-border:#e8ddd4;--o-border2:#d4c9be;--o-teal:#3f7480;--o-teal-h:#335e68;--o-teal-soft:#eaf1f3;--o-teal-muted:#82a8b0;--o-serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --o-dark:radial-gradient(1000px 460px at 88% -10%,rgba(130,168,176,.16),transparent 60%),linear-gradient(160deg,#4a2f1a 0%,#33210f 46%,#1f1409 100%);
  background:var(--o-canvas);color:var(--o-ink)}
.ors-page ::selection{background:var(--o-teal-soft);color:var(--o-ink)}
.ors-page .sec{background:var(--o-canvas)}
.ors-page .ors-soft{background:var(--o-canvas2)}
.ors-page .eyebrow{color:var(--o-teal)}
.ors-page .eyebrow::before{background:var(--o-teal)}
.ors-page h1,.ors-page h2{font-family:var(--o-serif);font-weight:400;letter-spacing:-.025em;color:var(--o-ink);text-wrap:balance}
.ors-page h1 em,.ors-page h2 em{font-style:italic;color:var(--o-teal)}
.ors-page .sec-head h2{font-size:clamp(2.3rem,4.6vw,3.5rem);line-height:1.02;margin:16px 0 18px}
.ors-page .lead{color:var(--o-muted)}
.ors-page .sec:not(.ors-hero) .sec-head{margin-bottom:34px}
.ors-page .crumbs,.ors-page .crumbs a{color:var(--o-muted)}
.ors-page .crumbs a:hover{color:var(--o-teal);border-color:var(--o-teal)}
.ors-nowrap{white-space:nowrap}

/* Pulsanti: marrone pieno (primario) e teal a contorno (secondario), varianti chiare sul fondo scuro */
.ors-btn{background:var(--o-ink);color:var(--o-canvas);box-shadow:0 12px 28px -16px rgba(51,33,15,.7)}
.ors-btn:hover{background:var(--o-deep);transform:translateY(-2px)}
.ors-btn-ghost{background:transparent;color:var(--o-teal);border-color:rgba(63,116,128,.45)}
.ors-btn-ghost:hover{background:var(--o-teal-soft);border-color:var(--o-teal)}
.ors-btn-light{background:var(--o-canvas);color:var(--o-ink)}
.ors-btn-light:hover{background:#fff;transform:translateY(-2px)}
.ors-btn-line{background:transparent;color:var(--o-canvas);border-color:rgba(245,241,235,.4)}
.ors-btn-line:hover{background:rgba(245,241,235,.08);border-color:var(--o-canvas)}
.ors-page .btn:focus-visible,.ors-copy:focus-visible{outline:2px solid var(--o-teal);outline-offset:3px}
.ors-dark .btn:focus-visible,.ors-page .cta-band .btn:focus-visible{outline-color:var(--o-teal-muted)}

/* Hero: testo a sinistra, «biglietto» del codice partner a destra */
.ors-hero{background:radial-gradient(900px 520px at 96% -8%,rgba(130,168,176,.18),transparent 62%),var(--o-canvas)}
.ors-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,4vw,60px);align-items:end}
@media(min-width:1024px){.ors-hero .wrap{grid-template-columns:minmax(0,1fr) 370px}}
.ors-hero .sec-head{max-width:none}
.ors-hero h1{font-size:clamp(2.05rem,4.2vw,3.15rem);line-height:1.04;margin:0 0 20px}
.ors-l1{display:block}
.ors-mark{display:block;margin:20px 0 14px;font-size:clamp(4.6rem,11vw,7.8rem);line-height:.88;letter-spacing:-.04em;color:var(--o-ink)}
.ors-mark i{font-style:normal;color:var(--o-teal)}
.ors-hero .lead{max-width:58ch}
.ors-trust{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.ors-trust li{display:inline-flex;align-items:baseline;gap:8px;padding:7px 14px;border-radius:999px;background:var(--o-sub);border:1px solid var(--o-border);font-size:.86rem;color:var(--o-muted)}
.ors-trust b{font-family:var(--o-serif);font-weight:400;font-size:1.12rem;letter-spacing:-.01em;color:var(--o-ink)}
.ors-ticket{position:relative;border-radius:18px;padding:28px 26px 24px;background:var(--o-dark);color:var(--o-canvas);box-shadow:0 30px 60px -34px rgba(31,20,9,.75)}
.ors-tk-eb{font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--o-teal-muted)}
.ors-tk-code{display:block;margin-top:12px;font-family:var(--font-mono);font-weight:700;font-size:2.1rem;line-height:1;letter-spacing:.04em;color:#fff}
.ors-tk-list{list-style:none;margin-top:20px;display:grid;gap:10px;font-size:.93rem;line-height:1.45;color:rgba(245,241,235,.84)}
.ors-tk-list li{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:baseline}
.ors-tk-list b{font-family:var(--o-serif);font-style:italic;font-weight:400;font-size:1.5rem;line-height:1;color:var(--o-teal-muted)}
.ors-tk-foot{margin-top:18px;padding-top:14px;border-top:1px dashed rgba(245,241,235,.26);font-size:.8rem;line-height:1.5;color:rgba(245,241,235,.62)}
.ors-copy{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font:600 .86rem var(--font-display);color:var(--o-ink);background:var(--o-canvas);border:0;border-radius:999px;padding:9px 16px;cursor:pointer;transition:background .2s}
.ors-copy:hover{background:#fff}
.ors-copy[hidden]{display:none}
.ors-copy.ok{background:var(--o-teal-soft);color:var(--o-teal)}

/* Fascia scura con le tre schermate del volantino Orisia (dati dimostrativi) */
.ors-band{background:var(--o-dark);padding:clamp(46px,6vw,74px) 0;color:var(--o-canvas)}
.ors-band-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:24px}
.ors-band-head .eyebrow{color:var(--o-teal-muted)}
.ors-band-head .eyebrow::before{background:var(--o-teal-muted)}
.ors-band-head p{font-size:.84rem;color:rgba(245,241,235,.62)}
.ors-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.ors-card{background:var(--o-sub);border-radius:14px;padding:20px 20px 18px;color:var(--o-ink);box-shadow:0 26px 50px -30px rgba(0,0,0,.7)}
.ors-card-lb{display:flex;align-items:center;gap:8px;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--o-teal)}
.ors-card-lb::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--o-teal)}
.ors-card-sb{margin-top:4px;font-size:.82rem;color:var(--o-muted)}
.ors-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
.ors-kpi div{background:var(--o-canvas2);border-radius:8px;padding:8px 10px}
.ors-kpi small{display:block;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--o-faint)}
.ors-kpi b{display:block;margin-top:2px;font-size:1.06rem;font-weight:700;color:var(--o-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.ors-kpi b.up{color:var(--o-teal)}
.ors-legend{display:flex;gap:14px;margin-top:14px;font-size:.74rem;color:var(--o-muted)}
.ors-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.ors-legend span:last-child{margin-left:auto;color:var(--o-faint)}
.ors-chart{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;height:150px;margin-top:6px;padding-top:18px;border-bottom:1px solid var(--o-border);background:linear-gradient(var(--o-border) 1px,transparent 1px) 0 18px/100% 44px}
.ors-grp{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:100%}
.ors-bar{position:relative;width:34%;max-width:34px;height:var(--h);border-radius:4px 4px 0 0;background:var(--o-teal);transform-origin:50% 100%}
.ors-bar.e{background:var(--o-faint)}
.ors-bar span{font-style:normal;position:absolute;left:50%;bottom:100%;transform:translate(-50%,-3px);font-size:.66rem;font-weight:700;color:var(--o-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.ors-years{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:6px;text-align:center;font-size:.72rem;color:var(--o-muted)}
.ors-ev{margin-top:14px;font-family:var(--o-serif);font-style:italic;font-size:2.05rem;line-height:1;letter-spacing:-.02em;color:var(--o-ink);white-space:nowrap}
.ors-evs{margin-top:4px;font-size:.78rem;color:var(--o-muted)}
.ors-range{position:relative;height:8px;margin-top:14px;border-radius:4px;background:linear-gradient(90deg,var(--o-teal-soft),var(--o-teal-muted) 55%,var(--o-teal))}
.ors-range i{position:absolute;top:-6px;left:49.2%;width:3px;height:20px;margin-left:-1.5px;border-radius:2px;background:var(--o-ink)}
.ors-range-l{display:flex;justify-content:space-between;margin-top:6px;font-size:.68rem;color:var(--o-faint)}
.ors-rows{margin-top:8px}
.ors-rows div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--o-border);font-size:.84rem;color:var(--o-muted)}
.ors-rows b{color:var(--o-ink);font-variant-numeric:tabular-nums}
.ors-sc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}
.ors-sc div{border-radius:7px;background:var(--o-canvas2);padding:6px 4px;text-align:center;font-size:.66rem;color:var(--o-muted)}
.ors-sc b{display:block;font-size:.84rem;color:var(--o-ink);font-variant-numeric:tabular-nums}
.ors-sc .on{background:var(--o-teal-soft);color:var(--o-teal);box-shadow:inset 0 0 0 1px rgba(63,116,128,.28)}
.ors-sc .on b{color:var(--o-teal)}
.ors-buyers{list-style:none;margin-top:6px}
.ors-buyers li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--o-border)}
.ors-av{grid-row:span 2;width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:var(--o-teal-soft);color:var(--o-teal);font-size:.72rem;font-weight:700}
.ors-buyers b{display:block;font-size:.88rem;line-height:1.25;color:var(--o-ink)}
.ors-buyers small{display:block;font-size:.74rem;color:var(--o-muted)}
.ors-pc{grid-row:span 2;align-self:start;font-size:.78rem;font-weight:700;color:var(--o-teal);background:var(--o-teal-soft);border-radius:6px;padding:3px 7px;font-variant-numeric:tabular-nums}
.ors-pb{grid-column:2;height:4px;border-radius:2px;background:var(--o-border);overflow:hidden}
.ors-pb i{display:block;height:100%;width:var(--w);background:var(--o-teal);transform-origin:0 50%}
.ors-buy-foot{margin-top:12px;font-size:.76rem;line-height:1.5;color:var(--o-muted)}
.ors-buy-foot b{color:var(--o-ink)}
html.has-anim .ors-card .ors-bar,html.has-anim .ors-card .ors-pb i{transform:scale(1,0);transition:transform .9s cubic-bezier(.2,.75,.2,1)}
html.has-anim .ors-card .ors-pb i{transform:scale(0,1)}
html.has-anim .ors-card.in .ors-bar,html.has-anim .ors-card.in .ors-pb i{transform:none}
html.has-anim .ors-card.in .ors-grp:nth-child(2) .ors-bar,html.has-anim .ors-card.in li:nth-child(2) .ors-pb i{transition-delay:.12s}
html.has-anim .ors-card.in .ors-grp:nth-child(3) .ors-bar,html.has-anim .ors-card.in li:nth-child(3) .ors-pb i{transition-delay:.24s}
html.has-anim .ors-card .ors-range i{left:0;transition:left 1.1s cubic-bezier(.2,.75,.2,1) .15s}
html.has-anim .ors-card.in .ors-range i{left:49.2%}
@media(prefers-reduced-motion:reduce){html.has-anim .ors-card .ors-bar,html.has-anim .ors-card .ors-pb i{transform:none;transition:none}html.has-anim .ors-card .ors-range i{left:49.2%;transition:none}}
@media(max-width:1023px){.ors-cards{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}}

/* Numeri */
.ors-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--o-sub);border:1px solid var(--o-border);border-radius:18px}
.ors-stat{padding:24px 22px}
.ors-stat + .ors-stat{border-left:1px solid var(--o-border)}
.ors-stat b{display:block;font-size:clamp(1.6rem,2.6vw,2.05rem);font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--o-ink);white-space:nowrap}
.ors-stat b span{color:var(--o-teal)}
.ors-stat small{display:block;margin-top:10px;font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--o-teal)}
.ors-stats-src{margin-top:12px;text-align:right;font-family:var(--font-mono);font-size:.68rem;color:var(--o-faint)}
.ors-stats-sec{padding:clamp(40px,5vw,56px) 0 0}
@media(max-width:860px){.ors-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ors-stat:nth-child(3){border-left:0}.ors-stat:nth-child(n+3){border-top:1px solid var(--o-border)}.ors-stats-src{text-align:left}}
@media(max-width:420px){.ors-stat{padding:20px 16px}}

/* Il flusso: dieci fasi */
.ors-flow{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px 18px;margin-top:10px;counter-reset:orsf}
.ors-flow li{position:relative;padding-top:48px}
.ors-flow li::before{counter-increment:orsf;content:counter(orsf,decimal-leading-zero);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--o-sub);border:1px solid var(--o-border2);font:600 .72rem var(--font-mono);color:var(--o-teal)}
.ors-flow li::after{content:"";position:absolute;top:18px;left:44px;right:-10px;height:1px;background:var(--o-border2)}
.ors-flow li:nth-child(5n)::after{display:none}
.ors-flow li:last-child::before{background:var(--o-teal);border-color:var(--o-teal);color:#fff}
.ors-flow b{display:block;font-size:1.04rem;color:var(--o-ink)}
.ors-flow span{display:block;margin-top:4px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--o-muted)}
.ors-flow-note{margin-top:34px;font-size:.95rem;color:var(--o-muted);max-width:70ch}
@media(max-width:860px){.ors-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.ors-flow li::after{display:none}}

/* Cosa fa: sei funzioni (testo del volantino) */
.ors-feat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ors-f{background:var(--o-sub);border:1px solid var(--o-border);border-radius:14px;padding:26px 24px}
.ors-f .n{font-family:var(--font-mono);font-size:.74rem;font-weight:600;letter-spacing:.12em;color:var(--o-teal)}
.ors-f h3{font-family:var(--o-serif);font-weight:400;font-size:1.6rem;line-height:1.08;letter-spacing:-.015em;margin:12px 0 8px;color:var(--o-ink)}
.ors-f p{font-size:.95rem;line-height:1.6;color:var(--o-muted)}
@media(max-width:960px){.ors-feat{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ors-feat{grid-template-columns:minmax(0,1fr)}}

/* Perché Orisia: fondo scuro, tre pilastri e privacy */
.ors-dark{background:var(--o-dark)!important;color:var(--o-canvas)}
.ors-dark .eyebrow{color:var(--o-teal-muted)}
.ors-dark .eyebrow::before{background:var(--o-teal-muted)}
.ors-dark h2{color:var(--o-canvas)}
.ors-dark h2 em{color:var(--o-teal-muted)}
.ors-dark .lead{color:rgba(245,241,235,.74)}
.ors-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ors-pillar{border-top:1px solid rgba(245,241,235,.22);padding-top:22px}
.ors-pillar .n{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--o-teal-muted)}
.ors-pillar h3{font-family:var(--o-serif);font-weight:400;font-size:1.75rem;line-height:1.08;letter-spacing:-.015em;margin:10px 0 8px;color:#fff}
.ors-pillar p{font-size:.97rem;line-height:1.6;color:rgba(245,241,235,.74)}
.ors-privacy{margin-top:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 28px;align-items:center;padding:24px 26px;border-radius:16px;background:rgba(245,241,235,.06);border:1px solid rgba(245,241,235,.14)}
.ors-privacy h3{font-family:var(--o-serif);font-weight:400;font-size:1.45rem;color:#fff;margin-bottom:6px}
.ors-privacy p{font-size:.95rem;line-height:1.65;color:rgba(245,241,235,.8)}
.ors-privacy ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.ors-privacy li{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;padding:6px 11px;border-radius:999px;border:1px solid rgba(130,168,176,.5);color:var(--o-teal-muted);white-space:nowrap}
.ors-src{margin-top:14px;font-size:.78rem;color:rgba(245,241,235,.5)}
@media(max-width:860px){.ors-pillars{grid-template-columns:minmax(0,1fr);gap:22px}.ors-privacy{grid-template-columns:minmax(0,1fr)}.ors-privacy ul{justify-content:flex-start}}

/* Per chi è */
.ors-who{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ors-who article{background:var(--o-sub);border:1px solid var(--o-border);border-radius:16px;padding:30px 28px}
.ors-who .tag{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--o-teal)}
.ors-who h3{font-family:var(--o-serif);font-weight:400;font-size:1.9rem;line-height:1.06;letter-spacing:-.015em;margin:12px 0 10px;color:var(--o-ink)}
.ors-who p{font-size:1rem;line-height:1.62;color:var(--o-muted)}
@media(max-width:760px){.ors-who{grid-template-columns:minmax(0,1fr)}}

/* Prezzi e codice partner */
.ors-plans{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;align-items:stretch}
.ors-plan{background:var(--o-sub);border:1px solid var(--o-border);border-top:4px solid var(--o-teal);border-radius:16px;padding:30px 28px}
.ors-plan-eb{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--o-teal)}
.ors-plan-name{margin-top:8px;font-family:var(--o-serif);font-size:2rem;line-height:1;letter-spacing:-.015em;color:var(--o-ink)}
.ors-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:16px}
.ors-price small{font-size:.95rem;color:var(--o-muted)}
.ors-price b{font-size:3rem;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--o-ink)}
.ors-plan-sub{margin-top:6px;font-size:.9rem;color:var(--o-muted)}
.ors-plan-for{display:inline-block;margin-top:18px;font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--o-teal);background:var(--o-teal-soft);border-radius:999px;padding:6px 12px}
.ors-plan-desc{margin-top:14px;font-size:1rem;line-height:1.6;color:var(--o-ink)}
.ors-plan-more{margin-top:20px;padding-top:16px;border-top:1px solid var(--o-border);font-size:.92rem;line-height:1.6;color:var(--o-muted)}
.ors-plan-more a,.ors-note a,.ors-credit a,.ors-page .faq a{color:var(--o-teal);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.ors-plan-more a:hover,.ors-note a:hover,.ors-credit a:hover,.ors-page .faq a:hover{color:var(--o-ink)}
.ors-plan .hero-cta{margin-top:22px}
.ors-howto{display:flex;flex-direction:column;align-items:flex-start;border-radius:16px;padding:30px 28px;background:var(--o-dark);color:var(--o-canvas)}
.ors-howto .ors-tk-foot{margin-top:auto;padding-top:14px;width:100%}
.ors-howto .ors-copy{margin-bottom:20px}
.ors-howto .ors-tk-eb{display:block}
.ors-howto .ors-tk-code{font-size:2.3rem}
.ors-howto ol{list-style:none;margin-top:22px;display:grid;gap:16px;counter-reset:orsh}
.ors-howto li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;font-size:.95rem;line-height:1.55;color:rgba(245,241,235,.84)}
.ors-howto li::before{counter-increment:orsh;content:counter(orsh);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(245,241,235,.1);border:1px solid rgba(245,241,235,.22);font:600 .76rem var(--font-mono);color:var(--o-canvas)}
.ors-howto li b{color:#fff}
.ors-note{margin-top:18px;font-size:.82rem;line-height:1.6;color:var(--o-muted);max-width:92ch}
@media(max-width:860px){.ors-plans{grid-template-columns:minmax(0,1fr)}}

/* FAQ, CTA band e credito */
.ors-page .faq details{border-color:var(--o-border)}
.ors-page .faq summary{color:var(--o-ink)}
.ors-page .faq p{color:var(--o-muted)}
.ors-page .cta-band{background:var(--o-dark)}
.ors-page .cta-band h2{color:#fff}
.ors-page .cta-band h2 em{color:var(--o-teal-muted)}
.ors-page .cta-band .eyebrow{color:var(--o-teal-muted)}
.ors-page .cta-band p{color:rgba(245,241,235,.8)}
.ors-page .cta-band .ors-code-inline{font-family:var(--font-mono);font-weight:700;letter-spacing:.06em;color:#fff}
.ors-credit{margin-top:18px;text-align:center;font-size:.84rem;line-height:1.6;color:var(--o-muted)}
@media(max-width:560px){.ors-page .hero-cta .btn,.ors-plan .hero-cta .btn{width:100%;justify-content:center}.ors-mark{margin-top:16px}}
