/* =====================================================================================
   INFINITHINK, listino premium            listino.css  v1.0.0  2026-10-23
   -------------------------------------------------------------------------------------
   Classi ift-lp-* del template pricing v3 (/pricing, /it/prezzi) e del teaser prezzi della home.
   Caricato dopo sito.css solo dalle pagine che lo usano (@push('head')). Usa i token di sito.css
   (--ift-text*, --ift-border*, --ift-success, --ift-gradient-conic, --ift-header-offset), quindi
   dentro .ift-tone-dark (banda prezzi #070508) i colori si girano da soli.

   Schema: trio Starter / Pro / Business in 3 colonne da 900 px con righe allineate (subgrid, niente
   "lisca di pesce"), sotto 900 px carosello a scorrimento con il consigliato per primo e indicatori;
   Free e Lite come ingresso in due card larghe; Agency a tutta larghezza; confronto con intestazione
   fissa che sotto 900 px mostra una colonna alla volta (selettore di piano).

   Contrasti (WCAG 2.2, sui fondi della banda #070508 e delle card composte ~#121014):
     #FFFFFF titoli/prezzi 20,2 · #E6E6E6 elenco 16,2 · #B3B3B3 frasi 9,6 · #9E9E9E note 7,5 ·
     #4ADE80 spunte e "2 mesi gratis" 11,6 · badge #0A0A0A su #FFFFFF 19,8. Su chiaro (#FAFAFA/#FFFFFF):
     #2B2B2B 13,6 · #545454 7,3 · #696969 5,3 · #166534 spunte 6,8.
   Nessun rosso. Motion super soft: hover 2 px, entrata 6 px in 500 ms solo con html.motion,
   movimento ridotto = stato finale esplicito.
   ===================================================================================== */

