/* Füge hier Dein eigenes CSS ein */

.page-id-207949 button.wpcf7-form-control.wpcf7-submit.has-spinner.et_pb_button.et_pb_bg_layout_light
{ color: #e09900 !important;}



.page-id-89 div.et_pb_fullwidth_header_container:nth-child(2) > div:nth-child(1) > div:nth-child(1) > h1:nth-child(1) {background: rgba(224,153,0,0.7);}

/* Footer Icon before */

#footer-widgets .footer-widget li::before {
     top: 0px !important;
}

/* QUIZ Spam Contactform */

input.wpcf7-form-control.wpcf7-quiz {}


/* Exit Pop Up */
.modal-title {
    font-size: 18px;
    background-color: #ff0000 !important;
    color: #fff;
    padding: 10px;
    margin: 0;
    border-radius: 4px 4px 0 0;
    text-align: center;
}

.wbounce-modal .wbounce-modal-sub {
    border-radius: 4px;
    max-height: 95%;
    max-width: 95%;
    margin-top: 60px;
}

.wbounce-modal .wbounce-modal-sub {
    overflow: auto;
        overflow-x: auto;
    overflow-x: hidden;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
 
}

.et_password_protected_form, 
.et_password_protected_form > form:nth-child(3) 
{ width: 300px; 
  margin-left: 50px;
  margin-top: 10px;
  padding-bottom: 25px;
}



select {
    border: 1px solid #e3e3e3;
    color: #777;
    cursor: pointer;
    display: block;
    line-height: 14px;
    max-width: 100%;
    min-width: 100%;
    padding: 14px;
}

.kaestchen {
    border: 1px solid #e3e3e3;
    display: block;
    line-height: 14px;
    max-width: 100%;
    min-width: 100%;
    padding: 14px;
  margin-top: 25px;
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 0em;
}

/* Button im Bestellformular */
.page-id-207287 div.clearfix:nth-child(2) > p:nth-child(4) > input:nth-child(1)
{color: #ff0000 !important; 
border: 1px solid #e3e3e3;}

/*--- 2 Column Form Styles Start ---*/ 
#left 
{ width: 47%; 
  float: left; 
  margin-right:6%; } 

#right 
{ width: 47%; 
  float: left; } 

.clearfix:after 
{ content:"\0020"; 
  display:block; 
  height:0; 
  clear:both; 
  visibility:hidden; 
  overflow:hidden; 
  margin-bottom:10px; } 

.clearfix { display:block; } 
/*--- 2 Column Form Styles End ---*/


/* ICONS bei Dienstleistungen */


.page-id-28649 div.et_pb_row:nth-child(2) li::before {
    content: "\5a";
    position: absolute !important;
    font-family: 'ETmodules';
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: green;
    font-size: 20px;
    padding-right: -1em;
    top: 0px;
    left: -30px;
 }

/* ICONS bei DSVGO  */
.page-id-207287 .fa-ul li::before {
    content: "\5a";
    position: relative;
    font-family: 'ETmodules';
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: green;
    font-size: 30px;
    padding-right: -1em;
    top: 5px;
    left: -4px;
    padding-right: 3px;
 }





/* Homepage roter Hinweistexxt */
.page-id-89 .et_pb_text_0 > div:nth-child(1) > h5:nth-child(2)
{line-height: 1.5em !important;}


/* roter Text bei WordPress Dienstleistungen */
#menu-item-28755 a,
#menu-item-28776 a,
#menu-item-28807 a{
    color: #FF0000 !important;
}

/* Hoover Effect  */
    .gq-module-hover {
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0);
        -webkit-transition: all 0.6s;
        transition: all 0.6s;}
    .gq-module-hover:hover {
        -webkit-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
        box-shadow: 1px 5px 14px rgba(0, 0, 0, 3);
        z-index: 1;}

/* Ripple Out */
@-webkit-keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}
@keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}
.hvr-ripple-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0px 0px 1px transparent;
  position: relative;
}
.hvr-ripple-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 2px !important;
  top: -5px !important;
  right: -5px !important;
  bottom: -5px !important;
  left: -5px !important;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
