@charset "UTF-8";


footer
{
    background:#000000;
}

.beschreibungoben
{
    font-weight:400;
    color:#000000;
    text-align:center;
    width:100%;
    height:auto;
    bottom:20px;
    position:absolute;
    line-height:1;
}

.rotoben
{
    font-weight:700;
    color:#f52319;
}

.text-oben-rot
{
    font-weight:900;
    color:#f52319;
}

.bs-text-rot
{
    font-weight:900;
    color:#f52319;
}

.bs-text-weiss
{
    font-weight:900;
    color:#ffffff;
}

.text-weiss
{
    color:#ffffff;
}

.text-rot
{
    color:#f52319!important; 
}

.text-rot-start
{
    color:#f52319; 
}

.background-grau, .background-rot, .footerbalken-rot, .background-hellgrau, .background-weiss, .background-rot, .background-schwarz, .background-grau-kontakt
{
    width:100%;
    height:auto;
    display:block;
}

.background-dunkelgrau
{
    background-color:#4c4c4c;
}

.background-grau, .background-grau-kontakt
{
    background-color:#8c8c8c;
}

.background-grau-kontakt
{
    border:2px solid #8c8c8c;
}

.background-hellgrau
{
    background-color:#e5e5e5;
}

.background-weiss
{
    background-color:#ffffff;
}

.background-schwarz
{
    background-color:#000000;
}

