@charset "utf-8";
/* CSS Document */

*{
    box-sizing: border-box;
}

p{
    margin-top:0px;
    margin-bottom:2em;
}
a:active, a:focus {outline: none;}
.webseiteSize{
    width:1160px;
    margin-left: auto;
    margin-right: auto;
}
h1{
    font-size: 1.5em;
    margin:0px;
    margin-bottom: 0.4em;
}
html{
    scroll-behavior: smooth;
    font-family: 'Open Sans', sans-serif;
    font-size:1em;
    letter-spacing: 0.0px;
}
.flex_oneLine{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;   
}
.flex_wrap{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;   
}
.flexRow50{
    width:49%;
}
.tabBoxColumn h3{
    font-size:1em;
}
.fullscreenimg{
    width:100%;
    height: auto;
    margin-bottom: 1em;
}
header{
    position: fixed;
    width:100%;
    top:0px;
    left:0px;
    background-color: #fff;
    height: 134px;
    z-index: 99;
}
.innerHeader, .innerFooter{
    width:1160px;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    z-index: 99;

}

ul{
    list-style-image: url(../img/bulletpoint.jpg);
}

img#logoofstone{
    margin-left:54px;
    margin-top: 42px;
    float: left;
    width: 222px;
}

.sprachWahl{
    margin-top: 25px;
    text-align: right;
    font-size:0.7em;
    margin-right: 40px;
}
.sprachWahl a{
    color:#000;
    text-decoration: none;
}
/* NAVIGATION DESKTOP START */
nav#mainNav{

    width:683px;
    float: right;
}
nav#mainNav ul{
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    list-style: none;
    margin: 0px;
    padding: 0px;
    
    text-transform: uppercase;
    font-size:0.8em;
    margin-top: 14px;
    margin-right: 20px;
    letter-spacing: 2px;
}
nav#mainNav ul li{
    margin-left: 1%;
    margin-right:1%;
    flex-grow: 1;
    position: relative;
    line-height: 30px;
}
nav#mainNav ul li a{
    display: block;
    color:#000;
    text-decoration: none;
    width:100%;
    height: 100%;
    text-align: center;
    
}
nav#mainNav ul li a:hover, nav#mainNav ul li a.rex-current, nav#mainNav ul li a.rex-active{
    background-color: #333333;
    color:#fff;
}
nav#mainNav ul li:hover ul{
    display: block;
}
nav#mainNav ul li ul{
    min-width:100%;
    position: absolute;
    display: none;
    background-color: #fff;
    color:#000;
    top:16px;
    font-size:0.9em;
    
    
    padding-top:14px;
    padding-left:14px;
    padding-right: 14px;
    padding-bottom:14px;
    white-space: nowrap;
}
nav#mainNav ul li ul li a{
    line-height: 2em;
    color:#000;
    text-align: left;
}
nav#mainNav ul li ul li a:hover, nav#mainNav ul li ul li a.rex-current{
    color:#808080;
    background: none;
}

/* NAVIGATION DESKTOP ENDE */

section#contentWrapper{
   
}
.fixedTopSpacer{
    margin-top: 134px;   
}
.anchor{
    position: absolute;
    top: -134px;
}
.fullscreenWrapper{
    width:100%;
    background-size: cover;
    background-repeat:no-repeat;
    background-position: center center;
}
#title1{
    padding-top:126px;
    text-align: center;
    padding-bottom: 76px;
}

#title1 img.ofStoneStartseite{
    width:344px;
    height: auto;
    margin-bottom: 72px;
}

.innerFullscreenWrapper{
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
.innerFullscreenWrapper article{
    position: relative;
}
img.startseitenBubble{
    position: fixed;
    top:200px;
    right:10%;
    width:150px;
    height: auto;
    z-index: 9;
}
.boldTextArticle{
     font-weight: 600;
     text-align: left;
     line-height: 1.8em;
     hyphens: auto; 
}

.nonBoldArticle{
   font-weight: normal;
     text-align: left;
     line-height: 1.8em;
     hyphens: auto; 
    color:#000;
}

#contentWrapper address{
   font-weight: normal;
     text-align: left;
     line-height: 1.8em;
     hyphens: auto; 
    color:#000;
    font-style: normal;
    padding-right:30px;

}
#contentWrapper address h1{
    font-weight: normal;
    text-transform: none;
   
}
a{
    color:#000;
    text-decoration: none;
}
.kontaktWrapper{
        margin-bottom: 5em;
    align-items:flex-start;
}