.hvr-ripple-out:hover:before, .hvr-ripple-out:focus:before, .hvr-ripple-out:active:before {
  -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
}
/* End Ripple Out */

/* Outline Out */
.hvr-outline-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
}
.hvr-outline-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
}

/* End Outline Out */

/* Float Shadow */
.hvr-float-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-float-shadow:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(255, 255, 255, 0.35) 0%, transparent 80%);
  background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.35) 0%, transparent 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform, opacity;
  transition-property: transform, opacity;
}
.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  /* move the element up by 5px */
}
.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before {
  opacity: 1;
  -webkit-transform: translateY(5px);
  transform: translateY(5px);
  /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
}

/* End Float Shadow */



/* KOntakformular Aladin Abstand LI u Re */
.et_pb_text_10,
.et_pb_text_11,
.et_pb_text_12,
.et_pb_text_13,
.et_pb_text_14,
.et_pb_text_15
{
    width: 100%;
    padding: 25px;
}

#wpcf7-f207269-p207267-o1 {color: #fff;}


/*** Hide Sidebar for 404 pages ***/
.error404  #sidebar {display:none;}

h2 { color: #e09900 !important;
     text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7);
  font-weight: bold; }

/* Sidebar Breite Änderung */
@media only screen and ( min-width: 1100px ) {

    .et_right_sidebar #sidebar .et_pb_widget { 
        margin-right:30px !important;
    }
	.et_left_sidebar #sidebar .et_pb_widget { 
        margin-left:30px !important;
    }
	
    .et_right_sidebar #left-area, 
    .et_left_sidebar #left-area { 
        width:720px !important; /* 1020 - width */
    }
    .et_right_sidebar #main-content .container:before { 
        right:300px !important; /* width */
    }
    .et_left_sidebar #main-content .container:before { 
        left:300px !important; /* width */
    }
    .et_right_sidebar #sidebar,
	.et_left_sidebar #sidebar { 
        width:300px !important; /* width */
    }
}


.et_pb_widget_area_left {
    padding-left: 30px;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.et_pb_widget ul li a.active {
    color: #cc3399 !important;
}

.et_pb_fullwidth_header_subhead {
    display: block;
    color: #ffffff;
    text-shadow: 3px 3px 3px #000;
}

.et_pb_blurb .hvr-curl-bottom-right:hover
{background: #ccc; }


/* h4 Überschriften in groß */
.et_pb_blurb h4 {
text-transform: uppercase; 
 color: #ffa500;
 letter-spacing: .1em;
  border-bottom: 1px solid #f18825;
  padding-top: 15px;
    margin-bottom: 20px;

}

.et_pb_blurb h4:hover {
text-transform: uppercase; 
 color: #fff;
 letter-spacing: .1em;

}

.et_pb_blurb
{ color: #fff;}


/* Blurb Kästen Hover */
.blurb:hover {
background-color: #ffffff;
box-shadow: 0px 1px 18px rgba(230, 230, 230, 0.17);
-moz-box-shadow: 0px 1px 18px rgba(23, 23, 23, 0.17);
-webkit-box-shadow: 0px 1px 18px rgba(23, 23, 23, 0.21);
color: #333;
}

.blurb:hover a h4 {
color: #333;
}


/* Schriftzug Homepage */
div.et_pb_fullwidth_header_container:nth-child(2) > div:nth-child(1) > div:nth-child(1) > h1:nth-child(1),
#wordpress > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > h1:nth-child(1),
#referenzen > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > h1:nth-child(1),
.header-content > h1:nth-child(1)
{
  /* color: #FF8D03 !important; */
  color: #fff !important;
  text-shadow: 2px 2px 4px #000;
/* background-color:  rgba(0, 0, 0, 0.3);  */
  /* font-size: 40px; */
  padding: 30px;} 


/* Tooltip container */
.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
 
    /* Position the tooltip text - see examples below! */
    position: absolute;
    z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
    visibility: visible;
}




/* Orangene Header Höhe */
.et_pb_fullwidth_header {
   padding: 10px 0;
}

table.table-jb {width:25%;}


/* Border in Sidebar Navi unten */
.et_pb_widget ul li {
    margin-bottom: 0.5em;
    border-bottom: 1px dotted #ccc;
}

/* Währung bei Preistabelle */
.et_pb_dollar_sign {
    position: absolute;
    margin-left: -1.95em;
    font-size: 24px;
    font-weight: 400;
}


/*--- 2 Column Form Styles Start ---*/

#leftcf7 {
    width: 47%;
    float: left;
    margin-right:6%;
}
 
#rightcf7 {
    width: 47%;
    float: left;
}
 
