/* ____________________________________ Allgemein ____________________________________ */
*{
    outline:none;
}

html, body{
    width:100%;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -webkit-font-variant-ligatures: no-common-ligatures;
}

#hf_preloader:after{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background-image: url(../../img/custom/header/kmd_natursteine_preloader.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 55px 55px;
    -webkit-animation: spinY 2s infinite;
    animation: spinY 2s infinite;
}

@-webkit-keyframes spinY{
    0%   {-webkit-transform: scale(0.5);}
    50%  {-webkit-transform: scale(1);}
    100% {-webkit-transform: scale(0.5);}
}

@keyframes spinY{
    0%   {transform: scale(0.5);}
    50%  {transform: scale(1);}
    100% {transform: scale(0.5);}
}

/* ____________________________________ Klassen ____________________________________ */
.hf_wh100{
    width: 100%;
    height: 100%;
}

.hf_w1300{
    width: 1300px;
}

.hf_w100{
    width: 100%;
}

.hf_w100-160{
    width: calc(100% - 160px);
}

.hf_w63{
    width: 63%;
}

.hf_w30{
    width: 30%;
}

.hf_h100{
    height: 100%;
}

.hf_pt250{
    padding-top:250px;
}

.hf_ptb180{
    padding: 180px 0px;
}

.hf_pt50{
    padding-top: 50px;
}

.hf_pt30{
    padding-top: 30px;
}

.hf_pt20{
    padding-top: 20px;
}

.hf_pb180{
    padding-bottom:180px;
}

.hf_pb100{
    padding-bottom: 100px;
}

.hf_pb50{
    padding-bottom: 50px;
}

.hf_pos_fix{
    position: fixed;
}

.hf_pos_abs{
    position: absolute;
}

.hf_pos_rel{
    position: relative;
}

.hf_z2{
    z-index: 2;
}

.hf_z3{
    z-index: 3;
}

.hf_z4{
    z-index: 4;
}

.hf_l50{
    left: 50%;
}

.hf_center_helper{
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}

.hf_center_content{
    width: 98%;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

.hf_mcenter{
    margin: 0px auto;
}

.hf_fleft{
    float: left;
}

.hf_fright{
    float: right;
}

.hf_clearfix{
    clear: both;
}

.hf_dis_b{
    display: block
}

.hf_dis_ilb{
    display: inline-block;
}

.hf_ts03{
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* ____________________________________ Fonts ____________________________________ */
@font-face{
    font-family: 'DIN Next LT Pro Medium';
    src:    url('../fonts/din_medium/36CCEE_0_0.eot');
    src:    url('../fonts/din_medium/36CCEE_0_0.eot?#hf_iefix') format('embedded-opentype'),
            url('../fonts/din_medium/36CCEE_0_0.woff2') format('woff2'),
            url('../fonts/din_medium/36CCEE_0_0.woff') format('woff'),
            url('../fonts/din_medium/36CCEE_0_0.ttf') format('truetype');
}

@font-face{
    font-family: 'DINNextLTPro-Regular';
    src:    url('../fonts/din_regular/315DB3_1_0.eot');
    src:    url('../fonts/din_regular/315DB3_1_0.eot?#hf_iefix') format('embedded-opentype'),
            url('../fonts/din_regular/315DB3_1_0.woff2') format('woff2'),
            url('../fonts/din_regular/315DB3_1_0.woff') format('woff'),
            url('../fonts/din_regular/315DB3_1_0.ttf') format('truetype');
}

@font-face{
    font-family: 'DINNextLTPro-Light';
    src:    url('../fonts/din_light/315DB3_0_0.eot');
    src:    url('../fonts/din_light/315DB3_0_0.eot?#hf_iefix') format('embedded-opentype'),
            url('../fonts/din_light/315DB3_0_0.woff2') format('woff2'),
            url('../fonts/din_light/315DB3_0_0._woff') format('woff'),
            url('../fonts/din_light/315DB3_0_0.ttf') format('truetype');
}

@font-face{
    font-family: 'AbrilDisplay-Regular';
    src:    url('../fonts/abril_display_regular/353198_0_0.eot');
    src:    url('../fonts/abril_display_regular/353198_0_0.eot?#hf_iefix') format('embedded-opentype'),
            url('../fonts/abril_display_regular/353198_0_0.woff2') format('woff2'),
            url('../fonts/abril_display_regular/353198_0_0.woff') format('woff'),
            url('../fonts/abril_display_regular/353198_0_0.ttf') format('truetype');
}

.hf_din_medium{
    font-family: 'DIN Next LT Pro Medium';
}

.hf_din_regular{
    font-family: 'DINNextLTPro-Regular';
}

.hf_din_light{
    font-family: 'DINNextLTPro-Light';
}

.hf_abril_display_regular{
    font-family: 'AbrilDisplay-Regular';
}

.hf_fs88{
    font-size: 88px;
}

.hf_fs55{
    font-size: 55px;
}

.hf_fs32{
    font-size: 32px;
}

.hf_fs20{
    font-size: 20px;
}

.hf_fs18{
    font-size: 18px;
}

.hf_fs13{
    font-size: 13px;
}

.hf_lh100{
    line-height: 100%;
}

.hf_black{
    color: #333;
}

.hf_grey{
    color: #6b6b6b;
}

.hf_light_grey{
    color: #8c8c8c;
}

.hf_white{
    color: #fff;
}

.hf_ls9{
    letter-spacing: 9px;
}

.hf_ls195{
    letter-spacing: 1.95px;
}

.hf_ta_center{
    text-align: center;
}

.hf_up{
    text-transform: uppercase
}

.hf_td_no{
    text-decoration: none;
}

.hf_bg_black{
    background-color: #333;
}

.hf_bg_white{
    background-color: #fff;
}

/* ____________________________________ Header ____________________________________ */
header, header .hf_pt50, header .hf_pb50, header .hf_pt20, header .hf_black, header .hf_bg_black{
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
}

header{
    top:0px;
}

header.hf_bg_white.hf_header_scrolled{
    background-color: #333;
}

header.hf_bg_black.hf_header_scrolled{
    background-color: #fff;
}

header.hf_header_scrolled .hf_pt50{
    padding-top: 30px;
}

header.hf_header_scrolled .hf_pb50{
    padding-bottom: 30px;
}

header.hf_header_scrolled .hf_pt20{
    padding-top: 0px;
}

header.hf_header_scrolled .hf_black{
    color: #fff;
}

header.hf_header_scrolled .hf_bg_black{
    background-color: #fff;
}

header.hf_header_scrolled .hf_white{
    color: #333;
}

header.hf_header_scrolled .hf_bg_white{
    background-color: #333;
}

header.hf_header_scrolled #hf_logo.hf_logo_black{
    background-image: url(../../img/custom/header/kmd_natursteine_logo_white.svg);
}

header.hf_header_scrolled #hf_logo.hf_logo_white{
    background-image: url(../../img/custom/header/kmd_natursteine_logo.svg);
}

