* {
    padding: 0;
    margin: 0;
}

html {
    overflow-y: scroll;
}

body {
    min-width: 320px;
    font-family: 'Alegreya';
    font-weight: 400;
    font-size: 15px;
    color: #5C441B;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}

h1 {
    font-size: 30px;
}

.nowrap {
    white-space: nowrap;
}

.wf-loading {
    visibility: hidden;
}

.wf-active {
    visibility: visible;
}

a {
    text-decoration: none;
}

.centre {
    text-align: center;
}

.clear {
    clear: both;
}

/* ---------------------------------------------------------------------------------- grid */

.row {
    max-width: 960px;
    margin: 0 auto;
    padding: 0 40px;
}

.col {
    float: left;
    margin: 0 1.0416666666666665%; /* 10/960x100 */
}

.span-1 {
    width: 6.25%; /* 60/960x100 */
}

.span-2 {
    width: 14.583333333333334%; /* 140/960x100 */
}

.span-3 {
    width: 22.916666666666664%; /* 220/960x100 */
}

.span-4 {
    width: 31.25%; /* 300/960x100 */
}

.span-5 {
    width: 39.58333333333333%; /* 380/960x100 */
}

.span-6 {
    width: 47.91666666666667%; /* 460/960x100 */
}

.span-7 {
    width: 56.25%; /* 540/960x100 */
}

.span-8 {
    width: 64.58333333333334%; /* 620/960x100 */
}

.span-9 {
    width: 72.91666666666666%; /* 700/960x100 */
}

.span-10 {
    width: 81.25%; /* 780/960x100 */
}

.span-11 {
    width: 89.58333333333334%; /* 860/960x100 */
}

.span-12 {
    float: none;
}

.clearfix:after {
    content: "";
    display: table;
    clear: both;
}



header .col.span-12 {
    position: relative;
}


#nav-left {
    position: absolute;
    top: 55px;
    left: 0;
}

#nav-left li {
    margin-right: 20px;
}


#nav-right {
    position: absolute;
    top: 55px;
    right: 0;
}

#nav-right li {
    margin-left: 20px;
}


.nav li {
    font-size: 16px;
    list-style-type: none;
    float: left;
    font-weight: 700; 
}

.nav a {
    color: #5C441B;
    transition: all 0.3s ease-in-out;
}

.nav a:hover {
    color: #000;
}

.nav li#cart {
    font-size: 20px;
    font-weight: 400; 
    font-family: 'Bebas Neue', Helvetica, Arial, sans-serif;
    text-align: right;
    line-height: 22px;
}

.nav li#cart a {
    display: block;
    border: 1px solid #5C441B;
    border-radius: 3px;
    padding: 2px 5px 0 35px;
    background-image: url(../images/icon_cart.svg);
    background-repeat: no-repeat;
    background-position: 5px 3px;
}




#section-home #nav-home a,
#section-coffee #nav-coffee a {
    border-bottom: 2px solid #5C441B;
}


#logo {
    width: 163px;
    margin: 20px auto 50px auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#logo a {
    background-image: url(../images/logo_angels_coffee.svg);
    background-repeat: no-repeat;
    display: block;
    height: 112px;
}

/* ------------------------------------------------------------------------------- homepage */

#hero {
    background-image: url(../images/image_home.jpg);
    background-repeat: no-repeat;
    height: 409px;
    position: relative;
    margin-bottom: 10px;
}

#hero h1 {
    font-size: 50px;
    color: #fff;
    text-align: center;
    padding-top: 158px;
}

#hero #awards {
    position: absolute;
    bottom: 0;
    right: 30px;
    
}

#intro {
    margin-bottom: 2em;
}

#intro h2 {
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 0.5em;
}

#intro p {
    font-size: 16px;
    line-height: 1.7em;
}

#quicklinks {
    background-color: #F5F3EF;
    padding: 60px 0;
    text-align: center;
}

#quicklinks img {
    margin-bottom: 15px;
}


#quicklinks a {
    color: #5C441B;
    font-weight: 700;
    font-size: 18px;
}

#newsletter {
    width: 400px;
    margin: 0 auto;
    padding: 30px 0 0;
}

#newsletter p {
    width: 300px;
    margin: 0 auto 1em;
    font-size: 16px;
    text-align: center;
}

#newsletter h2 {
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 0.5em;
}

#newsletter input {
    font-weight: 400;
    color: #999;
    text-align: center;
}

/* ------------------------------------------------------------------------------- coffee page */

.product {
    background-color: #fff;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
    transition: all 0.3s ease-in-out;
}

