/* ═══════════════════════════════════════════════════════════════════════
   ILLUMINA  ·  v8  ·  PREMIUM LEGAL-TECH SaaS  ·  Ultra-Clean Pass
   DM Sans + DM Mono · MD3 · Stripe × Linear × Vercel
   ═══════════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,300;1,9..40,400&family=DM+Mono:wght@300;400;500&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&display=swap');

/* ─── TOKENS ─────────────────────────────────────────────────────────── */
:root {
  /* Brand */
  --g:      #254C3C;
  --g-d:    #1A3A2C;
  --g-m:    #2E5C47;
  --g-l:    #3A7058;
  --g-05:   rgba(37,76,60,.05);
  --g-08:   rgba(37,76,60,.08);
  --g-12:   rgba(37,76,60,.12);
  --g-20:   rgba(37,76,60,.20);
  --g-sh:   0 4px 16px rgba(37,76,60,.22), 0 20px 48px rgba(37,76,60,.18);

  --a:      #5EC6AE;
  --a-s:    rgba(94,198,174,.10);
  --a-m:    rgba(94,198,174,.22);
  --a-pale: #A7F2E0;
  --teal:   #32807D;

  /* Surfaces */
  --white:  #FDFCFA;
  --s1:     #F8F7F3;
  --s2:     #F3F1EB;
  --s3:     #EDE9E1;
  --ink:    #141714;
  --i80:    rgba(20,23,20,.80);
  --i60:    rgba(20,23,20,.60);
  --i40:    rgba(20,23,20,.40);
  --i20:    rgba(20,23,20,.14);
  --i08:    rgba(20,23,20,.05);

  /* Borders */
  --b:      rgba(20,23,20,.08);
  --bm:     rgba(20,23,20,.14);
  --bs:     rgba(20,23,20,.22);

  /* MD3 elevations */
  --e1: 0 1px 3px rgba(20,23,20,.06), 0 0 0 1px rgba(20,23,20,.04);
  --e2: 0 2px 8px rgba(20,23,20,.08), 0 1px 3px rgba(20,23,20,.05), 0 0 0 1px rgba(20,23,20,.04);
  --e3: 0 4px 16px rgba(20,23,20,.09), 0 2px 6px rgba(20,23,20,.06), 0 0 0 1px rgba(20,23,20,.04);
  --e4: 0 8px 32px rgba(20,23,20,.11), 0 4px 12px rgba(20,23,20,.07), 0 0 0 1px rgba(20,23,20,.04);
  --e5: 0 16px 56px rgba(20,23,20,.13), 0 8px 20px rgba(20,23,20,.08), 0 0 0 1px rgba(20,23,20,.04);

  /* Type */
  --f:  'DM Sans', system-ui, sans-serif;
  --fm: 'DM Mono', ui-monospace, monospace;
  --fs: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;

  /* Spacing (8px grid) */
  --sp1:8px;  --sp2:12px; --sp3:16px; --sp4:20px; --sp5:24px;
  --sp6:32px; --sp7:40px; --sp8:48px; --sp9:64px; --sp10:80px;
  --sp11:96px;--sp12:128px;--sp13:160px;

  /* Layout */
  --nh:   72px;
  --mw:   1220px;
  --mwn:  900px;
  --mwx:  640px;

  /* Radii */
  --r4:4px; --r8:8px; --r12:12px; --r16:16px;
  --r20:20px; --r24:24px; --r28:28px; --r32:32px; --r40:40px; --rf:9999px;

  /* Motion MD3 */
  --std:  cubic-bezier(.2,0,0,1);
  --dec:  cubic-bezier(.0,0,0,1);
  --spr:  cubic-bezier(.34,1.28,.64,1);   
  --td:   180ms;
  --tm:   280ms;
  --tl:   420ms;
}

/* Dark theme tokens */
html[data-theme='dark'] {
  --white:  #0f1312;
  --s1:     #121917;
  --s2:     #18211e;
  --s3:     #1d2724;
  --ink:    #e9f1ee;
  --i80:    rgba(233,241,238,.82);
  --i60:    rgba(233,241,238,.64);
  --i40:    rgba(233,241,238,.44);
  --i20:    rgba(233,241,238,.18);
  --i08:    rgba(233,241,238,.08);
  --b:      rgba(233,241,238,.10);
  --bm:     rgba(233,241,238,.16);
  --bs:     rgba(233,241,238,.24);
  --e1: 0 1px 3px rgba(0,0,0,.30), 0 0 0 1px rgba(233,241,238,.03);
  --e2: 0 2px 8px rgba(0,0,0,.34), 0 1px 3px rgba(0,0,0,.25), 0 0 0 1px rgba(233,241,238,.04);
  --e3: 0 4px 16px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.28), 0 0 0 1px rgba(233,241,238,.05);
  --e4: 0 8px 32px rgba(0,0,0,.48), 0 4px 12px rgba(0,0,0,.34), 0 0 0 1px rgba(233,241,238,.06);
  --e5: 0 16px 56px rgba(0,0,0,.55), 0 8px 20px rgba(0,0,0,.38), 0 0 0 1px rgba(233,241,238,.07);
}

/* ─── RESET ──────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ATTENZIONE: Usa 'clip' e non 'hidden' sull'asse orizzontale altrimenti position: sticky si rompe! */
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%;overflow-x:clip}
body{
  font-family:var(--f);color:var(--ink);background:var(--white);
  line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip;
}

img,svg{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,textarea,select{font-family:inherit}
:focus-visible{outline:2.5px solid var(--a);outline-offset:3px;border-radius:var(--r4)}

/* Grain overlay */
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.009;
}

/* ─── LAYOUT ─────────────────────────────────────────────────────────── */
.wrap   {max-width:var(--mw);  margin:0 auto;padding:0 64px}
.wrap-n {max-width:var(--mwn); margin:0 auto;padding:0 64px}
.wrap-x {max-width:var(--mwx); margin:0 auto;padding:0 64px}
.sec    {padding:var(--sp12) 0}
.sec-lg {padding:var(--sp13) 0}
.sec-sm {padding:var(--sp10) 0}
.sec-xs {padding:var(--sp8)  0}

/* ═══════════════════════════════════════
   NAVBAR  ─  MD3 top bar
═══════════════════════════════════════ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:900;height:var(--nh);
  transition:background var(--tm) var(--std), box-shadow var(--tm) var(--std);
}
.nav.stuck{
  background:rgba(253,252,250,.95);
  backdrop-filter:blur(28px) saturate(200%);
  -webkit-backdrop-filter:blur(28px) saturate(200%);
  box-shadow:var(--e2);
}
.nav-inner{height:100%;display:flex;align-items:center;width:100%}
.nav-brand{display:flex;align-items:center;gap:12px;margin-right:auto;flex-shrink:0}
.nav-mark{
  width:32px;height:32px;flex-shrink:0;
  animation:mark-in .9s cubic-bezier(.22,1,.36,1) both;
}
@keyframes mark-in{from{opacity:0;transform:rotate(-10deg) scale(.88)}to{opacity:1;transform:none}}
.nav-wordmark{font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:var(--g)}
.nav-tagline{font-size:.58rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--i40);display:block;margin-top:2px}

.nav-links{display:flex;align-items:center;gap:2px}
.nav-a{
  font-size:.8rem;font-weight:500;letter-spacing:.01em;color:var(--i60);
  padding:8px 14px;border-radius:var(--rf);
  position:relative;
  transition:color var(--td) var(--std),background var(--td) var(--std);
}
.nav-a::after{
  content:'';position:absolute;bottom:5px;left:50%;transform:translateX(-50%) scaleX(0);
  width:14px;height:2px;background:var(--g);border-radius:var(--rf);
  transition:transform var(--tm) var(--spr);
}
.nav-a:hover{color:var(--g);background:var(--g-05)}
.nav-a.active{color:var(--g);font-weight:600}
.nav-a.active::after{transform:translateX(-50%) scaleX(1)}

.nav-cta{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.8rem;font-weight:600;letter-spacing:.02em;
  color:var(--white);background:var(--g);
  padding:10px 24px;border-radius:var(--rf);
  margin-left:18px;box-shadow:var(--g-sh);
  transition:background var(--td),transform var(--tm) var(--spr),box-shadow var(--tm) var(--std);
}
.nav-cta:hover{background:var(--g-d);transform:translateY(-1px);box-shadow:0 4px 16px rgba(37,76,60,.28),0 20px 48px rgba(37,76,60,.18)}
.nav-cta:active{transform:translateY(0)}

.nav-burger{
  display:none;flex-direction:column;gap:5px;
  padding:10px;margin-left:auto;border-radius:var(--rf);
}
.nav-burger span{display:block;width:22px;height:1.5px;background:var(--ink);border-radius:var(--rf);transition:var(--tm) var(--std)}

.theme-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.02em;
  color:var(--i60);
  padding:8px 14px;
  border-radius:var(--rf);
  border:1.5px solid var(--b);
  background:transparent;
  transition:color var(--td) var(--std),background var(--td) var(--std),border-color var(--td) var(--std);
}
.theme-toggle:hover{color:var(--g);border-color:var(--g-20);background:var(--g-05)}
.theme-toggle-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--i40);
  box-shadow:0 0 0 2px var(--i08);
}
html[data-theme='dark'] .theme-toggle-dot{background:var(--a);box-shadow:0 0 0 2px rgba(94,198,174,.16)}

html[data-theme='dark'] .nav.stuck{
  background:rgba(12,17,15,.92);
  box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 0 1px rgba(233,241,238,.06);
}
html[data-theme='dark'] .finp{background:#101614;color:var(--ink)}
html[data-theme='dark'] .finp::placeholder{color:var(--i40)}
html[data-theme='dark'] .ticker::before{background:linear-gradient(to right,var(--white),transparent)}
html[data-theme='dark'] .ticker::after{background:linear-gradient(to left,var(--white),transparent)}

/* ═══════════════════════════════════════
   BUTTONS  ─  MD3 variants
═══════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--f);font-weight:600;font-size:.855rem;letter-spacing:.03em;
  cursor:pointer;white-space:nowrap;
  position:relative;overflow:hidden;
  transition:all var(--tm) var(--std);
  text-rendering:optimizeLegibility;
}
.btn::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:currentColor;opacity:0;
  transition:opacity var(--td) var(--std);
}
.btn:hover::before{opacity:.08}
.btn:active::before{opacity:.16}
.btn:active{transform:scale(.97)!important}

/* Filled forest */
.btn-p{background:var(--g);color:var(--white);padding:14px 32px;border-radius:var(--rf);box-shadow:var(--g-sh)}
.btn-p:hover{background:var(--g-m);transform:translateY(-1px);box-shadow:0 4px 16px rgba(37,76,60,.26),0 16px 40px rgba(37,76,60,.18)}
.btn-p:hover::before{opacity:0}
/* Outlined */
.btn-o{background:transparent;color:var(--g);padding:13px 32px;border-radius:var(--rf);border:1.5px solid var(--g-20)}
.btn-o:hover{border-color:var(--g);background:var(--g-05);box-shadow:var(--e1)}
/* Ghost */
.btn-ghost{background:transparent;color:var(--i60);padding:10px 18px;border-radius:var(--rf)}
.btn-ghost:hover{color:var(--g);background:var(--g-05)}
/* Dark bg */
.btn-dk{
  background:rgba(253,252,250,.13);color:var(--white);
  padding:14px 32px;border-radius:var(--rf);
  border:1.5px solid rgba(255,255,255,.24);backdrop-filter:blur(6px);
}
.btn-dk:hover{background:rgba(253,252,250,.20);border-color:rgba(255,255,255,.38)}
/* Aqua filled */
.btn-aqua{
  background:var(--a);color:var(--g-d);
  padding:14px 32px;border-radius:var(--rf);
  font-weight:700;
  box-shadow:0 4px 16px rgba(94,198,174,.28),0 16px 40px rgba(94,198,174,.18);
}
.btn-aqua:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 4px 18px rgba(94,198,174,.30),0 16px 44px rgba(94,198,174,.18)}
.btn-aqua:hover::before{opacity:0}

