/* blau #043057 - grau #898778 - orange #E07801  */

/* roboto-condensed-300 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/roboto-condensed-v25-latin-300.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-condensed-regular - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/roboto-condensed-v25-latin-regular.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-condensed-700 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/roboto-condensed-v25-latin-700.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* RESET ------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    background: 0;
    text-decoration: none;
    vertical-align: baseline;
}


/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    font-size: 100.01%;
    height: 100.1%;
}

ol,
ul {
    list-style: square;
    margin-bottom: 5%;
    padding-left: 20px;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

div {
    position: relative;
    min-width: 0;
}

strong {
    font-weight: 600;
}

em,
i {
    font-style: italic;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
}


/* Ende RESET ---------------------------------- */

body {
    margin: 0 auto;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.95em;
    text-align: left;
    color: #666;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    font-weight: 300;
    line-height: 140%;
}

span.hyphensNone {
    -o-hyphens: none;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

#header {
    position: fixed;
    width: 100%;
    /* height: 125px; */
    /*height: 85px;*/
    height: 111px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 0px -0px rgba(105, 105, 105, 1);
    box-shadow: 0px 0px 0px -0px rgba(105, 105, 105, 1);
    /* border-top: 25px solid #ECECEC; */
    /*border-top: 25px solid rgb(242, 242, 242);*/
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    z-index: 500;
}

#inner-header {
    position: relative;
    width: 980px;
    width: 90%;
    min-width: 960px;
    /* max-width: auto !important; */
    max-width: 1280px;
    margin: 0 auto;
}

.topbar {
    background-color: #F2F2F2 !important;
    height: auto;
    padding: 6px 0;
}

.topbar p {
    float: right;
    color: #E07801;
    margin: 0;
    margin-right: 0px;
    margin-right: 10%;
}

.topbar a:any-link,
.topbar i {
    color: #095B8B;
    text-decoration: none;
}

.topbar a:hover {
    color: #E07801;
}

#logo {
    position: relative;
    float: left;
    width: 28%;
    height: auto;
    max-width: 415px;
    margin: 15px 0 0 -7px;
    padding-top: 25px;
    background: 0;
    /* neu */
    width: auto !important;
    /* margin-top: 58px; */
    margin-top: 18px;
}

#logo.home {
    margin-top: -18px;
}

#navigation {
    position: relative;
    float: right;
    /*margin-left:160px;*/
    padding-bottom: 10px;
    padding-left: 0px;
    padding-top: 10px;
    font-family: 'Roboto Condensed', sans-serif;
    text-align: left;
    /* margin-top: 63px; */
    margin-top: 23px;
    background: 0;
    z-index: 400;
}

#navigation.home {
    margin-top: -13px;
}

.button .teaser-h h3 {
    font-size: 1.2rem;
}

.nivo-caption {
    font-weight: 300;
    padding-left: 13%;
    padding-right: 13%;
    bottom: 4%;
}

.wrapper {
    position: relative;
    /*width:980px;*/
    width: 70%;
    min-width: 960px;
    max-width: 1280px;
    margin: 0 auto;
}

.zeile.homepage,
.zeile-innen.homepage {
    margin-top: 5%;
}

.wrapper,
.zeile-innen {
    position: relative;
    /* width: 76% !important; */
    width: 90% !important;
    margin: 0 auto;
}

#home-img {
    position: relative;
    float: left;
    width: 100%;
    margin: 0 0 0px 0;
    margin-left: 0px;
    /* margin-top: 150px; */
    /* margin-top: 180px; */
    margin-top: 110px;
}

#home-img img {
    width: 100%;
    height: auto;
    margin-left: 0;
    -webkit-box-shadow: 0px 9px 3px -6px rgba(105, 105, 105, 1);
    box-shadow: 0px 9px 3px -6px rgba(105, 105, 105, 1);
}

#quadrat {
    position: relative;
    float: right;
    z-index: 450 !important;
    margin-top: -20%;
    margin-right: -25px;
    /*margin:200px 0 0 1250px; 
	position:absolute;*/
    /* neu */
    margin-right: 25px;
    margin-top: -14%;
}

