html {
margin: 0 auto;
padding: 0;
max-width: 2560px;
overflow-x: hidden;
}


BODY  {
margin: 0 auto;
padding: 0;
background-color: var(--grau);
color: var(--schwarz);
font-weight: 400;
font-family: "Rubik", Arial, Helvetica, sans-serif;
font-size: 22px;
line-height: 30px;
max-width: 2560px;
}


:root {
  --weiss: #FFF;
  --schwarz: #000;
  --grau: #E9E7E8;
  --rot:  #E6223D;
  --gruen:  #1D473A;
  --dunkelgrau: #707070;
  --mw: 1400px;
}

.bg_weiss       { background-color: var(--weiss); }
.bg_schwarz  	{ background-color: var(--schwarz); }
.bg_rot  		{ background-color: var(--rot); color: var(--weiss); }
.bg_gruen  		{ background-color: var(--gruen); color: var(--weiss); }
.bg_dunkelgrau	{ background-color: var(--dunkelgrau); }


.bg_blau h1, .bg_blau h2, .bg_blau h3, .bg_blau h4, .bg_blau h5, .bg_blau h6 { color: var(--weiss); }
.bg_gruen h1, .bg_gruen h2, .bg_gruen h3, .bg_gruen h4, .bg_gruen h5, .bg_gruen h6 { color: var(--weiss); }
.bg_weiss h1, .bg_weiss h2, .bg_weiss h3, .bg_weiss h4, .bg_weiss h5, .bg_weiss h6 { color: var(--gruen); }

.weiss       	{ color: var(--weiss); }
.schwarz  		{ color: var(--schwarz); }
.rot  			{ color: var(--rot); }
.gruen  		{ color: var(--gruen); }
.gelb  			{ color: var(--gelb); }
.dunkelgrau	{ color: var(--dunkelgrau); }


#menu_icons {
    position: fixed;
    right: 0px;
    top: calc(50% - 60px);
    z-index: 99999;
    padding-right: 0px;
    overflow: hidden;
    display: block;
}

#menu_icons ul {
    display: block;
    margin: 0;
    padding: 0;
}

#menu_icons li {
    display: block;
    margin: 15px 0;
    padding: 0;
    text-align: right;
    font-size: 0;
    line-height: 0;

}


#menu_icons li A {
    display: inline-block;
    min-width: 60px;
    height: 60px;
    background-position: left 14px center;
    background-repeat: no-repeat;
    color: var(--rot);
    line-height: 60px;
    font-size: 20px;
    font-weight: 700;
    border: none;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    background-color: #fff;
    background-position: left 11px center;
    letter-spacing: 1px;
    text-transform: uppercase;
}

#menu_icons li A span { display: none; }
#menu_icons li A:hover span, #menu_iconsX li A:focus-within span { display: block; padding-left: 70px; padding-right: 10px; }


#link_6-600 { background-image: url('../../img/logo_rechts.png'); background-size: auto 50px; }
#link_6-601 { background-image: url('../../img/kontakt_rechts.png');  background-size: auto 42px;  }


#wrapper { position: relative; max-width: 1920px; margin: 0 auto; display: block; text-align: center; margin-top: 0; box-sizing: border-box; z-index: 99999 }

header { position: fixed; top: 0; left: 0; text-align: center; z-index: 999999; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out; max-width: 1920px; margin: 0; background-repeat: no-repeat; width: 100% }

#header_inner { position: relative; display: block; margin: 0 auto; text-align: center; padding: 0;  box-sizing: border-box; z-index: 999 }

header #click_menu, #click_menu.aktiv { position: relative; cursor: pointer; display: none; color: var(--blau); font-size: 0; text-align: center; background-image : url('../../img/toggle_icon.png'); background-repeat : no-repeat; background-position : right center; background-size: 24px; font-weight: 400; padding-right: 40px; z-index: 999999999; vertical-align: top; margin-right: 10px; text-transform: uppercase; line-height: 50px; height: 50px; }
#click_menu:hover { background-size: 26px; }

header #logo { position: absolute; display: block; width: 700px; height: 300px; background-image: url('../../img/logo_maler_keller.png'); background-size: contain; background-position: center; background-repeat: no-repeat; margin-bottom: -50px; z-index: 99999999; left: 40px; -webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; -o-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out; }

header #menu_master { display: block; position: relative; float: right; text-align: right; z-index: 99999; margin-top: -4px; }

header.menu_aktiv #menu_master { display: block !important;  }
header.menu_aktiv #click_menu { color: var(--weiss); display: block !important;  }
header.menu_aktiv #header_mitte { z-index: 99999; border-color: transparent; }
header.menu_aktiv * #menu_icons { display: none; }


header #menu_master_outer { display: block; margin: auto; text-align: center; padding: 0 40px 80px 40px; box-sizing: border-box; margin: 0; }

header #menu_master_inner { display: block; margin: auto; max-width: 1400px; text-align: left; color: var(--dunkelblau); box-shadow: 0 4px 2px -2px var(--dunkelgrau); }