.btn-lg{padding:16px 40px;font-size:.9rem}
.btn-xl{padding:18px 52px;font-size:.94rem}
.btn-w{width:100%;justify-content:center}

/* ═══════════════════════════════════════
   LABEL / CHIP  ─  MD3 tonal
═══════════════════════════════════════ */
.lbl{
  display:inline-flex;align-items:center;gap:10px;
  font-size:.67rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--a);margin-bottom:var(--sp5);
}
.lbl::before{content:'';width:28px;height:1.5px;background:var(--a);flex-shrink:0}
.lbl-light{color:rgba(167,242,224,.72)}
.lbl-light::before{background:rgba(167,242,224,.48)}
.lbl-center{justify-content:center}
.lbl-center::before,.lbl-center::after{content:'';width:28px;height:1.5px;background:currentColor;flex-shrink:0}

.chip{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.67rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:5px 14px;border-radius:var(--rf);
}
.chip-g{background:var(--g-08);color:var(--g);border:1.5px solid var(--g-12)}
.chip-a{background:var(--a-s);color:var(--teal);border:1.5px solid var(--a-m)}
.chip-w{background:rgba(255,255,255,.14);color:rgba(255,255,255,.85);border:1.5px solid rgba(255,255,255,.26)}
.chip-dot::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;display:block;animation:blink 2.4s ease infinite}
@keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.38;transform:scale(.72)}}

/* ═══════════════════════════════════════
   TYPOGRAPHY
═══════════════════════════════════════ */
.h-hero{font-size:clamp(2.8rem,5.2vw,5.6rem);font-weight:700;line-height:1.04;letter-spacing:-.03em;color:var(--ink)}
.h1    {font-size:clamp(2.4rem,4vw,4rem);font-weight:700;line-height:1.06;letter-spacing:-.026em;color:var(--ink)}
.h2    {font-size:clamp(1.9rem,2.9vw,2.9rem);font-weight:700;line-height:1.10;letter-spacing:-.022em;color:var(--ink)}
.h3    {font-size:clamp(1.35rem,1.9vw,1.9rem);font-weight:600;line-height:1.16;letter-spacing:-.016em}
.h4    {font-size:1.2rem;font-weight:600;line-height:1.26;letter-spacing:-.012em}
.h5    {font-size:1rem;font-weight:600;line-height:1.32;letter-spacing:-.006em}