#grey-block {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 30px 0;
    padding-top: 30px;
    background-color: #ececec;
    /* neu */
    z-index: 499;
    background-color: transparent;
    position: relative;
    /* top: -65px; */
}

#grey-block h3 {
    text-align: center;
    font-size: 1.2rem;
    display: block;
    margin-bottom: 10px;
    color: #095B8B;
    line-height: 25px;
    font-weight: 400 !important;
}

.button {
    border-radius: 15px;
}

.button .i-start {
    padding-top: 20px !important;
}

#grey-block a.button-bg,
#grey-block a.button-bg-first {
    display: inline-block;
    width: 15%;
    color: #fff;
}

.bg-grey {
    /* background-color: #ECECEC; */
    background-color: rgb(242, 242, 242);
    border: 1px solid transparent;
}

.bg-grey:hover,
.bg-grey:focus {
    /* background-color: #EDEEF0; */
    background-color: rgb(242, 242, 242);
    border: 1px dashed rgba(9, 91, 139, 0.5);
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.12);
}

.bg-grey:hover h3,
.bg-grey:focus h3,
.bg-grey:hover p,
.bg-grey:focus p {
    color: #fff !important;
}

.bg-orange {
    background-color: rgb(224, 120, 1);
}

.bg-orange:hover,
.bg-orange:focus,
.bg-blue:hover,
.bg-blue:focus {
    background-color: rgb(242, 242, 242);
}

.bg-orange:hover h2,
.bg-blue:hover h2,
.bg-orange:hover h2::before,
.bg-blue:hover h2::before {
    color: #095B8B !important;
}

.bg-blue {
    background-color: #095B8B;
}

.box.teaser {
    margin-top: 5%;
    border-radius: 15px;
    padding: 20px !important;
}

.box.teaser h2 {
    font-size: 1.3em;
    /*1.5*/
    color: #E07801;
    margin-top: 30px;
    background-color: transparent !important;
}

.box.teaser h2::before {
    font-family: 'Font Awesome 5 Pro';
    font-size: 1.4em;
    vertical-align: -15%;
    color: #095B8B;
    padding: 0px 25px 0 0;
    transition: all .35s;
}

.box.teaser h2#aktuelles::before {
    content: "\f1ea";
}

.box.teaser h2#unternehmen::before {
    content: "\f1ad";
}

.box.teaser h2#internationalesSteuerrecht::before {
    content: "\f0ac";
}

.box.teaser h2#privat::before {
    content: "\f0c0";
}

.box.teaser:hover h2::before {
    font-size: 1.6em;
}

.teaser-h,
.teaser-b {
    padding: 25px 25px 10px;
}

#content {
    position: relative;
    width: 100%;
    padding-bottom: 160px;
}

.news .teaser {
    /* background-color: #EDEEF0; */
    background-color: rgb(242, 242, 242);
    min-height: 280px;
    padding: 30px;
    margin: 15px;
    cursor: move;
    color: #333;
    border-radius: 15px;
    border: 1px solid #ECECEC;
}

.news .teaser a:link.titel {
    display: block;
    margin-bottom: 10px;
    color: #095B8B;
    min-height: 80px;
    line-height: 25px;
}

.news .teaser a:link,
.news .teaser a:visited {
    font-size: 1.3em;
    /*1.5*/
    text-decoration: none;
}

.news .teaser .fa-2x {
    font-size: 1.5rem;
    color: #095B8B;
}

.news .slick-prev,
.news .slick-next {
    z-index: 1000;
}

.news .slick-next {
    right: -35px;
}

.karriere-statements button.slick-prev {
    left: 10px;
}

.karriere-statements button.slick-next {
    right: 10px;
}

.karriere-statements .slick-slide img {
    height: 350px !important;
    max-width: 96% !important;
}

#main {
    position: relative;
    float: left;
    width: 60%;
    margin-bottom: 20px;
}

#right {
    position: relative;
    float: right;
    width: 30%;
    padding: 20px 20px 20px 20px;
    margin-top: 10px;
    margin-bottom: 20px;
    /* background: #ECECEC; */
    background: rgb(242, 242, 242);
    /* border: 1px solid #898778; */
    border: 1px solid #ECECEC;
    border-radius: 15px;
}

