*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: calc(var(--header-height) + var(--s-16) + env(safe-area-inset-top)); -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: var(--vuoto); scrollbar-color: var(--verde) var(--carta); }
body { margin: 0; padding-top: calc(var(--header-height) + env(safe-area-inset-top)); background: var(--fondo-chiaro); color: var(--testo-su-chiaro); font: 400 var(--t-16)/var(--il-corpo) var(--font-testo); }
::selection { background: var(--verde); color: var(--bianco); }
.dark ::selection { background: var(--lime); color: var(--verde); }
[hidden] { display: none !important; }
img { display: block; max-width: 100%; height: auto; }
svg { flex-shrink: 0; }
a { color: inherit; text-underline-offset: .2em; }
button, input, select, textarea { font: inherit; }
button, a, summary, input[type=checkbox] { touch-action: manipulation; }
button, summary { cursor: pointer; }
button { color: inherit; }
button:disabled { cursor: wait; }
button, .btn { -webkit-user-select: none; user-select: none; }
:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
:target { scroll-margin-top: var(--s-8); }
h1, h2, h3, p, figure, blockquote, ol, ul, dl { margin: 0; }
h1, h2, h3 { font-family: var(--font-titoli); font-weight: 700; color: var(--titolo-su-chiaro); }
h1 { font-size: var(--h1-size); line-height: var(--il-titolo); letter-spacing: var(--tr-titolo); }
h2 { font-size: var(--h2-size); line-height: var(--il-titolo-s); letter-spacing: var(--tr-titolo); text-wrap: balance; }
h3 { font-size: var(--t-20); line-height: var(--il-titolo-s); }
p + p { margin-top: var(--s-16); }
strong { font-weight: 700; }
.container { width: min(calc(100% - var(--gutter) * 2), var(--contenitore)); margin-inline: auto; }
.section { padding-block: var(--section-space); }
.section-head { margin-bottom: var(--s-32); max-width: 920px; }
.section-index, .eyebrow { font-size: clamp(var(--t-12), 1vw, var(--t-14)); font-weight: 700; line-height: var(--il-occhiello); letter-spacing: var(--tr-occhiello); text-transform: uppercase; color: var(--verde); margin-bottom: var(--s-24); display: flex; align-items: center; gap: var(--s-12); }
.section-index::before, .eyebrow::before { content: ''; width: var(--s-32); height: var(--s-4); background: var(--decoro); flex: 0 0 var(--s-32); }
.dark { --focus: var(--lime); --button-bg: var(--cta-su-scuro-fondo); --button-fg: var(--cta-su-scuro-testo); --button-circle: var(--verde); --button-arrow: var(--lime); background: var(--fondo-scuro); color: var(--testo-su-scuro); }
.dark h1, .dark h2, .dark h3 { color: var(--testo-su-scuro); }
.dark .eyebrow { color: var(--evidenza-su-scuro); }
.dark .section-index { color: var(--evidenza-su-scuro); }
.dark .section-index::before, .dark .eyebrow::before { display: none; }
.note { font-size: var(--t-12); line-height: var(--il-corpo); }
.lead, .statement { font-size: var(--lead-size); font-weight: 600; line-height: var(--il-lead); }
.statement { max-width: 850px; margin-bottom: var(--s-48); }
.btn { display: inline-flex; justify-content: space-between; align-items: center; gap: var(--s-16); min-height: var(--cta-h-web); padding: var(--s-8) var(--s-8) var(--s-8) var(--s-24); border: 0; border-radius: var(--r-pillola); background: var(--button-bg); color: var(--button-fg); text-decoration: none; font-size: var(--t-16); font-weight: 700; line-height: 1.25; transition: transform var(--motion-quick) var(--ease-ui); }
.btn-arrow { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: var(--r-pillola); background: var(--button-circle); color: var(--button-arrow); }
.btn-compact { min-height: var(--cta-h-web-compatto); padding: 6px 6px 6px var(--s-16); font-size: var(--t-16); gap: var(--s-12); }
.btn-compact .btn-arrow { width: 32px; height: 32px; flex-basis: 32px; }
.btn:active, .secondary:active, .text-button:active { transform: scale(.97); }
.btn:disabled { background: var(--nebbia); color: var(--verde); }
.btn:disabled .btn-arrow { background: var(--verde); color: var(--bianco); }
.secondary { min-height: var(--cta-h-web-compatto); border: 2px solid var(--verde); border-radius: var(--r-pillola); background: var(--vuoto); color: var(--verde); padding: var(--s-8) var(--s-24); font-weight: 700; transition: transform var(--motion-quick) var(--ease-ui); }
.text-button { background: var(--vuoto); border: 0; text-decoration: underline; text-underline-offset: .2em; min-height: var(--cta-h-web-compatto); padding: var(--s-8); font-weight: 600; color: var(--verde); transition: transform var(--motion-quick) var(--ease-ui); }
.site-header { height: calc(var(--header-height) + env(safe-area-inset-top)); padding-top: env(safe-area-inset-top); background: var(--carta); position: fixed; top: 0; inset-inline: 0; z-index: 20; }
.site-header.is-scrolled { box-shadow: var(--ombra); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: var(--s-16); }
.brand { display: flex; align-items: center; min-height: var(--cta-h-web-compatto); }
.brand img { width: var(--logo-web-mobile); }
.desktop-label { display: none; }
.hero { position: relative; overflow: clip; padding-block: var(--s-32) var(--s-48); background-image: url('/webinar-agevolazioni-2027/assets/pattern-verde.svg'); background-repeat: no-repeat; background-size: auto 140%; background-position: right bottom; }
.hero-grid { position: relative; }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; }
.hero .eyebrow { margin-bottom: var(--s-16); }
.hero-meta-badge { font-family: var(--font-titoli); font-size: var(--t-12); line-height: 1.5; letter-spacing: var(--tr-pillola); color: var(--verde); background: var(--bianco); border-radius: var(--r-pillola); padding: var(--s-8) var(--s-16); margin: 0; }
.hero-threshold { display: flex; align-items: flex-start; gap: var(--s-8); font-size: var(--t-14); line-height: 1.5; font-weight: 600; margin-top: var(--s-16); margin-bottom: var(--s-24); max-width: 550px; }
.hero-threshold .icon { width: 20px; height: 20px; margin-top: 1px; }
.hero-threshold strong { color: var(--bianco); }
.hero h1 { max-width: 670px; }
.hero-title-accent { color: var(--lime); display: block; }
.hero-subtitle { font-size: var(--lead-size); font-weight: 600; line-height: var(--il-lead); margin-top: var(--s-24); max-width: 500px; }
.hero-action { margin-top: var(--s-24); width: 100%; }
.hero-action .btn { width: 100%; }
.hero-note { margin-top: var(--s-12); font-size: var(--t-12); line-height: 1.6; max-width: 430px; }
.hero-lead { order: 1; margin-top: var(--s-32); max-width: 570px; }
.hero-side { margin-top: var(--s-32); }
.hero-photo { width: 100%; border-radius: var(--r-m); }
.hero-names { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-16); padding-top: var(--s-16); }
.hero-names strong { display: block; font-size: var(--t-14); }
.hero-names span { display: block; font-size: var(--t-12); margin-top: var(--s-4); }
.event-card { display: none; }
.authority { background: var(--bianco); padding-block: var(--s-32); }
.authority .eyebrow { margin-bottom: var(--s-16); font-size: var(--t-12); }
.authority img { width: 100%; max-width: 800px; }
.tour-strip { padding-block: var(--s-32) var(--s-48); background: var(--tinta); }
.tour-strip-lead { max-width: 780px; font-weight: 600; }
.trust-grid { display: grid; gap: var(--s-24); margin-top: var(--s-32); }
.trust-grid > div { display: grid; gap: var(--s-8); }
.trust-grid strong { font-family: var(--font-titoli); font-size: var(--t-24); line-height: 1.2; color: var(--verde); }
.trust-grid span { font-size: var(--t-14); }
.trust-grid .missing-data { font-family: var(--font-testo); font-size: var(--t-14); line-height: 1.6; text-decoration: underline dotted; text-underline-offset: .25em; }
.problem-grid { display: grid; gap: var(--s-32); margin-bottom: var(--s-48); }
.problem-context { max-width: 65ch; }
.mistakes, .feature-list, .method-list, .benefits { list-style: none; padding: 0; display: grid; gap: var(--s-24); }
.mistakes li, .feature-list li, .method-list li, .benefits li { display: grid; grid-template-columns: var(--s-32) 1fr; gap: var(--s-16); align-items: start; }
.list-number { font: 700 var(--t-20)/1.25 var(--font-titoli); color: var(--verde); padding-top: 1px; }
.mistakes strong, .feature-list strong, .method-list strong, .benefits strong { display: block; margin-bottom: var(--s-8); color: var(--verde); }
.mistakes li { border-top: 1px solid var(--nebbia); padding-top: var(--s-24); }
.measures-label { margin-bottom: var(--s-24); font-family: var(--font-testo); font-weight: 700; font-size: var(--t-20); }
.misure-grid { display: grid; gap: var(--s-16); }
.measure { background: var(--superficie); border: 1px solid var(--linea-su-chiaro); border-radius: var(--r-s); padding: var(--s-24); }
.measure h3 { margin-block: var(--s-16); }
.misure-note { max-width: 100ch; margin-block: var(--s-24) var(--s-32); }
.program { background: var(--bianco); }
.program-grid { display: grid; gap: var(--s-48); }
.timeline { list-style: none; padding: 0 0 0 var(--s-16); border-left: 1px solid var(--nebbia); margin-bottom: var(--s-32); }
.timeline li { padding-bottom: var(--s-32); position: relative; }
.timeline li:last-child { padding-bottom: 0; }
.timeline-heading { display: grid; grid-template-columns: 64px 1fr; gap: var(--s-12); align-items: baseline; margin-bottom: var(--s-12); }
.timeline time { font-family: var(--font-titoli); font-weight: 700; font-size: var(--t-20); line-height: 1.2; color: var(--verde); }
.timeline h3 { font-size: var(--t-16); }
.timeline-speaker { font-size: var(--t-12); font-weight: 600; color: var(--verde); margin-top: var(--s-12); }
.speakers-grid { display: grid; gap: var(--s-24); }
.speaker-card { overflow: hidden; border: 1px solid var(--nebbia); border-radius: var(--r-m); background: var(--bianco); }
.speaker-portrait { background: var(--tinta); }
.speaker-portrait img { width: 100%; max-height: 360px; object-fit: contain; object-position: bottom; }
.speaker-copy { padding: var(--s-24); }
.speaker-copy h3 { font-size: var(--t-24); }
.speaker-role { font-weight: 600; margin-top: var(--s-12); }
.format-grid { display: grid; gap: var(--s-32); }
.callout { background: var(--verde-pattern); border: 1px solid var(--linea-su-scuro); border-radius: var(--r-s); padding: var(--s-24); }
.callout .eyebrow { color: var(--evidenza-su-scuro); margin-bottom: var(--s-16); }
.callout h3 { font-size: var(--t-24); margin-bottom: var(--s-16); }
.dark .list-number, .dark li strong { color: var(--bianco); }
.feature-list li, .benefits li { padding-block: var(--s-16) var(--s-24); border-bottom: 1px solid var(--linea-su-scuro); }
.feature-list li:last-child, .benefits li:last-child { border: 0; padding-bottom: 0; }
.testimonial-strip { background: var(--bianco); border: 1px solid var(--nebbia); border-radius: var(--r-m); display: grid; gap: var(--s-24); padding: var(--s-24); margin-bottom: var(--s-48); }
.red-logo { max-width: 160px; max-height: 70px; object-fit: contain; object-position: left; }
.testimonial-text { color: var(--verde); font-size: var(--t-20); line-height: var(--il-lead); }
.testimonial-person { display: flex; align-items: center; gap: var(--s-16); }
.testimonial-person img { width: 64px; height: 64px; object-fit: cover; border-radius: var(--r-pillola); }
.testimonial-person figcaption { font-size: var(--t-12); font-weight: 600; }
.case-intro { margin-bottom: var(--s-24); }
.case-list { list-style: none; padding: 0; display: grid; gap: var(--s-12); }
.case-row { display: grid; grid-template-columns: 72px 1fr; gap: var(--s-12) var(--s-16); align-items: center; padding: var(--s-16); background: var(--bianco); border: 1px solid var(--nebbia); border-radius: var(--r-s); }
.case-logo { width: 72px; height: 48px; object-fit: contain; }
.case-id { min-width: 0; }
.case-id strong { font-size: var(--t-14); color: var(--verde); display: block; }
.case-id span { font-size: var(--t-12); }
.case-figures { display: grid; grid-column: 1 / -1; grid-template-columns: 1fr 1fr; gap: var(--s-16); border-top: 1px solid var(--nebbia); padding-top: var(--s-12); }
.case-figures dt { font-size: var(--t-12); }
.case-figures dd { margin: 0; font: 700 var(--t-20)/1.5 var(--font-titoli); color: var(--verde); }
.case-more { margin-block: var(--s-24); width: 100%; }
.case-note { margin-top: var(--s-24); max-width: 100ch; }
.case-cta { margin-top: var(--s-32); }
.case-cta p { margin-bottom: var(--s-16); font-weight: 600; }
.about { background: var(--bianco); }
.about-grid { display: grid; gap: var(--s-48); }
.about .section-head { margin-bottom: var(--s-24); }
.quote-block { color: var(--verde); font-weight: 600; font-size: var(--t-20); line-height: var(--il-lead); margin-block: var(--s-32); }
.method-list { margin-bottom: var(--s-24); }
.about .btn { margin-top: var(--s-24); }
.about-photos { display: grid; gap: var(--s-24); align-content: center; }
.about-photos img { width: 100%; border-radius: var(--r-m); }
.roadmap-grid { display: grid; gap: var(--s-32); }
.benefits { margin-top: var(--s-32); gap: var(--s-8); }
.roadmap-side img { width: 100%; border-radius: var(--r-m); }
.countdown { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--s-8); margin-block: var(--s-24); }
.countdown div { display: grid; text-align: center; padding-block: var(--s-12); border: 1px solid var(--linea-su-scuro); border-radius: var(--r-s); }
.countdown strong { font: 700 var(--t-32)/1.2 var(--font-titoli); font-variant-numeric: tabular-nums; }
.countdown span { font-size: var(--t-12); }
.roadmap-side .btn { width: 100%; }
.faq-grid { display: grid; gap: var(--s-8); }
.faq-list { border-top: 1px solid var(--nebbia); }
.faq details { border-bottom: 1px solid var(--nebbia); }
.faq summary { display: flex; gap: var(--s-16); justify-content: space-between; align-items: center; list-style: none; padding-block: var(--s-24); font-weight: 600; color: var(--verde); min-height: var(--cta-h-web); }
.faq summary::-webkit-details-marker { display: none; }
.t-acc-chevron { transform: scaleY(1); transform-origin: center; transition: transform var(--acc-chevron) var(--acc-ease); }
.t-acc-chevron path { vector-effect: non-scaling-stroke; }
details[open] .t-acc-chevron { transform: scaleY(-1); }
.faq-answer { padding-bottom: var(--s-24); max-width: 70ch; }
.registration { background: var(--carta); }
.registration-grid { display: grid; gap: var(--s-32); }
.registration-copy p + p { margin-top: var(--s-24); }
.form-card { padding: var(--s-24); background: var(--bianco); border: 1px solid var(--nebbia); border-radius: var(--r-m); box-shadow: var(--ombra); min-width: 0; }
.form-progress { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-8); margin-bottom: var(--s-24); }
.form-progress span { height: var(--s-4); background: var(--nebbia); }
.form-progress .is-current { background: var(--verde); }
fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
legend { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.field { margin-bottom: var(--s-24); }
.field > label { display: block; font-weight: 600; color: var(--verde); margin-bottom: var(--s-8); }
input:not([type=checkbox]):not([type=hidden]), select, textarea { width: 100%; min-height: var(--cta-h-web); padding: var(--s-12) var(--s-16); border: 1px solid var(--form-border); border-radius: var(--r-s); background: var(--bianco); color: var(--verde); font-size: var(--t-16); caret-color: var(--verde); }
input::placeholder, textarea::placeholder { color: var(--grafite); opacity: 1; }
.select-wrap { position: relative; }
.select-wrap::after { content: ''; width: var(--s-8); height: var(--s-8); border-right: 2px solid var(--verde); border-bottom: 2px solid var(--verde); transform: rotate(45deg); position: absolute; right: var(--s-16); top: 22px; pointer-events: none; }
select { appearance: none; padding-right: var(--s-32);  }
.field-error, .submit-error, .save-error { color: var(--form-error-text); font-size: var(--t-12); margin-top: var(--s-8); padding-left: var(--s-12); border-left: 2px solid var(--form-error); }
[aria-invalid=true] { border: 2px solid var(--form-error) !important; }
.form-card .btn { width: 100%; }
.form-card .note { margin-top: var(--s-16); }
.form-card .text-button { display: block; margin-inline: auto; margin-top: var(--s-12); }
.step-boost { background: var(--tinta); border-radius: var(--r-s); padding: var(--s-16); margin-bottom: var(--s-24); }
.step-boost-title { font-family: var(--font-titoli); color: var(--verde); line-height: 1.3; }
.step-boost-proof { font-size: var(--t-14); }
.proof-label { font-size: var(--t-12); font-weight: 700; color: var(--verde); margin-top: var(--s-16); }
.proof-label + .step-boost-proof { margin-top: var(--s-8); }
.check-label, .field > .check-label { display: flex; align-items: flex-start; gap: var(--s-12); font-size: var(--t-12); font-weight: 400; line-height: 1.6; min-height: var(--cta-h-web-compatto); margin-bottom: var(--s-12); color: var(--grafite); cursor: pointer; padding-block: var(--s-8); }
.check-label input { flex: 0 0 24px; width: 24px; height: 24px; margin: 0; accent-color: var(--verde); cursor: pointer; }
.check-label a, .form-information a { color: var(--verde); text-decoration-thickness: 1px; }
#inviti-canali { padding-left: var(--s-32); }
.form-information { margin-bottom: var(--s-24); }
.site-footer { padding-block: var(--s-48) calc(var(--s-96) + env(safe-area-inset-bottom)); }
.site-footer img { width: var(--logo-web); margin-bottom: var(--s-24); }
.site-footer p { font-size: var(--t-12); max-width: 100ch; }
.site-footer a { display: inline; padding-block: var(--s-8); }
.site-footer p { line-height: 2; }
.sticky-bar { position: fixed; z-index: 15; bottom: 0; inset-inline: 0; display: flex; justify-content: space-between; align-items: center; gap: var(--s-8); border-top: 1px solid var(--linea-su-scuro); padding: var(--s-12) max(var(--s-16),env(safe-area-inset-right)) calc(var(--s-12) + env(safe-area-inset-bottom)) max(var(--s-16),env(safe-area-inset-left)); }
.sticky-bar p { font-size: var(--t-12); margin: 0; }
.sticky-countdown { font-weight: 700; font-variant-numeric: tabular-nums; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: var(--s-8); left: var(--s-8); padding: var(--s-12); background: var(--bianco); color: var(--verde); z-index: 30; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
.svg-library, .pixel-fallback { position: absolute; overflow: hidden; }
.state-enter { animation: state-enter var(--motion-fast) var(--ease-ui); }
@keyframes state-enter { from { opacity: 0; transform: translateX(var(--page-slide-distance)); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 767px) {
  .case-list.is-collapsed .case-row:nth-child(n+6) { display: none; }
  .hero h1 { font-size: var(--t-40); }
  .format .section-head { order: 0; margin-bottom: 0; }
  .format .feature-list { order: 1; }
  .format .callout { order: 2; }
  .btn { gap: var(--s-8); }
}
@media (max-width: 374px) {
  .hero { padding-top: var(--s-24); }
  .hero h1 { font-size: var(--h1-compatto); }
  .hero-action .btn { padding-left: var(--s-16); }
  .form-card { padding: var(--s-16); }
  .form-card .btn { padding-left: var(--s-16); }
}
@media (min-width: 768px) {
  .brand img { width: var(--logo-web); }
  .desktop-label { display: inline; }
  .mobile-label { display: none; }
  .hero { padding-block: var(--s-48); }
  .hero-action .btn { width: auto; }
  .hero-meta-badge { font-size: var(--t-14); }
  .hero-threshold { font-size: var(--t-16); }
  .hero-side { max-width: 720px; }
  .authority .container { display: flex; align-items: center; justify-content: space-between; gap: var(--s-48); }
  .authority .eyebrow { flex-shrink: 0; margin: 0; }
  .authority img { flex: 1 1 0; min-width: 0; height: auto; max-width: min(75%,800px); }
  .trust-grid { grid-template-columns: 1fr 1fr 1.2fr; gap: var(--s-32); }
  .trust-grid > div + div { border-left: 1px solid var(--nebbia); padding-left: var(--s-32); }
  .misure-grid, .speakers-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .speaker-portrait img { max-height: 400px; }
  .case-row { grid-template-columns: 110px 1fr 1.2fr; padding: var(--s-16) var(--s-24); gap: var(--s-24); }
  .case-logo { width: 110px; height: 56px; }
  .case-figures { grid-column: auto; border: 0; padding: 0; }
  .case-id strong { font-size: var(--t-16); }
  .case-more, .sticky-bar { display: none !important; }
  .site-footer { padding-block: var(--s-48); }
  .testimonial-strip { grid-template-columns: 160px 1fr; gap: var(--s-24) var(--s-48); padding: var(--s-32); }
  .testimonial-person { grid-column: 2; }
  .testimonial-text { font-size: var(--t-24); }
}
@media (min-width: 1024px) {
  .hero { padding-block: var(--s-64); }
  .hero-grid { display: grid; grid-template-columns: 1.12fr 1fr; gap: var(--s-48); align-items: center; }
  .hero-side { margin-top: 0; }
  .hero h1 { font-size: var(--h1-size); }
  .hero-lead { order: 0; margin-top: var(--s-24); }
  .hero-subtitle { max-width: 440px; }
  .hero-note { max-width: 430px; }
  .hero-names { padding-top: var(--s-16); }
  .event-card { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--s-16); border-top: 1px solid var(--linea-su-scuro); margin-top: var(--s-24); padding-top: var(--s-24); }
  .event-card > div { display: flex; align-items: flex-start; gap: var(--s-12); }
  .event-card p { display: grid; gap: var(--s-4); font-size: var(--t-12); }
  .event-card strong { font-size: var(--t-14); }
  .problem-grid { grid-template-columns: .8fr 1.2fr; gap: var(--s-64); }
  .program-grid { grid-template-columns: .9fr 1.1fr; gap: var(--s-96); }
  .timeline { padding-left: var(--s-32); }
  .timeline-heading { grid-template-columns: 72px 1fr; gap: var(--s-16); }
  .timeline h3 { font-size: var(--t-20); }
  .format-grid, .about-grid, .roadmap-grid, .registration-grid { grid-template-columns: 1fr 1fr; gap: var(--s-64); }
  .format .section-head { grid-column: 1; grid-row: 1; margin-bottom: 0; }
  .format .feature-list { grid-column: 2; grid-row: 1 / span 2; }
  .format .callout { grid-column: 1; grid-row: 2; align-self: start; }
  .about-photos { padding-top: var(--s-64); }
  .roadmap-side { align-self: center; }
  .faq-grid { grid-template-columns: .8fr 1.2fr; gap: var(--s-64); }
  .form-card { padding: var(--s-32); }
  .registration-copy { padding-top: var(--s-24); }
  .registration-copy .section-head { margin-bottom: var(--s-32); }
}
@media (min-width: 1200px) {
  .misure-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .measure { padding: var(--s-24); }
  .speakers-grid { gap: var(--s-32); }
  .speaker-card { display: grid; grid-template-columns: .9fr 1.1fr; }
  .speaker-portrait img { height: 100%; max-height: none; object-fit: cover; }
  .speaker-copy { padding: var(--s-32) var(--s-24); align-self: center; }
}
@media (hover: hover) and (pointer: fine) {
  .btn:hover .btn-arrow { transform: translate(2px,-2px); }
  .btn-arrow { transition: transform var(--motion-fast) var(--ease-ui); }
  .secondary:hover, .text-button:hover { background: var(--tinta); }
  .faq summary:hover { text-decoration: underline; text-underline-offset: .25em; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .t-acc-chevron { transition: none !important; }
  .state-enter { transform: none !important; }
}
@media (max-width: 339px) { .hero h1 { font-size: var(--t-32); } .hero-action .btn { padding-left: var(--s-12); } }
.faq { background: var(--bianco); }
.selected-value { margin-top: var(--s-8); font-size: var(--t-16); color: var(--verde); overflow-wrap: anywhere; }
@media (min-width: 768px) { .selected-value { display: none; } }
.nowrap { white-space: nowrap; }
.authority-split { display: grid; gap: var(--s-12); }
.authority-split img { width: 100%; height: auto; }
.authority-full { display: none; }
@media (min-width: 768px) { .authority-split { display: none; } .authority-full { display: block; } }
@media (max-width: 374px) { .hero-meta-badge { border-radius: var(--r-m); } .badge-coda { display: block; } }
.percorso li { position: relative; border-bottom: 0; padding-block: 0 var(--s-32); grid-template-columns: var(--s-48) 1fr; }
.percorso li:last-child { padding-bottom: 0; }
.percorso .list-number { position: relative; z-index: 1; display: grid; place-items: center; width: var(--s-32); height: var(--s-32); border-radius: var(--r-pillola); background: var(--verde-pattern); color: var(--lime); font-size: var(--t-16); padding: 0; }
.percorso li:not(:last-child)::before { content: ''; position: absolute; left: 15px; top: var(--s-32); bottom: 0; width: 1px; background: var(--linea-su-scuro); }
.dark .percorso .list-number { color: var(--lime); }
@media (min-width: 1024px) {
  .percorso li { grid-template-columns: var(--s-96) 1fr; padding-bottom: var(--s-48); }
  .percorso .list-number { width: auto; height: auto; background: none; place-items: start; font-size: var(--t-48); line-height: 1; }
  .percorso li:not(:last-child)::before { left: 26px; top: 64px; bottom: var(--s-12); }
}
.benefit-check { display: grid; place-items: center; color: var(--lime); padding-top: 1px; }
.benefit-check .icon { width: 24px; height: 24px; }
.trust-link-cell { position: relative; }
.trust-link-cell a::after { content: ''; position: absolute; inset: calc(var(--s-8) * -1); }
@media (max-width: 767px) { html { scroll-padding-bottom: calc(var(--s-96) + env(safe-area-inset-bottom)); } }
.webinar-iniziato .countdown, .webinar-iniziato .sticky-bar { display: none !important; }
.hero-exclusions { font-size: var(--t-12); line-height: 1.6; margin: calc(var(--s-16) * -1) 0 var(--s-24); max-width: 550px; }
.availability { margin-top: var(--s-24); padding: var(--s-16); border: 1px solid var(--linea-su-scuro); border-radius: var(--r-s); background: var(--verde-pattern); }
.availability-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: var(--s-4) var(--s-16); margin-bottom: var(--s-12); }
.availability-head strong { font-family: var(--font-titoli); font-size: var(--t-16); color: var(--lime); }
.availability-head span { font-size: var(--t-12); }
.availability-track, .spots-track { height: 6px; border-radius: var(--r-pillola); background: var(--linea-su-scuro); overflow: hidden; }
.availability-track span, .spots-track span { display: block; height: 100%; background: var(--lime); transform-origin: left; transform: scaleX(var(--posti-pieno, 0)); }
.spots { min-width: 220px; }
.spots-copy { display: flex; justify-content: space-between; align-items: baseline; gap: var(--s-12); margin-bottom: var(--s-8); }
.spots-copy strong { font-size: var(--t-12); letter-spacing: var(--tr-occhiello); color: var(--verde); }
.spots-copy span { font-size: var(--t-12); }
.spots-track { background: var(--nebbia); }
.spots-track span { background: var(--verde); }
.dark .spots-copy strong { color: var(--lime); }
.dark .spots-track { background: var(--linea-su-scuro); }
.dark .spots-track span { background: var(--lime); }
.conversion-row { display: grid; gap: var(--s-24); align-items: center; margin-top: var(--s-48); }
.roadmap-side .spots { margin-top: var(--s-16); }
.posti-riga { display: inline-block; font-family: var(--font-titoli); font-weight: 700; color: var(--verde); background: var(--tinta); border-radius: var(--r-pillola); padding: var(--s-8) var(--s-16); margin-bottom: var(--s-24); }
@media (min-width: 768px) { .conversion-row { grid-template-columns: auto minmax(220px, 320px); justify-content: start; gap: var(--s-48); } }
.marquee { overflow: hidden; background: var(--lime); color: var(--verde); padding-block: var(--s-12); }
.marquee-track { display: flex; width: max-content; gap: var(--s-24); animation: marquee 40s linear infinite; font-family: var(--font-titoli); font-weight: 700; font-size: var(--t-14); text-transform: uppercase; letter-spacing: var(--tr-pillola); white-space: nowrap; }
.marquee-track .dot { opacity: .6; }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .marquee-track { animation: none !important; } }
.speakers-grid { align-items: start; }
.speaker-facts { list-style: none; padding: 0; margin: var(--s-16) 0 0; display: grid; gap: var(--s-8); }
.speaker-facts li { position: relative; padding-left: var(--s-24); }
.speaker-facts li::before { content: ''; position: absolute; left: 0; top: .65em; width: var(--s-12); height: 2px; background: var(--decoro); }
.speaker-webinar { margin-top: var(--s-16); padding-top: var(--s-16); border-top: 1px solid var(--nebbia); }
.speaker-webinar span { display: block; font-size: var(--t-12); font-weight: 700; letter-spacing: var(--tr-occhiello); text-transform: uppercase; color: var(--verde); margin-bottom: var(--s-4); }
#speaker .statement { margin-top: calc(var(--s-16) * -1); }
.hero-trust { font-size: var(--t-14); font-weight: 600; line-height: 1.5; margin-bottom: var(--s-12); }
.hero-note .hero-exclusions { display: block; margin: var(--s-4) 0 0; font-size: var(--t-12); max-width: none; }
.hero-meta-badge { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--s-4) 0; font-weight: 700; font-size: var(--t-14); text-transform: uppercase; letter-spacing: var(--tr-pillola); line-height: 1.4; padding: var(--s-8) var(--s-16); border-radius: var(--r-m); }
.hero-meta-badge .icon { width: 17px; height: 17px; margin-right: var(--s-8); }
.hero-meta-badge .sep { display: inline-block; width: 2px; height: 14px; background: var(--verde); margin-inline: var(--s-8); font-size: 0; vertical-align: middle; }
@media (max-width: 374px) { .hero-meta-badge .badge-coda { display: inline; } }
.availability-head strong { color: var(--bianco); }
.availability-track span { background: var(--bianco); }
.posti-iniziali .availability-track, .posti-iniziali .spots-track { visibility: hidden; }
.testimonial-figure { font: 700 var(--t-48)/1.05 var(--font-titoli); letter-spacing: var(--tr-titolo); color: var(--verde); }
@media (min-width: 768px) { .testimonial-figure { font-size: var(--t-64); grid-column: 2; } .testimonial-strip .testimonial-text { grid-column: 2; } .testimonial-strip .red-logo { grid-row: 1 / span 2; } }
#registrationForm { scroll-margin-top: calc(var(--header-height) + var(--s-16) + env(safe-area-inset-top)); }
@media (max-width: 767px) {
  .speaker-card { display: grid; grid-template-columns: 112px 1fr; }
  .speaker-portrait { grid-row: 1 / span 2; align-self: stretch; }
  .speaker-portrait img { height: 100%; max-height: 160px; object-fit: cover; object-position: top center; }
  .speaker-copy { display: contents; }
  .speaker-copy h3 { grid-column: 2; padding: var(--s-16) var(--s-16) 0; font-size: var(--t-20); }
  .speaker-copy .speaker-role { grid-column: 2; padding: 0 var(--s-16) var(--s-16); margin-top: var(--s-4); font-size: var(--t-14); }
  .speaker-copy .speaker-facts, .speaker-copy .speaker-webinar { grid-column: 1 / -1; margin-inline: var(--s-16); }
  .speaker-copy .speaker-webinar { margin-bottom: var(--s-16); }
  .about-photo-2 { display: none; }
}
@media (max-width: 419px) { .hero-meta-badge .badge-coda { display: block; flex-basis: 100%; padding-left: 25px; } .hero-meta-badge .sep:has(+ .badge-coda) { display: none; } }
.hero-threshold { margin-top: var(--s-24); margin-bottom: 0; }
.hero-action .hero-trust { margin: var(--s-12) 0 0; font-size: var(--t-14); }
.hero-trust a { color: inherit; }
.registration-copy .per-chi { margin-top: 0; }
.hero .hero-meta-badge + h1 { margin-top: var(--s-24); }
.btn + .spots { margin-top: var(--s-12); width: 100%; max-width: 360px; min-width: 0; }
.hero-action .btn + .spots { max-width: none; }
@media (min-width: 768px) { .hero-action .btn + .spots { max-width: 380px; } }
.hero .spots-copy strong { color: var(--bianco); }
.hero .spots-track span { background: var(--bianco); }
.spots-copy span { white-space: nowrap; }
.roadmap-side .btn + .spots { max-width: none; }
.reviews { background: var(--carta); }
.testimonial-grid { display: grid; gap: var(--s-24); }
.testimonial { display: flex; flex-direction: column; gap: var(--s-24); background: var(--bianco); border: 1px solid var(--nebbia); border-radius: var(--r-m); padding: var(--s-24); }
.testimonial-logo { width: auto; max-width: 180px; height: 56px; object-fit: contain; object-position: left center; }
.testimonial-quote { color: var(--verde); font-size: var(--t-16); line-height: var(--il-corpo); flex: 1; }
.testimonial-foot { display: grid; gap: var(--s-12); border-top: 1px solid var(--nebbia); padding-top: var(--s-16); }
.reviewer { display: flex; align-items: center; gap: var(--s-12); }
.reviewer-avatar { width: 56px; height: 56px; border-radius: var(--r-pillola); object-fit: cover; object-position: top; background: var(--tinta); }
.reviewer-info { display: grid; font-size: var(--t-14); margin: 0; }
.reviewer-info strong { color: var(--verde); }
@media (min-width: 768px) {
  .testimonial-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .testimonial-grid[data-recensioni="1"] { grid-template-columns: minmax(0, 420px); justify-content: center; }
  .testimonial-grid[data-recensioni="2"] { grid-template-columns: repeat(2, minmax(0, 420px)); justify-content: center; }
}
.speakers-simple { display: grid; grid-template-columns: 1fr; gap: var(--s-32); justify-items: center; text-align: center; }
.speaker-simple { display: grid; justify-items: center; gap: var(--s-8); max-width: 320px; }
.speaker-simple img { width: 160px; height: 160px; border-radius: var(--r-pillola); object-fit: cover; object-position: top center; background: var(--tinta); margin-bottom: var(--s-8); }
.speaker-simple h3 { font-size: var(--t-20); }
.speaker-simple p { font-size: var(--t-14); }
@media (min-width: 768px) { .speakers-simple { grid-template-columns: repeat(2, minmax(0, 320px)); justify-content: center; gap: var(--s-64); } .speaker-simple img { width: 200px; height: 200px; } }
.reviewer-initials { display: grid; place-items: center; font: 700 var(--t-16)/1 var(--font-titoli); color: var(--verde); }
.hero-intro { font-size: var(--t-16); line-height: var(--il-corpo); margin-top: var(--s-16); max-width: 520px; }
.hero .hero-subtitle + .hero-intro + .hero-action { margin-top: var(--s-24); }
.dato-problema { background: var(--bianco); padding-block: var(--s-64); }
.dato-grid { display: grid; gap: var(--s-16); }
.dato-numero { font: 700 var(--t-48)/1 var(--font-titoli); letter-spacing: var(--tr-titolo); color: var(--verde); margin: 0; }
.dato-frase { font-size: var(--t-20); line-height: var(--il-lead); letter-spacing: 0; text-wrap: pretty; max-width: 62ch; }
.dato-problema .statement { font-size: var(--t-16); font-weight: 400; margin: var(--s-16) 0; max-width: 62ch; }
.dato-fonte { margin: 0; }
.dato-fonte a { color: var(--grafite); }
@media (min-width: 768px) {
  .dato-grid { grid-template-columns: minmax(180px, 0.5fr) 1.5fr; gap: var(--s-48); align-items: start; }
  .dato-numero { font-size: var(--t-64); }
  .dato-frase { font-size: var(--t-24); }
}
@media (min-width: 1024px) { .dato-numero { font-size: var(--t-104); } }
.soglia-cr { margin: 0 0 var(--s-24); }
.soglia-cr strong { color: var(--bianco); }
@media (min-width: 768px) { .trust-grid.trust-due { grid-template-columns: 1fr 1fr; } }
.hero .hero-meta-badge .badge-coda { display: inline; }
@media (max-width: 767px) {
  .site-header .btn-compact { transition: opacity var(--motion-quick) var(--ease-ui), transform var(--motion-quick) var(--ease-ui); }
  .site-header.cta-in-barra .btn-compact { opacity: 0; transform: translateY(-4px); pointer-events: none; visibility: hidden; }
  .about-photo-1 { aspect-ratio: 4 / 3; object-fit: cover; object-position: 25% 100%; }
}
@media (prefers-reduced-motion: reduce) { .site-header .btn-compact { transition: none; } }
@media (min-width: 1024px) {
  #problema .problem-grid { grid-template-columns: 1fr; gap: var(--s-16); max-width: 860px; margin-bottom: var(--s-32); }
  #problema .problem-context { font-weight: 600; }
}
@media (min-width: 768px) {
  .speakers-simple { justify-content: start; justify-items: start; text-align: left; }
  .speaker-simple { justify-items: start; }
}
#problema { background: var(--bianco); }
.problema-intro { display: grid; gap: var(--s-32); margin-bottom: var(--s-48); }
.problema-intro .statement { margin-bottom: 0; }
.aree { justify-self: center; width: min(100%, 268px); }
.aree-ruota { position: relative; width: 100%; container-type: inline-size; }
.aree-svg { display: block; width: 100%; height: auto; overflow: visible; }
.aree-fondo { fill: var(--tinta); }
.aree-anello { fill: none; stroke: var(--decoro); stroke-width: 16; stroke-dasharray: 1 1; stroke-dashoffset: 0; }
.aree-freccia { fill: var(--decoro); }
.aree-disco-fondo { fill: var(--verde); stroke: var(--bianco); stroke-width: 3; }
.aree-icona { fill: none; stroke: var(--bianco); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.aree-pmi { fill: var(--verde); }
.aree-disco, .aree-freccia, .aree-pmi, .aree-fondo { transform-box: fill-box; transform-origin: center; }
.aree-centro { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; margin: 0; pointer-events: none; font-family: var(--font-titoli); font-weight: 700; font-size: 22px; font-size: 8cqw; line-height: 1; color: var(--lime); }
@media (min-width: 1024px) {
  .problema-intro { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: var(--s-64); margin-bottom: var(--s-64); }
  .aree { width: min(100%, 400px); }
}
@media (prefers-reduced-motion: no-preference) {
  .aree-pronta .aree-anello { stroke-dashoffset: 1; }
  .aree-pronta .aree-disco, .aree-pronta .aree-freccia { opacity: 0; transform: scale(.6); }
  .aree-pronta .aree-pmi, .aree-pronta .aree-fondo, .aree-pronta .aree-centro { opacity: 0; transform: scale(.85); }
  .aree-pronta.aree-in .aree-anello { stroke-dashoffset: 0; transition: stroke-dashoffset 1875ms cubic-bezier(.45, 0, .25, 1); }
  .aree-pronta.aree-in .aree-fondo, .aree-pronta.aree-in .aree-pmi, .aree-pronta.aree-in .aree-centro { opacity: 1; transform: none; transition: opacity 625ms cubic-bezier(.22, 1, .36, 1), transform 625ms cubic-bezier(.22, 1, .36, 1); }
  .aree-pronta.aree-in .aree-disco { opacity: 1; transform: none; transition: opacity 469ms cubic-bezier(.22, 1, .36, 1) var(--d), transform 563ms cubic-bezier(.34, 1.36, .64, 1) var(--d); }
  .aree-pronta.aree-in .aree-freccia { opacity: 1; transform: none; transition: opacity 391ms cubic-bezier(.22, 1, .36, 1) 1953ms, transform 563ms cubic-bezier(.34, 1.36, .64, 1) 1953ms; }
}
.hero-trust a { display: inline-block; padding-block: 3px; margin-block: -3px; }
.hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 767px) {
  .site-header.cta-hero .btn-compact { opacity: 0; transform: translateY(-4px); pointer-events: none; visibility: hidden; }
}
#problema .dato-grid { padding-bottom: var(--s-32); margin-bottom: var(--s-48); border-bottom: 1px solid var(--nebbia); }
#problema .dato-frase { font-family: var(--font-titoli); font-weight: 700; color: var(--titolo-su-chiaro); }
.dato-sotto { margin: var(--s-16) 0; max-width: 62ch; }
.dato-sotto + .dato-fonte { margin-top: 0; }
@media (min-width: 1024px) { #problema .dato-grid { padding-bottom: var(--s-48); margin-bottom: var(--s-64); } }
.roadmap-side picture + .soglia-cr { margin-top: var(--s-24); }
.sticky-bar { bottom: var(--banner-h, 0px); }
html.banner-aperto body { padding-bottom: var(--banner-h); }
html.banner-aperto { scroll-padding-bottom: calc(var(--banner-h) + var(--s-96)); }
.stars { color: var(--verde); font-size: 13px; line-height: 1; letter-spacing: .12em; margin: 0; }
.hero-cover { display: block; border-radius: var(--r-m); }
.hero-cover:focus-visible { outline-offset: 6px; }
.roadmap-side { display: grid; align-content: center; gap: 0; }
@media (min-width: 1024px) { .hero-subtitle { max-width: 580px; } }
mark.ev { --ev-fascia: rgba(205, 253, 124, .7); color: inherit; padding: 0 0 0 .04em; background-color: transparent; background-image: linear-gradient(to bottom, transparent 58%, var(--ev-fascia) 58%, var(--ev-fascia) 90%, transparent 90%); background-repeat: no-repeat; background-position: 0 0; background-size: 100% 100%; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
mark.ev-scuro { padding: 0 0 .04em; background-image: linear-gradient(var(--lime), var(--lime)); background-position: 0 92%; background-size: 100% .09em; }
.ev-js mark.ev { transition: background-size 750ms cubic-bezier(.22, 1, .36, 1); }
.ev-js mark.ev:not(.ev-in) { background-size: 0% 100%; }
.ev-js mark.ev-scuro:not(.ev-in) { background-size: 0% .09em; }
@media (prefers-reduced-motion: reduce) { .ev-js mark.ev { transition: none !important; } }
.aree-etichette { position: absolute; inset: 0; pointer-events: none; }
.aree-etichette { display: none; }
@media (min-width: 1024px) {
  .aree-etichette { display: block; }
  .problema-blocco .aree { padding-block: var(--s-32); }
  .aree-et { position: absolute; font-family: var(--font-testo); font-weight: 700; font-size: 13px; font-size: clamp(13px, 3.5cqw, 14px); line-height: 1.2; color: var(--verde); white-space: nowrap; }
  .aree-et-1 { left: 50%; top: 1%; transform: translate(-50%, -100%); }
  .aree-et-2 { left: 85%; top: 20%; transform: translate(-50%, -100%); }
  .aree-et-6 { left: 15%; top: 20%; transform: translate(-50%, -100%); }
  .aree-et-3 { left: 85%; top: 80%; transform: translateX(-50%); }
  .aree-et-5 { left: 15%; top: 80%; transform: translateX(-50%); }
  .aree-et-4 { left: 50%; top: 99%; transform: translateX(-50%); }
}
@media (prefers-reduced-motion: no-preference) {
  .aree-pronta .aree-et { opacity: 0; }
  .aree-pronta.aree-in .aree-et { opacity: 1; transition: opacity 469ms cubic-bezier(.22, 1, .36, 1) var(--d); }
}
.sticky-countdown { display: flex; align-items: baseline; gap: 10px; margin-top: 2px; font-family: var(--font-titoli); font-weight: 700; }
.sticky-countdown .cd-n { font-size: 22px; line-height: 1.1; }
.sticky-countdown .cd-u { margin-left: 2px; font-family: var(--font-testo); font-size: 12px; font-weight: 600; }
@media (max-width: 767px) {
  .speakers-simple { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-16); align-items: start; }
  .speaker-simple { max-width: none; }
  .speaker-simple img { width: 112px; height: 112px; }
  .speaker-simple h3 { font-size: var(--t-16); }
  .speaker-simple p { font-size: var(--t-14); }
  .about-photo-2 { display: block; }
  .about-photo-1 { aspect-ratio: 2 / 1; object-position: 50% 50%; }
}
.dato-numero { color: var(--arancio); }
.anim-js .rivela { opacity: 0; transform: translateY(12px); }
.anim-js .rivela.rivelato { opacity: 1; transform: none; transition: opacity 750ms cubic-bezier(.22, 1, .36, 1) var(--rd, 0ms), transform 750ms cubic-bezier(.22, 1, .36, 1) var(--rd, 0ms); }
@media (prefers-reduced-motion: reduce) { .anim-js .rivela { opacity: 1 !important; transform: none !important; transition: none !important; } }
.dato-frase + .dato-fonte { margin-top: var(--s-12); }
#problema .dato-grid { grid-template-columns: 1fr; gap: var(--s-16); padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
.problema-blocco { display: grid; gap: var(--s-32); grid-template-areas: "dato" "ruota" "pass"; margin-bottom: var(--s-48); }
.problema-blocco .dato-grid { grid-area: dato; }
.problema-blocco .aree { grid-area: ruota; justify-self: center; width: min(100%, 268px); }
.problema-blocco .problema-passaggio { grid-area: pass; margin: 0; max-width: 62ch; }
@media (min-width: 1024px) {
  .problema-blocco { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); grid-template-areas: "dato ruota" "pass ruota"; column-gap: var(--s-64); row-gap: var(--s-32); align-items: start; margin-bottom: var(--s-64); }
  .problema-blocco .aree { width: min(100%, 400px); align-self: center; }
}
.cerchio { position: relative; display: inline-block; white-space: nowrap; }
.cerchio-svg { position: absolute; left: -9%; top: -4%; width: 118%; height: 112%; overflow: visible; pointer-events: none; }
.cerchio-svg path { fill: none; stroke: var(--decoro); stroke-width: 4px; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; opacity: .92; stroke-dasharray: 1; stroke-dashoffset: 0; }
.cerchio-js .cerchio:not(.cerchio-in) .cerchio-svg path { stroke-dashoffset: 1; }
.cerchio-js .cerchio-in .cerchio-svg path { transition: stroke-dashoffset 750ms cubic-bezier(.22, 1, .36, 1) 250ms; }
@media (prefers-reduced-motion: reduce) { .cerchio-js .cerchio-svg path { stroke-dashoffset: 0 !important; transition: none !important; } }
.problema-blocco { grid-template-areas: "dato" "ruota"; }
#problema .dato { margin: 0; }
#problema .dato-numero { display: block; margin-bottom: var(--s-8); color: var(--arancio); }
.dato-didascalia { display: block; max-width: 46ch; font-family: var(--font-testo); font-size: var(--t-16); font-weight: 400; line-height: 1.5; color: var(--testo-su-chiaro); letter-spacing: 0; }
#problema .problem-grid { gap: var(--s-24); margin-bottom: var(--s-32); }
#problema .problem-context { max-width: none; font-size: var(--t-16); font-weight: 600; color: var(--testo-su-chiaro); }
#problema .mistakes li > div { max-width: 75ch; }
@media (min-width: 1024px) {
  .problema-blocco { grid-template-areas: "dato ruota"; align-items: center; margin-bottom: var(--s-48); }
  .dato-didascalia { font-size: 18px; }
  #problema .problem-grid { max-width: none; }
}
/* Ottimizzazioni growth del 21/10 (ADA): riga della registrazione, riga sotto il telefono, fatturato a pulsanti,
   fatturato a pulsanti. Popup in uscita e avviso dell'ultima iscrizione stanno in extra.css, caricato da app.js dopo il primo disegno. */
