/* 
Theme Name: GRT Hello Elementor
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Childtheme
Author: Gley Rissom Thieme
Author URI: https://grt-agentur.de
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
*/


/* -------------------------------- */
/* General 							*/
/* -------------------------------- */
.mp-some-l .elementor-grid-item{
	padding-left:3px!important;
}
.mp-some-r .elementor-grid-item{
	padding-right:3px;
}
.cmplz-placeholder-parent {
	height: 300px!important;
}
h1 span{
	font-weight:300!important;
	display:block;
}
h2 span{
	font-weight:300!important;
	display:block;
}
h3 span{
	font-weight:300!important;
	display:block;
}
h4 span{
	font-weight:300!important;
	display:block;
}
p strong{
    font-weight:700;
}
p:last-child {
	margin-bottom: 0px;
}
.anker{
    display:block;
    position:relative;
    top:-75px;
}
/* -------------------------------- */
/* Headerslider + Unterseitenslider */
/* -------------------------------- */
.slider-kompetenz .swiper-slide-contents {
background-color: rgba(255, 255, 255, 0.85);
padding: 20px;
}

.slider-kompetenz span{
    font-size:26px;
    line-height:28px;
}

.slider-home p{
	color:black!important;
	text-transform: uppercase;
	font-size:40px!important;
	line-height:40px!important;
}

.slider-home h1{
	margin:0px!important;
}

.slider-home span{
	display:block;
	font-weight:300!important;
}

.slider-home .elementor-slide-heading {
    margin-bottom: 0px!important;
    margin-top: 0px!important;
}

.slider-home .swiper-slide{
    height:calc(75vh - 195px)!important;
    max-height:600px!important;
    min-height:350px!important;
}

.slider-home .swiper-slide-contents {
background-color: rgba(255, 255, 255, 0.85);
padding: 20px;
}

.slider-home .swiper-slide-inner{
    margin-left:20px!important;
}


.slider-unterseite .swiper-slide{
    height:calc(50vh - 195px)!important;
    max-height:420px!important;
    min-height:350px!important;
}


.slider-unterseite .swiper-slide-contents {
background-color: rgba(255, 255, 255, 0.85);
padding: 20px;
}

.slider-unterseite .swiper-slide-inner{
    margin-left:20px!important;
}

@media only screen and (max-width: 768px) {
	.slider-kompetenz span{
	    font-size:20px!important;
	    line-height:22px!important;
	}
	.slider-home .swiper-slide{
	    height:calc(80vh - 75px)!important;
	    max-height:600px!important;
	    min-height:350px!important;
	}
	.slider-home .swiper-slide-inner{
	    margin-left:0px!important;
	}
	.slider-unterseite .swiper-slide{
		height:calc(60vh - 75px)!important;
	    max-height:420px!important;
	    min-height:350px!important;
	}
	.slider-unterseite .swiper-slide-inner{
	    margin-left:0px!important;
	}
	.slider-home p{
		font-size:24px!important;
		line-height:24px!important;
	}
}