#right ol,
#right ul {
    list-style: none;
    padding-left: 32px;
}

p {
    margin-bottom: 1.2em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.03em;
    line-height: 140%;
    /* neu */
    font-weight: 300 !important;
}

h1 {
    font-size: 2.0em;
    font-weight: normal;
    text-transform: uppercase;
    color: #095B8B;
    margin-bottom: 1.2em;
}

h2 {
    font-size: 1.4em;
    font-weight: normal;
    color: #043057;
    padding: 0 0 0.15em 0;
    margin-bottom: 0.8em;
}

h3 {
    font-size: 1.15em;
    font-weight: 700;
    color: #043057;
    padding: 0 0 0.15em 0;
    margin-bottom: 0.8em;
}

h4 {
    font-size: 1.15em;
    font-weight: normal;
    color: #095B8B;
    margin-bottom: 0.8em;
}

h3.start {
    text-transform: uppercase;
}

.left h2 {
    font-size: 1.4em;
    font-weight: normal;
    color: #043057;
    padding: 0 0 0.15em 0;
    margin-bottom: 1.0em;
    border-bottom: 1px solid #043057;
}

.text-center,
.center {
    text-align: center;
}

.main ul,
.sp-01 ul,
.sp-02 ul {
    list-style-type: square !important;
    margin-bottom: 1.8em;
    padding-left: 25px;
}

#main li,
.sp-01 li,
.sp-02 li,
.sp-re li,
.sp-li li {
    line-height: 1.5em;
    margin-bottom: 0.425em;
}

a:link,
a:visited {
    color: #E07801;
    text-decoration: none;
}

a:hover,
a:focus,
a:active {
    color: #095B8B;
    text-decoration: underline;
}

a img {
    border: 0px none;
}

hr {
    background-color: #043057;
    border: solid #043057 1px;
    height: 1px;
}

#owa-tracker-post-container {
    height: 0;
    overflow: hidden;
}

.spalten {
    float: left;
    width: 100%;
    /*margin: 1% 0 5% 1%;*/
    border: 0px solid red;
}

.sp-li {
    max-width: 45%;
    float: left;
    margin: 0 3% 0 0;
    padding: 3% 3% 3% 0;
    border: 0px solid red;
}

.sp-re {
    max-width: 45%;
    float: left;
    margin: 0 0 0 0;
    padding: 3% 3% 3% 0;
    border: 0px solid blue;
}

.zwei-spalten .sp-01 {
    margin: 0 1% 0 0;
}

.zwei-spalten .sp-02 {
    float: right;
    margin: 0 0 0 0;
}

.zwei-spalten .sp-01,
.zwei-spalten .sp-02 {
    /*width: 46%;*/
    width: 43.8%;
    min-height: 90px;
}

.vier-spalten {
    float: left;
    text-align: left;
    width: 100%;
    margin: 0 0 2% 0;
    border: 0px solid red;
}

.vier-spalten p {
    text-align: left;
}

.sp-01 {
    float: left;
    margin: 0 4% 0 0;
}

.sp-02 {
    float: left;
    margin: 0 4% 0 0;
}

.sp-03 {
    float: left;
    margin: 0 4% 0 0;
}

.sp-04 {
    float: right;
    margin: 0 0 0 0;
}

.sp-01,
.sp-02,
.sp-03,
.sp-04 {
    width: 21.5%;
}

.vier-spalten-kontakt {
    float: left;
    text-align: left;
    width: 100%;
    margin: 0 0 10px 0;
}

.sp-kontakt {
    width: 28%;
    min-height: 1.5em;
    float: left;
    margin: 0 4% 0 0;
}

.sp-01-team,
.sp-02-team,
.sp-03-team,
.sp-04-team {
    width: 21.5%;
    min-height: 110px;
    float: left;
    margin: 0 2% 0 0;
}

.sp-01-team p,
.sp-02-team p,
.sp-03-team p,
.sp-04-team p {
    margin-bottom: 0;
}