.clearfix:after {
    content:"\0020";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
    overflow:hidden;
    margin-bottom:10px;
}
 
.clearfix {
    display:block;
}

/*--- 2 Column Form Styles End ---*/



/* Kontakt Anfrage Button im DIVI Style */


.wpcf7-text, .wpcf7-textarea, .wpcf7-captchar {
background-color: #eee !important;
border: none !important;
width: 100% !important;
 -moz-border-radius: 0 !important;
 -webkit-border-radius: 0 !important;
 border-radius: 0 !important;
font-size: 14px;
color: #999 !important;
padding: 16px !important;
 -moz-box-sizing: border-box;
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
}
.wpcf7-submit {
color: #fff !important;
margin: 8px auto 0;
cursor: pointer;
font-size: 20px;
font-weight: 500;
 -moz-border-radius: 3px;
 -webkit-border-radius: 3px;
 border-radius: 3px;
padding: 6px 20px;
line-height: 1.7em;
background: transparent;
border: 2px solid;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 -moz-transition: all 0.2s;
 -webkit-transition: all 0.2s;
 transition: all 0.2s;
}

.wpcf7-submit:hover { 
background-color: #FFB733; 
border-color:#fff; 
padding: 6px 20px !important; 
}

.wpcf7-submit:hover .hvr-icon-forward:before {
    content: "\f138";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.1s;
    transition-property: transform;
    transition-timing-function: ease-out;
}

body #page-container .et_pb_button_38 .wpcf7-submit  {
    color: #ccc !important;
    margin: 8px auto 0;
    cursor: pointer;
    font-size: 20px;
    font-weight: 500;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    padding: 6px 20px;
    line-height: 1.7em;
    background: transparent;
    border: 2px solid;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

body #page-container .et_pb_button_38 .wpcf7-submit:hover { 
background-color: #FFB733; 
border-color:#fff; 
padding: 6px 20px !important; 
}


/* Footer */

#main-footer .footer-widget h4 {
    color: #ffa500;
    border-bottom: solid 1px #fff;
    margin-bottom: 25px;
    text-transform: uppercase;
}

#footer-widgets .footer-widget li::before,
.et_pb_widget ul li::before 
{
content: "» " !important;
  color: #e09900 !important;
  border: none !important;
  top: 0 !important;
}

.mail::before {
   content: ""; 
    font-family: 'ETmodules';
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: #ccc;
    font-size: 20px;
    padding-right: 0.5em;
    top: 4px;
    left: 0;
  position: relative;
}

.phone::before {
  /* content: ""; */
  content:"";
position:relative;
     font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: #ccc;
    font-size: 20px;
    padding-right: 0.5em;
    top: 4px;
    left: 0;
  font-family: 'ETmodules';
}

.et_pb_scroll_top.et-pb-icon {
    background: #e09900;
 
}

*.icon-green {color: green;}

.fa-ul {list-style-image: none !important;
list-style-type:none !important;}

.fa-ul > li {
    position: relative;
    margin-bottom: 25px;
}

#left-area ul {
  line-height: 20px; }


/* MENÜ oben */

#top-menu li.mega-menu > ul > li > ul > li {
    width: 100%;
    margin: 0;
    border-bottom: dotted 1px #ccc;
}



/* PREISTABELLE */

.et_pb_dollar_sign {
    position: absolute;
    margin-left: -0.85em;
    font-size: 21px;
    font-weight: 400;
}