.kontaktWrapper address{
    width:40%;
}
.kontaktWrapper img{
    width:55%;
}

.nonBoldArticle h1{
    font-weight: normal;
}


#title1 .innerFullscreenWrapper{
    width:833px;
}

#title1 .innerFullscreenWrapper article{
    margin-top:155px;
    color:#fff;
    padding-left:100px;
    padding-right: 120px;
}
.marginBottom{
    margin-bottom: 104px;
}
.marginTop{
    margin-top: 104px;
}
.paddingBottom{
    padding-bottom: 104px;
}
.paddingTop{
    padding-top: 104px;
}
footer{
    font-size:0.8em;
    height: 330px;
    background-color:#000;
    padding-top:74px;
    color:#fff;
    letter-spacing: 1px;
}
footer a{
    color:#fff;
}
.innerFooter{
    height: auto;
}
#footerRow1{
    width:225px;
    margin-left:56px;
}
#footerRow1 img{
    
}
#footerRow2{
    width:230px;
    font-style: normal;
    line-height: 2.3em;
    padding-top:0.6em;
}
#footerNav{
    align-self: flex-end;
}
a.ofstoneProductButton{
    display: block;
    width:883px;
    height: 933px;
    margin-left: auto;
    margin-right: auto;
    background-size: cover;
    padding-left:185px;
    padding-right: 170px;
    color:#fff;
    text-decoration: none;
    background-position: top center;
}
a.ofstoneProductButton .logoImage{
    width:auto;
    height: 55px;
    margin-bottom: 45px;
}

.gewinnerWrapper{
    background-color: #f6f6f5;
}
article.gewinner{
    width:780px;
    margin-left: auto;
    margin-right: auto;
    
}
h1, h2{
    text-transform: uppercase;
}
.gewinnerlogos{
    text-align: center;
    margin-top:65px;
    margin-bottom:90px;
    width:100%;
}
.gewinnerlogos img{
    margin-left: 13px;
    margin-right: 13px;
    border:1px solid #aaa;
    margin-bottom: 1em;
}
#referenzen{
    padding-top:190px;
    padding-bottom: 255px;
}
#referenzen article{
    width:740px;
    margin-left: auto;
    margin-right: auto;
    color:#fff;
}

.produkteWrapper{
    width:873px;
    margin-left: auto;
    margin-right: auto;
    padding-top:140px;
    line-height: 1.7em;
}

.produkteWrapper h2{
    font-weight: normal;
    margin: 0px;
    letter-spacing: 0px;
    font-size:1.45em;
    margin-bottom:0.3em;
}
.produkteWrapper:last-of-type{
    margin-bottom: 155px;
    
}
.produkteWrapper p{
    font-size:0.98em;
    hyphens: auto;
    letter-spacing: 0px;
}

.produktLogo{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 140px;
    display: block;
}
.produktListe{
    padding-top:20px;
    display: flex;
    flex-wrap: wrap;
}
a.produktItem{
    position: relative;
    width:31%;
    color:#000;
    text-decoration: none;
    margin-bottom: 10px;

}
a.produktItem:nth-of-type(3n-1){
    margin-left: 3%;
    margin-right: 3%;
}
.produktItem img.produktThumbImg{
    width:100%;
    height: auto;
}
.produktItem img.produktAwardLogo{
    position: absolute;
    right:26px;
    top:-13px;
    border:1px solid #ccc;
    
}
#baguetteBox-overlay .full-image figure{
    position: relative;
    display: inline-block;
    height: auto;
}
#baguetteBox-overlay .full-image figcaption{
    position: absolute;
    right:60px;
    bottom:50px;
    width:auto;
    background-color:#000;
    color:#fff;
    font-weight: bold;
    padding: 5px 10px 5px 10px;
}

.contentFullscreenBackground{
    min-height: 300px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    padding-bottom: 224px;
}

.innerFullscreenBackgroundImageWrapper{
    width:894px;
    margin-left: auto;
    margin-right: auto;
    padding-top:170px;
}