ul.team-filter {
    margin-bottom: 1% !important;
}

.team-filter li {
    cursor: pointer;
}

.team-filter li.no-link {
    cursor: default;
    pointer-events: none;
}

.team-filter li.active {
    color: #E07801;
    font-weight: normal;
    text-decoration: none;
}



.team-filterbar > select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    height: 45px;
    padding-left: 4px;
    background-color: #e6e6e6;
    /* color: #095B8B; */
    color: #666;
    border-radius: 6px;
    outline: none;
    cursor: pointer;
    position: relative;
    /* #####*/
    font-family: 'Roboto Condensed', sans-serif !important;
    letter-spacing: 0.03em;
    line-height: 140%;
    font-weight: 300 !important;
    font-size: 18px !important;
    font-weight: normal;
    color: #043057;
}

.team-filter option {
    font-family: 'Roboto Condensed', sans-serif !important;
    letter-spacing: 0.03em;
    line-height: 140%;
    font-weight: 300 !important;
    font-size: 14px;
    font-weight: normal;
    color: #043057;
}

.team-filterbar::before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f329';
    font-size: 20px;
    position: absolute;
    right: 15px;
    top: 12px;
    /* color: #095B8B; */
    color: #666;
    z-index: 1000;
    pointer-events: none;
}

.team-filterbar > select::-ms-expand {
    display: none;
}

/* .team-filterbar {
    padding: 1em;
    background-color: #e6e6e6;
    font-size: 1.4em;
    font-weight: normal;
    color: #043057;
    padding: 0 0 0.15em 0;
} */

/* select.team-filter {
    width: 100%;
    font-size: inherit;
    padding: 0 0 0 10px;
    margin: 0;
    background-color: #e6e6e6;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    height: 40px;
    border-radius: 0;
} */

.mitarbeiter {
    border-radius: 15px;
    width: 23%;
    /*23.5%*/
    float: left;
    height: 100%;
    /* min-height: 1px; */
    min-height: 430px;
    background-color: #ECECEC;
    margin: 1% 2% 1% 0;
    overflow: hidden;
    transition: transform .2s, color .2s linear .2s, background-color .4s linear, -webkit-transform .3s;
}

.mitarbeiter:last-child {
    margin: 1% 0 1% 0;
}

.mitarbeiter:hover {
    background: #E07801;
    color: #fff;
}

.mitarbeiter img {
    margin: 0 auto;
    display: block;
    margin-bottom: 4%;
}

.mitarbeiter p {
    text-align: center;
    font-size: 14px;
}

.mitarbeiter p.position {
    min-height: 86px;
    padding: 0 1% 0 1%;
}

.mitarbeiter p.kontakt {
    line-height: 180%;
}

.mitarbeiter h3 {
    padding: 20px;
    margin-bottom: 0;
    text-align: center;
    color: #095B8B;
}

.mitarbeiter i {
    color: #095B8B;
}

.mitarbeiter a:link,
.mitarbeiter a:visited {
    color: #666 !important;
    text-decoration: none;
    transition: transform .2s
}

.mitarbeiter a:hover,
.mitarbeiter a:focus,
.mitarbeiter a:active {
    color: #fff;
    text-decoration: underline;
    transition: transform .2s
}

.mitarbeiter:hover a:link,
.mitarbeiter:hover a:visited {
    color: #fff !important;
    text-decoration: none;
}

.mitarbeiter:hover a:hover,
.mitarbeiter:hover a:focus,
.mitarbeiter:hover a:active {
    color: #fff;
    text-decoration: underline;
}

p.berater span {
    font-weight: 700;
    font-size: 120%;
}

img.berater {
    border-radius: 15px;
}

h3.trigger::before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f329';
    font-weight: 200;
    display: inline-block;
    margin-left: 15px;
    margin-right: 30px;
    color: #095B8B;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}

.PortalTrigger::before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f329';
    font-weight: 200;
    display: inline-block;
    padding-left: 15px;
    padding-right: 30px;
}