/* em on light bg = forest green */
.h-hero em,.h1 em,.h2 em,.h3 em{font-style:normal;color:var(--g)}
/* em on dark bg = white bold (ALWAYS) */
.on-dark .h-hero em,.on-dark .h1 em,.on-dark .h2 em,.on-dark .h3 em{color:#fff;font-weight:700}
/* on-dark text */
.on-dark{color:var(--white)}
.on-dark .h-hero,.on-dark .h1,.on-dark .h2{color:var(--white)}
.h-hero.on-dark,.h1.on-dark,.h2.on-dark,.h3.on-dark{color:var(--white)}
.on-dark .lead,.on-dark .body{color:rgba(253,252,250,.58)}
.lead.on-dark,.body.on-dark{color:rgba(253,252,250,.58)}

.h-hero.on-dark em,.h1.on-dark em,.h2.on-dark em,.h3.on-dark em{color:#fff;font-weight:700}

.lead{font-size:1.1rem;font-weight:400;color:var(--i60);line-height:1.76}
.body{font-size:.9375rem;color:var(--i60);line-height:1.76}
.sm  {font-size:.875rem;color:var(--i40);line-height:1.66}
.xs  {font-size:.8rem;color:var(--i40)}

/* ═══════════════════════════════════════
   HERO  ─  split layout (Original, maintained just in case)
═══════════════════════════════════════ */
.hero{
  min-height:100vh;
  display:grid;grid-template-columns:55% 45%;
  padding-top:var(--nh);
  position:relative;overflow:hidden;
}
.hero-glow{
  position:absolute;top:-20%;left:-10%;
  width:60%;height:100%;
  background:radial-gradient(ellipse,rgba(94,198,174,.09) 0%,transparent 62%);
  pointer-events:none;
}
/* Left column */
.hero-l{
  display:flex;flex-direction:column;justify-content:center;
  padding:var(--sp11) var(--sp9) var(--sp11) 0;
  padding-left:max(64px, calc((100vw - var(--mw))/2 + 64px));
}
.theme-toggle-ico{
  width:17px;
  height:17px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.theme-toggle-ico svg{width:17px;height:17px;display:block}
.theme-toggle-sun{display:none}
html[data-theme='dark'] .theme-toggle{color:var(--a);border-color:rgba(94,198,174,.32);background:rgba(94,198,174,.10)}
html[data-theme='dark'] .theme-toggle:hover{background:rgba(94,198,174,.16);border-color:rgba(94,198,174,.42)}
html[data-theme='dark'] .theme-toggle-moon{display:none}
html[data-theme='dark'] .theme-toggle-sun{display:flex}

html[data-theme='dark'] .nav-a:hover{color:var(--a);background:rgba(94,198,174,.10)}
html[data-theme='dark'] .nav-a.active{color:#d7fff4}
html[data-theme='dark'] .nav-a::after{background:var(--a)}
html[data-theme='dark'] .nav-tagline{color:rgba(233,241,238,.52)}
html[data-theme='dark'] .nav-wordmark{color:#dff7f0}

html[data-theme='dark'] .ticker{
  background:linear-gradient(180deg,#0f1513 0%, #111916 100%);
  border-top-color:rgba(233,241,238,.16);
  border-bottom-color:rgba(233,241,238,.16);
}
html[data-theme='dark'] .ticker-w{color:rgba(233,241,238,.68)}
html[data-theme='dark'] .ticker-sep{opacity:.9;box-shadow:0 0 0 5px rgba(94,198,174,.14)}

html[data-theme='dark'] .feat,
html[data-theme='dark'] .pc-light,
html[data-theme='dark'] .uc-light,
html[data-theme='dark'] .team-card,
html[data-theme='dark'] .token-blk,
html[data-theme='dark'] .form-card,
html[data-theme='dark'] .ex-card,
html[data-theme='dark'] .s-stat,
html[data-theme='dark'] .faq-item,
html[data-theme='dark'] .tip-box,
html[data-theme='dark'] .hiw-panel{
  background:#16201d;
  border-color:rgba(233,241,238,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.03);
}
html[data-theme='dark'] .feat:hover,
html[data-theme='dark'] .team-card:hover,
html[data-theme='dark'] .token-blk:hover,
html[data-theme='dark'] .ex-card:hover,
html[data-theme='dark'] .uc-light:hover,
html[data-theme='dark'] .pc-light:hover{background:#1b2723;border-color:rgba(233,241,238,.20)}
html[data-theme='dark'] .feat-grid{background:rgba(233,241,238,.12);border-color:rgba(233,241,238,.12)}
html[data-theme='dark'] .uc-dark,
html[data-theme='dark'] .pc-dark,
html[data-theme='dark'] .feat-wide{background:#183328}
html[data-theme='dark'] .uc-dark:hover,
html[data-theme='dark'] .pc-dark:hover,
html[data-theme='dark'] .feat-wide:hover{background:#1d3e31}

html[data-theme='dark'] .footer{
  background:linear-gradient(180deg,#08100d 0%, #050a08 100%);
  color:#eaf3ef;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html[data-theme='dark'] .footer-grid{border-bottom-color:rgba(233,241,238,.12)}
html[data-theme='dark'] .f-name{color:#f3fbf8}
html[data-theme='dark'] .f-tag{color:rgba(233,241,238,.64)}
html[data-theme='dark'] .f-legal{color:rgba(233,241,238,.48)}
html[data-theme='dark'] .f-col h5{color:rgba(233,241,238,.52)}
html[data-theme='dark'] .f-col a{color:rgba(233,241,238,.74)}
html[data-theme='dark'] .footer-bot-inner{color:rgba(233,241,238,.56)}
.hero-h1{margin-bottom:var(--sp5);max-width:600px}
.hero-sub{font-size:1.1rem;color:var(--i60);line-height:1.76;max-width:480px;margin-bottom:var(--sp7)}
.hero-ctas{display:flex;align-items:center;gap:var(--sp3);flex-wrap:wrap;margin-bottom:var(--sp9)}
.hero-trust{
  display:flex;align-items:center;gap:var(--sp6);flex-wrap:wrap;
  padding-top:var(--sp6);border-top:1px solid var(--b);
}
.hero-trust-i{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:500;color:var(--i40)}
.hero-trust-i svg{color:var(--a);flex-shrink:0}

/* Right – dark panel with viewer */
.hero-r{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:var(--g);padding:var(--sp9) var(--sp7);
  gap:var(--sp4);
}
.hero-r-glow{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:560px;height:560px;
  background:radial-gradient(ellipse,rgba(94,198,174,.16) 0%,transparent 62%);
  pointer-events:none;
}
.hero-r-spiral{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:.055;color:var(--a-pale);pointer-events:none;
}
.hero-r-spiral svg{width:90%}

/* 3D Viewer iframe */
.hero-viewer{
  position:relative;z-index:3;
  width:100%;max-width:440px;
  aspect-ratio:4/3;
  border-radius:var(--r20);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 0 0 1px rgba(255,255,255,.08),0 24px 64px rgba(0,0,0,.36),0 8px 24px rgba(0,0,0,.20);
}
.hero-viewer iframe{
  width:100%;height:100%;border:none;display:block;
}
.viewer-bar{
  position:relative;z-index:3;
  width:100%;max-width:440px;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(253,252,250,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r12);padding:12px 16px;
  backdrop-filter:blur(8px);
}
.viewer-bar-l{
  display:flex;align-items:center;gap:8px;
  font-size:.75rem;font-weight:600;color:rgba(255,255,255,.65);
}
.viewer-bar-dot{width:6px;height:6px;border-radius:50%;background:var(--a);animation:blink 2s infinite}
.viewer-bar-r{
  font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  background:rgba(94,198,174,.18);color:var(--a);
  padding:3px 10px;border-radius:var(--rf);
  border:1px solid rgba(94,198,174,.30);
}
/* Float badges */
.hf{position:absolute;z-index:4;border-radius:var(--r16)}
.hf1{
  top:8%;right:4%;
  background:rgba(253,252,250,.10);border:1px solid rgba(255,255,255,.20);
  padding:13px 20px;
  font-family:var(--fm);font-size:1.7rem;font-weight:300;color:var(--a-pale);letter-spacing:-.04em;
  animation:float 5.5s ease-in-out infinite;backdrop-filter:blur(6px);
}
.hf2{
  bottom:28%;left:3%;
  background:rgba(253,252,250,.10);border:1px solid rgba(255,255,255,.18);
  padding:11px 15px;display:flex;align-items:center;gap:9px;
  font-size:.8rem;color:rgba(255,255,255,.62);
  animation:float 7s ease-in-out infinite 1s;backdrop-filter:blur(6px);
}
.hf2 strong{color:var(--a-pale);font-weight:600}
.hf3{
  bottom:44%;right:4%;
  background:rgba(94,198,174,.14);border:1px solid rgba(94,198,174,.30);
  padding:8px 14px;font-size:.74rem;font-weight:600;color:var(--a);
  display:flex;align-items:center;gap:7px;
  animation:float 6.5s ease-in-out infinite .5s;
}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

/* ═══════════════════════════════════════
   TICKER
═══════════════════════════════════════ */
.ticker{
  border-top:1px solid var(--b);border-bottom:1px solid var(--b);
  padding:22px 0;overflow:hidden;background:var(--white);position:relative;
}
.ticker::before,.ticker::after{
  content:'';position:absolute;top:0;bottom:0;width:130px;z-index:2;pointer-events:none;
}
.ticker::before{left:0;background:linear-gradient(to right,var(--white),transparent)}
.ticker::after {right:0;background:linear-gradient(to left, var(--white),transparent)}
.ticker-track{
  display:flex;gap:60px;white-space:nowrap;
  animation:tick 34s linear infinite;width:max-content;
}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-item{display:flex;align-items:center;gap:16px;flex-shrink:0}
.ticker-w  {font-size:.88rem;font-weight:500;letter-spacing:.05em;color:var(--i40)}
.ticker-sep{width:4px;height:4px;border-radius:50%;background:var(--a);flex-shrink:0;opacity:.6}

/* ═══════════════════════════════════════
   STATS BAR  ─  MD3 surface
═══════════════════════════════════════ */
.stats-bar{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-radius:var(--r24);overflow:hidden;box-shadow:var(--e3);
}
.s-stat{
  padding:56px 48px;background:var(--white);border-right:1px solid var(--b);
  position:relative;overflow:hidden;
  transition:background var(--tm) var(--std);
}
.s-stat:last-child{border-right:none}
.s-stat::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--a),rgba(94,198,174,0));
  transform:scaleX(0);transform-origin:left;
  transition:transform var(--tm) var(--std);
}
.s-stat:hover{background:var(--s1)}
.s-stat:hover::after{transform:scaleX(1)}
.s-stat-num{
  font-family:var(--fm);font-size:3.2rem;font-weight:400;
  color:var(--g);line-height:1;letter-spacing:-.04em;margin-bottom:12px;
}
.s-stat-lbl{font-size:.8rem;font-weight:500;color:var(--i40);line-height:1.5}

/* ═══════════════════════════════════════
   HOW IT WORKS
═══════════════════════════════════════ */
.hiw{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.hiw-panel{
  background:var(--s1);border:1.5px solid var(--b);
  border-radius:var(--r32);padding:72px 64px;
  position:relative;overflow:hidden;box-shadow:var(--e2);
}
.hiw-panel-deco{
  position:absolute;bottom:-64px;right:-64px;
  width:260px;opacity:.05;pointer-events:none;color:var(--g);
}
.step-row{
  display:flex;gap:var(--sp6);padding:var(--sp7) 0;
  border-bottom:1px solid var(--b);
  position:relative;z-index:1;
  transition:padding-left var(--tm) var(--std);
}
.step-row:last-child{border-bottom:none;padding-bottom:0}
.step-row:first-child{padding-top:0}
.step-row:hover{padding-left:6px}
.step-n{
  font-family:var(--fm);font-size:2.6rem;font-weight:300;
  color:var(--g);opacity:.16;line-height:1;min-width:54px;padding-top:4px;
  transition:opacity var(--tm) var(--std);
}
.step-row:hover .step-n{opacity:.60}
.step-c h3{font-size:1.1rem;font-weight:600;color:var(--ink);margin-bottom:9px}
.step-c p {font-size:.9375rem;color:var(--i60);line-height:1.76}
.hiw-copy .lead{max-width:420px;margin-bottom:var(--sp8)}
.hiw-ctas{display:flex;gap:var(--sp3);flex-wrap:wrap}

/* Horizontal steps layout */
.hiw-header{
  text-align:center;max-width:640px;margin:0 auto 48px;
}
.hiw-header .hiw-ctas{justify-content:center}
.hiw-steps-row{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;background:var(--b);
  border:1.5px solid var(--b);border-radius:var(--r32);
  overflow:hidden;box-shadow:var(--e2);
}
.step-card{
  background:var(--white);padding:52px 48px;
  display:flex;flex-direction:column;
  transition:background var(--tm) var(--std);
}
.step-card:hover{background:var(--s1)}
.step-card .step-n{
  min-width:unset;padding-top:0;margin-bottom:24px;
}
html[data-theme='dark'] .step-card{background:var(--s1)}
html[data-theme='dark'] .step-card:hover{background:#1b2723}

/* ═══════════════════════════════════════
   VIEWER SECTION  (standalone)
═══════════════════════════════════════ */
.viewer-section{
  padding:var(--sp12) 0;
  background:var(--g);
  position:relative;overflow:hidden;
}
.viewer-section::before{
  content:'';position:absolute;top:-30%;left:-10%;
  width:60%;height:160%;
  background:radial-gradient(ellipse,rgba(94,198,174,.14) 0%,transparent 60%);
  pointer-events:none;
}
.viewer-section::after{
  content:'';position:absolute;bottom:-20%;right:5%;
  width:45%;height:100%;
  background:radial-gradient(ellipse,rgba(94,198,174,.08) 0%,transparent 60%);
  pointer-events:none;
}
.viewer-sec-spiral{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  pointer-events:none;opacity:.05;color:var(--a-pale);
}
.viewer-sec-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center;
}
.viewer-sec-copy{max-width:480px}
.viewer-sec-copy .h2{color:var(--white);margin-bottom:var(--sp4)}
.viewer-sec-copy .lead{max-width:100%;margin-bottom:var(--sp7)}
.viewer-frame{
  border-radius:var(--r24);overflow:hidden;
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 0 0 1px rgba(255,255,255,.08),0 32px 80px rgba(0,0,0,.38),0 12px 32px rgba(0,0,0,.22);
  aspect-ratio:4/3;position:relative;
}
.viewer-frame iframe{width:100%;height:100%;border:none;display:block}
.viewer-caption{
  display:flex;align-items:center;gap:10px;
  margin-top:14px;font-size:.78rem;color:rgba(167,242,224,.65);font-weight:500;
}
.viewer-caption svg{color:var(--a);flex-shrink:0}

/* Home viewer: grande + centrato */
.viewer-stage{
  position:relative;
  z-index:2;
  width:min(1080px, calc(100vw - 140px));
  margin:0 auto;
}
.viewer-frame-full{
  width:100%;
  aspect-ratio:16/9;
  min-height:360px;
  border-radius:var(--r24);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 0 0 1px rgba(255,255,255,.10),0 34px 88px rgba(0,0,0,.40),0 12px 30px rgba(0,0,0,.24);
}
.viewer-frame-full iframe{
  width:100%;
  height:100%;
  border:none;
  display:block;
}
.vf-bar{
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:rgba(253,252,250,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--r12);
  padding:12px 16px;
  backdrop-filter:blur(8px);
}
.vf-status{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.78rem;
  font-weight:600;
  color:rgba(255,255,255,.56);
}
.vf-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--a);
  animation:blink 2s infinite;
  flex-shrink:0;
  display:block;
}
.vf-cta{padding:10px 24px;font-size:.82rem}

/* ═══════════════════════════════════════
   FEATURE BENTO
═══════════════════════════════════════ */
.feat-grid{
  display:grid;grid-template-columns:1fr 1fr;
  border-radius:var(--r28);overflow:hidden;
  box-shadow:var(--e3);border:1px solid var(--b);
  gap:1px;background:var(--b);
}
.feat{
  background:var(--white);padding:64px 56px;
  position:relative;overflow:hidden;
  transition:background var(--tm) var(--std);
}
.feat::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1.5px;
  background:linear-gradient(90deg,transparent,var(--a-m),transparent);
  opacity:0;transition:opacity var(--tm);
}
.feat:hover::before{opacity:1}
.feat:hover{background:var(--s1)}
.feat-wide{
  grid-column:span 2;background:var(--g);
  display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center;
}
.feat-wide:hover{background:var(--g-m)}
.feat-wide::before{display:none}
.feat-ico{
  width:50px;height:50px;border-radius:var(--r12);
  border:1.5px solid var(--b);background:var(--g-05);color:var(--g);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:var(--sp6);
  transition:all var(--tm) var(--std);box-shadow:var(--e1);
}
.feat:hover .feat-ico{background:var(--g);color:var(--white);border-color:var(--g);box-shadow:var(--g-sh)}
.feat-ico-light{border-color:rgba(255,255,255,.18);color:var(--a);background:rgba(255,255,255,.09)}
.feat h3{font-size:1.15rem;font-weight:600;color:var(--ink);margin-bottom:12px}
.feat p {font-size:.9375rem;color:var(--i60);line-height:1.76}
.feat-wide h3{color:var(--white)}
.feat-wide p {color:rgba(253,252,250,.55)}
.feat-vis{display:flex;align-items:center;justify-content:center;opacity:.09}

/* ═══════════════════════════════════════
   USE CASE CARDS
═══════════════════════════════════════ */
.uc-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.uc-card{
  border-radius:var(--r32);overflow:hidden;position:relative;
  transition:transform var(--tm) var(--spr),box-shadow var(--tm) var(--std);
}
.uc-card:hover{transform:translateY(-5px)}
.uc-light{background:var(--s1);border:1.5px solid var(--b);box-shadow:var(--e2)}
.uc-light:hover{box-shadow:var(--e5)}
.uc-dark {background:var(--g);box-shadow:var(--g-sh)}
.uc-dark:hover{box-shadow:0 8px 24px rgba(37,76,60,.28),0 36px 80px rgba(37,76,60,.24)}
.uc-in{padding:72px 64px;position:relative;z-index:2}
.uc-cat{font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--i40);margin-bottom:var(--sp5)}
.uc-dark .uc-cat{color:rgba(255,255,255,.35)}
.uc-title{font-size:2rem;font-weight:700;line-height:1.14;letter-spacing:-.022em;color:var(--ink);margin-bottom:var(--sp4)}
.uc-title em{font-style:normal;color:var(--g)}
.uc-dark .uc-title    {color:var(--white)}
.uc-dark .uc-title em {color:#fff;font-weight:700}
.uc-desc{font-size:.9375rem;color:var(--i60);line-height:1.76;margin-bottom:var(--sp7)}
.uc-dark .uc-desc{color:rgba(253,252,250,.55)}
.uc-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--sp8)}
.uc-tag{
  font-size:.72rem;font-weight:500;padding:6px 16px;
  border-radius:var(--rf);border:1.5px solid var(--b);color:var(--i60);background:var(--white);
}
.uc-dark .uc-tag{border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.55);background:rgba(255,255,255,.06)}
.uc-deco{
  position:absolute;bottom:-64px;right:-64px;
  width:310px;opacity:.06;pointer-events:none;z-index:1;color:var(--g);
}
.uc-dark .uc-deco{color:var(--white);opacity:.07}

/* ═══════════════════════════════════════
   TRUST BAND
═══════════════════════════════════════ */
.trust-band{background:var(--s1);border-top:1px solid var(--b);border-bottom:1px solid var(--b);padding:72px 0}
.trust-row{display:flex;align-items:center;justify-content:center;gap:56px;flex-wrap:nowrap}
.t-item{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.t-val{font-family:var(--fm);font-size:2.4rem;font-weight:400;color:var(--g);line-height:1;letter-spacing:-.04em}
.t-lbl{font-size:.7rem;font-weight:700;color:var(--i40);letter-spacing:.1em;text-transform:uppercase}
.trust-div{width:1px;height:52px;background:var(--bm)}

/* ═══════════════════════════════════════
   CTA BAND  —  all text white + bold
═══════════════════════════════════════ */
.cta-band{
  background:var(--g);padding:136px 0;
  position:relative;overflow:hidden;
}
.cta-band .lead{color:#fff !important}
.cta-band::before{
  content:'';position:absolute;top:-30%;left:-8%;
  width:65%;height:160%;
  background:radial-gradient(ellipse,rgba(94,198,174,.13) 0%,transparent 60%);
  pointer-events:none;
}
.cta-band::after{
  content:'';position:absolute;bottom:-20%;right:4%;
  width:45%;height:100%;
  background:radial-gradient(ellipse,rgba(94,198,174,.08) 0%,transparent 60%);
  pointer-events:none;
}
.cta-spiral{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  pointer-events:none;opacity:.055;color:var(--a-pale);
}
.cta-inner{position:relative;z-index:2;text-align:center}
.cta-inner .h-hero{margin:16px 0 24px}
.cta-inner .lead  {margin:0 auto 56px;max-width:500px}
.cta-btns{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}

/* ═══════════════════════════════════════
   PAGE HERO (inner pages)
═══════════════════════════════════════ */
.page-hero{
  padding:calc(var(--nh) + 96px) 0 108px;
  background:var(--s1);border-bottom:1px solid var(--b);
  position:relative;overflow:hidden;
}
.page-hero-bg{
  position:absolute;top:0;right:0;width:55%;height:100%;
  background:radial-gradient(ellipse at top right,rgba(94,198,174,.07) 0%,transparent 65%);
  pointer-events:none;
}
.page-hero-deco{
  position:absolute;right:-64px;top:50%;transform:translateY(-50%);
  width:560px;opacity:.04;color:var(--g);pointer-events:none;
}
.page-hero-cnt{position:relative;z-index:2}
.page-hero h1{margin:16px 0 24px;max-width:700px}
.page-hero p {font-size:1.075rem;color:var(--i60);max-width:560px;line-height:1.76}

/* ─── HERO TWO-COLUMN (home) - rimosso perché sostituito dallo sticky ─── */
.hero-with-video{
  min-height:100dvh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:var(--nh);
  padding-bottom:40px;
}
.hero-two-col{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  grid-template-rows:auto auto;
  column-gap:48px;
  row-gap:36px;
}
/* Titolo a larghezza piena */
.hero-full-row{
  grid-column:1 / -1;
}
.hero-full-row h1{margin-top:12px;max-width:none}

/* Colonne inferiori allineate in cima */
.hero-text-col{min-width:0;align-self:start}
.hero-text-col p{max-width:none}

/* Video card — minimal */
.hero-video-col{min-width:0;align-self:start}
.hero-video-card{
  border-radius:var(--r20);
  overflow:hidden;
}
/* Stage video */
.hero-video-stage{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:var(--ink);
}
.hero-video-el{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}

/* Responsive */
@media(max-width:960px){
  .hero-two-col{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    row-gap:32px;
  }
  .hero-full-row{grid-column:1}
  .hero-video-col{max-width:600px;margin:0 auto;width:100%}
}
@media(max-width:480px){
  .hero-two-col{row-gap:24px}
  .hero-video-col{max-width:100%}
}

/* ═══════════════════════════════════════
   PRICING CARDS
═══════════════════════════════════════ */
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:920px;margin:0 auto}
.price-card{border-radius:var(--r28);overflow:hidden;transition:transform var(--tm) var(--spr),box-shadow var(--tm) var(--std)}
.price-card:hover{transform:translateY(-5px)}
.pc-light{background:var(--white);border:1.5px solid var(--b);box-shadow:var(--e2)}
.pc-light:hover{box-shadow:var(--e5)}
.pc-dark {background:var(--g);box-shadow:var(--g-sh)}
.pc-dark:hover{box-shadow:0 8px 24px rgba(37,76,60,.28),0 36px 80px rgba(37,76,60,.24)}
.pc-in{padding:60px 56px}
.pc-eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--i40);margin-bottom:10px}
.pc-dark .pc-eyebrow{color:rgba(255,255,255,.35)}
.pc-name{font-size:2rem;font-weight:700;color:var(--ink);margin-bottom:8px;letter-spacing:-.026em}
.pc-dark .pc-name{color:var(--white)}
.pc-tag {font-size:.9rem;color:var(--i40);line-height:1.70}
.pc-dark .pc-tag{color:rgba(255,255,255,.44)}
.pc-price{
  display:flex;align-items:baseline;gap:4px;margin:32px 0;
  padding:30px 0;border-top:1px solid var(--b);border-bottom:1px solid var(--b);
}
.pc-dark .pc-price{border-color:rgba(255,255,255,.12)}
.pc-cur{font-family:var(--fm);font-size:1.5rem;font-weight:300;color:var(--i40);align-self:flex-start;margin-top:10px}
.pc-dark .pc-cur{color:rgba(255,255,255,.30)}
.pc-val{font-family:var(--fm);font-size:4.8rem;font-weight:400;color:var(--ink);line-height:1;letter-spacing:-.05em}
.pc-dark .pc-val{color:var(--white)}
.pc-per{font-size:.77rem;font-weight:500;color:var(--i40);align-self:flex-end;margin-bottom:9px;display:flex;flex-direction:column;gap:2px;margin-left:8px}
.pc-dark .pc-per{color:rgba(255,255,255,.30)}
.pc-feats{display:flex;flex-direction:column;gap:14px;margin-bottom:var(--sp8)}
.pc-feat{display:flex;align-items:flex-start;gap:12px;font-size:.9rem;color:var(--i60);line-height:1.54}
.pc-dark .pc-feat{color:rgba(255,255,255,.60)}
.pf-ic{width:18px;height:18px;flex-shrink:0;margin-top:1px}
circle.pfc{fill:none;stroke:var(--g);stroke-width:1.5}
polyline.pfv{fill:none;stroke:var(--g);stroke-width:1.5}
.pc-dark circle.pfc{stroke:var(--a)}
.pc-dark polyline.pfv{stroke:var(--a)}

/* Token grid */
.token-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:920px;margin:72px auto 0}
.token-blk{
  border:1.5px solid var(--b);border-radius:var(--r24);
  padding:44px 32px;text-align:center;background:var(--white);
  transition:all var(--tm) var(--std);box-shadow:var(--e1);
}
.token-blk:hover{border-color:var(--g);box-shadow:var(--e2);transform:translateY(-2px)}
.token-blk.feat{border-color:var(--g);background:var(--g-05);box-shadow:var(--e2)}
.tok-qty{font-family:var(--fm);font-size:3.2rem;font-weight:400;color:var(--g);line-height:1;margin-bottom:4px}
.tok-u  {font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--i40);margin-bottom:20px}
.tok-p  {font-family:var(--fm);font-size:1.65rem;font-weight:400;color:var(--ink);margin-bottom:4px}
.tok-n  {font-size:.77rem;color:var(--i40)}

/* ═══════════════════════════════════════
   FAQ
═══════════════════════════════════════ */
.faq-list{max-width:780px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--b)}
.faq-item:first-child{border-top:1px solid var(--b)}
.faq-btn{
  width:100%;background:none;border:none;
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:32px 0;text-align:left;cursor:pointer;
}
.faq-q{font-size:1.05rem;font-weight:600;color:var(--ink);line-height:1.35;transition:color var(--td)}
.faq-btn:hover .faq-q{color:var(--g)}
.faq-ic{
  width:26px;height:26px;border-radius:50%;flex-shrink:0;
  border:1.5px solid var(--b);color:var(--g);
  display:flex;align-items:center;justify-content:center;
  transition:all var(--tm) var(--spr);
}
.faq-item.open .faq-ic{transform:rotate(45deg);background:var(--g);color:var(--white);border-color:var(--g)}
.faq-body{overflow:hidden;max-height:0;transition:max-height .42s var(--std)}
.faq-item.open .faq-body{max-height:600px}
.faq-body p{font-size:.9375rem;color:var(--i60);line-height:1.76;padding-bottom:32px}

