    /* VGT Portfolio Popup Styling */

    .vgt-popup-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.85);
        z-index: 100000;
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0s linear 0.3s;
        /* --- Änderung: Padding für 20px Rand --- */
        padding: 20px;
        box-sizing: border-box;
    }

    .vgt-popup-overlay.vgt-popup--visible {
        opacity: 1;
        visibility: visible;
        transition: opacity 0.3s ease, visibility 0s linear 0s;
    }

    .vgt-popup-container {
        background-color: #fff;
        border-radius: 5px; /* Beibehalten oder auf 0 setzen für echten Fullscreen-Look */
        position: relative;
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
        box-sizing: border-box;
        /* --- Änderung: Immer fast Vollbild --- */
        width: 100%; /* Volle Breite innerhalb des Overlay-Paddings */
        height: 100%; /* Volle Höhe innerhalb des Overlay-Paddings */
        max-width: none; /* Keine Beschränkung mehr */
        max-height: none; /* Keine Beschränkung mehr */
        /* --- Änderung: Flexbox für inneres Layout & Scrolling --- */
        display: flex;
        flex-direction: column;
        /* --- Änderung: Internes Padding anpassen --- */
        padding: 30px; /* Gleichmäßiges Padding innen */
        /* --- Änderung: Overflow hier entfernen --- */
        /* overflow-y: auto; */ /* Wird jetzt vom Content übernommen */
        /* Transition nur für Transform beibehalten */
        transform: scale(0.95) translateY(10px);
        transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .vgt-popup-overlay.vgt-popup--visible .vgt-popup-container {
        transform: scale(1) translateY(0);
    }

    .vgt-popup-close {
        position: absolute;
        /* Positionierung im Padding-Bereich des Containers */
        top: 10px;
        right: 10px;
        font-size: 30px;
        font-weight: 300;
        line-height: 1;
        color: #aaa;
        background: none;
        border: none;
        cursor: pointer;
        padding: 5px;
        transition: color 0.2s ease, transform 0.2s ease;
        z-index: 10;
    }

    .vgt-popup-close:hover {
        color: #333;
        transform: rotate(90deg);
    }

    .vgt-popup-content {
        /* --- Änderung: Inneres Scrolling ermöglichen --- */
        flex-grow: 1; /* Nimmt verfügbaren Platz ein */
        overflow-y: auto; /* Scrollbar machen, wenn Inhalt überläuft */
        min-height: 0; /* Wichtig für Flexbox-Scrolling */
        padding-right: 15px; /* Platz für Scrollbar lassen, falls sie erscheint */
        margin-right: -15px; /* Negativer Margin, um Padding auszugleichen */
    }

    .vgt-popup-content h2 {
        margin-top: 0;
        margin-bottom: 20px; /* Etwas weniger Abstand */
        font-size: 1.8em; /* Angepasste Größe */
        font-weight: 600;
        color: var(--color-text-primary, #222);
        line-height: 1.3;
        /* Wichtig für Flexbox-Layout mit Scrolling */
        flex-shrink: 0;
    }

    .vgt-popup-content img.vgt-popup-featured-image {
        max-width: 300px;
        max-height: 300px;
        width: auto;
        height: auto;
        margin-bottom: 20px; /* Etwas weniger Abstand */
        border-radius: 4px;
        display: block;
        /* Wichtig für Flexbox-Layout mit Scrolling */
        flex-shrink: 0;
    }

    .vgt-popup-content .vgt-popup-text-content {
        line-height: 1.7; /* Angepasste Zeilenhöhe */
        color: var(--color-text-secondary, #555);
    }
     .vgt-popup-content .vgt-popup-text-content p {
        margin-top: 0;
        margin-bottom: 1em;
    }
     .vgt-popup-content .vgt-popup-text-content > *:last-child {
        margin-bottom: 0;
     }

    .vgt-popup-loader {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 150px;
        font-size: 1.1em;
        color: #aaa;
    }
    .vgt-popup-loader::after {
        content: '';
        display: block;
        width: 30px;
        height: 30px;
        margin-left: 15px;
        border: 3px solid #f3f3f3;
        border-top: 3px solid var(--color-accent-gold, #C6A969);
        border-radius: 50%;
        animation: vgt-popup-spin 1s linear infinite;
    }

    @keyframes vgt-popup-spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }

    /* --- Responsive Media Query entfernt --- */
    /* @media (max-width: 767px) { ... } */

    