/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

* {
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0) !important; 
    -webkit-focus-ring-color: rgba(255, 255, 255, 0) !important; 
    outline: none !important;    /* for 0 burger menu border */
} 

.smallprint {font-size:0.75em;color:#bbb;}
.elementor-price-table__ribbon-inner {background: var( --e-global-color-secondary );}
.elementor-alert button.elementor-alert-dismiss {
    padding: 3px 10px;
    font-size: 25px;
    line-height: 1;
    box-shadow:none;
    border-radius: 2px;
    background:#ffffff20;
}

/* -------------------------------------------------------------  Alerts */

.elementor-alert button.elementor-alert-dismiss:hover {
    background:#333;
}
.elementor-alert a {
    color:inherit;
}
.elementor-alert a:hover {
    color:inherit;
    text-decoration:none;
}
           
/* -------------------------------------------------------------  Main nav stretch*/

.elementor-element-64091611 .elementor-element.elementor-element-3408f50e {
    width:100% !important;
}
#menu-1-3408f50e {
    display:flex;
    justify-content:space-between;
}


/* Article Links */
.elementor-grid-item h3.elementor-post__title a {
    text-decoration:none;
}
.elementor-grid-item a.elementor-post__read-more {
    text-decoration:none;
    color:#333;
    font-size:.8em;
}
.elementor-grid-item a.elementor-post__read-more:hover {
    color: var(--e-global-color-accent);    
}

.elementor-post__excerpt p:after {
    content: "...";
}
.elementor-posts-container .elementor-post__title {
    margin:1em 0;
}


/* -------------------------------------------------------------   Tabellen */

.tablepress {
    margin-bottom:0;
    font-size:1em;
}
table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background-color: #fbfbfb;
}
.tablepress tbody td, .tablepress tfoot th {
    border-top: 1px solid #ddd;
}

.tablepress.icontab td:first-child {
    text-align:center;
}


