/* ibm-plex-sans-regular - latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/ibm-plex-sans-v14-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/ibm-plex-sans-v14-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/ibm-plex-sans-v14-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/ibm-plex-sans-v14-latin-regular.svg#IBMPlexSans') format('svg'); /* Legacy iOS */
}
/* ibm-plex-sans-italic - latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../Fonts/ibm-plex-sans-v14-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/ibm-plex-sans-v14-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/ibm-plex-sans-v14-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/ibm-plex-sans-v14-latin-italic.svg#IBMPlexSans') format('svg'); /* Legacy iOS */
}
/* ibm-plex-sans-700 - latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/ibm-plex-sans-v14-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/ibm-plex-sans-v14-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/ibm-plex-sans-v14-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/ibm-plex-sans-v14-latin-700.svg#IBMPlexSans') format('svg'); /* Legacy iOS */
}
/* ibm-plex-sans-700italic - latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../Fonts/ibm-plex-sans-v14-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/ibm-plex-sans-v14-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/ibm-plex-sans-v14-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/ibm-plex-sans-v14-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/ibm-plex-sans-v14-latin-700italic.svg#IBMPlexSans') format('svg'); /* Legacy iOS */
}

body {
    position: relative;
    font-family: 'IBM Plex Sans', sans-serif;
    font-weight: 400;
    font-size: 24px;
    color: #4B5B66;
    line-height: 1.44444;
    padding-top: 88px;
}

a,
a:hover,
a:active,
a:focus {
    color: #4B5B66;
}

a.download-link:before {
    content: "";
    display: inline-block;
    float: left;
    background: url(../Icons/lan4you-website-download-icon.svg) no-repeat center center;
    width: 15px;
    height: 20px;
    margin-right: 10px;
}


/*Button*/
.btn.btn-primary,
.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-primary.dropdown-toggle:focus {
    background: #FF5303;
    color: #fff;
    border: 2px solid #FF5303;
    outline: 0 !important;
    border-radius: 90px;
    box-shadow: none;
    padding: 10px 28px;
    font-weight: 400;
    font-size: 16px;
    text-transform: none;
    text-decoration: none !important;
}

.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-primary.dropdown-toggle:focus {
    background: #E64A02;
    border: 2px solid #E64A02;
    color: #FFF;
}

.btn.btn-secondary,
.btn.btn-secondary:hover,
.btn.btn-secondary:focus,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show>.btn-secondary.dropdown-toggle,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.btn-secondary:not(:disabled):not(.disabled):active:focus,
.show>.btn-secondary.dropdown-toggle:focus {
    background: #FFF;
    color: #1F3240;
    border: 2px solid #FF5303;
    outline: 0 !important;
    border-radius: 90px;
    box-shadow: none;
    padding: 10px 28px !important;
    font-weight: 400;
    font-size: 16px;
    text-transform: none;
    text-decoration: none !important;
}

.btn.btn-secondary:hover,
.btn.btn-secondary:focus,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show>.btn-secondary.dropdown-toggle,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.btn-secondary:not(:disabled):not(.disabled):active:focus,
.show>.btn-secondary.dropdown-toggle:focus {
    background: #FFBA9A;
    border: 2px solid #FF5303;
    color: #1F3240;
    font-weight: 400 !important;
}

@media(max-width: 1199px) {
    #mainmenu .btn.btn-secondary {
        padding: 7px 15px !important;
    }
}

@media(max-width: 991px) {
    #mainmenu .btn.btn-secondary {
        max-width: 225px;
        padding: 5px 10px !important;
        margin-top: 15px;
    }
}

/*Hintergründe*/
.background {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
}

.background.bg-orange {
    background: #FF5303;
}

.background.bg-header {
    background: #E9F1F2;
}

.background.bg-standard {
    background: #FBFCFD;
}

/*Logo*/

.navbar-brand {
    padding-left: 15px;
}


.navbar-brand-image {
    display: block;
    position: relative;
    width: auto;
    height: 60px;
}

/*Navigation*/

#navbar {
    height: 88px;
    padding: 10px 0;
    background: #FFF !important;
}