/* -------------------------------- */
/* Alle Slider Chevrons				*/
/* -------------------------------- */
.elementor-swiper-button-prev{
	width:40px;
	height:40px;
}
.elementor-swiper-button-prev svg{
	opacity:0;
}
.elementor-swiper-button-prev:before{
    position:absolute;
    content:'';
	height:40px;
    width:40px;
    background-image:url(https://mp-master.project-viewport.de/wp-content/uploads/2024/01/slider_arrow-l.png);
    background-size:contain;
    background-repeat: no-repeat;
    background-position:center center;
    transition-duration: 0.5s;
}
.elementor-swiper-button-prev:hover:before{
    transform: scale(1.5);
}
.elementor-swiper-button-next{
	width:40px;
	height:40px;
}
.elementor-swiper-button-next svg{
	opacity:0;
}
.elementor-swiper-button-next:before{
    position:absolute;
    content:'';
	height:40px;
    width:40px;
    background-image:url(https://mp-master.project-viewport.de/wp-content/uploads/2024/01/slider_arrow-r.png);
    background-size:contain;
    background-repeat: no-repeat;
    background-position:center center;
    transition-duration: 0.5s;
}
.elementor-swiper-button-next:hover:before{
    transform: scale(1.5);
}

/* -------------------------------- */
/* TEAM Automatischer Slash			*/
/* -------------------------------- */
.employee::before{
    position:absolute;
    content:'';
    width:100%;
    top:0px;
    right:0px;
    height:100%;
    background-repeat:no-repeat;
    background-image:url("https://mp-master.project-viewport.de/wp-content/uploads/2024/01/slash_employee_02.png");
    background-size:contain;
    background-position: right;
    opacity:1;
}

/* -------------------------------- */
/* Teaser							*/
/* -------------------------------- */
.mp-copy{
	transition-duration: 0.5s;
	color:black!important;
}
.mp-button {
    background-color:var( --e-global-color-primary );
    transition-duration: 0.5s;
}
.mp-image{
    background-blend-mode: multiply;
    background-color:#ffffff
    transition-duration: 0.5s;;
}
.mp-teaser:hover{
    transform: scale(1.00);
    background-color:#ffffff!important;
    cursor: pointer;
}
.mp-teaser:hover .mp-copy{
	color:var( --e-global-color-primary );
}
.mp-teaser:hover .mp-button{
	background-color:var( --e-global-color-accent )!important;
}
.mp-teaser:hover .mp-image{
	background-color:#93c4e6!important;
}

/* -------------------------------- */
/* Produkt Kachel					*/
/* -------------------------------- */
.mp-produkt-kachel .elementor-cta__image{
    position:absolute!important;
    bottom:20px;
   left:calc(100% - 45px);
}
.mp-produkt-kachel .elementor-cta__image img{
    transition-duration: 0.5s;
}
.mp-produkt-kachel .elementor-cta__bg-overlay{
    background-image: linear-gradient(#8392a6,#ffffff 100%);
    -webkit-backface-visibility: hidden;
    mix-blend-mode: multiply;
}
.mp-produkt-kachel .elementor-cta__bg-overlay:after{
    background-image: linear-gradient(rgba(0, 136, 205, 0.5), rgba(0, 136, 205, 0.5));
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.5s ease-out;
    z-index: 2;
    opacity: 0;
}
.mp-produkt-kachel:hover .elementor-cta__bg-overlay:after{
	opacity: 1;
}
.mp-produkt-kachel:hover .elementor-cta__image img{
    transform: scale(1.2);
}

/* -------------------------------- */
/* Produkt-Carousel					*/
/* -------------------------------- */
.mp-produkt-carousel .elementor-carousel-image-overlay{
    opacity:1!important;
	text-align:left;
	align-items: flex-start;
	justify-content:left!important;
}
.mp-produkt-carousel .elementor-swiper-button-next:before{
    background-image:url(https://mp-master.project-viewport.de/wp-content/uploads/2024/01/slider_arrow-r-w.png);
}
.mp-produkt-carousel .elementor-swiper-button-prev:before{
	background-image:url(https://mp-master.project-viewport.de/wp-content/uploads/2024/01/slider_arrow-l-w.png);
}






/* -------------------------------- *//* -------------------------------- *//* -------------------------------- *//* -------------------------------- *//* -------------------------------- *//* -------------------------------- *//* -------------------------------- */
/* -------------------------------- */
/* Barriefreiheit Schnellanpassung	*/
/* -------------------------------- */


:target {
  scroll-margin-top: 75px!important; /* Höhe deines Sticky-Menüs */
}


/* -------------------------------- */
/* farben für Farbumschalter definieren	*/
/* -------------------------------- */


    :root {
      --e-global-color-primary: #0088cd; /* Martens-Prahl Blau */
      --e-global-color-secondary: #FFFFFF; /* Weiss */
      --e-global-color-accent: #93C4E6; /* Helles Blau für Hoover Effekte */
      --e-global-color-text: #000000; /* Schwarze Fliesstextfarbe */
      --cmplz_button_accept_background_color: #0088cd;
      --cmplz_button_accept_border_color: #0088cd;
      --cmplz_button_deny_background_color: #0088cd;
      --cmplz_button_deny_border_color: #0088cd;
      --cmplz_button_settings_background_color: #0088cd;
      --cmplz_button_settings_border_color: #0088cd;
      --cmplz_hyperlink_color:#0088cd;
      
    }

    body.color-barrierefrei {
      --e-global-color-primary: #000000; /* Black for Accessibility */
      --e-global-color-secondary: #FFFFFF; /* Weiss */
      --e-global-color-accent: #666362; /* Dark Grey for Accessibility  */
      --e-global-color-text: #000000; /* Text bleibt schwarz */
      --cmplz_button_accept_background_color: #000000;
      --cmplz_button_accept_border_color: #000000;
      --cmplz_button_deny_background_color: #000000;
      --cmplz_button_deny_border_color: #000000;
      --cmplz_button_settings_background_color: #000000;
      --cmplz_button_settings_border_color: #000000;
      --cmplz_hyperlink_color:#000000;
    }


/* -------------------------------- */
/* Footer Overlay	*/
/* -------------------------------- */

.footer-hintergrund {
  position: relative;
  z-index: 0;
}

.footer-hintergrund::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  transition: background 0.3s ease;
  z-index: 0;
  pointer-events: none;
}


body.color-barrierefrei .footer-hintergrund::before {
  background: rgba(0, 0, 0, 1);
}



/* -------------------------------- */
/* Cta	*/
/* -------------------------------- */


body.color-barrierefrei .elementor-cta:focus .elementor-cta__bg-overlay{

  background-color: var(  --e-global-color-secondary )!important;
} 
body.color-barrierefrei .elementor-cta:focus .elementor-content-item{
	color: var(  --e-global-color-text );
	}
	
body.color-barrierefrei .elementor-cta: .elementor-cta__bg-overlay {
  mix-blend-mode: normal;
}

body.color-barrierefrei .elementor-cta:focus .elementor-icon svg {
	fill: var(  --e-global-color-text )!important;
}

body.color-barrierefrei .elementor-cta .elementor-cta__image img {
  background-color: var(--e-global-color-text) !important;
  outline:5px solid var(--e-global-color-text);
}

/* -------------------------------- */
/* Kontaktformular	*/
/* -------------------------------- */


.mp_kontaktformular input:focus{
     box-sizing: border-box!important;
    border: 3px solid;
    height:2.5rem!important;
}

.mp_kontaktformular input{
     height:2.5rem!important;
}

.mp_kontaktformular .elementor-field-textual:focus{
     box-sizing: border-box!important;
    border: 3px solid;
}

.mp_kontaktformular select:focus{
     box-sizing: border-box!important;
    border: 3px solid;
    height:2.5rem!important;
}

.mp_kontaktformular select{
     height:2.5rem!important;
}


.mp_kontaktformular #form-field-datenschutz_zustimmung{
     height:0.8rem!important;
}

.mp_kontaktformular button:focus{
     box-sizing: border-box!important;
    border: 3px solid;
}

/* -------------------------------- */
/* * Produkt Kachel / Teaserkachel (die mit dem weissen Chevron) */
/* -------------------------------- */



.elementor-cta {
  border: 3px solid transparent;
  box-sizing: border-box;
  transition: border-color 0.2s ease;
}

.elementor-cta:focus {
  border-color: var( --e-global-color-text );
}


body.color-barrierefrei .mp-produkt-kachel .elementor-cta__bg-overlay:after {
  opacity: 1;
  background-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 1));
}

body.color-barrierefrei .mp-produkt-kachel a:focus .elementor-cta__bg-overlay {
  mix-blend-mode: normal;
}

body.color-barrierefrei .mp-produkt-kachel a:hover .elementor-cta__bg-overlay {
  mix-blend-mode: normal;
}

body.color-barrierefrei .mp-produkt-kachel a:focus .elementor-cta__bg-overlay:after {
  background-image: linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 1));
}