/* Pricing FAQ layout */
.pricing-faq-wrap{
  background:var(--white);
  border:1.5px solid var(--b);
  border-radius:var(--r32);
  padding:64px 60px;
  box-shadow:var(--e3);
}
.pricing-faq-intro{max-width:560px;margin:16px auto 0}
.pricing-faq-list{max-width:100%}
.pricing-faq-list .faq-item{
  background:var(--s1);
  border:1px solid var(--b);
  border-radius:var(--r16);
  margin-bottom:12px;
  overflow:hidden;
}
.pricing-faq-list .faq-item:first-child{border-top:1px solid var(--b)}
.pricing-faq-list .faq-item:last-child{margin-bottom:0}
.pricing-faq-list .faq-btn{padding:24px 26px}
.pricing-faq-list .faq-body p{padding:0 26px 24px}

/* ═══════════════════════════════════════
   FAQ PAGE — clean card style
═══════════════════════════════════════ */
.faq-minimal .s-tabs{
  border-bottom:none;gap:8px;flex-wrap:wrap;margin-bottom:48px;
}
.faq-minimal .s-tab{
  border-bottom:none;margin-right:0;margin-bottom:0;
  padding:10px 22px;border-radius:var(--rf);
  border:1.5px solid var(--b);background:var(--white);
  font-size:.875rem;font-weight:600;color:var(--i60);
  transition:all var(--tm) var(--std);
}
.faq-minimal .s-tab:hover:not(.active){
  border-color:var(--g);color:var(--g);background:var(--s1);
}
.faq-minimal .s-tab.active{
  background:var(--g);color:var(--white);border-color:var(--g);
}
.faq-minimal .faq-list{max-width:760px;margin:0 auto}
.faq-minimal .faq-item{
  border:1.5px solid var(--b);border-radius:var(--r20);
  background:var(--white);margin-bottom:8px;overflow:hidden;
  box-shadow:var(--e1);
  transition:border-color var(--tm) var(--std),box-shadow var(--tm) var(--std);
}
.faq-minimal .faq-item:first-child{border-top:1.5px solid var(--b)}
.faq-minimal .faq-item.open{
  border-color:rgba(37,76,60,.30);
  box-shadow:0 4px 20px rgba(37,76,60,.08);
}
.faq-minimal .faq-btn{padding:24px 28px}
.faq-minimal .faq-btn:hover .faq-q{color:var(--g)}
.faq-minimal .faq-body p{padding:0 28px 24px}
.faq-minimal .faq-body p:not(:last-child){padding-bottom:12px}

html[data-theme='dark'] .faq-minimal .faq-item{
  background:var(--s1);
}
html[data-theme='dark'] .faq-minimal .faq-item.open{
  border-color:rgba(94,198,174,.25);
  box-shadow:0 4px 20px rgba(0,0,0,.20);
}
html[data-theme='dark'] .faq-minimal .s-tab{
  background:var(--s1);border-color:var(--b);
}
html[data-theme='dark'] .faq-minimal .s-tab.active{
  background:var(--g);border-color:var(--g);color:var(--white);
}

