
/* typography */
h1, h2, h3,
.big, .bigger, .imgTeaser .title {
    font-family: "robotoC";
    text-transform: uppercase;
}





h1, h2, .imgTeaser .title {
    font-weight: 700;
    letter-spacing: 0em;
}
h3, h4 {
    font-weight: 300;
}
h5, h6 {
    font-weight: 600;
}
h1, h2, h3, h4, h5, h6, li, .imgTeaser .title {
    margin: 0;
    line-height: 1.4em;
    margin-bottom:0.5em;
}
p {
    line-height: 1.2em;
    margin:0;
    margin-top:0.4em;
    margin-bottom:1em;
    max-width:95%;
}
h1, .bigger, .imgTeaser .title {
    font-size: 2.5em;
    line-height: 1.05em;
    letter-spacing: 0.02em;

}
h2, .big {
    font-size: 1.6em;
    line-height: 1.1em;
    letter-spacing: 0.02em;
    padding-top: 0.3em;

}
h3 {
    font-size: 1.2em;
    line-height: 1.1em;
    letter-spacing: 0.02em;
}
h3 span {
    font-weight:300;
}
h4 {
    font-size: 1.15em;
    font-weight: 700;
}
h5 {
    font-size: 1em;
}
h6 {
    font-size: 0.9em;
    line-height: 1.5em;
}
strong {
    font-weight:700;
}
p, li, td {
    padding-top: 0.3em;
    padding-bottom: 0.2em;
    line-height:1.5em;
    font-size:0.9em;
}
.content p,
.content li,
.content td {
    font-size:1em;
}
footer {
    font-size:90%;
}
article.intro > div.scontain > section:first-child > * {
    max-width: 85%;
}
article.intro > div.scontain > section:first-child > p {
    font-weight: 500;
}
.intro.picturefill-background {
    color:rgba(255,255,255,0.9);
}
.intro.picturefill-background h3 {
    color:rgba(255,255,255,0.5);
}
div.modelWrapper h1 {
    margin-bottom: 0.2em;
    max-width:95%;
}
div.list > h4 {
    line-height: 3em;
    border-bottom: 2px solid var(--brand1);
    font-weight:700;
    margin-bottom: 0.3em;
}
div.list.table > h4 {
    border-bottom: none;
}
div.list.commonInfo > h4 {
    border-bottom: none;

}
.tinyCopy {
    font-size:0.8em;
    color: var(--brand3);
    margin-bottom: 0.5em;
    padding-top:0;
    line-height: 1.4em;
}
/*
article.content h1,
article.content h2,
article.content h3,
article.content h4,
article.content h5,
article.content h6,
article.content p {
    margin-top:1em;
}
*/


/* navigation and links */
a:link, a:visited {
    color:var(--brand1);
}
a:hover, a:active {
    color:var(--brand2);
}
a.activeLink {
    font-weight:700 !important;
 }
#masthead nav {
    display: flex;
    flex-direction: row;
    flex-wrap:nowrap;
}
nav a span {
    color:var(--brand2);
}
#masthead nav a {
    text-decoration: none;
    font-weight: 300;
}
#navDeskPri nav {
    height:70px;
    align-items: flex-end;
}
#navDeskPri nav a {
    font-family: "robotoC";
    font-weight:700;
    font-size:1em;
    letter-spacing: 0.03em;
    padding-left:0.9em;
    padding-right:0.9em;
    line-height:54px;
    border-bottom:4px solid #fff;
    border-top:2px solid #fff;
    text-transform: uppercase;
}
#navDeskPri nav a.activeLink {
    border-bottom:4px solid #000 ;
}
#navDeskSec nav {
    justify-content: center;
}
#navDeskSec nav a {
    font-size:0.95em;
    padding:1.5em 1.1vw;
}
div.topNav nav {
    align-items: baseline;
}
div.topNav nav a {
    font-weight:300;
    font-size:0.75em;
    padding: 1.2em 1.5em 1em 1.5em;
    color:var(--brand3);
    border-left: 1px solid #e9e9e9;
}
div.topNav nav a:first-child {
    font-family: "robotoC";
    font-weight:300;
    font-size:0.85em;
    padding: 1em 1.5em 0.8em 1.5em;
}
div.topNav nav a i {
    color:var(--brand3);  
}
div.topNav nav a:hover,
div.topNav nav a:hover i {
    color:var(--brand1);
}
aside nav {
    display: flex;
    flex-direction: column;
    font-size:0.85em;
}
aside nav a {
    line-height: 1.6em;
    margin-bottom:0.8em;
}

.activeCart i, .activeCart {
    color: var(--brand2) !important;
}