.background-shadow
{
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.news-block
{
    width:100%;
    height:auto;
    display:block;
    background-color:#ffffff;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    padding:40px;
}

.news-block-rot
{
    width:100%;
    height:auto;
    display:block;
    background-color:#f52319;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    padding:40px;
    text-align:center;
}


.background-rot, .footerbalken-rot
{
    background-color:#f52319;
}

.linie-rot, .linierot
{
    width:100%;
    height:2px;
    display:block;
    background-color:#f52319;
}

.header-weiss, .sub-header-weiss, .subheadertexte-ws-links, .itsecuritytexte-ws, .smarthometexte-ws
{
    color:#ffffff;
}

.balken-oben
{
    width:100%;
    height:300px;
    background:#000000;
    display:block;
    position:relative;
    overflow:hidden;
}

.balken-oben-rechts
{
    width:50%;
    height:300px;
    background:#f52319;
    display:block;
    position:absolute;
    top:0px;
    left:50%;
    margin-left:350px;
    z-index:50000;
}

.kreis-oben-rechts
{
    width:600px;
    height:600px;
    background:#f52319;
    display:block;
    position:absolute;
    top:-150px;
    left:-50px;
    border-radius:50%;
    z-index:50000;
}



.text-oben-rechts
{
    color:#ffffff;
    font-weight:500;
}

.balken-text-oben-rechts
{
    display:flex;
    align-items: center;
    width:100%;
    max-width:1420px;
    height:300px;
    margin-left:auto;
    margin-right:auto;
    padding-left:30px;
    position:relative;
}

.icon-oben-rechts
{
    display:flex;
    align-items: center;
    justify-content: center;
    width:180px;
    height:300px;
    right:30px;
    z-index:60000;
    position:absolute;
}

.icon-oben-bild
{
    width:180px;
    height:auto;
}

.headertext-leistungen, .headertexte, .subheadertexte, .headertext-partner, .itsecuritytexte-ws, .smarthometexte-ws
{
    text-align:center; 
}

.headertexte-links, .subheadertexte-links, .subheadertexte-ws-links
{
    text-align:left; 
}

.headertext-partner
{
    color:#ffffff;
}

.leistungenbutton
{
    width:100%;
    height:180px;
    max-width:380px;
    margin-left:auto;
    margin-right:auto;
    background-color:#ffffff;
    display:block;
    position:relative;
    margin-bottom:20px;
    border:solid 2px #ffffff;
}

.leistungenbutton-icon-1
{
    width:50px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.leistungenbutton-icon-2
{
    width:40px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.leistungenbutton-text
{
    width:100%;
    text-align:center;
    font-weight:700;
    font-size:17px;
    color:#666666;
    position:absolute;
    left:0px;
    top:90px;
    padding-left:5px;
    padding-right:5px;
}

.logo-footer
{
    width:220px;
    height:auto;
}

.footerbalken-unten
{
    background-color:#000000;
    border-top:1px solid #ffffff;
    width:100%;
    height:70px;
    display:block;
}

.footertext-mitte
{
	font-weight:700;
	font-size:14px;
	text-align:center;
    color:#ffffff;
    line-height:1;
    margin-top:17px;
}


.footertext-mitte a
{
    color:#ffffff!important;
}



.footertext-rechts
{
	font-weight:700;
	font-size:14px;
	text-align:right;
    color:#f52319;
    line-height:1;
    margin-top:17px;
}

.footertext-rechts a
{
    color:#f52319!important;
}



.footerbutton
{
    width:100%;
    height:160px;
    max-width:350px;
    margin-left:auto;
    margin-right:auto;
    display:block;
    position:relative;
}


.footerbutton-text
{
    width:100%;
    text-align:center;
    font-weight:700;
    font-size:15px;
    color:#ffffff;
    position:absolute;
    left:0px;
    top:90px;
}

.footerbutton-icon-1
{
    width:45px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.footerbutton-icon-2
{
    width:65px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
    margin-top:8px;
}

.footerbutton-icon-3
{
    width:75px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
    margin-top:18px;
}

.footertext-leistungen
{
    text-align:left;
    line-height:1;
}

.footer-bild
{
    width:100%;

    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.footertext-kontakt
{
    font-size:23px;
    color:#000000;
    font-weight:500;
    max-width:620px;
}

.liste
{
    width:100%;
    height:auto;
}

.liste-zeile
{
    width:100%;
    height:auto;
    position:relative;
    display:block;
    margin-bottom:10px;
}

.liste-ok
{
    width:30px;
    height:auto;
    position:absolute;
    left:0px;
    top:0px;
}

.liste-text
{
    font-size:21px;
    color:#000000;
    font-weight:500;
    padding-left:50px;
    line-height:1.2;
}

.kontakt-button
{
    width:240px;
    height:40px;
    border:1px solid #f52319;
    color:#f52319;
    background:#ffffff;
    font-size:17px;
    font-weight:400;
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    cursor:pointer;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.kontakt-button-mitte
{
    width:240px;
    height:40px;
    border:1px solid #f52319;
    color:#f52319;
    background:#ffffff;
    font-size:17px;
    font-weight:400;
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    cursor:pointer;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    margin-left:auto;
    margin-right:auto;
}

.kontakt-button-mitte-ws
{
    width:240px;
    height:40px;
    border:1px solid #ffffff;
    color:#ffffff;
    background:#f52319;
    font-size:17px;
    font-weight:400;
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    cursor:pointer;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    margin-left:auto;
    margin-right:auto;
}

.startseite-button
{
    width:200px;
    height:40px;
    border:1px solid #f52319;
    color:#f52319;
    background:#000000;
    font-size:17px;
    font-weight:400;
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    cursor:pointer;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    margin-left:auto;
    margin-right:auto;
}




.textblock-schwarz
{
    text-align:center;
    font-size:17px;
    font-weight:400;
    color:#000000;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}



.textblock2-schwarz
{
    text-align:center;
    font-size:18px;
    font-weight:400;
    color:#000000;
    max-width:600px;
    margin-left:auto;
    margin-right:auto;
}

.textblock-weiss, .textblock-weiss-links, .apps-textblock-weiss-links
{
    text-align:center;
    font-size:18px;
    font-weight:400;
    color:#ffffff;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}

.textblock-weiss-links, .apps-textblock-weiss-links 
{
    text-align:left;
}

.textblock-news-schwarz
{
    text-align:left;
    font-size:17px;
    font-weight:400;
    color:#000000;
    margin-left:auto;
    margin-right:auto;
}

.textblock-news-weiss
{
    text-align:center;
    font-size:17px;
    font-weight:400;
    color:#ffffff;
    margin-left:auto;
    margin-right:auto;
}

.textblock-news-weiss a
{
    color:#ffffff!important;
}

.textblock-referenzen-schwarz
{
    text-align:center;
    font-size:17px;
    font-weight:400;
    color:#000000;
    margin-left:auto;
    margin-right:auto;
}

.textblock2-schwarz-links
{
    text-align:left;
    font-size:18px;
    font-weight:400;
    color:#000000;
    max-width:600px;
}

.textblock2-schwarz-links-bold
{
    text-align:left;
    font-size:18px;
    font-weight:700;
    color:#000000;
    max-width:600px;
}

.textblock2-rot-links
{
    text-align:left;
    font-size:18px;
    font-weight:700;
    color:#f52319;
    max-width:600px;
}


.textblock-telefonie
{
    text-align:left;
    font-size:18px;
    font-weight:400;
    color:#000000;
    
}


.headerblock2-schwarz
{
    text-align:center;
    font-size:17px;
    font-weight:700;
    color:#000000;
}

.headerblock2-schwarz-links
{
    text-align:left;
    font-size:17px;
    font-weight:700;
    color:#000000;
}

.demo-bild
{
    width:100%;
    height:auto;
    position:relative;
}

.demo-bild-kreis
{
    width:200px;
    height:200px;
    border:2px solid #f52319;
    border-radius:100px;
    background:transparent;
    position:absolute;
    top:120px;
    left:80px;
    display:none;
}

.infobalken, .infobalken-2
{
    position:absolute;
    width:80%;
    height:50px;
    display:block;
    left:10%;
    bottom:10%;
}

.infobalkenhintergrund
{
    position:absolute;
    width:100%;
    height:50px;
    display:block;
    left:0px;
    top:0px;
    background:rgba(255, 255, 255, 0.7);
    
}

.infobalkentext, .infobalkentext-2
{
    width:100%;
    position:absolute;
    text-align:center;
    color:#f52319;
    font-size:32px;
    font-weight:700;
    line-height:1;
    left:0px;
    top:10px;
}





.liste-zeile-klein
{
    width:100%;
    height:auto;
    position:relative;
    display:block;
    margin-bottom:5px;
}

.liste-ok-klein
{
    width:18px;
    height:auto;
    position:absolute;
    left:0px;
    top:-5px;
}

.liste-text-klein
{
    font-size:17px;
    color:#000000;
    font-weight:500;
    padding-left:30px;
    line-height:1.2;
}

.liste-zeile-ws
{
    width:100%;
    height:auto;
    position:relative;
    display:block;
    margin-bottom:10px;
}

.liste-ok-ws
{
    width:30px;
    height:auto;
    position:absolute;
    left:0px;
    top:0px;
}

.liste-text-ws
{
    font-size:21px;
    color:#ffffff;
    font-weight:500;
    padding-left:50px;
    line-height:1.2;
}

.ZoomBild
{
    width: 100%;
    background-color:#f0f0f0;
}

.lupe
{
    width:40px;
    height:auto;
    position:absolute;
    bottom:20px;
    right:20px;
    display:none;
}

@media (min-width: 992px)
{
    .ZoomBild {
      /* the coordinate of the zoom */
      --x: 50%;
      --y: 50%;
      /**/
      transform: scale(var(--zoom));
      transform-origin: var(--x) var(--y);
      clip-path: inset(
        calc((1 - 1/var(--zoom)) * (var(--y)))
        calc((1 - 1/var(--zoom)) * (100% - var(--x)))
        calc((1 - 1/var(--zoom)) * (100% - var(--y)))
        calc((1 - 1/var(--zoom)) * (var(--x)))
      );
      cursor:zoom-in;

    }

    .ZoomBild:hover
    {
        --zoom:2; /* control the zoom level */
    }

    .ZoomBild:hover + .lupe
    {
        opacity:0.1;
        transition: .6s ease-in-out;
    }
    
    .lupe
    {
        display:block;
    }
    
}

.startbutton
{
    height:auto;
    position:relative;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 2px 4px 0 rgba(0, 0, 0, 0.19);

    margin-left:auto;
    margin-right:auto;
}

.startbutton-bild
{
    height:auto;
}


.startbutton-icon-out
{
    height:190px;
    display:flex;
    align-items:center;
    justify-content:center;
    top:0px;
    left:0px;
    position:absolute;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.startbutton-icon-kreis
{
    width:145px;
    height:145px;
    display:flex;
    align-items:center;
    justify-content:center;
    background-color:#f52319;
    border-radius:50%;
}

.startbutton-icon
{
    width:87px;
    height:auto;
    transition: .3s ease-in-out;
}

.startbutton-schriftfeld
{
    height:100px;
    display:block;
    background-color:#ffffff;
    padding:20px;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.startbutton-schriftfeld-zeile1
{
    width:100%;
    font-size:17px;
    color:#000000;
    font-weight:400;
    line-height:1;
    transition: .2s ease-in-out;
    margin-bottom:10px;
}

.startbutton-schriftfeld-zeile2
{
    width:100%;
    font-size:23px;
    color:#4d4d53;
    font-weight:700;
    line-height:1;
    transition: .4s ease-in-out;
}



.startbutton-schriftfeld, .startbutton-icon-out, .startbutton-bild, .startbutton, .startbutton-schriftfeld
{
    width:100%;
}

.ausgeblendet-out
{
    width:100%;
    height:auto;
}

.ausgeblendet
{
    display:none;
}

.open
{
    display:block;
    opacity:1;
}

.button-pfeil-unten
{
    width:33px;
    height:auto;
    position:relative;
    margin-left:auto;
    margin-right:auto;
}

.button-pfeil-unten-hover
{
    top:0px;
    left:0px;
    width:33px;
    height:auto;
    position:absolute;
    opacity:0;
    background:#ffffff;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}



.button-pfeil-unten-text
{
    width:100%;
    font-size:17px;
    color:#000000;
    font-weight:700;
    line-height:1;
    transition: .2s ease-in-out;
    text-align:center;
    padding-top:10px;
}

.button-anzeigen
{
    cursor:pointer;
    width:100%;
    max-width:300px;
    margin-left:auto;
    margin-right:auto;
}

.brands-rechteck
{
    width:100%;
    height:120px;
    display:flex;
    align-items: center;
    justify-content: center;
}

.brands-logo-img
{
    width:100%;
    max-width:200px;
    height:auto;
}

.start-balken-oben
{
    width:100%;
    height:300px;
    background:#000000;
    display:block;
    position:relative;
    overflow:hidden;
}

.start-oben-links, .start-oben-mitte, .start-oben-rechts
{
    width:100%;
    height:auto;
    position:relative;
}

.start-oben-links1
{
    left:0px;
    top:0px;
    position:absolute;
    width:540px;
    height:300px;
    z-index:91111;
    transition: .3s ease-in-out;
}

.start-oben-links2
{
    left:-75px;
    top:-150px;
    position:absolute;
    width:100%;
    height:auto;
    z-index:91111;
    transition: .3s ease-in-out
}

.start-oben-links3
{
    left:0px;
    top:0px;
    position:absolute;
    width:540px;
    height:300px;
    z-index:91111;
    transition: .3s ease-in-out;
}

.start-oben-links-rechteck
{
    left:40px;
    top:20px;
    position:absolute;
    width:400px;
    height:auto;
    z-index:91111;
    transition: .3s ease-in-out;
   
}

 .start-oben-links-rechteck-2
    {
        left:40px;
        bottom:13px;
        position:absolute;
        width:200px;
        height:auto;
        z-index:91111;
        transition: .3s ease-in-out;
        border:1px solid #f52319;
        opacity:0;
    }

.start-oben-links-kreis
{
    width:600px;
    height:600px;
    border-radius:50%;
    background-color:#f52319;
    display:flex;
    align-items: center;
    justify-content: center;
    transition: .3s ease-in-out
}

.start-oben-timemaster
{
    width:100%;
    max-width:400px;
    height:auto;
}

.start-oben-links1-pad
{
    left:30px;
    top:0px;
    position:absolute;
    width:167px;
    height:300px;
    z-index:91111;
    transition: .3s ease-in-out;
    display:none;
}

.start-oben-links
{
    z-index:91111;
}

.start-oben-mitte
{
    width:100%;
    min-width:320px;
    height:300px;
    z-index:91000;
    background:rgba(0,0,0,0.5);
    box-shadow: 0 0px 20px 0 #000000;
}


.bild-start-oben-rechts
{
    width:830px;
    height:300px;
    position:absolute;
    top:0px;
    right:0px;
    transition: .3s ease-in-out;
}

.start-oben-text-block
{
    width:100%;
    padding-top:40px;
    padding-bottom:40px;
    color:#ffffff;
    text-align:center;
}

.start-oben-text
{
    font-size:18px;
}

.start-oben-mitte-mobil
{
    width:100%;
    height:auto;
    position:relative;
}

.start-oben-links-text
{
    left:0px;
    top:0px;
    position:absolute;
    width:540px;
    height:300px;
    z-index:91111;
    display:flex;
    align-items: center;
    justify-content: center;
    transition: .3s ease-in-out;
    
}
.text-willkommen
{
    font-size:42px;
    text-align:center;
    color:#ffffff;
    font-weight:500;
}

.bsslider2
{
    position:relative;
    width:100%;
    height:auto;
}

#startseite-1, #startseite-2, #startseite-3, #startseite-4
{
    opacity:0;
    position:absolute;
    top:0px;
    left:-200px;
    z-index:11111;
    width:50%;
    height:auto;
}

.start-oben-mitte-2
{
    width:100%;
    height:auto;
    position:absolute;
    left:0px;
    top:0px;
        
}

.start-oben-text-block-2
 {
     margin-top:80px;
     margin-bottom:40px;
     padding-top:10px;
     padding-bottom:20px;
     color:#ffffff;
     text-align:center;
     margin-left:auto;
     margin-right:auto;
     
 }

.start-oben-rechts-kreis
{
    width:250px;
    height:250px;
    border-radius:50%;
    background-color:#f52319;
    display:none;
    align-items: center;
    justify-content: center;
    transition: .3s ease-in-out;
    position:absolute;
    right:40px;
    top:25px;
    z-index:94000;
}

.start-oben-timemaster-mobil
{
    position:absolute;
    top:40px;
    display:flex;
    align-items: center;
    justify-content: center;
    transition: .3s ease-in-out;
    width:100%;
}

.start-oben-timemaster-mobil-bild
{
    width:100%;
    max-width:300px;
    height:auto;
}

.buttonumbruch, .seitenheaderumbruch
{
    display:none;
}

.kontaktblock
{
    width:845px;
    margin-left:auto;
    margin-right:auto;
    display:block;
    position:relative;
    height:60px;
}

.kontaktblock-1
{
    width:240px;
    height:60px;
    
    position:absolute;
    left:0px;
    top:0px;
}

.kontaktblock-2
{
    width:196px;
    height:60px;
    
    position:absolute;
    left:280px;
    top:0px;
}

.kontaktblock-3
{
    width:330px;
    height:60px;
    
    position:absolute;
    left:514px;
    top:0px;
}

.telefon-icon
{
    width:40px;
    height:auto;
    position:absolute;
    top:10px;
    left:0px;
}

.mail-icon
{
    width:40px;
    height:auto;
    position:absolute;
    top:17px;
    left:0px;
}

.standort-icon
{
    width:34px;
    height:auto;
    position:absolute;
    top:7px;
    left:5px;
}

.kontakt-block-text
{
    width:280px;
    height:60px;
    border-left:solid 2px #f52319;
    position:absolute;
    top:0px;
    left:50px;
    padding-left:10px;
    padding-top:10px;
}



.kontakt-block-text-oben, .kontakt-block-text-unten
{
    font-size:17px;
    color:#000000;
    line-height:1;
    text-align:left;
    
}

.kontakt-block-text-oben
{
    font-weight:700;
}

.kontakt-block-text-unten
{
    font-weight:500;
    padding-top:6px;
}

input::placeholder 
{
    color: #000000;
    opacity: 0.6;
}

textarea::placeholder
{
    color: #000000;
    opacity: 0.6;
}

.Formular_Style
{
    margin-top:0px;
}

.Formular_Style .form-field
{
    margin-bottom: 20px;
}


.Formular_Style .form-field input
{
    width: 100%;
    height: 50px;
    padding: 5px 18px;
    font-size: 15px;
    border: 2px solid rgba(0, 0, 0, 0.3);
	background-color:transparent;
}

.Formular_Style .form-field textarea
{
    width: 100%;
    padding: 10px 18px;
    font-size: 15px;
    border: 2px solid rgba(0, 0, 0, 0.3);
}


.Formular_Style .form-field input:focus, .Formular_Style .form-field textarea:focus
{
    border-color: rgba(0, 0, 0, 0.6);
    outline: none;
}

.Formular_Style .form-button
{
    margin-top:20px;
    text-align: center;
}

.Formular_Style .form-button button
{
    padding: 7px 30px;
    border: 1px solid #f52319;
    background:#ffffff;
    color:#f52319;
    display:block;    
    font-size: 18px;
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    width:280px;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.Formular_Style .form-button button:hover
{
    background:#f52319;
    border-color:#f52319;
    color: #ffffff;
    border-radius:50px;
}

.feldfehler
{
	background-color:rgba(245, 35, 25, 0.15);
}

.formular-rahmen
{
    width:100%;
    height:auto;
    padding:30px;
    border:solid 2px #f52319;
    display:block;
    
}

.checkboxfeld-datenschutz, .checkboxfeld
{
    position:absolute;
    top:0px;
    left:0px;
}

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border:none;
  border-radius: 0;
  font-size: 1em;
  width: 100%
} 

input[type='checkbox'],
input[type='radio'] {
  width:auto;    
  background:transparent;
  border:none;
  position:absolute;

  left:0px;
}

input[type='checkbox']:checked,
input[type='checkbox']:not(:checked),
input[type='radio']:checked,
input[type='radio']:not(:checked) {
  background: transparent;
  position: relative;
  visibility: hidden;
  margin:0;
  padding:0;
}

input[type='checkbox'] + label,
input[type='radio'] + label {
  cursor: pointer;
}
input[type='checkbox']:checked + label::before,
input[type='checkbox']:not(:checked) + label::before,
input[type='radio']:checked + label::before,
input[type='radio']:not(:checked) + label::before {
    content:' ';
    display:inline-block;
    width:30px;
    height:30px;
    position:relative;
    border: 2px solid rgba(0, 0, 0, 0.4);
    background:#ffffff;
    margin-right: 1em;
	margin-left:0px;
    top:0px;
    box-shadow: inset 0 1px 1px 0 rgba(0,0,0,0.1);
}

input[type=radio]:checked + label::before,
input[type=radio]:not(:checked) + label::before {
  border-radius: 30px;
}
 input[type='checkbox']:hover  + label::before,
    input[type='radio']:hover  + label::before {
      background:rgba(0 , 0, 0, 0.1);
      box-shadow: inset 0 0 0 1px white;
      -webkit-transition: all .3s ease-out;
      transition: all .3s ease-out;
    }
    


input[type='checkbox']:checked  + label::before,
input[type='radio']:checked  + label::before {
  background:#f52319;
  box-shadow: inset 0 0 0 2px white;
  border-radius:50%;
  border: 2px solid #f52319;
}

#messages
{
    text-align:center;
    font-size:18px;
    font-weight:700;
    color:#000000;
}

.formular-checkbox-datenschutz
{
    width:100%;
    height:30px;
    position:relative;
    
    display:block;
}

.formular-checkbox-text-datenschutz
{
    width:100%;
    text-align:left;
    padding-left:40px;
    padding-top:6px;
    font-size:17px;
    font-weight:500;
    color:#000000;
    line-height:1;
}

.formular-checkbox
{
    width:100%;
    height:30px;
    position:relative;
    
    display:block;
}

.formular-checkbox-text
{
    width:100%;
    text-align:left;
    padding-left:40px;
    padding-top:6px;
    font-size:17px;
    font-weight:500;
    color:#000000;
    line-height:1;
}

.kontakt-beschreibungstext
{
    text-align:center;
    color:#000000;
    font-size:15px;
    font-weight:400;
}

.backup-header-rot
{
    color:#f52319;
    font-size:30px;
    font-weight:700;
    text-align:center;
}

.backup-icon
{
    width:100%;
    height:250px;
    margin-left:auto;
    margin-right:auto;
    display:flex;
    align-items: center;
    justify-content: center;
}

.backup-icon-1
{
    width:240px;
}
.backup-icon-2
{
    width:200px;
}
.backup-icon-3
{
    width:180px;
}



.backup-balken-rot
{
    width:100%;
    height:60px;
    font-size:30px;
    color:#ffffff;
    background:#f52319;
    text-align:center;
    line-height:1;
    font-weight:500;
    padding-top:15px;
}

.backup-balken-rot-bold
{
    font-weight:900;
}

.textblock-schwarz-backup
{
    text-align:left;
    font-size:17px;
    font-weight:400;
    color:#000000;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding-left:15px;
    padding-right:15px;
}

.backup-loesungen
{
    width:100%;
    height:820px;
    background:#ffffff;
    display:block;
    max-width:444px;
    margin-left:auto;
    margin-right:auto;
}

.text-schwarz-beratung
{
    text-align:center;
    font-size:18px;
    font-weight:400;
}

.headertexte-backup
{
    text-align:center;
    padding-left:10px;
    padding-right:10px;
}

.itservice
{
    width:100%;
    height:990px;
    background:#ffffff;
    display:block;
    margin-left:auto;
    margin-right:auto;
    padding-left:40px;
    padding-right:40px;
    max-width:674px;
}

.itservice-gross
{
    height:1050px;
}

.itservice-icon
{
    width:130px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.textblock-schwarz-itservice-border-out
{
    width:100%;
    height:auto;
    
}

.textblock-schwarz-itservice-border
{
    text-align:center;
    font-size:17px;
    padding:40px 20px 50px 20px;
    border:4px dotted #f52319;
    position:relative;
    color:#000000;
}

.textblock-italic
{
    font-weight: 400;
    font-style: italic;
    text-align:center;
}

.okay-icon
{
    width:60px;
    height:auto;
    bottom:20px;
    right:20px;
    position:absolute;
}

.textblock-schwarz-itservice
{
    text-align:center;
    font-size:17px;
   
    color:#000000;
}

.textblock-schwarz-itservice-bold
{
    text-align:center;
    font-size:20px;
    
    color:#000000;
    font-weight:700;
}

.itservice-bild
{
    width:100%;
    height:auto;
    position:relative;
}

.itservice-wifi-symbol-out
{
    width:100%;
    height:100%;
    position:absolute;
    top:0px;
    left:0px;
    display:flex;
    align-items: center;
    justify-content: center;
}

.itservice-wifi-symbol
{
    width:280px;
    height:auto;
}


.wifi-1, .wifi-2, .wifi-3, .wifi-4
{
    fill:rgba(0,0,0,0);
    stroke: #f52319;
    stroke-miterlimit: 10;
    transition: all .5s ease-out;
}

.wifi-1, .wifi-2, .wifi-3, .wifi-4
{
    stroke-width: 2.18px;
}

.contentquadrate
{
	position:relative;
	display:block;
	width:100%;
}

.contentquadrat
{
	width:100%;
	height:auto;
	border:7px solid #FFFFFF;
	margin-bottom:30px;
    padding-bottom:30px;
}

.contentquadrattext
{
	font-size:66px;
	font-weight:900;
	color:#ffffff;
	line-height:1;
	background-color:#000000;
	margin-top:86px;
	display:block;
}

#quadrat1text, #quadrat3text, #quadrat4text, #quadrat6text
{
	margin-left:-7px;
}

#quadrat2text
{
	width:191px;
	margin-left:-11px;
}

#quadrat5text
{
	margin-left:-11px;
}

.appsheader
{
	font-size:66px;
	font-weight:900;
	color:#ffffff;
	line-height:1;
}

.appcontainer
{
	position:relative;
	width:100%;
	height:auto;
	min-height:500px;
	display:block;
}

.apphand
{
	width:100%;
	height:auto;
	right:0px;
	bottom:0px;
	position:absolute;
	transition: all .5s ease-out;
}

.apphand-2
{
	width:100%;
	height:auto;
	right:0px;
	bottom:0px;
	position:absolute;
	transition: all .5s ease-out;
    z-index:88888;
}


.homepages
{
    width:100%;
    height:auto;
    border:solid 1px #aaaaaa;
}


.hp-scrolling-wrapper-flexbox 
{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -ms-overflow-style: none; /* IE 11 */
    scrollbar-width: none; 
}

.hp-scrolling-wrapper-flexbox .hp-card 
{
    flex: 0 0 auto;
    margin-right: 10px;
    margin-left: 10px;
}

.hp-card
{
    width:700px;
    height: auto;
    
}



.hp-scrolling-wrapper-flexbox 
{
    height: auto;
    width: 2160px;
    -webkit-overflow-scrolling: touch;
    margin-left:auto;
	margin-right:auto;
   
}

.hp-scrolling-wrapper-flexbox::-webkit-scrollbar
{
    display: none;
    visibility:hidden;
}	

.newscontainer-pfeile
{
	width:89px;
	height:35px;
	margin-left:auto;
	margin-right:auto;
    position:relative;
}

.pfeillinks-hp, .pfeilrechts-hp, .pfeillinks-hpsw, .pfeilrechts-hpsw
{
    position:absolute;
    width:25px;
    height:35px;
    top:0px;
    transition: all .5s ease-out;
}

.pfeillinks-hpsw, .pfeilrechts-hpsw
{
    opacity:0;
}

.pfeillinks-hp, .pfeillinks-hpsw
{
    left:0px;
}

.pfeilrechts-hp, .pfeilrechts-hpsw
{
    right:0px;
}

.telefonblock
{
    width:100%;
    height:auto;
    position:relative;
    min-height:66px;

}

.telefonblock-vorne
{
   
    text-align:center;
    font-size:18px;
    font-weight:700;
}

.telefonblock-text
{
    text-align:center;
    font-size:18px;
    font-weight:400;
}

.axis-partner-logo
{
    width:100%;
    max-width:320px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}


.zeileoben
{
    width:100%;
    height:1px;
    background:#333333;
    display:block;
}

.menuzeile
{
    width:100%;
    height:60px;
    position:relative;
    display:block;
    padding-left:70px;
    padding-top:20px;
    border-bottom:1px solid #333333;
    cursor:pointer;
}



.menu-icon, .menu-icon2
{
    width:40px;
    height:auto;
    position:absolute;
    top:10px;
    left:0px;
}

.menu-icon2
{
    top:16px;
}

.menu-icon3
{
    width:36px;
    height:auto;
    position:absolute;
    top:12px;
    left:0px;
}

.menuzeile-text
{
    font-size:22px;
    line-height:1;
    text-align:left;
    color:#ffffff;
    font-weight:700;
}



@media (min-width: 825px)
{


    
    .footertext-rechts a:hover
    {
        color:#ffffff!important;
    }

    .footertext-mitte a:hover
    {
        color:#f52319!important;
    }

    .kontakt-button:hover
    {
        width:240px;
        height:40px;
        border:1px solid #f52319;
        color:#ffffff;
        background:#f52319;
        border-radius:20px;
    }
    
    .kontakt-button-mitte-ws:hover
    {
        color:#f52319;
        background:#ffffff;
        border-radius:20px;
    }
    
    .kontakt-button-mitte:hover
    {
        width:240px;
        height:40px;
        border:1px solid #f52319;
        color:#ffffff;
        background:#f52319;
        border-radius:20px;
    }
    .startseite-button:hover
    {
        width:240px;
        height:40px;
        border:1px solid #f52319;
        color:#000000;
        background:#f52319;
        border-radius:20px;
    }

    .startbutton:hover
    {
        background-color:#f52319;
    }

    .startbutton:hover .startbutton-icon-out
    {
        background-color:#f52319;
    }

    .startbutton:hover .startbutton-schriftfeld
    {
        background-color:#000000;
    }

    .startbutton:hover .startbutton-schriftfeld-zeile1
    {
        color:#ffffff;
    }

    .startbutton:hover .startbutton-schriftfeld-zeile2
    {
        color:#ffffff;
    }

    .startbutton:hover .startbutton-icon
    {
        width:120px;
        height:auto;
    }

    .button-pfeil-unten:hover .button-pfeil-unten-hover
    {
        display:block;
        opacity:1;
    }
    
    .leistungenbutton:hover
    {
        border:solid 2px #f52319;
    }
    
    .pfeillinks-hpsw:hover 
    {
        opacity:1;
    }

    .pfeilrechts-hpsw:hover 
    {
        opacity:1;
    }

    
}

.mobilmenufenster
{
    width:500px;
    height:auto;
    position:fixed;
    top:100px;
    right:40px;
    background:#000000;
    display:none;
    z-index:100000;
    border-radius:10px;
}

.auswahlmobilscrollen
{
  	height:100%;
	overflow: auto;
} 

.knx-bild
{
    width:100%;
    max-width:500px;
    margin-left:auto;
    margin-right:auto;
}

.smarthome
{
    width:100%;
    min-height:350px;
    background:#ffffff;
    display:block;
    margin-left:auto;
    margin-right:auto;
    padding-left:40px;
    padding-right:40px;
    max-width:674px;

}

.newsbild
{
    width:100%;
    height:auto;
}