/* ---------- 1. Interruttore e visibilità per periodo ---------- */
.ift-lp { display: grid; gap: 40px; grid-template-columns: minmax(0, 1fr); }
.ift-lp > *, .ift-lp-trio-wrap { min-width: 0; }
.ift-lp-toggle { justify-self: center; }
.ift-lp-toggle__note { margin: -24px 0 0; text-align: center; color: var(--ift-text-3); font-size: var(--ift-fs-caption); }
.ift-lp [data-only="annual"] { display: none; }
.ift-lp:has(#period-annual:checked) [data-only="annual"],
.ift-lp[data-period="annual"] [data-only="annual"] { display: block; }
.ift-lp:has(#period-annual:checked) span[data-only="annual"],
.ift-lp[data-period="annual"] span[data-only="annual"] { display: inline; }
.ift-lp:has(#period-annual:checked) [data-only="monthly"],
.ift-lp[data-period="annual"] [data-only="monthly"] { display: none; }

/* ---------- 2. Prezzo ---------- */
.ift-lp-price { display: flex; align-items: baseline; gap: 6px; margin: 0; color: var(--ift-text); font-variant-numeric: tabular-nums; }
.ift-lp-price__amount { font: 600 3.5rem / 1 var(--ift-font); letter-spacing: -.045em; white-space: nowrap; }
.ift-lp-price__per { color: var(--ift-text-2); font-size: 1rem; font-weight: 500; }
.ift-lp-price--sm .ift-lp-price__amount { font-size: 2.25rem; }
.ift-lp-price--sm .ift-lp-price__per { font-size: .9375rem; }
.ift-lp-price__sub { margin: 10px 0 0; color: var(--ift-text-3); font-size: var(--ift-fs-small); line-height: 1.45; }
.ift-lp-price__gift { display: inline-block; margin-left: 8px; padding: 1px 9px; border-radius: 999px; border: 1px solid currentColor; color: var(--ift-success); font-size: var(--ift-fs-caption); font-weight: 600; white-space: nowrap; }

/* ---------- 3. Trio ---------- */
.ift-lp-trio-wrap { position: relative; }
.ift-lp-trio { display: grid; gap: 20px; grid-template-columns: 1fr; }
.ift-lp-card { position: relative; display: flex; flex-direction: column; gap: 20px; padding: 28px 24px; border-radius: 24px;
  background: radial-gradient(120% 80% at 50% -20%, rgb(255 255 255 / .07), transparent 60%), rgb(255 255 255 / .025);
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / .1); color: var(--ift-text-body); text-align: start;
  transition: transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .45s cubic-bezier(.22,.61,.36,1); }
.ift-lp-card:hover { transform: translateY(-2px); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .18), 0 24px 60px rgb(0 0 0 / .35); }
.ift-lp-card.is-rec { background: radial-gradient(120% 80% at 50% -20%, rgb(255 255 255 / .12), transparent 60%), rgb(255 255 255 / .045); box-shadow: none; }
.ift-lp-card.is-rec::before { content: ""; position: absolute; inset: -2px; border-radius: 26px; padding: 2px; pointer-events: none;
  background: var(--ift-gradient-conic); animation: ift-glow-spin 8s linear infinite;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask-composite: exclude; }
.ift-lp-card > * { position: relative; }
.ift-lp-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 32px; }
.ift-lp-card__name { margin: 0; color: var(--ift-text); font: 700 1.5rem / 1.15 var(--ift-font-heading); letter-spacing: -.01em; }
.ift-lp-card__badge { margin: 0; padding: 5px 12px; border-radius: 999px; background: #FFFFFF; color: #0A0A0A; font-size: var(--ift-fs-caption); font-weight: 600; line-height: 1.3; white-space: nowrap; }
.ift-lp-card__for { margin: -8px 0 0; color: var(--ift-text-2); font-size: .9375rem; line-height: 1.5; }
.ift-lp-card__price { min-height: 5.25rem; }
.ift-lp-card__credits { padding: 12px 16px; border-radius: 14px; background: rgb(255 255 255 / .05); color: var(--ift-text-body); font-size: .9375rem; line-height: 1.45; }
.ift-lp-card__credits p { margin: 0; }
.ift-lp-card__credits strong { color: var(--ift-text); font-weight: 700; font-variant-numeric: tabular-nums; }
.ift-lp-card__credits-note { margin-top: 4px !important; color: var(--ift-text-3); font-size: var(--ift-fs-caption); }
.ift-lp-btn { width: 100%; min-height: 56px; justify-content: center; }
.ift-lp-card__features, .ift-lp-mini__features, .ift-lp-agency__features { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; font-size: .9375rem; line-height: 1.45; }
.ift-lp-card__features { padding-top: 20px; border-top: 1px solid var(--ift-border); align-content: start; }
.ift-lp-card__features li, .ift-lp-mini__features li, .ift-lp-agency__features li { display: flex; gap: 10px; align-items: flex-start; color: var(--ift-text-body); }
.ift-lp-card__features li.is-lead { color: var(--ift-text); font-weight: 600; }
.ift-lp-check { flex: none; width: 18px; height: 18px; margin-top: 2px; color: var(--ift-success); }

/* Desktop: tre colonne con le righe interne allineate tra le card (subgrid). */
@media (min-width: 900px) {
  .ift-lp-trio { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(6, auto); gap: 0 20px; align-items: start; }
  .ift-lp-trio--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 820px; margin-inline: auto; }
  .ift-lp-card--trio { grid-row: span 6; }
  @supports (grid-template-rows: subgrid) {
    .ift-lp-card--trio { display: grid; grid-template-rows: subgrid; row-gap: 20px; }
  }
  .ift-lp-card { padding: 36px 32px 40px; }
  .ift-lp-card.is-rec { padding-top: 36px; }
  .ift-lp-dots, .ift-lp-swipe { display: none; }
}
@media (min-width: 1170px) { .ift-lp-trio { gap: 0 28px; } }

