        body { padding-top: 68px; }
        .page-hero {
            background: linear-gradient(135deg, var(--color-chalk) 0%, #2c3a47 100%);
            padding: 4rem 0 5rem;
            text-align: center;
            color: #fff;
            position: relative;
            overflow: hidden;
        }
        .page-hero::before {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(ellipse 60% 80% at 70% 40%, rgba(224,92,26,.18) 0%, transparent 60%);
        }
        .page-hero .container { position: relative; z-index: 1; }
        .page-hero .section-label { background: rgba(255,255,255,.12); color: var(--color-accent); }
        .page-hero h1 { font-family: var(--font-display); font-size: clamp(2rem,4vw,2.8rem); color: #fff; margin-bottom: 1rem; }
        .page-hero p  { color: rgba(255,255,255,.75); font-size: 1.1rem; max-width: 560px; margin: 0 auto; }
        .compare-section { background: var(--color-warm-bg); padding: 5rem 0; }
        .compare-section h2 { text-align: center; margin-bottom: 3rem; }
        .compare-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
        .compare-table th, .compare-table td { padding: .85rem 1rem; text-align: center; border-bottom: 1px solid var(--color-border); }
        .compare-table th:first-child, .compare-table td:first-child { text-align: left; font-weight: 600; color: var(--color-chalk); }
        .compare-table thead th { font-weight: 700; font-size: .95rem; border-bottom: 2px solid var(--color-border); background: #fff; position: sticky; top: 68px; }
        .compare-table thead th.col-pro { color: var(--color-orange); }
        .compare-table tbody tr:hover td { background: var(--color-warm-card); }
        .compare-table .check   { color: var(--color-success); font-weight: 700; font-size: 1.1rem; }
        .compare-table .dash    { color: #ccc; font-size: 1.1rem; }
        .compare-table .partial { color: var(--color-orange); font-size: .85rem; font-weight: 600; }
        .compare-table .section-row td { background: #f1ede8; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--color-text-muted); }
        .compare-cta-row td { border-top: 2px solid var(--color-border); padding-top: 1.25rem; padding-bottom: 1.25rem; }
        .garanzia-banner { background: var(--color-chalk); color: #fff; text-align: center; padding: 3rem 2rem; }
        .garanzia-banner h2 { color: #fff; font-size: 1.5rem; margin-bottom: .75rem; }
        .garanzia-banner p  { color: rgba(255,255,255,.75); max-width: 500px; margin: 0 auto 1.5rem; }
        .pricing-faq { background: #fff; padding: 5rem 0; }
        .pricing-section-main { background: var(--color-warm-bg); }
        .pricing-note {
            text-align: center;
            font-size: .8rem;
            margin-top: .75rem;
        }
        .pricing-note--muted { color: var(--color-text-muted); }
        .pricing-note--light { color: rgba(255,255,255,.6); }
        .pricing-table-wrap { overflow-x: auto; }
        .pricing-small-muted {
            color: var(--color-text-muted);
            font-weight: 400;
        }
        .pricing-small-light {
            color: rgba(255,255,255,.5);
            font-weight: 400;
        }
        .pricing-vat-row {
            font-size: .8rem;
            color: var(--color-text-muted);
        }
        .garanzia-banner__cta {
            background: #fff;
            color: var(--color-orange);
            border-color: #fff;
            font-weight: 800;
        }
        .pricing-faq-cta { margin-top: 2rem; }
        @media (max-width: 768px) { .compare-section { overflow-x: auto; } .compare-table { min-width: 600px; } }
