@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,200,300,600,700);

*{
    font-size: 14px;
    color: #333;
    font-family: arial;
    font-family: 'Source Sans Pro', sans-serif;
}

html,body{
    padding: 0;
    margin: 0;
}

h1{
    margin-top: 20px;
    margin-bottom: 30px;
    font-size: 40px;
    font-weight: 400;
}

header{
    height: 120px;
    padding: 20px 0;
    position: relative;
}

header img.logo{
    height: 120px;
}

.wrapper{
    width: 1000px;
    margin: 0 auto;
}

.header-image-wrapper{
    border-top: solid 10px #267DE8;
}

.bluebar{
    border-top: solid 10px #267DE8;
}

.header-image,
.header-image-wrapper{
    height: 300px;
    background: #203856;
}

.header-image{
    background-image: url('../images/sewing.jpg');
    background-size: cover;
    background-position: 0 -270px;
    background-repeat: no-repeat;
    opacity: 0.4;
}

.quick-contact{
    float: right;
}

.quick-contact div{
    text-align: right;
    margin-top: 10px;
    float: right;
    clear: both;
    color: #267DE8;
    font-size: 16px;
    font-style: italic;
    font-weight: bold;
}

.quick-contact div img{
    width: 18px;
    float: left;
    margin-right: 10px;
}

.three-col{
    margin-top: 10px;
}

.three-col .block{
    width: 33%;
    display: inline-block;
}

.three-col .block-content{
    position: relative;
    min-height: 200px;
    margin: 10px;
    overflow: hidden;
}

.three-col .block:first-child .block-content{
    margin-left: 0;
}

.three-col .block:last-child .block-content{
    margin-right: 0;
}

.three-col .block h2{
    margin: 90px 0 15px 0;
    padding: 0;
    font-size: 26px;
    text-align: center;
    color: white;
    transition: all 0.2s ease;
    text-shadow: 0 0 5px rgba(0,0,0,0.7);
}

.three-col .block span{
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    height: 0;
    display: block;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.9);
    transition: all 0.2s ease;
    font-size: 16px;
    padding: 15px;
    border-radius: 6px
}

.three-col .block:hover h2,
.three-col .block:focus h2{
    margin-top: 6px;
}

.three-col .block:hover span,
.three-col .block:focus span{
    height: 162px;
}

.three-col .bg-wedding{
    background: url('../images/bg-wedding.jpg');
    background-size: cover;
    border-radius: 6px;
}

.three-col .bg-sewing{
    background: url('../images/bg-sewing.jpg');
    background-size: cover;
    border-radius: 6px;
}

.three-col .bg-clothing{
    background: url('../images/bg-clothing.jpg');
    background-size: cover;
    border-radius: 6px;
}

nav{
    position: absolute;
    bottom: 10px;
    right: 0;
}

nav ul{
    padding: 0;
    margin: 0;
}

nav ul li{
    display: inline-block;
    margin-left: 30px;
}

nav ul li a{
    color: #333;
    text-decoration: none;
    font-size: 15px;
}

@media screen and (max-width: 900px) {
    h1{
        margin-top: 0px;
    }

    .wrapper{
        width: 100%;
        margin: 0 auto;
    }

    .wrapper.content{
        padding: 20px;
    }

    header img.logo {
        margin-left: 20px;
    }

    nav{
        right: 20px;
    }

    nav ul li {
        margin-left: 20px;
    }

    .quick-contact {
        margin-right: 20px;
    }

    .header-image{
        background-position: 0;
    }

    .header-image,
    .header-image-wrapper{
        height: 170px;
    }

    .three-col .block{
        display: block;
        width: 100%;
    }

    .three-col .block-content{
        margin: 20px;
    }

    .three-col .block:first-child .block-content{
        margin-left: 20px;
    }

    .three-col .block:last-child .block-content{
        margin-right: 20px;
    }
}