header.hf_header_scrolled #hf_logo{
    transform: scale(0.7) translateY(-40%);
}

.hf_nav_button, .hf_nav_button_text{
    vertical-align: middle;
}

.hf_nav_button{
    width: 30px;
    height: 15px;
    cursor: pointer;
}

.hf_nav_button_stroke{
    width: 100%;
    height: 1px;
}

.hf_nav_button_stroke:nth-child(2){
    margin: 6px 0px;
}

.hf_nav_button_text{
    margin-left: 27px;
}

.hf_nav_button_active{
    height: 27px;
    margin-top: -4px;
}

.hf_nav_button_text_active{
    margin-top: -7px;
}

.hf_rotate_down{
    margin-top:11px;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.hf_rotate_up{
    margin-top:-1px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.hf_fade_out{
    display: none;
}

#hf_logo{
    width:88px;
    height: 35px;
    margin-left: -44px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

#hf_logo.hf_logo_black{
    background-image: url(../../img/custom/header/kmd_natursteine_logo.svg);
}

#hf_logo.hf_logo_white{
    background-image: url(../../img/custom/header/kmd_natursteine_logo_white.svg);
}

#hf_nav_lang{
    margin-top: 1px;
}

#hf_nav_lang li:first-child{
    border-right: 2px solid #b4b4b4;
    padding-right: 6px;
    margin-right: 9px;
}

/* ____________________________________ Navigation ____________________________________ */
#hf_nav_container, #hf_nav_container .hf_black, #hf_nav_container .hf_black:before, #hf_nav_container .hf_white, #hf_nav_container .hf_white:before, #hf_nav_container.hf_bg_black, #hf_nav_container.hf_bg_white{
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -ms-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
}

#hf_nav_container{
    height: 0px;
    top:136px;
    overflow: hidden;
}

#hf_nav_container.hf_nav_open{
    height: calc(100% - 136px);
}

#hf_nav_container.hf_nav_scrolled{
    top:76px;
}

#hf_nav_container.hf_nav_open.hf_nav_scrolled{
    height: calc(100% - 76px);
}

#hf_nav_container.hf_nav_scrolled.hf_bg_black{
    background-color: #fff;
}

#hf_nav_container.hf_nav_scrolled.hf_bg_white{
    background-color: #333;
}

#hf_nav_container.hf_nav_scrolled .hf_black{
    color:#fff;
}

