/* LNI Impara la vela — si appoggia ai colori del tema LNI Mare, con valori di riserva. */
.lniv { margin: 1.6em 0; }
.lniv-home-link { margin-left: 4px; }
.lniv-launch {
  display: grid; grid-template-columns: 1fr; overflow: hidden; text-decoration: none !important;
  border-radius: var(--radius, 24px); background: var(--bg, #0A1420); color: var(--ink, #EEF4FA) !important;
  border: 1px solid var(--line, #1C3048);
}
.lniv-launch img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin: 0; }
.lniv-launch-body { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px 20px; font-size: 16px; line-height: 1.5; }
.lniv-launch-body strong { font-family: var(--font-display, "Inter Tight", sans-serif); font-size: 21px; line-height: 1.2; color: var(--ink, #EEF4FA); }
.lniv-launch-body span { color: var(--muted, #A9B8C8); }
.lniv-launch .lniv-btn {
  align-self: flex-start; margin-top: 8px; padding: 12px 20px; border-radius: 999px; font-weight: 700; font-size: 15px;
  background: var(--accent, #3EE0C8); color: var(--accent-ink, #06201C);
}
.lniv-launch:hover .lniv-btn, .lniv-launch:focus-visible .lniv-btn { background: #6BEAD7; }
.lniv-launch:focus-visible { outline: 3px solid var(--accent, #3EE0C8); outline-offset: 3px; }
@media (min-width: 700px) {
  .lniv-launch { grid-template-columns: 1.3fr 1fr; align-items: center; }
  .lniv-launch img { height: 100%; }
}
/* Desktop: il simulatore esce dalla colonna di testo e usa tutta la larghezza disponibile */
.lniv-frame { position: relative; left: 50%; transform: translateX(-50%); width: min(1280px, calc(100vw - 48px)); }
.lniv-frame iframe {
  display: block; width: 100%; height: clamp(640px, 82vh, 880px); border: 0;
  border-radius: var(--radius, 24px); background: #0A1420; box-shadow: 0 24px 60px rgba(7, 16, 26, .28);
}
.lniv-full { margin: 10px 0 0; text-align: right; font-size: 15px; }
.lniv-frame[hidden], .lniv-launch[hidden] { display: none !important; }