#navbar > .container {
    max-height: 100%;
    padding-left: 0;
    padding-right: 0;
}

.navbar-toggler {
    border: 0;
    outline: 0 !important;
    position: relative;
    z-index: 1050;
}

.toggler-icon-box {
    position: relative;
    display: inline-block;
    width: 35px;
    height: 24px;
}

.toggler-icon {
    top: auto;
    bottom: 0;
    transition-delay: .13s;
    transition-timing-function: cubic-bezier(.55,.055,.675,.19);
    transition-duration: .13s;
    display: block;
}

.toggler-icon,
.toggler-icon:before,
.toggler-icon:after {
    position: absolute;
    width: 35px;
    height: 4px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    border-radius: 2px;
    background-color: #000;
}

.toggler-icon:after,
.toggler-icon:before {
    display: block;
    content: "";
}

.toggler-icon:before {
    transition: top .12s cubic-bezier(.33333,.66667,.66667,1) .2s,transform .13s cubic-bezier(.55,.055,.675,.19);
    top: -10px;
}

.toggler-icon:after {
    top: -20px;
    transition: top .2s cubic-bezier(.33333,.66667,.66667,1) .2s,opacity .1s linear;
    bottom: -10px;
}

.navbar-toggler[aria-expanded="true"] .toggler-icon {
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: translate3d(0,-10px,0) rotate(-45deg);
}

.navbar-toggler[aria-expanded="true"] .toggler-icon:before {
    top: 0;
    transition: top .1s cubic-bezier(.33333,0,.66667,.33333) .16s,transform .13s cubic-bezier(.215,.61,.355,1) .25s;
    transform: rotate(-90deg);
}

.navbar-toggler[aria-expanded="true"] .toggler-icon:after {
    top: 0;
    transition: top .2s cubic-bezier(.33333,0,.66667,.33333),opacity .1s linear .22s;
    opacity: 0;
}

#mainmenu {
    z-index: 2;
    background: #FFF;
}

#mainmenu.show {
    height: calc(100vh - 77px);
    overflow: auto;
}

#mainmenu .navbar-nav {
    min-height: calc(100vh - 180px);
    margin-top: 50px;
    margin-bottom: 50px;
    padding: 0 35px;
}

.navbar-light .navbar-nav .nav-link {
    font-size: 26px;
    font-weight: 400;
    color: #000;
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:active,
.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show>.nav-link {
    color: #000;
    font-weight: 700;
}

.bg-light {
    background-color: transparent !important;
}

#scroll-to-top {
    position: fixed;
    bottom: 25px;
    right: 25px;
    width: 50px;
    height: 50px;
    z-index: 1000;
}

a#to-top {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: url(../Icons/arrow-up.svg) no-repeat center center;
    background-color: transparent;
    background-size: cover;
    box-shadow: -10px 6px 26px rgba(0,0,0,.16);
}

/*Header*/

h1,
h2,
h2.standard-header {
    font-size: 36px;
    font-weight: 700;
    text-transform: none;
    margin-bottom: 30px;
    line-height: 45px;
    color: #1F3240;
}

h2.standard-header {
    margin-bottom: 25px;
}

h2.standard-header > span.heading-top {
    display: block;
    position: relative;
    font-size: 14px;
    line-height: 24px;
    color: #FF5303;
}

h2.small-header {
    font-size: 32px;
    font-weight: 700;
    text-transform: none;
    margin-bottom: 35px;
    line-height: 40px;
    color: #1F3240;
}

h3 {
    font-size: 40px;
    font-weight: 700;
    text-transform: none;
    margin-bottom: 25px;
    line-height: 48px;
    color: #2FA0E9;
}

h4 {
    font-size: 32px;
    font-weight: 700;
    text-transform: none;
    margin-bottom: 20px;
    line-height: 40px;
    color: #2FA0E9;
}

/*Slider*/
.sp-next-arrow:after,
.sp-next-arrow:before,
.sp-previous-arrow:after,
.sp-previous-arrow:before {
    background-color: #FF5303;
}

.sp-horizontal .sp-arrows {
    margin-top: -10px;
}

.sp-arrow {
    position: absolute;
    display: block;
    width: 15px;
    height: 25px;
    cursor: pointer;
}

