@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/material-icons.woff2') format('woff2');
}

body.access-cursor-enabled,
body.access-cursor-enabled label{
  cursor: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyOS4xODhweCIgaGVpZ2h0PSI0My42MjVweCIgdmlld0JveD0iMCAwIDI5LjE4OCA0My42MjUiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI5LjE4OCA0My42MjUiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxnPjxwb2x5Z29uIGZpbGw9IiNGRkZGRkYiIHN0cm9rZT0iI0Q5REFEOSIgc3Ryb2tlLXdpZHRoPSIxLjE0MDYiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRzPSIyLjgsNC41NDkgMjYuODQ3LDE5LjkwMiAxNi45NjQsMjIuNzAxIDI0LjIzOSwzNy43NDkgMTguMjc4LDQyLjAxNyA5Ljc0MSwzMC43MjQgMS4xMzgsMzUuODA5ICIvPjxnPjxnPjxnPjxwYXRoIGZpbGw9IiMyMTI2MjciIGQ9Ik0yOS4xNzUsMjEuMTU1YzAuMDcxLTAuNjEzLTAuMTY1LTEuMjUzLTAuNjM1LTEuNTczTDIuMTY1LDAuMjU4Yy0wLjQyNC0wLjMyLTAuOTg4LTAuMzQ2LTEuNDM1LTAuMDUzQzAuMjgyLDAuNDk3LDAsMS4wMywwLDEuNjE3djM0LjE3MWMwLDAuNjEzLDAuMzA2LDEuMTQ2LDAuNzc2LDEuNDM5YzAuNDcxLDAuMjY3LDEuMDU5LDAuMjEzLDEuNDgyLTAuMTZsNy40ODItNi4zNDRsNi44NDcsMTIuMTU1YzAuMjU5LDAuNDgsMC43MjksMC43NDYsMS4yLDAuNzQ2YzAuMjM1LDAsMC40OTQtMC4wOCwwLjcwNi0wLjIxM2w2Ljk4OC00LjU4NWMwLjMyOS0wLjIxMywwLjU2NS0wLjU4NiwwLjY1OS0xLjAxM2MwLjA5NC0wLjQyNiwwLjAyNC0wLjg4LTAuMTg4LTEuMjI2bC02LjM3Ni0xMS4zODJsOC42MTEtMi43NDVDMjguNzA1LDIyLjI3NCwyOS4xMDUsMjEuNzY4LDI5LjE3NSwyMS4xNTV6IE0xNi45NjQsMjIuNzAxYy0wLjQyNCwwLjEzMy0wLjc3NiwwLjUwNi0wLjk0MSwwLjk2Yy0wLjE2NSwwLjQ4LTAuMTE4LDEuMDEzLDAuMTE4LDEuNDM5bDYuNTg4LDExLjc4MWwtNC41NDEsMi45ODVsLTYuODk0LTEyLjMxNWMtMC4yMTItMC4zNzMtMC41NDEtMC42NC0wLjk0MS0wLjcyYy0wLjA5NC0wLjAyNy0wLjE2NS0wLjAyNy0wLjI1OS0wLjAyN2MtMC4zMDYsMC0wLjU4OCwwLjEwNy0wLjg0NywwLjMyTDIuOCwzMi41OVY0LjU0OWwyMS41OTksMTUuODA2TDE2Ljk2NCwyMi43MDF6Ii8+PC9nPjwvZz48L2c+PC9nPjwvc3ZnPg==), auto !important;
}
body.access-cursor-enabled .uk-input,
body.access-cursor-enabled .uk-checkbox,
body.access-cursor-enabled .uk-button,
body.access-cursor-enabled button,
body.access-cursor-enabled a,
body.access-cursor-enabled a:link,
body.access-cursor-enabled a:visited,
body.access-cursor-enabled a:hover,
body.access-cursor-enabled a:active {
  cursor: url("data:image/svg+xml,%3Csvg width='45px' height='45px' viewBox='0 0 18 23' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;'%3E%3Cg transform='matrix(1,0,0,1,-3.27856,-0.28133)'%3E%3Cg transform='matrix(1,0,0,1,-0.0920716,-1.71867)'%3E%3Cpath d='M17.457,23.439C15.784,24.436 12.24,24.853 9.838,23.408C7.435,21.962 4.083,14.827 4.083,14.827C3.945,14.627 3.871,14.389 3.871,14.145C3.871,13.487 4.412,12.945 5.071,12.945C5.353,12.945 5.627,13.045 5.843,13.227L8.5,15.5L8.5,4C8.5,3.177 9.177,2.5 10,2.5C10.823,2.5 11.5,3.177 11.5,4L11.5,8.5L13.5,8.5C14.049,8.5 14.5,8.951 14.5,9.5L16.5,9.5C17.049,9.5 17.5,9.951 17.5,10.5L18.5,10.5C19.597,10.5 20.5,11.403 20.5,12.5L20.5,15.1C20.5,16.029 20.37,16.954 20.115,17.848C20.115,17.848 19.783,22.052 17.457,23.439Z' style='fill:white;fill-rule:nonzero;stroke:black;stroke-width:1px;'/%3E%3C/g%3E%3Cpath d='M14.439,7.902L14.439,9.902' style='fill:none;fill-rule:nonzero;stroke:black;stroke-width:1px;'/%3E%3Cpath d='M11.402,6.848L11.402,9.848' style='fill:none;fill-rule:nonzero;stroke:black;stroke-width:1px;'/%3E%3Cpath d='M17.377,8.871L17.377,10.871' style='fill:none;fill-rule:nonzero;stroke:black;stroke-width:1px;'/%3E%3C/g%3E%3C/svg%3E") 10 5, pointer !important;
}


