body { font-family: 'Ubuntu', sans-serif }
header {
    width: 100%;
    height: 420px;
    background: transparent url(../pic/bg_header.jpg) center bottom;
}
.mobile-layer {
    display: none;
    visibility: hidden;
    height: 0;
}
.navbar-container,
.mobile-nav {
    display: none;
    visibility: hidden;
}
header table {
    width: 100%;
    table-layout: fixed;
    height: 420px;
    border-spacing: 0;
}
header table td:first-of-type {
    background: rgba(0,0,0,0.8);
    height: 420px;
}
header table td.content {
    width: 1300px;
    height: 420px;
    vertical-align: top;
}
header table td:last-of-type {
    height: 420px;
    background: transparent url(../pic/bg_header_right.gif) repeat-x 0 0;
}
header table td.content span {
    background: transparent url(../pic/bg_header_right.gif) repeat-x 0 0;
    float: left;
    height: 100%;
    display: block;
    width: calc(100% - 240px);
    width: -moz-calc(100% - 240px);
    width: -webkit-calc(100% - 240px);
}
header table td.content span a {
    width: 263px;
    background: transparent url(../pic/smashmob-logo.gif) no-repeat 0 0;
    height: 100px;
    text-indent: -10000px;
    display: block;
}
nav {
    width: 240px;
    background: rgba(0,0,0,0.8);
    height: 410px;
    padding-top: 10px;
    float: left;
}
nav a {
    display: block;
    width: 100%;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
    font-size: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.25);
    padding-left: 10px;
    position: relative;
}
nav a.active,
nav a:hover { background: #c00000; border-bottom: 1px solid #c00000 }

nav a.active:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 10px 25px 0;
    border-color: transparent #c00000 transparent transparent;
    position: absolute;
    top: 0;
    left: -10px;
    content: "";
}
nav a.active:after {
    width: 5px;
    height: 55px;
    position: absolute;
    top: 0;
    right: -5px;
    content: "";
    background: transparent url(../pic/bg_nav.png) no-repeat 0 0;
}
footer a.lang,
nav a.lang {
    background: transparent url(../pic/lang.png) no-repeat 0 0;
    width: 34px;
    height: 34px;
    border: 0;
    padding: 0;
    margin: 13px 5px 0 10px;
    line-height: normal;
    text-indent: -10000px;
    float: left;
}
footer a.lang.de,
nav a.lang.de { background-position: 0 -34px; margin-left: 0 }
footer a.lang.en,
nav a.lang.en { background-position: 0 -68px; margin-left: 0 }

footer a.lang { margin: 30px 5px 0 0 }

/**         **\
    oszkar
\**         **/

div.oszkar {
    width: 100%;
    height: 150px;
    background: transparent url(../pic/bg_oszkar.gif) repeat-x 0 0;
}
div.oszkar > div {
    width: 1300px;
    height: 150px;
    margin: 0 auto;
    position: relative;
    padding-top: 5px;
}
div.oszkar > div:before,
div.oszkar > div:after {
    content: "";
    width: 5px;
    height: 70px;
    background: transparent url(../pic/bg_oszkar1.gif) repeat-x 0 0;
    position: absolute;
    top: 0;
    left: -5px;
}
div.oszkar > div:after {
    background: transparent url(../pic/bg_oszkar2.gif) repeat-x 0 0;
    right: -5px;
    left: auto;
}
div.oszkar > div .title {
    height: 65px;
    line-height: 65px;
    color: #fff;
    width: 100%;
    background: #01a8e8;
    border-radius: 0 0 4px 4px;
    font-size: 22px;
}
div.oszkar input {
    margin: 20px 10px 0 0;
    border: 0;
    background: #fff;
    border-radius: 4px;
}
div.oszkar input:first-of-type,
div.oszkar input.datepicker,
div.oszkar input:nth-child(2) {
    padding-left: 40px;
    background: #fff url(../pic/from.gif) no-repeat 10px 6px;
}
div.oszkar input:first-of-type,
div.oszkar input:nth-child(2) {
    width: calc((100% - 350px) / 2);
    width: -moz-calc((100% - 350px) / 2);
    width: -webkit-calc((100% - 350px) / 2);
}