#hf_nav_container.hf_nav_scrolled .hf_black:before{
    background-color: #fff;
}

#hf_nav_container.hf_nav_scrolled .hf_white{
    color:#333;
}

#hf_nav_container.hf_nav_scrolled .hf_white:before{
    background-color: #333;
}

#hf_nav_container .hf_center_content{
    margin-top: -136px;
}

#hf_main_nav ul li a, #hf_sub_nav ul li a{
    pointer-events:none;
}

#hf_main_nav ul li ul li{
    margin-bottom: 17px;
}

#hf_main_nav ul li ul li:last-child{
    margin-bottom: 0px;
}

#hf_main_nav ul li ul li a, #hf_sub_nav ul li ul li a{
    pointer-events: inherit;
    position: relative;
}

#hf_main_nav ul li ul li a.hf_black:before, #hf_sub_nav ul li ul li a.hf_black:before, #hf_footer_nav #hf_footer_nav_content li ul li a.hf_black:before{
    background-color: #333;
}

#hf_main_nav ul li ul li a.hf_white:before, #hf_sub_nav ul li ul li a.hf_white:before, #hf_footer_nav #hf_footer_nav_content li ul li a.hf_white:before{
    background-color: #fff;
}

#hf_main_nav ul li ul li a:before, #hf_sub_nav ul li ul li a:before, #hf_footer_nav #hf_footer_nav_content li ul li a:before{
    content: "";
    position: absolute;
    width: 100%;
    left: 0px;
    visibility: hidden;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

#hf_main_nav ul li ul li a:before{
    height: 5px;
    bottom: 5px;
    -webkit-transition: all 0.6s ease-out 0s;
    transition: all 0.6s ease-out 0s;
}

#hf_sub_nav ul li ul li a:before{
    height: 2px;
    bottom: 0px;
    -webkit-transition: all 0.4s ease-out 0s;
    transition: all 0.4s ease-out 0s;
}

#hf_footer_nav #hf_footer_nav_content li ul li a:before{
    height: 3px;
    bottom: 0px;
    -webkit-transition: all 0.5s ease-out 0s;
    transition: all 0.5s ease-out 0s;
}

#hf_main_nav ul li ul li a:hover:before, #hf_sub_nav ul li ul li a:hover:before, #hf_footer_nav #hf_footer_nav_content li ul li a:hover:before, #hf_main_nav ul li ul li a.hf_nav_active:before, #hf_sub_nav ul li ul li a.hf_nav_active:before{
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

#hf_main_nav ul li ul li a.hf_black:hover, #hf_sub_nav ul li ul li a.hf_black:hover, #hf_main_nav ul li ul li a.hf_white:hover, #hf_sub_nav ul li ul li a.hf_white:hover{
    opacity: 0.5;
}

#hf_main_nav ul li ul li a.hf_nav_active:hover, #hf_sub_nav ul li ul li a.hf_nav_active:hover{
    opacity: 1;
}

#hf_sub_nav ul li ul li{
    margin-bottom: 16px;
}

#hf_sub_nav ul li ul li:last-child{
    margin-bottom: 0px;
}

#hf_main_nav ul li, #hf_main_nav ul li ul li, #hf_sub_nav ul li, #hf_sub_nav ul li ul li{
    -moz-transform: translateY(50px);
    -webkit-transform: translateY(50px);
    -o-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
}

#hf_main_nav ul li.hf_ani_nav_li, #hf_main_nav ul li ul li.hf_ani_nav_li, #hf_sub_nav ul li.hf_ani_nav_li, #hf_sub_nav ul li ul li.hf_ani_nav_li{
    -moz-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    -o-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
}

#hf_main_nav ul li.hf_ani_nav_li, #hf_main_nav ul li ul li.hf_ani_nav_li{
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -ms-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

#hf_sub_nav ul li.hf_ani_nav_li, #hf_sub_nav ul li ul li.hf_ani_nav_li{
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

#hf_main_nav ul li.hf_ani_nav_li{
    -webkit-transition-delay: 0.7s;
    transition-delay: 0.7s;
}

#hf_main_nav ul li ul li.hf_ani_nav_li:first-child{
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s;
}

#hf_main_nav ul li ul li.hf_ani_nav_li:nth-child(2){
    -webkit-transition-delay: 0.9s;
    transition-delay: 0.9s;
}

#hf_main_nav ul li ul li.hf_ani_nav_li:nth-child(3){
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

