/*
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 */

body{
    font-size: 17px;
}

a{
    color: #D39100;
    text-decoration: underline;
}

a:hover{
    color: #946500;
    text-decoration: underline;
}

h2, .h2 {
    font-size: 34px !important; /*36px*/
    line-height: 44px; /*46*/
}

h3, .h3{
    font-size: 26px;
    line-height: 36px;
    color: #00325B;
}

h4, .h4{
    font-size: 18px !important;
    line-height: 28px;
    font-family: "Cabin V26 Latin Regular";
    font-style: normal;
}

.headline h1,
.headline h2,
.headline h3,
.headline p{
    font-size: 16px !important;
    font-family: "Cabin V26 Latin Regular" !important;
    font-style: normal !important;
    text-transform: uppercase !important;
    color: #00325B !important;
}


    /* 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;
        }

/*
        .list-style-kachel ul {
            list-style: none;
            padding: 0;
            display: flex;
            column-gap: 15px;
            flex-direction: row;
            flex-wrap: wrap;
            align-items: stretch;
        }
        .list-style-kachel li {
            background-color: #fff;
            box-shadow: 0 0.125rem 0.625rem 0 rgba(0,0,0,.2);
            text-align: center;
            padding: 30px;
            width: calc(25% - 11.25px);
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
*/

        .list-style-kachel ul{
            display: grid;
            overflow: hidden;
            grid-template-columns: repeat(1, 1fr);
            grid-auto-rows: 1fr;
            grid-column-gap: 30px;
            grid-row-gap: 30px;
            padding-left: 0;
            overflow: visible;
        }

        @media (min-width: 768px) {
            .list-style-kachel ul{
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (min-width: 1024px) {
            .list-style-kachel ul{
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (min-width: 1200px) {
            .list-style-kachel ul{
                grid-template-columns: repeat(4, 1fr);
            }
        }

        .list-style-kachel li {
            display: flex;
            text-align: center;
            padding: 30px;
            align-items: center;
            justify-content: center;
            font-family: "Cabin V26 Latin 700italic";
            font-style: normal;
            font-size: 20px;
        }

        .list-style-kachel-weiss li {
            background-color: #fff;
            box-shadow: 0 15px 30px 0 rgba(0,0,0,.1);
            color: #00325B;
        }

        .list-style-kachel-blau li {
            background-color: #00325B;
            color: #fff;
        }


/* 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;
        }
    }

    /* Logo */

    header{
        margin-bottom: 60px;
    }

    header.gm-navbar .gm-wrapper{
        background-color: #00325B;
    }

    aside.gm-navigation-drawer .gm-anchor{
        font-weight: unset !important;
    }

    @media (min-width: 1200px) {

        header.gm-navbar .gm-wrapper{
            background-image: url('https://akp-krefeld.p3group.de/wp-content/uploads/2023/05/Blauverlauf_2000px.jpg');
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            position: relative;
        }

        header.gm-navbar .gm-container{
            flex-direction: column;
            height: unset !important;
        }

        header.gm-navbar .gm-container > .gm-logo{
            width: 100%;
            position: relative;
            top: unset !important;
            transform: unset !important;
            margin-right: 0px;
            padding: 65px 0 95px 0;
        }

        header.gm-navbar .gm-container .gm-main-menu-wrapper{
            background-color: #f2f2f2;
            width: 100vw;
            position: relative;
            margin-left: -50vw;
            left: 50%;
        }

        header.gm-navbar .gm-padding{
            padding-top: unset;
        }

        header.gm-navbar.gm-top-links-align-left #gm-main-menu{
            justify-content: center;
        }

        header.gm-navbar .gm-main-menu-wrapper .gm-navbar-nav > .menu-item > .gm-anchor {
            margin-top: 10px;
            margin-bottom: 10px;
        }

        /* Sticky Header without Logo */

        header.gm-navbar.gm-navbar-sticky-toggle .gm-logo{
            display: none;
        }

        /* Button */

        header.gm-navbar .btn_beratungsanfrage .gm-anchor{
            padding: 5px 30px !important;
        }

    }

    /* Mobile  */
   
    @media (max-width: 768px) {
        .gm-navbar .gm-logo__img{
            max-width: 100%;
        }
    }

    @media (max-width: 1200px) {
        .gm-mobile-menu-container{
            display: flex;
            justify-content: center;
            height: 100%;
            align-items: center;
        }

        .gm-mobile-menu-container .gm-anchor{
            padding-left: 15px;
            padding-right: 15px;
            text-align: center;
        }

        /* Small Links */
        aside.gm-navigation-drawer .gm-navbar-nav > .gm-menu-item.small  > a.gm-anchor{
            font-size: 14px !important;
            padding: 10px 0 !important;
            display: inline !important;
            line-height: 14px !important;
            border-bottom: 0 !important;
        }

        /* Karriere */
        aside.gm-navigation-drawer .gm-navbar-nav > .gm-menu-item.extern  > a.gm-anchor:after{
            content: "\f360";
            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;
            margin-left: 10px;
            margin-top: -1px;
        }
        
    }

/* Navi > Button */

header.gm-navbar .gm-navbar-nav > .menu-item.btn_beratungsanfrage.current_page_item > .gm-anchor,
header.gm-navbar .gm-navbar-nav > .menu-item.btn_beratungsanfrage > .gm-anchor:hover{
    color: #fff !important;
}


/*------------------------------------------*/

/* Logo */

#logo{
    background-color: #00325B;
    background-image: url('https://akp-krefeld.p3group.de/wp-content/uploads/2023/05/Blauverlauf_2000px.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

#logo img{
    width: 1000px;
    padding: 70px 0 65px 0;
}

/* Header & Claim */

    #header{
        background-color: #b1b1b1;
        border-radius: 10px;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 90px;
    }

    #header h1, #header h2{
        color: #fff;
    }

    #header .text > .vc_column-inner{
        background-color: #b1b1b1;
        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 */

/*
#formular > .wpb_column > .vc_column-inner > .wpb_wrapper{
    background-color: #fff;
    box-shadow: 0 0.125rem 0.625rem 0 rgba(0,0,0,.2);
    padding: 30px;
} */

#kontaktanfrage{
    background-image: url(https://akp-krefeld.p3group.de/wp-content/uploads/2023/05/Blauverlauf_2000px.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    color: #fff;
    margin-left: 0;
    margin-right: 0;
    padding: 60px 30px 15px 30px;
}

#kontaktanfrage .headline h1,
#kontaktanfrage .headline h2,
#kontaktanfrage .headline h3,
#kontaktanfrage .headline p{
    color: #fff !important;
}