.centerDiv{
    margin-left: auto;
    margin-right: auto;
}
pre.smallText{
    font-family: 'Open Sans', sans-serif;
    font-size:1em;
    letter-spacing: 0.0px;
    width:700px;
    display: block;
}
.leftSpan{
    width:18%;
}.rightSpan{
    width:82%;
}
BLOCKQUOTE.tabBq{
    margin: 0px;
    margin-left: 60px;
    margin-bottom: 76px;
    line-height: 2.6em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

ul.tabBq{
    margin: 0px;
    margin-left: 100px;
    margin-bottom: 76px;
    margin-top:60px;
    list-style-image: url(../img/bulletpoint.png);
    
}
ul.tabBq li{
    margin-bottom:1em;
}

h1.productHeadline{
    width:100%;
    text-align: center;
    text-transform: none;
    font-weight: normal;
    margin-bottom: 110px;
} 
h1.productHeadline, h1.prodInfoHeadline{
    position: relative;
    width:100%;
    text-align: center;
    text-transform: none;
    font-weight: normal;
    margin-bottom: 110px;
} 
h1.prodInfoHeadline{
    font-size:2em;
}
img.productBubble{
    position: absolute;
    left:50%;
    margin-left: -400px;
    top:-20px;
    width:180px;
}
.tabBox{
    width:70%;
    padding-top:30px;
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 44px;

    
    background-color: rgba(255,255,255,0.2);
    margin-bottom:100px;
}
.tabBox table{
    width:100%;
    border:none;
    margin-bottom: 1em;
}
.tabBox table th{
    font-weight: 600;
    padding-bottom: 0.4em;
}
.prodInfoImage{
    width: auto;
    width:595px;
    width:68%;
}
.prodInfoImage img{
    margin-top: 2em;
    margin-bottom: 2em;
}
.bildunterschrift{
    padding-left:30px;
    line-height: 1.8em;
}
sup{
    font-size:0.6em;
}

.transBackBox{
    background-color: rgba(255,255,255,0.4);
    padding-left:70px;
    padding-right: 70px;
    padding-top:40px;
    padding-bottom: 40px;
    color:#000;
}

.transBackBox figure{
    margin: 0px;
    padding: 0px;
    margin-bottom: 3em;
    width:48.5%;
}
.transBackBox figure img{
    width:100%;
    margin-bottom: 0.4em;
}

sub, sup {
  /* Specified in % so that the sup/sup is the
     right size relative to the surrounding text */
  font-size: 50%;

  /* Zero out the line-height so that it doesn't
     interfere with the positioning that follows */
  line-height: 0;

  /* Where the magic happens: makes all browsers position
     the sup/sup properly, relative to the surrounding text */
  position: relative;

  /* Note that if you're using Eric Meyer's reset.css, this
     is already set and you can remove this rule */
  vertical-align: baseline;
}

sup {
  /* Move the superscripted text up */
  top: -0.9em;
    left: -3px;
}

sub {
  /* Move the subscripted text down, but only
     half as far down as the superscript moved up */
  bottom: -0.25em;
}
.projekteImg{
    margin-bottom: 1em;
}
.whitePageSize{
    width:894px;
    padding-top: 90px;
}
.projektUnterschrift{
    margin-bottom: 5em;
}
.projektUnterschrift p{
    font-size:0.8em;
    margin: 0px;
}
.projektUnterschrift h2{
    font-size:1.1em;
    font-weight: normal;
    text-transform: none;
    margin: 0px !important;
}

.rex-yform{
    display: flex;
    flex-wrap: wrap;
    justify-content:space-between;   
    margin-bottom: 134px;
}

.rex-yform input[type=text], .rex-yform input[type=email],.rex-yform textarea{
    width:100%;
    margin-bottom: 1em;
    border:none;
    background-color: #f4f3f1;
    line-height: 2em;
}
.rex-yform textarea{
     height: 150px;   
}
#yform-formular-firma, #yform-formular-anrede, #yform-formular-email, #yform-formular-telefon{
    width:48.5%;
}
#yform-formular-name, #yform-formular-strasse, #yform-formular-nachricht, #yform-formular-dse{
    width:100%;
}

#yform-formular-plz{
    width:23.5%;
}
#yform-formular-ort{
    width:35%;
}
#yform-formular-land{
    width:35%;
}

#yform-formular-field-14-abschicken{
    margin-top:2em;
}
.bildunterschrift ul{
    margin: 0px;
    padding: 0px;
    list-style-image: url(../img/bulletpoint_schwarz.png);
}
.ofStoneLogoWrapper{
    text-align: center; 
    width:340px; 
    width:36%;
    margin-bottom: 116px;
}

.textColorWhile{
    color:#fff;
}