/* Button Styling */
#accessibility-button {
    position: fixed;
    bottom: 11px;
    left: 10px;
    z-index: 9999999;
    padding:0;
    height: 45px;
    background: #4054b2;
}
@media (max-width: 959px) {
  #accessibility-button {
      right: auto;
      left: 5px;
      bottom: 45px;
  }
}
#accessibility-modal input[type="checkbox"]:focus-visible{
  outline: 4px solid #E10019;
}
#accessibility-button i,
#accessibility-modal i.material-icons{
  font-family: 'Material Icons';
  font-style: normal;
}
#accessibility-modal label{
  display: flex;
  align-items: center;
  align-items: flex-start;
}
#accessibility-modal label i{
  font-size:30px;
}
#accessibility-modal label input[type="checkbox"]{
  width: 30px;
  height:30px;
  margin-left: 10px;
  margin-right: 10px;
  flex: 0 0 30px;
  margin-top:7px;
}
#accessibility-modal label span{
  margin-top:7px;
}
body.large-font #accessibility-modal label span{
  margin-top:0px;
}
body.large-font #accessibility-modal label input[type="checkbox"]{
  margin-right: 20px;
}
#accessibility-modal label input[type="checkbox"]:checked{
  background-size: 22px;
}
#accessibility-modal label input[type="checkbox"]{
  
}
#accessibility-button i:before {
    content: "accessible"!important;
}
#accessibility-controls{
  display: flex;
  justify-content: space-between;
}
body.large-font #accessibility-controls i svg{
  width: 30px;
  top: -2px;
  position: relative;
}
body.large-font #accessibility-controls button{
  padding-top: 10px;
  padding-bottom: 10px;
}
#accessibility-controls button i{
  position: relative;
  top:  -1px;
}
#accessibility-controls .uk-modal-close{
  
}
#accessibility-controls #reset-accessibility{
  
}
.modal-content {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    max-width: 300px;
    width: 90%;
}

#tts-enabled {
    
}
label[for="tts-enabled"] {
    display: block;
    margin-top: 10px;
}



/* Accessibility Klassen */
html.invert-colors{
    filter: invert(100%);
}

html.invert-colors img,
html.invert-colors .uk-background-norepeat,
html.invert-colors .wv-grid-inner{
    filter: invert(100%);
}
html.invert-colors #accessibility-button i{
    background-color: #000 !important;
}
body.large-font { 
  font-size: 1.38em;
  text-align: left;
 }
body.large-font .uk-panel:not(.el-overlay) { 
  text-align: left;
 }
body.large-font p[style="text-align: justify;"],
body.large-font .uk-text-justify { 
  text-align: left !important;
 }
body.large-font #accessibility-modal .uk-modal-dialog{ 
  width: 700px;
 }
body.large-font #accessibility-modal .uk-modal-dialog small{ 
  line-height: 24px;
  display: block;
  margin-bottom: 10px;
 }
body.large-font .lead, body.large-font .uk-text-lead{ 
  font-size: 32px;
 }
body.large-font .wv-image-text a{ 
  font-size: 16px;
 }