#kontaktanfrage form label,
#kontaktanfrage form .frm_description{
    color: #fff !important;
}

#kontaktanfrage > .wpb_column.text{
    padding: 0 45px;
}


/* Tab-Navigation */

.nav-pills{
    flex-direction: column;
}

@media (min-width: 768px) {
    .nav-pills{
        flex-direction: row;
    }
}

.nav-pills .nav-link{
    color: #fff;
    background-color: #D39100;
    border: 0;
    border-radius: 0;
    font-size: 18px;
    margin: 5px;
}

.nav-pills .nav-link:hover,
.nav-pills .nav-link.active, .nav-pills .show>.nav-link{
    background-color: #946500;
    color: #fff;
}


/* Tab-Content */

@media (min-width: 768px) and (max-width: 1200px) {
    .tab-content > .tab-pane > .vc_column-inner > .wpb_wrapper{
        padding: 0 30px;
    }
}


/* Grid-Blue */

.grid-blue > .wpb_column > .vc_column-inner > .wpb_wrapper{
    background-color: #00325B;
    color: #fff;
    padding: 30px;
    height: 100%;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
}

.grid-blue > .wpb_column > .vc_column-inner > .wpb_wrapper h4{
    color: #fff;
    text-align: center;
}

.grid-blue > .wpb_column > .vc_column-inner > .wpb_wrapper .wpb_text_column{
    margin-bottom: 0;
}

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

    body{overflow-x: hidden;}
    

