/* Fonts */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800|Open+Sans+Condensed:300,700);

/* Common */
body { color: #000; font-size: 15px; font-size: 1.5rem; font-family: 'Open Sans', Arial, sans-serif; }
a { color: #d80f15; }
a:hover { text-decoration: none; }

/* Layout */
.container { width: 100%; max-width: none; }
.wrapper { margin: 0 auto; width: 98%; max-width: 1200px; box-sizing: border-box; }
.content { margin-top: 2rem; }

.big_logo ~ .content .main { margin-top: 4.5rem; }
.cta_banner ~ .content .main,
.products_list-filter-wrapper  ~ .content .main { margin-top: 0; }

.big_logo ~ .products_list-filter-wrapper { margin-top: 7rem; }
.cta_banner ~ .products_list-filter-wrapper { margin-top: 2rem; }

@media screen and (max-width: 73.125em) {
  .big_logo ~ .content .main { margin-top: 0; }
  .big_logo ~ .products_list-filter-wrapper { margin-top: 2rem; }
}

@media screen and (max-width: 48em) { 
  .wrapper { width: 100%; }
  .content > .wrapper { padding: 0 2%; width: 100%; }
  .footer .wrapper { width: 96%; }
}

.alert_info, .alert_error { position: relative; z-index: 50; border: none; border-radius: 0; }
.alert_content, .flash_basket_error, .checkout-error__wrapper, .checkout-error__list { z-index: 50; }
.flash-message { top: 0; }
.flash-message__wrapper { max-width: none; }
.flash-message__content { color: #fff; font-weight: 700; background-color: #7da70a; border: none; border-radius: 0; }
.flash-message--error .flash-message__content { color: #fff; background-color: #680111; }
.alert_error { background-color: red; color: white; }
.alert_error a, .alert_error a:hover { color: white; }
.cannot_order { background-color: #d80f15; color: white; padding: 5px; box-sizing: border-box; }

/************
 Top header
************/
/* Header */
.header { margin: 0; }
.header .logo_layout { position: relative; margin-left: .7rem; width: 207px; height: 87px; font-size: 1.3rem; font-weight: 400; z-index: 30; }
.header .logo_layout a { display: block; position: absolute; left: 0; top: -1px; width: 100%; }
.header .logo_layout img { display: block; }
.header .logo_layout .logo { display: none; }
.header .logo_layout .logo_compact { display: block; }

/* Big logo */
.big_logo .logo_layout { margin-left: 0; width: 228px; }
.big_logo .logo_layout a { top: 0; }
.big_logo .logo_layout .logo { display: block; }
.big_logo .logo_layout .logo_compact { display: none; }

@media screen and (max-width: 73.125em) {
  .big_logo .logo_layout { width: 170px; }
  .big_logo .logo_layout a { top: 0; margin-left: 0; }
}

@media screen and (max-width: 66.25em) {
  .header .logo_layout { margin-left: .5rem; width: 177px; height: 78px; }
  .header .logo_layout a { top: 0; }
  .big_logo .logo_layout { width: 154px; }
  .big_logo .logo_layout a { top: 0; margin-left: 0; }
}

@media screen and (max-width: 57em) {
  .big_logo .logo_layout { width: 145px; }
}

@media screen and (max-width: 48em) { 
  .header { border-bottom: 1px solid #e5e5e5; }
  .header .logo_layout { margin-left: 0; width: 136px; max-width: 30%; height: 60px; }
  .header .logo_layout a { left: 0; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
  .header .logo_layout img { margin: auto; }
  .big_logo .logo_layout .logo { display: none; }
  .big_logo .logo_layout .logo_compact { display: block; }
}

/* Account menu */
.user_account { float: right; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.user_account-menu { border-right: 1px solid #c9c9da; }
.user_account-menu > li { float: left; border-left: 1px solid #c9c9da; box-sizing: border-box; }
.user_account-menu > li > a { display: block; position: relative; padding: 0 2rem; height: 8.7rem; line-height: 8.7rem;
  color: #000; font-size: 2.3rem; font-weight: 700; text-decoration: none; font-family: 'Open Sans Condensed', Arial, sans-serif;
  box-sizing: border-box; overflow: hidden;
  -webkit-transition: background-color .2s ease;
  transition: background-color .2s ease;
}
.user_account-menu .restaurant > a,
.user_account-menu .rewards > a,
.user_account-menu .login > a {}
.user_account-menu .restaurant > a { background-color: #f1f1f6; }
.user_account-menu .user > a { padding-right: 5rem; }
.user_account-menu > li > a:hover { background-color: #f1f1f6; }
.user_account-menu .user > a span { display: block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }

.user_account-menu > li > a strong { display: inline-block; font-size: 2.4rem; text-transform: uppercase; letter-spacing: -1.5px; font-weight: inherit !important; }
.user_account-menu > li > a span { display: inline-block; color: #29296c; }
.user_account-menu [class^="icon-"] { display: none; }

.menu_icon-expand { display: block; position: absolute; right: 2rem; top: 50%; margin-top: -.5rem; width: 0; height: 0; 
  border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 16px solid #d80f15;
  transition: transform .2s ease; 
}
.active .menu_icon-expand, .open .menu_icon-expand { -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); transform: rotate(180deg); }

/* Account menu: drop-down */
.user_account-menu > li { position: relative; }
.user_account-menu .drop_down { display: none; position: absolute; right: 0; top: 100%; padding: 1em 1.5em; box-sizing: border-box; z-index: 100; }
.user_account-menu .active ~ .drop_down { display: block; }
.user_account-menu .drop_down:before { content: ''; display: block; position: absolute; bottom: 100%; width: 0; height: 0; border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 10px solid #d80f15; }
.user_account-menu .rewards .drop_down:before { right: 45px; }
.user_account-menu .user .drop_down:before { right: 12px; border-left: 14px solid transparent; border-right: 14px solid transparent; border-bottom: 12px solid #d80f15; }
.user_account-menu .user .drop_down:after { content: ''; display: block; position: absolute; top: -8px; right: 12px; width: 0; height: 0; border-left: 14px solid transparent; border-right: 14px solid transparent; border-bottom: 12px solid #fff; }

/* Rewards */
.user_account-menu .rewards .drop_down { padding: 1.5em; width: 350px; background: #1d1d57; }
.user_account-menu .rewards .drop_down:before { border-bottom: 12px solid #1d1d57; }
.user_account-menu .rewards .drop_down:after { display: none; }

.user_account-menu .rewards_info { color: #fff; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.user_account-menu .rewards_info h3 { margin-bottom: .3em; font-size: 25px; font-size: 2.5rem; text-transform: uppercase; line-height: 1; }
.user_account-menu .rewards_info h5 { display: inline-block; margin-bottom: 1rem; padding: .7rem 1rem; font-size: 25px; font-size: 2.5rem; text-transform: uppercase; line-height: .9; background-color: #7575b1; }
.user_account-menu .rewards_info p { margin-bottom: 1em; font-size: 15px; font-size: 1.5rem; line-height: 1.2; }
.user_account-menu .rewards_info .buttons { margin: 1em 0 0; }
.user_account-menu .rewards_info .buttons .button { display: inline-block; font-size: 16px; font-size: 1.6rem; text-transform: none; }

/* User */
.user_account-menu .user .drop_down { padding: 1em; width: 190px; background-color: #fff; border: 3px solid #d80f15; box-sizing: border-box; }
.user_account-menu .account_menu li { font-size: 23px; font-size: 2.3rem; font-weight: 700; letter-spacing: -1px; text-transform: uppercase; text-align: center; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.user_account-menu .account_menu li ~ li { margin-top: .3em; }
.user_account-menu .account_menu .logout { padding-top: .3em; border-top: 1px solid #c3c3c3; }
.user_account-menu .account_menu li a { color: #000; text-decoration: none; }
.user_account-menu .account_menu li a:hover { color: #d80f15; }

@media screen and (max-width: 66.25em) {
    .user_account-menu > li > a { padding: 0 1.7rem; height: 7.8rem; line-height: 7.8rem; font-size: 1.7rem; }
    .user_account-menu .user > a span { max-width: 200px; }
    .user_account-menu > li > a strong { font-size: 2.1rem; }
    .menu_icon-expand { margin-top: -.3rem; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 12px solid #d80f15; }
}
@media screen and (max-width: 54em) {
    .user_account-menu .user > a span { max-width: 150px; }

    .user_account-menu > li > a { line-height: 1.2; }
    .user_account-menu > li > a strong { display: block; padding-top: 1.5rem; }
    .user_account-menu > .login > a,
    .user_account-menu > .user > a { line-height: 7.8rem; }
    .user_account-menu > .login > a strong,
    .user_account-menu > .user > a strong { display: none; }
    .user_account-menu .user > a span b { display: none; }
}
@media screen and (max-width: 48em) {
    .user_account-menu { border-right: none; }
    .user_account-menu > li > a { height: 6rem; line-height: 1; padding: 0 1rem; }
    .user_account-menu > li > a strong { display: block; padding-top: 1.1rem; font-size: 1.9rem; }
    .user_account-menu > .login > a,
    .user_account-menu > .user > a { line-height: 6rem; }
    .user_account-menu > .user > a { padding-right: 3rem; }
    .menu_icon-expand { right: .9rem; }
    .user_account-menu .user .drop_down:before,
    .user_account-menu .user .drop_down:after { right: 0px; }
}
@media screen and (max-width: 34em) {
    .user_account-menu > .rewards { display: none; }
    .user_account-menu .restaurant > a  { height: 6rem; line-height: 6rem; }
    .user_account-menu .restaurant > a strong { display: none; }
}
@media screen and (max-width: 30em) {
    .user_account { max-width: 70%; }
    .user_account-menu > li > a { display: block; white-space: nowrap; overflow: hidden; }
    .user_account-menu .user > a { padding-right: 3rem; }
    .user_account-menu .user > a span { width: 100%; max-width: 100px; }
    .user_account-menu > li > a strong { padding-top: 1.2rem; font-size: 1.7rem; letter-spacing: -1px; }
}
@media screen and (max-width: 24em) {
    .user_account-menu > li { width: 50%; }
    .user_account-menu > li > a { font-size: 1.4rem; }
    .user_account-menu > li > a strong { padding-top: 1.5rem; font-size: 1.4rem; }
    .user_account-menu .user .menu_icon-expand { right: 1rem; margin-top: -.3rem; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 10px solid #d80f15; }
}

/* Main menu */
.menu { margin: 0; background-color: #29296c; }
.big_logo ~ .menu ul { margin-left: 228px; }
.menu li { float: left; margin: 0 0 0 .15em; font-size: 27px; font-size: 2.7rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.menu li > a { display: block; margin-top: .45em; padding: .35em .5em .8em; color: #fff; border-radius: .2em .2em 0 0; 
  -webkit-transition: background .2s ease; 
  transition: background .2s ease; 
}
.menu li > a:hover { background-color: #1d1d57; }
.menu .active > a { background-color: #d80f15 !important; cursor: default; }

/* Favourites */
.menu .favourites { float: right; }
.menu .favourites a { padding-left: .3em; }
.menu .favourites.login_required > a { color: #ff5b60; }

.menu .login_required_message { left: auto; right: 0; bottom: 105%; padding: .5em 1em; width: 270px; font-size: 13px; font-size: 1.3rem; text-transform: none; font-weight: 600; font-family: 'Open Sans', Arial, sans-serif; background-color: #fff; border: 2px solid #d80f15; }
.menu .login_required_message a { text-decoration: underline; }
.menu .login_required_message a:hover { text-decoration: none; }

@media screen and (max-width: 73.125em) {
    .big_logo ~ .menu ul { margin-left: 170px; }
    .menu li { font-size: 2.1rem; }
}
@media screen and (max-width: 66.25em) {
    .big_logo ~ .menu ul { margin-left: 155px; }
}
@media screen and (max-width: 57em) {
    .menu li { font-size: 1.7rem; }
}
@media screen and (max-width: 48em) {
    .menu .wrapper { width: 100%; }
    .menu ul { margin: 0 !important; border-top: 1px dashed #fff; }
    .menu li { display: block; margin: 0; width: 100%; font-size: 2.1rem; text-align: center; border-bottom: 1px dashed #fff; }
    .menu li > a { display: block; margin: 0; padding: .4em 1em !important; border-radius: 0; }
    .menu .login_required_message { left: 50%; margin-left: -135px; }
}

/* Mobile navigation */
.mobile_topbar { margin: 0; background-color: #d80f15; }
.page_index .mobile_topbar { background-color: #29296c; }
.mobile_topbar.mobile_topbar_fixed { box-shadow: 0 0 7px rgba(0, 0, 0, 0.35); }
.mobile_topbar .mobile_basket { padding: .5em 2%; color: #fff; font-size: 1.4rem; }
.mobile_topbar .mobile_basket .basket_view { font-size: 1.9rem; line-height: 1; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.mobile_topbar .mobile_basket .basket_view a { color: #fff; }
.mobile_topbar .mobile_basket .basket_view a .view { text-decoration: underline; }
.mobile_topbar .mobile_basket .basket_view a:hover .view { text-decoration: none; }
.mobile_topbar .mobile_basket .basket_view .basket_mobile_total { color: #fff; }
.mobile_topbar .mobile_basket .order_now { margin-top: .15em; }

#fixing_mobile_basket { background-color: #fff; }

.mobile_topbar .mobile_basket_category_title { padding: .5em 2%; border-top: 1px dashed #fff; }
.mobile_topbar .category_title { margin: 0; padding: 0; }
.mobile_topbar .category_title h2 { margin: 0; color: #fff; font-size: 2.4rem; line-height: 1.4; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.mobile_topbar .category_title span { margin: 0; }
.mobile_topbar .category_title .open_menu_link { width: 1.3em; height: 1.05em; color: #fff; }
.mobile_topbar .category_title .open_menu_link:before { content: '\f008'; margin-right: .1em; font-size: 1.1em; -webkit-transition: all .2s ease; transition: all .2s ease; }
.mobile_topbar .category_title .open_menu_link:hover:before { opacity: .7; }

/* Index/static menu */
.index_menu_mobile { padding: 0; }
.index_menu_mobile .menu_link, .index_menu_mobile .order_link { display: inline-block; padding: 1.1rem 2%; color: #fff; font-size: 24px; font-size: 2.4rem; line-height: 1; font-weight: 700; text-transform: uppercase; text-decoration: none; white-space: nowrap; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.index_menu_mobile .menu_link:hover, .index_menu_mobile .order_link:hover { opacity: .9; }
.index_menu_mobile .menu_link { float: left; }
.index_menu_mobile .order_link { float: right; background-color: #d80f15; }

@media screen and (max-width: 24em) {
  .index_menu_mobile .menu_link,
  .index_menu_mobile .order_link { display: block; float:none; width:100%; text-align:center; box-sizing: border-box; }
}

/* CTA banner */
.cta_banner-container { position: relative; height: 220px; font-family: 'Open Sans Condensed', Arial, sans-serif; 
  background: #e9e9e9 url(/assets-images/cat-banner.jpg) no-repeat right top; overflow: hidden; z-index: 20; 
}
.cta_banner-offer { position: relative; margin: 7rem 0 0 5rem; }
.cta_banner-offer .title { color: #29296c; font-size: 3.2rem; font-weight: 700; }
.cta_banner-offer .cta_banner-buttons a { display: inline-block; margin-top: 2rem; padding: 0 2rem; 
    color: #fff; font-size: 16px; font-size: 1.6rem; font-weight: 700; line-height: 4rem; text-transform: uppercase; text-decoration: none; 
    background-color: #d80f15; border-radius: .7rem; 
    -webkit-transition: background-color .2s ease;
    transition: background-color .2s ease;
}
.cta_banner-offer .cta_banner-buttons a:first-child { margin-right: 2rem; }
.cta_banner-offer .cta_banner-buttons a:hover { background-color: #680111; }

@media screen and (max-width: 73.125em) {
    .cta_banner-offer { margin: 5rem 0 0 3rem; }
    .cta_banner-offer .title { font-size: 2.8rem; }
}
@media screen and (max-width: 68em) {
    .cta_banner-container { background-image: url(/assets-images/cat-banner-mid.jpg); }
}
@media screen and (max-width: 58em) {
    .cta_banner-container { background-image: url(/assets-images/cat-banner-small.jpg); }
    .cta_banner-offer { margin-left: 2rem; }
    .cta_banner-offer .title { font-size: 2.4rem; }
}
@media screen and (max-width: 48em) {
    .cta_banner-container { background-image: url(/assets-images/cat-banner-tiny.jpg); background-size_: cover; }
}
@media screen and (max-width: 48em) {
    .cta_banner-container { margin: 0; height: auto; }
    .cta_banner-offer { margin: 2rem; }
    .cta_banner-offer .cta_banner-buttons { margin-top: 1rem; }
    .cta_banner-offer .cta_banner-buttons a { padding: 0 1em; margin: .5rem 0; }
    .cta_banner-offer .cta_banner-buttons a:first-child { margin-right: 1rem; }
}
@media screen and (max-width: 30em) {
    .cta_banner-offer { margin: 2rem 1rem; }
    .cta_banner-offer .title { font-size: 2rem; }
}

/**********
 Category
***********/
/* Products list */
.sub_category_block { margin-bottom: 0; clear: left; }
.products_list .category_title { margin: 0 0 1.5rem; }
.category_title h2, .sub_category_header { font-size: 2.4rem; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.sub_category_header { margin-top: 2rem; }
.category_title + .sub_category_block .sub_category_header { margin-top: 0; }

/* Product list filter */
.products_list-filter-wrapper { margin: 2rem 0; }
.products_list-filter { padding: .3em .5em; font-size: 21px; font-size: 2.1rem; line-height: 1.15em; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; background-color: #f1f1f6; }
.products_list-filter .filter_title { float: left; margin: .2em .9em .2em 0; color: #d80f15; font-size: 21px; font-size: 2.1rem; line-height: 1.15em; text-transform: uppercase; }
.products_list-filter .filter_toggle { display: none; margin: .2em 0 .2em .9em; color: #000; text-decoration: none; overflow: hidden; }
.products_list-filter .filter_toggle .menu_icon-expand { margin-top: .35em; float: right; display: inline-block; position: static; }
.products_list-filter .filter_options { float: left; }
.products_list-filter li { display: inline-block; padding: .2em .7em .2em 0; box-sizing: border-box; }
.products_list-filter li:last-child { margin-right: 0; }
.products_list-filter label { display: block; position: relative; padding-left: 1.4em; }
.products_list-filter label input { position: absolute; left: 0; top: 0; }
.products_list-filter label span { display: block; }
.products_list-filter label span:before { content: ''; display: block; position: absolute; left: 0; top: 0; width: 24px; height: 24px; background: url(/assets-images/radio-btn-bg.png) no-repeat 0 0; }
.products_list-filter label input:checked + span:before { background-image: url(/assets-images/radio-btn-bg-selected.png); }

@media screen and (max-width: 48em) {
    .products_list-filter .filter_toggle { display: block; }
    .products_list-filter .filter_options { display: none; clear: both; margin-top: .5em; }
    .products_list-filter .filter_toggle.open ~ .filter_options { display: block; }
    .products_list-filter .filter_toggle.open .filter_name { visibility: hidden; }
    .products_list-filter .filter_options { overflow: hidden; }
    .products_list-filter li { float: left; width: 50%; }
}
@media screen and (max-width: 28em) {
    .products_list-filter li { float: none; margin-bottom: .3em; width: 100%; }
}

/* Tiled product list */
.tiled_list { margin: 0 -.7em; }
.tiled_list:before, .tiled_list:after { display: table; content: ""; }
.tiled_list:after { clear: both; }
.tiled_list-menu .prod_block_tiled .prod_details_tiled { border-top: 1px dashed #c9c9da; }

.prod_block_tiled { float: left; vertical-align: top; width: 33.3%; box-sizing: border-box; }
.prod_block_tiled:nth-child(3n+1) { clear: left; }
.prod_block_tiled .title { margin-bottom: .3em; font-size: 1.8rem; font-weight: 700; line-height: 1.1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.prod_block_tiled .title .add_favourite, .prod_block_tiled .title .remove_favourite { margin: 0; }
.prod_block_tiled .title .add_favourite a, .prod_block_tiled .title .remove_favourite a { width: auto; height: auto; text-indent: 0; background: none; overflow: visible; }
.prod_block_tiled .title i[class^="icon-"] { color: #d80f15; }
.prod_block_tiled .title i[class^="icon-"]:before { margin-right: 0; }
.prod_block_tiled .description { margin-bottom: .5em; color: #626262; font-size: 13px; font-size: 1.3rem; line-height: 1.2; }
.prod_block_tiled .prod_icon { box-sizing: border-box; }
.prod_block_tiled .prod_icon img { display: block; width: 100%; }
.prod_block_tiled .product_picto { position: absolute; left: .5em; bottom: .5em; }
.prod_block_tiled .product_picto img { display: block; }

.prod_details_tiled { margin: 0 .7em 1em; padding-top: 1em; border-top: 1px solid #c9c9da; }

/* Skus */
.skus { margin-bottom: .4em; }
.sku-part { position: relative; padding-left: 45px; font-size: 15px; font-size: 1.5rem; font-weight: 700; line-height: 1.6; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.sku-part select { text-transform: none; }
.sku-part + .sku-part { margin-top: .4em; }
.sku-part ul { border-radius: .2em; overflow: hidden; }
.sku-part li { float: left; }
.sku-part li label { display: block; position: relative; }
.sku-part li label input { position: absolute; left: 0; top: 0; }
.sku-part label span { display: block; position: relative; color: #000; letter-spacing: -1px; text-align: center; background-color: #c9c9da; cursor: pointer; overflow: hidden; }
.sku-part label input:checked + span { color: #fff; background-color: #29296c; }
.sku-part label input:disabled + span { color: #b3b3b3; cursor: default; }
.sku-part li:nth-last-child(4):first-child,
.sku-part li:nth-last-child(4):first-child ~ * { width: 25%; }
.sku-part li:nth-last-child(3):first-child,
.sku-part li:nth-last-child(3):first-child ~ * { width: 33.33%; }
.sku-part li:nth-last-child(2):first-child,
.sku-part li:nth-last-child(2):first-child ~ * { width: 50%; }
.sku-part li:nth-last-child(1):first-child,
.sku-part li:nth-last-child(1):first-child ~ * { width: 100%; }
.sku-part__name { display: block; float: left; margin-left: -45px; }

/* Skus: mobile */
.skus_mobile { display: none; }
.skus_mobile .skus { margin: .5em 0; padding: .5em 0; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }

@media screen and (max-width: 48em) {
    .prod_block_tiled .product__footer.show_toggle ~ .skus_mobile { display: block; }
}

/* Price tag & attributes toggle button */
.prod_block_tiled .price_tag { float: left; margin-right: .3em; color: #d80f15; font-size: 16px; font-size: 1.6rem; font-weight: 700; line-height: 1.2; }
.skus_mobile__toggle { display: none; position: relative; float: right; color: #000; text-decoration: none; }
.skus_mobile__toggle_clickable { padding-right: 1.5em; cursor: pointer;}
.skus_mobile__toggle .menu_icon-expand { display: none; top: .35em; right: 0; margin: 0; }
.skus_mobile__toggle_clickable .menu_icon-expand {display: block;}
.show_toggle .skus_mobile__toggle .menu_icon-expand { -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); transform: rotate(180deg); }
.skus_mobile__toggle li { float: left; font-size: 1.5rem; font-weight: 700; letter-spacing: -1px; text-transform: uppercase; line-height: 1.4; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.skus_mobile__toggle li:not(:last-child) { margin-right: .7em; }
.skus_mobile__toggle li .sku-part__name { display: inline; float: none; margin-left:0; color: #a0a0a0; }

/* Add button */
.prod_block_tiled .icon_button_wrapper { position: relative; margin-bottom: .5em; }
.prod_block_tiled .icon_button_wrapper .add_to_basket { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.prod_block_tiled .icon_button_wrapper .add_to_basket .submit_button, .prod_block_tiled .icon_button_wrapper .add_to_basket .customize { display: block; position: relative; width: 100%; color: #fff; font-weight: 700; font-family: 'Open Sans', Arial, sans-serif; border: none; cursor: pointer; }
.prod_block_tiled .icon_button_wrapper .add_to_basket .submit_button { height: 100%; font-size: 26px; font-size: 2.6rem; text-transform: uppercase; background-color: #d80f15; background-color: rgba(216,15,21,0.75); }
.prod_block_tiled .icon_button_wrapper .add_to_basket .customize { position: absolute; top: 50%; font-size: 21px; font-size: 2.1rem; background-color: #29296c; background-color: rgba(41,41,108,0.75); }
.prod_block_tiled .icon_button_wrapper .add_to_basket .customize, .prod_block_tiled .icon_button_wrapper .add_to_basket .customize + .submit_button { height: 50%; }
.prod_block_tiled .icon_button_wrapper .add_to_basket .submit_button span, .prod_block_tiled .icon_button_wrapper .add_to_basket .customize span { display: block; position: absolute; left: 0; top: 50%; padding: 0; width: 100%; text-align: center; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.prod_block_tiled .add_to_basket .or { display: none; position: absolute; top: 50%; left: 50%; margin: -19px 0 0 -19px; width: 38px; height: 38px; overflow: hidden; }
.prod_block_tiled .add_to_basket .customize ~ .or { display: block; }
.prod_block_tiled .add_to_basket .or:before, .prod_block_tiled .add_to_basket .or:after { content: ''; display: block; position: absolute; top: 0; left: 50%; width: 0; height: 0; z-index: 5; border-top: 19px solid transparent; border-bottom: 19px solid transparent; }
.prod_block_tiled .add_to_basket .or:before { margin-left: -19px; border-right: 19px solid #fff; }
.prod_block_tiled .add_to_basket .or:after { border-left: 19px solid #fff; }
.prod_block_tiled .add_to_basket .or b { position: relative; left: 11px; top: 7px; color: #000; font-size: 15px; font-size: 1.5rem; letter-spacing: -1px; text-transform: uppercase; text-align: center; font-family: 'Open Sans Condensed', Arial, sans-serif; z-index: 10; }

/* Add button: mobile */
.prod_block_tiled .add_to_basket-mobile { display: none; margin-top: .7em; position: relative; border-radius: .2em; overflow: hidden; }
.prod_block_tiled .add_to_basket-mobile .submit_button, .prod_block_tiled .add_to_basket-mobile .customize { display: block; height: 38px; line-height: 38px; color: #fff; font-size: 1.6rem; font-weight: 700; letter-spacing: -1px; text-transform: uppercase; text-align: center; text-decoration: none; font-family: 'Open Sans Condensed', Arial, sans-serif; border: none; box-sizing: border-box; cursor: pointer; }
.prod_block_tiled .add_to_basket-mobile .submit_button { float: left; width: 100%; background-color: #d80f15; }
.prod_block_tiled .add_to_basket-mobile .customize ~ .submit_button { padding-right: 19px; width: 50%; }
.prod_block_tiled .add_to_basket-mobile .customize { float: right; padding-left: 19px; width: 50%; background-color: #29296c; }

/* Touch/hover events support */
.prod_block_tiled .icon_button_wrapper .add_to_basket { display: none; }
.no-touchevents .prod_block_tiled .icon_button_wrapper:hover .add_to_basket { display: block; }
.prod_block_tiled .icon_button_wrapper.show_buttons .add_to_basket { display: block; }

@media screen and (max-width: 64em) {
    .tiled_list { margin: 0 -.5em; }
    .prod_block_tiled { width: 50%; }
    .prod_block_tiled:nth-child(3n+1) { clear: none; }
    .prod_block_tiled:nth-child(2n+1) { clear: left; }
}
@media screen and (max-width: 48em) {
    .prod_block_tiled .skus_desktop { display: none; }
    .prod_block_tiled .icon_button_wrapper .add_to_basket { display: none !important; }
    .product__footer .skus_mobile__toggle { display: block; }
    .prod_block_tiled .add_to_basket-mobile { display: block; }
}
@media screen and (max-width: 36em) {
    .tiled_list { margin: 0; }
    .prod_block_tiled { float: none; margin: 0 auto 1em; padding: 0; width: 100%; max-width: 370px; }
    .prod_details_tiled { margin: 0 0 1em; }
}

/************
  Menu/Deals
************/
/* Sidebar order button */
.side_order_button { margin: 1em 0 2em; text-align: center; }

.side_order_button .button { display: inline-block; text-align: center; }

/* Menu set navigation */
.layout_categories .deal_navigation { display: block; margin-bottom: 2em; }
.deal_navigation li a { display: block; height: 55px; text-decoration: none; overflow: hidden; }
.deal_navigation .active a { color: #fff; }

/***************
  Compose page
***************/
.compose_section { margin-top: 1.5em; }

/* Title & price tag */
.compose_section-header { margin-bottom: .7em; }
.compose_section-header .title { float: left; font-size: 30px; font-size: 3rem; line-height: 1.2; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }
.compose_section-header .compose_add_button { float: right; }
.compose_section_footer { margin-top: 1em; }

/* Add button */
.compose_section .compose_add_button { margin-top: 0; margin-bottom: 0; text-align: right; }
.compose_section .compose_add_button .button { padding: .2em .7em; font-size: 26px; font-size: 2.6rem; border-radius: .2em; }
.compose_section .compose_add_button .add_new { margin-right: 20px; }
.compose_section .compose_add_button .price_tag { display: inline-block; margin-right: .4em; padding: .2em 0; font-size: 26px; font-size: 2.6rem; line-height: 1; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }

/* Field set */
.compose_section fieldset { padding: 1.5em 0; border-top: 2px dotted #c7c7c7; }
.compose_section fieldset:first-child { padding-top: 0; border-top: none; }
.compose_section fieldset h4 { margin-bottom: .5em; font-size: 23px; font-size: 2.3rem; letter-spacing: -1px; font-weight: 700; line-height: 1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.compose_section fieldset:not([class*='item_setting']) { padding-left: 125px; }
.compose_section fieldset:not([class*='item_setting']) h4 { float: left; margin: 0 0 0 -125px; width: 120px; }

/* Settings */
.compose_section .item_settings { margin-bottom: 0; padding-bottom: 0; }
.compose_section .item_settings .item_settings-group { padding: 1.5em 0; }
.compose_section .item_settings .item_settings-group:before, .compose_section .item_settings .item_settings-group:after { display: table; content: ""; }
.compose_section .item_settings .item_settings-group:after { clear: both; }
.compose_section .item_settings .item_settings-group + .item_settings-group { border-top: 2px dotted #c7c7c7; }
.compose_section .item_settings .item_settings-group h4 { float: left; margin-bottom: 0; width: 125px; }
.compose_section .item_settings .item_variants h4 { line-height: 30px; }
.compose_section .item_settings .quantity h4 { line-height: 28px; }
.compose_section .item_settings.additional { padding: 1em .5em; background-color: #f1f1f1; border-top: 2px dotted #c7c7c7; border-bottom: 2px dotted #c7c7c7; }
.compose_section .item_settings.additional .item_settings-group { padding: .5em 0; border: none; }
.compose_section .item_settings.additional h3 { margin-bottom: 1em; color: #148f6a; font-size: 16px; font-size: 1.6rem; font-weight: 700; text-transform: none; font-family: 'Open Sans', Arial, sans-serif; }

/* Quantity box */
.compose_section .quantity_box { display: inline-block; }
.compose_section .quantity_box input { width: 1.5em; text-align: center; font-size: 21px; font-size: 2.1rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; border: 1px solid rgba(0, 0, 0, 0.05); }
.compose_section .quantity_box a { display: inline-block; color: #a2a2a2; font-size: 1.9px; font-size: 1.9rem; text-decoration: none; }

/* Size selection */
.item_settings .compose-sku-part_size h4 { line-height: 54px; }
.compose-sku-part_size li { float: left; margin-right: 1em; min-width: 25%; }
.compose-sku-part_size label { display: block; position: relative; line-height: 54px; font-size: 21px; font-size: 2.1rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; cursor: pointer; }
.compose-sku-part_size label input { position: absolute; left: 0; top: 40%; }
.compose-sku-part_size label span { display: block; position: relative; }
.compose-sku-part_size label i { display: block; position: absolute; left: 0; top: 0; overflow: hidden; }
.compose-sku-part_size .medium label { padding-left: 65px; }
.compose-sku-part_size .medium label i { width: 54px; height: 54px; background: #fff url(/assets-images/icon-size-medium.png) no-repeat 0 0; }
.compose-sku-part_size .large label { padding-left: 75px; }
.compose-sku-part_size .large label i { top: -9px; width: 65px; height: 65px; background: #fff url(/assets-images/icon-size-large.png) no-repeat 0 0; }
.compose-sku-part_size label input:checked ~ span { color: #d80f15; }
.compose-sku-part_size label input:checked ~ i { background-position: left bottom; }

/* Options */
.compose_section .item_options .help_ingredients { margin-bottom: 0.7em; font-size: 15px; font-size: 1.5rem; font-weight: 700; }
.compose_section .topping_group:before, .compose_section .topping_group:after { display: table; content: ""; }
.compose_section .topping_group:after { clear: both; }
.compose_section .topping_group + .topping_group { margin-top: 1em; }
.compose_section .topping_group h5 { margin-bottom: .3em; color: #d80f15; font-size: 23px; font-size: 2.3rem; letter-spacing: -.5px; font-weight: 700; line-height: 1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.compose_section .free_toppings {font-size: 18px; font-size: 1.8rem; font-family: 'Open Sans Condensed', Arial, sans-serif; margin-top: 1em;}

/* Skus columns */
.compose_section .columns:before, .compose_section fieldset .columns:after { display: table; content: ""; }
.compose_section .columns:after { clear: both; }
.compose_section .columns li { float: left; margin-bottom: .1em; margin-right: 1%; width: 32%; list-style: none; font-size: 18px; font-size: 1.8rem; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.compose_section .columns li input { margin-left: 0; }
.compose_section .columns li input:checked + span, .compose_section .columns li input:checked + span .price { font-weight: 700; }

@media screen and (max-width: 40em) {
    .compose_section .columns li { width: 49%; margin-bottom: .2em; }
}

@media screen and (max-width: 28em) {
    .compose_section .columns li { margin-right: 0; width: 100%; }
}

/* Variants */
.compose_section .item_variants .variants:before, .compose_section .item_variants .variants:after { display: table; content: ""; }
.compose_section .item_variants .variants:after { clear: both; }
.compose_section .item_variants .variants + .variants { margin-top: .7em; }
.compose_section .item_variants .variants li { float: left; margin: 0 0 .2em; width: auto; font-size: 16px; font-size: 1.6rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.compose_section .item_variants .variants_radio li:first-child { border-radius: .2em 0 0 .2em; overflow: hidden; }
.compose_section .item_variants .variants_radio li:last-child { border-radius: 0 .2em .2em 0; overflow: hidden; }
.compose_section .item_variants .variants label { display: block; position: relative; width: auto; letter-spacing: -.5px; white-space: nowrap; }
.compose_section .item_variants .variants label input { position: absolute; left: 0; top: 0; }
.compose_section .item_variants .variants label span { display: block; position: relative; cursor: pointer; }
.compose_section .item_variants .variants_radio label span { padding: .2em 1.3em; background-color: #c9c9da; }
.compose_section .item_variants .variants label input:checked + span { color: #fff; background-color: #29296c; }
.compose_section .item_variants .variants label input:disabled + span { color: #aaa; cursor: default; }

/* Variants: thumbs */
.compose_section .item_variants .variants_radio-thumbs li { margin-right: .5em; margin-bottom: .5em; font-size: 21px; font-size: 2.1rem; text-align: left; border: 1px solid #e5e5e5; border-radius: .2em; box-sizing: border-box; }
.compose_section .item_variants .variants_radio-thumbs li:last-child { margin-right: 0; }
.compose_section .item_variants .variants_radio-thumbs label img { float: left; position: relative; height: 58px; cursor: pointer; }
.compose_section .item_variants .variants_radio-thumbs label span { float: right; padding: 0 .5em; height: 58px; line-height: 58px; }

@media screen and (max-width: 61.25em) {
    .compose_section fieldset:not([class*='item_setting']) { padding-left: 0; }
    .compose_section fieldset:not([class*='item_setting']) h4 { float: none; margin: 0 0 1em; width: auto; }
}

@media screen and (max-width: 40em) {
    .compose_section .item_settings .item_settings-group:not([class*='quantity']) h4 { float: none; margin-bottom: .5em; width: auto; line-height: 1; }
    .compose_section .item_settings .quantity h4 { margin-right: 1em; width: auto; }
}

@media screen and (max-width: 20em) {
    .compose-sku-part_size li { float: none; margin-right: 0; }
    .compose-sku-part_size label { line-height: 65px; }
    .compose-sku-part_size .medium label { padding-left: 75px; }
    .compose-sku-part_size .medium label input { left: 12px; }
    .compose-sku-part_size .medium label i { top: 6px; margin-left: 6px; }
    .compose-sku-part_size .large label i { top: 0; }
}

/***************************
  Compose page: Half & Half
***************************/
.half_half .item_settings { margin-top: 1.5em; background-color: #f1f1f6; }
.half_half .item_settings .item_settings-group { padding: 1.5em 1em; }
.half_half .item_settings .compose-sku-part_size label i { background-color: #f1f1f6; }

/* Half setting */
.half_half .side_set { margin-top: 2em; padding: 0 1em 1em; border: 2px solid #29296c; }
.half_half .side_set-label { margin: 0 -1em 1em; padding: .3em 1em .5em; color: #fff; background-color: #29296c; }
.half_half .side_set-label h3 { display: inline-block; padding-right: 80px; font-size: 30px; font-size: 3rem; line-height: 52px; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; background: url(/assets-images/icon-half-left.png) no-repeat right center; }
.half_half .side_set-label.right_side h3 { background-image: url(/assets-images/icon-half-right.png); }

/* Half header */
.half_half .side_set-header .prod_icon { float: left; width: 36%; }
.half_half .side_set-header .side_set-header_title { float: right; width: 62%; }
.half_half .side_set-header .name { margin: .3em 0 0; font-size: 25px; font-size: 2.5rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.half_half .side_set-header .description { font-size: 16px; font-size: 1.6rem; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.half_half .side_set-header select { margin-bottom: .3em; padding: 0.2em 0.3em; font-size: 1.9rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.half_half .side_set-header option { font-weight: 700; }

/* Half options  */
.half_half .item_options { border: 0; }
.half_half fieldset:not([class*='item_setting']) { padding-left: 0; }

@media screen and (max-width: 30em) {
    .half_half .side_set { margin-top: 2em; padding: 0; border-left: none; border-right: none; border-top: none; }
    .half_half .side_set-label { margin: 0 0 1em; }
    .half_half .side_set-header .prod_icon { display: none; }
    .half_half .side_set-header .side_set-header_title { float: none; width: 100%; }
}

/***********
  Upselling
***********/
.products_list.upselling { margin-top: 1em; padding-top: 2em; border-top: 2px dotted #ccc; }
.products_list.upselling .upselling_wrapper { padding: 1em; border: 5px solid #f1f1f1; }
.products_list.upselling .upselling_title { margin-bottom: .3em; color: #cf0309; font-size: 21px; font-size: 2.1rem; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.products_list.upselling .tiled_list .prod_details_tiled { border-top: none; }

/* Sidebar upselling */
.side_upselling { margin: 1em auto; max-width: 28.125em; color: #fff; font-family: 'Open Sans Condensed', Arial, sans-serif; background: #931017 url(/assets-images/upselling-bg.jpg) no-repeat center top; background-size: cover; }
.side_upselling h3 { padding: .7em .3em .4em; font-size: 27px; font-size: 2.7rem; line-height: 1; text-align: center; }
.side_upselling .item_wrapper { padding: 1em .5em 1em 95px; border-bottom: 1px solid #c15e64; }
.side_upselling .item_wrapper label { display: block; float: left; margin-left: -85px; width: 70px; font-size: 16px; font-size: 1.6rem; font-weight: 700; line-height: 1.6; text-align: right; }
.side_upselling .item_wrapper select { max-width: 100%; }
.side_upselling .buttons { margin: 0; padding: 1em .5em; text-align: center; background-color: #d80f15; }
.side_upselling .buttons .button { min-width: 170px; max-width: 94%; font-size: 16px; font-size: 1.6rem; }

@media screen and (max-width: 48em) {
    .side_upselling { margin-bottom: 0; }
}

/*************************
  Favourites: simple list
*************************/
.favourites_block { margin: 1em .7em; padding-top: 1em; border-top: 1px solid #c9c9da; }
.favourites_block .title { margin-bottom: .3em; font-size: 18px; font-size: 1.8rem; font-weight: 700; line-height: 1.1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.favourites_block .price_tag { margin-left: .3em; color: #d80f15; font-size: 18px; font-size: 1.8rem; font-weight: 700; line-height: 1.1; }
.favourites_block .description { margin-bottom: .5em; color: #626262; font-size: 13px; font-size: 1.3rem; line-height: 1.2; }
.favourites_block .title .add_favourite, .favourites_block .title .remove_favourite { margin: 0; }
.favourites_block .title .add_favourite a, .favourites_block .title .remove_favourite a { width: auto; height: auto; text-indent: 0; background: none; overflow: visible; }
.favourites_block .title i[class^="icon-"] { color: #d80f15; }
.favourites_block .title i[class^="icon-"]:before { margin-right: 0; }
.favourites_block .prod_icon { max-width: 150px; box-sizing: border-box; }
.favourites_block .prod_icon.placeholder { border: 1px solid #148f6a; }
.favourites_block .form_skus { margin-top: 1em; overflow: hidden; }

.favourites_block .form_skus ul { float: left; margin-right: .3em; }
.favourites_block .form_skus ul li { margin-bottom: .3em; }
.favourites_block .form_skus .quantity span { font-size: 15px; font-size: 1.5rem; font-weight: 700; line-height: 1.6; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.favourites_block .form_skus .skus { margin-left:0; }
.favourites_block .form_skus .sku-part { display: inline-block; padding-left:.3em; }
.favourites_block .form_skus .sku-part + .sku-part { margin: 0; }
.favourites_block .form_skus .sku-part label { min-width:0; }

.favourites_block .form_skus .customize { margin-right: .5em; font-size: 16px; font-size: 1.6rem; font-weight: 700; line-height: 1.2; text-decoration: underline; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.favourites_block .form_skus .customize:hover { text-decoration: none; }
.favourites_block .form_skus .customize span { text-decoration: inherit; }

.favourites_block .add_to_basket .submit_button { padding: .2em .5em; color: #fff; font-size: 16px; font-size: 1.6rem; line-height: 1; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; background-color: #d80f15; border: 1px solid #d80f15; border-radius: .3em; -webkit-transition: all .2s ease; transition: all .2s ease; }
.favourites_block .add_to_basket .submit_button:hover { color: fff; background: #680111; border-color: #680111; }
.favourites_block .add_to_basket .or { display: none; }

@media screen and (max-width: 54em) {
  .favourites_block .form_skus .sku-part { display: block; }
  .favourites_block .form_skus .sku-part label { min-width:35px; }
}
@media screen and (max-width: 48em) {
  .favourites_block .form_skus .sku-part { display: inline-block; }
  .favourites_block .form_skus .sku-part label { min-width:0; }
}
@media screen and (max-width: 38em) {
  .favourites_block .prod_icon { display: none; }
}
@media screen and (max-width: 25em) {
  .favourites_block .form_skus .sku-part { display: block; }
  .favourites_block .form_skus .sku-part label { min-width:35px; }
}

/********
  Basket
*********/
.basket_content { background-color: #f1f1f6; }
.basket_content .title_block { margin-bottom: .5em; padding: .9em .7em; background-color: #f1f1f6; border-bottom: 1px solid #c9c9da; }
.basket_content .title_block .title { margin: 0; color: #0c0b0c; font-size: 2.1rem; line-height: 1; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.basket_content .title_block .title a { color: #0c0b0c; }
.basket_content .title_block .title a:hover { text-decoration: underline; }
.basket_content .title_block .repeat_link { margin: .3em 0 0 .1em; font-size: 13px; font-size: 1.3rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.basket { padding: 0 .7em; font-size: 14px; font-size: 1.4rem; }
.basket_items { margin: 0 0 .5em; padding: 0; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.basket_items.deal { margin: 0 0 .5em; padding: 0; color: #000; background-color: #f1f1f6; border-bottom: 1px solid #c9c9da; }
.basket_items li { margin-bottom: .5em; line-height: 1.2; }
.basket_items a { color: #000; }
.basket_items.deal a { color: #000; }
.basket_items a:hover { text-decoration: underline; }
.basket_items li .details strong { float: left; color: #d80f15; }
.basket_items li .details span { color: #000; }
.basket_items li .itemAttribute { font-size: 1.3rem; font-weight: 300; }
.basket .deal_title { margin-bottom: .5em; padding: .3em 1em .3em 0; color: #d80f15; font-size: 14px; font-size: 1.4rem; line-height: 1; font-weight: 800; letter-spacing: -.5px; text-transform: uppercase; font-family: 'Open Sans', Arial, sans-serif; }
.basket .deal_title a { text-decoration: none; color: #d80f15; }
.basket .deal_title a:hover { text-decoration: underline; }
.basket .del { display: inline-block; margin: 0; width: 1em; height: 1em; color: #d80f15; font-size: 1.1em; text-decoration: none; line-height: 1; text-align: center; overflow: hidden; }
.basket_items li .details .del { margin: 0; color: #d80f15; }
.basket .del:before { content: '\e87b'; display: inline-block; width: 1em; height: 1em; font-weight: 400; font-family: "fontello"; }
.basket .deal_title .del { top: 50%; right: 0; margin-top: -.6em; }

/* Basket footer */
.order_type { margin: 0; padding: .9em 0; border-top: 1px solid #c9c9da; }
.order_type:last-child { margin-bottom: 1em; padding-bottom: .5em; border-bottom: none; }
.order_type p:first-child { margin-bottom: 1em; }
.coupon_code { margin: .5em 0; }
.coupon_code:last-child { margin-bottom: 1em; }
#coupon_code_link a { font-weight: bold;}
.below_min_amount { float: left; margin-top: .5em; width: 100%; font-weight: 700; }
.basket .footer_saving_info { clear: both; margin: 0 -.7em; padding: 1.2em .7em; color: #d80f15; font-weight: 700; text-align: center; font-family: 'Open Sans Condensed', Arial, sans-serif; background-color: #f1f1f6; border-top: 1px dashed #c9c9da; border-bottom: 1px dashed #c9c9da; }
.basket .footer_saving_info span { font-size: 16px; font-size: 1.6rem; }
.basket .footer_saving_info b { color: #29296c; }
.total_basket { margin: 0 0 .5em; font-size: 21px; font-size: 2.1rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.basket .order_now { border-top: 1px solid #c9c9da; }
.basket .footer_saving_info ~ .order_now { border-top: none; }
.basket .order_now .buttons { margin: 1.2em 0; }

/* Delivery buttons */
.delivery_type { display: block; width: 100%; border-radius: .6em; overflow: hidden; }
.delivery_type label { display: block; position: relative; float: left; width: 50%; font-size: 17px; font-size: 1.7rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.delivery_type label input { position: absolute; left: 0; top: 0; opacity: 0; }
.delivery_type label span { display: block; position: relative; padding: .3em .3rem; color: #000; text-align: center; white-space: nowrap; background-color: #c9c9da; box-sizing: border-box; cursor: pointer; }
.delivery_type label input:checked + span { color: #fff; background-color: #29296c; }

/**************
  Basket popup
**************/
.popup_holder { max-width: 900px; }
.close_current_popup { position: fixed; top: -.1em; right: .2em; color: #fff; font-size: 60px; font-size: 6rem; text-decoration: none; line-height: 1; font-family: Arial, sans-serif; z-index: 1205; }

.basket_popup .basket_popup_wrapper { margin: 1.5em; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.popup_prod_icon { float:left; margin-bottom: .5em; width:280px; }
.popup_prod_icon ~ .popup_title, .popup_prod_icon ~ .description, .popup_prod_icon ~ .form_skus .item_attributes { margin-left: 300px; overflow: hidden; }
.basket_popup .item_options { clear: both; }
.basket_popup .deal_item_details { margin-left: 100px;}
.popup_title { margin-bottom: .3em; }
.popup_title h3, .popup_price_tag { color: #0c0b0c; font-size: 28px; font-size: 2.8rem; font-weight: 700; text-transform: uppercase; }
.popup_price_tag { margin: 0 0 0 .5em; color: #d80f15; }
.basket_popup .description { color: #626262; font-size: 16px; font-size: 1.6rem; }
.basket_popup fieldset { margin: 1em 0; padding-top: 1em; border-top: 1px dashed #7575b1; }
.basket_popup fieldset:first-child { padding-top: 0; border-top: none; }
.basket_popup fieldset ul:before, .basket_popup fieldset ul:after { display: table; content: ""; }
.basket_popup fieldset ul:after { clear: both; }
.basket_popup .buttons { clear: both; overflow: hidden; }

@media screen and (max-width: 60em) {
    .close_current_popup { display: none; }
}

@media screen and (max-width: 48em) {
    .popup_prod_icon { width: 170px; }
    .popup_prod_icon ~ .popup_title, .popup_prod_icon ~ .description, .popup_prod_icon ~ .form_skus .item_attributes { margin-left: 200px; }
}

@media screen and (max-width: 40em) {
    .popup_prod_icon { display: none; }
    .popup_prod_icon ~ .popup_title, .popup_prod_icon ~ .description, .popup_prod_icon ~ .form_skus .item_attributes { margin-left: 0; }
    .basket_popup .deal_item_details { margin-left: 0;}
}

/* Popup: Quantity box */
.quantity_box { display: inline-block; }
.quantity_box input { padding: 0; width: 1.5em; font-size: 21px; font-size: 2.1rem; font-weight: 700; line-height: 26px; text-align: center; font-family: 'Open Sans Condensed', Arial, sans-serif; border: none; }
.quantity_box a { display: inline-block; color: #a2a2a2; font-size: 1.5px; font-size: 1.5rem; line-height: 1; text-decoration: none; }
.quantity_box a i:before { margin: 0; line-height: 26px; }
.quantity_box a { margin-left: -.7em; padding-left: 1em; }
.quantity_box a ~ a { margin-left: 0; padding-left: 0; padding-right: 1em; }

/* Settings */
.basket_popup .item_settings + fieldset { clear:both; }
.basket_popup .item_settings div + div { margin-top: .7em; }
.basket_popup .item_settings div:before, .basket_popup .item_settings div:after { display: table; content: ""; }
.basket_popup .item_settings div:after { clear: both; }
.basket_popup .item_settings.additional { margin-left: -1.5em; margin-right: -1.5em; padding: 1em 1.5em; background-color: #f1f1f1; border-top: none; }
.basket_popup .item_settings.additional h4 { margin: 0; color: #148f6a; font-size: 18px; font-size: 1.8rem; font-weight: 800; font-family: 'Open Sans', Arial, sans-serif; }
.basket_popup .item_settings.additional .additional_attributes { margin: 1em 0 0; }
.basket_popup .item_settings label { float: left; width: 100px; font-size: 22px; font-size: 2.2rem; font-weight: 700; line-height: 1.2; text-transform: uppercase; }
.basket_popup .item_settings .sku-part { padding-left: 0; }

/* Options */
.basket_popup .item_options h4, .basket_popup .item_variants h4 { font-size: 27px; font-size: 2.7rem; font-weight: 700; text-transform: uppercase; }
.basket_popup .item_options .help_ingredients { margin-bottom: 0.7em; font-size: 15px; font-size: 1.5rem; font-weight: 700; }
.basket_popup .item_options ul li { margin-bottom: .1em; font-size: 18px; font-size: 1.8rem; }
.basket_popup .item_options input:checked + span, .basket_popup .item_options input:checked + span .price { font-weight: 700; }
.basket_popup .item_options .baseIngredient .name { text-decoration: underline; }
.basket_popup .item_options .baseIngredient .price { display: none; }
.basket_popup .topping_group:before, .basket_popup .topping_group:after { display: table; content: ""; }
.basket_popup .topping_group:after { clear: both; }
.basket_popup .topping_group h5 { margin: .1em 0 .3em; color: #d80f15; font-size: 23px; font-size: 2.3rem; font-weight: 700; text-transform: uppercase; }

/* Variants */
.basket_popup .item_variants { margin-bottom: 1.5em; }
.item_variants .variants + .variants { margin-top: .7em; }
.item_variants .variants li { float: left; margin: 0; width: auto; font-size: 16px; font-size: 1.6rem; letter-spacing: -.5px; font-weight: 700; text-transform: uppercase; }
.item_variants .variants_radio li { border-left:1px solid #adadc2; margin-bottom: .5rem; }
.item_variants .variants_radio li:first-child { border-left:none; border-radius: .2em 0 0 .2em; overflow: hidden; }
.item_variants .variants_radio li:last-child { border-radius: 0 .2em .2em 0; overflow: hidden; }
.item_variants .variants label { display: block; position: relative; width: auto; white-space: nowrap; }
.item_variants .variants label input { position: absolute; left: 0; top: 0; }
.item_variants .variants label span { display: block; position: relative; cursor: pointer; }
.item_variants .variants_radio label span { padding: .2em 1.3em; color: #000; background-color: #c9c9da; }
.item_variants .variants label input:checked + span { color: #fff; background-color: #29296c; }
.item_variants .variants label input:disabled + span { color: #aaa; cursor: default; }

/* Thumbs */
.item_variants .variants_radio-thumbs li { margin-right: 1em; margin-bottom: .5em; font-size: 22px; font-size: 2.2rem; border: 1px solid #e5e5e5; border-radius: .2em; }
.item_variants .variants_radio-thumbs li:last-child { margin-right: 0; }
.item_variants .variants_radio-thumbs label img { float: left; position: relative; height: 65px; cursor: pointer; }
.item_variants .variants_radio-thumbs label span { float: right; padding: 0 2em 0 .5em; height: 65px; line-height: 65px; }

/*****************
 Shop Info block
*****************/
.shop_info_holder { background-color: #fff; }
.info_block { border-top: 2px solid #c9c9da; border-bottom: 2px solid #c9c9da; }
.info_block header { padding: .8em 0; border-bottom: 2px solid #c9c9da; }
.info_block header h2 { float: left; color: #29296c; font-size: 21px; font-size: 2.1rem; line-height: 1; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.info_block header .change_shop { float: right; margin-top: .2em; font-size: 14px; font-size: 1.4rem; font-weight: 700; text-decoration: underline; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.info_block header .change_shop:hover { text-decoration: none; }
.info_block .info_content { margin: .7em 0; color: #626262; }
.info_block .info_content .address { padding: .7rem 0; line-height: 1.3; font-weight: 600; }
.info_block .info_content .address .phone { margin: 1rem 0; color: #000; font-size: 1.8rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.info_block .info_content .address .map { margin-top: .5em; font-weight: 700; }
.info_block .info_content .address .map a { text-decoration: underline; }
.info_block .info_content .address .map a:hover { text-decoration: none; }
.info_block .open { margin-top: .5em; padding: .5em 0 0; border-top: 1px solid #c9c9da; }
.info_block .payment { margin: .7em 0; color: #565656; font-size: 12px; font-size: 1.2rem; }

/**********************
  Order step & account
***********************/
/* Order steps navigation */
.step_nav { margin: 0; background-color: #f1f1f6; }
.step_nav ul { padding-right: 19px; }
.step_nav li { display: inline-block; position: relative; padding: 0 3rem 0 5rem; height: 55px; line-height: 55px; font-size: 25px; font-size: 2.5rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.step_nav li:nth-child(1) { z-index: 20; }
.step_nav li:nth-child(2) { z-index: 18; }
.step_nav li:nth-child(3) { z-index: 16; }
.step_nav li:nth-child(4) { z-index: 14; }
.step_nav li:nth-child(5) { z-index: 12; }
.step_nav li:nth-child(6) { z-index: 10; }
.step_nav li:nth-child(7) { z-index: 8; }
.step_nav li strong { margin-right: .3em; }
.step_nav li strong, .step_nav li span { position: relative; z-index: 30; }
.step_nav li:before, .step_nav li:after { content: ''; display: block; position: absolute; right: -19px; top: 0; width: 0; height: 0; border-top: 27px solid transparent; border-bottom: 28px solid transparent; border-left: 19px solid #cecede; }
.step_nav li:after { right: -18px; border-left-color: #f1f1f6; }
.step_nav li:last-child:after { display: block; }
.step_nav .active { color: #fff; background-color: #29296c; }
.step_nav .active:before { border-left-color: #29296c; }
.step_nav .active:after { display: none !important; }

@media screen and (max-width: 63.75em) {
    .step_nav li { padding: 0 2rem 0 4rem; font-size: 1.8rem; }
}

/* Buttons */
.buttons .button, .small_button { padding: .45em 1.2em; color: #fff; font-size: 22px; font-size: 2.2rem; line-height: 1; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; background-color: #d80f15; border: 1px solid #d80f15; border-radius: .35em; 
  -webkit-transition: all .2s ease; 
  transition: all .2s ease; 
}
.small_button { padding: .2em .7em; font-size: 17px; font-size: 1.7rem; }
.buttons .link { margin-top: .4em; margin-bottom: .5em; font-size: 19px; font-size: 1.9rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.buttons .button:hover, .small_button:hover { color: #fff; background: #680111; border-color: #680111; }
.basket .order_now .button { padding: 1rem .5rem; width: 100%; font-size: 2.2rem; text-align: center; border-radius: .9rem; box-sizing: border-box; }
.basket .order_now .button .price { padding: 0; border: none; }
.mobile_topbar .order_now a { padding: .3em .5em; color: #fff; font-size: 2.2rem; font-weight: 800; background-color: #680111; border: none; border-radius: .2em; }

/* Order steps */
.settings_section + .settings_section { margin-top: 1.2em; padding-top: 1em; border-top: 2px dotted #7575b1; }
.settings_section header { margin-bottom: 1.5em; }
.settings_section:first-child > header { margin-bottom: 1em; padding-bottom: 1em; border-bottom: 2px dotted #7575b1; }
.settings_section header h2 { font-size: 25px; font-size: 2.5rem; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.settings_section fieldset > div:last-child { margin-bottom: 0; }
.settings_section footer .menu_link { display: block; }

.fb-login .fb-login-button { padding: .6em 2em; font-size: 1.8rem; background-color: #3f65a5; border-radius: .9rem; }
.fb-login .fb-login-separator:before { border-top-color: #c9c9da; }

/* Rewards step */
.rewards_section { margin-top: 2em; }
.rewards_payout { margin: 2em 0; font-weight: 700; line-height: 1.2; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.rewards_payout .rewards_payout-logo { float: left; width: 20%; }
.rewards_payout .rewards_payout-content { float: right; width: 76%; }
.rewards_payout-content .title { margin-bottom: .2em; font-size: 25px; font-size: 2.5rem; line-height: 1; text-transform: uppercase; }
.rewards_payout-content .title .amount { padding: .05em .3em .1em; color: #fff; font-size: 25px; font-size: 2.5rem; line-height: 1; text-transform: uppercase; background-color: #7575b1; }
.rewards_payout-content .summary { margin-top: .6em; margin-bottom: 0em; font-size: 18px; font-size: 1.8rem; }
.rewards_payout-content .use { margin-top: 1em; padding: .5em; font-size: 19px; font-size: 1.9rem; background-color: #f1f1f6; box-sizing: border-box; }
.rewards_payout-content .use label, .rewards_payout-content .use label:first-child { display: block; position: relative; margin:0; width:auto; cursor: pointer; text-align: left; }
.rewards_payout-content .use input { position: absolute; left: 0; top: .3em; }
.rewards_payout-content .use input + span:before { content:''; display: block; position:relative; float:left; margin: 0 .5em 0 0; width:20px; height:20px; background-color: #fff; border:1px solid #0f9675; border-radius: .5rem; }
.rewards_payout-content .use input + span:after { content:''; display: none; position:absolute; left:5px; top:5px; width:12px; height:12px; background-color: #0f9675; border-radius: .3rem; }
.rewards_payout-content .use input:checked + span:after { display: block; }
.rewards_payout-content .description { margin-top: 1em; font-size: 18px; font-size: 1.8rem; font-weight: 400; }

@media screen and (max-width: 36em) {
    .rewards_section { margin-top: 0;}
    .rewards_payout .rewards_payout-logo { margin-bottom: 1em; width: 100%; }
    .rewards_payout .rewards_payout-logo img { display: none; }
    .rewards_payout .rewards_payout-content { width: 100%; }
    .rewards_payout-content .summary .amount { display: inline-block; float: none; }
    .rewards_payout-content .summary .info { display: block; float: none; }
}

/* Orders */
.order_list .order li { font-size: 18px; font-size: 1.8rem; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.order_list .order_content .repeat_button { margin-bottom: .5em; }
.order_list .order_content .repeat_button button { border-radius: .3rem; }
.order_list .order_content .repeat_button label { margin-left: 1em; }
.order_list .order_item { padding: 1rem; border: 1px solid #c9c9da; }
.order_list .order_item td { padding: .5rem; vertical-align: top; font-size: 13px; font-size: 1.3rem; }
.order_list .order_item td span { font-style: italic; }
.order_list .order_item td span:before { content: '- '; }
.order_list .order_item .price { text-align: right; }
.order_list .add_to_basket { text-align: right; }
.order_list .add_to_basket .submit_button { color: #fff; font-size: 13px; font-size: 1.3rem; font-weight: 700; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; background-color: #d80f15; border: 1px solid #d80f15; border-radius: .3rem; }
.order_list .add_to_basket .submit_button:hover { background-color: #680111; border-color: #680111; }
.order_list .order_item .deals { background-color: #f1f1f6; }
.order_list .order_item .deals th { padding: .7rem .5rem 0; color: #d80f15; font-size: 1.4rem; text-transform: uppercase; text-align: left; }
.order_list .order_item .deals + tbody tr:first-child td { padding-top: .5em; }
.order_list .order_item .total td { padding-top: .5em; font-size: 17px; font-size: 1.7rem; }
.order_list .order_info { font-size: 14px; font-size: 1.4rem; font-weight: 700; }

/* Form */
.settings_section fieldset input:not([type="radio"]), .settings_section fieldset input:not([type="checkbox"]), .settings_section fieldset textarea { padding: .4em .3em; font-size: 17px; font-size: 1.7rem; border-color: #29296c; border-radius: .5em; box-sizing: border-box; }
.settings_section fieldset input[type="checkbox"] { border-color: #acacac; }
select { padding: .2em .1em .2em .3em; max-width: 100%; color: #000; border: 1px solid #c9c9da; border-radius: 3px; }
.settings_section fieldset label, .form_content_layout div span, .page_account .form_content_layout div strong { font-size: 18px; font-size: 1.8rem; font-weight: 700 !important; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.page_account .form_content_layout div strong { font-weight: 400 !important; }
.settings_section .emphasized { font-weight: 700 !important; }
.settings_section .radio_list > p label input,
.settings_section .radio_list label input { left: -1.5em; top: 0.4em; }

/**********************
  Rewards account page
**********************/
/* Rewards: banner */
.rewards_banner { margin-bottom: 2em; padding: 2em; color: #29296d; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; background: #f2f2f2 url(/assets-images/rewards-bg.jpg) repeat center top; background-size: cover; }
.rewards_banner-logo { float:left; margin-right: 30px; width:270px; text-align: center; }

.rewards_banner-content { overflow: hidden; }
.rewards_banner-content .welcome { margin-bottom: .2em; font-size: 25px; font-size: 2.5rem; }
.rewards_banner-content .title { margin-bottom: .2em; font-size: 70px; font-size: 7rem; line-height: 1; text-transform: uppercase; }
.rewards_banner-content .title .amount { display: inline-block; padding: 0em .3em 0em; color: #fff; font-size: 70px; font-size: 7rem; line-height: 1.25; text-transform: uppercase; background-color: #d80f15; white-space: nowrap;}
.rewards_banner-content .summary { float: left; font-size: 25px; font-size: 2.5rem; }

/* Rewards: history */
.rewards_history { margin-bottom: 2em; overflow-x: auto; }
.rewards_history .rewards_table { min-width: 450px; }
.rewards_history .rewards_table caption { margin-bottom: .7em; font-size: 26px; font-size: 2.6rem; font-weight: 700; text-align: left; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.rewards_history .rewards_table { width: 100%; border: 3px solid #f1f1f6; }
.rewards_history .rewards_table th, .rewards_history .rewards_table td { text-align: center; font-weight: 700; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.rewards_history .rewards_table th { padding: .5em; font-size: 16px; font-size: 1.6rem; background-color: #f1f1f6; }
.rewards_history .rewards_table td { padding: .2em .5em; }
.rewards_history .rewards_table .green { color: #29296d; }
.rewards_history .rewards_table .orange { color: #d80f15; }

/* Rewards: content columns */
.rewards_promo { padding: 2.5em 0 2em; background-color: #f1f1f6; }
.rewards_promo .wrapper { position: relative; }
.rewards_promo .col:before { content:''; display: block; position:absolute; left:auto; top:0; margin-left:-1em; width:0; height:100%; height:100%; }
.rewards_promo .col + .col:before { border-left:1px solid #c9c9da; }
.rewards_promo .col { float:left; padding: 0 1em; width:33.3%; color:#29296c; font-size:1.8rem; font-weight: 700; line-height:1.5; font-family: 'Open Sans Condensed', Arial, sans-serif; box-sizing: border-box; }
.rewards_promo .col h3 { margin-bottom: 1em; color:#000; font-size:24px; font-size:2.4rem; font-weight:700; letter-spacing:-.5px; line-height: 1; font-family: 'Open Sans Condensed', Arial, sans-serif; }
.rewards_promo .col ul { margin:0; }
.rewards_promo .col li { position: relative; margin-bottom: .7em; padding-left: 1em; }
.rewards_promo .col li:before { content:'\2022'; display: block; position: absolute; left:0; top:0; color:#29296c; font-size:24px; line-height: 27px; }

@media screen and (max-width: 54em) {
  .rewards_banner-content .title { font-size:5rem; }
  .rewards_banner-content .title .amount { font-size:5rem; }
  .rewards_banner-content .summary { margin-top:.5em; }
}
@media screen and (max-width: 48em) {
  .rewards_banner { padding: 1.5em 1em; }
  .rewards_promo .wrapper { width:96%; }
}
@media screen and (max-width: 40em) {
  .rewards-header { float: none; margin: 0 auto 1em; }
  .rewards_banner-content { text-align: center; }
  .rewards_banner-content .title .amount { display: inline-block; float:none; margin:.2em 0 0; }
  .rewards_banner-content .summary { display:block; float:none; }
  .rewards_banner-logo { float: none; margin: 0 0 1em; width:100%; }
  .rewards_promo { padding: 1.5em 0 1em; }
  .rewards_promo .col { float:none; padding:0; width:100%; }
  .rewards_promo .col + .col { margin-top: 1em; padding-top: 1em; border-top:1px solid #c9c9da; }
  .rewards_promo .col:before { display: none; }
}

/*********
  Footer
*********/
.footer { margin-top: 2em; color: #fff; font-size: 13px; font-size: 1.3rem; font-family: 'Open Sans Condensed', Arial, sans-serif; background-color: #29296c; }
.footer a { color: #fff; text-decoration: none; }

.wrapper_menu { padding: 3rem 0; }

/* Footer social */
.footer_social { float: right; padding: 0; }
.footer_social li { float: left; margin-left: 1rem; }
.footer_social li a { display: inline-block; color: #c9c9da; font-size: 2rem; }
.footer_social li a:hover { color: #fff; }

/* Footer menu */
.footer_menu { float: left; padding: 0; }
.footer_menu li { float: left; margin: .5rem 1.5rem .5rem 0; font-size: 15px; font-size: 1.5rem; line-height: 1.2; font-weight: 700; }
.footer_menu a:hover { text-decoration: underline; }

/* Copyright */
.footer .copyright { float: none; padding: 1.5rem 0; background-color: #1d1d57; color: #7575b1; font-size: 11px; font-size: 1.1rem; text-align: center; font-family: Arial, sans-serif; }
.footer .copyright a { color: inherit; text-decoration: underline; }
.footer .copyright a:hover { text-decoration: none; }

/*  Scroll up button*/
.scroll-page-up { bottom: .5em; padding: .5em; color: #fff; font-size: 19px; font-size: 1.9rem; text-decoration: none; background-color: #1d1d57; background-color: rgba(29,29, 87, 0.75); border-radius: 100%; }
.scroll-page-up.show { right: .5em; opacity: 1; }
.scroll-page-up.show:hover { background-color: #1d1d57; }
.scroll-page-up .icon-up-open:before { content: '\e801'; }

@media screen and (max-width: 54em) {
    .footer { text-align: center; }
    .wrapper_menu { padding: 1rem 0; }
    .footer_social,
    .footer_menu { float: none; margin: 1.5rem 0; }
    .footer_social li { display: inline-block; float: none; margin: 0 1rem; }
    .footer_menu li { display: inline-block; float: none; margin: .35rem .5rem; }
}

@media screen and (max-width: 30em) {
    .footer_menu li { display: block; }
}

/***********
  Home page
***********/
.page_index .content { margin-top: 0; }

/* Home page slider/image banner */
.slide_container > .wrapper { position: relative; }

/* Slider */
.unslider, .slide_banner { position: relative; z-index: 1; }
.slide_container .mobile { display: none; }
.slide_banner a { text-decoration: none; }
.slide_banner a img { border: none; }
.unslider-nav { position: static; margin-top: 1em; }
.container .unslider-nav ol li { width: 14px; height: 14px; background-color: #fff; border: 2px solid #29296c !important; border-radius: 50%; }
.container .unslider-nav ol .unslider-active { background-color: #29296c; }
.single_banner img { display: block; }

@media screen and (max-width: 48em) {
  .slide_container .desktop { display: none; }
  .slide_container .mobile { display: block; }
}

/* Content */
.index_content .wrapper { width: 94%; }
.index_content article { float:left; box-sizing: border-box; }
.index_content article img { display:block; margin:0 auto 1em; }
.index_content article h3 { margin-bottom: 1rem; font-size: 24px; font-size: 2.4rem; font-family: "Open Sans Condensed",Arial,sans-serif; font-weight: 700; letter-spacing:-.5px; line-height: 1; }
.index_content article .description { color:#626262; font-size:15px; font-size:1.5rem; line-height: 1.5; }
.index_content article .description p + p { margin-top: 1em; }
.index_content .buttons { margin: 2.5rem 0 1rem; text-align: center; min-height: 44px; }
.index_content .buttons .button { display: inline-block; padding: .35em 1em .55em; text-transform: none; }

@media screen and (max-width: 48em) {
    .index_content .buttons { min-height: initial; }
}
@media screen and (max-width: 40em) {
    .index_content article .description { font-size:1.3rem; }
}

/* Highlight */
.index_highlight { margin-top: 5rem; }
.index_highlight article { padding: 0 1%; }
.index_highlight .banner { width: 44%; }
.index_highlight .banner ~ article { width: 28%; }
.index_highlight article h3 { font-size: 24px; font-size: 2.4rem; }

/* Franchised shop */
.index_highlight_shop article { padding: 0 0 1rem; width: 32%; background-color: #f1f1f6; }
.index_highlight_shop article:nth-child(2) { margin: 0 2%; }
.index_highlight_shop article img { display: block; margin:0; width: 100%; }
.index_highlight_shop .a_content_wrapper { padding: 1rem; }

@media screen and (max-width: 48em) {
  .index_highlight_shop article { float: none; margin: 0 auto 2rem !important; padding-top: 0 !important; max-width: 380px; }
  .index_highlight_shop article .a_content { max-width: none !important; }
}

/* About */
.about_shop { margin: 5rem 0; }
.about_shop .about_title { margin-bottom: 4rem; color: #29296c; font-size: 3.8rem; text-transform: uppercase; font-family: "Open Sans",Arial,sans-serif; font-weight: 800; line-height: 1; }
.about_shop .about_content { color: #626262; font-size: 1.5rem; line-height: 1.6; }

@media screen and (max-width: 40em) {
  .about_shop { margin: 3rem 0; }
  .about_shop .about_title { margin-bottom: 2rem; font-size: 2.8rem; }
  .about_shop .about_content { font-size: 1.4rem; }
}

/**************
  Franchised shop index map
**************/
.index-map { position: relative; }
.index-map__embed { position: absolute; left:0; right:0; top:0; bottom:0; z-index: 1; }
.index-map__embed-link { display: block; position: absolute; left:0; top:0; width: 100%; height:100%; text-decoration: none; overflow: hidden; }
.index-map__embed-image { display: block; position: absolute; margin: 0 auto; max-width: none; width: auto; min-height:100%; border: none; }
.index-map__wrapper { box-sizing: border-box; }
.index-map__shop { position: relative; padding: 1.5rem 1.5rem 1rem; width: 350px; max-width: 100%; box-sizing: border-box; z-index: 10; }

/* Shop details */
.index-map__shop-title { margin-bottom: .5em; }
.index-map__shop-address { color: #626262; }
.index-map__shop-phone { color: #000; }
.index-map__shop-phone a { text-decoration: none; }
.index-map__shop-open p:not(:last-child) { margin-bottom: .5em; }
.index-map__shop-image { margin-top: 1rem; text-align: center; }
.index-map__shop-info { margin-top: .5em; }
.index-map__shop .shop-info__social-icons { margin: 1em 0; }

@media screen and (max-width: 52.5em) {
    .index-map { margin-top: 0; }
    .index-map__wrapper { width: 100%; }
    .index-map__shop { margin: 0 auto; max-width: 96%; }
    .index-map__shop { margin: 2rem auto 1rem; }
    .index-map__embed { position: relative; left:0; top:0; right: auto; bottom: auto; margin: 0; height: 300px; }
}

/* Map theme */
.index-map__shop { width: 350px; background-color: #f1f1f1; box-shadow: 0 0 5px rgba(0,0,0,.1); }
.index-map__shop-title { margin-bottom: .5em; font-size: 24px; font-size: 2.4rem; font-family: "Open Sans Condensed",Arial,sans-serif; font-weight: 700; letter-spacing:-.5px; line-height: 1; }
.index-map__shop-phone { margin: .5em 0; font-size: 1.8rem; font-weight: 700; font-family: "Open Sans Condensed",Arial,sans-serif; }

.index-map__shop .buttons { margin: 1em 0 0; text-align: center; }
.index-map__shop .buttons .button { display: inline-block; padding: 0.45em 0; width: 100%; text-transform: none; }

.index-map__shop-image { margin-top: 1.5rem; }

.index-map__embed-image { left: 50%; top: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

@media screen and (max-width: 52.5em) {
  .index-map__embed { margin: 2rem 0; }
}
@media screen and (max-width: 40em) {
    .index-map__embed-image {
        -ms-transform: translate(-60%,-40%);
        -webkit-transform: translate(-60%,-40%);
        transform: translate(-60%,-40%);
    }
}

/* Newsletter signup form */
.index-newsletter { margin-bottom: 0; padding: 2.1rem 1rem; color: #fff; background-color: #29296c; }
.index-newsletter__wrapper { margin: 0 auto; width: 960px; max-width: 98%; }
.index-newsletter__fieldset { margin: 0 auto; padding: 0 120px 0 210px; max-width: 100%; box-sizing: border-box; }
.index-newsletter__title { display: inline-block; float: left; margin-left: -210px; color: #fff; font-size: 2.4rem; line-height: 46px; font-weight: 700; text-transform: uppercase; font-family: "Open Sans Condensed",Arial,sans-serif; }

.index-newsletter__field-wrapper { position: relative; float: left; padding:0 .5rem; width:50%; box-sizing: border-box; }

.index-newsletter__field { padding:0 .1rem 0 1.5rem; width: 100%; height: 46px; line-height: 46px; color: #626262; font-size: 1.6rem; border: none; border-radius: .9rem; box-sizing: border-box; }
.index-newsletter__button { display: block; float: right; margin-right: -120px; padding: 0; width: 115px; height: 46px; vertical-align: middle; text-align: center;
  box-sizing: border-box; cursor: pointer;
  color: #fff; font-size: 2.2rem; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif;
  background-color: #d80f15; border: none; border-radius: .9rem;
  -webkit-transition: all .2s ease; 
  transition: all .2s ease;
}
.index-newsletter__button:hover { color: #fff; background: #680111; }


/* Older browser support */
.index-newsletter__field-label { display: none; position: absolute; left: 0; bottom: 100%; margin-bottom: .3em; font-size: 1.3rem; }
.no-placeholder .index-newsletter { padding-top: 3rem; }
.no-placeholder .index-newsletter__field-label { display: block; }

@media screen and (max-width: 52.5em) {
    .index-newsletter { margin-top: 2rem; }
    .index-newsletter .index-newsletter__fieldset { padding: 0; }
    .index-newsletter__field-wrapper { padding:0 .5%; }
    .index-newsletter .index-newsletter__title { display: block; float: none; margin: 0 0 .5em 1%; line-height: 1; }
    .index-newsletter .index-newsletter__button { float: left; margin: .7em 0 0 .5%; width: 99%; }

    .index-newsletter__field-label { position: static; }
    .no-placeholder .index-newsletter { padding-top: 2rem; }
}
@media screen and (max-width: 48em) {
  .index-newsletter .index-newsletter__title { margin-bottom: 2rem; text-align: left; }
}
@media screen and (max-width: 40em) {
    .index-newsletter__title { margin-left: 0; }
    .index-newsletter__field-wrapper { width:100%; margin: 0; padding:0; }
    .index-newsletter__field-wrapper + .index-newsletter__field-wrapper { margin-top: .7em; }
    .index-newsletter .index-newsletter__button { margin: .7em  0 0; width: 100%; }
}

/* Index shop list */
.index-shops { margin: 5rem 0 2rem; }
.index-shops__wrapper { width: 98%; }
.index-shops__title { margin-bottom: 5rem; color: #29296c; font-size: 3.8rem; text-transform: uppercase; text-align: center; font-family: "Open Sans",Arial,sans-serif; font-weight: 800; line-height: 1; }

.index-shops__list { margin: 0 -1rem; }

.index-shops__shop { float: left; margin-bottom: 4rem; padding: 0 1rem; width: 33.33%; box-sizing: border-box;
  color: #626262; font-size: 1.5rem; line-height: 1.6;
}
.index-shops__shop:nth-child(3n+1) { clear: left; }

.index-shops__shop-title { margin-bottom: 1rem; color: #29296c; font-size: 2.4rem; text-transform: uppercase; font-family: "Open Sans Condensed",Arial,sans-serif; line-height: 1.2; }
.index-shops__shop-phone { margin: 1rem 0; color: #000; font-size: 1.8rem; font-weight: 700; font-family: "Open Sans Condensed",Arial,sans-serif; }

@media screen and (max-width: 48em) {
    .index-shops__list { margin: 0; }
    .index-shops__shop { float: none; margin-bottom: 4rem; padding: 0; width: 100%; }
}
@media screen and (max-width: 40em) {
  .index-shops { margin: 3rem 0 2rem 0; }
  .index-shops__title { margin-bottom: 2rem; font-size: 2.8rem; text-align: left; }
  .index-shops__shop-title { margin-bottom: 1rem; color: #29296c; font-size: 2rem; }
  .index-shops__shop { font-size: 1.3rem; }
}

/**************************** /Franchised shop index map /

/* Promo */
.index_promo { margin-top: 4em; padding: 2em 0; background-color: #f1f1f6; }
.index_promo article { float: left; padding: 0 2%; width: 25%; }
.index_promo article:first-child ~ article { border-left: 1px solid #bcbcbc; }
.index_promo article .a_content h3 { font-size: 18px; font-size: 1.8rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }

@media screen and (max-width: 48em) {
  .index_highlight { margin-top: 2em; }
  .index_highlight article { float: none !important; width: 100% !important; }
  .index_highlight article { margin-top: 2em; padding-top: 2em; }
  .index_highlight article:first-child { margin-top: 0; }
  .index_promo article:first-child ~ article { border-left: none; border-top: 1px solid #bcbcbc; }
  .index_highlight article h3 { font-size: 1.9rem; }
  .index_highlight article .a_content { margin: 0 auto; max-width: 336px; }
  .index_highlight .banner .a_content { max-width: 500px; }
  .index_promo { margin-top:2em; }
  .index_promo article { float:none; width:100%; border:none; text-align: center; }
  .index_promo article ~ article { margin-top:1.5em; padding-top: 1.5em; }
  .index_promo article .a_content { margin:0 auto; }
  .index_promo article .a_content img { display:none; }
  .index_promo article .buttons { margin: 1em 0 0; }
  .index_promo article .buttons .button { float:none; }
  .footer { margin-top: 0; }
}

/******************
  Shop picker page
******************/
.shop_picker_container { height: 100%; }
.shop_picker_container body { min-height: 100%; background: #f7f7f7 url(/assets-images/locator-bg.jpg) repeat center center; }
.shop_picker_container .container_wrapper { padding: 14rem 0 5rem; }
.shop_picker_section { position: relative; margin: 0 auto; padding: 120px 2em 2.5em; width: 98%; max-width: 710px; background-color: #fff; border: 10px solid #29296c; box-sizing: border-box; }
.shop_picker-logo { position: absolute; left: 50%; top: -132px; margin-left: -114px; width: 228px; }
.shop_picker-logo a { display: inline-block; text-decoration: none; }
.shop_picker-logo a img { border: none; }

/*****************
  Shop selection
*****************/
.postal_code_selection-title { font-size: 3.1rem; line-height: 1.2; font-weight: 700; text-transform: uppercase; text-align: center; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }
.postal_code_holder { margin: 1.5em auto; max-width: 500px; }

/* Delivery input */
.postal_code_selection .delivery_type { display: block; border-radius: .5em; }
.postal_code_selection .delivery_type label { display: block; width: 50%; font-size: 36px; font-size: 3.6rem; text-align: center; text-transform: none; }
.postal_code_selection .delivery_type label input { position: absolute; left: 0; top: 0; }
.postal_code_selection .delivery_type label span { display: inline-block; padding: 0; width: 100%; height: 60px; line-height: 56px; white-space: nowrap; background-color: #c9c9da; cursor: pointer; box-sizing: border-box; }
.postal_code_selection .delivery_type label input:checked + span { color: #fff; background-color: #29296c; }
.postal_code_selection .delivery_type label input:disabled + span { color: #bbb; cursor: default; }

/* Delivery field/button */
.postal_code_holder .field_button { position: relative; margin: 2em 0 .5em; padding-right: 80px; }
.postal_code_holder .field_button label { position: absolute; left: .5em; top: -20px; font-size: 13px; margin-bottom: .3em; }
.placeholder .postal_code_holder .field_button label { display: none; }
.postal_code_holder .postal_field { float: left; padding: 0 .5em; width: 100%; height: 60px; line-height: 60px; font-size: 27px; font-size: 2.7rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; border-color: #c9c9da; border-radius: .7rem 0 0 .7rem; box-sizing: border-box; }
.postal_code_holder .postal_field::-webkit-input-placeholder { color: #c9c9da; font-size: 21px; }
.postal_code_holder .postal_field::-moz-placeholder { color: #c9c9da; font-size: 21px; }
.postal_code_holder .postal_field:-ms-input-placeholder { color: #c9c9da; font-size: 21px; }
.postal_code_holder .button { position: absolute; right: 0; top: 0; padding: 0; width: 80px; height: 60px; line-height: 60px; color: #fff; font-size: 15px; font-size: 1.5rem; text-align: center; background-color: #29296c; border: 1px solid #29296c; border-left: none; box-sizing: border-box; border-radius: 0 .7rem .7rem 0; cursor: pointer; }
.postal_code_holder .button:hover { color: #fff; background-color: #38389a; }
.postal_code_holder .button i { font-size: 23px; font-size: 2.3rem; line-height: 1; }
.postal_code_holder .warning { margin-top: 1em; font-size: 16px; font-size: 1.6rem; }

/* Shop picker */
.shop_picker { margin: 1.5em 0 0; }
.shop_picker .step_3_delivery h1 { margin-bottom: .3em; font-size: 23px; font-size: 2.3rem; line-height: 1.1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }
.shop_picker .street_holder form { margin: .5em 0 1em; }
.shop_picker .street_holder form > div { padding-right: 200px; overflow: hidden; }
.shop_picker .street_holder .street_field { float: left; margin: 0; padding: 0 .5em; width: 100%; height: 54px; line-height: 54px; font-size: 27px; font-size: 2.7rem; font-weight: 700; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; border-color: #148f6a; border-radius: .7rem; box-sizing: border-box; }
.shop_picker .street_holder .button { float: right; margin: 0 -200px 0 0; padding: 0 .5em; height: 54px; line-height: 54px; color: #fff; font-size: 19px; font-size: 1.9rem; line-height: 1; font-weight: 700; text-transform: uppercase; text-decoration: none; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; background-color: #0f9675; border: 1px solid #0f9675; border-radius: .7rem; -webkit-transition: all .2s ease; transition: all .2s ease; }
.shop_picker .street_holder .button:hover { color: #000; background: #cfe3df; border-color: #cfe3df; }

@media screen and (max-width: 36em) {
    .shop_picker .street_holder form > div { padding-right: 0; }
    .shop_picker .street_holder .button { display: block; width: 100%; margin: .9em 0 .3em; }
}
.shop_picker .info { margin:0 auto 1em; max-width: 450px; }
.shop_picker .field_entered { color:#626262; font-size:19px; font-size:1.9rem; }
.shop_picker .field_entered label + span { color: #0f9675; font-weight: 700; text-transform: uppercase; cursor: pointer; }
.shop_picker .search_field { margin: 0 0 1em; }
.shop_picker .search_field label { display: block; margin: 0 0 5px 10px; }
.shop_picker .search_field .helper { margin-top: .5em; font-size: 13px; font-size: 1.3rem; }
.shop_picker .search_field .warning { margin-top: .5em; font-size: 14px; font-size: 1.4rem; }
.shop_picker .search_field .placeholder_label { display: block; margin-bottom: -.3em; font-size: 14px; }
.placeholder .shop_picker .search_field .placeholder_label { display: none; }
.shop_picker .search_field .buttons { margin: 0; }
.shop_picker .search_field input { float: left; margin-top: .5em; padding: 0 .3em; width: 52%; height: 29px; line-height: 1; font-size: 15px; font-size: 1.5rem; border-color: #148f6a; border-radius: .7rem; box-sizing: border-box; }
.shop_picker .search_field .button { margin-top: .5em; margin-left: 2%; padding: 0 .3em; max-width: 46%; height: 29px; line-height: 1; font-size: 15px; font-size: 1.5rem; box-sizing: border-box; }

/* Shop list */
.shop_picker .shop_details { padding: 1.2em 0; border-top: 2px dotted #c9c9da; }
.shop_picker .shop_details:last-child { padding-bottom: 0; }

.shop_picker .shop_details-header { margin-bottom: .3em; }
.shop_picker .shop_details-header .shop_title { margin: .1em 0; float:left; color: #29296c; font-size:29px; font-size:2.9rem; line-height:1.1; text-transform: uppercase; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif; }
.shop_picker .shop_details-header .buttons_top { margin:0 0 0 .3em; float: right; }

.shop_picker .shop_details .address { color:#626262; font-size:19px; font-size:1.9rem; line-height:1.2; }
.shop_picker .shop_details .address p { margin-top: .3em; }
.shop_picker .shop_details .address .phone { margin: .3em 0 0; color:#000; font-size:29px; font-size:2.9rem; font-weight:700; line-height:1; font-family: 'Open Sans Condensed', Arial, Helvetica, sans-serif;  }
.shop_picker .shop_details .address .phone a { color:#626262; text-decoration:none; }
.shop_picker .shop_details .address .map { margin: .7em 0 1em; font-size:17px; font-size:1.75rem; font-weight: 700; }
.shop_picker .shop_details .address .map a { text-decoration: none; }
.shop_picker .shop_details .address .map a:hover { text-decoration: underline; }
.shop_picker .shop_details .address .open { margin:.5em -.7em 0; padding:.6em .7em .8em; font-size:18px; font-size:1.8rem; background-color: #f0f0f0; }
.shop_picker .shop_details .address .open p { margin-top: .2em; }
.shop_picker .shop_details .address .open p:first-child { margin: 0; }
.shop_picker .shop_details .address .open b, .shop_picker .shop_details .address .open strong { color:#000; font-weight:600; }

.shop_picker .shop_details .buttons_top { margin:0 0 0 1em; float: right; }
.shop_picker .shop_details .buttons_bottom { display: none; margin:.7em 0 0;  }

.shop_picker .shop_details .button { display:inline-block; padding:.2em .5em .3em; font-size:23px; font-size:2.3rem; text-transform: none; border-radius: .5rem; }

@media screen and (max-width: 40em) {
  .shop_picker .shop_details .buttons_top { display: none; }
  .shop_picker .shop_details .buttons_bottom { display: block; }
}
@media screen and (max-width: 30em) {
  .shop_picker_container .container_wrapper { padding-top:90px; }
  .shop_picker_section { padding-top: 70px; padding-left: 1em; padding-right: 1em; width: 100%; border-left: 0; border-right: 0; }
  .shop_picker-logo { top: -100px; margin-left: -80px; width: 160px; }
  .postal_code_selection .delivery_type label { font-size: 2.4rem; }
}


/* Promotions page */
.content__side_promotion { position: static !important; margin-top: 1.5rem !important; }
.content__main_promotion { margin-bottom: 2rem; }

.promotions-info { padding: 2rem; font-size: 1.6rem; line-height: 1.5; background-color: #f1f1f1; }
.promotions-info h3 { margin: 0 0 2rem; font-size: 1.6rem; font-weight: 700; line-height: 1.5; }
.promotions-info p { margin-bottom: 2rem; }
.promotions-info > :last-child { margin-bottom: 0; }

.promotions-info ol,
.promotions-info ul { margin: 0 0 2rem; padding: 0; counter-reset: section; }

.promotions-info ol li,
.promotions-info ul li { list-style: none; position: relative; margin: 0 0 .8rem 2.4rem; padding-left: .8rem; color: #626262; }
.promotions-info ul li { margin-left: 1.4rem; }

.promotions-info ol li:before {
    content: counter(section); counter-increment: section;
    position: absolute; left: -2.2rem; top: .1rem;
    width: 2.2rem; height: 2.2rem;
    color: #fff; font-size: 1.4rem; font-weight: 400; line-height: 1.7; text-align: center;
    font-family: Arial, sans-serif;
    background-color: #d80f15; border-radius: 100%;
}

.promotions-info ul li:before {
    content: ' ';
    position: absolute;
    left: -1.2rem; top: .8rem;
    width: .7rem; height: .7rem;
    color: #fff; font-size: 1.4rem; font-weight: 400; line-height: 1.7; text-align: center;
    background-color: #d80f15; border-radius: 100%;
}

@media screen and (max-width: 48em) {
    .content__side_promotion { margin-bottom: 2rem; }
}

/* Static page */
.page_static .main { float: left; width: 100%; }
.static_page_content { font-size: 1.5rem; }
.static_page_title { margin-bottom: 2rem; color: #29296c; font-size: 3.8rem; text-transform: uppercase; font-family: "Open Sans",Arial,sans-serif; font-weight: 800; line-height: 1; }
.static_page_content h3 { padding: 0; font-size: 2.4rem; font-family: "Open Sans Condensed",Arial,sans-serif; border: none; }
.static_page_content h4 { font-size: 2.1rem; font-family: "Open Sans Condensed",Arial,sans-serif; }
.static_page_content h5 { font-size: 1.9rem; font-family: "Open Sans Condensed",Arial,sans-serif; }
.static_page_content h6 { font-size: 1.7rem; font-family: "Open Sans Condensed",Arial,sans-serif; }

/* 2 columns layout */
.static-page__col { padding-right: 3rem; width: 40%; float: left; box-sizing: border-box; }
.static-page__col + .static-page__col { margin-right: 0; width: 60%; }
.static-page__col > *:first-child { margin-top: 0; }
.static-page__image { margin-bottom: 2rem; box-sizing: border-box; }
.static-page__image img { display: block; width: 100%; }

@media screen and (max-width: 60em) {
  .static-page__col { margin: 0; padding: 0; width: 100% !important; float: none; }
  .static-page__col + .static-page__col { margin-top: 2rem; }
  .static-page__image { float: left; width: 49%; margin-right: 2%; }
  .static-page__image + .static-page__image { margin-right: 0; }
}
@media screen and (max-width: 30em) {
  .static-page__image { float: none; width: 100%; margin: 0 0 1rem; }
}

/* BASKET UPDATES */
@media screen and (max-width: 48em) {

  #basket_holder {

    position: fixed!important;
    top: 0!important;
    left: 0;
    padding: 0;
    z-index: 9999!important;
    height: 100vh;
    overflow-y: auto;
    background-color: transparent;

  }

}