/* ═══════════════════════════════════════
   TUTORIAL
═══════════════════════════════════════ */
.tut-layout{display:grid;grid-template-columns:1fr 1fr;gap:104px;align-items:start}
.tut-step{display:grid;grid-template-columns:36px 1fr;gap:var(--sp5);padding:var(--sp7) 0;border-bottom:1px solid var(--b);align-items:start}
.tut-step:last-child{border-bottom:none}
.tut-step:first-child{padding-top:0}
.tut-n{font-family:var(--fm);font-size:.875rem;color:var(--i40);padding-top:4px}
.tut-body h4{font-size:1.05rem;font-weight:600;color:var(--ink);margin-bottom:9px}
.tut-body p {font-size:.9rem;color:var(--i60);line-height:1.76}
.tut-sb{position:sticky;top:calc(var(--nh) + 36px)}
.vid-box{
  background:var(--g);border-radius:var(--r24);
  aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;cursor:pointer;margin-bottom:var(--sp5);
  transition:box-shadow var(--tm) var(--std);box-shadow:var(--e3);
}
.vid-box:hover{box-shadow:var(--g-sh)}
.vid-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:.07;color:var(--a-pale)}
.vid-play{
  position:relative;z-index:2;width:64px;height:64px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.40);background:rgba(255,255,255,.13);
  display:flex;align-items:center;justify-content:center;color:white;
  transition:all var(--tm) var(--std);
}
.vid-box:hover .vid-play{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.64);transform:scale(1.07)}

/* ─── Video Carousel ─────────────────── */
.vid-carousel{margin-bottom:var(--sp5)}
.vc-slides{position:relative}
.vc-slide{display:none}
.vc-slide.active{display:block}
.vc-slide .vid-box{margin-bottom:0;cursor:default}
.vc-ph-inner{
  position:relative;z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:14px;
}
.vc-ph-lbl{
  font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(255,255,255,.55);
}
.vc-controls{
  display:flex;align-items:center;justify-content:center;
  gap:16px;margin-top:14px;
}
.vc-arrow{
  width:36px;height:36px;border-radius:50%;
  border:1.5px solid var(--b);background:var(--white);
  display:flex;align-items:center;justify-content:center;
  color:var(--i60);cursor:pointer;
  transition:all var(--tm) var(--std);
}
.vc-arrow:hover{border-color:var(--g);color:var(--g);background:var(--s1)}
.vc-dots{display:flex;gap:8px;align-items:center}
.vc-dot{
  width:8px;height:8px;border-radius:50%;
  border:none;background:var(--b);cursor:pointer;padding:0;
  transition:background var(--tm) var(--std),transform var(--tm) var(--std);
}
.vc-dot.active{background:var(--g);transform:scale(1.3)}

.sb-links{display:flex;flex-direction:column;gap:10px}
.sb-link{
  display:flex;align-items:center;gap:12px;padding:16px 20px;
  border:1.5px solid var(--b);border-radius:var(--r16);
  font-size:.875rem;font-weight:500;color:var(--i60);background:var(--white);
  transition:all var(--td) var(--std);box-shadow:var(--e1);
}
.sb-link svg{color:var(--g);flex-shrink:0}
.sb-link:hover{border-color:var(--g);color:var(--g);background:var(--g-05);transform:translateX(2px);box-shadow:var(--e2)}
.tip-box{background:var(--s1);border:1.5px solid var(--b);border-radius:var(--r20);padding:32px;margin-top:20px}
.tip-box h5{font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:14px}
.tip-li{display:flex;gap:10px;font-size:.825rem;color:var(--i60);margin-bottom:10px;line-height:1.5}
.tip-li::before{content:'→';color:var(--g);flex-shrink:0;font-weight:700}

/* ═══════════════════════════════════════
   CHI SIAMO
═══════════════════════════════════════ */
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.team-card{
  border:1.5px solid var(--b);border-radius:var(--r24);
  padding:52px 48px;background:var(--white);
  transition:all var(--tm) var(--std);box-shadow:var(--e1);
  position:relative;overflow:hidden;
}
.team-card::before{
  content:'';
  position:absolute;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg,var(--a),rgba(94,198,174,0));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform var(--tm) var(--std);
}
.team-card::after{
  content:'';
  position:absolute;
  top:-40%;right:-20%;
  width:220px;height:220px;
  background:radial-gradient(circle,rgba(94,198,174,.16) 0%,transparent 64%);
  pointer-events:none;
  opacity:0;
  transition:opacity var(--tm) var(--std);
}
.team-card:hover{box-shadow:var(--e4);transform:translateY(-4px);border-color:rgba(37,76,60,.18)}
.team-card:hover::before{transform:scaleX(1)}
.team-card:hover::after{opacity:1}
.team-ico{
  font-size:1.5rem;width:56px;height:56px;
  border:1.5px solid var(--b);border-radius:var(--r16);
  display:flex;align-items:center;justify-content:center;
  background:var(--g-05);margin-bottom:var(--sp5);
}
.team-card h4{font-size:1.12rem;font-weight:600;color:var(--ink);margin-bottom:10px;letter-spacing:-.01em}
.team-card p {font-size:.9rem;color:var(--i60);line-height:1.76}
.team-card p strong{color:var(--ink);font-weight:600}
.team-photo{
  width:64px;
  height:64px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid var(--b);
  box-shadow:var(--e2);
  margin-bottom:14px;
}
.team-photo-anon{
  background:linear-gradient(180deg,var(--s2),var(--s1));
  display:flex;
  align-items:center;
  justify-content:center;
}
.anon-avatar{
  position:relative;
  width:38px;
  height:38px;
  display:block;
}
.anon-avatar::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  width:16px;
  height:16px;
  transform:translateX(-50%);
  border-radius:50%;
  background:var(--g-m);
}
.anon-avatar::after{
  content:'';
  position:absolute;
  bottom:0;
  left:50%;
  width:30px;
  height:18px;
  transform:translateX(-50%);
  border-radius:16px 16px 8px 8px;
  background:var(--g-m);
}
.team-role{
  display:inline-flex;
  align-items:center;
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--g);
  background:var(--g-05);
  border:1.5px solid var(--g-12);
  border-radius:var(--rf);
  padding:4px 10px;
  margin-bottom:8px;
}
.team-sector{
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--i40);
  margin-bottom:8px;
}

.num-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.num-cell{padding:56px 44px;text-align:center;border-right:1px solid rgba(255,255,255,.09)}
.num-cell:last-child{border-right:none}
.num-v{font-family:var(--fm);font-size:3.4rem;font-weight:400;color:var(--a-pale);line-height:1;letter-spacing:-.04em;margin-bottom:8px}
.num-l{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.28)}

/* ═══════════════════════════════════════
   CONTACT / FORM
═══════════════════════════════════════ */
.contact-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:104px;align-items:start}
.ci-row{padding:28px 0;border-bottom:1px solid var(--b)}
.ci-row:last-child{border-bottom:none}
.ci-lbl  {font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--i40);margin-bottom:8px}
.ci-title{font-size:1.05rem;font-weight:600;color:var(--ink);margin-bottom:5px}
.ci-body {font-size:.9rem;color:var(--i60);line-height:1.72}
.ci-link {font-size:.9rem;color:var(--i60);font-weight:500;transition:color var(--td)}
.ci-link:hover{color:var(--g)}
.form-card{
  background:var(--s1);border:1.5px solid var(--b);
  border-radius:var(--r32);padding:64px 60px;box-shadow:var(--e3);
}
.form-card h2{font-size:2rem;font-weight:700;color:var(--ink);margin-bottom:9px;letter-spacing:-.026em}
.form-card-desc{font-size:.875rem;color:var(--i40);margin-bottom:var(--sp7);line-height:1.70}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ff{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.flbl{font-size:.67rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--i60)}
.finp{
  font-size:.9375rem;color:var(--ink);background:var(--white);
  border:1.5px solid var(--bm);border-radius:var(--r12);padding:14px 18px;
  outline:none;width:100%;
  transition:border-color var(--td),box-shadow var(--td);
}
.finp:focus{border-color:var(--g);box-shadow:0 0 0 4px rgba(37,76,60,.10)}
.finp::placeholder{color:var(--i40)}
textarea.finp{min-height:132px;resize:vertical}
.form-ft{display:flex;align-items:center;gap:22px;margin-top:28px;flex-wrap:wrap}
.form-priv{font-size:.77rem;color:var(--i40);line-height:1.60}
.form-priv a{color:var(--g)}

/* ═══════════════════════════════════════
   SETTORI TABS
═══════════════════════════════════════ */
.s-tabs{display:flex;border-bottom:2px solid var(--b);margin-bottom:80px}
.s-tab{
  font-size:1rem;font-weight:600;color:var(--i40);
  background:none;padding:14px 0;margin-right:44px;cursor:pointer;
  border-bottom:2px solid transparent;margin-bottom:-2px;
  transition:color var(--td),border-color var(--td);
}
.s-tab.active{color:var(--g);border-bottom-color:var(--g)}
.s-tab:hover:not(.active){color:var(--i60)}
.s-panel{display:none}
.s-panel.active{display:block}
.sector-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:start;
  margin-bottom:80px;
}
.ex-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ex-card{
  border:1.5px solid var(--b);border-radius:var(--r24);overflow:hidden;
  background:var(--white);cursor:pointer;
  transition:all var(--tm) var(--std);box-shadow:var(--e1);
}
.ex-card:hover{box-shadow:var(--e3);transform:translateY(-3px);border-color:rgba(37,76,60,.14)}
.ex-thumb{aspect-ratio:4/3;background:var(--s2);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.ex-dk{background:var(--g)}
.ex-ico{color:var(--g);opacity:.22;position:relative;z-index:1}
.ex-dk .ex-ico{color:var(--a-pale);opacity:.20}
.ex-sp{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:.08}
.ex-info{padding:24px 28px}
.ex-title{font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:5px}
.ex-desc {font-size:.8rem;color:var(--i40)}

/* ═══════════════════════════════════════
   FOOTER
═══════════════════════════════════════ */
.footer{background:var(--ink);color:var(--white);padding:104px 0 0}
.footer-grid{
  display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:60px;
  padding-bottom:88px;border-bottom:1px solid rgba(255,255,255,.07);
}
.f-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.f-name {font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:#f3fbf8}
.f-tag  {font-size:.875rem;color:rgba(255,255,255,.38);line-height:1.74;max-width:270px;margin-bottom:20px}
.f-legal{font-size:.78rem;color:rgba(255,255,255,.22);line-height:1.84}
.f-legal a{color:var(--a);transition:opacity var(--td)}
.f-legal a:hover{opacity:.7}
.f-col h5{font-size:.64rem;font-weight:700;letter-spacing:.20em;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:20px}
.f-col ul{display:flex;flex-direction:column;gap:12px}
.f-col a {font-size:.875rem;color:rgba(255,255,255,.44);transition:color var(--td)}
.f-col a:hover{color:var(--a)}
.footer-bot{padding:24px 0}
.footer-bot-inner{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;
  font-size:.75rem;color:rgba(255,255,255,.20);
}

/* Global variant: minimal + premium */
.minimal-premium .page-hero-deco,
.minimal-premium .cta-spiral{opacity:.22}

.minimal-premium .sec{padding:var(--sp11) 0}

.minimal-premium .form-card,
.minimal-premium .faq-item,
.minimal-premium .team-card,
.minimal-premium .sb-link,
.minimal-premium .tip-box,
.minimal-premium .cta-band{
  box-shadow:var(--e1);
}

.minimal-premium .form-card,
.minimal-premium .faq-item,
.minimal-premium .team-card,
.minimal-premium .sb-link,
.minimal-premium .tip-box{
  border-color:var(--b);
}

.minimal-premium .form-card-desc,
.minimal-premium .form-priv,
.minimal-premium .lead{color:var(--i60)}

.minimal-premium .finp{
  border-color:var(--b);
  box-shadow:none;
}

.minimal-premium .finp:focus{
  border-color:var(--g);
  box-shadow:0 0 0 3px rgba(37,76,60,.10);
}

html[data-theme='dark'] .minimal-premium .form-card,
html[data-theme='dark'] .minimal-premium .faq-item,
html[data-theme='dark'] .minimal-premium .team-card,
html[data-theme='dark'] .minimal-premium .sb-link,
html[data-theme='dark'] .minimal-premium .tip-box,
html[data-theme='dark'] .minimal-premium .cta-band{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02);
}

/* Home variant: minimal + premium (no palette changes) */
.home-minimal .page-hero-deco,
.home-minimal .viewer-sec-spiral,
.home-minimal .cta-spiral{opacity:.22}

.home-minimal .ticker{
  background:var(--white);
  border-top:1px solid var(--b);
  border-bottom:1px solid var(--b);
}
.home-minimal .ticker-item{opacity:.88}

.home-minimal .stats-bar,
.home-minimal .feat,
.home-minimal .uc-card,
.home-minimal .viewer-frame-full,
.home-minimal .hiw-panel,
.home-minimal .feat-grid,
.home-minimal .vf-bar{
  box-shadow:var(--e1);
}

.home-minimal .feat,
.home-minimal .uc-card,
.home-minimal .hiw-panel,
.home-minimal .viewer-frame-full{
  border-color:var(--b);
}

.home-minimal .btn{letter-spacing:.01em}
.home-minimal .lead{max-width:64ch}

.home-minimal .sec{padding:var(--sp11) 0}
.home-minimal .sec-sm{padding:var(--sp9) 0}

html[data-theme='dark'] .home-minimal .ticker{
  background:var(--s1);
  border-top-color:rgba(233,241,238,.10);
  border-bottom-color:rgba(233,241,238,.10);
}
html[data-theme='dark'] .home-minimal .feat,
html[data-theme='dark'] .home-minimal .uc-card,
html[data-theme='dark'] .home-minimal .hiw-panel,
html[data-theme='dark'] .home-minimal .viewer-frame-full,
html[data-theme='dark'] .home-minimal .vf-bar{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02);
}