.form-registrazione { display: flex; align-items: flex-start; gap: var(--s-8); margin-bottom: var(--s-16); color: var(--verde); font-size: var(--t-14); font-weight: 600; line-height: 1.45; }
.form-registrazione .icon { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 1px; }
.field-hint { margin-top: var(--s-8); font-size: var(--t-12); line-height: 1.5; color: var(--grafite); }
.fasce { min-width: 0; }
.fasce .fasce-legend { position: static; width: auto; height: auto; margin: 0 0 var(--s-8); padding: 0; overflow: visible; clip: auto; white-space: normal; font-weight: 600; color: var(--verde); }
.fasce-griglia { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-8); }
.fascia { position: relative; display: flex; min-width: 0; }
.fasce .fascia input[type=radio] { position: absolute; top: 50%; left: var(--s-16); width: 1px; height: 1px; min-height: 0; padding: 0; margin: 0; border: 0; opacity: 0; pointer-events: none; }
.fascia span { flex: 1; display: flex; align-items: center; gap: var(--s-8); min-width: 0; min-height: var(--cta-h-web); padding: var(--s-8) var(--s-12); border: 1px solid var(--form-border); border-radius: var(--r-s); background: var(--bianco); color: var(--verde); font-size: var(--t-14); font-weight: 600; line-height: 1.3; cursor: pointer; -webkit-user-select: none; user-select: none; transition: transform var(--motion-quick) var(--ease-ui); }
.fascia span::before { content: ''; flex: 0 0 16px; width: 16px; height: 16px; border: 1px solid var(--verde); border-radius: var(--r-pillola); background: var(--bianco); }
.fascia input:checked + span { background: var(--tinta); border-color: var(--verde); box-shadow: inset 0 0 0 1px var(--verde); }
.fascia input:checked + span::before { border: 5px solid var(--verde); }
.fascia input:focus-visible + span { outline: 2px solid var(--focus); outline-offset: 2px; }
.fascia:active span { transform: scale(.97); }
.fasce.is-invalid .fascia span { border-color: var(--form-error); }
.fasce-compatte .fascia span { min-height: var(--cta-h-web-compatto); padding-block: var(--s-4); }
@media (hover: hover) and (pointer: fine) { .fascia:hover span { background: var(--tinta); } }
@media (prefers-reduced-motion: reduce) { .fascia span { transition: none !important; } }
/* Correzioni dell'audit benchmark approvate da Giacomo (21/10 notte). */
/* E) Link del piede con area di tocco da 44 px senza cambiare l'impaginazione (padding su elemento in linea). */
.site-footer a { padding-block: 15px; padding-inline: 2px; }
/* C) Comparse dei blocchi in 350 ms (prima 750). */
.anim-js .rivela.rivelato { transition: opacity 350ms cubic-bezier(.22, 1, .36, 1) var(--rd, 0ms), transform 350ms cubic-bezier(.22, 1, .36, 1) var(--rd, 0ms); }
/* C) Ruota: fondo, cerchio e "PMI" visibili da subito; si animano anello, dischi, frecce ed etichette. */
@media (prefers-reduced-motion: no-preference) {
  .aree-pronta .aree-pmi, .aree-pronta .aree-fondo, .aree-pronta .aree-centro { opacity: 1; transform: none; }
}
/* D) Riga visibile sotto la ruota. */
.aree-didascalia { margin: var(--s-16) auto 0; max-width: 32ch; text-align: center; font-size: var(--t-14); font-weight: 600; line-height: 1.45; color: var(--verde); text-wrap: balance; }
@media (min-width: 1024px) { .aree-didascalia { margin-top: var(--s-48); } }
/* Fasce sotto 375 px: un po' meno di margine interno, così "da 300.000 €" resta su una riga. */
@media (max-width: 374px) { .fascia span { padding-inline: 10px; gap: 6px; } }
@media (max-width: 339px) { .fascia span { font-size: var(--t-12); padding-inline: var(--s-8); } }
/* Secondo giro dopo l'audit benchmark (22/10, decisioni di Giacomo del 21/10 sera). */
/* 1) Ruota: si disegna una volta sola e senza rimbalzo, sulla curva comune della pagina (stesse durate di prima). */
@media (prefers-reduced-motion: no-preference) {
  .aree-pronta.aree-in .aree-disco { transition: opacity 469ms var(--ease-ui) var(--d), transform 563ms var(--ease-ui) var(--d); }
  .aree-pronta.aree-in .aree-freccia { transition: opacity 391ms var(--ease-ui) 1953ms, transform 563ms var(--ease-ui) 1953ms; }
  .aree-pronta .aree-disco, .aree-pronta .aree-freccia { transform: scale(.8); }
}
/* 3) Pagina più corta da telefono: solo spazi, misure di ruota e immagini, FAQ e liste più compatte. Testi invariati. */
@media (max-width: 767px) {
  .section { padding-block: var(--s-48); }
  .hero { padding-bottom: var(--s-32); }
  .section-head, .about .section-head { margin-bottom: var(--s-24); }
  .section-index, .eyebrow { margin-bottom: var(--s-16); }
  .authority { padding-block: var(--s-24); }
  .tour-strip { padding-block: var(--s-24); }
  .tour-strip .trust-grid { margin-top: 0; gap: var(--s-16); }
  .tour-strip .trust-grid > div { gap: var(--s-4); }
  /* Problema: ruota da 200 px, numeri degli errori accanto al titoletto, testo a tutta larghezza. */
  .problema-blocco { gap: var(--s-24); margin-bottom: var(--s-32); }
  .problema-blocco .aree { width: min(100%, 200px); }
  .aree-centro { font-size: 18px; font-size: 9cqw; }
  .aree-didascalia { margin-top: var(--s-12); }
  #problema .problem-grid { gap: var(--s-16); margin-bottom: var(--s-24); }
  .mistakes { gap: var(--s-12); }
  .mistakes li { display: block; position: relative; padding-top: var(--s-12); }
  .mistakes .list-number { position: absolute; left: 0; top: var(--s-12); }
  .mistakes li strong { padding-left: 40px; }
  /* Risultati: schede più basse, persona e stelle sulla stessa riga. */
  .testimonial-grid { gap: var(--s-16); }
  .testimonial { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--s-12); padding: var(--s-16); }
  .testimonial-foot { display: contents; }
  .testimonial .stars { grid-column: 1 / -1; grid-row: 1; }
  .testimonial-quote { grid-column: 1 / -1; grid-row: 2; padding-bottom: var(--s-12); border-bottom: 1px solid var(--nebbia); }
  .reviewer { grid-column: 1; grid-row: 3; min-width: 0; }
  .testimonial-logo { grid-column: 2; grid-row: 3; align-self: center; height: 32px; max-width: 96px; object-position: right center; }
  .reviewer-avatar { width: 44px; height: 44px; }
  .reviewer-initials { font-size: var(--t-14); }
  /* Cosa ti porti a casa: spunta accanto al titoletto, testo a tutta larghezza, foto 2:1. */
  .roadmap-grid { gap: var(--s-24); }
  .benefits { margin-top: var(--s-24); gap: 0; }
  .benefits li { display: block; position: relative; padding-block: var(--s-12); }
  .benefit-check { position: absolute; left: 0; top: var(--s-12); }
  .benefits li strong { padding-left: 36px; }
  .cosa-foto { aspect-ratio: 5 / 2; object-fit: cover; object-position: 50% 12%; }
  .roadmap-side picture + .soglia-cr { margin-top: var(--s-16); }
  .soglia-cr { margin-bottom: var(--s-16); }
  /* Relatori e Chi siamo: foto più piccole, le due foto del Gruppo affiancate. */
  .speaker-simple img { width: 80px; height: 80px; margin-bottom: 0; }
  .about-grid { gap: var(--s-32); }
  .quote-block { margin-block: var(--s-24); }
  .about .btn { margin-top: var(--s-16); }
  .about-photos { grid-template-columns: 1fr 1fr; gap: var(--s-12); }
  .about-photos .about-photo-1, .about-photos .about-photo-2 { aspect-ratio: 4 / 3; object-fit: cover; }
  .about-photos .about-photo-1 { object-position: 25% 95%; }
  /* FAQ più compatte (bersaglio sempre da 56 px). */
  .faq summary { padding-block: var(--s-12); }
  /* Iscrizione: meno aria prima della card. */
  .registration-grid { gap: var(--s-16); }
  .posti-riga { margin-bottom: var(--s-16); }
  .registration-copy .per-chi { font-size: var(--t-16); line-height: var(--il-corpo); }
}
/* Terzo giro (ADA, 22/10, 24-terzo-giro/00-incarico.md, sezione Design). */
/* 1) Scala tipografica ridotta di circa il 12%: H1 64 → 56 e 40 → 36, H2 48 → 42 e 32 → 28, lead 24 → 21 e 20 → 18, H3 20 → 18. */
:root { --h1-size: clamp(36px, 3.9vw, 56px); --h2-size: clamp(28px, 2.92vw, 42px); --lead-size: clamp(18px, 1.46vw, 21px); --h1-compatto: 34px; }
h3, .speaker-simple h3 { font-size: 18px; }
.quote-block { font-size: 18px; }
@media (max-width: 767px) { .hero h1 { font-size: 36px; } .speaker-simple h3 { font-size: var(--t-16); } }
@media (max-width: 374px) { .hero h1 { font-size: var(--h1-compatto); } }
@media (max-width: 339px) { .hero h1 { font-size: 30px; } }