header #menu_master_inner ul { display: inline-block; margin: 0; position: relative; width: 100%; padding: 0 10px 0 40px; box-sizing: border-box; vertical-align: top; clip-path: polygon(18px 0%, 100% 0%, 100% 100%, 0% 100%); background-color: var(--blau); }
header #menu_master_inner ul li  { display: inline-block; margin: 0; vertical-align: top; margin: 0; }
header #menu_master_inner ul li A { display: block; font-weight: 600; font-size: 30px; margin: 0; padding: 20px 30px; text-transform: uppercase; letter-spacing: 1px; color: var(--weiss); }
header #menu_master_inner ul li:hover { background-image : url('../../img/Streifen_Hover@2x.png'); background-repeat : no-repeat; background-position : left 5px center; background-size: auto 22px; }
header #menu_master_inner ul li A.aktiv { background-image : url('../../img/Streifen_weiss@2x.png'); background-repeat : no-repeat; background-position : left 5px center; background-size: auto 22px;  }



.smaller #logo, .header_30 #logo { width: 250px; height: 106px; background-image : url('../../img/Logo_klein_HG@2x.png'); top: 0; left: 0; }
.smaller { border-bottom: 1px solid var(--dunkelblau); }

#master_menu_unten { display: block; background-color: var(--weiss);  }
#menu_unten_inner { display: block; padding: 0 30px; box-sizing: border-box; color: var(--schwarz); margin: auto; font-size: 20px; }
#menu_unten_inner p { margin: 10px 0; padding: 0; }
#menu_unten_links { display: inline-block; width: 50%; text-align: left; }
#menu_unten_rechts { display: inline-block; width: 50%; text-align: right; }
#menu_unten_rechts ul { display: block; margin: 0; padding: 0; }
#menu_unten_rechts ul li { display: inline-block; padding: 0 2px; }
#menu_unten_rechts ul li a { display: block; color: var(--schwarz); }
#menu_unten_rechts ul li a:hover { text-decoration: underline; }

img { max-width: 100%; }
B, STRONG 	{ font-weight: 700; }
HR 			{ border-top: 0; border-bottom: 1px solid var(--hellgrau); margin: 20px 0; display: block; }
IMG 		{ max-width: 100%;  }
A 			{ text-decoration: none; }

table		{ width: 100%; }
table td { vertical-align: top; }
.clearer { clear: both; height: 0 !important; font-size: 0 !important; line-height: 0 !important; }


h1, .h1 { display: block; font-size: 40px; line-height: 46px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; text-transform: uppercase; }
h2, .h2 { display: block; font-size: 40px; line-height: 46px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; text-transform: uppercase; }
h3, .h3 { display: block; font-size: 26px; line-height: 32px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; text-transform: uppercase; font-weight: 600 !important; }
h4, .h4 { display: block; font-size: 22px; line-height: 38px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; }
h5, .h5 { display: block; font-size: 20px; line-height: 26px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; }
h6, .h6 { display: block; font-size: 16px; line-height: 20px; color: var(--schwarz); padding: 0; margin: 0 0 20px 0; }





.button {
display: inline-block;
text-decoration: none !important;
color: var(--weiss);
padding: 8px 20px;
border: none !important;
font-size: 18px;
line-height: 28px;
text-align: center;
font-weight: 400;
cursor: pointer;
border-top-left-radius: 15px;
border-bottom-right-radius: 15px;
-webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; -o-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out;
}

.button.aktiv { background-color: var(--pink); font-weight: 600; }





input[type="date"], input[type="text"], input[type="input"], input[type="email"], input[type="file"], select { font-size: 18px; color: var(--schwarz); background-color: var(--weiss); border: 2px solid var(--weiss); font-family: Rubik, sans-serif; box-sizing: border-box; font-weight: 400; display: inline-block; width: 100%; max-width: 100%; padding: 10px; margin-top: 4px; text-align: left; border-radius: 4px; }

select {  width: auto; font-weight: 700; }

input[type="checkbox"] { border: 1px solid var(--dunkelgrau); border-radius: 10px; }
input[type="date"]:hover, input[type="text"]:hover, input[type="input"]:hover, input[type="email"]:hover, select:hover, textarea:hover { border-color: var(--dgrau1); }

textarea { font-family: 'Rubik', sans-serif; font-weight: 400; font-size: 18px; box-sizing: border-box; color: var(--schwarz); background-color: var(--weiss); border: 2px solid var(--weiss); display: block; min-height: 150px;
padding: 10px; width: 100%; border-radius: 4px; }

fieldset { border: 2px solid var(--weiss); border-radius: 4px; font-size: 18px; }
fieldset label { font-size: 16px; }

#spam2 { display: inline-block; font-size: 12px; width: 60px; border: 3px solid var(--dunkelgrau); padding: 3px; margin-right: 20px;  }

input[type="submit"], .button, .button2, .button3 { font-family: 'Rubik' !important; display: inline-block; text-decoration: none !important; background-color: #FFF; color: var(--rot) !important; padding: 9px 40px 9px 20px;
border: none; font-size: 18px !important; line-height: 24px; text-align: center; font-weight: 700; cursor: pointer; border: none; -webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; -o-transition: 0.2s ease-in-out; background-size: 20px auto; background-position: right 15px center; background-repeat: no-repeat; position: relative; border: none; text-transform: uppercase; border-radius: 4px; box-sizing: border-box;     background-image: url('../../img/pfeil_rechts.png');
}


.button:hover { transform: scale(1.1); }

fieldset { border-radius: 4px; }

::placeholder { font-size: 14px; opacity: 0.8; }


#kontaktformular p { width: 100%; }