div.tagLine h2 {
    font-family: "robotoC";
    font-style: italic;
    font-weight:300;
    font-size:0.8em;
    padding: 0.5em;
    margin: 0;
    margin-left: 1em;
    color:var(--brand3);
    opacity: 0.8;
    text-transform: none;
}
div.mastheadSearch a {
    text-decoration: none;
    font-size:1em;
}
div.mastheadSearch a:hover i {
    color:var(--brand2);
}
footer nav.d a:first-child {
    margin-top: 0;
}
p.financeTheme {
    display: flex;
    align-items: center;
    margin-bottom: 0;
}
.financeTheme i,
.financeTheme a:link,
.financeTheme a:visited {
    color:#4172B8;
    line-height: 1em;
    padding-top:0.5em;
}
.financeTheme i {
    margin: 0;
}
.imgTeaser a:not(.ctaButton):link,
.imgTeaser a:not(.ctaButton):visited {
    color:#ffffff;
}

.gridRow .imgTeaser {
    font-family: "robotoC";
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1em;
    letter-spacing: 0.03em;
}
.gridRow .imgTeaser a {
    text-decoration: none;
}
.gridRow section:not(a) {
    color: var(--brand1);
}



/* button styles */
.ctaButton, a.ctaButton {
    background-color: var(--mainBG);
    border: 2px solid var(--brand1);
    color:var(--brand1);
    padding: 10px 20px;
    min-width: 90px;
    min-height: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    font-family: "robotoC";
    text-transform: uppercase;
    text-decoration: none;
    font-size: 0.95em;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-align:center;
    margin-top:5px;
    margin-bottom:5px;
}
.ctaShop, a.ctaShop {
    background-color: var(--brand2);
    border-color:var(--brand2);
    color:var(--white);

}
.ctaButton:hover,
.ctaButton.activeLink {
    background-color: var(--brand1);
    color:var(--mainBG);
    border: 2px solid var(--brand1);
    cursor: pointer;
}
.ctaButton.ctaShop:hover {
    background-color: var(--white);
    border-color:var(--brand2);
    color:var(--brand2);
}
.ctaInline, a.ctaInline {
   display: inline-block;
}

div.modelWrapper .ctaButton.ctaShop:hover {
    background-color: #e9e9e9;
}

.imgTeaser .ctaButton {
    background-color: var(--white);
    border-color: var(--white);
    display: inline-flex;
}
.imgTeaser .ctaButton:hover {
    background: none;
    border-color: var(--white);
    color: var(--white);
}

/* grid */
.grid .item a,
.carouselThumbs .item a {
    text-decoration: none;
    color:var(--brand1);

}
.grid .item a:hover,
.carouselThumbs .item a:hover {
    color:var(--brand1);
}

.grid.shop .item a:hover,
.grid.shop .item a:hover * {
    color:var(--brand2);
}

.grid.shop.bigdeals .item a {
    color: var(--brand2);
}
.grid.shop.bigdeals .item a:hover * {
    color: var(--brand1);
}

.grid div.item p {
    margin: 0;
    padding: 0;
}

.grid .item h4 {
    font-size:1.15em;
    font-weight:700;
}
.grid div.commonInfo h4 {
    line-height: 120%;
    margin-top: 0.2em;
    margin-bottom: 0.2em;
}
.grid div.priceCTA h2 {
    font-size:1.6em;
    margin:0;
}
.grid.content div.item a {
    text-decoration: underline;
}
.grid.content div.item a:hover {
    background-color: none;
    color:var(--brand2);
}

/* list styles */
ul, ol {
    padding-left:0;
    margin:0;
    margin-bottom:1.75em;
}
ol {
    list-style-type: none;
    counter-reset: custom-counter;
}
ul li,
ol li {
    padding-bottom: 0.7em;
    padding-top: 0.7em;
    border-bottom: 1px solid var(--mdGrey);
    border-top: 1px solid var(--white);
    margin:0;
    list-style-type: none;
}
ol li {
    list-style-position: inside;
    padding-left: 0em;
    counter-increment: custom-counter;
}
ol li:before {
    content: counter(custom-counter) ". ";
    font-weight: 700;
}
ul.bulleted li,
div.alert ul li {
    padding-left: 1.1em;
    position: relative;
}
ul.bulleted li:before,
div.alert ul li:before {
    margin-top: 0px;
    position: absolute;
    font-size: 0.9em;
    font-family: "icomoon";
    content: "\e914";
    margin-left: -1.3em;
}
ul li:first-child,
ol li:first-child {
    border-top:none;
}
ul li:last-child,
ol li:last-child {
    border-bottom:none;
}

ul.vanilla {
    margin: 0;
    margin-top:1em;
    margin-bottom:1em;
}
ul.vanilla li {
    border:none;
    line-height: 1.6em;
    padding:0.17em 0;
}

ul.labelList li {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}
ul.labelList li > strong {
    flex-basis: 40%;
    padding-right: 10px;
}
ul.labelList.compact li > strong {
    flex-basis: 20%;
}

ul.bulleted.vanilla li {
    padding-left: 1.1em;
}

ul.sideBySide2 {
    display: flex;
    flex:1 1 auto;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
ul.sideBySide2 li {
    flex-basis: 45%;
    margin-bottom:2.5em;
    line-height: 1.6em;
}
ul.sideBySide3 {
    display: flex;
    flex:1 1 auto;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}
ul.sideBySide3 li {
    flex-basis: 29%;
    margin-right: 6.5%;
    margin-bottom:1.5em;
    line-height: 1.6em;

}
ul.sideBySide3 li:nth-child(3n) {
    margin-right: 0;
}

.compact li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom:1em;

}
.compact li > * {
    flex-basis: 60%;
}
.compact li > *:first-child {
    flex-basis: 30%;
    margin-right: 20px;
}

