/* ═══════════════════════════════════════════════════
   HOMEPAGE V2 — about.lan.ga
   SOLO classi nuove. NON tocca .hero .sh .ld .bs .band .lk .nv .ft
   ═══════════════════════════════════════════════════ */

/* ── Announcement bar ── */
.ann-bar{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;font-size:13px;text-decoration:none;transition:background .3s;letter-spacing:.01em}
.dk .ann-bar{background:#0d0b07;color:#F4EBE2;border-bottom:1px solid rgba(243,127,13,.1)}
.dk .ann-bar:hover{background:#1a1710}
.lt .ann-bar{background:#fdf8f3;color:#1d1d1f;border-bottom:1px solid rgba(243,127,13,.15)}
.lt .ann-bar:hover{background:#f5ede3}

/* ── Grid system ── */
.hp2-grid{display:grid;gap:12px;max-width:1080px;margin:0 auto;padding:0 22px}
.hp2-grid--spotlight{grid-template-columns:1.6fr 1fr;min-height:380px}
.hp2-grid--spotlight .hp2-grid-side{display:grid;gap:12px}
.hp2-grid--trio{grid-template-columns:repeat(3,1fr)}
.hp2-grid--duo{grid-template-columns:1fr 1fr}
.hp2-grid--strip{grid-template-columns:1fr}
@media(max-width:900px){
  .hp2-grid--spotlight,.hp2-grid--trio,.hp2-grid--duo{grid-template-columns:1fr}
}

/* ── Service cards ── */
.hp2-card{
  position:relative;border-radius:20px;overflow:hidden;
  padding:clamp(24px,4vw,40px);
  background:var(--card-bg,#0a0a0a);color:var(--card-text,#e8e8e8);
  text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;
  isolation:isolate;transition:transform .4s cubic-bezier(.25,.1,.25,1),box-shadow .4s;
  border:1px solid rgba(255,255,255,.04);
}
.hp2-card::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E");
  opacity:.5;
}
.hp2-card *{position:relative;z-index:2}
.hp2-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(0,0,0,.2)}
.hp2-card--hero{min-height:340px;padding:clamp(28px,4vw,48px)}
.hp2-card-fav{width:40px;height:40px;border-radius:10px;margin-bottom:auto}
.hp2-card-fav--lg{width:48px;height:48px;border-radius:12px}
.hp2-card-net{font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;display:block}
.hp2-card-name{font-size:clamp(22px,3.5vw,36px);font-weight:700;letter-spacing:-.03em;display:block;margin-bottom:6px;color:var(--card-text,#e8e8e8)}
.hp2-card-name--lg{font-size:clamp(28px,4.5vw,46px);font-weight:200;letter-spacing:-.04em}
.hp2-card-tag{font-size:14px;line-height:1.55;font-weight:300;color:var(--card-muted,rgba(255,255,255,.55));max-width:380px;display:block;margin-bottom:16px}
.hp2-card-stats{display:flex;gap:20px;margin-top:16px}
.hp2-stat-v{font-size:28px;font-weight:200;line-height:1;display:block}
.hp2-stat-l{font-size:8px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;margin-top:3px;opacity:.4;display:block}
.hp2-card--compact{min-height:200px;padding:clamp(20px,3vw,32px)}
.hp2-card--compact .hp2-card-name{font-size:clamp(18px,2.5vw,24px)}
.hp2-card--compact .hp2-card-tag{font-size:12px;margin-bottom:12px}
.hp2-card-feats{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.hp2-feat{font-size:10px;padding:3px 9px;border-radius:14px;letter-spacing:.02em;border:1px solid}
.hp2-card--strip{flex-direction:row;align-items:center;gap:16px;padding:14px 24px;min-height:auto;border-radius:14px}
.hp2-strip-fav{width:28px;height:28px;border-radius:7px;flex-shrink:0}
.hp2-strip-net{font-size:8px;flex-shrink:0}
.hp2-strip-name{font-size:14px;font-weight:700;letter-spacing:-.02em;flex-shrink:0;color:var(--card-text,#e8e8e8)}
.hp2-strip-tag{font-size:12px;color:var(--card-muted,rgba(255,255,255,.5));flex:1;min-width:100px}
.hp2-strip-arrow{font-size:18px;opacity:.3;flex-shrink:0}
.lt .hp2-card{border-color:rgba(0,0,0,.06)}
.lt .hp2-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.08)}

/* ── Monthly highlight ── */
.hp2-monthly-desc{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,4vw,48px)}
.hp2-monthly-text{font-size:17px;line-height:1.6;max-width:400px}
.dk .hp2-monthly-text{color:rgba(255,255,255,.6)}
.lt .hp2-monthly-text{color:#3a3a3d}
.hp2-monthly-cta{display:inline-flex;align-items:center;gap:6px;margin-top:24px;font-size:14px;font-weight:600;color:#f37f0d;text-decoration:none}
.hp2-monthly-cta span{font-size:18px}

/* ── AEGIS cards (sfondo SEMPRE scuro, testo SEMPRE chiaro) ── */
.hp2-aegis-card{
  background:var(--aegis-bg,#0a0a0a);border-radius:20px;color:#f0f0f2;
  padding:clamp(24px,3vw,36px);border:1px solid rgba(255,255,255,.04);
  position:relative;isolation:isolate;
}
.hp2-aegis-card::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E");
  opacity:.5;border-radius:inherit;
}
.hp2-aegis-card>*{position:relative;z-index:1}
.hp2-aegis-card .aegis-dot{margin-bottom:12px}
.hp2-aegis-name{font-size:20px;font-weight:700;display:block;margin-bottom:8px;color:#f0f0f2}
.hp2-aegis-desc{font-size:13px;line-height:1.55;color:rgba(240,240,242,.6);max-width:300px}
.hp2-aegis-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}
.hp2-aegis-tags span{
  font-size:10px;padding:3px 10px;border-radius:14px;
  background:color-mix(in srgb, var(--aegis-c) 8%, transparent);
  color:color-mix(in srgb, var(--aegis-c) 70%, #fff);
}
.lt .hp2-aegis-card{border-color:rgba(0,0,0,.08)}

/* ── AEGIS ring ── */
.aegis-ring{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:24px 0}
.aegis-pill{padding:8px 16px;border-radius:20px;font-size:11px;font-weight:500;letter-spacing:.02em;border:1px solid;transition:all .25s;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.aegis-pill:hover{transform:translateY(-2px)}
.aegis-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;display:inline-block}

/* ── Network blocks ── */
.hp2-net-block{max-width:980px;margin:0 auto 24px;padding:24px 22px;border-radius:20px}
.hp2-net-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06)}
.hp2-net-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.hp2-net-name{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.hp2-net-count{font-size:12px;opacity:.35;flex:1}
.hp2-net-more{font-size:12px;font-weight:500;opacity:.4;text-decoration:none;transition:opacity .2s}
.hp2-net-more:hover{opacity:1}
.lt .hp2-net-head{border-bottom-color:rgba(0,0,0,.08)}

/* ── Catalog CTA ── */
.hp2-catalog-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 32px;border-radius:980px;
  font-size:15px;font-weight:600;text-decoration:none;transition:all .3s;
}
.dk .hp2-catalog-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:#f0f0f2}
.dk .hp2-catalog-btn:hover{background:rgba(255,255,255,.1)}
.lt .hp2-catalog-btn{background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);color:#1d1d1f}
.lt .hp2-catalog-btn:hover{background:rgba(0,0,0,.07)}

/* ── Embed slot ── */
.embed-slot{border-radius:20px;overflow:hidden;min-height:160px;border:1px solid rgba(255,255,255,.04);transition:border-color .3s}
.embed-slot:hover{border-color:rgba(255,255,255,.08)}
.lt .embed-slot{border-color:rgba(0,0,0,.06)}

/* ── Studios footer banner ── */
.stb--footer{border-radius:0!important}
.dk .stb--footer{border-top:1px solid rgba(255,255,255,.04)}
.lt .stb--footer{border-top:1px solid rgba(0,0,0,.06)}

/* ── Responsive ── */
@media(max-width:700px){
  .hp2-card-stats{gap:14px}
  .hp2-stat-v{font-size:22px}
  .hp2-net-head{flex-wrap:wrap}
  .hp2-net-more{width:100%;margin-top:4px}
  .hp2-aegis-tags{gap:4px}
  .hp2-aegis-tags span{font-size:9px;padding:2px 8px}
}
a.sci{cursor:pointer;text-decoration:none}html{scroll-behavior:smooth}

/* THEME-AWARE CARD OVERRIDES */
.dk .hp2-card{background:rgba(255,255,255,.04)!important;color:#f0f0f2!important;border-color:rgba(255,255,255,.06)}
.dk .hp2-card--hero{background:color-mix(in srgb,var(--card-accent,#f37f0d) 12%,#0a0a0a)!important}
.dk .hp2-card-name,.dk .hp2-strip-name{color:#f0f0f2!important}
.dk .hp2-card-tag{color:rgba(255,255,255,.55)!important}
.dk .hp2-strip-tag{color:rgba(255,255,255,.45)!important}
.dk .hp2-stat-l{color:rgba(255,255,255,.4)}
.dk .hp2-feat{border-color:rgba(255,255,255,.1)!important}
.dk .hp2-card--strip{background:rgba(255,255,255,.04)!important}
/* LT CARD OVERRIDES */
.lt .hp2-card{background:#f5f5f7!important;color:#1d1d1f!important}
.lt .hp2-card--hero{background:color-mix(in srgb,var(--card-accent,#f37f0d) 8%,#f5f5f7)!important}
.lt .hp2-card-name,.lt .hp2-strip-name{color:#1d1d1f!important}
.lt .hp2-card-tag{color:#6e6e73!important}
.lt .hp2-strip-tag{color:#86868b!important}
.lt .hp2-stat-l{color:#86868b}
.lt .hp2-feat{border-color:rgba(0,0,0,.1)!important}
.lt .hp2-card--strip{background:#eaeaec!important}
/* STRIP TAG ALIGN */
.hp2-strip-tag{text-align:right}
/* FIX: net-head light mode */
.lt .hp2-net-name{color:#1d1d1f}
.lt .hp2-net-count{color:#86868b}
.lt .hp2-net-more{color:#1d1d1f}
/* FIX: aegis cards light mode */
.lt .hp2-aegis-card{background:color-mix(in srgb,var(--aegis-c,#7C3AED) 6%,#f5f5f7)!important;border:1px solid rgba(0,0,0,.06)!important}
.lt .hp2-aegis-name{color:#1d1d1f!important}
.lt .hp2-aegis-desc{color:#6e6e73!important}
.lt .hp2-aegis-tags span{background:color-mix(in srgb,var(--aegis-c) 10%,transparent)!important;color:color-mix(in srgb,var(--aegis-c) 80%,#1d1d1f)!important}

.dk .hp2-net-block{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04)}
.lt .hp2-net-block{background:#fff;border:1px solid rgba(0,0,0,.06)}
.ai-blobs-row{display:flex;gap:8px;margin-top:16px;justify-content:center;flex-wrap:wrap}
.ai-blob-item{text-align:center;flex:0 0 auto}
.ai-blob-item .blob-wrap{width:120px;height:120px;margin:0 auto 6px;cursor:grab}
.ai-blob-item .blob-wrap:active{cursor:grabbing}
.ai-blob-item canvas{width:120px;height:120px;display:block}
.ai-blob-label{font-size:10px;font-weight:600;letter-spacing:.04em;display:block}
/* Intelligence brain blob */
.ai-brain-wrap{width:280px;height:280px;margin:16px auto;border-radius:20px;overflow:hidden}
.ai-brain-wrap:active{cursor:grabbing}
.ai-brain-wrap canvas{width:200px;height:200px;display:block}
/* Intelligence card full layout */
.hp2-aegis-card .ai-blobs-row{justify-content:center}
.hp2-aegis-card .hp2-aegis-name{text-align:center;display:block}
.hp2-aegis-card .hp2-aegis-desc{text-align:center;margin:0 auto;max-width:400px}
/* Embed cards homepage */
.hp2-embed{transition:transform .3s,box-shadow .3s;cursor:pointer}
.hp2-embed:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.12)}
.dk .hp2-embed{border:1px solid rgba(255,255,255,.06)}
.lt .hp2-embed{border:1px solid rgba(0,0,0,.06)}
.hp2-embed--strip{border-radius:10px!important}

.hp-break--img,.band--img{position:relative;background-size:cover;background-position:center;overflow:hidden;border-radius:20px;margin-left:22px;margin-right:22px;max-width:1200px;margin-left:auto;margin-right:auto;padding:clamp(80px,12vw,140px) 40px}
.hp-break--img::before,.band--img::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.65);z-index:0;border-radius:inherit}
.hp-break--img>*,.band--img>*{position:relative;z-index:1}
.hp-break--img .hp-break-ey,.hp-break--img .hp-break-h,.hp-break--img .hp-break-sub{color:#fff!important}
.hp-break--img .hp-break-sub{opacity:.7}
.band--img .bh,.band--img .lk,.band--img .hlk{color:#fff!important}
.band--img .lk.lk--s{opacity:.7}
.lt .hp-break--img::before,.lt .band--img::before{background:rgba(0,0,0,.55)}
.bn--rich[style*="background-image"]{background-size:cover;background-position:center;position:relative;overflow:hidden}
.bn--rich[style*="background-image"]::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.6)}
.bn--rich[style*="background-image"] .bn-w{position:relative;z-index:1}
.bn--rich[style*="background-image"] .bn-h,.bn--rich[style*="background-image"] .bn-sub{color:#fff!important}
.bn--rich[style*="background-image"] .bn-glow{display:none}

/* Full-width sections: no border-radius when touching edges */
@media(max-width:1240px){
  .hp-break--img,.band--img{border-radius:0!important}
  .hp-break--img::before,.band--img::before{border-radius:0!important}
}