.product img {
    width: 100%;
    max-width: 200px;
}

.product .price {
    font-size: 30px;
    font-weight: 400; 
    font-family: 'Bebas Neue', Helvetica, Arial, sans-serif;
    line-height: 22px;
    color: #5C441B;
}

.product h2 {
    font-size: 15px;
    margin: 10px;
    color: #5C441B;
}

.product:hover {
    background-color: #F5F3EF;
}

.product-detail-image {
    background-color: #F5F3EF;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
}

.product-detail-image img {
    width: 100%;
    max-width: 275px;
}

.product-detail h1 {
    margin-bottom: 0.5em;
}

.product-detail p {
    margin-bottom: 1em;
    line-height: 1.7em;
}

.product-detail .price {
    font-size: 30px;
    font-weight: 400; 
    font-family: 'Bebas Neue', Helvetica, Arial, sans-serif;
    line-height: 22px;
    color: #5C441B;
    margin-top: 30px;
}

label {
    display: block;
    font-family: 'Alegreya';
    font-weight: 400;
    font-size: 15px;
    color: #5C441B;
    margin-bottom: 2px;
}

select {
    display: block;
    width: 100%;
    font-family: 'Alegreya';
    font-weight: 700;
    font-size: 17px;
    color: #5C441B;
    padding: 7px 0;
    margin-bottom: 20px;
    border-radius: 4px;
    border: 1px solid #5C441B;
    box-shadow: none !important;
    appearance:none;
    background-image:url(../images/arrow_select.png);
    background-repeat: no-repeat;
    background-position: center right;
}

input[type=text] {
    display: block;
    width: 100%;
    font-family: 'Alegreya';
    font-weight: 700;
    font-size: 17px;
    color: #5C441B;
    padding: 8px 0;
    margin-bottom: 20px;
    text-indent: 3px;
    border-radius: 4px;
    border: 1px solid #5C441B;
    box-shadow: none !important;
}

.input-weight {
    float: left;
    width: 47%;
    margin-bottom: 10px
}

.input-qty {
    float: right;
    width: 47%;
    margin-bottom: 10px
}

.btn {
    background-color: #5C441B;
    text-align: center;
    border-radius: 4px;
}

.btn a {
    color: #fff;
    font-weight: 700;
    font-size: 17px;
    padding: 5px 0;
    display: block;
}



/* ---------------------------------------------------------------------------------- cart */

.cart-row {
    background-color: #F5F3EF;
    margin-bottom: 5px;
    overflow: hidden;
}

.cart-row h3 {
    font-size: 15px;
    margin-bottom: 2px;
    padding-bottom: 0;
}

.cart-row .input-qty {
    float: none;
    width: 40px;
}

.cart-row p {
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
}

.cart-coffee-img,
.cart-coffee,
.cart-grind,
.cart-weight,
.cart-row .input-qty,
.cart-row .price,
.cart-row .remove {
    float: left;
    padding: 20px;
}


.cart-coffee-img {
    padding-top: 5px;
    padding-bottom: 5px;
}

.cart-coffee-img img {
    width: 65px;
    display: block;
}


.cart-coffee {
    width: 300px;
}

.cart-grind {
    width: 100px;
}

.cart-weight {
    width: 100px;
}

.cart-row .input-qty {
    width: 50px;
    margin-bottom: 0;
    padding-bottom: 0;
}

.cart-row .input-qty input {
    padding: 1px 0;
}


.cart-row .price {
    width: 22px;
    font-size: 30px;
    font-weight: 400; 
    font-family: 'Bebas Neue', Helvetica, Arial, sans-serif;
    line-height: 22px;
    color: #5C441B;
    padding-top: 44px;
}

.cart-row .remove {
    padding-top: 42px; 
    width: 23px;
}

/* ---------------------------------------------------------------------------------- footer */

footer {
    background-color: #F5F3EF;
    font-weight: 400;
    border-bottom: 5px solid #5C441B;
    margin-top: 60px;
}

footer .row:first-child {
    padding-top: 40px;
}

footer .row:last-child {
    padding-top: 10px;
    padding-bottom: 5px;
}

footer p {
    font-size: 15px;
    line-height: 1.7em;
    margin-bottom: 1em;
}

footer p.copyright {
    margin-bottom: 0;
}

footer a {
    text-decoration: none;
}

footer strong {
    font-weight: 700;
}

footer dt {
    font-weight: 700;
}

footer dt,
footer dd {
    font-size: 15px;
    line-height: 1.7em;
}

footer dt {
    float: left;
    width: 20px;
}

footer #beans {
    width: 100%;
}