li h1,
li h2,
li h3,
li h4,
li h5,
li h6 {
    line-height: 130%;
}

div.list {
    padding-top:1em;
    padding-bottom:1em;
}
div.enquiry {
    padding-top:2em;
    padding-bottom:2em;
}
div.downloads ul.labelList li > strong {
    flex-basis: 70%;
}



/* table */
table {
    width:100%;
    border-collapse:collapse;
}
table thead td {
   background-color: rgba(0,0,0,0.05);
}
table.zebra tbody tr:nth-child(even) {
   background-color: rgba(0,0,0,0.02);
}
table tr td {
    border-bottom:1px solid rgba(0,0,0,0.1);
}
table td {
    padding:15px 10px;
}
table thead {
    font-weight: 700;
}




/* custom formats and extender classes */
.caps {
    text-transform: uppercase;
}
.lower {
    text-transform: lowercase;
}
.big {
    line-height:1em;
    font-weight:900;
    margin-bottom:0.3em;
    padding:0;
    padding-bottom: 0.2em;
}
.bigger {
    line-height:0.9em;
    font-weight:900;
    margin-bottom:0.3em;
    padding:0;
    padding-bottom: 0.2em;
}
/*.small {
    font-size:1.5em;
    line-height:1.1em;
    margin-bottom: 0.5em;
}*/
.shadow {
    color: rgba(0,0,0,0.9);
  text-shadow:
   -1px -1px 0 #fff,  
    1px -1px 0 #fff,
    -1px 1px 0 #fff,
     1px 1px 0 #fff;
}
.fadedText {
    opacity:0.25;
}
.brand {
    color:var(--brand1);
}
div.tagLine {
    color: var(--brand1);
}

#brand .cta a {
    font-size:1.3em;
    line-height:1em;
    text-decoration: underline;
}

footer h4 {
    font-size:1.2em;
}

footer div.scontain > h4 {
    margin-top:2em;
}


footer div.scontain > h5 {
    font-size:1em;
    margin-bottom: 0.1em;
    margin-top:1em;
}

footer p,
footer ul.vanilla li {
    line-height: 1.8em;
}
footer p,
footer ul.vanilla {
    margin-top:0.1em;
}

#breadcrumb {
    padding-bottom: 1.5em;
}

#breadcrumb > nav {
    font-size: 11px;
    text-transform: uppercase;
}
#breadcrumb > nav a.activeLink {
    color:var(--brand2);
    font-weight:300 !important;
    text-decoration: none;
}
#breadcrumb > nav > i {
    color: var(--brand1);
    padding-left:5px;
    padding-right:5px;
}
body.mCat #breadcrumb {
    display: none;
}



/* artDir teaser typo */
.imgTeaser p {
    max-width: 100%;
}
.imgTeaser .subject, 
.imgTeaser .subtext, 
.imgTeaser .title {
    margin:0;
}
.imgTeaser .subtext {
    margin-top: 0.1em;
    margin-bottom: 0.5em;
}

.teaserSmall h2 {
    font-size:1.45em;
    line-height: 1.15em;
    letter-spacing: 0.02em;
    font-weight:700;
}






/* cat typo */

div.catWrapper h3 {
    font-weight:700;
}
article.productTeasers > header > * {
    font-family: "sf";
    text-transform: none;
    font-weight: 300;
    font-size:1.15em;
}
article.productTeasers > header > *:first-child {
    font-weight: 700;
}
article.productTeasers > header * {
    letter-spacing: 0;
    line-height: 1.2em;
    padding:0;
    margin:0;
}
div.related article.productTeasers > header {
    display: block;
    padding-bottom: 1em;
}
div.related article.productTeasers > header h3 {
    font-family: "robotoC";
    text-transform: uppercase;
    font-size:1.3em;
    letter-spacing: 0.02em;
    font-weight:700;
}
div.related article.productTeasers > header span {
    font-weight:300;
}



@media screen and (max-width: 1100px) {
    h1, .imgTeaser .title {
        font-size: 1.4em;
    }
    h2 {
        font-size: 1.3em;
    }
    h3 {
        font-size: 1.2em;
    }
    h4 {
        font-size: 1.2em;
    }
    h6 {
        font-size: 1em;
    }
    .big {
        font-size:2.5em;
    
    }
    .bigger {
        font-size:2.2em;
    
    }
    .small {
        font-size:1.7em;
        line-height:1.3em;
        margin-bottom: 0.5em;
    }
}


@media screen and (min-width: 1000px) {
    .contentRowFlex {
        display: flex;
        justify-content: space-between;
    }
    .contentRowFlex.even > * {
        flex-basis:49%;
    }
    .big {
        font-size:4em;
    
    }
}