.sp-horizontal .sp-previous-arrow {
    left: 0px;
}

.sp-horizontal .sp-next-arrow,
.sp-horizontal.sp-rtl .sp-previous-arrow {
    right: 0px;
}

/*Page Header*/

#home-header {
    background: rgb(233,241,242);
    background: linear-gradient(180deg, rgba(233,241,242,1) 0%, rgba(233,241,242,1) 77%, rgba(251,252,253,1) 77%);
}

#home-header .page-header-image {
    padding-top: 50px;
}

#ueberuns-header .page-header-image {
    margin-top: 40px;
}

#leistungen-header,
#ueberuns-header {
    font-size: 20px;
    background: rgb(233,241,242);
    background: linear-gradient(180deg, rgba(233,241,242,1) 0%, rgba(233,241,242,1) 77%, rgba(251,252,253,1) 77%);
}

/*Images*/

.image-box img {
    max-width: 80%;
}

/*Textbox*/
.textbox,
.textbox-support {
    display: block;
    position: relative;
    height: 100%;
    width: 100%;
    padding: 30px;
    padding-right: 40px;
    background: #FFF;
    color: #1F3240;
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.06);
    font-size: 16px;
}

.textbox-support {
    padding: 20px 30px;
    padding-right: 40px;
}

.textbox h3,
.textbox-support h3 {
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 15px;
}

/*Leistungen*/

.leistung-box,
.service-box {
    display: block;
    position: relative;
    width: 100%;
    padding: 35px;
    background: #FFF;
    color: #4B5B66;
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.06);
    font-size: 20px;
}

.service-box {
    height: 100%;
}

.leistung-box h3,
.service-box h3 {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 25px;
}

.leistung-icon {
    padding-top: 40px;
}

.hotline-box {
    position: relative;
    width: 100%;
    background: #E9F1F2;
    color: #1F3240;padding: 30px;
}

.hotline-nummer p {
    font-weight: bold;
    font-size: 32px;
    margin: 0;
}

.hotline-zeiten p {
    font-size: 24px;
}

#hotline-lany {
    display: none;
    position: absolute;
}

/*Team*/
.team-name {
    font-size: 20px;
    font-weight: bold;
    color: #2FA0E9;
}

.team-role {
    font-size: 16px;
    color: #4B5B66;
}

/*Über Uns*/
#geschichte {
    font-size: 20px;
}

/*Kontakt*/
#kontakt {
    padding-bottom: 100px;
}

.contact-box {
    background: #E9F1F2;
}

.contact-textbox {
    padding-top: 40px;
    padding-bottom: 40px;
}

.contact-textbox h2 {
    font-size: 40px;
}

.contactform {
    position: relative;
    display: block;
    padding-top: 0px;
    padding-bottom: 100px;
    z-index: 2;
}

#contact-image {
    position: absolute;
    display: block;
    width: 250px;
    height: 307px;
    bottom: 0;
    right: 0;
}

/*Form*/
.form-group .form-label {
    display: none;
}

.form-control {
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid #2FA0E9;
    background-color: transparent;
    color: #4B5B66;
    transition: none;
    font-size: 14px;
    padding-left: 0;
}

.form-control:focus {
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #2FA0E9;
    background-color: transparent;
    color: #4B5B66;
    outline: 0;
    box-shadow: none;
    padding-left: 0;
}

.form-check {
    padding-left: 0;
}

.form-check-label {
    font-size: 14px;
}

form .clearfix p {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 700;
}

.form-check a {
    text-decoration: underline;
}

input[type="checkbox"] {
    margin-right: 10px;
}

input[type="checkbox"].error + span,
input[type="checkbox"].error + span a {
    color: #E73339;
}

.input.checkbox .error.help-block {
    display: none;
}

textarea {
    min-height: 100px;
}

span.required {
    color: #E73339;
}

div.error.form-text {
    font-size: 14px;
    color: #E73339;
    line-height: 1.0;
}

.form-navigation {
    padding-top: 25px;
}

.form-navigation .btn-toolbar {
    justify-content: left;
}