/* Telefono e tablet stretto: carosello a scorrimento, consigliato per primo, nessuno scroll della pagina. */
@media (max-width: 899.98px) {
  .ift-lp-trio { display: flex; gap: 14px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--ift-gutter, 16px)); padding: 6px var(--ift-gutter, 16px) 14px; scroll-padding-inline: var(--ift-gutter, 16px);
    scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .ift-lp-trio::-webkit-scrollbar { display: none; }
  .ift-lp-card--trio { flex: 0 0 min(84%, 400px); scroll-snap-align: start; }
  .ift-lp-card--trio.is-rec { order: -1; }
  .ift-lp-card:hover { transform: none; }
  .ift-lp-price__amount { font-size: 3rem; }
  .ift-lp-dots { display: flex; justify-content: center; gap: 8px; margin-top: 6px; }
  .ift-lp-dot { width: 7px; height: 7px; border-radius: 999px; background: rgb(255 255 255 / .28); transition: width .35s ease, background-color .35s ease; }
  .ift-lp-dot.is-on { width: 22px; background: #FFFFFF; }
  .ift-lp-dot[data-dot="pro"] { order: -1; }
  .ift-lp-swipe { margin: 10px 0 0; text-align: center; color: var(--ift-text-3); font-size: var(--ift-fs-caption); }
  html:not(.js) .ift-lp-dots { display: none; }
}

/* ---------- 4. Ingresso: Free e Lite ---------- */
.ift-lp-entry { display: grid; gap: 16px; }
.ift-lp-entry__title { margin: 0; text-align: center; color: var(--ift-text-2); font: 600 var(--ift-fs-small) / 1.4 var(--ift-font); letter-spacing: .02em; }
.ift-lp-entry__grid { display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .ift-lp-entry__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ift-lp-mini { display: grid; gap: 14px; padding: 24px; border-radius: 20px; background: rgb(255 255 255 / .03); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .09); text-align: start;
  transition: transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .45s cubic-bezier(.22,.61,.36,1); }
.ift-lp-mini:hover { transform: translateY(-2px); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .16); }
@media (min-width: 768px) { .ift-lp-mini { grid-template-rows: auto auto 1fr auto; padding: 28px 28px 30px; } }
.ift-lp-mini__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ift-lp-mini__name { margin: 0; color: var(--ift-text); font: 700 1.25rem / 1.2 var(--ift-font-heading); }
.ift-lp-mini__for { margin: 0; color: var(--ift-text-2); font-size: .9375rem; line-height: 1.5; }
.ift-lp-mini__features { gap: 9px; font-size: var(--ift-fs-small); }
@media (min-width: 1170px) { .ift-lp-mini__features { grid-template-columns: 1fr 1fr; column-gap: 20px; } }
.ift-lp-mini__features strong { color: var(--ift-text); font-variant-numeric: tabular-nums; }
.ift-lp-btn--ghost { min-height: 52px; border-radius: var(--ift-radius-btn, 12px); background: transparent; color: var(--ift-text); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .28);
  transition: background-color .3s ease, color .3s ease, transform .3s ease; }
.ift-lp-btn--ghost:hover { background: #FFFFFF; color: #0A0A0A; transform: translateY(-1px); }

/* ---------- 5. Agency a tutta larghezza ---------- */
.ift-lp-agency { display: grid; gap: 28px; padding: 28px 24px; border-radius: 24px; text-align: start;
  background: linear-gradient(120deg, rgb(255 255 255 / .07), rgb(255 255 255 / .02) 55%), rgb(255 255 255 / .02); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .12); }
