
    /* ══ TEMA GUEST POST LEGALE ══ */
    :root {
        --primary:       #1e40af;
        --primary-dark:  #1e3a8a;
        --primary-light: #dbeafe;
        --accent:        #0891b2;
        --accent-dark:   #0e7490;
        --accent-light:  #cffafe;
        --success:       #059669;
        --success-light: #d1fae5;
        --warning:       #d97706;
        --warning-light: #fef3c7;
        --danger:        #dc2626;
        --danger-light:  #fee2e2;
        --text-dark:     #111827;
        --text-medium:   #4b5563;
        --text-light:    #6b7280;
        --border:        #e5e7eb;
        --bg-light:      #f9fafb;
    }

    * { margin: 0; padding: 0; box-sizing: border-box; }
    
    body {
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        line-height: 1.7;
        color: var(--text-dark);
        background: #fff;
    }

    /* HEADER */
    .article-header {
        background: linear-gradient(135deg, #1e3a8a 0%, #1e40af 50%, #0891b2 100%);
        color: #fff;
        padding: 60px 20px;
        position: relative;
        overflow: hidden;
    }
    .article-header::before {
        content: '';
        position: absolute;
        top: -100px;
        right: -100px;
        width: 400px;
        height: 400px;
        background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
        border-radius: 50%;
    }
    .header-content {
        max-width: 900px;
        margin: 0 auto;
        position: relative;
        z-index: 2;
    }
    .article-category {
        display: inline-block;
        background: rgba(255,255,255,0.2);
        padding: 6px 16px;
        border-radius: 20px;
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        margin-bottom: 20px;
    }
    .article-title {
        font-size: 40px;
        font-weight: 800;
        line-height: 1.2;
        margin-bottom: 20px;
    }
    .article-subtitle {
        font-size: 18px;
        line-height: 1.6;
        opacity: 0.95;
        font-weight: 400;
    }
    .article-meta {
        display: flex;
        gap: 20px;
        margin-top: 24px;
        font-size: 14px;
        opacity: 0.9;
    }
    .meta-item {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    /* CONTAINER */
    .article-container {
        max-width: 900px;
        margin: 0 auto;
        padding: 50px 20px;
    }

    /* TIPOGRAFIA */
    h2 {
        font-size: 30px;
        font-weight: 800;
        color: var(--primary-dark);
        margin: 50px 0 24px;
        line-height: 1.3;
        border-left: 5px solid var(--primary);
        padding-left: 20px;
    }
    h3 {
        font-size: 23px;
        font-weight: 700;
        color: var(--primary);
        margin: 36px 0 18px;
    }
    h4 {
        font-size: 18px;
        font-weight: 700;
        color: var(--text-dark);
        margin: 24px 0 12px;
    }
    p {
        font-size: 17px;
        line-height: 1.8;
        color: var(--text-dark);
        margin-bottom: 20px;
    }
    strong {
        font-weight: 700;
        color: var(--primary-dark);
    }
    em {
        font-style: italic;
        color: var(--text-medium);
    }

    /* BOXES */
    .info-box {
        background: var(--primary-light);
        border-left: 4px solid var(--primary);
        border-radius: 8px;
        padding: 24px 28px;
        margin: 30px 0;
    }
    .info-box h4 {
        color: var(--primary-dark);
        margin: 0 0 12px;
        font-size: 16px;
    }
    .info-box p {
        font-size: 15px;
        line-height: 1.7;
        color: var(--text-dark);
        margin: 0;
    }
    .info-box ul {
        margin: 12px 0 0;
        padding-left: 24px;
    }
    .info-box ul li {
        font-size: 15px;
        line-height: 1.7;
        color: var(--text-dark);
        margin-bottom: 8px;
    }

    .warning-box {
        background: var(--warning-light);
        border-left: 4px solid var(--warning);
        border-radius: 8px;
        padding: 24px 28px;
        margin: 30px 0;
    }
    .warning-box h4 {
        color: #92400e;
        margin: 0 0 12px;
        font-size: 16px;
    }
    .warning-box p, .warning-box ul li {
        font-size: 15px;
        line-height: 1.7;
        color: #78350f;
    }
    .warning-box ul {
        margin: 12px 0 0;
        padding-left: 24px;
    }

    .success-box {
        background: var(--success-light);
        border-left: 4px solid var(--success);
        border-radius: 8px;
        padding: 24px 28px;
        margin: 30px 0;
    }
    .success-box h4 {
        color: #065f46;
        margin: 0 0 12px;
        font-size: 16px;
    }
    .success-box p, .success-box ul li {
        font-size: 15px;
        line-height: 1.7;
        color: #064e3b;
    }

    /* HIGHLIGHT BOX */
    .highlight-box {
        background: linear-gradient(135deg, #1e3a8a, #1e40af, #0891b2);
        color: #fff;
        border-radius: 12px;
        padding: 32px;
        margin: 40px 0;
        text-align: center;
    }
    .highlight-box h3 {
        color: #fff;
        font-size: 26px;
        margin: 0 0 16px;
    }
    .highlight-box p {
        color: rgba(255,255,255,0.95);
        font-size: 17px;
        margin: 0;
    }

    /* CASE STUDY GRID */
    .case-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 20px;
        margin: 30px 0;
    }
    .case-card {
        background: var(--bg-light);
        border: 2px solid var(--border);
        border-radius: 10px;
        padding: 24px;
        transition: all 0.3s ease;
    }
    .case-card:hover {
        border-color: var(--primary);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(30, 64, 175, 0.1);
    }
    .case-card .case-ref {
        display: inline-block;
        background: var(--primary-light);
        color: var(--primary-dark);
        font-size: 12px;
        font-weight: 700;
        padding: 4px 10px;
        border-radius: 6px;
        margin-bottom: 12px;
    }
    .case-card h4 {
        color: var(--primary-dark);
        font-size: 16px;
        margin: 0 0 10px;
    }
    .case-card p {
        font-size: 14px;
        line-height: 1.6;
        color: var(--text-medium);
        margin: 0;
    }

    /* LISTA NUMERATA CUSTOM */
    .custom-list {
        counter-reset: item;
        list-style: none;
        padding: 0;
        margin: 24px 0;
    }
    .custom-list li {
        counter-increment: item;
        margin-bottom: 20px;
        padding-left: 50px;
        position: relative;
        font-size: 16px;
        line-height: 1.7;
    }
    .custom-list li::before {
        content: counter(item);
        position: absolute;
        left: 0;
        top: 0;
        background: var(--primary);
        color: #fff;
        width: 32px;
        height: 32px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 800;
        font-size: 14px;
    }

    /* QUOTE */
    .quote-box {
        border-left: 5px solid var(--accent);
        background: var(--accent-light);
        padding: 24px 28px;
        margin: 30px 0;
        font-style: italic;
        border-radius: 0 8px 8px 0;
    }
    .quote-box p {
        font-size: 18px;
        color: var(--text-dark);
        margin: 0;
    }

    /* CTA */
    .cta-box {
        background: linear-gradient(135deg, #1e40af, #0891b2);
        color: #fff;
        border-radius: 12px;
        padding: 40px;
        margin: 50px 0;
        text-align: center;
    }
    .cta-box h3 {
        color: #fff;
        font-size: 28px;
        margin: 0 0 16px;
    }
    .cta-box p {
        color: rgba(255,255,255,0.95);
        font-size: 17px;
        margin-bottom: 24px;
    }
    .cta-button {
        display: inline-block;
        background: #fff;
        color: var(--primary);
        padding: 14px 32px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 700;
        text-decoration: none;
        transition: all 0.3s ease;
    }
    .cta-button:hover {
        background: #fbbf24;
        color: #1e3a8a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    }

    /* REFERENCES */
    .references {
        background: var(--bg-light);
        border: 1px solid var(--border);
        border-radius: 10px;
        padding: 24px 28px;
        margin: 40px 0;
    }
    .references h4 {
        color: var(--primary-dark);
        margin: 0 0 12px;
        font-size: 15px;
    }
    .references p {
        font-size: 13px;
        line-height: 1.8;
        color: var(--text-medium);
        margin: 0;
    }

    /* FOOTER */
    .article-footer {
        border-top: 2px solid var(--border);
        padding-top: 30px;
        margin-top: 50px;
        color: var(--text-light);
        font-size: 14px;
        text-align: center;
    }

    /* LINK INLINE */
    .article-container a {
        color: var(--primary);
        font-weight: 700;
        text-decoration: underline;
    }
    .article-container a:hover {
        color: var(--accent-dark);
    }

    /* RESPONSIVE */
    @media (max-width: 768px) {
        .article-title {
            font-size: 30px;
        }
        .article-subtitle {
            font-size: 16px;
        }
        h2 {
            font-size: 25px;
        }
        h3 {
            font-size: 19px;
        }
        p {
            font-size: 16px;
        }
        .case-grid {
            grid-template-columns: 1fr;
        }
    }
    