.button-bg-first {
    text-align: center;
    padding: 6px 0;
    background-color: #898778;
    border-radius: 6px;
    -webkit-box-shadow: 3px 5px 2px #888888;
    box-shadow: 3px 5px 2px #888888;
    /* neu */
    background: #E07801;
    color: #fff;
}

.button-bg {
    text-align: center;
    padding: 6px 0;
    background-color: #898778;
    border-radius: 6px;
    margin-left: 30px;
    -webkit-box-shadow: 3px 5px 2px #888888;
    box-shadow: 3px 5px 2px #888888;
}

.button-bg-first,
.button-bg {
    box-shadow: none;
}

.i-bg {
    background: #fff;
    border: solid 1px #E07801;
    padding: 8px;
    border-radius: 15px;
}

.i-start {
    text-align: center;
    margin: 0;
    padding: 30px 25px 10px;
}

.i-right {
    width: 30px;
    color: #E07801;
}

.start-mehr {
    text-align: center;
    color: #fff;
    padding: 7px;
    background-color: #E07801;
    border-radius: 4px;
    border-radius: 4px;
}

.teaser-h {
    min-height: 85px;
    text-align: center
}

.teaser-h h3 {
    display: block;
    margin-bottom: 10px;
    color: #095B8B;
    min-height: 80px;
    line-height: 25px;
    font-weight: 400 !important;
}

.teaser {
    min-height: 240px;
}

.small {
    min-height: 1px;
}

.white {
    color: #fff;
}

.orange {
    color: #E07801;
}

img {
    max-width: 100%;
    height: auto;
}

.footer {
    background-color: #043057;
    color: #fff;
    margin-top: 25px;
}

.footer a {
    color: #fff;
    text-transform: none;
}

.footer p {
    padding-top: 1.2em;
    /* neu */
    font-weight: 300;
}

.footer img {
    height: 100px;
    padding-top: 1.2em;
    /*margin: 0 5%;*/
}

.footerLogo {
    margin-right: 6%;
}

/*.footer img.footerLogo {
    padding-top: 0 !important;
    margin: 0 !important;
    /*display: block;
    margin: 0 auto !important;*/
}

*/ .footer i {
    color: #fff;
    width: 20px;
}

.footer .wrapper {
    width: 90% !important;
}

.grau {
    background-color: #ECECEC;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 5px;
}

.weiss {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 5px;
}

.team {
    font-size: 0.8em;
}

.karriere-statements {
    padding: 40px;
    margin-bottom: 20px;
    background-color: #f2f2f2;
    border-radius: 15px;
}

.karriere-statements p {
    padding-right: 5px;
}

.ma {
    margin: 25px auto;
    padding: 3px;
    border: 5px solid #ECECEC;
}

.bgOrange {
    background-color: #E07801;
    color: #fff;
}

.bgOrange a:link,
.bgOrange a:visited {
    color: #fff;
    text-decoration: none;
}

.bgOrange a:hover,
.bgOrange a:focus,
.bgOrange a:active {
    color: #095B8B;
    text-decoration: underline;
}

.bgUnternehmenDigital {
    padding: 30px;
    border-radius: 15px;
}

.bgKarriere {
    background-image: url('../img/bg-karriere.jpg');
    background-size: cover;
}

.textKarriere {
    background: rgba(255, 255, 255, .85);
    padding: 30px;
    color: #E07801;
    border-radius: 15px;
}

.sprechblaseKarriere {
    width: 70px;
    height: auto;
}

p.mtCta {
    margin-top: 18px;
}

#map {
    width: 100%;
    min-height: 570px;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
}

.mapBox {
    max-height: auto;
    /*max-height: 570px;*/
    background: rgb(242, 242, 242);
    border: 1px solid #ECECEC;
    border-radius: 15px;
}

.mapBox .spalten {
    margin-right: 0 !important;
}

.mapBoxText {
    padding: 20px 20px 20px 20px;
}

.flex {
    display: flex;
}

/* ########################### */

.m-2 {
    margin: 2% 0 !important;
}

.m-4 {
    margin: 4% 0 !important;
}

.mt-1 {
    margin-top: 1% !important;
}

.mt-2 {
    margin-top: 2% !important;
}