#hf_sub_nav ul li.hf_ani_nav_li{
    -webkit-transition-delay: 1.1s;
    transition-delay: 1.1s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:first-child{
    -webkit-transition-delay: 1.2s;
    transition-delay: 1.2s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(2){
    -webkit-transition-delay: 1.3s;
    transition-delay: 1.3s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(3){
    -webkit-transition-delay: 1.4s;
    transition-delay: 1.4s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(4){
    -webkit-transition-delay: 1.5s;
    transition-delay: 1.5s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(5){
    -webkit-transition-delay: 1.6s;
    transition-delay: 1.6s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(6){
    -webkit-transition-delay: 1.7s;
    transition-delay: 1.7s;
}

#hf_sub_nav ul li ul li.hf_ani_nav_li:nth-child(7){
    -webkit-transition-delay: 1.8s;
    transition-delay: 1.8s;
}

#hf_content{
    /*overflow-x: hidden;*/
}

/* ____________________________________ Footer ____________________________________ */
#hf_footer_nav{
    opacity: 0;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -ms-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}

#hf_footer_nav.foot_fade{
    opacity: 1;
}

#hf_footer_nav #hf_footer_nav_content li a{
    pointer-events:none;
}

#hf_footer_nav #hf_footer_nav_content li ul li a{
    pointer-events: inherit;
}

#hf_footer_nav #hf_footer_nav_content li ul li{
    margin-right: 50px;
}

#hf_footer_nav #hf_footer_nav_content li ul li:last-child{
    margin-right: 0px;
}

#hf_footer_nav #hf_footer_nav_content li ul li a.hf_white:hover, #hf_footer_nav #hf_footer_nav_content li ul li a.hf_black:hover{
    opacity: 0.5;
}

#hf_footer_nav #hf_footer_nav_content ul li, #hf_footer_nav #hf_footer_nav_content ul li ul li, #hf_footer_nav .hf_fleft, #hf_footer_nav .hf_fright, #hf_footer_claim{
    -moz-transform: translateY(50px);
    -webkit-transform: translateY(50px);
    -o-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
}

#hf_footer_nav #hf_footer_nav_content ul li.hf_ani_nav_li, #hf_footer_nav #hf_footer_nav_content ul li ul li.hf_ani_nav_li, #hf_footer_nav .hf_fleft.hf_ani_nav_li, #hf_footer_nav .hf_fright.hf_ani_nav_li, #hf_footer_claim.hf_ani_nav_li{
    -moz-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    -o-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
}

#hf_footer_nav #hf_footer_nav_content ul li, #hf_footer_nav #hf_footer_nav_content ul li ul li{
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -ms-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

#hf_footer_nav .hf_fleft, #hf_footer_nav .hf_fright, #hf_footer_claim{
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

#hf_footer_nav #hf_footer_nav_content ul li.hf_ani_nav_li{
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

#hf_footer_nav #hf_footer_nav_content ul li ul li:first-child.hf_ani_nav_li{
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

#hf_footer_nav #hf_footer_nav_content ul li ul li:nth-child(2).hf_ani_nav_li{
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

#hf_footer_nav #hf_footer_nav_content ul li ul li:nth-child(3).hf_ani_nav_li{
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
}

#hf_footer_nav .hf_fleft.hf_ani_nav_li{
    -webkit-transition-delay: 0.7s;
    transition-delay: 0.7s;
}

#hf_footer_claim.hf_ani_nav_li{
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s;
}

#hf_footer_nav #hf_meta_nav.hf_ani_nav_li{
    -webkit-transition-delay: 0.9s;
    transition-delay: 0.9s;
}

#hf_footer_nav #hf_service_nav.hf_ani_nav_li{
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

#hf_footer_nav #hf_footer_social.hf_ani_nav_li{
    -webkit-transition-delay: 1.1s;
    transition-delay: 1.1s;
}

#hf_footer_nav #hf_service_nav{
    margin-right: 30px;
}

#hf_footer_nav #hf_service_nav li, #hf_footer_nav #hf_meta_nav li {
    display: inline-block;
    padding: 0px 10px;
}

#hf_footer_nav #hf_service_nav li:first-child, #hf_footer_nav #hf_meta_nav li:first-child {
    padding: 0px 10px 0px 0px;
}

#hf_footer_nav #hf_service_nav li:last-child , #hf_footer_nav #hf_meta_nav li:last-child {
    padding: 0px 0px 0px 10px;
}

#hf_footer_claim a:hover, #hf_footer_nav #hf_meta_nav li a:hover, #hf_footer_nav #hf_service_nav li a:hover, #hf_footer_nav #hf_footer_social a:hover{
    opacity: 0.5;
}

#hf_footer_nav #hf_footer_social{
    margin-top: -2px;
}

#hf_footer_nav #hf_footer_social a{
    display: inline-block;
    padding: 0px 5px;
}

#hf_footer_claim{
    width:166px;
    height: 73px;
    margin:-57px 0px 0px -83px;
}