body.color-barrierefrei .mp-produkt-kachel a:hover .elementor-cta__bg-overlay:after {
  background-image: linear-gradient(to bottom, var(--e-global-color-accent), var(--e-global-color-accent));
}


/* -------------------------------- */
/* * Produkt Carousel bei Barrierfreiheit ausblenden */
/* -------------------------------- */


body.color-barrierefrei .mp-produkt-carousel
{
	display:none;
}


/* -------------------------------- */
/* * Texte und links deutlicher machen */
/* -------------------------------- */

body.color-barrierefrei ul li a
{
	font-weight:700;
	text-decoration: underline;
}

body.color-barrierefrei p a
{
	font-weight:700;
	text-decoration: underline;
}

body.color-barrierefrei p 
{
	font-size:1.25rem;
	line-height:1.75rem;
}

body.color-barrierefrei .cmplz-links a{
	font-size:1rem!important;
	line-height:1.25rem;
}

body.color-barrierefrei .cmplz-accept:focus, .cmplz-deny:focus, .cmplz-view-preferences:focus, .cmplz-save-preferences:focus{
	color: var( --e-global-color-text )!important;
	background-color:var( --e-global-color-secondary )!important;
}


body.color-barrierefrei .cmplz-accept:hover, .cmplz-deny:hover, .cmplz-view-preferences:hover, .cmplz-save-preferences:hover{
	color: var( --e-global-color-text )!important;
	background-color:var( --e-global-color-secondary )!important;
}