/* -------------------------------------------------------------   Formulare */
.wpcf7 textarea {
    border: 1px solid #e6e6e6;
    border-bottom: 3px solid #fdb415 !important; 
    padding:10px;    
}
.wpcf7 label {
    text-transform:uppercase;
    margin-bottom:5px;
    display:none;
}
.wpcf7 select,
input[type=text], 
input[type=select],
input[type=email],
input[type=tel],
input[type=password] {
    border:0;
    box-sizing:border-box;
    padding:15px !important;
    border-bottom: 3px solid #fdb415 !important; 
    margin-bottom:1em;   
}
input[type=submit] {padding:20px;}
.wpcf7 .wpcf7-submit, .wpcf7 input[type=submit] {border:0;}
.wpcf7 select {color: #757575;}
.wpcf7 option:not(:first-of-type) {color: #333;}
.form-submit {width:100%; text-align:center;} 

.elementor-login button {
    margin:2em 0;
}
.elementor-lost-password,
.elementor-remember-me label {
    margin: auto;
    text-align: center;
}
.elementor-remember-me {
    background:#eee;
    padding:1em;
    border-radius:2px;
}
.elementor-remember-me input {
    margin-right:8px;
}

.wpcf7 .formwrap {
    width:100%;
}
.wpcf7 .formwrapcol {
    display:inline-block;
    box-sizing:border-box;    
    width:33%;
    padding:10px;
}
.wpcf7 .formwrapcol-1 {
    display:inline-block;
    box-sizing:border-box;    
    width:100%;
    padding:10px;
}
.wpcf7 .formwrapcol-2 {
    display:inline-block;
    box-sizing:border-box;    
    width:49.4%;
    padding:10px;
}
.wpcf7 .formwrapcol-2 p {
    display:none;
}
.wpcf7 .tarif-info {
    width:100%;
    margin: 30px 0 10px 0;    
    display:flex;
}
.wpcf7 .tarif-info-head {
    color: #333333;
    font-family: "Montserrat", Sans-serif;
    font-size: 2em;
    font-weight: 800;
    text-transform: uppercase;
    font-style: normal;
    text-decoration: none;
    line-height: 1.1em;
    letter-spacing: 0.3px;
    box-sizing:border-box;    
    margin-right:10px;
    border-radius:2px;    
    padding: 0.25em 0.5em;
    background-color: #fdb415;    
    width:auto; 
    vertical-align:middle;   
    display:inline-block;
}
.wpcf7 .tarif-info-price {
    background:#333;
    color:#fff;
    font-size: 1em; 
    padding:1em;   
    box-sizing:border-box;        
    border-radius:2px;
    flex: 1;
    display:inline-block;
}
.wpcf7 .tarif-info-cont {
    width:100%;
    box-sizing:border-box;       
    padding:20px;
    border-radius:2px;
    background:#eee;
}
.wpcf7 .tarif-info-cont b {

}
.wpcf7 .tarif-info-cont a {

}
.wpcf7 .form-checkbox {
    background:#eee;
    padding:1em;
    margin:2em 0;
    border-radius:2px;
}
.wpcf7 .form-checkbox input {
    margin:5px 0;
} 
.wpcf7 .form-checkbox label {
    display:block;
    text-transform:none; 
    font-weight:normal;
}

@media only screen and (max-width: 920px) {
    .wpcf7 .formwrapcol, 
    .wpcf7 .formwrapcol-2 {width:100%;} 
    .wpcf7 .form-submit input[type=submit] {width:100%;}        
}

/* -------------------------------------------------------------     Kursplan 

.tablepress.kursplan {
    table-layout: fixed;
    min-width:900px; 
    height:100%;
}   
#tablepress-3 {
    overflow-x:auto;
}
.tablepress.kursplan .row-1 {
    box-shadow:none;
    padding:20px;
}
.tablepress.kursplan .row-1 td {
    background-color: var(--brand-primary);
    padding:20px;
    border: 0px;
    text-align:center;
    font-size:1em;            
}
.tablepress.kursplan .row-2 td {
    padding:15px 5px 0 5px;        
}
.tablepress.kursplan tr {
    border: 0; 
    vertical-align:top;   
    height:100%;    
}
.tablepress.kursplan td {
    background-color: #fff;
    padding:10px 5px 0 5px;
    border: 0px solid #333;
    text-align:center;
    vertical-align:top;    
    height:100%;             
}
.tablepress.kursplan td a {
    display:inline-block;
    width:100%;
    height:100%;
    padding:20px 5px 15px 5px;
    border-radius:5px;    
}
.tablepress.kursplan td a:link,
.tablepress.kursplan td a:hover,
.tablepress.kursplan td a:active,
.tablepress.kursplan td a:focus {
    color:#333;  
    text-decoration:none; 
}
.tablepress.kursplan td a b {
    display:block;
        font-weight:700;
}
.tablepress.kursplan td a span {
    font-weight:normal;
}

.kred { background-color:#ff8e8e; border-bottom:2px solid #ff4040; }
.kred:hover { background-color:#ff4040; }

.korange { background-color:#ffc57a; border-bottom:2px solid #ffa32e; }
.korange:hover { background-color:#ffa32e; }

.kyellow { background-color:#fdf494; border-bottom:2px solid #ffd52b; }
.kyellow:hover { background-color:#ffd52b; }

.kgreen { background-color:#c2ff87; border-bottom:2px solid #9af243; }
.kgreen:hover { background-color:#9af243; }

.kblue { background-color:#bbe1ff; border-bottom:2px solid #7ec7ff; }
.kblue:hover { background-color:#7ec7ff; }

.kpink { background-color:#ffbbfe; border-bottom:2px solid #ff80fe; }
.kpink:hover { background-color:#ff80fe; }

.kviolet { background-color:#d796fd; border-bottom:2px solid #bc46ff; }
.kviolet:hover { background-color:#bc46ff; }



/* -------------------------------------------------------------     FAQ */

.faq {
    background:#fff;
    padding:10px 10px 20px 10px;
    border-radius:2px;
}
.faq a {
    color: var( --e-global-color-secondary );
    text-decoration: none;
}
.faq a:hover,
.faq a:active,
.faq a:focus  {
    color: var( --e-global-color-primary );
    text-decoration: none;
}