/* Settori variant: minimal + premium */
.settori-minimal .page-hero-deco,
.settori-minimal .cta-spiral{opacity:.22}

.settori-minimal .s-tabs{margin-bottom:56px;border-bottom:1px solid var(--b)}
.settori-minimal .s-tab{font-weight:500}

.settori-minimal .sector-split{gap:56px;margin-bottom:56px}

.settori-minimal .sector-split > .ao.d1,
.settori-minimal .ex-card,
.settori-minimal .ex-thumb,
.settori-minimal .cta-band{
  box-shadow:var(--e1)!important;
}

.settori-minimal .sector-split > .ao.d1,
.settori-minimal .ex-card{border-color:var(--b)!important}

.settori-minimal .ex-info{padding:20px 24px}
.settori-minimal .ex-title{font-weight:600}
.settori-minimal .ex-desc{color:var(--i60)}

.settori-minimal .sec{padding:var(--sp11) 0}

html[data-theme='dark'] .settori-minimal .ex-card,
html[data-theme='dark'] .settori-minimal .sector-split > .ao.d1,
html[data-theme='dark'] .settori-minimal .ex-thumb,
html[data-theme='dark'] .settori-minimal .cta-band{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Pricing variant: minimal + premium */
.pricing-minimal .page-hero-deco,
.pricing-minimal .cta-spiral{opacity:.22}

.pricing-minimal .sec{padding:var(--sp11) 0}

.pricing-minimal .price-card,
.pricing-minimal .token-blk,
.pricing-minimal .pricing-faq-wrap,
.pricing-minimal .pricing-faq-list .faq-item,
.pricing-minimal .cta-band{
  box-shadow:var(--e1)!important;
}

.pricing-minimal .price-card,
.pricing-minimal .token-blk,
.pricing-minimal .pricing-faq-wrap,
.pricing-minimal .pricing-faq-list .faq-item{
  border-color:var(--b)!important;
}

.pricing-minimal .pc-tag,
.pricing-minimal .tok-n,
.pricing-minimal .pricing-faq-intro{color:var(--i60)}

.pricing-minimal .pricing-faq-list .faq-btn{padding:22px 24px}

html[data-theme='dark'] .pricing-minimal .price-card,
html[data-theme='dark'] .pricing-minimal .token-blk,
html[data-theme='dark'] .pricing-minimal .pricing-faq-wrap,
html[data-theme='dark'] .pricing-minimal .pricing-faq-list .faq-item,
html[data-theme='dark'] .pricing-minimal .cta-band{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Tutorial variant: minimal + premium */
.tutorial-minimal .page-hero-deco,
.tutorial-minimal .cta-spiral{opacity:.22}

.tutorial-minimal .sec{padding:var(--sp11) 0}

.tutorial-minimal .vid-box,
.tutorial-minimal .sb-link,
.tutorial-minimal .tip-box,
.tutorial-minimal .cta-band{
  box-shadow:var(--e1)!important;
}

/* step card premium */
.tutorial-minimal .tut-step{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:22px;
  align-items:start;
  padding:28px 28px 28px 24px !important;
  border-radius:var(--r20) !important;
  border:1.5px solid var(--b) !important;
  border-left:4px solid var(--a) !important;
  border-bottom:1.5px solid var(--b) !important;
  margin-bottom:14px;
  background:var(--white);
  box-shadow:var(--e1) !important;
  transition:transform var(--tm) var(--std),box-shadow var(--tm) var(--std),border-color var(--tm) var(--std);
  position:relative;
  overflow:hidden;
}
.tutorial-minimal .tut-step::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(94,198,174,.04) 0%,transparent 60%);
  pointer-events:none;
}
.tutorial-minimal .tut-step:hover{
  transform:translateY(-3px);
  box-shadow:var(--e3) !important;
  border-color:rgba(37,76,60,.18) !important;
  border-left-color:var(--a) !important;
}
.tutorial-minimal .tut-step:last-child{margin-bottom:0 !important}

.tutorial-minimal .tut-n{
  width:48px;height:48px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--g) 0%,var(--a) 100%);
  border-radius:var(--r16);
  font-family:var(--fm);font-size:.8rem;font-weight:700;color:white;
  letter-spacing:.04em;
  padding-top:0;flex-shrink:0;margin-top:2px;
  box-shadow:0 4px 12px rgba(37,76,60,.22);
}
.tutorial-minimal .tut-n-check{
  background:linear-gradient(135deg,#1a3a2e 0%,var(--g) 100%) !important;
  font-size:1.3rem !important;font-weight:700 !important;letter-spacing:0 !important;
}
.tutorial-minimal .tut-step-final{
  border-left-color:var(--g) !important;
  background:linear-gradient(135deg,rgba(37,76,60,.04) 0%,var(--white) 50%) !important;
}
.tutorial-minimal .tut-body h4{font-size:1.05rem;font-weight:700;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em}
.tutorial-minimal .tut-body p{color:var(--i60);line-height:1.78;font-size:.9rem}
.tutorial-minimal .tip-box{background:var(--white)}

html[data-theme='dark'] .tutorial-minimal .vid-box,
html[data-theme='dark'] .tutorial-minimal .sb-link,
html[data-theme='dark'] .tutorial-minimal .tip-box,
html[data-theme='dark'] .tutorial-minimal .cta-band{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Supporto variant: minimal + premium */
.supporto-minimal .page-hero-deco{opacity:.22}
.supporto-minimal .sec{padding:var(--sp11) 0}

.supporto-minimal .form-card{
  background:var(--white);
  border-color:var(--b);
  box-shadow:var(--e1);
}

.supporto-minimal .form-card-desc,
.supporto-minimal .flbl{color:var(--i60)}

.supporto-minimal .finp{
  border-color:var(--b);
  box-shadow:none;
}

.supporto-minimal .finp:focus{
  border-color:var(--g);
  box-shadow:0 0 0 3px rgba(37,76,60,.10);
}

html[data-theme='dark'] .supporto-minimal .form-card{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02);
}

/* Rimozione dati variant: minimal + premium */
.rimozione-minimal .page-hero-deco{opacity:.22}
.rimozione-minimal .sec{padding:var(--sp11) 0}

.rimozione-minimal .form-card{
  background:var(--white);
  border-color:var(--b);
  box-shadow:var(--e1);
}

.rimozione-minimal .form-card-desc,
.rimozione-minimal .flbl,
.rimozione-minimal .form-priv{color:var(--i60)}

.rimozione-minimal .finp{
  border-color:var(--b);
  box-shadow:none;
}

.rimozione-minimal .finp:focus{
  border-color:var(--g);
  box-shadow:0 0 0 3px rgba(37,76,60,.10);
}

html[data-theme='dark'] .rimozione-minimal .form-card{
  box-shadow:0 6px 18px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.02);
}

/* ═══════════════════════════════════════
   SCROLL ANIMATIONS
═══════════════════════════════════════ */
.ao{
  opacity:0;transform:translateY(18px);
  transition:opacity var(--tl) var(--dec),transform var(--tl) var(--dec);
}
.ao.in{opacity:1;transform:translateY(0)}
.d1{transition-delay:.08s!important}
.d2{transition-delay:.16s!important}
.d3{transition-delay:.24s!important}
.d4{transition-delay:.32s!important}
.d5{transition-delay:.40s!important}

/* ═══════════════════════════════════════
   PREMIUM TYPOGRAPHY — serif display
═══════════════════════════════════════ */
.serif-display{
  font-family:var(--fs);
  letter-spacing:-.01em;
  font-weight:600;
}
.h-hero.serif-display{font-size:clamp(3rem,5.8vw,6.4rem);line-height:1.02;font-weight:600}
.h1.serif-display  {font-size:clamp(2.6rem,4.4vw,4.6rem);line-height:1.04;font-weight:600}
.h2.serif-display  {font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.07;font-weight:600}

/* em su serif = corsivo elegante, NON grassetto colorato */
.serif-display em{font-style:italic;font-weight:inherit;color:inherit}
/* em su sfondo scuro = bianco corsivo */
.on-dark .serif-display em,
.serif-display.on-dark em,
.cta-band .serif-display em,
.viewer-section .serif-display em{color:rgba(255,255,255,.92);font-style:italic;font-weight:inherit}

/* trust-strip dentro page-hero */
.page-hero-cnt .trust-strip{margin-top:32px;border-top:none;padding-top:0}

/* ─── Standardizzazione heading CTA band ────────────────
   Forza Cormorant Garamond su TUTTI i titoli .on-dark
   in qualsiasi contesto (cta-band, viewer-section, etc.)
──────────────────────────────────────────────────────── */
.cta-band .h-hero,
.cta-band .h2,
.cta-band .h1,
.viewer-section .h2{
  font-family:var(--fs);
  font-weight:600;
  letter-spacing:-.01em;
}
/* sizing uniforme dei titoli CTA hero */
.cta-band .h-hero{
  font-size:clamp(2.8rem, 5vw, 5.2rem);
  line-height:1.05;
}
/* em WITHIN .on-dark headings (h-hero, h1, h2) senza .serif-display esplicita */
.on-dark .h-hero em,
.on-dark .h1 em,
.on-dark .h2 em,
.on-dark .h3 em{
  font-style:normal;
  color:#fff;
  font-weight:700;
}
/* Con .serif-display: corsivo elegante sovrascrive il grassetto sopra */
.on-dark .h-hero.serif-display em,
.on-dark .h1.serif-display em,
.on-dark .h2.serif-display em,
.h-hero.serif-display.on-dark em,
.h1.serif-display.on-dark em,
.h2.serif-display.on-dark em{
  font-style:italic;
  font-weight:600;
  color:rgba(255,255,255,.92);
}

