    /* Smooth scrolling */
    html {
        scroll-behavior: smooth;
    }

    body {
        background-image: url(bg_page.png);
    }

    /* Custom scrollbar */
    ::-webkit-scrollbar {
        width: 10px;
    }

    ::-webkit-scrollbar-track {
        background: #f1f1f1;
    }

    ::-webkit-scrollbar-thumb {
        background: #c9a961;
        border-radius: 5px;
    }

    ::-webkit-scrollbar-thumb:hover {
        background: #b39851;
    }

    /* Accordion animations */
    .accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }

    .accordion-content.active {
        max-height: 500px;
    }

    /* Mobile menu animations */
    .mobile-menu {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }

    .mobile-menu.active {
        max-height: 500px;
    }

    /* Image fallback */
    .image-with-fallback {
        background-color: #f3f4f6;
        position: relative;
    }

    .image-with-fallback::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 40px;
        height: 40px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239CA3AF'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z'/%3E%3C/svg%3E") no-repeat center;
        opacity: 0;
    }

    .image-with-fallback.error::before {
        opacity: 1;
    }

    /* --- Pełne, niezależne style dla Contact Form 7 --- */
    .cf7-custom-form {
        width: 100%;
    }

    .cf7-custom-form .cf7-field {
        display: block;
        margin-bottom: 1.25rem;
    }

    .cf7-custom-form .cf7-label {
        display: block;
        font-size: 0.875rem;
        font-weight: 600;
        color: #1A2B4A;
        margin-bottom: 0.5rem;
    }

    .cf7-custom-form .wpcf7-form-control.wpcf7-text,
    .cf7-custom-form .wpcf7-form-control.wpcf7-select,
    .cf7-custom-form .wpcf7-form-control.wpcf7-textarea {
        width: 100%;
        padding: 0.75rem 1rem;
        border: 1px solid #D1D5DB;
        border-radius: 0.5rem;
        font-size: 1rem;
        color: #1A2B4A;
        background-color: #fff;
        outline: none;
        transition: box-shadow 0.2s, border-color 0.2s;
        box-sizing: border-box;
    }

    .cf7-custom-form .wpcf7-form-control:focus {
        border-color: #C9A961;
        box-shadow: 0 0 0 2px rgba(201, 169, 97, 0.3);
    }

    .cf7-custom-form .cf7-checkbox-wrapper {
        margin-bottom: 1.5rem;
    }

    .cf7-custom-form .cf7-checkbox-wrapper label {
        margin: 0;
        display: flex !important;
        align-items: flex-start !important;
        gap: 12px;
        cursor: pointer;
    }

    .cf7-custom-form .cf7-checkbox-wrapper input[type="checkbox"] {
        margin-top: 0.2rem;
        width: 1.25rem;
        height: 1.25rem;
        flex-shrink: 0;
        cursor: pointer;
        accent-color: #C9A961;
    }

    .cf7-custom-form .cf7-checkbox-wrapper .wpcf7-list-item-label {
        font-size: 0.875rem;
        color: #717182;
        line-height: 1.4;
    }

    .cf7-custom-form .cf7-checkbox-wrapper .wpcf7-list-item {
        margin: 0;
    }

    .cf7-custom-form .wpcf7-submit.cf7-submit-btn {
        width: 100%;
        padding: 0.875rem 1.5rem;
        color: #ffffff;
        font-weight: 600;
        background-color: #C9A961;
        border-radius: 0.5rem;
        border: none;
        cursor: pointer;
        transition: background-color 0.2s ease-in-out;
        font-size: 1rem;
    }

    .cf7-custom-form .wpcf7-submit.cf7-submit-btn:hover {
        background-color: #B39851;
    }