/*
Theme Name: Enfold Child
Description: A <a href='http://codex.wordpress.org/Child_Themes'>Child Theme</a> for the Enfold Wordpress Theme. If you plan to do a lot of file modifications we recommend to use this Theme instead of the original Theme. Updating will be much easier then.
Version: 1.0
Author: Kriesi
Author URI: http://www.kriesi.at
Template: enfold
*/


/* =========================================================
   PROJEKTÜBERSICHT
   ========================================================= */


/* ---------------------------------------------------------
   FILTER
   --------------------------------------------------------- */

.projekt-filter {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 30px;
    margin: 0 0 45px;
}

.projekt-filter-feld {
    width: 250px;
    max-width: 100%;
}

/* Einheitliche Höhe für die Überschriften */
.projekt-filter-feld label,
.projekt-filter-label-spacer {
    display: block;
    height: 22px;
    margin: 0 0 8px;
    font-weight: 700;
    line-height: 22px;
}

/* Dropdowns */
.projekt-filter-feld select {
    display: block;
    width: 100%;
    min-height: 42px;
    height: 42px;
    margin: 0;
    padding: 8px 12px;
    box-sizing: border-box;
}

/* ---------------------------------------------------------
   "ALLE"-BUTTON
   --------------------------------------------------------- */

.projekt-filter-reset-feld {
    width: auto;
    max-width: none;
}

.projekt-filter-reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 60px;
    height: 42px;
    min-height: 42px;
    margin: 0;
    padding: 8px 16px;
    box-sizing: border-box;

    border: 1px solid #ccc;
    border-radius: 0;

    background: transparent;
    font-size: 14px;
    line-height: 1;
    font-weight: 400;

    cursor: pointer;
    transition: opacity 0.2s ease;
}

.projekt-filter-reset:hover {
    opacity: 0.65;
}


/* ---------------------------------------------------------
   PROJEKT-RASTER
   --------------------------------------------------------- */

.projekt-raster {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 55px;
    width: 100%;
}


/* ---------------------------------------------------------
   PROJEKTKARTE
   --------------------------------------------------------- */

.projektkarte {
    min-width: 0;
    width: 100%;
}

/* Bild */
.projektkarte-bild {
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    margin: 0 0 20px;
}

.projektkarte-bild a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.projektkarte-bild img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: cover;

    transition: transform 0.3s ease;
}

/* dezenter Hover-Effekt */
.projektkarte-bild a:hover img {
    transform: scale(1.03);
}


/* ---------------------------------------------------------
   PLATZHALTERBILD
   --------------------------------------------------------- */

.projektkarte-bild-placeholder {
    background: #eeeeee;
}

.projektkarte-bild-placeholder img {
    object-fit: cover;
}


/* ---------------------------------------------------------
   PROJEKT-INFORMATIONEN
   --------------------------------------------------------- */

.projektkarte-inhalt {
    width: 100%;
}

.projektkarte-inhalt h3 {
    margin: 0 0 16px;
    padding: 0;
    line-height: 1.25;
}

.projektkarte-inhalt h3 a {
    text-decoration: none;
}


/* Metadaten */
.projektkarte-meta {
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

.projektkarte-meta > div {
    margin: 0 0 3px;
    padding: 0;
}

.projektkarte-meta strong {
    font-weight: 700;
}


/* ---------------------------------------------------------
   KEINE ERGEBNISSE
   --------------------------------------------------------- */

.projekt-keine-ergebnisse {
    display: none;
    margin: 30px 0;
}


/* ---------------------------------------------------------
   TABLET – 2 SPALTEN
   --------------------------------------------------------- */

@media only screen and (max-width: 989px) {

    .projekt-raster {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 25px;
        row-gap: 45px;
    }

    .projekt-filter {
        gap: 20px;
        margin-bottom: 40px;
    }

    .projekt-filter-feld {
        width: 220px;
    }

}


/* ---------------------------------------------------------
   MOBIL – 1 SPALTE
   --------------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .projekt-filter {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        margin-bottom: 35px;
    }

    .projekt-filter-feld {
        width: 100%;
        max-width: 100%;
    }

    .projekt-filter-reset-feld {
        width: 100%;
    }

    .projekt-filter-reset {
        width: auto;
    }

    .projekt-raster {
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: 45px;
    }

    .projektkarte-bild {
        margin-bottom: 16px;
    }

    .projektkarte-inhalt h3 {
        margin-bottom: 14px;
    }

}


/* ---------------------------------------------------------
   SEHR KLEINE MOBILGERÄTE
   --------------------------------------------------------- */

@media only screen and (max-width: 400px) {

    .projekt-filter {
        gap: 15px;
    }

    .projekt-filter-feld label,
    .projekt-filter-label-spacer {
        height: auto;
        margin-bottom: 6px;
        line-height: 1.4;
    }

    .projekt-filter-feld select {
        min-height: 40px;
        height: 40px;
    }

    .projekt-filter-reset {
        height: 40px;
        min-height: 40px;
    }

    .projekt-raster {
        row-gap: 40px;
    }

}

.projekt-load-more-wrapper {
    width: 100%;
    margin-top: 50px;
    text-align: center;
}

.projekt-load-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 9px 20px;
    border: 1px solid #ccc;
    border-radius: 0;
    background: transparent;
    font-size: 14px;
    line-height: 1.2;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

.projekt-load-more:hover {
    opacity: 0.65;
}

/* =========================================================
   PROJEKT EINZELSEITE
   ========================================================= */

/*schwarzer hintergrund im projekt FIX*/
body.single-projekt #main {
    background: #fff !important;
}

/*body.single-projekt #main .container {
    background: #fff;
}

/*body.single-projekt. {
    background: #fff;
}

/*body.single-projekt > div {
    background: #fff !important;
}*/