/* 2) Fiducia sopra la piega da mobile: Gruppo Allcore e Trustpilot dentro la hero; la fascia sotto la hero resta solo da 768 px. */
.hero-fiducia { display: none; }
@media (max-width: 767px) {
  .tour-strip { display: none; }
  .hero-fiducia { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-4) var(--s-12); margin-top: var(--s-16); font-size: var(--t-14); font-weight: 600; line-height: 1.4; color: var(--bianco); }
  .hero-fiducia-gruppo { font-family: var(--font-titoli); font-weight: 700; }
  .hero-fiducia-sep { width: 1px; height: 14px; background: var(--linea-su-scuro); }
  .hero-fiducia-stella { color: var(--lime); }
  .hero-fiducia a { color: inherit; text-decoration-thickness: 1px; display: inline-block; padding-block: 12px; margin-block: -12px; }
}

/* 3) Problema: titolo con il dato, 3,5% grande con la sola fonte sotto. */
#problema .dato-numero { margin-bottom: var(--s-12); }
@media (max-width: 767px) { #problema .h2-dato { font-size: var(--t-24); line-height: var(--il-titolo-s); } }

/* 4) Risultati: da mobile carosello orizzontale nativo (scroll-snap), scheda successiva visibile, pallini. */
.carosello-pallini { display: none; }
@media (max-width: 767px) {
  .testimonial-grid[data-carosello] { display: flex; gap: var(--s-12); overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none;
    margin-inline: calc(var(--gutter) * -1); padding: var(--s-4) var(--gutter); scroll-padding-inline: var(--gutter); }
  .testimonial-grid[data-carosello]::-webkit-scrollbar { display: none; }
  .testimonial-grid[data-carosello]:focus-visible { outline-offset: -2px; }
  .testimonial-grid[data-carosello] > .testimonial { flex: 0 0 84%; scroll-snap-align: start; }
  .testimonial-quote strong { font-weight: 700; }
  .carosello-pallini { display: flex; justify-content: center; margin-top: var(--s-4); }
  .pallino { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; background: var(--vuoto); }
  .pallino::before { content: ''; width: 8px; height: 8px; border-radius: var(--r-pillola); background: var(--verde); opacity: .25; transition: opacity var(--motion-quick) var(--ease-ui), transform var(--motion-quick) var(--ease-ui); }
  .pallino[aria-current="true"]::before { opacity: 1; transform: scale(1.25); }
}

/* 5) Fisarmoniche con "+" e "−" (come Finera Energy): programma dell'ora e FAQ. */
.acc > summary { display: flex; align-items: center; justify-content: space-between; gap: var(--s-16); min-height: var(--cta-h-web); list-style: none; cursor: pointer; }
.acc > summary::-webkit-details-marker { display: none; }
.acc-icona { position: relative; flex: 0 0 32px; width: 32px; height: 32px; border: 1px solid var(--nebbia); border-radius: var(--r-pillola); }
.acc-icona::before, .acc-icona::after { content: ''; position: absolute; top: 50%; left: 50%; width: 12px; height: 2px; background: currentColor; transform: translate(-50%, -50%); transition: transform var(--motion-fast) var(--ease-ui), opacity var(--motion-quick) var(--ease-ui); }
.acc-icona::after { transform: translate(-50%, -50%) rotate(90deg); }
.acc[open] > summary .acc-icona::after { opacity: 0; transform: translate(-50%, -50%) rotate(0deg); }
.acc[open] > summary + * { animation: acc-apri var(--motion-fast) var(--ease-ui); }
@keyframes acc-apri { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
/* Programma dell'ora, su verde. */
.programma { margin-top: var(--s-16); border-block: 1px solid var(--linea-su-scuro); }
.programma > summary { font-weight: 700; color: var(--bianco); padding-block: var(--s-8); }
.programma .acc-icona { border-color: var(--linea-su-scuro); color: var(--lime); }
.programma-lista { list-style: none; counter-reset: parte; padding: 0 0 var(--s-16); display: grid; gap: var(--s-8); }
.programma-lista li { counter-increment: parte; display: grid; grid-template-columns: var(--s-32) 1fr; gap: var(--s-8); }
.programma-lista li::before { content: counter(parte, decimal-leading-zero); font: 700 var(--t-14)/1.55 var(--font-titoli); color: var(--lime); }
/* FAQ: schede bianche arrotondate su fondo chiaro, la prima aperta. */
.faq { background: var(--carta); }
.faq-list { border-top: 0; display: grid; gap: var(--s-12); }
.faq details { border: 1px solid var(--nebbia); border-radius: var(--r-m); background: var(--bianco); }
.faq summary, .faq .acc > summary { padding: var(--s-12) var(--s-16) var(--s-12) var(--s-24); font-weight: 700; color: var(--verde); }
.faq .acc-icona { color: var(--verde); }
.faq-answer { padding: 0 var(--s-24) var(--s-24); }
@media (min-width: 1024px) { .faq .section-head { position: sticky; top: calc(var(--header-height) + var(--s-32)); } .faq-grid { align-items: start; } }
@media (max-width: 767px) { .faq summary, .faq .acc > summary { padding: var(--s-8) var(--s-12) var(--s-8) var(--s-16); } .faq-answer { padding: 0 var(--s-16) var(--s-16); } }

/* 6) Cosa ti porti a casa: tre voci brevi. */
@media (min-width: 768px) { .benefits li { padding-block: var(--s-16); } }

/* 7) Chi siamo: due prove del Gruppo e cerchio su "in modo sistematico". */
.prove-gruppo { display: grid; gap: var(--s-16); margin: var(--s-24) 0 0; }
.prove-gruppo > div { display: grid; gap: var(--s-4); padding-top: var(--s-16); border-top: 1px solid var(--nebbia); }
.prove-gruppo dt { font: 700 var(--t-32)/1.1 var(--font-titoli); letter-spacing: var(--tr-titolo); color: var(--verde); }
.prove-gruppo dd { margin: 0; font-size: var(--t-14); line-height: 1.5; }
@media (min-width: 768px) { .prove-gruppo { grid-template-columns: 1fr 1fr; gap: var(--s-32); } .prove-gruppo dt { font-size: var(--t-40); } }

/* 8) Iscrizione su fondo verde, scheda del modulo bianca. */
.registration.dark { background-color: var(--fondo-scuro); background-image: url('/webinar-agevolazioni-2027/assets/pattern-verde.svg'); background-repeat: no-repeat; background-size: auto 120%; background-position: left bottom; }
.registration.dark mark.ev-scuro { color: var(--lime); }
.registration.dark .form-card { --focus: var(--verde); --button-bg: var(--cta-su-chiaro-fondo); --button-fg: var(--cta-su-chiaro-testo); --button-circle: var(--lime); --button-arrow: var(--verde); color: var(--testo-su-chiaro); border-color: var(--vuoto); }
.registration.dark .form-card ::selection { background: var(--verde); color: var(--bianco); }
.campo-facoltativo .check-label { margin-bottom: 0; }
.etichetta-facoltativa { display: inline-block; margin-left: var(--s-4); padding: 0 var(--s-8); border-radius: var(--r-pillola); background: var(--tinta); color: var(--verde); font-size: var(--t-12); font-weight: 700; line-height: 20px; white-space: nowrap; }
@media (max-width: 767px) { .registration-grid { gap: var(--s-24); } }
@media (min-width: 1024px) { .registration-grid { align-items: center; } .registration-copy { padding-top: 0; } }

/* 9) Ruota: parte al 60% visibile, finisce entro 1,2 s; se esce dallo schermo senza essere partita si mostra completa senza animazione. */
@media (prefers-reduced-motion: no-preference) {
  .aree-pronta.aree-in .aree-anello { transition: stroke-dashoffset 900ms cubic-bezier(.45, 0, .25, 1); }
  .aree-pronta.aree-in .aree-disco { transition: opacity 300ms var(--ease-ui) calc(var(--d) * .45), transform 340ms var(--ease-ui) calc(var(--d) * .45); }
  .aree-pronta.aree-in .aree-freccia { transition: opacity 250ms var(--ease-ui) 900ms, transform 280ms var(--ease-ui) 900ms; }
  .aree-pronta.aree-in .aree-et { transition: opacity 300ms var(--ease-ui) calc(var(--d) * .45); }
  .aree-subito.aree-in .aree-anello, .aree-subito.aree-in .aree-disco, .aree-subito.aree-in .aree-freccia, .aree-subito.aree-in .aree-et { transition: none; }
}

/* 10) Ritocchi dopo il primo render. */
/* Cerchio su "in modo sistematico" (QC di JARVIS e Giacomo, 22/10): più largo e più alto, attorno alle parole senza toccarle
   (puntino della "i" compreso) a 1440, 390 e 360; margini ai lati per le parole accanto e la virgola, sopra e sotto per le righe vicine. */
.cerchio .cerchio-svg { left: -15%; width: 130%; top: -28%; height: 156%; }
.cerchio { margin: .4em 1.1em .4em .85em; }
/* Casella facoltativa subito sotto quella della privacy. */
.form-card .campo-facoltativo { margin-top: calc(var(--s-16) * -1); }
/* Sotto 375 px (360x740 con il banner dei cookie da 544): pulsante e barra dei posti interi sopra il banner. */
@media (max-width: 374px) {
  .hero { padding-top: var(--s-16); }
  .hero .eyebrow { margin-bottom: var(--s-12); }
  .hero .hero-meta-badge + h1 { margin-top: var(--s-16); }
  .hero-subtitle, .hero-action { margin-top: var(--s-16); }
}

/* 11) Correzioni di Giacomo dopo i render (22/10). */
/* a) Problema da computer: due colonne per tutto il blocco; a sinistra titolo, 3,5% con la fonte, riga dei tre errori, errori e pulsante;
      a destra la ruota con la didascalia, centrata in verticale. Mobile invariato. */
@media (min-width: 1024px) {
  #problema .container { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); column-gap: var(--s-64); align-items: start; }
  #problema .problema-blocco, #problema .problem-grid { display: contents; }
  #problema .section-head { grid-column: 1; grid-row: 1; }
  #problema .problema-blocco .dato-grid { grid-column: 1; grid-row: 2; margin-bottom: var(--s-32); }
  #problema .problema-blocco .aree { grid-column: 2; grid-row: 1 / span 5; align-self: center; justify-self: center; padding-block: var(--s-32); }
  #problema .problem-context { grid-column: 1; grid-row: 3; margin-bottom: var(--s-16); }
  #problema .mistakes { grid-column: 1; grid-row: 4; margin-bottom: var(--s-32); }
  #problema .container > .btn { grid-column: 1; grid-row: 5; justify-self: start; }
  #problema .dato-numero { font-size: var(--t-80); }
}
/* b) Chi siamo: numeri da dato secondario affiancati, citazione in corpo grande; da computer testo a sinistra e foto a destra,
      centrate sul testo; da mobile e tablet le due foto subito dopo il titolo. */
.prove-gruppo { grid-template-columns: 1fr 1fr; gap: var(--s-16) var(--s-24); }
.prove-gruppo dt { font-size: var(--t-24); }
@media (min-width: 768px) { .prove-gruppo { gap: var(--s-32); } .prove-gruppo dt { font-size: var(--t-32); } }
.quote-block { font-size: 18px; font-weight: 400; line-height: 1.55; }
@media (min-width: 1024px) { .about-grid { align-items: center; } .about-photos { padding-top: 0; } }
@media (max-width: 1023px) {
  .about-grid { gap: 0; }
  .about-grid > div:first-child { display: contents; }
  .about-grid > div:first-child > * { order: 2; }
  .about-grid > div:first-child > .section-head { order: 0; }
  .about-photos { order: 1; margin-bottom: var(--s-24); }
  .about .btn { justify-self: start; }
}
/* c) "È per te se": sezione a sé su fondo chiaro, subito prima del form. */
.per-te-sezione { background: var(--carta); }
.per-te-grid { display: grid; gap: var(--s-24); }
.per-te-lista { list-style: none; padding: 0; display: grid; gap: var(--s-12); }
.per-te-lista li, .per-te-esclusi { display: grid; grid-template-columns: 24px 1fr; gap: var(--s-12); align-items: start; }
.per-te-lista .icon { width: 24px; height: 24px; color: var(--verde); }
.per-te-lista strong { color: var(--verde); }
.per-te-esclusi { margin-top: var(--s-24); padding-top: var(--s-16); border-top: 1px solid var(--nebbia); font-size: var(--t-14); line-height: 1.5; }
.per-te-esclusi .icon { width: 20px; height: 20px; margin: 1px 2px 0; color: var(--grafite); }
@media (min-width: 1024px) { .per-te-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--s-64); align-items: center; } .per-te-lista { gap: var(--s-16); } }
@media (max-width: 767px) { .per-te-sezione.section { padding-block: var(--s-32); } .per-te-esclusi { margin-top: var(--s-16); padding-top: var(--s-12); } }
/* d) Hero da mobile su 3 righe (Giacomo, 22/10): "Quali contributi può" / "avere il tuo" / "investimento nel 2027?" con l'evidenza
      intera sulla terza riga; il corpo segue la larghezza (30 px a 390, 28 a 360, 25 al minimo a 320, mai oltre 36). */
