body {
    background:#fff;
    margin: 0 auto;
    padding: 0;    
}

#container {
    width: 100%;    
    margin:0 auto;
}
.main-content {
    max-width: 1400px;
    margin: 0 auto;    
}
.flex {
    display:flex;
}

/* alignment */
.align-center {
    text-align: center;
}
.align-left {
    text-align: left;
}
.align-right {
    text-align: right;
}
.align-items-center {
    align-items: center;
}
.col-2 {
    width:50%;
    flex: 0 0 50%;
}
.col-3 {
    width:33.33%;
    flex:0 0 33%;
}
.col-4 {
    width:25%;
    flex:0 0 25%;
}


/* Headings */

p, a, h4,h5,h6, strong, span {
    font-family: 'Chivo', sans-serif;
}
a:link, a:visited {
    color:#000;
}

@font-face {
    font-family: 'gothamultraitalic';
    src: url('fonts/gotham-ultraitalic-webfont.woff2') format('woff2'),
         url('fonts/gotham-ultraitalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
h1,h2,h3 {
    font-family: 'gothamultraitalic';
}



h1 {
    font-size: 45px;
    font-weight: 800;
    font-style: italic;
    line-height: 50px;
}
h2 {
    font-size: 40px;
    font-weight: 800;
    font-style: italic;
    line-height: 40px;
}
h3 {
    font-size: 40px;
    font-weight: 800;
    font-style: italic;
    line-height: 10px;
}
h4 {
    font-size: 22px;
    font-weight: 400;
    font-style: normal;
    line-height: 12px;    
}
p  {
    font-size: 18px;
}
.normal {
    font-style: normal !important;
}

/* colors */
.black {
    color: #000;
}
.white {
    color:#fff;
}

/* header */

.topbar {
    background: #0059ba;
    text-align: center;
    height:50px;
    vertical-align: middle;
}
.topbar p {
    color:#fff;
    margin:0;
    padding-top:12px;
}

header{    
    padding:20px 0;    
    z-index:5;
    background:transparent;
    vertical-align: middle;
    position: absolute;
    width:100%;
}
.logo  {
    line-height: 70px;
    height:70px;
}

.hero {    
    width: 100%;
    position: relative;
    height: 700px;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    margin-top: 0;
}

.header-content {
    width:100%;        
    z-index: 1; 
    position:absolute; 
}
.header-content h1 {
    color:#fff;
}

.featured {
    align-items: center;
    padding:100px 0;
    margin:0 auto;
}
.compact {
    width:75%;
}
.product-grid {
    width:80%;
    margin:0 auto;
    padding-bottom:100px;
}
.product-grid .grids {
    margin-top:50px;
}

.CTA1 {
    background:url('images/wireframe-F-01_07.png') no-repeat top left;
    background-size:cover;
    padding:200px 0;
    margin-bottom:100px;
}
.CTA-dark {
    background:#000;
    padding:100px 0;
    margin-bottom:100px;
}


/* Buttons */
.btn-large-outline {
    padding:20px 60px;
    border:5px solid #fff;
    color:#fff;
    background: none;
    font-size: 30px;
}
.btn-small-outline-white {
    padding:20px 60px;
    border:2px solid #fff;
    border-radius: 50px;
    color:#fff;
    background: none;
    font-size: 16px;
}
.btn-small-outline-black {
    padding:20px 60px;
    border:2px solid #000;
    border-radius: 50px;
    color:#000;
    background: none;
    font-size: 16px;
}

footer {
    width: 20%;
    text-align: center;
    margin: 0 auto;
    padding-bottom:100px;
}
footer .grids {
    display: flex;
    padding:50px 0;
    margin:0 auto;
}
.social-icons {
    margin:0 auto;
}

.social-icons img {
    width:24px;
    height:24px;
    margin:0 10px;
}
.footer-menu span {
    display:block;
}
.footer-menu span a:visited, .footer-menu span a:link {
    color:#000;
    text-decoration: none;
    font-size:12px;
    
}
.footer-menu span a:hover, .footer-menu span a:focus {
    color: #29abe2;
}

/* form */
.form {    
    max-width: 600px;
    margin: 0 auto;
}
.form input {
    width:100%;
    height:50px;
    margin:20px auto;
    border:none;
    background: none;
    border-bottom: 1px solid #fff;
}
.form input::placeholder {
    font-size:20px;
    color:#fff;
}
.form form {
    display: flex;
}

.form input[type=button] {
    background: #fff;
    max-width: 200px;
    text-align: center;
    justify-content: flex-start;
    color: #000;
    font-size:20px;
    margin-left:10px;
}

/* Shop page */
.product-filter {
    border-top: 1px solid #000;
    border-bottom:1px solid #000;
    padding:50px 0;
    width:100%;
    
}
.bar {
    width:50%;
    margin:0 auto;
}
.shop .product-grid {
    width:50%;
}

#main {
    margin-top:100px;
}

.left-col, .right-col {
    display:flex;
}
.left-col strong, .right-col strong {
    margin-top:10px;
    flex:0 0 30%;
}
/* Product Detail Page */
.product-page .product-image .thumbnails img {
    display:block;
}
.product-page .product-image .flex .col-2:first-child {
    flex:10%;
}
.product-page .product-image .flex .col-2:last-child {
    flex:90%;
}
.product-image {
    flex:40%;
}
.product-details {
    flex:60%;
}
.product {
    border-top:2px solid #f1f1f1;
    border-bottom:2px solid #f1f1f1;
    padding:50px 0;
}

.rating:before {
    content: "★★★★★";    
}
.color {
    margin-top:-30px;
}
.price p {
    font-size:45px;
}
.price img {
    height:20px;
    margin-top:60px;
    margin-left:50px;
}
.price {
    margin-top:80px;
}
.quantity-btn {
    margin-top:60px;
}

.color img {
    padding:0 10px;
}
.size {
    align-items: center;
    margin-top:20px;
}
.size span {
    padding:0 10px;
    font-size: 20px;
    margin-top: 10px;
}
.btn-large-solid-black {
    padding:20px 60px;
    background:#000;
    color:#fff;
    font-size:20px;
    width:100%;
    border-radius: 0;
    text-align: center;
    max-width: 250px;
}
.btn-large-outline-black {
    padding:20px 60px;
    background:#fff;
    border:1px solid #000;
    color:#000;
    font-size:20px;
    width:25%;
    border-radius: 0;
    text-align: center;
    max-width: 50px;
}
.addtocart, .product-description {
    margin:20px 0;
}
.product-description .product-tabs span {
    font-size:20px;
    margin:0 20px 0 0;
    text-transform: uppercase;
}
.product-description .tags span {
    font-size:16px;
    margin:0 20px 0 0;
}
.product-title {
    font-size:40px;
    font-style:normal;
    font-family: 'Chivo', sans-serif;
    margin-top:0;
}




/* our story page */
.our-story .hero {
    background:url(images/wireframe-F-03_02.jpg) no-repeat top left;
    background-size: cover;
}
.our-story .header-content .col-2 {
    padding-left: 100px;
}
.our-story .header-content .col-2 p {
    color:#fff;
    font-size: 40px;
    margin-top:-30px;    
}

.overlap .col-2:first-child {
    z-index: 1;    
}
.overlap .col-2:last-child {
    margin-left:-100px;

}

.video {
    width:100%;
    margin: 0 auto;    
}

/* Lookbooks */

.product-category a:link, .product-category a:visited {
    color:#000;
    font-size:40px;
    text-decoration: underline;
    display:block;
    padding-bottom:100px;
}
.breadcrumbs span {
    font-size: 16px;
}

.breadcrumbs span:after {
    content: " > ";
}
.breadcrumbs span:last-child:after {
    content: " ";
}
.product-title {
    font-size:40px;
}

.catalogue {
    margin-bottom:100px;
}







/* mobile responsiveness */
@media screen and (max-width:768px) {
    .flex {
        display:block;
    }
    .col-2, .col-3, .grids, .col-4 {
        width:100%;
        flex:auto;        
    }   
    
    .main-content {
        padding: 0 20px;
    }
    

    .header-content {
        width: 100%;
        z-index: 1;
        position: absolute;
        padding: 100px 0;
        overflow: hidden;
        text-align: center;
    }
    
    
    .col-2 {
        padding:50px 0;
    }
    .shop .col-2 {
        padding:10px 0;
    }

    .form input {
        width:50%;
    }
    .footer-menu {
        display: block !important;
    }

    .header-home {
        background-position: top center;
        padding: 10px 20px 100px 20px;
    }
    .our-story .col-2 {
        padding:0;
    }
    .our-story .header-content .col-2 {
        padding-left:0;
    }
    .our-story .featured {
        padding:0;
    }
    .our-story .compact {
        padding:100px 0;
    }

}

