@font-face {
  font-family: 'playfair_displaybold';
  src: url("/assets/fonts/playfair-display-v25-latin-700-webfont.woff2") format("woff2"), url("/assets/fonts/playfair-display-v25-latin-700-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'playfair_displaybold_italic';
  src: url("/assets/fonts/playfair-display-v25-latin-700italic-webfont.woff2") format("woff2"), url("/assets/fonts/playfair-display-v25-latin-700italic-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'playfair_displayregular';
  src: url("/assets/fonts/playfair-display-v25-latin-regular-webfont.woff2") format("woff2"), url("/assets/fonts/playfair-display-v25-latin-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'open_sansbold';
  src: url("/assets/fonts/open-sans-v27-latin-700-webfont.woff2") format("woff2"), url("/assets/fonts/open-sans-v27-latin-700-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'open_sansregular';
  src: url("/assets/fonts/open-sans-v27-latin-regular-webfont.woff2") format("woff2"), url("/assets/fonts/open-sans-v27-latin-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
.shop .wrap:after, .panels .wrap .threeCols .cols:after, .panels .wrap .threeCols:after, .panels .wrap:after, .blog.blogArticle .wrap .blogListing article .hold:after, .blog.blogArticle .wrap .blogListing:after, .blog .wrap .blogListing .grid:after, .blog .wrap .blogListing:after, .reviewPanel .hold ul li:after, .reviewPanel .hold:after, .subscriptions.contact .wrap .main form:after, .subscriptions .wrap .main .options .item:after, .subscriptions .wrap .main .options.chooseCoffee:after, .subscriptions .wrap .main .options.howOften:after, .subscriptions .wrap .main .options:after, .subscriptions .wrap .main:after, .contact.booking .wrap .quantity .input:after, .contact.account .wrap .hold:after, .contact.accountDetails .wrap .panes:after, .contact.accountDetails .wrap .favouritePane:after, .contact.accountDetails .wrap .pane .list:after, .contact.accountDetails .wrap .pane:after, .contact.accountDetails .wrap:after, .contact .wrap form .hold:after, .contact .wrap form .input.tickbox:after, .contact .wrap form:after {
  content: '';
  display: block;
  clear: both; }

.featuredPanel .wrap .text, .panels .wrap .shopItem, .panels .wrap .textBox, .panels .wrap .box, .panels .wrap .pullRight, .panels .wrap .pullLeft, .blog.blogArticle .wrap .blogListing article .hold .content figure, .blog .wrap > nav, .blog .wrap .item, .infoPopUp .wrap, .subscriptions.contact .wrap .main form .input, .subscriptions .wrap .main .options.coffeeGrind .control, .contact .wrap, .contact .wrap form .col, .contact .wrap form .input.select {
  box-sizing: border-box;
  -moz-box-sizing: border-box; }

.mainFoot .footCol .socialBlock .content a {
  font-family: 'playfair_displayregular'; }

.placeholder {
  pointer-events: none;
  -webkit-transition: 0.3s opacity linear;
  -ms-transition: 0.3s opacity linear;
  transition: 0.3s opacity linear;
  position: absolute; }
  .placeholder.faded {
    opacity: 0.5; }
  .placeholder.hide {
    display: none; }

.video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
  width: 100%;
  display: block; }
  .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.siteWrap {
  margin: 0 30px;
  overflow: hidden; }

body {
  padding-top: 84px; }
  body.home .shopItem .shopPopUp {
    height: 80%;
    top: 40px; }
  body.home .panels .wrap .pullRight {
    padding-left: 10px; }

header[role="banner"] {
  padding-top: 28px; }
  header[role="banner"] .wrap {
    margin: 0 30px; }
    header[role="banner"] .wrap h1 {
      transform: scale(1.625);
      transform-origin: bottom left;
      margin-top: 15px; }

.hero {
  height: 590px;
  width: 100%; }
  .hero.subscriptionsReview {
    height: 590px;
    margin: 0;
    background-position: center center; }
    .hero.subscriptionsReview .wrap .pagination {
      margin-top: 0;
      top: 0;
      position: relative;
      z-index: 100000; }
      .hero.subscriptionsReview .wrap .pagination a {
        background-color: #809da9;
        color: white; }
        .hero.subscriptionsReview .wrap .pagination a.active {
          background-color: #2b5c70; }
    .hero.subscriptionsReview:after {
      display: none; }
  .hero.giftSubscriptionHero .wrap .content .whiteBtn {
    width: 220px; }
  .hero.subscriptionsHero {
    height: 590px;
    margin-bottom: 0; }
    .hero.subscriptionsHero .wrap .content .whiteBtn {
      margin-top: 64px;
      -webkit-transition-timing-function: linear;
      -webkit-transition-duration: 300ms;
      -webkit-transition-property: all;
      -moz-transition-timing-function: linear;
      -moz-transition-duration: 300ms;
      -moz-transition-property: all;
      -o-transition-timing-function: linear;
      -o-transition-duration: 300ms;
      -o-transition-property: all;
      -ms-transition-timing-function: linear;
      -ms-transition-duration: 300ms;
      -ms-transition-property: all;
      transition-timing-function: linear;
      transition-duration: 300ms;
      transition-property: all; }
      .hero.subscriptionsHero .wrap .content .whiteBtn:hover {
        background-color: #2b5c70;
        color: white; }
    .hero.subscriptionsHero .delivery {
      font-size: 0.8125rem;
      bottom: -12px; }
      .hero.subscriptionsHero .delivery:before {
        background-position: -190px -390px;
        width: 287px;
        height: 40px; }
  .hero .wrap .content h3 {
    font-size: 2.5rem;
    width: 540px;
    margin: 0 auto; }
  .hero .wrap .logo {
    background-position: -20px -260px;
    width: 312px;
    height: 108px; }
  .hero .wrap .links {
    bottom: 75px; }
    .hero .wrap .links a {
      width: 140px; }

.featuredPanel {
  margin-bottom: 20px; }
  .featuredPanel .wrap {
    margin-left: auto;
    width: 700px; }
    .featuredPanel .wrap .text {
      padding: 28px 24px;
      margin-right: 28px;
      width: 400px; }
      .featuredPanel .wrap .text p {
        font-size: 1.625rem;
        width: 292px;
        padding-top: 12px; }
      .featuredPanel .wrap .text span {
        margin-top: 33px; }
    .featuredPanel .wrap figure {
      width: 335px;
      margin-left: auto;
      margin-top: -168px; }

.shop {
  margin-bottom: 0; }
  .shop .wrap .main {
    margin-top: 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .shop .wrap .main .shopItem {
      width: 33.3%;
      float: left;
      margin-bottom: 120px; }
      .shop .wrap .main .shopItem + .shopItem {
        margin-top: 0; }

.shopItem {
  position: relative; }
  .shopItem .shopPopUp {
    height: 100%;
    width: 252px; }
    .shopItem .shopPopUp .wrap {
      width: auto; }
      .shopItem .shopPopUp .wrap h3 {
        font-size: 1.25rem; }
  .shopItem .hold {
    width: 210px; }
    .shopItem .hold .description {
      margin-top: 30px; }
      .shopItem .hold .description h2 {
        font-size: 0.8125rem;
        padding: 0 0 10px 0; }
      .shopItem .hold .description h3 {
        font-size: 1.25rem;
        height: 48px;
        max-height: 48px;
        overflow: hidden; }
      .shopItem .hold .description .price {
        font-size: 1.25rem; }

.panels {
  margin-top: 10px; }
  .panels.giftPanels .wrap .box .hold .text h3 {
    font-size: 1.5rem; }
  .panels.historyPanels:nth-of-type(3) .wrap .textBox {
    float: right;
    padding-top: 75%; }
  .panels.historyPanels:nth-of-type(4) .wrap .textBox {
    padding-top: 75%; }
  .panels.historyPanels .wrap .box {
    width: 100%;
    float: none; }
    .panels.historyPanels .wrap .box + .box {
      margin-top: 6px; }
    .panels.historyPanels .wrap .box:after {
      display: none; }
    .panels.historyPanels .wrap .box.tallBox {
      padding-top: 100%; }
  .panels.contactPanels:nth-of-type(3) .wrap .textBox {
    float: right;
    padding-top: 25%; }
  .panels.contactPanels .wrap .textBox:first-of-type {
    padding-top: 25%; }
  .panels.trainingPanels.short .wrap .textBox {
    padding-top: 30%; }
  .panels.trainingPanels.short .wrap .textBox .hold {
    left: 0;
    right: auto; }
  .panels.trainingPanels .wrap .pullRight {
    padding-left: 10px; }
    .panels.trainingPanels .wrap .pullRight .textBox {
      width: 100%; }
  .panels.trainingPanels .wrap .box.longBox {
    padding-top: 50%; }
  .panels.trainingPanels .wrap .box .hold .text h3 {
    font-size: 1.5rem; }
  .panels.trainingPanels .wrap .textBox .hold {
    left: auto;
    right: 0;
    -webkit-transform: translateY(-50%) translateX(0);
    -ms-transform: translateY(-50%) translateX(0);
    transform: translateY(-50%) translateX(0); }
  .panels .wrap {
    margin: 0; }
    .panels .wrap .threeCols {
      padding: 74px 0 54px 0; }
      .panels .wrap .threeCols.subscriptionsCols .col figure {
        margin-top: 0; }
      .panels .wrap .threeCols .col {
        width: -moz-calc(100% / 3 - 40px);
        width: -o-calc(100% / 3 - 40px);
        width: -webkit-calc(100% / 3 - 40px);
        width: calc(100% / 3 - 40px);
        float: left;
        position: relative; }
        .panels .wrap .threeCols .col + .col {
          margin-top: 0;
          margin-left: 40px; }
        .panels .wrap .threeCols .col figure {
          margin-bottom: 36px; }
        .panels .wrap .threeCols .col h2 {
          font-size: 1.5rem;
          padding: 0 0 24px 0;
          margin: 0 auto;
          line-height: 1.2; }
        .panels .wrap .threeCols .col p {
          font-size: 1rem;
          padding: 0; }
      .panels .wrap .threeCols a {
        padding-top: 16px;
        clear: left;
        margin-top: 76px; }
    .panels .wrap .shopItem, .panels .wrap .textBox {
      width: 50%;
      float: left;
      padding-top: 50%;
      padding-bottom: 0;
      position: relative; }
      .panels .wrap .shopItem .hold, .panels .wrap .textBox .hold {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
        transform: translateY(-50%) translateX(-50%); }
    .panels .wrap .textBox {
      position: relative; }
      .panels .wrap .textBox .hold .text {
        padding-right: 0;
        padding-left: 0;
        width: 300px; }
        .panels .wrap .textBox .hold .text h2 {
          font-size: 2.1875rem; }
        .panels .wrap .textBox .hold .text blockquote {
          margin-left: 0;
          padding: 16px 0 10px 0;
          margin-top: 0;
          border-bottom: 1px solid black; }
          .panels .wrap .textBox .hold .text blockquote:after {
            display: none; }
          .panels .wrap .textBox .hold .text blockquote:before {
            font-size: 1.0625rem; }
          .panels .wrap .textBox .hold .text blockquote p {
            font-size: 1.0625rem; }
          .panels .wrap .textBox .hold .text blockquote h5 {
            font-size: 0.75rem; }
    .panels .wrap .box {
      padding-top: 50%;
      margin-bottom: 0; }
      .panels .wrap .box.smallBox + .smallBox {
        margin-top: 10px;
        margin-left: 0; }
      .panels .wrap .box.colouredBox .hold .text h4 {
        margin-bottom: 50px;
        font-size: 0.8125rem; }
      .panels .wrap .box.colouredBox form {
        margin: 0; }
        .panels .wrap .box.colouredBox form .input {
          font-size: 0.875rem; }
          .panels .wrap .box.colouredBox form .input input {
            font-size: 0.875rem;
            padding-bottom: 10px;
            padding-left: 3px; }
          .panels .wrap .box.colouredBox form .input label {
            padding-left: 3px; }
          .panels .wrap .box.colouredBox form .input ul li {
            font-size: 0.875rem;
            right: 140px;
            top: 2px; }
        .panels .wrap .box.colouredBox form button {
          width: 76px;
          height: 30px;
          font-size: 0.625rem;
          margin-top: -5px; }
      .panels .wrap .box.colouredBox:after {
        display: none; }
      .panels .wrap .box.longBox {
        width: 50%;
        float: left; }
        .panels .wrap .box.longBox + .longBox {
          margin-top: 10px; }
      .panels .wrap .box .hold {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 0;
        right: 0;
        z-index: 10; }
        .panels .wrap .box .hold .text h3 {
          font-size: 1.75rem; }
    .panels .wrap .pullRight {
      width: 50%;
      float: left;
      padding-left: 10px; }
      .panels .wrap .pullRight .smallBox {
        width: 100%; }
        .panels .wrap .pullRight .smallBox:last-of-type {
          margin-bottom: 0; }
      .panels .wrap .pullRight .longBox {
        width: 100%; }
      .panels .wrap .pullRight .textBox + .box {
        margin-top: 10px; }
    .panels .wrap .pullLeft {
      width: 50%;
      float: left; }
      .panels .wrap .pullLeft .box {
        width: 100%; }
        .panels .wrap .pullLeft .box.boxMap {
          padding-right: 10px; }
        .panels .wrap .pullLeft .box.longBox {
          margin-bottom: 0; }
        .panels .wrap .pullLeft .box:last-of-type {
          margin-bottom: 0; }

.smallNav {
  padding: 18px 30px 18px 10px;
  height: auto; }
  .smallNav a {
    margin-bottom: 0; }

.blog {
  margin-top: 52px; }
  .blog.blogSlider .swiper-container .swiper-wrapper {
    display: block; }
    .blog.blogSlider .swiper-container .swiper-wrapper .swiper-slide {
      padding: 0;
      width: 25%;
      padding-left: 10px;
      -webkit-flex-shrink: 1;
      -ms-flex: 1;
      flex-shrink: 1; }
      .blog.blogSlider .swiper-container .swiper-wrapper .swiper-slide h3 {
        width: auto;
        margin: 0 auto 24px auto; }
  .blog.blogSlider .swiper-menu {
    display: none; }
  .blog.blogArticle.v2 .wrap .blogListing header .social {
    margin-bottom: 190px; }
  .blog.blogArticle.v3 .wrap .blogListing header {
    float: none;
    margin: 0 auto; }
  .blog.blogArticle.v3 .wrap .blogListing article .hold .content .text {
    float: none;
    margin: 0 auto; }
  .blog.blogArticle.v3 .wrap .blogListing .back {
    top: 310px; }
  .blog.blogArticle .wrap .blogListing {
    text-align: left;
    margin: 0 20px;
    padding-bottom: 100px;
    position: relative; }
    .blog.blogArticle .wrap .blogListing.standardText header {
      width: 80%;
      margin-bottom: 50px; }
    .blog.blogArticle .wrap .blogListing.standardText article .hold .content.pullRight {
      width: 645px; }
      .blog.blogArticle .wrap .blogListing.standardText article .hold .content.pullRight figure {
        width: 460px;
        margin-right: 30px; }
      .blog.blogArticle .wrap .blogListing.standardText article .hold .content.pullRight .text {
        width: 460px;
        margin-right: 32px; }
    .blog.blogArticle .wrap .blogListing.standardText article .hold .content figure {
      position: static;
      float: none;
      margin-left: auto; }
    .blog.blogArticle .wrap .blogListing.standardText article .hold .content .text {
      width: 80%; }
    .blog.blogArticle .wrap .blogListing time {
      margin-bottom: 6px; }
    .blog.blogArticle .wrap .blogListing header {
      float: right;
      width: 60%; }
      .blog.blogArticle .wrap .blogListing header .social {
        margin: 48px 0 76px 0; }
        .blog.blogArticle .wrap .blogListing header .social li {
          background-position: -200px -100px;
          width: 17px;
          height: 17px; }
          .blog.blogArticle .wrap .blogListing header .social li.twitter {
            background-position: -240px -100px;
            width: 17px;
            height: 14px; }
          .blog.blogArticle .wrap .blogListing header .social li.facebook {
            background-position: -280px -100px;
            width: 9px;
            height: 17px; }
    .blog.blogArticle .wrap .blogListing article {
      float: right; }
      .blog.blogArticle .wrap .blogListing article .hold .content figure {
        margin-bottom: 46px;
        float: left;
        width: 220px;
        padding-right: 0;
        position: absolute;
        top: 0;
        left: 0; }
      .blog.blogArticle .wrap .blogListing article .hold .content .text {
        padding-bottom: 56px;
        float: right;
        width: 60%; }
        .blog.blogArticle .wrap .blogListing article .hold .content .text h4 {
          font-size: 1.125rem; }
        .blog.blogArticle .wrap .blogListing article .hold .content .text p {
          font-size: 0.9375rem; }
      .blog.blogArticle .wrap .blogListing article .hold .content.pullRight {
        width: auto;
        margin-left: 100px; }
        .blog.blogArticle .wrap .blogListing article .hold .content.pullRight figure {
          position: static;
          width: 40%;
          padding: 0; }
        .blog.blogArticle .wrap .blogListing article .hold .content.pullRight .text {
          width: 50%; }
      .blog.blogArticle .wrap .blogListing article .hold blockquote {
        width: 645px;
        float: left;
        font-size: 1.75rem;
        margin: 34px 0 100px 70px; }
        .blog.blogArticle .wrap .blogListing article .hold blockquote:before {
          background-position: -20px -440px;
          width: 19px;
          height: 13px; }
        .blog.blogArticle .wrap .blogListing article .hold blockquote p {
          width: 412px;
          padding-top: 35px; }
        .blog.blogArticle .wrap .blogListing article .hold blockquote h5 {
          font-size: 0.9375rem; }
    .blog.blogArticle .wrap .blogListing .back {
      float: left;
      position: absolute;
      top: 340px;
      left: 0; }
  .blog .wrap header h3 {
    font-size: 2.5rem; }
  .blog .wrap > nav {
    width: 490px;
    margin: 50px auto 100px auto;
    padding: 16px 30px 16px 30px; }
    .blog .wrap > nav a {
      margin-bottom: 0;
      padding-left: 0; }
      .blog .wrap > nav a + a {
        margin-left: 36px; }
  .blog .wrap .grid {
    margin-left: -30px; }
  .blog .wrap .item {
    width: 33.3%;
    float: left;
    height: 400px;
    padding: 0;
    margin-bottom: 60px;
    padding-left: 30px; }
    .blog .wrap .item + .item {
      padding-top: 0; }
    .blog .wrap .item:last-of-type {
      padding-bottom: 0; }
    .blog .wrap .item time {
      margin-bottom: 14px; }
    .blog .wrap .item figure {
      width: auto; }
    .blog .wrap .item h3 {
      font-size: 1.25rem;
      width: 210px;
      margin: 0 auto;
      margin-bottom: 32px;
      padding: 0;
      max-height: 78px;
      overflow: hidden;
      height: 78px; }
  .blog .wrap .blogListing .pagination {
    margin-bottom: 100px;
    clear: left; }

.infoPopUp .wrap {
  margin: 142px auto 0 auto;
  padding: 20px 20px 40px 20px;
  width: 420px; }
  .infoPopUp .wrap h2 {
    padding-left: 44px;
    font-size: 0.8125rem; }
    .infoPopUp .wrap h2:before {
      background-position: -440px -220px;
      width: 26px;
      height: 26px;
      right: 20px; }
  .infoPopUp .wrap p {
    font-size: 0.9375rem; }

.reviewPanel {
  margin-top: 24px;
  margin-bottom: 24px; }
  .reviewPanel .hold {
    margin: 0 0 0 20px; }
    .reviewPanel .hold h2 {
      color: #809da9;
      font-size: 0.8125rem; }
    .reviewPanel .hold form {
      position: absolute;
      top: 184px;
      left: 50%;
      width: 385px; }
      .reviewPanel .hold form > h3 {
        font-size: 2.5rem;
        padding-bottom: 24px;
        padding-top: 5px; }
    .reviewPanel .hold ul li {
      padding: 18px 6px; }
      .reviewPanel .hold ul li:last-of-type {
        border-bottom: 1px solid #989898; }
      .reviewPanel .hold ul li h3 {
        padding-top: 2px; }
      .reviewPanel .hold ul li h4 {
        font-size: 0.875rem; }
    .reviewPanel .hold .add {
      width: 220px;
      margin-top: 30px;
      margin-right: 0; }
    .reviewPanel .hold .back {
      margin: 7px 0 0 0;
      float: left; }
    .reviewPanel .hold .smallText {
      float: right;
      margin-top: 0; }

.subscriptions.contact {
  background-color: transparent; }
  .subscriptions.contact .wrap {
    background-color: transparent;
    padding: 0; }
    .subscriptions.contact .wrap .main .personalisedMsg .input {
      width: 100%;
      float: none; }
    .subscriptions.contact .wrap .main form .input {
      width: -moz-calc(50% - 20px);
      width: -o-calc(50% - 20px);
      width: -webkit-calc(50% - 20px);
      width: calc(50% - 20px);
      float: left; }
      .subscriptions.contact .wrap .main form .input:nth-of-type(2n + 2) {
        margin-left: 20px; }
    .subscriptions.contact .wrap .main .popup {
      margin-top: 0;
      top: 26px; }
    .subscriptions.contact .wrap .main h3 {
      width: auto; }
    .subscriptions.contact .wrap .main .doubleStep {
      margin: 0 10px; }
    .subscriptions.contact .wrap .main .handDelivery {
      padding: 42px 40px;
      margin: 72px 0; }
      .subscriptions.contact .wrap .main .handDelivery .hold p {
        font-size: 1rem;
        width: 410px;
        margin: 0 auto;
        padding: 20px 0 20px 0; }
      .subscriptions.contact .wrap .main .handDelivery .hold button {
        display: inline-block; }
        .subscriptions.contact .wrap .main .handDelivery .hold button + button {
          margin-left: 10px; }
.subscriptions .wrap {
  margin: 0 auto;
  width: 700px; }
  .subscriptions .wrap .main {
    position: relative; }
    .subscriptions .wrap .main .shopItem {
      display: inline-block; }
      .subscriptions .wrap .main .shopItem h3 {
        font-size: 1.25rem;
        width: auto; }
    .subscriptions .wrap .main .doubleStep + .doubleStep {
      margin-top: 190px; }
    .subscriptions .wrap .main h2 {
      font-size: 0.8125rem;
      padding-bottom: 0; }
    .subscriptions .wrap .main h3 {
      font-size: 1.875rem;
      line-height: 1.2;
      width: 410px;
      margin: 0 auto;
      padding-top: 5px; }
    .subscriptions .wrap .main .error {
      margin-left: 60px; }
    .subscriptions .wrap .main .popup {
      background-position: -400px -220px;
      width: 26px;
      height: 26px; }
    .subscriptions .wrap .main .options {
      width: auto;
      text-align: center; }
      .subscriptions .wrap .main .options .item {
        margin-top: 20px;
        padding-right: 0;
        width: 230px;
        float: left; }
        .subscriptions .wrap .main .options .item + .item {
          margin-top: 20px; }
        .subscriptions .wrap .main .options .item figure {
          float: none;
          width: 200px;
          margin: 0 auto; }
        .subscriptions .wrap .main .options .item .details {
          float: none;
          margin-top: 10px; }
          .subscriptions .wrap .main .options .item .details h3 {
            font-weight: normal;
            width: auto;
            font-size: 1.25rem; }
          .subscriptions .wrap .main .options .item .details .control {
            margin-left: -32px;
            margin-top: 7px; }
            .subscriptions .wrap .main .options .item .details .control input {
              width: 30px;
              height: 30px; }
      .subscriptions .wrap .main .options .control {
        font-size: 0.8125rem;
        padding-left: 0;
        display: inline-block; }
        .subscriptions .wrap .main .options .control + .control {
          margin-left: 0; }
        .subscriptions .wrap .main .options .control input {
          width: 150px;
          height: 150px; }
        .subscriptions .wrap .main .options .control label {
          display: block;
          margin-top: 100px;
          padding-left: 26px; }
          .subscriptions .wrap .main .options .control label span {
            padding-top: 20px;
            font-size: 0.9375rem;
            width: auto; }
        .subscriptions .wrap .main .options .control > span {
          right: 0;
          margin: 0 auto; }
      .subscriptions .wrap .main .options.giftOptions .control span {
        color: #4d4d4d;
        font-size: 0.875rem;
        line-height: 1.3; }
      .subscriptions .wrap .main .options.payOptions .control {
        height: auto !important;
        padding-top: 30px !important; }
        .subscriptions .wrap .main .options.payOptions .control input {
          top: 36px; }
        .subscriptions .wrap .main .options.payOptions .control > span {
          top: 55px; }
      .subscriptions .wrap .main .options.coffeeType .control {
        height: auto;
        padding-top: 40px; }
        .subscriptions .wrap .main .options.coffeeType .control + .control {
          margin-left: 130px; }
        .subscriptions .wrap .main .options.coffeeType .control span {
          width: 150px;
          height: 150px; }
      .subscriptions .wrap .main .options.coffeeStrength {
        width: auto; }
        .subscriptions .wrap .main .options.coffeeStrength .control {
          height: auto;
          width: auto;
          float: none; }
          .subscriptions .wrap .main .options.coffeeStrength .control:not(:first-of-type) span {
            left: 9px; }
          .subscriptions .wrap .main .options.coffeeStrength .control:nth-child(4) {
            margin-left: 40px; }
          .subscriptions .wrap .main .options.coffeeStrength .control + .control {
            margin-left: 40px; }
          .subscriptions .wrap .main .options.coffeeStrength .control > span {
            width: 120px;
            height: 120px; }
          .subscriptions .wrap .main .options.coffeeStrength .control label {
            position: relative;
            margin-top: 70px;
            left: 15px; }
      .subscriptions .wrap .main .options.coffeeGrind {
        width: 640px; }
        .subscriptions .wrap .main .options.coffeeGrind .control {
          height: auto;
          padding-top: 54px;
          width: 200px; }
          .subscriptions .wrap .main .options.coffeeGrind .control:nth-last-of-type(-n + 3) {
            margin-top: 50px; }
          .subscriptions .wrap .main .options.coffeeGrind .control + .control {
            margin-left: 0; }
          .subscriptions .wrap .main .options.coffeeGrind .control label {
            padding-left: 0; }
            .subscriptions .wrap .main .options.coffeeGrind .control label span {
              padding-left: 10px; }
          .subscriptions .wrap .main .options.coffeeGrind .control input {
            top: 20px;
            left: 20px; }
          .subscriptions .wrap .main .options.coffeeGrind .control > span {
            width: 100px;
            height: 100px;
            top: 28px;
            left: 0; }
      .subscriptions .wrap .main .options.coffeeWeight .control {
        height: auto;
        padding-top: 40px;
        width: 150px; }
        .subscriptions .wrap .main .options.coffeeWeight .control + .control {
          margin-left: 100px; }
        .subscriptions .wrap .main .options.coffeeWeight .control span {
          width: 120px;
          height: 120px; }
        .subscriptions .wrap .main .options.coffeeWeight .control label {
          padding-left: 0; }
      .subscriptions .wrap .main .options.chooseCoffee {
        width: auto;
        margin: 0 auto; }
        .subscriptions .wrap .main .options.chooseCoffee .control {
          padding-top: 48px;
          width: 224px;
          height: auto; }
          .subscriptions .wrap .main .options.chooseCoffee .control.surprise > span {
            top: 13px; }
          .subscriptions .wrap .main .options.chooseCoffee .control label {
            padding-left: 0; }
            .subscriptions .wrap .main .options.chooseCoffee .control label span {
              padding-left: 10px; }
          .subscriptions .wrap .main .options.chooseCoffee .control input {
            top: 20px; }
          .subscriptions .wrap .main .options.chooseCoffee .control > span {
            width: 120px;
            height: 120px;
            top: 28px;
            left: 0; }
      .subscriptions .wrap .main .options.howOften {
        width: auto;
        margin: 0 auto; }
        .subscriptions .wrap .main .options.howOften .selectDate {
          position: relative;
          display: inline-block;
          top: -54px;
          padding-left: 30px; }
          .subscriptions .wrap .main .options.howOften .selectDate:before {
            content: '';
            width: 110px;
            height: 110px;
            position: static;
            margin: 0 auto; }
          .subscriptions .wrap .main .options.howOften .selectDate h2 {
            color: #2b5c70;
            padding-left: 0;
            margin-top: 30px; }
          .subscriptions .wrap .main .options.howOften .selectDate .selects {
            float: none;
            width: auto;
            margin: 10px auto; }
          .subscriptions .wrap .main .options.howOften .selectDate .control {
            padding-top: 0;
            height: auto;
            position: relative;
            width: 70px;
            float: left;
            margin-top: 0;
            padding-left: 0; }
            .subscriptions .wrap .main .options.howOften .selectDate .control + .control {
              margin-left: 5px; }
        .subscriptions .wrap .main .options.howOften .control {
          padding-top: 48px;
          width: 180px; }
          .subscriptions .wrap .main .options.howOften .control + .control {
            margin-left: 20px; }
          .subscriptions .wrap .main .options.howOften .control label {
            margin-top: 130px;
            padding-left: 0; }
          .subscriptions .wrap .main .options.howOften .control input {
            top: 20px; }
          .subscriptions .wrap .main .options.howOften .control > span {
            width: 140px;
            height: 140px;
            top: 28px;
            left: 0;
            right: 0; }
      .subscriptions .wrap .main .options.payOptions .control > span {
        top: 0; }

.contact {
  background-color: #f4f7f8; }
  .contact.booking {
    margin-top: 4px;
    margin-bottom: 0; }
    .contact.booking .wrap header h3 {
      font-size: 2.5rem; }
    .contact.booking .wrap form .input.tickbox .reg-checkbox {
      float: none;
      left: 0;
      right: auto;
      margin-right: 0;
      top: 0; }
    .contact.booking .wrap .quantity {
      width: 300px;
      margin-left: 0;
      float: left; }
      .contact.booking .wrap .quantity .input button {
        margin-top: 0; }
      .contact.booking .wrap .quantity .input label {
        width: auto; }
      .contact.booking .wrap .quantity .input input {
        width: 100px;
        padding-left: 21px;
        padding-top: 3px;
        margin-left: 0; }
  .contact.account .wrap {
    padding-bottom: 34px; }
    .contact.account .wrap header {
      margin-bottom: 60px; }
      .contact.account .wrap header i {
        display: block; }
      .contact.account .wrap header h3 span {
        display: inline-block; }
    .contact.account .wrap form .selects {
      float: none;
      margin-top: 0; }
      .contact.account .wrap form .selects .select {
        float: none;
        margin-top: 0; }
    .contact.account .wrap form .forgot {
      font-size: 0.875rem;
      margin-top: 13px; }
    .contact.account .wrap form .input {
      margin-top: 0;
      margin-bottom: 24px; }
      .contact.account .wrap form .input ul li {
        top: 8px; }
      .contact.account .wrap form .input.tickbox {
        float: none;
        clear: left;
        width: 256px;
        margin: 23px auto 0 auto; }
        .contact.account .wrap form .input.tickbox label {
          top: -2px; }
    .contact.account .wrap form button {
      margin-top: 42px; }
  .contact.account .new {
    background-color: white;
    padding: 48px 0; }
  .contact.signUp .wrap form .input.tickbox {
    margin-top: 32px; }
  .contact.accountDetails {
    background-color: transparent; }
    .contact.accountDetails .wrap {
      background-color: transparent;
      padding-bottom: 80px; }
      .contact.accountDetails .wrap header {
        margin-bottom: 50px; }
        .contact.accountDetails .wrap header i {
          display: block;
          background-position: -400px -100px;
          width: 47px;
          height: 48px; }
      .contact.accountDetails .wrap .smallNav {
        position: relative;
        padding-bottom: 18px;
        margin-bottom: 90px;
        width: 620px; }
        .contact.accountDetails .wrap .smallNav:before {
          width: 620px;
          left: 0;
          margin-left: 0; }
        .contact.accountDetails .wrap .smallNav a {
          color: #989898;
          display: inline-block;
          margin-bottom: 0; }
          .contact.accountDetails .wrap .smallNav a.current {
            color: #2b5c70; }
      .contact.accountDetails .wrap .logout {
        padding-top: 16px;
        clear: left;
        margin-top: 80px; }
      .contact.accountDetails .wrap .favouritePane .shopItem {
        float: left;
        margin-left: 30px;
        width: 300px; }
      .contact.accountDetails .wrap .pane {
        float: left;
        width: 300px; }
        .contact.accountDetails .wrap .pane + .pane {
          margin-top: 0;
          float: right; }
        .contact.accountDetails .wrap .pane.addressPane {
          width: 620px;
          margin-top: 118px;
          float: left; }
        .contact.accountDetails .wrap .pane header {
          margin-bottom: 20px; }
          .contact.accountDetails .wrap .pane header h2 {
            text-align: left; }
        .contact.accountDetails .wrap .pane .text h4 {
          font-size: 1.125rem; }
        .contact.accountDetails .wrap .pane .text p {
          line-height: 1.44; }
        .contact.accountDetails .wrap .pane .address {
          float: left;
          width: 300px; }
          .contact.accountDetails .wrap .pane .address + .address {
            margin-top: 33px; }
        .contact.accountDetails .wrap .pane form {
          padding-top: 11px; }
          .contact.accountDetails .wrap .pane form .input {
            margin-bottom: 18px; }
          .contact.accountDetails .wrap .pane form button:not(.addAddress) {
            margin-top: 0; }
        .contact.accountDetails .wrap .pane .addAddress {
          margin-top: 58px;
          float: left;
          clear: left; }
        .contact.accountDetails .wrap .pane .list.subscriptionsList {
          padding-bottom: 34px; }
          .contact.accountDetails .wrap .pane .list.subscriptionsList + .subscriptionsList {
            margin-top: 34px; }
          .contact.accountDetails .wrap .pane .list.subscriptionsList:last-of-type {
            border-bottom: 0; }
          .contact.accountDetails .wrap .pane .list.subscriptionsList ul {
            width: 286px; }
            .contact.accountDetails .wrap .pane .list.subscriptionsList ul.date {
              margin-left: 0;
              width: 135px; }
              .contact.accountDetails .wrap .pane .list.subscriptionsList ul.date + .date {
                margin-left: 36px; }
              .contact.accountDetails .wrap .pane .list.subscriptionsList ul.date li + li {
                margin-top: 29px; }
            .contact.accountDetails .wrap .pane .list.subscriptionsList ul:first-of-type {
              float: left; }
              .contact.accountDetails .wrap .pane .list.subscriptionsList ul:first-of-type li p {
                padding-bottom: 0; }
        .contact.accountDetails .wrap .pane .list tr th {
          width: 248px; }
          .contact.accountDetails .wrap .pane .list tr th span {
            display: inline-block; }
          .contact.accountDetails .wrap .pane .list tr th + th {
            padding-left: 70px; }
        .contact.accountDetails .wrap .pane .list tr td.number {
          font-size: 1rem; }
        .contact.accountDetails .wrap .pane .list tr td.date {
          padding-left: 72px;
          font-size: 1rem;
          width: 248px;
          text-align: right; }
        .contact.accountDetails .wrap .pane .list tr td.view {
          margin-left: 130px;
          width: 130px;
          text-align: right; }
        .contact.accountDetails .wrap .pane .list ul {
          width: 248px; }
          .contact.accountDetails .wrap .pane .list ul.orderNo {
            font-size: 1rem; }
          .contact.accountDetails .wrap .pane .list ul.date {
            font-size: 1rem;
            margin-left: 70px; }
            .contact.accountDetails .wrap .pane .list ul.date a {
              margin-left: 130px; }
          .contact.accountDetails .wrap .pane .list ul li {
            list-style: none; }
            .contact.accountDetails .wrap .pane .list ul li + li {
              margin-top: 34px; }
            .contact.accountDetails .wrap .pane .list ul li span {
              display: inline-block; }
  .contact.orderHistory .wrap .pane {
    width: 620px; }
  .contact .wrap {
    background-color: #f4f7f8;
    width: 620px;
    margin: 0 auto;
    padding: 50px 10px 34px 10px; }
    .contact .wrap header i {
      background-position: -350px -20px;
      width: 45px;
      height: 48px; }
    .contact .wrap header h3 {
      font-size: 2.5rem; }
    .contact .wrap form .col {
      width: 50%;
      float: left; }
      .contact .wrap form .col:nth-of-type(2n + 2) {
        padding-left: 20px; }
    .contact .wrap form .selects {
      margin-top: 0;
      float: left;
      width: 100%; }
    .contact .wrap form button {
      margin: 55px auto 0 auto; }
    .contact .wrap form .textarea {
      float: left;
      width: 100%; }
    .contact .wrap form .input {
      font-size: 1rem; }
      .contact .wrap form .input input, .contact .wrap form .input textarea {
        font-size: 1rem; }
      .contact .wrap form .input.tickbox {
        float: left;
        width: 100%; }
        .contact .wrap form .input.tickbox input {
          border-bottom: 0; }
        .contact .wrap form .input.tickbox label {
          font-size: 0.875rem;
          width: auto;
          float: left; }
        .contact .wrap form .input.tickbox .reg-checkbox {
          width: 15px;
          height: 15px;
          background: transparent;
          border: 0;
          top: 3px;
          left: 0;
          margin-right: 20px; }
        .contact .wrap form .input.tickbox span {
          display: block;
          width: 15px;
          height: 15px;
          background-color: whitesmoke;
          border: 1px solid gray;
          float: right;
          pointer-events: none;
          margin-right: -23px; }
      .contact .wrap form .input.select {
        margin-top: 24px;
        float: left;
        width: 50%; }
        .contact .wrap form .input.select + .select {
          padding-left: 20px; }
        .contact .wrap form .input.select select {
          background-color: #eaeff1;
          border-radius: 4px;
          height: 40px;
          color: #2b5c70;
          text-transform: uppercase;
          font-weight: 700;
          font-size: 0.8125rem;
          padding-left: 15px; }

.basket .wrap {
  width: 700px;
  margin: 0 auto; }

.mainFoot .footCol {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 10px 0 0 0; }
  .mainFoot .footCol:first-of-type {
    padding: 40px 20px; }
  .mainFoot .footCol .socialBlock .content h4 {
    font-size: 0.875rem; }
  .mainFoot .footCol .socialBlock .content .social {
    margin-bottom: 16px; }
  .mainFoot .footCol .socialBlock .content a {
    font-size: 0.9375rem;
    display: block; }

.accountModal .window {
  top: 140px;
  max-height: 400px;
  width: 420px;
  padding: 30px 60px 46px 60px; }
  .accountModal .window h2 {
    font-size: 1.875rem; }
  .accountModal .window .login {
    min-height: 0;
    height: auto; }
    .accountModal .window .login .input {
      position: relative; }
      .accountModal .window .login .input:not(.checkbox) input, .accountModal .window .login .input:not(.checkbox) select {
        font-size: 1rem; }
      .accountModal .window .login .input:not(.checkbox) label {
        font-size: 1rem; }
      .accountModal .window .login .input + p {
        margin: 16px 0 0 0; }
.accountModal.addressModal .window {
  height: 650px;
  max-height: 650px; }
.accountModal.country .window {
  width: 420px;
  max-height: 60vh;
  margin-left: -190px; }
  .accountModal.country .window .selectors a {
    margin: 0 20px; }
    .accountModal.country .window .selectors a h4 {
      margin-top: 22px;
      font-size: 0.875rem; }
.accountModal.wide .window {
  width: 445px;
  margin-left: -222px; }

/*# sourceMappingURL=tablet.css.map */