body.large-font .uk-navbar-primary .uk-navbar-nav>li>a{
  /*font-size: 22px!important;*/
}
body.large-font .uk-navbar-primary .uk-navbar-nav>li>a::before{
  /*bottom:0;*/
}
body.large-font .uk-navbar-right{
      max-width: 100%;
}
body.large-font .uk-navbar-right .uk-navbar-nav{
    overflow: auto;
    margin-left:10px;
    margin-right: 10px;
}
body.large-font .uk-navbar-dropdown-nav{
    font-size: 22px;
    line-height: 1.4;
}
body.large-font .tm-header .wv-dropdown-1 .uk-navbar-dropdown-nav>li>a{
    line-height: 1.5;
}
body.large-font .uk-navbar-dropdown{
    overflow: auto;
    max-height: 60vh;
}

body.large-font .uk-accordion .el-title{
  font-size: 24pt;
}

body.large-font .uk-slider .el-meta,
body.large-font .uk-slider .el-title{
  font-size: 22pt;
  text-align: left;
}
body.large-font .wv-grid-item .wv-grid-inner .header .wv-h3{
  font-size: 22pt;
}
body.large-font .uk-button{
  font-size: 22pt;
}
body.large-font .section--footer .uk-h3, body.large-font .section--footer h3.el-title{
  font-size: 20pt;
  text-align: left;
}
body.large-font .uk-nav-default a{
  font-size: 16pt;
  text-align: left;
}
body.large-font .contact-modal-trigger .uk-icon svg{
  width: 30px;
}
body.large-font .section--footer .uk-h3, body.large-font .section--footer h3.el-title{
  font-size: 16pt;
}
body.large-font .uk-breadcrumb>*>*{
  font-size: 20px;
}



body.large-font .extra-text-input label{
  font-size: 20px;
}
body.large-font .zusammenfassung-hauptpunkt span{
  font-size: 16px;
}
body.large-font .zusammenfassung-hauptpunkt p{
  font-size: 20px;
}

body.large-font .kontaktdaten label, body.large-font #bemusterungsrabatt-container label{
  font-size: 20px;
}

body.high-contrast .kontaktdaten label, body.large-font #bemusterungsrabatt-container label{
  color: #000;
}
/****************************/
body.high-contrast .uk-section-primary {
    background: #004f38;
}
body.high-contrast .uk-section-secondary {
    background: #004f38;
}
body.high-contrast .uk-section-primary:not(.uk-preserve-color) .uk-text-secondary,
body.high-contrast .uk-section-primary p,
body.high-contrast .uk-section-primary a,
body.high-contrast .uk-section-secondary p,
body.high-contrast .uk-section-secondary a{
    color: #fff !important;
}
body.high-contrast .uk-section-secondary a:hover{
    color: #d3ff4f !important
}
body.high-contrast .uk-section-primary .uk-tile-secondary,
body.high-contrast .uk-section-secondary .uk-tile-secondary,
body.high-contrast .uk-section-primary .uk-tile-primary,
body.high-contrast .uk-section-secondary .uk-tile-primary{
  background-color: #004f38 !important;
  color: #fff !important;
}

body.high-contrast .uk-tile-primary {
    background-color: #004f38 !important;
    color: #fff !important;
}
body.high-contrast .uk-tile-primary .el-title,
body.high-contrast .uk-tile-primary h1,
body.high-contrast .uk-tile-primary .uk-h1,
body.high-contrast .uk-tile-primary h2,
body.high-contrast .uk-tile-primary .uk-h2,
body.high-contrast .uk-tile-primary h3,
body.high-contrast .uk-tile-primary .uk-h3,
body.high-contrast .uk-tile-primary h4,
body.high-contrast .uk-tile-primary .uk-h4,
body.high-contrast .uk-tile-primary h5,
body.high-contrast .uk-tile-primary .uk-h5{
    color: #fff !important;
}
body.high-contrast .uk-text-meta {
    color: #000;
}
body.high-contrast .uk-light .uk-dotnav>*>* {
    border: 1px solid #000;
    height: 5px;
}
body.high-contrast .uk-dotnav>li:not(.uk-active)>a {
    background-color: #fff !important;
}
body.large-font .uk-dotnav>*>* {
    height: 8px;
    width: 20px;
}
body.high-contrast .uk-section-primary.uk-preserve-color .h1,
body.high-contrast .uk-section-primary.uk-preserve-color .h2,
body.high-contrast .uk-section-primary.uk-preserve-color .h3,
body.high-contrast .uk-section-primary.uk-preserve-color .h4,
body.high-contrast .uk-section-primary.uk-preserve-color .h5,
body.high-contrast .uk-section-primary.uk-preserve-color .h6,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h1,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h2,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h3,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h4,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h5,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-h6,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-2xlarge,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-3xlarge,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-large,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-medium,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-small,
body.high-contrast .uk-section-primary.uk-preserve-color .uk-heading-xlarge,
body.high-contrast .uk-section-primary.uk-preserve-color h1,
body.high-contrast .uk-section-primary.uk-preserve-color h2,
body.high-contrast .uk-section-primary.uk-preserve-color h3,
body.high-contrast .uk-section-primary.uk-preserve-color h4,
body.high-contrast .uk-section-primary.uk-preserve-color h5,
body.high-contrast .uk-section-primary.uk-preserve-color h6{
  color: #fff;
}