div.oszkar input:nth-child(2) { background: #fff url(../pic/to.gif) no-repeat 10px 6px }
div.oszkar input.datepicker { background: #fff url(../pic/datepicker.gif) no-repeat 10px 10px; width: 200px }

div.oszkar button {
    border-radius: 4px;
    border: 0;
    color: #fff;
    width: 110px;
    padding: 0;
    background: #01a8e8;
    font-size: 16px;
    font-weight: 500;
    margin: 20px 0 0 0;
}

footer {
    width: 100%;
    background: #fff;
}
footer > div {
    width: 1300px;
    height: 160px;
    padding-top: 25px;
    font-family: Arial;
    font-size: 14px;
    margin: 0 auto;
}
footer > div div { text-align: justify; width: 100%; display: block }
footer a { color: #c00000; margin-right: 20px }
footer a:nth-last-of-type { margin: 0 }

footer a:hover { text-decoration: underline }

section {
    width: 100%;
    border-top: 1px solid #fff;
}
section > div {
    width: 1300px;
    margin: 0 auto;
    padding: 30px 0;
}
section > div:after {
    display: table;
    content: "";
    clear: both;
}
section.darkgrey { background: #f0eff0 }
section.lightgrey { background: #f6f6f6 }
.w50percent { width: 50%; float: left }
.w50percent:nth-of-type(odd) { padding-right: 20px }
.w50percent:nth-of-type(even) { padding-left: 20px }

.w33percent { width: 33%; float: left }
section > div div.w33percentrow div:nth-of-type(1) { padding-right: 20px }
section > div div.w33percentrow div:nth-of-type(2) { padding: 30px 20px 0 20px }
section > div div.w33percentrow div:nth-of-type(3) { padding: 30px 0 0 20px }

div.mapItems div.w33percentrow:nth-of-type(1) { padding: 0 20px 25px 0; clear: left }
div.mapItems div.w33percentrow:nth-of-type(2) { padding: 0 20px 25px 20px }
div.mapItems div.w33percentrow:nth-of-type(3) { padding: 0 0 25px 20px }

section p {
    color: #4b4b4b;
    font-size: 14px;
    font-family: Arial;
    line-height: 20px;
    margin: 25px 0;
}
.fs24 { font-size: 24px }
.fs18 { font-size: 18px }
section a {
    color: #c00000;
    text-decoration: underline;
}
section a.more {
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    background: transparent url(../pic/bg_more.png) no-repeat 100% 0;
    padding: 7px 40px 7px 0;
}
div.newsitem {
    padding-top: 30px;
}
div.newsitem img {
    float: left;
    margin-right: 10px;
}
div.newsitem div {
    float: left;
    width: calc(100% - 130px);
    width: -moz-calc(100% - 130px);
    width: -webkit-calc(100% - 130px);
}
div.newsitem.w33percent div { width: 100% }
div.newsitem a { text-decoration: none }
img.rounded { border-radius: 4px}
.clear:after {
    display: table;
    clear: both;
    content: "";
}
.map {
    width: 100%;
    height: 520px;
}
.green { color: #006000 !important }
div.newsitem div p { margin: 5px 0 }
section .newsitem a.more {
    font-size: 14px;
    font-family: Arial;
    font-weight: 600;
    text-decoration: none;
    background: transparent url(../pic/bg_more2.png) no-repeat 100% 3px;
    padding: 0 12px 0 0;
}
.mapFilters {
    width: 1300px;
    height: 80px;
    margin: 0 auto;
}
.mapFilters button {
    margin: 20px 0 0 0;
    border-radius: 4px;
    border: 0;
    color: #fff;
    width: 110px;
    padding: 0;
    background: #c00000;
    font-size: 16px;
    font-weight: 600;
    float: right;
}
.mapFilters input {
    float: right;
    margin: 20px 10px 0 0;
    border-radius: 4px;
    width: 320px;
    border: 1px solid #e9e8e9;
    background: #fff url(../pic/bg_search.gif) no-repeat 10px 10px;
    padding-left: 40px;
}
h1 {
    font-size: 24px;
    color: #c00000;
    text-decoration: underline;
    font-weight: normal;
    margin-bottom: 15px;
}
p.serv_lead {
    padding: 10px 0 3px 0;
    margin: 0;
}
p.serv_lead span {
    display: block;
    float: left;
    width: 34px;
    height: 24px;
    line-height: 24px !important;
    text-align: center;
    border-radius: 24px;
    background: #c00000;
    color: #fff !important;
    font-size: 12px;
    font-family: Arial;
    margin-right: 5px;
}
div.html div.html {
    padding: 0 0 20px 40px;
}
div.html div.html p { margin: 0 }
p.serv_lead em {
    font-style: normal;
}
h3 {
    font-size: 20px;
    color: #c00000;
    font-weight: normal;
    margin: 0;
}
.html.partners p { margin: 5px 0 }

ul,ol {
    margin: 10px 5px;
    list-style: none;
}
ul li,
ol li {
    background: transparent url(../pic/bg_li.png) no-repeat 0 6px;
    padding: 0 0 10px 15px;
    color: #4b4b4b;
    font-size: 14px;
    font-family: Arial;
    line-height: 20px;
}
.mapItems .w33percent p { margin: 0 }
.mapItems .w33percent strong {
    font-size: 18px;
    color: #006000;
}
.mapItems {
    float: left;
    width: 100%;
}
p.lead {
    font-weight: bold;
}
.html p,
.html p * {
    color: #4b4b4b !important;
    font-size: 14px !important;
    font-family: Arial !important;
    line-height: 20px !important;
}
.html img.fright {
    margin: 0 0 15px 15px;
    border-radius: 4px;
}
h2.title {
    color: #006000;
    font-size: 18px;
    margin: 30px 0 0 0;
    font-weight: normal;
}
h1 .backStep {
    float: right;
    font-size: 18px;
    text-decoration: none;
    padding-left: 15px;
    background: transparent url(../pic/back.gif) no-repeat 0 7px;
}
.map.contact {
    width: 100%;
    height: 400px;
    border: 3px solid #fff;
    border-radius: 4px;
}
.mapFilters form {
    float: right;
    width: 440px;
    padding-bottom: 10px;
}

@media (min-width : 980px) and (max-width : 1300px) {
    header table td.content,
    div.oszkar > div,
    section > div,
    footer > div,
    .mapFilters { width: 980px }
    footer > div a { font-size: 12px }
}

@media (max-width : 980px) {
    header table td.content,
    div.oszkar > div,
    section > div,
    footer > div,
    .mapFilters { width: 100% }

    nav { display: none }
    header table td { height: 200px !important; }
    header table td.content span { float: none; height: 50px; width: 100% }
    header table td.content span img { display: none }
    header table { height: 200px }
    header { height: 200px; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
    header table td.content span a { width: 132px; height: 50px; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover }

    .mobile-nav.open { -ms-transform: translate3d(0px, 0px, 0px); -webkit-transform: translate3d(0px, 0px, 0px); transform: translate3d(0px, 0px, 0px); display: block; visibility: visible }
    .mobile-nav { width: 100%; margin: 0; padding: 0; background: #c00000; z-index: 10000; -webkit-transform: translate3d(-261px, 0px, 0px); transform: translate3d(-261px, 0px, 0px); transition-property: -ms-transform, -webkit-transform, transform; transition-duration: 0.3s; position: absolute; top: 50px; left: 0; float: none; height: auto; line-height: normal; overflow-y: auto; border-top: 1px solid #c00000 }
    .mobile-nav li { margin: 0; float: none; background: transparent; border-bottom: 1px solid #d04040; height: 50px; line-height: 50px; padding: 0 }
    .mobile-nav li a { font-size: 18px; font-weight: 600; color: #fff; clear: both; width: 100%; display: inline-block; text-decoration: none; padding-left: 10px; font-family: 'Ubuntu', sans-serif }
    .mobile-nav li a:hover { background: #9a0000 }
    .btn-navbar,
    .btn-navbar:hover,
    .btn-closeSearch { border: none; box-shadow: 0 0 0; margin: 0; float: right; position: absolute; top: 0; right: 0; z-index: 999; width: 50px; height: 50px; cursor: pointer; padding: 18px 0 0 12px }
    .btn-navbar .icon-bar { background-color: #c00000; box-shadow: 0 0 0; width: 22px; height: 3px; display: block; border-radius: 3px !important; margin-bottom: 4px }
    .btn-navbar.open .icon-bar { display: none }
    .btn-navbar .close { display: none }
    .btn-navbar.open { background: #c00000 }
    .btn-navbar.open .close,
    .close-search { display: block; width: 17px; height: 17px; background: transparent url(../pic/mobile-nav-close.gif) no-repeat 0 0; background-size: 17px 17px; margin: 0 0 0 5px }
    .searchbutton,
    .mobile-search.open button { display: block; border: none; box-shadow: 0 0 0; background: #5c8f30 url(../pic/mobile-search.png) no-repeat center center; background-size: 20px 20px; border-radius: 3px; margin: 0; float: right; position: absolute; top: 10px; right: 55px; z-index: 999; width: 35px; height: 30px; cursor: pointer; padding: 8px 0 0 8px }
    .mobile-search { display: none }
    .mobile-search.open { width: 100%; height: 50px; background: #fff; z-index: 1000; position: absolute; top: 0; left: 0; display: block; visibility: visible }
    div.oszkar { height: auto; background: #0092ca url(../pic/bg_oszkar.gif) repeat-x 0 0 }
    div.oszkar > div { width: calc(100% - 20px); width: -moz-calc(100% - 20px); width: -webkit-calc(100% - 20px); height: auto }
    div.oszkar > div .title { height: 50px; line-height: normal; font-size: 14px; text-align: right; padding-right: 10px; }
    div.oszkar > div .title div { display: table-cell; width: 100%; }
    div.oszkar > div .title img { max-height: 50px; max-width: 50%;vertical-align: middle }
    div.oszkar input { width: calc(50% - 10px) !important; width: -moz-calc(50% - 10px) !important; width: -webkit-calc(50% - 10px) !important; margin-top: 10px; display: block; float: left }
    div.oszkar input:nth-child(even) { width: 50% !important; margin-right: 0 !important }
    div.oszkar button { width: 50% !important; margin: 10px 0; height: 38px; line-height: 38px }
    div.oszkar form:after { display: table; content: ""; clear: both }
    section > div { padding: 15px 10px }
    .w50percent,
    .w33percent {width: 100%; padding: 0 !important; float: none }
    .w50percent > img.fright { display: none }
    div.newsitem { padding: 10px 0 !important; float: left }
    div.newsitem img { width: 60px; height: 60px }
    div.newsitem div { width: calc(100% - 70px); width: -moz-calc(100% - 70px); width: -webkit-calc(100% - 70px) }
    .fs18 { font-size: 14px }
    section p { font-size: 13px; line-height: normal; margin: 15px 0 }
    section > div div.w33percentrow div { padding-right: 0 !important; padding-left: 0 !important; }
    .mapFilters { width: 100%; height: auto }
    .map { height: 250px }
    footer > div { width: 100%; height: auto; font-size: 13px; padding: 10px; text-align: center }
    footer > div img { float: none !important; max-width: 100%; height: auto; clear: both; display: inline-block }
    footer > div div { text-align: center }
    footer a.lang, nav a.lang { float: none; display: inline-block }
    .mapFilters form { float: none; width: 100%; padding: 10px }
    .mapFilters input {  margin: 20px 10px 10px 0; width: calc(100% - 120px); width: -moz-calc(100% - 120px); width: -webkit-calc(100% - 120px) }
    body { overflow-x: hidden }
    footer i { display: inline-block; width: 100%; clear: both; text-align: center }
    .html p, .html p * { font-size: 13px !important; line-height: normal !important }
    ul li, ol li { padding: 0 0 0 15px; font-size: 13px; line-height: normal }
    .map.contact { height: 250px }
    .contactdiv { float: none !important; width: 100% !important; padding: 0 !important }
}
