/* Regala un mestiere (kit buoni-natale-8-10, CEO 8/10/2026). Pagina /regala-un-mestiere/, riga del buono alla cassa,
   riquadro del buono dopo il pagamento e nel dettaglio dell'ordine.
   Gettoni del sito (linguaggio/02_STILE.md): spazi 4-8-12-16-24-32-48, raggi 12-16-22, caratteri var(--tbp-font)
   e var(--tbp-font-titoli). Niente bordi di accento, niente ombre grandi. Verde e oro solo sulla tessera del buono. */

html body .tbp-rg,
html body .tbp-rg-voce,
html body .tbp-rg-riquadro {
  --rg-titolo: #084828;
  --rg-testo: #123326;
  --rg-nota: #35503F;
  --rg-sezione: #F4F7F5;
  --rg-campo: #FFFFFF;
  --rg-linea: rgba(8, 72, 40, .22);
  --rg-link: #084828;
  --rg-tondo: #E4F1E8;
  --rg-tondo-testo: #145E3F;
  --rg-scelta: #E4F1E8;
  --rg-scelta-linea: #145E3F;
  --rg-err: #FBE3E1;
  --rg-err-testo: #A3141A;
  --rg-fuoco: #084828;
  /* la tessera del buono: uguale in tutti i temi, come il PDF */
  --rg-verde: #0A3A24;
  --rg-oro: #E0B23A;
  --rg-crema: #F4F1EA;
  --rg-tenue: #C9D8CE;
}
html[data-tbp-theme="tobepolo"] body .tbp-rg,
html[data-tbp-theme="tobepolo"] body .tbp-rg-voce,
html[data-tbp-theme="tobepolo"] body .tbp-rg-riquadro {
  --rg-testo: #10261B;
  --rg-sezione: #FFFFFF;
}
html[data-tbp-theme="dark"] body .tbp-rg,
html[data-tbp-theme="dark"] body .tbp-rg-voce,
html[data-tbp-theme="dark"] body .tbp-rg-riquadro {
  --rg-titolo: #EDEDED;
  --rg-testo: #EDEDED;
  --rg-nota: #B5B5B5;
  --rg-sezione: #1E1E1E;
  --rg-campo: #262626;
  --rg-linea: #4A4A4A;
  --rg-link: #9BDBB5;
  --rg-tondo: #1E3A2B;
  --rg-tondo-testo: #9BDBB5;
  --rg-scelta: #1E3A2B;
  --rg-scelta-linea: #9BDBB5;
  --rg-err: #3A1A1A;
  --rg-err-testo: #FFB4AE;
  --rg-fuoco: #9BDBB5;
}

