:root{
  --bg:#070707;--bg2:#0d0d0d;--panel:#111;--panel2:#171717;--text:#f4f1ea;--muted:#9c9a94;
  --gold:#d6b555;--gold2:#f1dc90;--line:rgba(255,255,255,.12);--radius:22px;--container:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(calc(100% - 40px),var(--container));margin:auto}.section{padding:120px 0}.section-dark{background:#090909}.section-kicker,.eyebrow{font-size:12px;letter-spacing:.24em;font-weight:800;color:var(--gold);margin:0 0 18px}h1,h2,h3{margin:0;line-height:.94}h1,h2{font-family:"Bebas Neue",Impact,sans-serif;letter-spacing:.015em}h1{font-size:clamp(58px,7vw,114px)}h2{font-size:clamp(48px,6vw,92px)}h1 span,h2 span{color:var(--gold)}p{color:#c1beb7;line-height:1.75}.cursor-glow{position:fixed;width:380px;height:380px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(214,181,85,.09),transparent 68%);z-index:1;transform:translate(-50%,-50%);opacity:0;transition:opacity .25s}.site-header{position:fixed;inset:0 0 auto;z-index:50;transition:.35s;background:linear-gradient(to bottom,rgba(0,0,0,.78),transparent)}.site-header.scrolled{background:rgba(7,7,7,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.12em}.brand-mark{width:38px;height:38px;border:1px solid rgba(214,181,85,.6);display:grid;place-items:center;color:var(--gold);font-size:13px}.brand-text{font-size:13px}.nav{display:flex;align-items:center;gap:24px}.nav a{font-size:11px;letter-spacing:.12em;color:#d7d3ca;position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.25s}.nav a:hover:after,.nav a.active:after{right:0}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:9px;cursor:pointer}.menu-toggle span{display:block;height:1px;background:white;margin:8px 0}.hero{height:min(920px,100vh);min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(1.05);transform:scale(1.025)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 46%,rgba(0,0,0,.18) 78%),linear-gradient(to top,rgba(7,7,7,.9),transparent 45%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to right,#000,transparent 75%)}.hero-content{position:relative;z-index:3;padding-top:60px}.hero-content h1{max-width:960px;text-shadow:0 8px 40px rgba(0,0,0,.25)}.hero-sub{max-width:610px;font-size:17px;margin:26px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 24px;border:1px solid var(--line);font-size:11px;font-weight:800;letter-spacing:.14em;cursor:pointer;transition:.25s}.btn-gold{background:var(--gold);color:#111;border-color:var(--gold)}.btn-gold:hover{background:var(--gold2);transform:translateY(-2px)}.btn-ghost{background:rgba(255,255,255,.05);backdrop-filter:blur(12px)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.scroll-hint{position:absolute;z-index:3;right:34px;bottom:34px;font-size:10px;letter-spacing:.2em;color:#aaa;display:flex;align-items:center;gap:12px}.scroll-hint span{width:40px;height:1px;background:var(--gold)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro-grid p{max-width:620px}.text-link{display:inline-flex;margin-top:18px;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.12em;gap:10px}.video-card{background:var(--panel);border:1px solid var(--line);padding:12px}.video-frame{aspect-ratio:16/9;overflow:hidden;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.video-meta{display:flex;justify-content:space-between;padding:14px 6px 2px;color:#8f8b83;font-size:9px;letter-spacing:.16em}.stats-section{background:var(--gold);color:#0a0a0a}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:54px 28px;border-left:1px solid rgba(0,0,0,.2);position:relative}.stat:last-child{border-right:1px solid rgba(0,0,0,.2)}.stat-number,.plus{font-family:"Bebas Neue",Impact,sans-serif;font-size:clamp(58px,5.5vw,92px);line-height:.85}.stat p{color:#191919;font-weight:800;font-size:11px;letter-spacing:.12em;margin:15px 0 0;line-height:1.4}.mission-section{background:#f1eee6;color:#111}.mission-section p{color:#49463f}.mission-wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.mission-title{position:sticky;top:140px;align-self:start}.mission-copy{font-size:16px}.mission-copy p:first-child{font-size:21px;color:#1a1916}.mission-copy blockquote{margin:42px 0 0;padding:28px 0 0;border-top:1px solid rgba(0,0,0,.16);font-family:"Bebas Neue";font-size:32px;line-height:1.15;color:#111}.services-section{background:#0b0b0b}.section-heading{margin-bottom:54px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{min-height:390px;padding:30px;background:linear-gradient(145deg,#111,#0d0d0d);border:1px solid var(--line);position:relative;display:flex;flex-direction:column;transition:.3s;overflow:hidden}.service-card:before{content:"";position:absolute;inset:auto -40% -60% 20%;height:260px;background:radial-gradient(circle,rgba(214,181,85,.18),transparent 70%);transition:.35s}.service-card:hover{transform:translateY(-8px);border-color:rgba(214,181,85,.5)}.service-index{font-size:11px;color:#666;letter-spacing:.18em}.service-icon{font-family:"Bebas Neue";font-size:48px;color:var(--gold);margin:50px 0 34px}.service-card h3{font-family:"Bebas Neue";font-size:36px;letter-spacing:.02em}.service-card p{font-size:13px;max-width:330px}.card-link{margin-top:auto;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.14em}.leadership-section{background:#060606}.leaders-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:1380px;margin:0 auto}.leader-card{position:relative;aspect-ratio:1/1;overflow:hidden;background:#111}.leader-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease}.leader-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),transparent 52%);opacity:.72;transition:.3s}.leader-card:hover img{transform:scale(1.055);filter:saturate(1.08)}.leader-card:hover:after{opacity:.92}.leader-overlay{position:absolute;z-index:2;left:24px;bottom:22px}.leader-overlay h3{font-family:"Bebas Neue";font-size:30px}.leader-overlay p{font-size:10px;color:var(--gold);margin:5px 0 0;letter-spacing:.12em}.why-section{background:#f1eee6;color:#111}.why-section p{color:#57534c}.why-intro{max-width:900px}.why-intro>p:last-child{font-size:18px;max-width:760px}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}.why-card{border:1px solid rgba(0,0,0,.14);background:#f8f5ee;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}.why-card:hover{transform:translateY(-6px);box-shadow:0 18px 46px rgba(0,0,0,.10)}.why-image{aspect-ratio:4/3;overflow:hidden;background:#ddd}.why-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.why-card:hover .why-image img{transform:scale(1.045)}.why-card-body{padding:24px 24px 28px}.why-card-body>span{color:#8a7b4d;font-size:11px;font-weight:700;letter-spacing:.12em}.why-card h3{font-family:"Bebas Neue";font-size:34px;margin:22px 0 12px}.why-card p{font-size:14px}.contact-section{background:#0d0d0d;border-top:1px solid var(--line);padding-top:108px;padding-bottom:92px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.contact-copy p{max-width:540px}.contact-note{display:flex;align-items:center;gap:10px;margin-top:28px;color:#8f8b83;font-size:12px}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#5fe0a8;box-shadow:0 0 0 0 rgba(95,224,168,.5);animation:pulse 2s infinite}.contact-form{border:1px solid var(--line);background:#111;padding:30px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:block;font-size:10px;font-weight:800;letter-spacing:.11em;color:#aaa;margin-bottom:16px}.contact-form input,.contact-form textarea{margin-top:9px;width:100%;background:#0a0a0a;border:1px solid #272727;color:#fff;padding:15px 16px;font:inherit;font-size:14px;outline:none;transition:.2s;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(214,181,85,.07)}.submit-btn{width:100%;justify-content:space-between;margin-top:4px}.form-status{min-height:22px;margin:12px 0 0;font-size:12px}.form-status.success{color:#72e8b4}.form-status.error{color:#ff9898}.honeypot{position:absolute!important;left:-9999px!important}.footer{background:#050505;border-top:1px solid var(--line)}.footer-top{padding:48px 0;display:flex;justify-content:space-between;align-items:center}.footer-links{display:flex;gap:24px}.footer-links a{font-size:10px;letter-spacing:.12em;color:#98958f}.footer-links a:hover{color:var(--gold)}.footer-bottom{padding:18px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#5f5d58;font-size:9px;letter-spacing:.14em}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(95,224,168,0)}100%{box-shadow:0 0 0 0 rgba(95,224,168,0)}}
@media(max-width:980px){.nav{position:fixed;top:82px;left:20px;right:20px;display:none;flex-direction:column;align-items:flex-start;background:#0d0d0d;border:1px solid var(--line);padding:24px}.nav.open{display:flex}.menu-toggle{display:block}.split,.mission-wrap,.contact-grid{grid-template-columns:1fr;gap:48px}.mission-title{position:static}.stats-grid{grid-template-columns:repeat(2,1fr)}.services-grid,.leaders-grid,.why-grid{grid-template-columns:repeat(2,1fr)}.footer-top{align-items:flex-start;gap:30px;flex-direction:column}.footer-links{flex-wrap:wrap}}
@media(max-width:650px){.container{width:min(calc(100% - 28px),var(--container))}.section{padding:82px 0}.hero{min-height:760px;height:100svh}.hero-content{padding-top:100px}.hero-content h1{font-size:clamp(50px,15vw,76px)}.hero-sub{font-size:15px}.scroll-hint{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat{padding:36px 18px}.stat-number,.plus{font-size:56px}.services-grid,.leaders-grid,.why-grid{grid-template-columns:1fr}.service-card{min-height:320px}.leaders-grid{gap:9px}.leader-overlay h3{font-size:28px}.field-row{grid-template-columns:1fr}.contact-form{padding:20px}.footer-links{display:grid;grid-template-columns:1fr 1fr}.footer-bottom{gap:12px;flex-direction:column}.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.pulse-dot{animation:none}}

@media (max-width: 980px){.leaders-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}}
@media (max-width: 620px){.leaders-grid{grid-template-columns:1fr;max-width:420px}}


/* ===== V16.5 — HOME MOBILE / IPHONE HERO TYPOGRAPHY =====
   Riduce il titolo e lascia al browser una distribuzione più naturale,
   evitando le 7+ righe visibili sugli iPhone stretti.
*/
@media (max-width: 620px){
  .hero{
    height:auto !important;
    min-height:100svh !important;
    padding:118px 0 58px !important;
    align-items:flex-start !important;
  }

  .hero-content{
    width:100% !important;
    padding-top:76px !important;
  }

  .hero-content .eyebrow{
    max-width:100% !important;
    margin-bottom:24px !important;
    font-size:10px !important;
    line-height:1.45 !important;
    letter-spacing:.20em !important;
    white-space:normal !important;
  }

  .hero-content h1{
    width:100% !important;
    max-width:520px !important;
    margin:0 !important;
    font-size:clamp(43px,12.2vw,54px) !important;
    line-height:.92 !important;
    letter-spacing:.008em !important;
    text-wrap:balance;
  }

  /* I <br> erano pensati per desktop e su iPhone spezzavano il titolo troppe volte */
  .hero-content h1 br{
    display:none !important;
  }

  .hero-content h1 span{
    display:inline !important;
  }

  .hero-sub{
    max-width:94% !important;
    margin:28px 0 30px !important;
    font-size:14px !important;
    line-height:1.65 !important;
  }

  .hero-actions{
    width:100% !important;
    gap:10px !important;
  }

  .hero-actions .btn{
    width:100% !important;
    min-height:50px !important;
    padding:0 15px !important;
    font-size:10px !important;
    letter-spacing:.11em !important;
  }

  .scroll-hint{
    display:none !important;
  }

  .hero-bg{
    object-position:52% center !important;
  }

  .hero-overlay{
    background:
      linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.62) 68%,rgba(0,0,0,.38) 100%),
      linear-gradient(to top,rgba(7,7,7,.94),transparent 54%) !important;
  }
}

@media (max-width: 390px){
  .hero-content h1{
    font-size:42px !important;
    line-height:.91 !important;
  }
  .hero-content{
    padding-top:62px !important;
  }
  .hero-content .eyebrow{
    font-size:9px !important;
    letter-spacing:.17em !important;
  }
}


/* ===== V16.6 — HEADER PUBBLICO UNIFICATO =====
   Stessa struttura e stessi stili della Home su tutte le pagine pubbliche.
*/
.public-subpage-header.site-header{
  position:sticky;
  top:0;
  background:#070707;
  border-bottom:1px solid var(--line);
}
.public-subpage-header .nav-wrap{
  height:82px;
}
.public-subpage-header .brand,
.public-subpage-header .brand-mark,
.public-subpage-header .brand-text,
.public-subpage-header .nav,
.public-subpage-header .nav a,
.public-subpage-header .menu-toggle{
  font-family:inherit;
}

@media(max-width:900px){
  .public-subpage-header .nav{
    position:absolute;
    top:82px;
    left:0;
    right:0;
    display:none;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:12px 20px 18px;
    background:rgba(7,7,7,.98);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(18px);
  }
  .public-subpage-header .nav.open{
    display:flex;
  }
  .public-subpage-header .nav a{
    width:100%;
    padding:14px 0;
  }
  .public-subpage-header .menu-toggle{
    display:block;
  }
}

/* ===== V17 — HOME MOBILE TYPOGRAPHY FINAL ===== */
@media(max-width:620px){
  .hero-content h1{
    font-size:clamp(38px,10.9vw,48px) !important;
    line-height:.97 !important;
    letter-spacing:.006em !important;
    max-width:100% !important;
    word-spacing:.08em !important;
  }
  .hero-content h1 br{display:none !important}
  .hero-content h1 span{
    display:inline !important;
    margin:0 .10em !important;
  }
  .hero-content h1 span::before,
  .hero-content h1 span::after{
    content:" " !important;
    white-space:pre !important;
  }
  .hero-content .eyebrow{
    font-size:9px !important;
    letter-spacing:.16em !important;
    line-height:1.5 !important;
  }
  .hero-content{padding-top:64px !important}
  .hero-sub{font-size:13px !important;line-height:1.6 !important}
}
@media(max-width:390px){
  .hero-content h1{font-size:37px !important;line-height:.98 !important}
}
@media(min-width:621px) and (max-width:1024px){
  .hero-content h1{font-size:clamp(58px,7.8vw,82px) !important;line-height:.92 !important}
}
.services-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1050px){.services-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.services-grid-four{grid-template-columns:1fr}}

/* V24.4 mobile hero + privacy */
@media(max-width:650px){.hero-content h1{font-size:clamp(44px,12.7vw,64px);line-height:.98;max-width:100%;word-spacing:.04em}.hero-content h1 br{display:block}}
