/*
Theme Name: P3 Wordpress Theme - Child
Theme URI: https://p3creation.com
Description: Child Theme
Author: P3 CREATION GROUP
Author URI: https://p3creation.com
Template: p3-homepage
Version: 0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: p3-homepage-child
Tags: 
Domain Path: /languages
*/


/* Basics */

html {
    scroll-padding-top: 150px;
}

@media (min-width: 1024px) AND (max-width: 1520px) {
    main{
        padding-left: 30px;
        padding-right: 30px;
    }
}

.bg-light {
    background-color: var(--color-surface-1)!important;
}

/* Containers */

    @media (min-width: 1440px) {
        .container {
            max-width: 1440px;
        }
    }

    /* List-Stylings */

        .list-style-1 ul {
          list-style: none;
          padding: 0;
        }

        .list-style-1 li {
          padding-left: 40px;
        }

        .list-style-1 li:not(:last-child) {
          padding-bottom: 15px;
          border-bottom: 1px solid #b1b1b1;
          margin-bottom: 15px;
        }

        .list-style-1 li:before {
          content: "\f00c";
          font-family: FontAwesome;
          display: inline-block;
          margin-left: -30px;
          width: 30px;
        }


        .list-style-2 ul {
          list-style: none;
          padding: 0;
        }
        .list-style-2 li {
          padding-left: 40px;
        }
        .list-style-2 li:before {
          content: "\f061";
          font-family: FontAwesome;
          display: inline-block;
          margin-left: -30px;
          width: 30px;
        }

/* Navigation > Groovy Menu */

    @media (min-width: 576px) {
        .gm-container{
            max-width: 540px !important;
        }
    }

    @media (min-width: 768px) {
        .gm-container{
            max-width: 720px !important;
        }
    }

    @media (min-width: 992px) {
        .gm-container{
            max-width: 960px !important;
        }
    }

    @media (min-width: 1200px) {
        .gm-container{
            max-width: 1440px !important;
        }
    }

    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-item > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-ancestor > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-page-ancestor > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-parent > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item > .gm-anchor:hover,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item.gm-open > .gm-anchor {
        color: var(--color-primary) !important;
    }

/* Hauptmenü */

    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.divider > .gm-anchor{cursor: unset;}
    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.divider > .gm-anchor::after{border-top: 0}
    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.divider > .gm-anchor > .gm-menu-item__txt-wrapper{border-left: 1px solid #ccc; margin-left: 8px;}

    .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav > .menu-item.bold > .gm-anchor{font-weight: bold;}

    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.button > .gm-anchor::after{border-top: 0}
    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.button > .gm-anchor > .gm-menu-item__txt-wrapper{
        padding: 10px 30px !important;
        transition: 0.3s !important;
        background-color: var(--color-primary) !important;
        color: var(--color-primary-contrast) !important;
        border-color: var(--color-primary)!important;
    }

    .gm-main-menu-wrapper .gm-navbar-nav > .menu-item.button > .gm-anchor > .gm-menu-item__txt-wrapper:hover{
        transition: 0.3s !important;
        background-color: var(--color-primary-hover) !important;
        color: var(--color-primary-contrast) !important;
        border-color: var(--color-primary-hover)!important;
    }
    

/* Header & Claim */

    #header{
        background-color: var(--color-surface-1);
        border-radius: var(--base-radius);
        margin-left: 0;
        margin-right: 0;
        margin-top: var(--base-clearance-md);
        margin-bottom: var(--base-clearance-xl);
        padding: var(--base-clearance-md) 0;

    }

    #header h1, #header h2{
        color: var(--body-color);
        text-transform: uppercase;
    }

    #header h2{
        font-family: "Poppins V20 Latin Regular";
        font-style: normal;
        font-weight: 400;
    }

    #header .text > .vc_column-inner{
        background-color: var(--color-surface-1);
        padding: 30px;
    }

    #header .text > .vc_column-inner .wpb_text_column{
        max-width: 600px;
    }

    @media (min-width: 768px) {
        #header .text > .vc_column-inner{
            padding: 60px;
        }
    }

    #header .img > .vc_column-inner{
        min-height: 350px;
    }

/* Visual Composer */


    /* Full-Width-Bug (vertikale Scrolleiste verbergen) */

    body{overflow-x: hidden;}

    .vc_separator.vc_sep_color_grey .vc_sep_line {
        border-color: var(--body-divider) !important;
    }
    

/* Buttons */

    .vc_btn3-container.vc_btn3-inline {
        margin-right: 10px;
        margin-bottom: 10px;
    }

    /* Button-Sizes & Attributes */

    .button-icon > a,
    .button-icon > a:hover{
        border-radius: 3px !important;
        padding: 10px 25px !important;
    }

    .button-icon > a i{
        font-size: 25px !important;
        height: 25px !important;
        line-height: 25px !important;
    }

    /* VC-Button mit Icons */

    .vc-button-icon-left > a, .vc-button-icon-left > a:hover,
    .vc-button-icon-left > button, .vc-button-icon-left > button:hover{
        padding-left: 45px !important;
    }

    .vc-button-icon-right > a, .vc-button-icon-right > a:hover,
    .vc-button-icon-right > button, .vc-button-icon-right > button:hover{
        padding-right: 45px !important;
    }

    .button-lg.vc-button-icon-right > a, .button-lg.vc-button-icon-right > a:hover,
    .button-lg.vc-button-icon-right > button, .button-lg.vc-button-icon-right > button:hover{
        padding-right: calc(45px * var(--base-font-scale-factor)) !important;
    }

    .button-lg.vc-button-icon-right > a i, .button-lg.vc-button-icon-right > a:hover i,
    .button-lg.vc-button-icon-right > button i, .button-lg.vc-button-icon-right > button:hover i{
        right: calc(20px * var(--base-font-scale-factor)) !important;
    }

    /* Button Spinner */

    .button-filled > a span.spinner-border,
    .button-filled > button span.spinner-border,
    .button-outline > a span.spinner-border,
    .button-outline > button span.spinner-border,
    .button-inverse-outline > a span.spinner-border,
    .button-inverse-outline > button span.spinner-border{
        margin-right: 10px;
    }