body.high-contrast .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary{
  color: #000 !important;
}
body.high-contrast .section--home-hero .uk-slideshow-items .el-item .el-title h1, body.high-contrast .section--home-hero .uk-slideshow-items .el-item .el-title{
  background: #fff;
}
body.high-contrast .wv-grid-inner .overlay,
body.high-contrast .uk-card-primary{
    background-color: #004f38 !important;
}
body.high-contrast .wv-floating-buttons-inner{
    background-color: #004f38 !important;
    border:1px solid #fff;
}
body.high-contrast .uk-navbar-nav a{
    color: #004f38 !important;
}
body.high-contrast .uk-navbar-nav>li>a::before{
    background-color: #004f38 !important;
}
body.high-contrast .uk-link, body.high-contrast a {
    color: #004f38;
}
body.high-contrast .uk-link, body.high-contrast a {
    color: #004f38;
}
body.high-contrast #page-leave-msg .uk-button-secondary:hover a{
    color: #004f38 !important;
}
body.high-contrast #page-leave-msg .uk-button-secondary:hover{
    border: 1px solid #004f38 !important;
}
body.high-contrast a.uk-marker {
    color: #fff;
}
body.high-contrast .uk-notification-top-left a{
  color:#fff!important;
}
body.high-contrast select:focus-visible,
body.high-contrast textarea:focus-visible,
body.high-contrast input:focus-visible{
  outline: 4px solid #E10019 !important;
}
body.high-contrast .uk-dropbar{
    background: #004f38;
    box-shadow: 0 2px 0 #003d2b;
}
body.high-contrast .uk-text-secondary{
  color: #004f38 !important;
}
body.high-contrast .uk-card-hover .uk-button-secondary{
  color: #fff !important;
}
body.high-contrast .uk-card-hover .uk-button-secondary:hover{
  color: #004f38 !important;
}
body.high-contrast .uk-card-secondary .uk-button-secondary{
  color: #004f38 !important;
}
body.high-contrast .uk-card-secondary .uk-button-secondary:hover{
  color: #fff !important;
}

/*#004f38*/
body.high-contrast .section--product-overview .el-container:hover .uk-tile-secondary,
body.high-contrast .section--product-overview-style .el-container:hover .uk-tile-secondary{
 background: #ffdd00;
}
body.high-contrast .section--product-overview .el-container:hover .el-title,
body.high-contrast .section--product-overview-style .el-container:hover .el-title{
 color: #000;
}

body.high-contrast .uk-icon.uk-totop{
  color: #fff !important;
  border:1px solid #fff;
}
body.high-contrast .uk-navbar-dropdown-nav>li.uk-active>a,
body.high-contrast .uk-navbar-dropdown-nav>li:hover>a{
  color: #d3ff4f !important;
}
body.high-contrast .btn-info:hover, body.high-contrast .btn-primary:hover, body.high-contrast .btn-success:hover, body.high-contrast .uk-button-primary:hover{
  background: #004f38 !important;
}
body.high-contrast a.el-slidenav{
  background: #004f38 !important;
  color: #fff !important;
}
body.high-contrast .uk-checkbox{
  border: 1px solid #000;
}
body.high-contrast .tm-header >div:nth-child(1) .uk-navbar-container{
  background-color: #fff !important;
  border-bottom: 1px solid #000;
}
body.high-contrast .wv-floating-buttons-inner .uk-icon,
body.high-contrast .wv-floating-buttons-item .wv-h3{
  color: #fff !important;
}

body.high-contrast .uk-section-primary .uk-button-secondary:hover{
  color: #fff !important;
}
body.high-contrast .uk-section-secondary .uk-button-secondary{
  color: #004f38 !important;
}
body.high-contrast .uk-section-secondary .uk-button-secondary:hover{
  color: #fff !important;
}

body.high-contrast .uk-section-primary .uk-button-default{
  border-color: #fff !important;
}
body.high-contrast .uk-section-primary .uk-button-default:hover{
  color: #004f38 !important;
}
body.high-contrast .uk-section-default .uk-button-secondary{
  color: #fff !important;
  background-color: #004f38 !important;
  border: 1px solid #fff;
}
body.high-contrast .uk-section-default .uk-button-secondary:hover{
  color: #004f38 !important;
  background-color: #fff !important;
}