/* TOOLTIP */

a.tooltip {
    position: relative;
    text-decoration: none;
  }
  a.tooltip:after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 130%;
    left: -70%;
    background: #ffcb66;
    padding: 5px 15px;
    color: black;
    -webkit-border-radius: 10px;
    -moz-border-radius   : 10px;
    border-radius        : 10px;
   /* white-space: nowrap; */
    opacity: 0;
     /* At time of this creation, only Fx4 doing pseduo transitions */
    -webkit-transition: all 0.4s ease;
    -moz-transition   : all 0.4s ease;
  }
  a.tooltip:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-top: 20px solid #ffcb66;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    /* At time of this creation, only Fx4 doing pseduo transitions */
    -webkit-transition: all 0.4s ease;
    -moz-transition   : all 0.4s ease;
    opacity: 0;
    left: 30%;
    bottom: 90%;
  }
  a.tooltip:hover:after {
    bottom: 100%;
  }
  a.tooltip:hover:before {
    bottom: 70%;
  }
  /* a.tooltip:hover:after, a:hover:before {
  opacity: 1; }  */
  
  /* Tooltip nur für .tooltip-Links – NICHT global */
a.tooltip:hover:after,
a.tooltip:hover:before {
  opacity: 1;
}

/* /support – nur die „Deko“ im :before ausschalten, :after (Pfeil) zulassen */
.page-id-208034 .rsdl a.et_pb_button::before,
.page-id-208034 .rsdl a.et_pb_button:before {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}

/* Button-Grundstil erzwingen (keine graue Fläche, normale Höhe) */
.page-id-208034 .rsdl a.et_pb_button {
  background: transparent !important;
  display: inline-block !important;
  margin: 12px 0 !important;
  line-height: 1.2 !important;   /* kompakter */
  padding: 12px 24px !important; /* klassische Buttonhöhe */
}

/* Falls irgendwo noch global Tooltip-Pseudoelemente greifen: sicher neutralisieren */
.page-id-208034 .rsdl a.et_pb_button:hover:before { opacity: 0 !important; }

/* TAbs auf Seite Angebote */

/* -------------------------------------------- 
 ------ Blurbs as Tabs Custom Styling ------
 -------------------------------------------- */

/* Style the Blurbs Tabs */
#blurb-tabs .et_pb_column {
 display:flex;
 align-items:center;
 justify-content:center;
 flex-wrap:wrap;
}
#blurb-tabs .tab-title {
 width:25%;
}

/* Hover Styles for Blurb Tabs - Titles */
#blurb-tabs .tab-title {
 transition:all .3s ease-in-out;
}
#blurb-tabs .tab-title:hover {
 cursor:pointer; 
 background:#222; /* Tab hover background color */
}
#blurb-tabs .tab-title.active-tab {
 background:#D9DFE2; /* Active tab background color */
}
#blurb-tabs .tab-title.active-tab .et_pb_blurb_container h4 a {
 color:#000; /* Active tab title color */
}
#blurb-tabs .tab-title.active-tab .et-pb-icon {
 color:#666!important; /* Active tab icon color */
}

/* Tab Titles Mobile Styles */
@media (max-width: 767px ) {
 #blurb-tabs .tab-title {
 width:50%;
 }
 #blurb-tabs .tab-title .et_pb_main_blurb_image {
 margin-bottom:10px; /* Reduce icon bottom margin */
 }
}

@media (max-width: 479px ) {
 #blurb-tabs .tab-title {
 width:100%;
 }
 #blurb-tabs .tab-title .et_pb_blurb_content { /* This moves icon to the right */
 display:flex;
 align-items:center;
 justify-content:flex-start;
 }
 #blurb-tabs .tab-title .et_pb_main_blurb_image { /* Fix icon margins on mobile */
 margin-bottom:0;
 margin-right:30px;
 }
}

/* Hide the tabs content/sections */
.tab-content {
 display:none;
}

.tab-open {
display:block;
}