/* Buttons */


    .button-filled > a,
    .button-filled > button,
    input.button-filled,
    input#submit {
        font-size: 16px !important;
        background-color: #D39100 !important;
        border: 2px solid #D39100 !important;
        color: #fff !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }

    .button-filled > a:hover,
    .button-filled > button:hover,
    input.button-filled:hover,
    input#submit:hover {
        background-color: #946500 !important;
        border: 2px solid #946500 !important;
        color: #fff !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }

    .button-outline > a,
    .button-outline > button,
    input.button-outline{
        font-size: 16px !important;
        background-color: transparent !important;
        border: 2px solid #D39100 !important;
        color: #fff !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }

    .button-outline > a:hover,
    .button-outline > button:hover,
    input.button-outline:hover{
        background-color: #00325B !important;
        border: 2px solid #00325B !important;
        color: #fff !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }


    .button-inverse-outline > a,
    .button-inverse-outline > button,
    input.button-inverse-outline{
        font-size: 16px !important;
        background-color: transparent !important;
        border: 2px solid #fff !important;
        color: #fff !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }

    .button-inverse-outline > a:hover,
    .button-inverse-outline > button:hover,
    input.button-inverse-outline:hover{
        background-color: #fff !important;
        border: 2px solid #fff !important;
        color: #909090 !important;
        border-radius: 0 !important;
        background-image: none !important;
        padding: 10px 30px !important;
        transition: 0.3s !important;
    }

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

    /* Button-Sizes & Attributes */

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

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

        .button-lg > a,
        .button-lg > button{
            font-size: 18px !important;
        }

        .button-sm > a,
        .button-sm > button{
            font-size: 14px !important;
        }

        .vc_button_icon-right a,
        .vc_button_icon-right a:hover{
            padding-right: 55px !important;
        }

        .vc_button_icon-right a > i.vc_btn3-icon{
            right: 30px !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: #cb4500;
        background-color: #cb4500;
        color: #fff;
        padding: 30px;
        text-align: center;
        margin: 30px 0;
        box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
    }

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

/* Team */

#team img.team-foto{
    width: 300px;
}

/* Impressum + Datenschutz */

    #impressum h2,
    #datenschutz h2{
        font-size: 160%;
        margin-bottom: 20px;
        margin-top: 30px;
        display: inline-block;
    }

    #impressum h3,
    #datenschutz h3{
        font-size: 130%;
    }

    #impressum h4,
    #datenschutz h4{
        font-size: 105%;
    }

    #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%;
}

/* Page-Header */

@media (min-width: 1024px) {
    #page-header{
        margin: 120px 0;
    }
}

#page-header h1{
    font-size: 16px !important;
    font-family: "Cabin V26 Latin Regular";
    font-style: normal;
    text-transform: uppercase;
    color: #00325B;
}


/* Image-Header */

#image-header .frame-title .headline{
    margin-bottom: 10px;
}

@media (min-width: 1024px) {
    #image-header{
        margin-bottom: 90px;
    }

    #image-header .frame-title{
        background-color: #fff;
        box-shadow: 0 15px 30px 0 rgba(0,0,0,.1);
        position: absolute !important;
        bottom: -0px;
        padding: 30px 15px 0 15px !important;
        left: -15px;
    }
    
    #image-header .frame-blue .vc_single_image-wrapper:after{
        content: "";
        width: calc(100% - 50%);
        height: calc(100% - 25%);
        position: absolute !important;
        top: -15px;
        right: 0;
        background-color: #00325B;
        z-index: -1;
    }
}


/* Team > Single */

.team-title{
    background-color: #fff;
    box-shadow: 0 15px 30px 0 rgba(0,0,0,.1);
    padding: 30px;
    margin-left: -15px;
    margin-top: -60px;
    margin-bottom: 90px;
    width: 100%;
    max-width: 400px;
    position: inherit;
}