.mt-3 {
    margin-top: 3% !important;
}

.mt-4 {
    margin-top: 4% !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 1% !important;
}

.mb-2 {
    margin-bottom: 2% !important;
}

.mb-4 {
    margin-bottom: 4% !important;
}

.mr-3 {
    margin-right: 1rem !important;
}

.pt-2 {
    padding-top: 2% !important;
}

.pt-4 {
    padding-top: 4% !important;
}

.pb-2 {
    padding-bottom: 2% !important;
}

.pb-4 {
    padding-bottom: 4% !important;
}

.pl-2 {
    padding-left: 2% !important;
}

.pl-4 {
    padding-left: 4% !important;
}

.pr-2 {
    padding-right: 2% !important;
}

.pr-4 {
    padding-right: 4% !important;
}

.slick-prev {
    left: -35px;
}

.slick-next {
    right: 0px;
}

#lohn-gehalt {
    margin-top: -120px !important;
    padding-top: 120px;
}

/* --- GRID ---*/

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.zeile {
    width: 100%;
    margin: 0 auto;
}

.zeile.abstand {
    margin: 75px auto !important;
}

.zeile.abstand-oben {
    margin: 75px auto 0 !important;
}

.zeile .zeile {
    width: auto;
    max-width: none;
    min-width: 0;
    margin: 0;
}

.spalte,
.spalten {
    float: left;
    min-height: 1px;
    padding: 0;
    margin-right: 1%;
    position: relative;
}

[class*="spalte"] + [class*="spalte"]:last-child {
    float: right;
    margin-right: 0;
}

[class*="spalte"] + [class*="spalte"].end {
    float: left;
}

.zeile .eins {
    width: 8.33%
}

.zeile .zwei {
    width: 15.66%
}

.zeile .drei {
    width: 24.25%
}

.zeile .vier {
    width: 32.66%
}

.zeile .fuenf {
    width: 41.66%
}

.zeile .sechs {
    width: 48%;
    margin-right: 4%;
}

.zeile .sieben {
    width: 58.33%
}

.zeile .acht {
    width: 66.66%
}

.zeile .neun {
    width: 75%
}

.zeile .zehn {
    width: 83.33%
}

.zeile .elf {
    width: 91.66%
}

.zeile .zwoelf {
    width: 100%
}

.zeile .fuenftel {
    width: 19%;
    margin-right: 1.25%;
}


/* Mobile */

@media only screen and (max-width: 960px) {
    .zeile {
        width: 100%;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .spalte,
    .spalten {
        width: auto !important;
        float: none;
        margin-right: 0;
        margin-bottom: 10px;
        display: block;
    }

    .spalte:last-child,
    .spalten:last-child {
        float: none;
    }

    [class*="spalte"] + [class*="spalte"]:last-child {
        float: none;
    }

    .spalte:before,
    .spalten:before,
    .spalte:after,
    .spalten:after {
        content: "";
        display: table;
    }

    .spalte:after,
    .spalten:after {
        clear: both;
    }
}

@media only screen and (max-width: 800px) {
    body {
        -webkit-text-size-adjust: none;
        -ms-text-size-adjust: none;
        width: 100%;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }

    .container {}

    .zeile {
        width: 100%;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .spalte,
    .spalten {
        width: auto !important;
        float: none;
        margin-right: 0;
        margin-bottom: 10px;
        display: block;
    }

    .spalte:last-child,
    .spalten:last-child {
        float: none;
    }

    [class*="spalte"] + [class*="spalte"]:last-child {
        float: none;
    }

    .spalte:before,
    .spalten:before,
    .spalte:after,
    .spalten:after {
        content: "";
        display: table;
    }

    .spalte:after,
    .spalten:after {
        clear: both;
    }
}

/* *** Float containers fix:
 http://www.csscreator.com/attributes/containedfloat.php *** */

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: inline-block;
}


/* Hides from IE-mac \*/

* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}


/* End hide from IE-mac */


/* Nicolas Gallagher's micro clearfix */

.zeile:before,
.zeile:after,
.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}

.zeile:after,
.clearfix:after {
    clear: both;
}