/* ====== joba24 Plugin-Block (seiten-spezifisch) ====== */
.joba-plugins{
  /* Brand-Farbe hier anpassen; lässt den Rest unberührt */
  --brand:#0C71C3; /* ggf. auf #946f42 ändern */
  font-family: Tahoma, sans-serif;
  font-size: 13px;
  line-height: 1.45;
}

/* Hinweisbox */
.joba-plugins .plugin-hinweis{
  border:1px solid #e5e7eb;
  background: color-mix(in srgb, var(--brand) 4%, #fff);
  padding:12px 14px;
  border-radius:6px;
  margin:0 0 10px 0;
}
.joba-plugins .plugin-hinweis h3{
  margin:0 0 6px 0;
  font-size:16px;
  line-height:1.3;
  background: color-mix(in srgb, var(--brand) 8%, #fff);
  padding:6px 8px;
  border:1px solid #e5e7eb;
  border-radius:4px;
}
.joba-plugins .plugin-hinweis p{ margin:6px 0; }
.joba-plugins .plugin-hinweis .lead{ font-weight:700; }
.joba-plugins .plugin-hinweis .note{
  border-left:3px solid var(--brand);
  padding-left:8px;
}

/* Tabelle */
.joba-plugins .table-plugins{ width:100%; border-collapse:collapse; }
.joba-plugins .table-plugins th,
.joba-plugins .table-plugins td{
  border:1px solid #e5e7eb;
  padding:8px 10px;
  text-align:left;
  vertical-align:top;
}

/* Spaltenbreiten Desktop */
.joba-plugins .table-plugins thead th:first-child{ width:28%; }
.joba-plugins .table-plugins thead th.th-cost{ width:18%; }

/* Header, Zebra, Hover, Footer */
.joba-plugins .table-plugins thead th{
  background: color-mix(in srgb, var(--brand) 8%, #fff);
  color:#111827;
  font-weight:700;
}
.joba-plugins .table-plugins tbody tr:nth-child(even) td{
  background: color-mix(in srgb, var(--brand) 3%, #fff);
}
.joba-plugins .table-plugins tbody tr:hover td{
  background: color-mix(in srgb, var(--brand) 6%, #fff);
}
.joba-plugins .table-plugins tfoot th{
  background: color-mix(in srgb, var(--brand) 12%, #fff);
  font-weight:700;
}

/* Badges & Links */
.joba-plugins .badge{
  display:inline-block;
  padding:4px 8px;
  border-radius:999px;
  background: color-mix(in srgb, var(--brand) 18%, #fff);
  border:1px solid color-mix(in srgb, var(--brand) 35%, #fff);
  font-size:11px;
  margin-left:4px;
	margin-top: 5px;
}
.joba-plugins .table-plugins .name{ font-weight:700; }

.joba-plugins .table-plugins a{
  color:var(--brand);
  text-decoration:none;
}
.joba-plugins .table-plugins a:hover{ text-decoration:underline; }
/* Externes Link-Icon (ohne SVG) */
.joba-plugins .table-plugins a.ext::after{
  content:" ";
  font-size:11px;
  opacity:.9;
}

/* Mobile: 2-Spalten-Layout (Kosten wandern unter die Beschreibung) */
.joba-plugins .cost-mobile{
  display:none;
  font-size:12px;
  margin-top:5px;
  font-weight:600;
}

@media (max-width:768px){
  .joba-plugins .table-plugins th,
  .joba-plugins .table-plugins td{
    padding:7px 9px;
  }

  .joba-plugins .table-plugins thead .th-cost,
  .joba-plugins .table-plugins tbody .col-cost,
  .joba-plugins .table-plugins tfoot .col-cost{
    display:none !important;
  }
  .joba-plugins .cost-mobile{ display:block !important; }
  .joba-plugins .table-plugins tbody td:first-child{ width:42%; }
  .joba-plugins .badge{ padding:2px 6px; font-size:11px; }
  .joba-plugins .table-plugins a{ white-space:normal; }
  .joba-plugins .table-plugins td{ word-break:break-word; }
}

@media (max-width:420px){
  .joba-plugins .table-plugins tbody td:first-child{ width:46%; }
}