/* ═══════════════════════════════════════
   RIMOZIONE WATERMARK / LOGO BACKGROUND
═══════════════════════════════════════ */
.hiw-panel-deco,
.page-hero-deco,
.uc-deco,
.feat-vis,
.viewer-sec-spiral,
.cta-spiral,
.hero-r-spiral,
.ex-sp,
.vid-bg{display:none!important}

/* ═══════════════════════════════════════
   HERO PILL — eyebrow label premium
═══════════════════════════════════════ */
.hero-pill{
  display:inline-flex;align-items:center;gap:10px;
  font-size:.67rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--g);background:var(--g-05);
  border:1.5px solid var(--g-12);
  padding:7px 18px;border-radius:var(--rf);
  margin-bottom:var(--sp5);
}
.hero-pill::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:var(--a);animation:blink 2.2s infinite;
}

/* Vertical separator between hero columns */
.hero::after{
  content:'';
  position:absolute;top:var(--nh);bottom:0;left:55%;
  width:1px;
  background:linear-gradient(180deg,rgba(37,76,60,.09) 0%,rgba(37,76,60,.06) 60%,transparent 100%);
  pointer-events:none;z-index:1;
}

/* ═══════════════════════════════════════
   TRUST STRIP — below hero CTAs
═══════════════════════════════════════ */
.trust-strip{
  display:flex;align-items:center;gap:28px;flex-wrap:wrap;
  padding-top:var(--sp6);margin-top:4px;
  border-top:1px solid var(--b);
}
.trust-item{
  display:flex;align-items:center;gap:8px;
  font-size:.76rem;font-weight:600;color:var(--i40);letter-spacing:.01em;
}
.trust-item svg{color:var(--a);flex-shrink:0}

/* ═══════════════════════════════════════
   PREMIUM DIVIDER — gradient rule
═══════════════════════════════════════ */
.premium-divider{
  display:flex;align-items:center;justify-content:center;gap:20px;
  margin:0 auto var(--sp8);
}
.premium-divider::before,.premium-divider::after{
  content:'';flex:1;max-width:72px;height:1px;
}
.premium-divider::before{background:linear-gradient(90deg,transparent,var(--a))}
.premium-divider::after {background:linear-gradient(90deg,var(--a),transparent)}
.premium-divider span{
  font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--a);opacity:.7;
}

/* ═══════════════════════════════════════
   PROOF ROW — numero metriche homepage
═══════════════════════════════════════ */
.proof-row{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:var(--b);
  border:1px solid var(--b);border-radius:var(--r24);
  overflow:hidden;box-shadow:var(--e3);
}
.proof-cell{
  background:var(--white);padding:48px 40px;
  display:flex;flex-direction:column;gap:8px;
  position:relative;overflow:hidden;
  transition:background var(--tm) var(--std);
}
.proof-cell::after{
  content:'';
  position:absolute;bottom:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--a),rgba(94,198,174,0));
  transform:scaleX(0);transform-origin:left;
  transition:transform var(--tm) var(--std);
}
.proof-cell:hover{background:var(--s1)}
.proof-cell:hover::after{transform:scaleX(1)}
.proof-num{
  font-family:var(--fm);font-size:2.6rem;font-weight:400;
  color:var(--g);line-height:1;letter-spacing:-.04em;
}
.proof-lbl{font-size:.8rem;font-weight:500;color:var(--i40);line-height:1.5}

html[data-theme='dark'] .proof-cell{
  background:#16201d;border-color:rgba(233,241,238,.12);
}
html[data-theme='dark'] .proof-cell:hover{background:#1b2723}

/* ═══════════════════════════════════════
   TESTIMONIAL CARDS
═══════════════════════════════════════ */
.testimonial-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
}
.testimonial-card{
  background:var(--white);border:1.5px solid var(--b);
  border-radius:var(--r24);padding:40px 36px;
  position:relative;box-shadow:var(--e2);
  transition:all var(--tm) var(--std);
}
.testimonial-card:hover{
  border-color:var(--g-20);box-shadow:var(--e4);transform:translateY(-4px);
}
.testimonial-card::before{
  content:'\201C';
  position:absolute;top:22px;right:28px;
  font-size:4.5rem;line-height:1;
  color:var(--a);font-family:Georgia,serif;opacity:.20;
}
.testimonial-quote{
  font-family:var(--fs);font-size:1.05rem;font-style:italic;
  color:var(--i80);line-height:1.70;margin-bottom:28px;
}
.testimonial-author{display:flex;flex-direction:column;gap:3px}
.testimonial-name{font-size:.875rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.testimonial-role{
  font-size:.68rem;font-weight:700;color:var(--i40);
  letter-spacing:.12em;text-transform:uppercase;
}
.testimonial-accent{
  width:32px;height:2px;background:var(--a);
  border-radius:var(--rf);margin-bottom:20px;
}
html[data-theme='dark'] .testimonial-card{
  background:#16201d;border-color:rgba(233,241,238,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.03);
}
html[data-theme='dark'] .testimonial-card:hover{background:#1b2723;border-color:rgba(233,241,238,.22)}

/* ═══════════════════════════════════════
   LEGAL BADGE — inline trust indicator
═══════════════════════════════════════ */
.legal-badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:9px 18px;
  background:var(--g-05);border:1.5px solid var(--g-12);
  border-radius:var(--r12);
  font-size:.72rem;font-weight:700;color:var(--g);
  letter-spacing:.06em;text-transform:uppercase;
}

/* ═══════════════════════════════════════
   SEZIONE — gradient accent rule
═══════════════════════════════════════ */
.section-accent-rule{
  width:56px;height:2.5px;
  background:linear-gradient(90deg,var(--a),rgba(94,198,174,.2));
  border-radius:var(--rf);margin-bottom:var(--sp3);
}

/* CTA band: diagonal texture overlay for depth */
.cta-band::before{
  content:'';position:absolute;top:-30%;left:-8%;
  width:65%;height:160%;
  background:radial-gradient(ellipse,rgba(94,198,174,.13) 0%,transparent 60%);
  pointer-events:none;
}
.cta-band::after{
  content:'';position:absolute;bottom:-20%;right:4%;
  width:45%;height:100%;
  background:radial-gradient(ellipse,rgba(94,198,174,.08) 0%,transparent 60%);
  pointer-events:none;
}

/* Enhanced CTA band serif headline */
.cta-band .h-hero.serif-display{
  letter-spacing:-.01em;
  line-height:1.04;
}

/* ═══════════════════════════════════════
   ENHANCED STAT BAR (homepage)
═══════════════════════════════════════ */
.s-stat-num.mono{font-family:var(--fm);font-size:2.2rem;letter-spacing:-.04em}

/* ═══════════════════════════════════════
   PREMIUM PAGE HERO (inner pages)
═══════════════════════════════════════ */
.page-hero-premium{
  padding:calc(var(--nh) + 112px) 0 120px;
  background:var(--s1);border-bottom:1px solid var(--b);
  position:relative;overflow:hidden;
}
.page-hero-premium::after{
  content:'';
  position:absolute;bottom:0;left:8%;right:8%;height:1px;
  background:linear-gradient(90deg,transparent,var(--a-m),transparent);
}
.page-hero-premium .page-hero-bg{
  background:radial-gradient(ellipse at top right,rgba(94,198,174,.08) 0%,transparent 65%);
}

/* ═══════════════════════════════════════
   BACKGROUND PATTERN (subtle grid)
═══════════════════════════════════════ */
.bg-grid{
  position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(var(--b) 1px,transparent 1px),
    linear-gradient(90deg,var(--b) 1px,transparent 1px);
  background-size:80px 80px;
  opacity:.4;
}
.bg-grid-sm{background-size:40px 40px;opacity:.3}

/* Dark sections grid */
.viewer-section .bg-grid,
.cta-band .bg-grid{
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  opacity:1;
}

/* ═══════════════════════════════════════
   ANIMATED UNDERLINE — link highlight
═══════════════════════════════════════ */
.link-underline{
  position:relative;display:inline;
}
.link-underline::after{
  content:'';position:absolute;bottom:-1px;left:0;right:0;height:1.5px;
  background:currentColor;transform:scaleX(0);transform-origin:left;
  transition:transform var(--tm) var(--std);
}
.link-underline:hover::after{transform:scaleX(1)}

/* ═══════════════════════════════════════
   STANDARDIZZAZIONE FONT GLOBALE
   Cormorant Garamond su tutti i titoli H
═══════════════════════════════════════ */

/* Tutti gli heading principali ereditano il serif */
.page-hero h1,
.page-hero-cnt h1{
  font-family:var(--fs);font-weight:600;letter-spacing:-.01em;
}
.page-hero h1 em,
.page-hero-cnt h1 em{
  font-style:italic;font-weight:600;color:var(--g);
}

/* use-case titles */
.uc-title{
  font-family:var(--fs);font-weight:600;
}
.uc-title em{font-style:italic;font-weight:600}
.uc-dark .uc-title em{color:#fff}

/* section h2 nei panel hiw */
.hiw-panel h3{font-size:1.1rem;font-weight:600;letter-spacing:-.01em}

/* Sizing uniforme sezione viewer */
.viewer-section .h2{
  font-size:clamp(2rem,3.2vw,3.2rem);
}


/*/* ════════════════════════════════════════
   FLOATING DARK NAV (Homepage top)
════════════════════════════════════════ */
.home-minimal .nav {
  transition: top 0.4s ease, background 0.4s ease, border-radius 0.4s ease, max-width 0.4s ease, left 0.4s ease, right 0.4s ease, box-shadow 0.4s ease;
}
.home-minimal .nav:not(.stuck) {
  top: 16px;
  left: 16px;
  right: 16px;
  max-width: 1220px;
  margin: 0 auto;
  background: var(--g); /* Colore brand per massimo contrasto col frame chiaro sottostante */
  border-radius: var(--rf);
  box-shadow: 0 16px 40px rgba(0,0,0,0.4);
  border: 1px solid rgba(255,255,255,0.1);
}
.home-minimal .nav:not(.stuck) .nav-wordmark,
.home-minimal .nav:not(.stuck) .nav-tagline {
  color: var(--white);
}
.home-minimal .nav:not(.stuck) .nav-a {
  color: rgba(255,255,255,0.7);
}
.home-minimal .nav:not(.stuck) .nav-a:hover {
  color: var(--white);
  background: rgba(255,255,255,0.1);
}
.home-minimal .nav:not(.stuck) .nav-mark rect {
  stroke: var(--a) !important; 
}
.home-minimal .nav:not(.stuck) .theme-toggle {
  color: var(--white);
  border-color: rgba(255,255,255,0.2);
}
.home-minimal .nav:not(.stuck) .theme-toggle:hover {
  background: rgba(255,255,255,0.1);
}
.home-minimal .nav:not(.stuck) .nav-cta {
  background: var(--a);
  color: var(--g-d);
  box-shadow: 0 4px 12px rgba(94,198,174,0.3);
}
.home-minimal .nav:not(.stuck) .nav-burger span {
  background: var(--white);
}

@media (max-width: 768px) {
  /* Adattamento gap navbar per non stringerla troppo sui telefoni */
  .home-minimal .nav:not(.stuck) {
    top: 10px;
    left: 10px;
    right: 10px;
  }
}

/* ════════════════════════════════════════
   HERO SCROLL SEQUENCE (Full Width & Mobile Focus)
════════════════════════════════════════ */
.hero-seq-wrap {
  height: 300vh;
  position: relative;
  background: #0e1412;
}

/* ── LIGHT MODE: hero adatta al tema chiaro (le PNG dei frame sono trasparenti) ── */
html:not([data-theme='dark']) .hero-seq-wrap {
  background: var(--white);
}
html:not([data-theme='dark']) .hero-seq-overlay {
  opacity: 0;
}
html:not([data-theme='dark']) .hero-seq-text .h-hero {
  color: var(--ink) !important;
}
html:not([data-theme='dark']) .hero-seq-text .lead {
  color: var(--i60) !important;
}
html:not([data-theme='dark']) .hero-seq-text .trust-item {
  color: var(--i60) !important;
}
html:not([data-theme='dark']) .hero-seq-text .trust-item svg {
  color: var(--g);
}
html:not([data-theme='dark']) .hero-seq-text .lbl {
  color: var(--g) !important;
}
html:not([data-theme='dark']) .hero-seq-text .lbl-light {
  color: var(--g) !important;
}
html:not([data-theme='dark']) .hero-seq-text .lbl-light::before {
  background: var(--g) !important;
}
.hero-seq-sticky {
  position: sticky;
  top: 0;
  height: 100vh; /* Fallback */
  height: 100dvh; /* Altezza dinamica perfetta per mobile browsers con address bar a scomparsa */
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-seq-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  border: none;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.hero-seq-media.frame-loaded {
  opacity: 1;
}
.hero-seq-iframe {
  opacity: 0; 
  z-index: 2; 
  transition: opacity 0.4s ease; 
  pointer-events: none; 
}

/* Overlay costante: garantisce leggibilità al testo e nasconde eventuali frame troppo chiari, senza mai diventare nero totale */
.hero-seq-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(14,20,18,0.7) 0%, rgba(14,20,18,0.1) 30%, rgba(14,20,18,0.1) 70%, rgba(14,20,18,0.5) 100%);
  z-index: 3;
  pointer-events: none;
}
.hero-seq-text {
  position: relative;
  z-index: 10; 
  text-align: center;
  padding: 0 20px;
  width: 100%;
  max-width: 900px;
  will-change: opacity; 
}

/* --- PANNELLO CONTROLLI UX: ESPLORA E SALTA --- */
.hero-seq-controls {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%) translateY(20px);
  z-index: 15;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.hero-seq-wrap.iframe-ready .hero-seq-controls {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}
.hsc-inner {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(20,23,20,0.65);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  padding: 8px;
  border-radius: var(--rf);
  border: 1px solid rgba(255,255,255,0.15);
  box-shadow: 0 12px 32px rgba(0,0,0,0.4);
}
/* Vecchi stili (mantenuti per retrocompatibilità) */
.hsc-btn  { padding: 10px 24px; font-size: 0.88rem; }
.hsc-div  { width: 1px; height: 24px; background: rgba(255,255,255,0.2); margin: 0 4px; }
.hsc-skip { padding: 10px 20px; font-size: 0.88rem; color: rgba(255,255,255,0.7); }
.hsc-skip:hover { color: white; background: rgba(255,255,255,0.1); }

/* ── Hint testi durante lo scroll ───────────────────── */
.hero-seq-hint {
  position: absolute;
  bottom: 32px;
  left: 0; right: 0;
  text-align: center;
  z-index: 14;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.45s var(--dec);
}
.hero-seq-hint.hint-active { opacity: 1; pointer-events: auto; }

/* Step 6: mostra contenuto finale, nascondi testo normale */
.hsh-final {
  display: none;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.hero-seq-wrap.iframe-ready #hshContent { display: none; }
.hero-seq-wrap.iframe-ready .hsh-final  { display: flex; }

.hsh-final-title {
  font-size: .9rem;
  font-weight: 700;
  color: white;
  letter-spacing: -.01em;
}
.hsh-final-tip {
  font-size: .73rem;
  color: rgba(255,255,255,.44);
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1.5;
}

/* ── Pannello vetro condiviso (hint + CTA) ───────────── */
.hero-seq-hint-inner,
.hsc-card {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  background: rgba(10,16,14,.68);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: var(--r20);
  padding: 18px 36px 16px;
  box-shadow: 0 8px 32px rgba(0,0,0,.44);
  text-align: center;
}
.hero-seq-hint-inner { gap: 0; }
.hsc-card { gap: 12px; min-width: 340px; }

.hsh-text {
  font-family: var(--fs);
  font-size: clamp(1.15rem, 2.2vw, 1.6rem);
  font-weight: 500;
  font-style: italic;
  color: rgba(255,255,255,.96);
  line-height: 1.3;
  transition: opacity .3s ease, transform .3s ease;
}
.hsh-text.fade-out { opacity: 0; transform: translateY(6px); }
.hsh-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-top: 12px;
}
.hsh-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: rgba(255,255,255,.25);
  transition: background .3s ease, transform .3s ease;
}
.hsh-dot.active { background: var(--a); transform: scale(1.5); }