h2.confirmation-message-header {
    color: #1F3240;
    text-align: center !important;
    margin-top: 0 !important;
    margin-bottom: 35px;
}

p.confirmation-message-body {
    text-align: center;
    font-size: 22px;
    margin-bottom: 35px;
}

/*Modal*/
.modal-backdrop.show {
    opacity: .5;
}

.modal-content {
    border-radius: 0;
    border: 3px solid #4B5B66;
    background-clip: border-box;
}

.modal-header {
    border: 0;
}

.modal-body {
    font-size: 18px;
}

.modal-title {
    color: #1F3240;
    margin: 0;
    font-size: 26px;
}

.modal-body h2 {
    font-size: 24px;
    margin-top: 25px;
    margin-bottom: 20px;
    text-align: left;
}

.modal-body h3 {
    text-align: left;
}

.modal-header .close {
    color: #1F3240;
    opacity: 1;
    font-size: 32px;
    padding: 10px 15px;
}

.modal-body .spinner-border.spinner-modal {
    width: 50px;
    height: 50px;
}

.modal-body a.download-link:before {
    width: 17px;
    height: 22px;
}

/*Footer*/

footer {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 40px;
    padding-bottom: 30px;
    background: #FF5303;
    color: #FFF;
    font-size: 16px;
}

footer a {
    color: #FFF !important;
}

footer .copyright {
    margin-top: 30px;
    font-size: 14px;
}

footer .sitemap ul {
    list-style: none;
    padding: 0;
}

footer .sitemap ul li {
    display: block;
}

#error-page img {
    max-width: 75%;
    display: block;
    margin: auto;
    margin-bottom: 50px;
}

#impressum-datenschutz {
    font-size: 20px;
}

@media(min-width: 758px) and (max-width: 991px) {
    #navbar > .container {
        max-width: none;
    }

    .navbar-light .navbar-toggler {
        margin-right: 15px;
    }

    .navbar-brand {
        margin-left: 15px;
    }
}

@media(min-width:768px){

    body {
        padding-top: 100px;
    }

    .background {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    /*Navigation*/

    .navbar-brand-image {
        height: 75px;
    }

    #navbar {
        height: 100px;
    }

    #mainmenu.show {
        /*height: calc(100vh - 95px);*/
        height: auto;
        box-shadow: 0px 1px 4px #555;
    }

    #mainmenu .navbar-nav {
        /*min-height: calc(100vh - 195px);*/
        min-height: 0;
        margin-bottom: 50px;
    }

    /*Header*/

    h1,
    h2,
    h2.standard-header {
        font-size: 56px;
        line-height: 64px;
        margin-bottom: 40px;
    }

    /*Page Header*/

    #home-header .page-header-image {
        padding-top: 100px;
    }

    #ueberuns-header .page-header-image {
        margin-top: -25px;
    }

    /*Images*/

    .image-box img {
        max-width: 60%;
    }

    /*Slider*/
    .sp-horizontal .sp-previous-arrow {
        left: -35px;
    }

    .sp-horizontal .sp-next-arrow,
    .sp-horizontal.sp-rtl .sp-previous-arrow {
        right: -35px;
    }

    /*Hotline*/

    .hotline-nummer p {
        font-size: 20px;
    }

    .hotline-zeiten p {
        font-size: 18px;
        margin-bottom: 0;
    }

    #hotline-lany {
        display: block;
        right: 180px;
        top: -85px;
        width: 236px;
        height: 272px;
    }

    /*Kontakt*/
    #kontakt {
        padding-bottom: 200px;
    }

    .contact-textbox {
        padding-top: 75px;
        padding-left: 50px;
        padding-right: 50px;
    }

    .contact-textbox h2 {
        font-size: 40px;
        line-height: 50px;
    }

    .contactform {
        padding-left: 50px;
        padding-right: 50px;
    }

    #contact-image {
        position: absolute;
        display: block;
        width: 350px;
        height: 430px;
    }

    /*Footer*/
    footer {
        padding-top: 80px;
    }

    /*Errorpage*/
    #error-page {
        padding-top: 50px;
    }

    .error-text {
        position: relative;
        z-index: 2;
    }

    #error-image {
        margin-top: -100px;
    }
}