@media (min-width: 900px) { .ift-lp-agency { grid-template-columns: minmax(0, 1fr) 300px; align-items: center; gap: 48px; padding: 44px 48px; } }
.ift-lp-agency__kicker { margin: 0 0 10px; color: var(--ift-text-2); font-size: var(--ift-fs-caption); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.ift-lp-agency__title { margin: 0; color: var(--ift-text); font: 700 clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem) / 1.15 var(--ift-font-heading); letter-spacing: -.015em; }
.ift-lp-agency__text { margin: 12px 0 0; max-width: 60ch; color: var(--ift-text-body); font-size: 1rem; line-height: 1.6; }
.ift-lp-agency__features { margin-top: 20px; }
@media (min-width: 576px) { .ift-lp-agency__features { grid-template-columns: 1fr 1fr; column-gap: 24px; } }
.ift-lp-agency__side { display: grid; gap: 14px; align-content: center; }
.ift-lp-agency__side .ift-btn { width: 100%; justify-content: center; min-height: 56px; }
.ift-lp-agency__credits, .ift-lp-agency__note { margin: 6px 0 0; color: var(--ift-text-2); font-size: var(--ift-fs-small); }
.ift-lp-agency__credits strong { color: var(--ift-text); }
.ift-lp-agency__contact { justify-self: center; color: var(--ift-text); font-size: var(--ift-fs-small); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- 6. Garanzie ---------- */
.ift-lp-assure { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; }
.ift-lp-assure li { display: inline-flex; align-items: center; gap: 8px; color: var(--ift-text-2); font-size: var(--ift-fs-small); font-weight: 500; }
.ift-lp-assure__icon { width: 18px; height: 18px; flex: none; color: var(--ift-success); }
@media (max-width: 575.98px) { .ift-lp-assure { display: grid; justify-content: start; gap: 10px; padding-inline: 4px; } }
.ift-lp-note { margin-top: -12px; }

/* ---------- 7. Valore della suite (sezione chiara) ---------- */
.ift-lp-value__grid { list-style: none; margin: 48px 0 0; padding: 0; display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width: 576px) { .ift-lp-value__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .ift-lp-value__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
.ift-lp-value__item { padding: 28px; border-radius: 24px; background: #FFFFFF; box-shadow: 0 1px 0 rgb(0 0 0 / .06), inset 0 0 0 1px rgb(0 0 0 / .06); text-align: start;
  transition: transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .45s cubic-bezier(.22,.61,.36,1); }
.ift-lp-value__item:hover { transform: translateY(-2px); box-shadow: 0 18px 40px rgb(0 0 0 / .06), inset 0 0 0 1px rgb(0 0 0 / .08); }
.ift-lp-value__icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: #2B2B2B; color: #FFFFFF; }
.ift-lp-value__icon svg { width: 22px; height: 22px; }
.ift-lp-value__title { margin: 18px 0 6px; color: #2B2B2B; font: 700 1.125rem / 1.3 var(--ift-font-heading); }
.ift-lp-value__text { margin: 0; color: #545454; font-size: .9375rem; line-height: 1.55; }
.ift-lp-value__note { margin: 28px auto 0; max-width: 680px; text-align: center; color: #696969; font-size: var(--ift-fs-caption); line-height: 1.5; }

/* ---------- 8. Confronto completo ---------- */
.ift-lp-cmp-section { overflow-x: clip; overflow-y: visible; }
.ift-lp-cmp { margin-top: 40px; }
.ift-lp-cmp__toggle { display: flex; align-items: center; justify-content: center; gap: 8px; width: max-content; max-width: 100%; margin: 0 auto 28px; padding: 12px 22px; border-radius: 999px;
  background: #FFFFFF; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .12); color: #2B2B2B; font-weight: 600; font-size: var(--ift-fs-small); cursor: pointer; list-style: none; }
.ift-lp-cmp__toggle::-webkit-details-marker { display: none; }
.ift-lp-cmp__toggle:hover { box-shadow: inset 0 0 0 1px rgb(0 0 0 / .3); }
.ift-lp-cmp__toggle:focus-visible { outline: 2px solid #2B2B2B; outline-offset: 3px; }
.ift-lp-cmp__chev { width: 18px; height: 18px; transition: transform .3s ease; }
.ift-lp-cmp[open] .ift-lp-cmp__chev { transform: rotate(180deg); }
.ift-lp-cmp .ift-lp-cmp__closed, .ift-lp-cmp[open] .ift-lp-cmp__open { display: inline; }
.ift-lp-cmp .ift-lp-cmp__open, .ift-lp-cmp[open] .ift-lp-cmp__closed { display: none; }

.ift-lp-cmp__pick { margin: 0 0 16px; padding: 0; border: 0; min-width: 0; }
.ift-lp-cmp__pick legend { margin-bottom: 10px; padding: 0; color: #545454; font-size: var(--ift-fs-small); font-weight: 600; }
.ift-lp-cmp__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ift-lp-cmp__chips input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.ift-lp-cmp__chips label { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; background: #FFFFFF; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .14);
  color: #2B2B2B; font-size: var(--ift-fs-small); font-weight: 600; cursor: pointer; }
.ift-lp-cmp__chips input:checked + label { background: #2B2B2B; color: #FFFFFF; box-shadow: none; }
.ift-lp-cmp__chips input:focus-visible + label { outline: 2px solid #2B2B2B; outline-offset: 2px; }
@media (min-width: 900px) { .ift-lp-cmp__pick { display: none; } }

.ift-lp-table { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; color: #2B2B2B; font-size: var(--ift-fs-small); line-height: 1.45; }
.ift-lp-table thead th { position: sticky; top: calc(var(--ift-header-offset, 96px) - 8px); z-index: 2; padding: 16px 10px; background: rgb(250 250 250 / .96);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid rgb(0 0 0 / .14); vertical-align: bottom; text-align: center; }
.ift-lp-table thead th.ift-lp-table__feat { text-align: start; color: #545454; font-weight: 600; }
.ift-lp-table__plan { display: block; color: #2B2B2B; font: 700 1rem / 1.2 var(--ift-font-heading); }
.ift-lp-table__price { display: block; margin-top: 4px; color: #545454; font-weight: 500; font-size: var(--ift-fs-caption); }
.ift-lp-table thead th.is-rec .ift-lp-table__plan::after { content: ""; display: block; width: 24px; height: 3px; margin: 6px auto 0; border-radius: 3px; background: var(--ift-gradient, linear-gradient(90deg, #5AAAF6, #A78BFA, #F472B6)); }
.ift-lp-table__group th { padding: 28px 10px 10px; text-align: start; color: #2B2B2B; font: 700 var(--ift-fs-caption) / 1.3 var(--ift-font); letter-spacing: .08em; text-transform: uppercase; border-bottom: 1px solid rgb(0 0 0 / .1); }
.ift-lp-table tbody th[scope="row"] { padding: 14px 10px; text-align: start; font-weight: 500; color: #2B2B2B; border-bottom: 1px solid rgb(0 0 0 / .07); }
.ift-lp-table td { padding: 14px 10px; text-align: center; color: #2B2B2B; border-bottom: 1px solid rgb(0 0 0 / .07); }
.ift-lp-table td.is-rec, .ift-lp-table thead th.is-rec { background-color: rgb(255 255 255 / .96); }
.ift-lp-table td.is-rec { background: rgb(0 0 0 / .025); }
.ift-lp-table__feat { width: 26%; }
.ift-lp-yes { width: 20px; height: 20px; color: #166534; vertical-align: middle; }
.ift-lp-no { color: #696969; }
@media (max-width: 899.98px) {
  .ift-lp-table__feat { width: 56%; }
  .ift-lp-table thead th { top: calc(var(--ift-header-offset, 80px) - 8px); }
  .ift-lp-table td, .ift-lp-table tbody th[scope="row"] { padding: 13px 8px; }
}

/* ---------- 9. Entrata appena percepita e movimento ridotto ---------- */
@keyframes ift-lp-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
html.motion .ift-lp-card, html.motion .ift-lp-mini, html.motion .ift-lp-agency { animation: ift-lp-in .5s cubic-bezier(.22,.61,.36,1) both; }
html.motion .ift-lp-card:nth-child(2) { animation-delay: .06s; }
html.motion .ift-lp-card:nth-child(3) { animation-delay: .12s; }
@media (prefers-reduced-motion: reduce) {
  .ift-lp-card, .ift-lp-mini, .ift-lp-agency, .ift-lp-value__item, .ift-lp-btn--ghost, .ift-lp-dot, .ift-lp-cmp__chev { animation: none !important; transition: none !important; transform: none !important; opacity: 1 !important; }
  .ift-lp-card.is-rec::before { animation: none; }
  .ift-lp-trio { scroll-behavior: auto; }
}

/* ---------- 10. Teaser prezzi della home (stesso linguaggio, 3 piani + riga ingresso) ---------- */
.ift-lp-teaser { display: grid; gap: 16px; grid-template-columns: 1fr; max-width: 1080px; margin: 0 auto; padding: 0; list-style: none; }
@media (min-width: 768px) { .ift-lp-teaser { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
.ift-lp-teaser .ift-lp-card { gap: 14px; padding: 28px; text-align: center; align-items: center; }
.ift-lp-teaser .ift-lp-card__top { justify-content: center; }
.ift-lp-teaser .ift-lp-price { justify-content: center; }
.ift-lp-teaser .ift-lp-card__for { margin: 0; }
@media (max-width: 767.98px) { .ift-lp-teaser .ift-lp-card.is-rec { order: -1; } }
.ift-lp-teaser__entry { margin: 24px 0 0; text-align: center; color: var(--ift-text-2); font-size: var(--ift-fs-small); }
.ift-lp-teaser__entry strong { color: var(--ift-text); }
.ift-lp-table td .ift-lp-yes { display: block; margin: 0 auto; }
/* 23/10 verifica: elenco delle mini card in alto anche quando la riga si allunga; confronto su telefono a piena larghezza */
.ift-lp-mini__features { align-content: start; }
@media (max-width: 899.98px) {
  .ift-lp-table { table-layout: auto; }
  .ift-lp-table thead th[data-col], .ift-lp-table td[data-col] { width: 44%; }
}

/* IFT-OFFERTA 28/10/2026 sconto di lancio: prezzo pieno barrato, prezzo del primo mese, badge e fascia (App\Ift\IftOfferta).
   Contrasti gia' misurati dei token: --ift-text-3 (#9E9E9E su scuro 7,5), --ift-success (#4ADE80 su scuro 11,6, #166534 su chiaro 6,8). */
.ift-lp-price.has-offer { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.ift-lp-price__was { flex-basis: 100%; order: -1; color: var(--ift-text-3); font-size: 1.0625rem; font-weight: 500; text-decoration: line-through; text-decoration-thickness: 1.5px; }
.ift-lp-price__offer { display: inline-block; margin: 8px 0 0; padding: 2px 10px; border-radius: 999px; border: 1px solid currentColor; color: var(--ift-success); font-size: var(--ift-fs-caption); font-weight: 600; white-space: nowrap; }
.ift-lp-offer { justify-self: center; max-width: 780px; margin: -14px 0 0; padding: 12px 20px; border-radius: 14px; background: rgb(255 255 255 / .06); border: 1px solid rgb(255 255 255 / .14); color: var(--ift-text-2); font-size: var(--ift-fs-small); line-height: 1.5; text-align: center; }
.ift-lp-offer strong { color: var(--ift-text); }

/* ---------- 11. IFT-CREATOR 29/10/2026, otto piani su due righe da quattro (sections.plans.layout "rows") ---------- */
.ift-lp-trio-wrap + .ift-lp-trio-wrap { margin-top: 8px; }
.ift-lp-row__title { margin: 0 0 16px; text-align: center; color: var(--ift-text-2); font: 600 var(--ift-fs-small) / 1.4 var(--ift-font); letter-spacing: .02em; }
.ift-lp-card__badge--new { background: rgb(255 255 255 / .12); color: var(--ift-text); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .22); }
.ift-lp-offer__note { margin: -4px 0 0; text-align: center; color: var(--ift-text-3); font-size: var(--ift-fs-caption); }
html.motion .ift-lp-card:nth-child(4) { animation-delay: .18s; }
@media (min-width: 900px) and (max-width: 1199.98px) {
  .ift-lp-trio--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(12, auto); row-gap: 20px; }
}
@media (min-width: 1200px) {
  .ift-lp-trio--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 18px; }
  .ift-lp-trio--4 .ift-lp-card { padding: 30px 22px 32px; }
  .ift-lp-trio--4 .ift-lp-card__name { font-size: 1.35rem; }
  .ift-lp-trio--4 .ift-lp-price__amount { font-size: 2.5rem; }
  .ift-lp-trio--4 .ift-lp-card__for, .ift-lp-trio--4 .ift-lp-card__credits, .ift-lp-trio--4 .ift-lp-card__features { font-size: .875rem; }
}