/* ==========================================================================
   Single Projekt – Layout (Child Theme)
   ========================================================================== */

:root {
    --pj-accent: #f7c110;
    --pj-line: rgba(0, 0, 0, .12);
    --pj-gap: 40px;
    --pj-maxw: 1310px; /* an Enfold-Containerbreite anpassen */
}

/* Enfold: überflüssige Innenabstände der Content-Section entfernen */
.single-projekt #top .container_wrap {
    border-top: none;
}

.single-projekt #top .content,
.single-projekt #top .template-page {
    padding-top: 0;
    padding-bottom: 0;
}

.projekt-single {
    padding: 0 0 120px;
}

.projekt-single .container {
    max-width: var(--pj-maxw);
    margin: 0 auto;
}


/* --------------------------------------------------------------------------
   1. Hauptbild 
   -------------------------------------------------------------------------- */

#top .projekt-single-hero-link {
    display: block;
    cursor: zoom-in;
    line-height: 0;
}

#top .projekt-single-hero-link img {
    transition: opacity 0.25s ease;
}

#top .projekt-single-hero-link:hover img {
    opacity: 0.92;
}

#top .projekt-single-hero {
    max-width: 500px;
    margin: 2rem 0 2rem;
}

#top .projekt-single-hero img {
    width: 100%;
    height: auto;        /* Höhe folgt dem Originalbild */
    aspect-ratio: auto;  /* überschreibt die alte Vorgabe */
    object-fit: contain;
    border-radius: 6px;
	margin: 0;
}

/* --------------------------------------------------------------------------
   2. Titel
   -------------------------------------------------------------------------- */

.projekt-single-titel {
    margin: 32px 0;
    font-size: clamp(28px, 4vw, 52px);
    line-height: 1.1;
    letter-spacing: -.01em;
    hyphens: auto;
}

.projekt-single-titel::after {
    content: "";
    display: block;
    width: 72px;
    height: 4px;
    margin-top: 24px;
    background: var(--pj-accent);
}


/* --------------------------------------------------------------------------
   3. Meta-Block: Kategorien + Projektdaten nebeneinander
   -------------------------------------------------------------------------- */

.projekt-single-kategorien,
.projekt-single-daten {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0 var(--pj-gap);
    border-top: 1px solid var(--pj-line);
}

.projekt-single-daten {
    margin-bottom: 72px;
    border-bottom: 1px solid var(--pj-line);
}

.projekt-single-kategorien > div,
.projekt-single-daten > div {
    padding: 18px 0;
    font-size: 15px;
    line-height: 1.5;
}

/* Label über dem Wert, dezent */
.projekt-single-kategorien strong,
.projekt-single-daten strong {
    display: block;
    margin-bottom: 4px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    opacity: .55;
}


/* --------------------------------------------------------------------------
   4. Projektbeschreibung
   -------------------------------------------------------------------------- */

.projekt-single-beschreibung {
    max-width: 68ch;
    margin: 0 0 88px;
    font-size: clamp(16px, 1.15vw, 19px);
    line-height: 1.75;
}

.projekt-single-beschreibung p {
    margin: 0 0 1.2em;
}

.projekt-single-beschreibung p:last-child {
    margin-bottom: 0;
}

.projekt-single-beschreibung p:first-child {
    font-size: 1.15em;
    line-height: 1.55;
}

.projekt-single-beschreibung a {
    text-decoration: underline;
    text-decoration-color: var(--pj-accent);
    text-underline-offset: 3px;
    text-decoration-thickness: 2px;
}


/* --------------------------------------------------------------------------
   5. Galerie
   -------------------------------------------------------------------------- */

/* Galerie: dichtes Raster, kleine Kacheln */
#top .projekt-single-galerie {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 8px;
    margin: 0 0 40px;
    padding: 0;
    list-style: none;
}

#top .projekt-single-galerie-bild {
    display: block;
    overflow: hidden;
    border-radius: 3px;
    line-height: 0;
}

#top .projekt-single-galerie-bild img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

#top .projekt-single-galerie-bild:hover img {
    transform: scale(1.04);
    opacity: 0.9;
}

@media only screen and (max-width: 767px) {
    #top .projekt-single-galerie {
        grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
        gap: 6px;
    }
}



/* --------------------------------------------------------------------------
   6. Responsive
   -------------------------------------------------------------------------- */

@media only screen and (max-width: 989px) {
    :root {
        --pj-gap: 28px;
    }

    .projekt-single {
        padding-bottom: 80px;
    }

    .projekt-single-hauptbild {
        margin-bottom: 40px;
    }

    .projekt-single-daten {
        margin-bottom: 48px;
    }

    .projekt-single-beschreibung {
        margin-bottom: 56px;
    }
}

@media only screen and (max-width: 767px) {
    .projekt-single-kategorien,
    .projekt-single-daten {
        grid-template-columns: 1fr;
    }

    .projekt-single-kategorien > div + div,
    .projekt-single-daten > div + div {
        border-top: 1px solid var(--pj-line);
    }

    .projekt-single-galerie {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .projekt-single-hauptbild img {
        height: 46vh;
    }
}

/*copyright*/
.copyright > a{
	display:none;
}

/* Burgermenü Farb-Fix (weiß bei schwarzem Header 

.av_header_transparency .av-hamburger-inner::before,
.av_header_transparency .av-hamburger-inner,
.av_header_transparency .av-hamburger-inner::after {
    background-color: #000 !important;
	transition: background-color 0.3s ease;
}*/

/* HINZUFÜGEN VON TAXONOMIE EINTRÄGEN ENTFERNEN */

 .category-add,
 .tagsdiv .ajaxtag,
 .editor-post-taxonomies__hierarchical-terms-add {
            display: none !important;
        }