/* =================== PIX.CSS ===================
 * Styles spezifisch für die pix.html Seite
 * Version: 1.5.0 (Angepasst an neue Seitenstruktur mit bordered-section)
 * Letzte Aktualisierung: 2025-04-11
 * ================================================== */

/* --- Variablen --- */
:root {
    --bg-section-light: #f8f8f8; /* Hintergrund für innere Sektionen im Light Mode */
    --border-light: #e0e0e0;
    --icon-color: var(--bloodred);
}

/* --- Entfernt: Hauptcontainer .pix-content --- */
/* Layout wird jetzt durch page-content und bordered-section gesteuert */

/* --- Entfernt: Haupttitelbereich .main-title, .intro-text --- */
/* Ersetzt durch .page-title-section (Stile in main.css/components.css) */

/* --- Allgemeine Sektions-Styles (für INNERE Sektionen wie JPG, PNG, Galerie etc.) --- */
/* Diese Klasse wird für jede Format-Sektion und die Galerie *innerhalb* der .bordered-section verwendet */
.content-section {
    background: var(--bg-section-light); /* Hellerer Hintergrund innen */
    padding: 30px; /* Innenabstand für den Inhalt der Sektion */
    margin-bottom: 40px; /* Abstand zwischen den Format/Galerie-Sektionen */
    border-radius: 12px; /* Abgerundete Ecken für die inneren Boxen */
    border: 1px solid var(--border-light); /* Leichter Rand für innere Boxen */
    transition: background 0.3s ease, border-color 0.3s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04); /* Sehr subtiler Schatten innen */
}
/* Letzte .content-section innerhalb der .bordered-section braucht keinen unteren Abstand mehr */
.bordered-section {
  max-width: 900px; /* Oder eine andere Breite, die kleiner als 1000px ist */
  margin: var(--spacing-xl, 40px) auto; /* Hier wird die Zentrierung durch 'auto' für die Seitenränder erreicht */
  /* Weitere Styles wie padding, border, background etc. */
}
/* Entfernt: Abwechselnde Hintergründe & Accent Border */

.content-section h2 {
    font-family: 'JosefinSlab-SemiBold', serif;
    color: var(--bloodred);
    margin-top: 0;
    margin-bottom: 20px;
    text-align: center;
    font-size: 2.2em; /* Titel innerhalb der Sektionen */
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}
.content-section h2 .section-icon {
    font-size: 0.9em;
    color: var(--icon-color); /* bloodred */
}

.content-section p.section-description {
    text-align: center;
    margin-bottom: 40px;
    color: var(--text-secondary, var(--grey));
    line-height: 1.7;
    font-size: 1.05em;
}

/* --- Collage Grid Layout (innerhalb .content-section) --- */
.collage-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-bottom: 40px;
}
.collage-grid img,
.collage-grid svg {
    width: 100%;
    height: auto;
    border-radius: 10px;
    border: 1px solid var(--border-light);
    display: block;
    background-color: var(--bg-secondary, #f0f0f0); /* Placeholder Hintergrund */
    transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
    object-fit: cover;
    aspect-ratio: 4 / 3;
}
.collage-grid img:hover,
.collage-grid svg:hover {
    transform: scale(1.03);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    filter: brightness(1.05);
}

/* --- Info Bereich (Vor-/Nachteile) --- */
/* Stile bleiben hier weitgehend gleich */
.format-info {
    border-top: 1px solid var(--border-light);
    padding-top: 30px;
    margin-top: 30px;
}
.format-info h3 {
    text-align: center;
    font-family: 'JosefinSlab-SemiBold', serif;
    font-size: 1.6em;
    color: var(--text-primary);
    margin-bottom: 30px;
}
.pros-cons {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-bottom: 30px;
}
.pros h4, .cons h4 {
    font-family: 'JosefinSlab-SemiBold', serif;
    font-size: 1.2em;
    margin-bottom: 15px;
    padding-bottom: 8px;
    display: inline-block;
}
.pros h4 { color: var(--green); border-bottom: 2px solid var(--green); }
.cons h4 { color: var(--lowred); border-bottom: 2px solid var(--lowred); }
.pros ul, .cons ul { list-style: none; padding-left: 0; margin: 0; }
.pros ul li, .cons ul li { margin-bottom: 10px; padding-left: 25px; position: relative; color: var(--text-secondary); line-height: 1.6; }
.pros ul li::before, .cons ul li::before { font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; left: 0; top: 2px; }
.pros ul li::before { content: "\f058"; color: var(--green); }
.cons ul li::before { content: "\f057"; color: var(--lowred); }
.format-info h4:last-of-type { font-family: 'JosefinSlab-SemiBold', serif; font-size: 1.2em; margin-top: 20px; margin-bottom: 10px; color: var(--text-primary); border-bottom: none; }
.format-info p:last-of-type { color: var(--text-secondary); line-height: 1.6; text-align: left; margin-bottom: 0; }

/* --- NEU: Stile für Foto-Galerie (aus Inline-Style übernommen) --- */
.photo-gallery-section h3 {
    font-family: 'JosefinSlab-SemiBold', serif;
    font-size: 1.8em; /* Etwas kleiner als H2 */
    color: var(--text-primary);
    margin-top: 40px; /* Abstand zur vorherigen Grid/Beschreibung */
    margin-bottom: 20px; /* Abstand zum Grid dieser Kategorie */
    padding-bottom: 10px;
    border-bottom: 2px solid var(--lowred);
    display: flex;
    align-items: center;
    gap: 10px;
}
.photo-gallery-section h3 i {
     color: var(--lowred);
     font-size: 0.8em;
}
/* Hover für Galerie-Bilder nutzt Standard .collage-grid:hover */
.photo-gallery-section .gallery-grid img:hover {
    /* Keine zusätzlichen Stile nötig, wenn Standard-Hover ok ist */
}

/* --- Dark Mode Anpassungen --- */
/* [data-theme="dark"] .pix-content {}  <-- Entfernt */
/* [data-theme="dark"] .main-title {} <-- Entfernt */
/* [data-theme="dark"] .intro-text {} <-- Entfernt */

[data-theme="dark"] .content-section {
    /* Hintergrund der inneren Sektionen im Dark Mode */
    /* Sollte heller oder dunkler als .bordered-section (--bg-secondary) sein */
    background: var(--bg-primary); /* Z.B. der dunkelste Hintergrund */
    border-color: var(--grey-dark); /* Dunklerer Rand für innere Boxen */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15); /* Angepasster Schatten */
}
/* Entfernt: nth-of-type, accent-border Dark Mode */