@media (max-width: 767px) {
  .hero h1 { font-size: clamp(25px, calc((100vw - 2 * var(--gutter)) * .085), 36px); }
  .hero h1 .hero-title-accent mark { white-space: nowrap; }
}
/* e) Problema: 3,5% sopra il titolo, fonte subito sotto il titolo. */
#problema .dato-sopra { margin: 0 0 var(--s-8); }
#problema .dato-sopra .dato-numero { margin-bottom: 0; }
#problema .section-head { margin-bottom: var(--s-12); }
#problema .problema-blocco .dato-grid { margin-bottom: var(--s-24); }
@media (min-width: 1024px) { #problema .problema-blocco .dato-grid { margin-bottom: var(--s-32); } }
.prove-gruppo > div { align-content: start; }

/* Revisione finale di Giacomo (ADA, 22/10, 25-revisione-giacomo). */
/* 1) Scala ridotta ancora di circa il 10%, tutta insieme: H1 56 → 50, H2 42 → 38 (28 → 26 da mobile), sottotitoli e lead 21 → 19
      (18 → 17), H3 18 → 17, citazione 18 → 17, 3,5% 80 → 72 (64 → 56 da tablet, 48 → 44 da mobile), dati del Gruppo 32 → 28
      (24 → 22), fascia "Gruppo Allcore" 24 → 22, numeri degli errori 20 → 18; H1 della hero da mobile 30 → 27 a 390 e 28 → 25 a 360. */
:root { --h1-size: clamp(32px, 3.5vw, 50px); --h2-size: clamp(26px, 2.64vw, 38px); --lead-size: clamp(17px, 1.32vw, 19px); --h1-compatto: 30px; }
h3, .speaker-simple h3 { font-size: 17px; }
.quote-block { font-size: 17px; }
.trust-grid strong { font-size: 22px; }
#problema .dato-numero { font-size: 44px; }
#problema .list-number { font-size: 18px; }
.prove-gruppo dt { font-size: 22px; }
@media (min-width: 768px) { #problema .dato-numero { font-size: 56px; } .prove-gruppo dt { font-size: 28px; } }
@media (min-width: 1024px) { #problema .dato-numero { font-size: 72px; } }
@media (max-width: 767px) {
  .speaker-simple h3 { font-size: var(--t-16); }
  #problema .h2-dato { font-size: 22px; }
  .hero h1 { font-size: clamp(24px, calc((100vw - 2 * var(--gutter)) * .077), 32px); }
}
/* 2) Parlano di noi: loghi più grandi da computer (ritaglio senza margini, larghezza fino a 1076 px a 1440: loghi alti circa 1,5 volte). */
@media (min-width: 768px) { .authority img.authority-full { max-width: min(78%, 1076px); } }
/* 3) Problema, blocco dei tre motivi (PAOLO): titoletto al posto della riga d'apertura, stessa misura; elenco 01-03 di oggi;
      frase finale in corpo normale sotto i motivi, separata da una riga come le voci, sopra il pulsante. */
#problema .problem-chiusura { max-width: 75ch; padding-top: var(--s-24); border-top: 1px solid var(--nebbia); }
@media (max-width: 767px) { #problema .problem-chiusura { padding-top: var(--s-12); } }
@media (min-width: 1024px) {
  #problema .mistakes { margin-bottom: var(--s-24); }
  #problema .problem-chiusura { grid-column: 1; grid-row: 5; margin-bottom: var(--s-32); }
  #problema .container > .btn { grid-row: 6; }
  #problema .problema-blocco .aree { grid-row: 1 / span 6; }
}
/* 4) Cerchio su "in modo sistematico" (Giacomo, 22/10): virgola attaccata al tratto come dopo una parola normale, senza che il tratto
      la copra. Il margine destro scende da 1,1em a 0,93em, cioè di quanto restava tra il bordo esterno del tratto e la virgola (2,7 px a 17 px). */
.cerchio { margin-right: .93em; }

/* Quarto giro (ADA, 22/10, 27-quarto-giro). */
/* 1) Problema sotto 1024 px (Giacomo, 22/10): ruota delle aree dopo i tre motivi e la frase finale, prima del pulsante.
      Da computer invariato (due colonne, blocco "Problema da computer" sopra). */
@media (max-width: 1023px) {
  #problema .container { display: flex; flex-direction: column; }
  #problema .problema-blocco { display: contents; }
  #problema .section-head { order: 1; }
  #problema .problema-blocco .dato-grid { order: 2; margin-bottom: var(--s-32); }
  #problema .problem-grid { order: 3; margin-bottom: var(--s-32); }
  #problema .problema-blocco .aree { order: 4; align-self: center; margin-bottom: var(--s-32); }
  #problema .container > .btn { order: 5; align-self: flex-start; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  #problema .problem-grid, #problema .problema-blocco .aree { margin-bottom: var(--s-48); }
}
/* 2) Cerchio di "in modo sistematico" da mobile (ETTORE, parametro 11): niente margini sopra e sotto, così l'interlinea della
      citazione resta uguale a ogni riga; i margini ai lati restano quelli di Giacomo (virgola attaccata al tratto). Per far stare il
      tratto tra le righe senza toccare le parole, interlinea della citazione un po' più ampia da mobile (1,75) e tratto più basso. */
@media (max-width: 767px) { .cerchio { margin-block: 0; } .quote-block { line-height: 1.75; } .cerchio .cerchio-svg { top: -18%; height: 136%; } }
