 /* ===== CONTACT BACKGROUND ===== */
        .contact-bg {
            background: linear-gradient(120deg,
                    #f8f9fa 0%,
                    #ffffff 50%,
                    #fff4e6 100%);
        }

        .contact-shapes {
            position: absolute;
            inset: 0;
            pointer-events: none;
            z-index: 1;
        }

        .contact-shapes::before,
        .contact-shapes::after {
            content: "";
            position: absolute;
            border-radius: 50%;
            opacity: 0.25;
        }

        .contact-shapes::before {
            width: 420px;
            height: 420px;
            background: radial-gradient(circle, rgba(13, 110, 253, .25), transparent 70%);
            top: -120px;
            left: -120px;
        }

        .contact-shapes::after {
            width: 360px;
            height: 360px;
            background: radial-gradient(circle, rgba(255, 159, 28, .35), transparent 70%);
            bottom: -120px;
            right: -120px;
        }

        .contact-bg .shape {
            position: absolute;
            opacity: 0.15;
        }

        .contact-bg .shape.square {
            width: 60px;
            height: 60px;
            background: #0d6efd;
            border-radius: 14px;
            top: 20%;
            left: 15%;
            transform: rotate(15deg);
        }

        .contact-bg .shape.circle {
            width: 40px;
            height: 40px;
            background: #ff7a00;
            border-radius: 50%;
            top: 30%;
            right: 18%;
        }

        .contact-bg .shape.line {
            width: 120px;
            height: 4px;
            background: #dee2e6;
            border-radius: 2px;
            bottom: 25%;
            left: 30%;
        }

        /* petits points décoratifs */
        .contact-bg .shape.dot {
            width: 14px;
            height: 14px;
            background: #ced4da;
            border-radius: 50%;
            top: 18%;
            right: 45%;
            opacity: 0.4;
        }

        /* ===== ICÔNES DÉCORATIVES ===== */
        .contact-bg .shape.icon {
            font-size: 42px;
            opacity: 0.08;
            position: absolute;
        }

        /* téléphone */
        .contact-bg .shape.icon.phone {
            color: #0d6efd;
            top: 12%;
            right: 10%;
            transform: rotate(-10deg);
        }

        /* message */
        .contact-bg .shape.icon.chat {
            color: #ff7a00;
            bottom: 18%;
            left: 8%;
            transform: rotate(8deg);
        }

        /* bloc-notes */
        .contact-bg .shape.icon.note {
            color: #495057;
            top: 45%;
            right: 22%;
            transform: rotate(-6deg);
        }