@charset "UTF-8";
/*
Theme Name: Schönberger Metalltechnik & Stahlbau
Author: Dennis Stoller
Author URI: https://www.adverma.de
Description: custom
Version: 1.0
*/


/*
basic normalize
*/
hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:0;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*,*::after,*::before{-webkit-box-sizing:border-box;box-sizing:border-box;}


/*
basic style definitions
*/
html, body {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0 auto;
}
html {
    text-rendering: optimizeLegibility;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    scroll-behavior: smooth;
}
body {
    height: auto;
    margin: 0 auto;
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: calc( 18px + 6 * ( (100vw - 960px) / 786 ) );
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 100%;
    background: white;
    color: #1b1a1c;
    /* overflow: hidden; */
}
.wrapped {
    max-width: 95vw;
    margin: 0 auto;
}


/*
open-sans-regular - latin
*/
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src:url('../fonts/open-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
    src:local('Open Sans Regular'), local('OpenSans-Regular'),
        url('../fonts/open-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
        url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
        url('../fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
        url('../fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
        url('../fonts/open-sans-v15-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}


/*
font-awesome iconset version 3 https://fontawesome.com/v3/
*/
@font-face {
    font-family: 'FontAwesome';
    src:url('../fonts/fontawesome-webfont.woff2') format("woff2"),
        url('../fonts/fontawesome-webfont.woff') format("woff");
    font-weight: 400;
    font-style: normal
}

.glyph {
    font-family: 'FontAwesome';
    text-rendering: auto;
    font-style: normal;
    font-weight: normal;
}


/*
typography definitions
*/
h1, h2, h3 {
    color: #005AAA;
    /* text-align: center; */
    line-height: 130%;
    font-weight: normal;
}
h1, h2 {
    text-transform: uppercase;
}
p {
    line-height: 150%;
    letter-spacing: 0.03em;
    max-width: 80ch;
    /* word-spacing: 0.02em; */
}

/*
generic definitions
*/
hr {
    border: 0;
    border-top: 2px solid #ccc;
}
ul {
    margin-top: 0;
    margin-bottom: 1rem;
}
ul > li {
    line-height: 150%;
}
p + ul {
    margin-top: -0.65rem;
}
.button {
    display: inline-block;
    margin-top: 2.5rem;
    padding: 0.5rem 1rem 0.7rem 1rem;
    font-size: 95%;
    line-height: 100%;
    white-space: nowrap;
    background-color: white;
    color: #005AAA;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: 2px solid white;
}
.button:hover {
    cursor: pointer;
    background-color: #005AAA;
    color: white;
}


/*
main style definitions
*/
img.logo,
nav.languages, nav.languages *,
nav.navigation, nav.navigation * {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

img.logo {
    display: block;
    width: 80vw;
    margin: 3rem auto 2rem auto;
}

nav.languages {
    display: block;
    padding: 0 2.5vw;
    text-align: right;
    font-size: 80%;
}
nav.languages > a {
    display: inline-block;
    padding: 0 0 0 5px;
    color: #aaa;
    line-height: 100%;
    text-decoration: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
nav.languages > a:not([href]) {
    color: #ddd;
}

nav.navigation > .navigation__link:not(:first-child),
nav.languages > a:not(:first-child) {
    border-left: 2px solid #ccc;
}

nav.navigation {
    position: relative;
    display: table;
    table-layout: auto;
    width: 100%;
    padding: 1rem 0;
    margin: 1rem 0 0 0;
    color: #aaa;
    border-top: 2px solid #ccc;
    background-color: white;
}
nav.navigation > .navigation__link {
    position: relative;
    display: table-cell;
    /* white-space: nowrap; */
    padding: 0.25rem 0.5rem;
    margin: 0;
    color: currentColor;
    font-size: 100%;
    text-decoration: none;
    text-transform: uppercase;
    line-height: 100%;
    text-align: center;
}
nav.navigation > .navigation__link:first-child {
    /* display: inline-block; */
    width: auto;
    padding-left: 2.5vw;
    text-align: left;
}
nav.navigation > .navigation__link:first-child::before,
nav.navigation > .navigation__link.mobiletrigger::before,
nav.navigation > .navigation__link.searchtrigger::before {
    font-family: 'FontAwesome';
    text-rendering: auto;
    font-style: normal;
    font-weight: normal;
}
nav.navigation > .navigation__link:first-child::before {
    content: " ";
}
nav.navigation > .navigation__link.mobiletrigger::before {
    content: " ";
}
nav.navigation > .navigation__link.searchtrigger::before {
    content: " ";
}
nav.navigation > .navigation__link:last-child {
    /* display: inline-block; */
    width: auto;
    padding-right: 2.5vw;
    text-align: right;
}

nav.navigation > a.navigation__link:hover,
nav.navigation > label.navigation__link:hover,
nav.navigation > span.navigation__link:hover {
    color: #005AAA;
    cursor: pointer;
}
nav.navigation > .navigation__link.has-submenu > .submenu {
    position: absolute;
    z-index: 5;
    top: 100%;
    left: 0;
    display: block;
    width: auto;
    min-width: 100%;
    padding: 0.99rem 0 0 0;
    margin: 0;
    border-top: 0;
}
nav.navigation > .navigation__link.has-submenu:not(:hover) > .submenu {
    display: none;
}
nav.navigation > .navigation__link.has-submenu > .submenu > li {
    display: block;
    list-style: none;
}
nav.navigation > .navigation__link.has-submenu > .submenu > li > .submenu__link {
    display: block;
    width: 100%;
    height: auto;
    padding: 0.5rem 0.25rem;
    text-decoration: none;
    line-height: 130%;
    color: currentColor;
    background-color: white;
    border: 1px solid #ccc;
    border-bottom: 0;
}
nav.navigation > .navigation__link.has-submenu > .submenu > li:last-child > .submenu__link {
    border-bottom: 1px solid #ccc;
}
nav.navigation > .navigation__link.has-submenu > .submenu > li > a:hover {
    background-color: #005AAA;
    color: white;
    font-weight: bold;
}

.pageheader {
    display: block;
    width: 100%;
    height: auto;
    overflow: hidden;
}

@-webkit-keyframes slidein {
    0% { min-width: 100% }
    100% { min-width: 0 }
}
@keyframes slidein {
    0% { min-width: 100% }
    100% { min-width: 0 }
}

.pageheader__entry {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding: 3.5rem 2.5vw 4rem 2.5vw;
    width: auto;
    /* max-width: 40%; */
    color: white;
    background-color: #005AAA;
    text-align: left;
    -webkit-animation-name: slidein;
    animation-name: slidein;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}
/* .pageheader__entry::before {
    content: url('../images/styleelement.svg');
    position: absolute;
    z-index: -1;
    left: 0;
    top: 99%;
    display: inline-block;
    width: 109%;
    height: 100%;
    opacity: 0.04;
} */
@media all and (min-width:786px) {
    /* .pagecontent__intro,
    .pagecontent__main {
        text-shadow: 1px 1px 4px white, 0px 0px 3px white, 2px -2px 2px white;
    } */
    /* body::before {
        content: url('../images/styleelement.svg');
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        display: block;
        width: 25%;
        height: 100%;
        background: red url('../images/styleelement.svg') no-repeat top left;
        background-size: 100% auto;
        opacity: 0.2;
    } */
}
.pageheader__entry::after {
    content: "";
    position: absolute;
    left: 99.9%;
    top: -2px;
    display: inline-block;
    width: 25%;
    height: calc(100% + 3px);
    background: transparent url('../images/styleelement.svg') no-repeat bottom left;
    background-size: 100% auto;
    /* position: absolute;
    z-index: -1;
    top: 0;
    left: 100%;
    margin-left: -2.5rem;
    display: inline-block;
    width: 5rem;
    height: 100%;
    background-color: #005AAA;
    transform: skewX(-10deg); */
}
.pageheader__entry > h1,
.pageheader__entry > h2 {
    display: block;
    margin: 0 0 3rem 0;
    font-size: 250%;
    line-height: 110%;
    font-weight: bold;
    color: white;
    text-transform: uppercase;
}
.pageheader__entry > h3 {
    display: block;
    margin: 0 0 0.5rem 0;
    font-size: 200%;
    line-height: 110%;
    font-weight: bold;
    color: white;
    text-transform: normal;
}
.pageheader__entry > p {
    display: block;
    margin: 0;
    font-size: 130%;
    line-height: 130%;
    font-weight: normal;
    color: white;
    text-transform: normal;
    max-width: 65ch;
}

.pagecontent__intro {
    display: block;
    padding: 2.5vw;
    position: relative;
    z-index: 1;
    /* margin-bottom: 2.5vw; */
}

.pagecontent__main {
    position: relative;
    z-index: 2;
    margin-bottom: 2rem;
    margin-top: 2rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: stretch;
    align-content: stretch;
    align-items: stretch;
}

.pagecontent__main__article {
    padding: 2.5vw;
}
.pagecontent__main__article > h2 {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    text-shadow:
        -2px 0 0 white, 2px 0 0 white,
        -3px 0 1px white, 3px 0 1px white,
        -4px 0 2px white, 4px 0 2px white,
        -5px 0 3px white, 5px 0 3px white,
        -6px 0 4px white, 6px 0 4px white,
        -7px 0 5px white, 7px 0 5px white,
        -8px 0 6px white, 8px 0 6px white,
        -9px 0 7px white, 9px 0 7px white,
        -10px 0 8px white, 10px 0 8px white,
        -11px 0 9px white, 11px 0 9px white,
        -12px 0 10px white, 12px 0 10px white;
}
.pagecontent__main__article > h2::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: calc(100% + 2px);
    left: -1px;
    top: 50%;
    border-bottom: 1px solid #ccc;
}

.pagecontent__main__teaser {
    text-align: center;
    padding: 1rem 2.5vw;
}
.pagecontent__main__teaser--icon {
    display: block;
    margin: 0 auto;
    padding: 2.5rem 0;
    color: #999;
    font-size: 333%;
}

.pagecontent__binder {
    display: flex;
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
    margin-top: 7rem;
    background-color: #005AAA;
}
.pagecontent__binder > .binder--image {
    position: relative;
    height: 20rem;
    width: 100%;
    border: 15px solid #005AAA;
    border-right: 0;
    overflow: hidden;
    /* background-position: center;
    background-size: cover; */
    -webkit-transform: skewX(-10deg);
    -ms-transform: skewX(-10deg);
    transform: skewX(-10deg);
}
.pagecontent__binder > .binder--image:first-child {
    margin-left: -2.5%;
}
.pagecontent__binder > .binder--image:last-child {
    margin-right: -2.5%;
}
.pagecontent__binder > .binder--image > .binder--conterimg {
    position: absolute;
    top: -8%;
    left: -8%;
    display: inline-block;
    width: 116%;
    height: 116%;
    background-position: center;
    background-size: cover;
    -webkit-transform: skewX(10deg);
    -ms-transform: skewX(10deg);
    transform: skewX(10deg);
}

/* .pagecontent__binder > .binder--image::after,
.pagecontent__binder > .binder--image::before {
    content: "";
    position: absolute;
    top: -0.5%;
    display: inline-block;
    width: 15%;
    height: 101%;
    background-size: 20% auto;
    background-repeat: no-repeat;
}
.pagecontent__binder > .binder--image::after {
    left: -0.5%;
    background-image: url('../images/blend_left.svg');
    background-position: top right;
}
.pagecontent__binder > .binder--image::before {
    right: -0.5%;
    background-image: url('../images/blend_right.svg');
    background-position: bottom left;
} */

.pagecontent__footer {
    position: relative;
    z-index: 3;
    display: block;
    width: 100%;
    height: auto;
    padding: 2.5vw;
    font-size: 80%;
    background-color: #005AAA;
    color: white;
}
.pagecontent__footer__widgets {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: stretch;
    align-content: stretch;
    align-items: stretch;
}
.pagecontent__footer__widgets--entry {
    text-align: center;
}
.pagecontent__footer__widgets--entry:first-child {
    text-align: left;
}
.pagecontent__footer__widgets--entry:last-child {
    text-align: right;
}
.pagecontent__footer__widgets--entry p {
    margin: 0;
}
.pagecontent__footer__widgets--entry a {
    color: white;
    text-decoration: none;
}
.pagecontent__footer__widgets--entry a:hover {
    text-decoration: underline;
}

.pagecontent__footer__legalinfo {
    position: relative;
    display: block;
    padding: 1.25rem 2.5vw 1.1rem 2.5vw;
    background-color: #005AAA;
    color: white;
    line-height: 150%;
    font-size: 80%;
    /* direction: rtl; */
}
.pagecontent__footer > .wrapped,
.pagecontent__footer__legalinfo > .wrapped {
    padding: 0 2.5vw;
}
.pagecontent__footer__legalinfo a {
    display: inline-block;
    padding-left: 1rem;
    margin-left: 1rem;
    border-lefT: 1px solid rgba(222,222,222,0.5);
    text-decoration: none;
    color: white;
}
.pagecontent__footer__legalinfo a:hover {
    text-decoration: underline;
    cursor: pointer;
}


/*
mobile menu options
*/
nav.navigation.mobile {
    position: -webkit-sticky;
    position: sticky;
    top: -1px;
    display: none;
    border-bottom: 2px solid #ccc;
    background: white;
    z-index: 100;
}
.mobilemenu--reveal {
    display: none;
}
.mobilemenu--reveal > .navigation__link--mobile {
    display: block;
    width: 300%;
    max-width: 100vw;
    padding: 1rem 2.5vw;
    border-top: 1px solid #ccc;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    color: #005AAA;
    letter-spacing: 0.025rem;
    font-size: 125%;
    line-height: 125%;
}
.mobilemenu--reveal > .navigation__link--mobile:first-child {
    margin-top: 1rem;
}
.mobilemenu--reveal > .navigation__link--mobile:hover {
    color: white;
    background: #005AAA;
}
#mobiletoggle:checked + .navigation.mobile > .mobilemenu--reveal {
    display: table-row;
    width: 100%;
    padding: 0;
    margin: 0;
    /* padding-top: 0.5rem; */
    position: relative;
}


/*
responsive queries
*/
@media all and (max-width:786px) {
    nav.navigation.desktop {
        display: none;
    }
    nav.navigation.mobile {
        display: table;
        table-layout: fixed;
        width: 100%;
    }
    .wrapped {
        max-width: 100%;
    }
    .pageheader {
        background: none !important;
    }
    .pageheader__entry {
        padding: 5vw 2.5vw;
        max-width: 100% !important;
        width: 100%;
    }
    .pageheader__entry::after {
        display: none !important;
    }
    .pagecontent__main__teaser {
        flex: 50% !important;
        max-width: 50% !important;
    }
    .pagecontent__main__article,
    .pagecontent__footer__widgets--entry {
        display: block;
        flex: none !important;
        width: 100%;
        max-width: 100% !important;
        text-align: left !important;
    }
    .pagecontent__footer__widgets--entry p > br:first-child {
        display: none;
    }
    .pagecontent__footer__legalinfo a {
        padding: 0;
        margin: 0.5rem 0 0 0;
        display: block;
        border: 0;
    }
    .pagecontent__footer__legalinfo a::before {
        content: "• ";
    }
    .pagecontent__binder {
        display: none;
    }
    /* .pagecontent__main__teaser:last-child() {
        margin-left: auto !important;
        margin-right: auto !important;
    } */
}
@media all and (min-width:1000px) {
    .wrapped {
        max-width: 80vw;
    }
    img.logo {
        width: 40vw;
    }
}
@media all and (min-width:1200px) {
    .pagecontent__footer__legalinfo {
        position: -webkit-sticky;
        position: sticky;
        z-index: 4;
        bottom: -1px;
        /* direction: ltr; */
    }
}
@media all and (min-width:1900px) {
    .wrapped {
        max-width: 60vw;
    }
    img.logo {
        width: 30vw;
    }
}


/*
search field plus form
*/
.navigation__link.search {
    position: relative;
    z-index: 100;
}
.navigation__link.search > .searchframe {
    /* display: none; */
    position: absolute;
    z-index: 2;
    top: calc(100% + 2rem);
    right: 1rem;
    width: 85vw;
    max-width: 0;
    height: auto;
    min-height: 340px;
    overflow: hidden;
    background: transparent;
}
.navigation__link.search:focus {
    outline: none;
    outline: 0;
}
.navigation__link.search:focus > .searchframe,
.navigation__link.search > .searchframe:focus,
.navigation__link.search > .searchframe:hover {
    /* display: inline-block; */
    max-width: 333px;
    will-change: max-width;
    -webkit-transition: max-width 0.2s ease-out 0.05s;
    -o-transition: max-width 0.2s ease-out 0.05s;
    transition: max-width 0.2s ease-out 0.05s;
}


/*
form field styling
*/
.mailform {
    margin: 0 auto;
    width: 100%;
    max-width: 600px;
}

.mailform input ,
.mailform textarea {
    display: block;
    border: 2px solid #ccc;
    padding: 0.5rem;
    font-size: 80%;
    width: 100%;
    max-width: 100%;
}
.mailform input:focus + sub ,
.mailform textarea:focus + sub {
    color: #1b1a1c;
}
.mailform input:focus ,
.mailform textarea:focus {
    border-color: #1b1a1c;
}

input.field :focus,
textarea.field:focus {
    outline: none;
    border: 2px solid #005AAA;
}

.mailform > label {
    display: block;
    margin: 3rem 0;
}

.mailform > label > sub {
    color: #ccc;
    display: block;
    padding: 0.5rem 0;
}

textarea.field {
    height: 10rem;
}

.mailform abbr {
    text-decoration: none;
}

/* input.field[type=submit] {
    background: #005AAA;
    color: #fff;
    border: 1px solid #005AAA;
    padding: 0.5rem 1rem;
    cursor: pointer;
}

input.field[type=submit]:hover,
input.field[type=submit]:focus {
    color: #005AAA;
    background: #fff;
} */

a.white-link {
    color: white;
    text-decoration: none;
}

a.white-link:hover {
    text-decoration: underline;
}