[data-theme="dark"] .content-section h2 { color: var(--bloodred); } /* Bleibt rot */
[data-theme="dark"] .content-section h2 .section-icon { color: var(--icon-color); } /* Bleibt rot */
[data-theme="dark"] .content-section p.section-description { color: var(--text-secondary); }

[data-theme="dark"] .collage-grid img,
[data-theme="dark"] .collage-grid svg {
    border-color: var(--grey);
    background-color: #333; /* Dunklerer Placeholder */
}
[data-theme="dark"] .collage-grid img:hover,
[data-theme="dark"] .collage-grid svg:hover {
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    filter: brightness(1.1);
}

[data-theme="dark"] .format-info { border-top-color: var(--grey-dark); }
[data-theme="dark"] .format-info h3 { color: var(--text-primary); }
[data-theme="dark"] .pros h4 { color: var(--green); border-color: var(--green); }
[data-theme="dark"] .cons h4 { color: var(--lowred); border-color: var(--lowred); }
[data-theme="dark"] .pros ul li,
[data-theme="dark"] .cons ul li { color: var(--text-secondary); }
[data-theme="dark"] .pros ul li::before { color: var(--green); }
[data-theme="dark"] .cons ul li::before { color: var(--lowred); }
[data-theme="dark"] .format-info h4:last-of-type { color: var(--text-primary); }
[data-theme="dark"] .format-info p:last-of-type { color: var(--text-secondary); }

/* Dark Mode für Galerie H3 */
[data-theme="dark"] .photo-gallery-section h3 {
    color: var(--text-primary);
    border-bottom-color: var(--lowred);
}
 [data-theme="dark"] .photo-gallery-section h3 i {
     color: var(--lowred);
 }
 [data-theme="dark"] .photo-gallery-section .gallery-grid img:hover {
      /* Keine zusätzlichen Stile nötig */
 }


/* --- Responsive Anpassungen --- */
/* Müssen ggf. angepasst werden, da der äußere Container jetzt anders ist */
@media (max-width: 992px) {
    /* Regeln für .collage-grid etc. bleiben meist gültig */
    .collage-grid {
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
        gap: 20px;
    }
     .collage-grid img,
     .collage-grid svg {
         aspect-ratio: 3 / 2;
     }
}

@media (max-width: 768px) {
    /* .pix-content Anpassungen entfernt */
    .content-section { padding: 25px; margin-bottom: 30px; } /* Weniger Padding innen */
    .content-section h2 { font-size: 1.9em; gap: 10px; }
    .content-section p.section-description { font-size: 1em; }

    .collage-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 15px;
    }
     .collage-grid img,
     .collage-grid svg {
         aspect-ratio: 1 / 1;
     }

    .pros-cons { grid-template-columns: 1fr; gap: 25px; }
    .photo-gallery-section h3 { font-size: 1.6em; }
}

@media (max-width: 480px) {
     /* .main-title Anpassungen entfernt */
     /* .intro-text Anpassungen entfernt */
     .content-section { padding: 20px; border-radius: 12px; margin-bottom: 25px;}
     .content-section h2 { font-size: 1.6em; }
     .content-section p.section-description { margin-bottom: 30px; }

     .collage-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 10px;
     }
      .collage-grid img,
     .collage-grid svg {
         aspect-ratio: 4 / 3;
         border-radius: 8px;
     }

    .format-info h3 { font-size: 1.4em; }
    .pros h4, .cons h4 { font-size: 1.1em; }
    .pros ul li, .cons ul li { font-size: 0.9em; padding-left: 22px; }
    .pros ul li::before, .cons ul li::before { top: 3px; }
    .format-info h4:last-of-type { font-size: 1.1em; }
    .format-info p:last-of-type { font-size: 0.9em; }

    .photo-gallery-section h3 { font-size: 1.4em; }
}