body.color-barrierefrei .cmplz-title {
	font-size:1.25rem!important;
	line-height:1.25rem;
}

body.color-barrierefrei .swiper-slide-contents{
	background-color: rgba(255, 255, 255, 1);
}


/* -------------------------------- */
/* * barrierfreiheit Linkliste */
/* -------------------------------- */
.mp-kompetenzen-linkliste a:hover{
    color:var( --e-global-color-accent )!important;
    hyphens:auto;
}

/* -------------------------------- */
/* * Style für Fokussierung von IDs auf der Kompetenzseite */
/* -------------------------------- */

.trampolin__job-link:focus{
  outline: 3px solid var( --e-global-color-text ); /* oder eine feste Farbe, z. B. #000 */
  outline-offset: 0.25rem;
}


[id]:focus {
  outline: 3px solid var( --e-global-color-text ); /* oder eine feste Farbe, z. B. #000 */
  outline-offset: 0.25rem;
}

[id]:target {
      scroll-margin-top: 2rem; /* Höhe des Sticky-Headers anpassen */
}

/* -------------------------------- */
/* * Bedarfsanaylse Farbumschalter Einstellungen */
/* -------------------------------- */



body.color-barrierefrei .grt__b-form-step .grt__b-form-step-answer ul li input[type="radio"] + label span, .grt__b-form-step .grt__b-form-step-answer ul li input[type="checkbox"] + label span {
	font-size:1.2rem!important;
	line-height:1.55rem!important;
}

body.color-barrierefrei .grt__b-form{
	font-size:1.25rem!important;
	line-height:1.75rem!important;
}

body.color-barrierefrei .grt__b-form-step-form-summary-item-header:focus{
color:	var( --e-global-color-secondary );
}

body.color-barrierefrei .grt__b-form-step-form-summary-item-header:hover{
color:	var( --e-global-color-secondary );
}

body.color-barrierefrei .grt__b-form-progress ul li.active{
	color: var( --e-global-color-text );
	border-color: var( --e-global-color-text );
}

body.color-barrierefrei .grt__b-form-step-answer ul li{
	
  border: 2px solid var( --e-global-color-text );
  color: var( --e-global-color-text );

}


/* -------------------------------- */
/* * Datenschutz Barrierefreie Tabellen CSS*/
/* -------------------------------- */

/* Baseline */
.a11y-table {
  width: 100%;
  border-collapse: collapse;
  font: inherit;
}
.a11y-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: .5rem;
}
.a11y-table th,
.a11y-table td {
  border: 1px solid #ddd;
  padding: .6rem .75rem;
  vertical-align: top;
   text-align: left;
}
.a11y-table thead th {
  background: var( --e-global-color-primary );
  color: var( --e-global-color-secondary );
  text-align: left;
}

.a11y-table caption{
    min-width:320px;
    font-weight:400;
    font-style: italic;
}


/* Responsive Pattern */
@media (max-width: 720px) {
  .a11y-table.a11y-table--responsive thead {
    position: absolute !important;
    width: 1px; height: 1px; overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); white-space: nowrap;
    border: 0; padding: 0; margin: -1px;
  }
  .a11y-table.a11y-table--responsive,
  .a11y-table.a11y-table--responsive tbody,
  .a11y-table.a11y-table--responsive tr,
  .a11y-table.a11y-table--responsive td,
  .a11y-table.a11y-table--responsive th {
    display: block;
    width: 100%;
  }
  .a11y-table.a11y-table--responsive tr {
    border: 1px solid #e6e6e6;
    border-radius: .5rem;
    padding: .5rem .75rem;
    margin-bottom: .75rem;
    background: #fff;
  }
  .a11y-table.a11y-table--responsive th[scope="row"],
  .a11y-table.a11y-table--responsive td {
    border: 0;
    border-bottom: 1px solid #eee;
    padding: .5rem 0;
  }
  .a11y-table.a11y-table--responsive tr > :last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  .a11y-table.a11y-table--responsive td::before,
  .a11y-table.a11y-table--responsive th[scope="row"]::before {
    content: attr(data-label) ":\00A0";
    font-weight: 600;
    display: inline;
  }
  .a11y-table.a11y-table--responsive th[scope="row"] {
    font-weight: 700;
  }
}


body.color-barrierefrei .a11y-table th,
body.color-barrierefrei .a11y-table td {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