html body .tbp-rg {
  box-sizing: border-box;
  max-width: 1120px;
  margin: 0 auto;
  padding: 24px 16px 48px;
  color: var(--rg-testo);
  font-family: var(--tbp-font, sans-serif);
  font-size: 1rem;
  line-height: 1.5;
}
html body .tbp-rg *,
html body .tbp-rg *::before,
html body .tbp-rg *::after { box-sizing: border-box; }
html body .tbp-rg :is(h1, h2, h3) {
  margin: 0;
  color: var(--rg-titolo);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.01em;
  text-wrap: balance;
  text-transform: none;
}
/* Il foglio del rebrand ingrandisce ogni h1 al telefono con !important: qui la scala della pagina. */
html body .tbp-rg h1 { font-size: 2.25rem !important; line-height: 1.08 !important; font-weight: 800; letter-spacing: -0.02em; }
html body .tbp-rg h2 { font-size: 1.5rem !important; line-height: 1.2 !important; margin-bottom: 16px; }
html body .tbp-rg h3 { font-size: 1rem; }
html body .tbp-rg p { margin: 0; color: var(--rg-testo); }
html body .tbp-rg :is(#buono, #come-funziona, #condizioni) { scroll-margin-top: 96px; }
html body .tbp-rg a:not(.tbp-btn) { color: var(--rg-link); text-decoration: underline; text-underline-offset: 3px; }
html body .tbp-rg :is(a, button, summary, input, textarea):focus-visible {
  outline: 3px solid var(--rg-fuoco);
  outline-offset: 3px;
}

/* ---------- Apertura: il titolo, poi che cosa si regala ---------- */
html body .tbp-rg__apertura { display: grid; gap: 24px; align-items: center; }
html body .tbp-rg__apertura-testo { order: -1; }
/* Al posto della foto (CEO 8/10): che cosa si regala, con le icone Lava.
   La misura delle icone passa da --tbp-icon: la regola del sito (in un @layer, con !important) vince su ogni width. */
html body .tbp-rg__cosa { padding: 24px; border-radius: 22px; background: var(--rg-sezione); }
html body .tbp-rg__cosa-testa { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
html body .tbp-rg .tbp-rg__cosa-titolo { margin: 0 !important; font-size: 1.375rem !important; }
html body .tbp-rg__cosa-lista,
html body .tbp-rg__scelta ul { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
html body .tbp-rg__cosa-lista li,
html body .tbp-rg__scelta li { display: grid; grid-template-columns: 48px 1fr; gap: 14px; align-items: start; margin: 0; }
html body .tbp-rg__scelta li { grid-template-columns: 40px 1fr; align-items: center; }
html body .tbp-rg__cosa-lista strong { color: var(--rg-titolo); }
html body #main .tbp-rg .tbp-rg__icona,
html body .tbp-rg .tbp-rg__icona { --tbp-icon: 48px; display: block; width: 48px !important; height: 48px !important; max-width: none !important; object-fit: contain; border-radius: 0; }
html body #main .tbp-rg .tbp-rg__scelta .tbp-rg__icona { --tbp-icon: 40px; width: 40px !important; height: 40px !important; }
html body #main .tbp-rg .tbp-rg__icona--grande,
html body .tbp-rg .tbp-rg__icona--grande { --tbp-icon: 96px; width: 96px !important; height: 96px !important; }
html body .tbp-rg .tbp-rg__occhiello {
  margin: 0 0 8px;
  color: var(--rg-nota);
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
html body .tbp-rg--natale .tbp-rg__occhiello { color: #A3141A; }
html[data-tbp-theme="dark"] body .tbp-rg--natale .tbp-rg__occhiello { color: #FFB4AE; }
html body .tbp-rg .tbp-rg__lead { margin-top: 12px; max-width: 34em; font-size: 1.0625rem; }
html body .tbp-rg__azioni { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 24px; }
html body .tbp-rg .tbp-rg__cta,
html body .tbp-rg .tbp-rg__invia,
html body .tbp-rg .tbp-rg__secondario {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 24px;
  border-radius: 16px;
  font-family: var(--tbp-font, sans-serif);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.25;
  text-decoration: none;
  text-align: center;
}
html body .tbp-rg__link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }

/* ---------- Sezioni ---------- */
html body .tbp-rg__sezione { margin-top: 48px; }

/* ---------- Scegli il buono ---------- */
html body .tbp-rg__compra {
  padding: 24px 16px;
  margin-left: -16px;
  margin-right: -16px;
  background: var(--rg-sezione);
}
html body .tbp-rg__griglia-compra { display: grid; gap: 32px; }
html body .tbp-rg__esito {
  margin-bottom: 16px;
  padding: 12px 16px;
  border-radius: 12px;
  background: var(--rg-err);
}
html body #main .tbp-rg__esito p,
html body .tbp-rg__esito p { color: var(--rg-err-testo) !important; font-weight: 700; }
html body .tbp-rg__esito p + p { margin-top: 4px; }
html body .tbp-rg__esito a { color: var(--rg-err-testo) !important; }
html body .tbp-rg__modulo { display: grid; gap: 16px; min-width: 0; }
html body .tbp-rg__importi { margin: 0; padding: 0; border: 0; min-width: 0; }
html body .tbp-rg .tbp-rg__importi legend,
html body .tbp-rg .tbp-rg__campo label {
  display: block;
  text-transform: none;
  letter-spacing: 0;
  padding: 0;
  margin: 0 0 8px;
  color: var(--rg-testo);
  font-size: .9375rem;
  font-weight: 700;
}
html body .tbp-rg__tessere { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
html body .tbp-rg__tessera { position: relative; display: block; margin: 0; cursor: pointer; }
html body .tbp-rg__tessera--altro { grid-column: 1 / -1; }
html body .tbp-rg__tessera input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}
html body .tbp-rg__tessera span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 8px 12px;
  border: 1.5px solid var(--rg-linea);
  border-radius: 14px;
  background: var(--rg-campo);
  color: var(--rg-testo);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 1.25rem;
  font-weight: 800;
  font-variant-numeric: lining-nums;
  text-align: center;
  transition: background-color .16s ease, border-color .16s ease;
}
html body .tbp-rg__tessera--altro span { min-height: 48px; font-family: var(--tbp-font, sans-serif); font-size: 1rem; font-weight: 700; }
html body .tbp-rg__tessera input:checked + span {
  border-color: var(--rg-scelta-linea);
  border-width: 2px;
  background: var(--rg-scelta);
  color: var(--rg-tondo-testo);
}
html body .tbp-rg__tessera input:focus-visible + span { outline: 3px solid var(--rg-fuoco); outline-offset: 2px; }
html body .tbp-rg__altro { margin-top: 12px; }
html body .tbp-rg__altro[hidden] { display: none; }
html body .tbp-rg__euro-campo { position: relative; display: inline-flex; align-items: center; }
html body .tbp-rg__euro-campo input { width: 140px !important; padding-right: 36px !important; }
html body .tbp-rg__euro-campo span { position: absolute; right: 14px; color: var(--rg-nota); font-weight: 700; pointer-events: none; }
html body .tbp-rg__coppia { display: grid; gap: 16px; }
html body .tbp-rg :is(input[type="text"], textarea) {
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 12px 14px;
  border: 1.5px solid var(--rg-linea);
  border-radius: 12px;
  background: var(--rg-campo);
  color: var(--rg-testo);
  font-family: var(--tbp-font, sans-serif);
  font-size: 1rem;
  line-height: 1.4;
  box-shadow: none;
}
html body .tbp-rg textarea { min-height: 96px; resize: vertical; }
html body .tbp-rg .tbp-rg__facoltativo { color: var(--rg-nota); font-weight: 400; }
html body .tbp-rg .tbp-rg__aiuto { margin-top: 6px; color: var(--rg-nota); font-size: .8125rem; }
html body #main .tbp-rg .tbp-rg__errore,
html body .tbp-rg .tbp-rg__errore { margin-top: 6px; color: var(--rg-err-testo) !important; font-size: .875rem; font-weight: 700; }
html body .tbp-rg .is-errore :is(input, textarea) { border-color: var(--rg-err-testo); }
html body .tbp-rg .tbp-rg__invia { width: 100%; margin-top: 8px; }
html body .tbp-rg .tbp-rg__nota { color: var(--rg-nota); font-size: .875rem; text-align: center; }

/* Anteprima: la tessera del buono, come il PDF */
html body .tbp-rg__anteprima { margin: 0; min-width: 0; }
html body .tbp-rg__anteprima figcaption { margin-bottom: 8px; color: var(--rg-nota); font-size: .875rem; font-weight: 700; }
html body .tbp-rg-carta {
  display: grid;
  grid-template-columns: 34% 1fr;
  overflow: hidden;
  aspect-ratio: 210 / 148;
  border-radius: 16px;
  background: var(--rg-verde);
  color: var(--rg-crema);
  box-shadow: 0 10px 28px rgba(5, 43, 24, .18);
}
html body .tbp-rg-carta__lato { display: flex; align-items: center; justify-content: center; background: var(--rg-crema); }
html body #main .tbp-rg .tbp-rg-carta__lato .tbp-rg-carta__icona,
html body .tbp-rg .tbp-rg-carta__lato .tbp-rg-carta__icona { --tbp-icon: 82%; width: 82% !important; height: auto !important; max-width: none !important; aspect-ratio: 1; object-fit: contain; }
html body .tbp-rg-carta__verde {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 6% 6% 5%;
  font-size: clamp(.625rem, 2.6vw, .875rem);
}
html body #main .tbp-rg .tbp-rg-carta__marchio,
html body .tbp-rg .tbp-rg-carta__marchio { display: block; width: auto !important; max-width: none !important; height: 2.1em !important; margin: 0 0 8%; border-radius: 0; object-fit: contain; align-self: flex-start; }
html body #main .tbp-rg .tbp-rg-carta__titolo,
html body .tbp-rg .tbp-rg-carta__titolo {
  color: var(--rg-crema) !important;
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 2.1em;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
}
html body #main .tbp-rg .tbp-rg-carta__titolo em,
html body .tbp-rg .tbp-rg-carta__titolo em { display: block; font-style: normal; color: var(--rg-oro) !important; }
html body #main .tbp-rg .tbp-rg-carta__per,
html body .tbp-rg .tbp-rg-carta__per { margin-top: 7%; color: var(--rg-crema) !important; font-size: 1.15em; font-weight: 700; }
html body #main .tbp-rg .tbp-rg-carta__msg,
html body .tbp-rg .tbp-rg-carta__msg {
  margin-top: 2%;
  color: var(--rg-tenue) !important;
  font-size: .9em;
  line-height: 1.35;
  white-space: pre-line;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
html body #main .tbp-rg .tbp-rg-carta__da,
html body .tbp-rg .tbp-rg-carta__da { margin-top: 2%; color: var(--rg-oro) !important; font-size: .9em; font-weight: 700; }
html body .tbp-rg-carta__piede { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; margin-top: auto; }
html body .tbp-rg-carta__codice {
  padding: .45em .7em;
  border-radius: .5em;
  background: var(--rg-crema);
  color: #084828;
  font-size: .8em;
  font-weight: 700;
  letter-spacing: .06em;
  white-space: nowrap;
}
html body .tbp-rg-carta__importo {
  color: var(--rg-oro);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 2.4em;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

/* ---------- Come funziona ---------- */
html body .tbp-rg__come { display: grid; gap: 24px; align-items: center; }
html body .tbp-rg__passi { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
html body .tbp-rg__passi li { display: grid; grid-template-columns: 48px 1fr; gap: 16px; margin: 0; align-items: start; }
html body .tbp-rg__numero {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--rg-tondo);
  color: var(--rg-tondo-testo);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 1.125rem;
  font-weight: 800;
}
html body .tbp-rg__passi p { margin-top: 4px; color: var(--rg-nota); }
html body .tbp-rg__scelta { padding: 24px; border-radius: 22px; background: var(--rg-sezione); }
html body .tbp-rg .tbp-rg__scelta h3 { margin-bottom: 16px; font-size: 1.0625rem; }
html body .tbp-rg .tbp-rg__valido {
  margin-top: 24px;
  padding: 16px;
  border-radius: 16px;
  background: var(--rg-sezione);
  color: var(--rg-testo);
  font-weight: 700;
}

/* ---------- Domande ---------- */
html body .tbp-rg__faq details { border-bottom: 1px solid var(--rg-linea); }
html body .tbp-rg__faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 56px;
  padding: 12px 0;
  color: var(--rg-titolo);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
html body .tbp-rg__faq summary::-webkit-details-marker { display: none; }
html body .tbp-rg__faq summary::after {
  content: "";
  flex: 0 0 10px;
  width: 10px;
  height: 10px;
  margin-right: 4px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-3px);
  transition: transform .2s ease;
}
html body .tbp-rg__faq details[open] summary::after { transform: rotate(-135deg) translateY(-3px); }
html body .tbp-rg__faq details p { padding: 0 0 16px; color: var(--rg-nota); }

/* ---------- Aziende ---------- */
html body .tbp-rg__aziende { display: grid; gap: 24px; align-items: center; margin-top: 48px; }
html body .tbp-rg__aziende-icona { display: flex; justify-content: flex-start; }
html body .tbp-rg__aziende-testo p { margin-bottom: 16px; }

@media (min-width: 850px) {
  html body .tbp-rg { padding-top: 40px; }
  html body .tbp-rg h1 { font-size: 3.25rem !important; }
  html body .tbp-rg h2 { font-size: 1.875rem !important; }
  html body .tbp-rg__apertura { grid-template-columns: 1.1fr 1fr; gap: 48px; }
  html body .tbp-rg__cosa { padding: 32px; }
  html body .tbp-rg__compra { padding: 40px; margin-left: 0; margin-right: 0; border-radius: 24px; }
  html body .tbp-rg__griglia-compra { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
  html body .tbp-rg__anteprima { position: sticky; top: 112px; }
  html body .tbp-rg-carta__verde { font-size: .8125rem; }
  html body .tbp-rg__tessere { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  html body .tbp-rg__tessera--altro { grid-column: auto; }
  html body .tbp-rg__tessera--altro span { min-height: 56px; font-size: .9375rem; }
  html body .tbp-rg__coppia { grid-template-columns: 1fr 1fr; }
  html body .tbp-rg__come { grid-template-columns: 1fr 440px; gap: 48px; }
  html body .tbp-rg__faq { max-width: 760px; }
  html body .tbp-rg__aziende { grid-template-columns: 120px 1fr; gap: 24px; max-width: 760px; }
}
@media (max-width: 360px) {
  html body .tbp-rg h1 { font-size: 2rem !important; }
  html body .tbp-rg__tessera span { font-size: 1.0625rem; }
}
@media (prefers-reduced-motion: reduce) {
  html body .tbp-rg *, html body .tbp-rg-voce * { transition: none !important; }
}

/* ---------- Cassa: la riga del buono ---------- */
html body .tbp-rg-voce { display: flex; align-items: center; gap: 12px; text-align: left; }
html body .tbp-rg-voce__tessera {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: flex-end;
  justify-content: flex-end;
  width: 76px;
  height: 54px;
  padding: 6px 8px;
  border-radius: 10px;
  background: var(--rg-verde);
}
html body .tbp-rg-voce__importo {
  color: var(--rg-oro);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 1.0625rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}
html body .tbp-rg-voce__testo { display: grid; gap: 2px; min-width: 0; font-family: var(--tbp-font, sans-serif); }
html body .tbp-rg-voce__testo strong { color: var(--rg-titolo); font-size: 1rem; line-height: 1.25; }
html body .tbp-rg-voce__testo span { color: var(--rg-nota); font-size: .875rem; line-height: 1.35; overflow-wrap: anywhere; }
html body .tbp-rg-voce__cambia { justify-self: start; display: inline-flex; align-items: center; min-height: 44px; color: var(--rg-link) !important; font-size: .875rem; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
html body .tbp-rg-nota-cassa {
  margin: 0 0 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--tbp-surface-soft, #F4F7F5);
  color: var(--tbp-text, #123326);
  font-size: .875rem;
  font-weight: 700;
}
html[data-tbp-theme="dark"] body .tbp-rg-nota-cassa { background: #1E3A2B; color: #C8EBD5; }

/* ---------- Grazie e dettaglio dell'ordine ---------- */
html body .tbp-rg-riquadro {
  display: grid;
  gap: 16px;
  max-width: 520px;
  margin: 24px auto;
  text-align: left;
  font-family: var(--tbp-font, sans-serif);
}
html body .tbp-rg-riquadro__tessera {
  display: grid;
  gap: 4px;
  padding: 20px 22px;
  border-radius: 16px;
  background: var(--rg-verde);
}
html body .tbp-rg-riquadro__occhiello { color: var(--rg-oro); font-size: .75rem; font-weight: 700; letter-spacing: .08em; }
html body .tbp-rg-riquadro__importo {
  color: var(--rg-crema);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.02em;
}
html body .tbp-rg-riquadro__per { color: var(--rg-tenue); font-weight: 700; }
html body .tbp-rg-riquadro__dati { display: grid; gap: 8px; margin: 0; }
html body .tbp-rg-riquadro__dati div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
html body .tbp-rg-riquadro__dati dt { margin: 0; color: var(--rg-nota); font-size: .875rem; font-weight: 700; }
html body .tbp-rg-riquadro__dati dd { margin: 0; color: var(--rg-testo); }
html body .tbp-rg-riquadro__codice { font-size: 1.25rem; font-weight: 800; letter-spacing: .06em; color: var(--rg-titolo) !important; }
html body .tbp-rg-riquadro__scade dd { color: var(--rg-nota); font-size: .875rem; text-transform: none; letter-spacing: 0; }
html body .tbp-rg-riquadro .tbp-rg-riquadro__scarica {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  border-radius: 16px;
  font-weight: 800;
  text-decoration: none;
}
html body .tbp-rg-grazie { max-width: 560px; margin: 0 auto; padding: 32px 16px 48px; text-align: center; font-family: var(--tbp-font, sans-serif); }
html body .tbp-rg-grazie h1 {
  margin: 0 0 8px;
  color: var(--tbp-text-strong, #084828);
  font-family: var(--tbp-font-titoli, var(--tbp-font, sans-serif));
  font-size: 2rem !important;
  line-height: 1.15 !important;
  font-weight: 800;
}
html[data-tbp-theme="dark"] body .tbp-rg-grazie h1 { color: #EDEDED; }
html body .tbp-rg-grazie__testo { color: var(--tbp-text, #35503F); }
html[data-tbp-theme="dark"] body .tbp-rg-grazie__testo { color: #B5B5B5; }
html body .tbp-rg-grazie__ordine { margin-top: 8px; color: var(--tbp-text, #35503F); font-size: .875rem; }
html[data-tbp-theme="dark"] body .tbp-rg-grazie__ordine { color: #B5B5B5; }
html body .tbp-rg-grazie__altri { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; margin-top: 8px; }
html body .tbp-rg-grazie__altri a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }

/* Cassa con il solo buono: niente «Hai un codice sconto?» (non vale sul buono) né «IVA inclusa» (il buono multiuso non ha IVA alla vendita). */
html body.tbp-rg-cassa .tbp-coupon,
html body.tbp-rg-cassa .tbp-flow-review__vat,
html body.tbp-rg-cassa #order_review .tbp-flow-review__vat,
html body.tbp-rg-cassa .woocommerce-checkout-review-order-table small.tbp-flow-review__vat { display: none !important; }

/* =====================================================================================================
 * Computer (kit desktop-pagine-8-10, CEO 8/10: «non mi sembrano ottimizzate per PC»).
 * Da 1100 px: contenuti larghi come /cerca/ e le altre pagine nuove (1160 px); anteprima del buono ferma
 * SOTTO la testata del sito (al computer la testata resta in alto e misura 246 px: con top 112 la tessera
 * finiva coperta); domande frequenti con il titolo a sinistra invece di una colonna di 760 px.
 * ===================================================================================================== */
@media (hover: hover) and (pointer: fine) {
  html body .tbp-rg__faq summary:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
}
@media (min-width: 850px) {
  html body .tbp-rg__anteprima { top: calc(var(--tbp-testata-ora, 246px) + 24px); transition: top 200ms cubic-bezier(.2, 0, 0, 1); } /* --tbp-testata-ora: kit header-sottile-8-10 */
}
@media (min-width: 1100px) {
  html body .tbp-rg { max-width: 1224px; padding: 56px 32px 96px; }
  html body .tbp-rg h1 { font-size: 3.75rem !important; }
  html body .tbp-rg .tbp-rg__lead { font-size: 1.1875rem; }
  html body .tbp-rg__apertura { gap: 64px; }
  html body .tbp-rg__sezione { margin-top: 72px; }
  html body .tbp-rg__compra { padding: 48px; }
  html body .tbp-rg__griglia-compra { gap: 64px; }
  html body .tbp-rg__come { grid-template-columns: minmax(0, 1fr) 440px; gap: 64px; }
  html body .tbp-rg__passi p { max-width: 34em; }
  html body .tbp-rg__sezione:has(> .tbp-rg__faq) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    column-gap: 64px;
    align-items: start;
  }
  html body .tbp-rg__sezione:has(> .tbp-rg__faq) > h2 { grid-column: 1; }
  html body .tbp-rg__sezione:has(> .tbp-rg__faq) > .tbp-rg__faq { grid-column: 2; grid-row: 1; max-width: none; }
  html body .tbp-rg__faq details p { max-width: 62ch; }
  html body .tbp-rg__aziende { margin-top: 80px; max-width: none; grid-template-columns: 120px minmax(0, 1fr); }
}
