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

main{
    padding-top: 30px;
    padding-bottom: 90px;
}

h1,.h1,
h2,.h2,
h3,.h3,
h4,.h4{
    color: rgba(48,105,128,1);
}

.underline h1, .underline .h1,
.underline h2, .underline .h2,
.underline h3, .underline .h3,
.underline h4, .underline .h4{
    display: inline-block;
    border-bottom: 2px solid rgba(255,204,0,1);
}

.badge-warning {
    color: rgba(0,0,0,0.75);
    background-color: #fecc00;
}


a{color: rgba(109,150,169,1);}
a:hover{color: rgba(255,204,0,1);}

.referent-foto{
    width: 150px;
    margin: 0 auto;
}

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

/* Top-Header */

#top-header{
    font-size: 13px;
    color: rgba(0,0,0,.4);
}

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

.gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-parent > .gm-anchor .gm-menu-item__txt::after,
.gm-navbar .gm-navbar-nav > li.current-menu-item > .gm-anchor .gm-menu-item__txt::after {
    content: "";
    width: 100%;
    height: 2px;
    background-color: #fecc00;
    display: block;
}

    /* Mobile */

    .gm-navigation-drawer .gm-anchor, .gm-navigation-drawer .gm-mega-menu__item__title{
        font-weight: unset;
    }

/* Header & Claim */

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

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

    #header .text > .vc_column-inner{
        background-color: #7299ac;
        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;
    }

    #header .img{
        padding: 0;
    }


/* Visual Composer */


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

    body{overflow-x: hidden;}
    

/* Buttons */


    .button-filled > a,
    .button-filled > button,
    input.button-filled,
    input[type=submit] {
        font-size: 16px !important;
        background-color: #fecc00 !important;
        border: 2px solid #fecc00 !important;
        color: rgba(0,0,0,0.75) !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[type=submit]:hover {
        background-color: #306980 !important;
        border: 2px solid #306980 !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 #306980 !important;
        color: #306980 !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: #306980 !important;
        border: 2px solid #306980 !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: 3px !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 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 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: #af2323;
        background-color: #af2323;
        color: #fff;
        padding: 30px;
        text-align: center;
        margin: 30px 0;
    }

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


/* Impressum + Datenschutz */

    #impressum h2,
    #datenschutz h2,
    #barrierefreiheit h2{
        font-size: 160%;
        margin-bottom: 20px;
        margin-top: 30px;
        display: inline-block;
        border-bottom: 2px solid rgba(255,204,0,1);
    }

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

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

    #impressum h3 + h4,
    #datenschutz h3 + h4,
    #barrierefreiheit 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%;
}

/* Archive-Termine */

#archive-termine .card-date{
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.25rem;
    background-color: rgba(182,203,215,1);
    color: rgba(48,105,128,1);
}

#archive-termine .card-date > .row{
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

/* Single (Aktuelles) */

.single-content-image img{
    width: 100%;
}

/* Single Termine */

.single-content-standort{
    border-top: 1px solid #f2f2f2;
    border-bottom: 1px solid #f2f2f2;
    padding: 30px 0;
    margin: 30px 0;
}

.single-content-standort img{
    object-fit: cover;
    height: 100%;
}

article#event .single-event-date > .date-period .from{
    border-right: 1px solid rgba(255,255,255,0.2);
    background-color: #7299ac;
    color: #fff;
}

article#event .single-event-date > .date-period .to{
    border-left: 0px solid rgba(0,0,0,0.1);
    background-color: #7299ac;
    color: #fff;
}

article#event .single-event-date .date-period .year{
    background-color: rgba(0,0,0,.1);
    text-align: center;
    padding: 15px;
    width: 100%;
}

article#event .single-event-date > .date-period:before {
    color: #fff;
}

article#event .single-event-date .date-single {
    background-color: #7299ac;
    color: #fff;
}

article#event .single-event-date .date-single .year {
    background-color: rgba(0,0,0,.1);
}

/* Single Referenten */

#referent .referent-foto{
    height: 150px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 100%;
    width: 150px;
    margin: 0 auto;
}

/* Simple Memebership */

#login-hinweis{
    min-height: 200px;
    padding: 30px;
    display: flex;
    align-items: center;
}

#swpm-login-form .swpm-join-us-link {
display: none;
}


/* Sticky Sidebars */

.sticky-element {
  top: 160px;
  padding: 0;
}

@media (min-width: 1024px) {
    .sticky-element {
      padding: 0 15px;
    }
}


/* AKI-Fachmodule (formidable forms)  */

#frm_field_6_container .frm_image_option_container{
    border: 0;
}

#frm_field_6_container .frm_image_option_container img {
    height:378px;
}

/* Amelia Booking */

.amelia-v2-booking #amelia-container .am-advsc__slots{
    display: flex;
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.amelia-v2-booking #amelia-container .am-advsc__slots-item:last-child {
    max-width: unset !important;
}

/* Online-Schulungen */

.schulung-video-links li span{
    display: inline-block;
    width: 22px;
    text-align: right;
    margin-right: 8px;
}

.schulung-video-links li.active{
    background-color: transparent;
    border-color: rgba(0,0,0,.125);
}

.schulung-video-links li.active a {
    color: #fecc00;
    text-decoration: none;
}


/* Kongress 2026 > Anmeldeformular deaktiviert */

body.postid-6255 .online-anmeldung{display: none;}