/* ── Pannello CTA (stili specifici oltre al vetro condiviso) ── */
.hsc-card-head {
  display: flex;
  align-items: center;
  gap: 9px;
}
.hsc-live-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--a);
  box-shadow: 0 0 0 3px rgba(94,198,174,.22);
  animation: blink 2.4s ease infinite;
  flex-shrink: 0;
}
.hsc-card-title {
  font-size: .9rem;
  font-weight: 700;
  color: white;
  letter-spacing: -.01em;
}
.hsc-card-tip {
  font-size: .73rem;
  color: rgba(255,255,255,.44);
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1.5;
}
.hsc-card-btns {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}
.hsc-btn-main { padding: 12px 28px; font-size: .875rem; }
.hsc-btn-exit { padding: 12px 20px; font-size: .875rem; }
.hsc-btn-skip {
  padding: 10px 16px;
  font-size: .8rem;
  color: rgba(255,255,255,.50);
  gap: 5px;
}
.hsc-btn-skip:hover { color: white; background: rgba(255,255,255,.08); }

/* 1. Fine frame -> Mostra Iframe e controlli */
.hero-seq-wrap.iframe-ready .hero-seq-iframe { opacity: 1; }

/* 2. Modalità interattiva sbloccata */
.hero-seq-wrap.iframe-active .hero-seq-iframe { pointer-events: auto; }

/* Ottimizzazioni Pannello su Mobile (Focus touch) */
@media (max-width: 480px) {
  .hero-seq-controls {
    bottom: 24px;
    width: calc(100% - 32px); /* Spaziatura laterale sicura */
  }
  .hsc-inner {
    width: 100%;
    justify-content: space-between;
    gap: 4px;
    padding: 6px;
  }
  .hsc-btn { flex: 1.5; padding: 12px 10px; font-size: 0.82rem; }
  .hsc-skip { flex: 1; padding: 12px 10px; font-size: 0.82rem; }
}


/* ════════════════════════════════════════
   RESPONSIVE UPDATES
════════════════════════════════════════ */

@media(max-width:1100px){
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-l{
    padding:96px 64px 80px;max-width:740px;
    margin:0 auto;text-align:center;align-items:center;
  }
  .hero-pill{align-self:center}
  .hero-sub{margin-left:auto;margin-right:auto}
  .hero-ctas{justify-content:center}
  .hero-trust{justify-content:center}
  .hero-r{display:none}
  .hiw{grid-template-columns:1fr;gap:56px}
  .hiw-steps-row{grid-template-columns:1fr}
  .feat-grid{grid-template-columns:1fr}
  .feat-wide{grid-column:span 1;grid-template-columns:1fr}
  .feat-vis{display:none}
  .uc-grid{grid-template-columns:1fr}
  .price-grid{max-width:520px;grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:48px}
  .viewer-sec-inner{grid-template-columns:1fr;gap:48px}
  .viewer-sec-copy{max-width:100%;text-align:center}
  .viewer-sec-copy .lbl{justify-content:center}
  .viewer-sec-copy .lbl::before{content:none}
  .sector-split{grid-template-columns:1fr;gap:32px;margin-bottom:56px}
}

@media(max-width:768px){
  :root{--nh:64px}
  .wrap,.wrap-n,.wrap-x{padding:0 20px}
  .sec{padding:88px 0}.sec-sm{padding:68px 0}.sec-xs{padding:56px 0}
  .nav-links{
    display:none;position:fixed;top:var(--nh);left:0;right:0;
    background:rgba(253,252,250,.97);backdrop-filter:blur(24px);
    flex-direction:column;align-items:stretch;
    padding:20px 20px 32px;gap:4px;
    border-bottom:1px solid var(--b);box-shadow:var(--e5);
  }
  html[data-theme='dark'] .nav-links{background:rgba(12,17,15,.96)}
  .nav-links.open{display:flex}
  .nav-a{padding:14px 16px;border-radius:var(--r16)}
  .nav-a::after{display:none}
  .nav-cta{margin:10px 0 0;border-radius:var(--r16)}
  .theme-toggle{width:100%;justify-content:center;padding:12px 16px;border-radius:var(--r16)}
  .nav-burger{display:flex}
  .stats-bar{grid-template-columns:1fr 1fr;border-radius:var(--r16)}
  .s-stat{border-right:none;border-bottom:1px solid var(--b)}
  .s-stat:nth-child(odd){border-right:1px solid var(--b)}
  .s-stat:nth-last-child(-n+2){border-bottom:none}
  .sector-split{gap:24px;margin-bottom:40px}
  .ex-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr}
  .tut-layout{grid-template-columns:1fr;gap:56px}
  .tut-sb{position:static}
  .contact-layout{grid-template-columns:1fr;gap:56px}
  .token-grid{grid-template-columns:1fr;max-width:380px;margin-left:auto;margin-right:auto}
  .footer-grid{grid-template-columns:1fr;gap:40px}
  .num-grid{grid-template-columns:1fr}
  .num-cell{border-right:none;border-bottom:1px solid rgba(255,255,255,.09)}
  .num-cell:last-child{border-bottom:none}
  .trust-row{gap:52px}
  .trust-div{display:none}
  .f2{grid-template-columns:1fr}
  .cta-btns{flex-direction:column;align-items:stretch;max-width:360px;margin:0 auto}
  .uc-in{padding:52px 36px}
  .hiw-panel{padding:52px 40px}
  .form-card{padding:44px 32px}
  .pricing-faq-wrap{padding:44px 32px;border-radius:var(--r24)}
  .pricing-faq-list .faq-btn{padding:20px 20px}
  .pricing-faq-list .faq-body p{padding:0 20px 20px}
  .viewer-frame{aspect-ratio:16/10}
  .viewer-stage{width:calc(100vw - 40px)}
  .viewer-frame-full{aspect-ratio:16/10;min-height:auto}
  .vf-bar{flex-direction:column;align-items:stretch}
  .vf-status{font-size:.75rem}
  .vf-cta{width:100%;justify-content:center}
  .viewer-section{padding:88px 0}
  .proof-row{grid-template-columns:1fr 1fr}
  .hiw-steps-row{grid-template-columns:1fr}
  .step-card{padding:40px 32px}
  .testimonial-grid{grid-template-columns:1fr}
  .trust-strip{gap:18px}
}

@media(max-width:480px){
  .hero-l{padding:64px 20px 56px}
  .hero-ctas{flex-direction:column;width:100%}
  .btn-p,.btn-o,.btn-lg{width:100%;justify-content:center}
  .stats-bar{grid-template-columns:1fr;border-radius:var(--r16)}
  .s-stat{border-right:none!important}
  .ex-grid{grid-template-columns:1fr}
  .sector-split{margin-bottom:28px}
  .s-tab{font-size:.9rem;margin-right:24px}
  .pc-val{font-size:3.8rem}
  .page-hero{padding-top:calc(var(--nh) + 56px);padding-bottom:72px}
  .cta-band{padding:96px 0}
  .lbl-center::before,.lbl-center::after{width:18px}
}