body.high-contrast .section--footer{
  border-top: 1px solid #fff;
  background-color: #00432f;
}
body.high-contrast .section--footer+.uk-section-secondary{
  background-color: #00432f;
}




body.high-contrast #form-garagenkonfigurator .column-nav{
  background: #fff;
}
body.high-contrast .btn.btn-default{
  color: #fff;
}
body.high-contrast .btn.btn-default.prev-button{
  color: #000;
}
body.high-contrast .form-description.description-info{
  color: #000;
  background: #f7f7f7;
  border: 1px solid #000;
}
body.high-contrast #kunde_plz_bauvorhaben_precheck_button{
  color: #fff;
  background-color: #00411e;
}
body.high-contrast #kunde_plz_bauvorhaben_precheck_button:hover{
  color: #004f38;
  background-color: #fff;
}
body.high-contrast .input-box input[type="radio"]+label, body.high-contrast .input-box input[type="checkbox"]+label{
      color: #000;
}

body.high-contrast .formControls input,
body.high-contrast .formControls textarea,
body.high-contrast .formControls select{
  border: 2px solid #00411e !important;
  color: #000;
}

body.high-contrast .formControls input[type="checkbox"]{
  width:20px;
  height:20px;
}
body.high-contrast .formControls button[type="submit"]{
  background-color: #00411e !important;
  border: 2px solid #00411e !important;
  color: #fff !important;
}
body.high-contrast .formControls button[type="submit"]:hover{
  background-color: #fff !important;
  color: #00411e !important;
  border: 2px solid #00411e !important;
}
body.large-font .formControls input[type="checkbox"]{
  width:30px;
  height:30px;
}
body.large-font .formControls button[type="submit"]{
  padding-top: 10px;
  padding-bottom:10px;
}

body.high-contrast .formControls select,
body.high-contrast .formControls input[type="text"],
body.high-contrast .formControls input[type="password"],
body.high-contrast .formControls textarea{
  padding-left: 10px;
}
body.high-contrast .formControls select:focus-visible,
body.high-contrast .formControls input[type="text"]:focus-visible,
body.high-contrast .formControls input[type="password"]:focus-visible,
body.high-contrast .formControls textarea:focus-visible{
  background: #004f38;
  color: #fff;
}

body.high-contrast .formControls select:focus-visible option{
  color:#fff;
}

body.high-contrast .uk-offcanvas-bar .uk-nav-default li>a{
  color: #fff !important;
}
body.high-contrast .uk-offcanvas-bar .uk-nav-default li.uk-active>a{
  color: #95c11f !important;
}


/* Hervorhebung für TTS-Element */
html body.high-contrast .tts-highlight,
.tts-highlight {
    background-color: yellow;
    border: 2px solid orange;
    border-radius: 4px;
    transition: background-color 0.3s, border 0.3s;
    color: #000 !important;
}

#accessibility-button:focus-visible {
  outline: 4px solid #E10019; /* Deutlicher orangener Ring, hoher Kontrast */
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.3); /* Leichter Glow-Effekt */
}

/* Fallback für Browser ohne :focus-visible */
@supports not selector(:focus-visible) {
  #accessibility-button:focus {
    outline: 4px solid #E10019;
    outline-offset: 2px;
  }
}


/**************************/



.uk-notification-message.uk-notification-bottom-center{
  padding: 5px 15px !important;
  width: 240px;
  margin-left: auto;
  margin-right: auto;
}

.uk-notification-message.uk-notification-bottom-center small{
  margin-top: 2px;
}
.uk-notification-messageuk-notification-message-primary{
      position: relative;
      padding: 5px 15px !important;
      background: #004f38;
      color: #fff;
      font-size: 16px;
      line-height: 1.5;
      cursor: pointer;
      color: #fff;
      background-color: #95c11f;
      width: 240px;
      margin-left: auto;
      margin-right: auto;
  }
  .uk-notification-messageuk-notification-message-primary small{
    margin-top: 3px;
  }
  
  body.high-contrast .uk-notification-bottom-center .uk-notification-messageuk-notification-message-primary,
  body.high-contrast .uk-notification-bottom-center .uk-notification-message.uk-notification-message-primary{
    background-color: #000;
  }
  
  
body.high-contrast ::selection {
  background: #000000;
  color: #ffffff;
  text-shadow: none;
}