/* CF7 */

    .wpcf7 form.spam .wpcf7-response-output,
    .wpcf7 form.invalid .wpcf7-response-output,
    .wpcf7 form.unaccepted .wpcf7-response-output {
        border-color: #394759;
        background-color: #394759;
        color: #fff;
        padding: 30px;
        text-align: center;
        margin: 30px 0;
    }

    .wpcf7 form.sent .wpcf7-response-output {
        border-color: #43b0ee;
        background-color: #43b0ee;
        padding: 30px;
        color: #fff;
        margin: 30px 0;
    }


/* Impressum + Datenschutz */

    #impressum h2:first-of-type,
    #datenschutz h2:first-of-type{
        margin-top: 0 !important;
    }

    #impressum h2,
    #datenschutz h2{
        margin-top: var(--base-clearance-lg);
        margin-bottom: var(--base-clearance-md);
        display: block;
        font-family: var(--base_font_family_2);
    }

    #impressum h3,
    #datenschutz h3{
        margin-top: var(--base-clearance-md);
        margin-bottom: var(--base-clearance-sm);
        display: inline-block;
    }

    #impressum h4,
    #datenschutz h4{
        margin-top: var(--base-clearance-sm);
        margin-bottom: var(--base-clearance-xs);
        display: inline-block;
    }

    #impressum h3 + h4,
    #datenschutz h3 + h4{
        margin-top: 15px;
    }
    

/* Shotcodes */


    /* Carousel */

        #p3_posts .owl-stage-outer{
            padding: 30px 0;
        }

        #p3_posts .owl-stage{
            display: flex;
        }
        
        #p3_posts .item{
            background-color: #fff;
            border: 0;
            border-radius: 0;
            margin: 0;
            height: 100%;
            -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            transition: 0.3s;
        }

        #p3_posts .item:hover{
            -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            transition: 0.3s;
        }
        
        #p3_posts .item .card-image{
            height: 280px;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center center;
            display: inline-table;
        }

/* Borlabs Cookie */
.embed-responsive-16by9 > ._brlbs-cb-youtube {
    margin-top: -56.25%;
}

/* Maps */

.maps iframe{
    width: 100%;
    height: 350px;
}

/* Archive */

#archive .col{
    margin-bottom: 30px;
    padding: 0;
}

#archive .col .card{
    transition: all .6s ease;
}

#archive .col .card:hover {
    transform: translateY(-10px);
    box-shadow: rgb(0 0 0 / 40%) 0px 25px 20px -20px;
    transition: all .3s ease;
}

#archive .col .card .card-image{
    height: 250px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

#archive .col .card .img-fluid{
    height: 350px;
    object-fit: contain;
    margin: 1.25rem;
}

#archive .col .card .card-footer{
    background-color: transparent;
    border: 0;
}

#archive .col .card .card-footer a i{
    position: absolute;
    margin-top: 5px;
    margin-left: 5px;
}



/* Single */

    .single-erechtshare-header .shariff li{
        margin: 3px !important;
    }

    .single-content-image img{
        border-radius: var(--base-radius);
        max-height: 600px;
        object-fit: cover;
    }

    .single-content-downloads{
        list-style: none;
        padding-left: 30px;
    }

    .single-content-downloads li:before {
        content: "\f063";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        line-height: 1;
        transform: rotate(-90deg);
        transition: all .6s ease;
        color: var(--color-primary);
        margin-left: -30px;
        margin-right: 10px;
    }

    .single-content-downloads li:hover:before {
        transform: rotate(0deg);
        transition: all .3s ease;
    }


/* Portfolio (Detail) */

#portfolio .portfolio-image{
    background-color: #fff;
    text-align: center;
    padding: var(--base-clearance-md);
}

#portfolio .portfolio-image img{
    max-height: 500px;
    object-fit: contain;
}

#portfolio .feature-set{
    display: flex;
    justify-content: flex-start;
}

#portfolio .feature-set .features:not(:last-of-type){
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    margin-right: 30px;
    font-size: var(--base-font-md);
}

#portfolio .feature-set .features .injectable{
    width: 30px;
    margin-right: 15px;
    fill: var(--color-primary) !important;
}

/* Post => Aktuelles (Detail) */

#post .portfolio-image{
    background-color: #fff;
    text-align: center;
    padding: var(--base-clearance-md);
}

#post .portfolio-image img{
    max-height: 500px;
    object-fit: contain;
}

#post .feature-set{
    display: flex;
    justify-content: flex-start;
}

#post .feature-set .features:not(:last-of-type){
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    margin-right: 30px;
    font-size: var(--base-font-md);
}

#post .feature-set .features .injectable{
    width: 30px;
    margin-right: 15px;
    fill: var(--color-primary) !important;
}