/* compiled by scssphp v0.6.2 on Fri, 20 Oct 2017 15:36:21 +1300 (1.7348s) */

body:before, body:after, .main-navigation:before, .main-navigation li ul:before, .sidebar .outline:after, .age-groups > div a:after, .footer-top .instruments:before, .contact input[type=radio] + label:before, .contact input[type=radio] + .error + label:before, .contact input[type=checkbox] + label:before, .column-1 .contact input[type=radio] + label:before, .column-1 .contact input[type=checkbox] + label:before, .slideshow:after, .slideshow figure:before, .slideshow .slick-slide:before, .slideshow .slick-arrows button:before, .responsive-slider > button:before {
  content: '';
  display: block;
  position: absolute; }

main > *:before, .contact:before, .search-results article:before, .search-results a:before, .slideshow:before, .gallery ul:before, .stockists:before, main > *:after, .contact:after, .search-results article:after, .search-results a:after, .slideshow:after, .gallery ul:after, .stockists:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  line-height: 0;
  visibility: hidden; }

* {
  box-sizing: border-box; }
/*** element styles ***/
body {
  background: #fff left top repeat-x;
  color: #666;
  font-family: "Arial";
  font-size: 1em;
  /* 16px */
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  line-height: 1.3;
  margin: 0;
  padding: 0; }
  body:before {
    top: 0;
    bottom: 50px;
    right: 1200px;
    right: calc(100% - (100% - 1200px) / 2);
    z-index: -1;
    width: 600px;
    background: transparent url('images/notes-green.png') right top no-repeat;
    background: linear-gradient(to left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.1) 20px, rgba(0, 0, 0, 0) 160px), transparent url('images/notes-green.png') right top no-repeat;
    position: fixed; }
  body:after {
    top: 0;
    bottom: 50px;
    left: calc(100% - (100% - 1200px) / 2);
    z-index: -1;
    width: 600px;
    background: transparent url('images/notes-blue.png') left top no-repeat;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.1) 20px, rgba(0, 0, 0, 0) 160px), transparent url('images/notes-blue.png') left top no-repeat;
    position: fixed; }

p, div, h1, h2, h3 {
  font-weight: normal;
  padding: 0;
  position: relative; }

div, h1, h2, h3 {
  margin: 0; }

h1, h2, h3, h4, h5, h6 {
  color: #231b10;
  font-family: "fira_sansmedium";
  font-weight: normal;
  margin: 0.5em 0; }

h1 {
  font-size: 2em; }

h2 {
  font-size: 1.5em; }

h3 {
  font-size: 1.25em; }

a {
  color: #1da0ea; }
  a:link, a:visited {
    text-decoration: underline; }
  a:hover, a:focus, a:active {
    color: #e0e31b; }
  a img {
    border: none; }

@media screen and (max-width: 1199px) {
    img {
      height: auto;
      max-width: 100%; } }

input:disabled, textarea:disabled {
  opacity: 0.5; }
/*** globally relevant styles ***/
.button {
  background: #042c8a;
  border: none;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 1.25em;
  line-height: 40px;
  margin: 12px 30px;
  padding: 10px;
  text-align: center;
  width: 220px;
  text-transform: uppercase;
  font-family: "fira_sanssemibold";
  transition: background 200ms linear;
  height: 60px;
  box-shadow: 2px 2px 5px #bf9f73; }
  .button:link, .button:visited {
    text-decoration: none; }
  .button:hover, .button:focus, .button:active {
    background: #1da0ea;
    color: #fff;
    transition: background 200ms linear; }
  @media screen and (max-width: 768px) {
  .button {
    margin: 0 auto; } }

.pagination {
  text-align: center; }
  .pagination > * {
    display: inline-block;
    padding: 0 10px;
    border-left: 1px solid #e0e31b;
    pause-after: medium; }
    .pagination > *:first-child {
      border-left: none; }
  .pagination .current {
    font-weight: bold; }

.struct {
  display: none; }

.even-spacing {
  display: flex;
  align-content: space-between; }
  .even-spacing > * {
    display: inline-block;
    flex-basis: -webkit-fill-available;
    flex-basis: -moz-available;
    flex-basis: fill;
    margin: 0 10px; }
  .even-spacing .button {
    width: 100%;
    margin: 0; }
  @media screen and (max-width: 1199px) {
  .even-spacing {
    flex-direction: column; } }
/* float clearing usually applied to <br /> sometimes div or span  */
.clear {
  clear: both;
  content: "";
  display: block;
  height: 1px;
  overflow: hidden;
  width: 99%; }
/*** section styles ***/
body > footer {
  margin: 0 auto;
  position: relative;
  width: 100%; }

.container {
  margin: 0 auto;
  width: 1200px;
  padding: 0 25px;
  background: #fff; }
  @media screen and (max-width: 1199px) {
  .container {
    padding: 0;
    width: auto; } }

body > header {
  position: relative;
  width: 1200px;
  z-index: 10; }
  body > header .logo {
    display: block; }
    @media screen and (max-width: 969px) {
  body > header .logo {
    position: relative;
    left: 0;
    top: 0;
    margin: 0 auto;
    padding-bottom: 10px; } }
  body > header .contacts {
    display: block;
    margin: 1em 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 25px;
    color: #231b10; }
    body > header .contacts li {
      display: inline-block; }
    body > header .contacts a {
      font-family: fira_sansbook; }
      body > header .contacts a:link, body > header .contacts a:visited {
        text-decoration: none;
        color: inherit; }
      body > header .contacts a:hover, body > header .contacts a:focus, body > header .contacts a:active {
        color: #1da0ea; }
      body > header .contacts a span {
        font-weight: bold;
        margin-right: 1em; }
  @media screen and (max-width: 1199px) {
  body > header {
    height: 290px;
    padding: 0;
    padding-bottom: 200px; }
    body > header > a[href="/Home/"] {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      text-align: center; }

    body > header .contacts {
      position: static;
      width: 100%;
      height: 90px;
      margin: 0;
      padding: 10px 20px;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1da0ea+0,e0e31b+100 */
      background: #1da0ea;
      /* Old browsers */
      background: -moz-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
      body > header .contacts li {
        margin-right: 2em; }
      body > header .contacts a {
        display: block;
        width: 70px;
        height: 70px;
        background: transparent url('') center center no-repeat;
        text-indent: -9999px; }
      body > header .contacts .phone a {
        background-image: url('images/icon-phone.png'); }
      body > header .contacts .email a {
        background-image: url('images/icon-mail.png'); } }

.main-navigation {
  position: absolute;
  bottom: 0;
  right: 25px;
  max-width: calc(100% - 409px - 100px);
  color: #231b10;
  padding: 0;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  width: 1200px;
  padding-bottom: 4px;
  font-family: "fira_sansbold";
  font-size: 1.125em;
  text-transform: uppercase; }
  @media screen and (max-width: 1199px) {
  .main-navigation {
    display: none; } }
  .main-navigation:before {
    right: 0;
    bottom: 0;
    left: 0;
    height: 4px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1da0ea+0,e0e31b+100 */
    background: #1da0ea;
    /* Old browsers */
    background: -moz-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
  @media screen and (max-width: 969px) {
  .main-navigation {
    width: 100%; } }
  .main-navigation ul {
    margin: 0;
    padding: 0; }
  .main-navigation li {
    background: transparent url('') left center no-repeat;
    display: inline-block;
    height: 2em;
    line-height: 2em;
    margin: 0;
    padding: 0; }
    .main-navigation li ul {
      background: #f7f7f7;
      display: block;
      height: 0;
      left: 0;
      margin: -4px 0 0;
      overflow: hidden;
      padding: 0;
      position: absolute;
      top: 100%;
      width: 100%;
      text-align: left;
      text-transform: none; }
      .main-navigation li ul:before {
        top: 0;
        right: 0;
        left: 0;
        height: 4px;
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1da0ea+0,e0e31b+100 */
        background: #1da0ea;
        /* Old browsers */
        background: -moz-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(left, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, rgba(29, 160, 234, 1) 0%, rgba(224, 227, 27, 1) 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
    .main-navigation li li {
      background-image: none;
      display: block;
      height: auto;
      line-height: 1em;
      margin: 0;
      position: relative;
      text-align: left;
      width: 100%; }
      .main-navigation li li a:link, .main-navigation li li a:visited {
        padding: 5px 0;
        width: 100%; }
        .main-navigation li li a:hover, .main-navigation li li a:focus, .main-navigation li li a:active {
          color: #1da0ea; }
  * + html .main-navigation > ul li {
    display: block;
    float: left; }
    .main-navigation > ul li:first-child {
      background-image: none; }
  .main-navigation a {
    color: inherit; }
    .main-navigation a:link, .main-navigation a:visited {
      display: inline-block;
      padding: 0 2em;
      text-decoration: none;
      color: inherit; }
  .main-navigation > ul > li > a:hover, .main-navigation > ul > li > a:focus, .main-navigation > ul > li > a:active {
    padding-top: 40px;
    background: transparent url('images/note-green.png') center top no-repeat; }
  .main-navigation .sel .sel > a {
    color: #1da0ea; }
    .main-navigation .sel .sel > a:hover, .main-navigation .sel .sel > a:focus, .main-navigation .sel .sel > a:active {
      color: #e0e31b; }
  .main-navigation li:hover ul, .main-navigation a:focus + ul {
    height: auto;
    padding: 2em 0; }

main {
  display: block;
  z-index: 5;
  min-height: 575px;
  min-height: 45vh; }

.content {
  padding: 20px 0;
  background: #fff; }
  @media screen and (max-width: 1199px) {
  .content {
    padding: 10px; } }
  .content h1 {
    text-align: center;
    color: #1da0ea; }
    .content h1 span {
      color: #e0e31b; }
  .content p {
    font-family: "fira_sansbook"; }
    .content p em {
      color: #e0e31b; }
  .content .text-panel {
    width: 70%;
    float: right; }
    @media screen and (max-width: 768px) {
  .content .text-panel {
    float: none;
    width: 100%; } }
    .content .text-panel h1 {
      text-align: left; }
      @media screen and (max-width: 768px) {
  .content .text-panel h1 {
    text-align: center; } }
  .content table {
    background-color: #fff;
    color: #231b10;
    border-collapse: collapse; }
    .content table td, .content table th {
      text-align: center;
      border: 1px solid black;
      padding: 10px; }
      @media screen and (max-width: 969px) {
  .content table td, .content table th {
    padding: 5px; } }
    .content table th {
      background-color: #e0e31b;
      font-family: "fira_sansmedium";
      font-size: 1.125em; }
      @media screen and (max-width: 459px) {
  .content table th {
    font-size: 0.75em; } }
    .content table td {
      font-family: "fira_sansregular";
      font-size: 1em; }
      @media screen and (max-width: 459px) {
  .content table td {
    font-size: 0.75em; } }

.homepage-content {
  padding: 20px;
  color: #fff;
  background: #1da0ea; }
  .homepage-content h1 {
    color: inherit;
    font-size: 1.25em;
    text-align: left; }

.hasSidebar {
  display: block;
  float: right; }

.sidebar {
  display: block;
  float: left;
  width: 25%;
  text-align: center;
  color: #fff;
  font-family: "fira_sansmedium";
  margin-right: 20px; }
  .sidebar img {
    display: block;
    margin: 0 auto; }
  .sidebar a.timetable:link, .sidebar a.timetable:visited {
    display: block;
    margin: 0 auto 1em;
    padding-bottom: 127px;
    width: 117px;
    background: transparent url('images/icon-timetable.png') left bottom no-repeat;
    color: #042c8a;
    font-size: 1.375em;
    text-transform: uppercase;
    text-decoration: none; }
    .sidebar a.timetable:hover, .sidebar a.timetable:focus, .sidebar a.timetable:active {
      background-position: right bottom;
      color: #1da0ea;
      text-decoration: underline; }
    .sidebar a.timetable div {
      padding-right: 20px; }
  .sidebar a.info:link, .sidebar a.info:visited {
    display: block;
    margin: 0 auto 1em;
    padding-bottom: 98px;
    width: 88px;
    background: transparent url('images/icon-info.png') left bottom no-repeat;
    color: #042c8a;
    font-size: 1.375em;
    text-transform: uppercase;
    text-decoration: none; }
    .sidebar a.info:hover, .sidebar a.info:focus, .sidebar a.info:active {
      background-position: right bottom;
      color: #1da0ea;
      text-decoration: underline; }
    .sidebar a.info div {
      padding-right: 20px; }
  @media screen and (max-width: 768px) {
  .sidebar {
    width: 100%;
    float: none; } }
  .sidebar .outline {
    position: relative; }
    .sidebar .outline img {
      display: block;
      border-radius: 50%;
      border: 4px solid #1da0ea;
      -webkit-box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.5);
      box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.5); }
    .sidebar .outline ~ a {
      display: block;
      margin: 10px auto; }
    .sidebar .outline:after {
      content: attr(title);
      top: 160px;
      right: 0;
      left: 0;
      height: 64px;
      background: rgba(255, 255, 255, 0.75);
      color: #231b10;
      font-size: 1.75em;
      font-weight: bold;
      line-height: 64px;
      text-align: center;
      white-space: nowrap; }

.age-groups {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between; }
  .age-groups > div {
    display: inline-block;
    width: 260px;
    flex-basis: 260px;
    margin: 1em 0; }
    .age-groups > div a:link, .age-groups > div a:visited {
      display: block;
      position: relative;
      width: 100%;
      min-height: 260px;
      border-radius: 50%;
      border: 4px solid #fff;
      -webkit-box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.5);
      box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.5);
      overflow: hidden; }
      .age-groups > div a:hover, .age-groups > div a:focus, .age-groups > div a:active {
        border-color: #1da0ea; }
      .age-groups > div a:after {
        content: attr(title);
        right: 0;
        bottom: 25px;
        left: 0;
        height: 64px;
        background: rgba(255, 255, 255, 0.75);
        color: #231b10;
        font-size: 1.75em;
        font-weight: bold;
        line-height: 64px;
        text-align: center;
        white-space: nowrap; }
    .age-groups > div img {
      display: block;
      border-radius: 50%;
      width: 100%;
      height: auto; }
  .age-groups h3 {
    text-align: center; }
  @media screen and (max-width: 1199px) {
  .age-groups {
    justify-content: space-around; } }

footer[role="banner"] {
  z-index: 0;
  font-family: "fira_sansbook"; }
  footer[role="banner"] a:link, footer[role="banner"] a:visited {
    color: inherit; }
    .footer-top {
      background: #f1f1f1;
      padding: 0 0 30px 0; }
  .footer-top .instruments {
    background: transparent;
    text-align: center; }
    .footer-top .instruments:before {
      content: '';
      top: 0;
      left: 0;
      right: 0;
      height: 20%;
      width: 100%;
      background: transparent url('images/page-shadow.png') top center no-repeat;
      background-size: contain;
      visibility: visible;
      z-index: 10; }
    .footer-top .instruments .instrument-tagline {
      font-family: "playfair_displayitalic";
      font-size: 1.5em;
      color: #231b10;
      padding: 20px 0; }
    .footer-top .instruments .instrument-block {
      display: inline-block;
      margin: 0 25px;
      text-transform: uppercase;
      font-family: "fira_sansmedium";
      color: #372a19;
      font-size: 1.125em; }
      .footer-top .instruments .instrument-block a {
        text-decoration: none;
        text-align: center; }
        .footer-top .instruments .instrument-block a .first-image {
          display: block;
          margin: 0 auto; }
        .footer-top .instruments .instrument-block a .second-image {
          display: none;
          margin: 0 auto; }
        .footer-top .instruments .instrument-block a:hover, .footer-top .instruments .instrument-block a:focus, .footer-top .instruments .instrument-block a:active {
          color: #1da0ea; }
          .footer-top .instruments .instrument-block a:hover .first-image, .footer-top .instruments .instrument-block a:focus .first-image, .footer-top .instruments .instrument-block a:active .first-image {
            display: none; }
          .footer-top .instruments .instrument-block a:hover .second-image, .footer-top .instruments .instrument-block a:focus .second-image, .footer-top .instruments .instrument-block a:active .second-image {
            display: block; }
        .footer-top .instruments .instrument-block a img {
          display: inline-block; }

.site-footer {
  background: #fff center top no-repeat;
  padding: 10px 0;
  position: relative;
  text-align: left;
  color: #231b10; }
  @media screen and (max-width: 1199px) {
  .site-footer {
    text-align: center; } }
  .site-footer .container {
    display: flex;
    flex-flow: nowrap;
    justify-content: space-between; }
    .site-footer .container > section {
      display: inline-block;
      width: 33%; }
    @media screen and (max-width: 1199px) {
  .site-footer .container {
    flex-direction: column; }
    .site-footer .container > section {
      display: block;
      float: none;
      position: static;
      width: 100%;
      text-align: center; }
      .site-footer .container > section:first-child {
        order: -2; }
    .site-footer .container .ccmc {
      order: -1; } }
  .site-footer h4 {
    margin: 0;
    padding: 0; }
  .site-footer .contacts {
    margin: 0;
    padding: 0;
    display: block;
    color: #231b10; }
    .site-footer .contacts li {
      display: inline-block; }
    .site-footer .contacts .address {
      width: 100%;
      font-weight: bold; }
    .site-footer .contacts .phone:before {
      content: 'P. '; }
    .site-footer .contacts .email:before {
      content: 'E. '; }
    .site-footer .contacts a {
      font-family: fira_sansbook; }
      .site-footer .contacts a:link, .site-footer .contacts a:visited {
        color: inherit; }
      .site-footer .contacts a:hover, .site-footer .contacts a:focus, .site-footer .contacts a:active {
        color: #1da0ea; }
    @media screen and (max-width: 1199px) {
  .site-footer .contacts li {
    display: block;
    padding: 0.5em; }
    .site-footer .contacts .phone:before {
      content: 'Phone: '; }
    .site-footer .contacts .email:before {
      content: 'Email: '; } }
  .site-footer img {
    display: block; }
    @media screen and (max-width: 1199px) {
  .site-footer img {
    margin: 0 auto; } }
  .site-footer .social-media {
    text-align: center; }
    .site-footer .social-media h4 {
      padding: 20px 0; }
    .site-footer .social-media ul {
      display: block;
      margin: 0;
      padding: 0; }
    .site-footer .social-media li {
      display: inline-block;
      margin: 0 0.5em;
      padding: 0; }
    .site-footer .social-media a:link, .site-footer .social-media a:visited {
      display: block;
      width: 45px;
      height: 45px;
      overflow: hidden;
      background-position: center center;
      background-repeat: no-repeat;
      text-decoration: none;
      text-indent: -9999px; }
      .site-footer .social-media a:hover, .site-footer .social-media a:focus, .site-footer .social-media a:active {
        opacity: 0.75; }
    .site-footer .social-media .youtube a {
      background-image: url('images/icon-youtube.png'); }
    .site-footer .social-media .instagram a {
      background-image: url('images/icon-instagram.png'); }
    .site-footer .social-media .facebook a {
      background-image: url('images/icon-facebook.png'); }

.sub-footer {
  position: relative;
  color: #fff;
  font-size: 1.125em;
  background-color: #231b10;
  height: 90px;
  padding-top: 1em; }
  .sub-footer .container {
    background: none; }
    .sub-footer .container > * {
      position: absolute; }
  .sub-footer .copyright {
    left: 5px; }
  .sub-footer .attribution {
    right: 5px; }
    .sub-footer .attribution a {
      color: inherit; }
      .sub-footer .attribution a:link, .sub-footer .attribution a:visited {
        text-decoration: none; }
      .sub-footer .attribution a:hover, .sub-footer .attribution a:focus, .sub-footer .attribution a:active {
        text-decoration: underline; }
  .sub-footer .reserved {
    position: static;
    font-size: 0.75em;
    text-align: center;
    margin-bottom: 4px; }
  @media screen and (max-width: 1199px) {
  .sub-footer {
    height: auto;
    padding: 1em;
    text-align: center;
    font-size: 1em; }
    .sub-footer .container > * {
      position: static;
      width: 100%;
      padding: 0.5em 0; } }
/* default form styling
 * - apply .contact class to any form
 * - note .button styling at top of file
 */
.column-1 {
  max-width: 585px;
  margin: 0 auto;
  padding: 20px;
  background: #c5d726; }

form.contact {
  padding-top: 20px; }

.contact {
  text-align: left;
  font-family: "fira_sansbook";
  font-size: 0.875em;
  /* captcha */ }
  @media screen and (max-width: 1199px) {
  .contact {
    padding: 20px 10px;
    box-sizing: border-box; } }
  .contact .two-column-format, .contact .bottom-panel {
    clear: both;
    padding-bottom: 20px; }
    .contact .two-column-format .left-column, .contact .bottom-panel .left-column {
      float: left;
      padding-left: 40px; }
    .contact .two-column-format .right-column, .contact .bottom-panel .right-column {
      float: right; }
    .contact .two-column-format .left-column, .contact .bottom-panel .left-column, .contact .two-column-format .right-column, .contact .bottom-panel .right-column {
      width: 49.5%; }
      @media screen and (max-width: 1199px) {
  .contact .two-column-format .left-column, .contact .bottom-panel .left-column, .contact .two-column-format .right-column, .contact .bottom-panel .right-column {
    width: 100%;
    float: none;
    padding: 0; } }
    .contact .two-column-format .terms, .contact .bottom-panel .terms {
      margin: 1em 0 0.5em; }
    @media screen and (max-width: 1199px) {
  .contact .two-column-format, .contact .bottom-panel {
    width: 100%;
    float: none;
    padding-bottom: 10px; } }
  .contact .bottom-panel {
    padding: 0.75em 0 0.5em;
    text-align: center; }
    .contact .bottom-panel textarea, .contact .bottom-panel input[type=text] {
      display: block;
      max-width: 415px;
      margin: 0 auto; }
    @media screen and (max-width: 1199px) {
  .contact .bottom-panel {
    margin: 0;
    text-align: left; } }
  .contact p {
    line-height: 1.75em; }
    .contact p.postcode, .contact p.history, .contact p.code, .contact p.terms, .contact p.street-no, .contact p.date-of-birth {
      text-align: left; }
  .contact .promo-code {
    text-align: right; }
  @media screen and (max-width: 1199px) {
  .contact .promo-code {
    text-align: left; }
    .contact .action {
      text-align: center; } }
  .contact label {
    display: block; }
    .contact label[for] {
      height: 1px;
      overflow: hidden; }
    .contact label.error {
      height: auto;
      color: #fd1a00;
      font-size: 0.875em;
      margin-left: 10px;
      width: auto; }
    .contact label.visible {
      height: auto; }
    .contact label.inline {
      display: inline-block;
      vertical-align: middle; }
    .contact label[for="Street-Name"] {
      display: inline-block;
      width: 1px; }
    .contact label + a {
      vertical-align: middle; }
  .contact input {
    vertical-align: middle;
    /* basic code for using customised radio button graphics
     * - checkboxes can be handled similarly
     * - fallback to normal in <= IE8
     */ }
    .contact input[type=text], .contact input[type=password], .contact input[type=tel], .contact input[type=email] {
      font-family: inherit;
      font-size: 1em;
      width: 99%;
      max-width: 415px;
      padding: 4px;
      border: 1px solid #042c8a;
      height: 36px;
      background: #f2f2f2;
      color: #231b10; }
      @media screen and (max-width: 1199px) {
  .contact input[type=text], .contact input[type=password], .contact input[type=tel], .contact input[type=email] {
    width: 100%; } }
    .contact input:focus {
      background: #fff; }
    .contact input.street-no, .contact input.postal-no, .contact input.class-code, .contact input.location {
      margin-left: 16px;
      display: inline-block; }
    .contact input.street-no {
      width: 7%; }
      @media screen and (max-width: 1199px) {
  .contact input.street-no {
    width: 21%; } }
    .contact input.street-name, .contact input[name="Date-of-Birth"], .contact input[name="Promo-Code"], .contact input.class-code, .contact input.location {
      width: 48%;
      margin-left: 12px; }
    @media screen and (max-width: 1199px) {
    .contact input.street-name, .contact input.class-code, .contact input.location {
      width: 100%;
      margin-left: 0;
      margin-top: 10px; } }
    .contact input.postal-no {
      width: 25%; }
      @media screen and (max-width: 1199px) {
  .contact input.postal-no {
    width: 75%; } }
    .contact input[type=password], .contact input.password {
      width: 20%; }
    .contact input[type=radio], .contact input[type="checkbox"] {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0.5em; }
      .contact input[type=radio] + label, .contact input[type="checkbox"] + label, .contact input[type=radio] + .error + label, .contact input[type="checkbox"] + .error + label {
        position: relative;
        width: auto;
        cursor: pointer; }
        .contact input[type=radio] + label:before, .contact input[type="checkbox"] + label:before, .contact input[type=radio] + .error + label:before, .contact input[type="checkbox"] + .error + label:before {
          box-sizing: border-box;
          background: #ccc;
          border: 5px solid #ccc; }
    .contact input[type=radio] + label, .contact input[type=radio] + .error + label {
      left: -2em;
      padding-left: 2.5em;
      margin-right: -1.5em; }
      .contact input[type=radio] + label:before, .contact input[type=radio] + .error + label:before {
        border-radius: 50%;
        height: 1.5em;
        width: 1.5em;
        top: 0.125em;
        left: 0.5em; }
      .contact input[type=radio]:checked + label:before, .contact input[type=radio]:checked + .error + label:before {
        background: #231b10; }
      .contact input[type=radio] + label.error {
        position: absolute;
        top: 100%;
        left: 0;
        padding: 0;
        margin: 0; }
      .contact input[type=radio] + label.error:before {
        display: none; }
    .contact input[type=checkbox] + label {
      left: -2em;
      padding-left: 2.5em;
      margin-right: -1.5em; }
      .contact input[type=checkbox] + label:before {
        border-radius: 0;
        height: 1.5em;
        width: 1.5em;
        top: 0.125em;
        left: 0.5em; }
      .contact input[type=checkbox]:checked + label:before {
        background: #231b10; }
  .contact select {
    vertical-align: middle;
    font-family: inherit;
    font-size: 1em;
    width: 99%;
    max-width: 415px;
    padding: 4px;
    border: 1px solid #042c8a;
    height: 36px;
    background: #f2f2f2;
    color: #231b10; }
    @media screen and (max-width: 1199px) {
  .contact select {
    width: 100%; } }
    .contact select:focus {
      background: #fff; }
    .contact select.class-code, .contact select.location {
      width: 48%;
      margin-left: 12px;
      display: inline-block; }
      @media screen and (max-width: 1199px) {
  .contact select.class-code, .contact select.location {
    width: 100%;
    margin-left: 0;
    margin-top: 10px; } }
  .contact .auth + input {
    width: 20%; }
  .contact textarea {
    font-family: inherit;
    font-size: 1em;
    height: 5em;
    width: 99%;
    max-width: 415px;
    background: #f2f2f2;
    color: #231b10;
    border: 1px solid #042c8a;
    padding: 4px; }
    .contact textarea:focus {
      background: #fff; }
    @media screen and (max-width: 1199px) {
  .contact textarea {
    width: 100%; } }
  .contact fieldset {
    border: none;
    margin: 0;
    padding: 0; }
  .contact legend {
    display: block;
    max-width: 415px;
    width: 100%;
    font-style: italic; }

.column-1 {
  max-width: 585px;
  margin: 0 auto;
  padding: 20px;
  background: #c5d726; }
  .column-1 .contact {
    font-size: 1em;
    padding: 0;
    /* captcha */ }
    .column-1 .contact p {
      line-height: 1.75em; }
    .column-1 .contact label {
      display: block; }
      .column-1 .contact label[for] {
        height: auto; }
    .column-1 .contact .option-set > * {
      display: inline-block;
      width: auto;
      vertical-align: top; }
      .column-1 .contact .option-set > *.label {
        margin-right: 1em; }
      .column-1 .contact .option-set > * label {
        display: inline-block;
        vertical-align: top;
        margin-right: 1em; }
    .column-1 .contact input {
      vertical-align: middle;
      /* basic code for using customised radio button graphics
       * - checkboxes can be handled similarly
       * - fallback to normal in <= IE8
       */ }
      .column-1 .contact input[type=text], .column-1 .contact input[type=password], .column-1 .contact input[type=tel], .column-1 .contact input[type=email] {
        font-family: inherit;
        font-size: 1em;
        width: 99%;
        max-width: none;
        padding: 4px;
        border: none;
        height: 36px;
        background: #fff;
        color: #231b10; }
      .column-1 .contact input[type=radio], .column-1 .contact input[type="checkbox"] {
        display: inline-block;
        vertical-align: middle;
        margin: 0 0.5em; }
      .column-1 .contact input[type=radio] + label, .column-1 .contact input[type="checkbox"] + label {
        position: relative;
        width: auto;
        cursor: pointer; }
      .column-1 .contact input[type=radio] + label:before, .column-1 .contact input[type="checkbox"] + label:before {
        box-sizing: border-box;
        background: #c5d726;
        border: 1px solid #231b10; }
      .column-1 .contact input[type=radio] + label {
        left: -2em;
        padding-left: 2em;
        margin-right: -1.5em; }
      .column-1 .contact input[type=radio] + label:before {
        border-radius: 50%;
        height: 1.125em;
        width: 1.125em;
        top: 0.125em;
        left: 0.375em; }
      .column-1 .contact input[type=radio]:checked + label:before {
        background: #fff; }
      .column-1 .contact input[type=checkbox] + label {
        left: -2em;
        padding-left: 2em;
        margin-right: -1.5em; }
      .column-1 .contact input[type=checkbox] + label:before {
        border-radius: 0;
        height: 1.125em;
        width: 1.125em;
        top: 0.125em;
        left: 0.375em; }
      .column-1 .contact input[type=checkbox]:checked + label:before {
        background: #fff; }
    .column-1 .contact select {
      vertical-align: middle;
      font-family: inherit;
      font-size: 1em;
      width: 99%;
      max-width: none;
      padding: 4px;
      border: none;
      height: 36px;
      background: #fff;
      color: #231b10; }
      @media screen and (max-width: 1199px) {
  .column-1 .contact select {
    width: 100%; } }
    .column-1 .contact .auth + input {
      width: 20%; }
    .column-1 .contact textarea {
      font-family: inherit;
      font-size: 1em;
      height: 10em;
      width: 99%;
      max-width: none;
      background: #fff;
      color: #231b10;
      border: none;
      padding: 4px; }
      @media screen and (max-width: 1199px) {
  .column-1 .contact textarea {
    width: 100%; } }
    .column-1 .contact .action {
      text-align: center; }

img.auth {
  vertical-align: middle; }

@media screen and (max-width: 1199px) {
    input[type=submit] {
      -ms-appearance: none;
      -moz-appearance: none;
      -o-appearance: none;
      -webkit-appearance: none;
      appearance: none; } }
/* tables */
.courses {
  width: 100%; }

.control_panel {
  width: 90%;
  border: none;
  margin: 10px auto;
  padding: 0;
  border-bottom: 1px dashed #666;
  border-collapse: collapse;
  line-height: 20px;
  text-align: left; }
  .control_panel tr {
    background: #ccc;
    border-bottom: 8px solid #fff; }
    .control_panel tr:nth-child(2n) {
      background: #fff; }
  .control_panel thead tr {
    background: #fff; }
  .control_panel th {
    vertical-align: top; }
    .control_panel th.control {
      width: 70px; }
  .control_panel th:first-child, .control_panel td:first-child {
    padding-left: 20px; }
  .control_panel th:last-child, .control_panel td:last-child {
    padding-right: 20px; }

.users th:first-child {
  width: 20%; }
  .users th:last-child {
    width: 40%; }
/* search results */
.search-results article {
  border-bottom: 1px solid #d9d9d7; }
  .search-results h3 {
    margin: 0; }
  .search-results p {
    line-height: initial; }
  .search-results img {
    display: block;
    float: left;
    height: auto;
    margin: 0 0.5em 0.5em 0;
    max-width: 150px; }
  .search-results a {
    display: block;
    padding: 0.5em 0;
    color: inherit; }
    .search-results a:hover, .search-results a:focus, .search-results a:active {
      text-decoration: none; }
      .search-results a:hover h3, .search-results a:focus h3, .search-results a:active h3 {
        color: #231b10;
        text-decoration: underline; }

.sidebar.search-results img {
  float: none;
  margin: 0.5em 0; }
/* jQueryUI overrides */
.ui-widget {
  font-family: inherit;
  font-size: 1em; }

.ui-helper-reset {
  font-size: 1em; }

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
  background: #1da0ea;
  border-color: #fff;
  border-radius: 0;
  color: #fff; }
  .ui-state-default a:link, .ui-widget-content .ui-state-default a:link, .ui-widget-header .ui-state-default a:link, .ui-state-default a:visited, .ui-widget-content .ui-state-default a:visited, .ui-widget-header .ui-state-default a:visited {
    color: inherit;
    text-decoration: none; }

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover {
  background: #fff;
  border-color: #e0e31b;
  color: #666; }
  .ui-state-hover a:link, .ui-widget-content .ui-state-hover a:link, .ui-widget-header .ui-state-hover a:link, .ui-state-hover a:visited, .ui-widget-content .ui-state-hover a:visited, .ui-widget-header .ui-state-hover a:visited {
    text-decoration: underline; }

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
  background: #fff;
  border-color: #e0e31b;
  color: #666; }
  .ui-state-active a:link, .ui-widget-content .ui-state-active a:link, .ui-widget-header .ui-state-active a:link, .ui-state-active a:visited, .ui-widget-content .ui-state-active a:visited, .ui-widget-header .ui-state-active a:visited {
    text-decoration: none; }

.ui-accordion-content {
  border-radius: 0;
  font-size: 0.875em;
  margin-bottom: 10px; }
  .ui-accordion-content + .ui-accordion-header {
    margin-top: 10px; }

.ui-accordion-header {
  font-size: 0.875em; }

.ui-tabs .ui-tabs-nav li {
  border-width: 0; }

.ui-state-active a:link, .ui-state-active a:visited {
  color: inherit; }

.slideshow {
  position: relative;
  z-index: 7;
  height: 422px;
  max-height: 422px;
  margin-bottom: 40px; }
  .slideshow:after {
    content: '';
    top: 100%;
    left: 0;
    right: 0;
    height: 20%;
    width: 100%;
    background: transparent url('images/slideshow-shadow.png') top center no-repeat;
    background-size: contain;
    visibility: visible; }
  .slideshow .container {
    padding: 0; }
  .slideshow figure, .slideshow .slick-slide {
    position: relative;
    height: 422px;
    max-height: 422px;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
    background-position: center bottom;
    background-size: cover;
    text-align: left;
    display: flex;
    flex-direction: row; }
    .slideshow figure:before, .slideshow .slick-slide:before {
      top: 0;
      right: 2px;
      bottom: 0;
      left: 0;
      z-index: -1;
      background: #1da0ea; }
    .slideshow figure > *, .slideshow .slick-slide > * {
      display: block;
      width: 49%;
      vertical-align: top; }
    .slideshow figure figcaption, .slideshow .slick-slide figcaption {
      float: left;
      padding: 40px 20px;
      width: 50px;
      width: calc(99.9% - (100% * (0.64348)));
      background: #1da0ea;
      color: #fff; }
      .slideshow figure figcaption > *, .slideshow .slick-slide figcaption > * {
        color: inherit;
        margin: 0;
        padding: 0; }
    .slideshow figure img, .slideshow .slick-slide img {
      float: right;
      width: 740px;
      width: calc(100% * (0.64348));
      height: auto; }
  .slideshow svg {
    width: 80%;
    height: 80%; }
    @media screen and (max-width: 459px) {
  .slideshow svg {
    width: 70%;
    height: 70%; } }
  .slideshow .slick-slide .bw {
    opacity: 0; }
    .slideshow .slick-slide .color {
      opacity: 1; }
    .slideshow .slick-arrows button {
      /*
       @include below(601px)
       {
       display: none !important;
       }
       */
      position: absolute;
      overflow: hidden;
      top: 40%;
      z-index: 100;
      height: 60px;
      width: 60px;
      margin-top: -30px;
      border: none;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0);
      cursor: pointer;
      text-indent: -9999px; }
    .slideshow .slick-arrows button:before {
      top: 10px;
      height: 18px;
      width: 18px;
      border: 10px solid transparent;
      border-top-color: #372a19;
      border-left-color: #372a19; }
    .slideshow .slick-arrows button.slick-prev {
      left: 0;
      left: -5vw; }
      @media screen and (max-width: 1399px) {
  .slideshow .slick-arrows button.slick-prev {
    left: 10px; } }
      .slideshow .slick-arrows button.slick-prev:before {
        left: 24px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg); }
    .slideshow .slick-arrows button.slick-next {
      right: 0;
      right: -5vw; }
      @media screen and (max-width: 1399px) {
  .slideshow .slick-arrows button.slick-next {
    right: 10px; } }
      .slideshow .slick-arrows button.slick-next:before {
        right: 24px;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg); }
  .slideshow .slick-dots {
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 8;
    padding: 0;
    margin: 10px 0 10px -60px;
    text-align: center; }
    .slideshow .slick-dots li {
      display: table-cell; }
    .slideshow .slick-dots button {
      display: block;
      height: 40px;
      width: 30px;
      border: none;
      background: rgba(0, 0, 0, 0) url('images/note-black.png') center center no-repeat;
      cursor: pointer;
      text-indent: -9999px; }
    .slideshow .slick-dots .slick-active button {
      background-image: url('images/note-blue.png'); }
  @media screen and (max-width: 1199px) {
  .slideshow {
    height: auto;
    max-height: none; }
    .slideshow figure {
      height: auto;
      max-height: none; } }
  @media screen and (max-width: 739px) {
  .slideshow {
    margin-bottom: 0;
    background: #1da0ea; }
    .slideshow:after {
      display: none; }

    .slideshow figure, .slideshow .slick-slide {
      height: auto;
      max-height: none;
      flex-direction: column-reverse; }
      .slideshow figure > *, .slideshow .slick-slide > *, .slideshow figure figcaption, .slideshow .slick-slide figcaption, .slideshow figure img, .slideshow .slick-slide img {
        width: 100%; }
      .slideshow figure figcaption, .slideshow .slick-slide figcaption {
        padding: 10px; }

    .slideshow .slick-list {
      height: auto !important; }

    .slideshow .slick-dots {
      display: none !important; } }

.responsive-slider {
  /*
   @include below(601px)
   {
   display: none !important;
   }
   */ }
  .responsive-slider > button {
    position: absolute;
    overflow: hidden;
    top: 40%;
    z-index: 100;
    height: 60px;
    width: 60px;
    margin-top: -30px;
    border: none;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0);
    cursor: pointer;
    text-indent: -9999px; }
    .responsive-slider > button:before {
      top: 10px;
      height: 18px;
      width: 18px;
      border: 10px solid transparent;
      border-top-color: #372a19;
      border-left-color: #372a19; }
    .responsive-slider > button.slick-prev {
      left: 0;
      left: -5vw; }
      @media screen and (max-width: 1399px) {
  .responsive-slider > button.slick-prev {
    left: 10px; } }
      .responsive-slider > button.slick-prev:before {
        left: 24px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg); }
    .responsive-slider > button.slick-next {
      right: 0;
      right: -5vw; }
      @media screen and (max-width: 1399px) {
  .responsive-slider > button.slick-next {
    right: 10px; } }
      .responsive-slider > button.slick-next:before {
        right: 24px;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg); }
/* old gallery module */
.gallery ul {
  margin: 0;
  padding: 0; }
  .gallery li {
    display: block;
    float: left;
    height: 0;
    margin-bottom: 1%;
    margin-right: 1%;
    overflow: hidden;
    padding-bottom: 24%;
    position: relative;
    width: 24%; }
    .gallery li:nth-child(1n) {
      padding-bottom: 24.25%;
      width: 24.25%; }
    .gallery li:nth-child(4n) {
      margin-right: 0; }
    .gallery li a {
      display: block; }
      .gallery li a:before {
        box-sizing: border-box;
        background: rgba(35, 27, 16, 0.5);
        bottom: 0;
        color: #fff;
        content: attr(title);
        left: 0;
        opacity: 1;
        padding: 20px;
        position: absolute;
        transition: opacity 0.25s;
        z-index: 5;
        width: 100%; }
      .gallery li a[title=""]:before {
        display: none; }
      .gallery li a:after {
        background: rgba(35, 27, 16, 0.5) url(/resources/template/images/gallery-zoom.png) no-repeat center;
        content: "";
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.25s;
        width: 100%;
        z-index: 10; }
      .gallery li a:hover:before, .gallery li a:focus:before, .gallery li a:active:before {
        opacity: 0; }
      .gallery li a:hover:after, .gallery li a:focus:after, .gallery li a:active:after {
        opacity: 1; }
  .gallery img {
    display: block;
    left: 0;
    min-height: 100%;
    min-width: 100%;
    max-width: none;
    position: absolute;
    top: 0;
    width: auto; }

@supports (transform: translateX(-50%)) {
  .gallery img {
    margin-left: 50%;
    margin-top: 50%;
    transform: translateX(-50%) translateY(-50%); } }

@media screen and (min-width: 741px) {
    .mobileGallery {
      display: none;
      overflow: visible; } }
  .mobileGallery .slide {
    text-align: center; }
  .mobileGallery img {
    margin: 0 auto; }
/* blog */
.blog-summary > div {
  border-bottom: 1px solid #ccc;
  clear: both;
  margin-bottom: 1em;
  overflow: hidden;
  padding-bottom: 1em; }

.hasSidebar .blog-feature-image {
  display: table-cell; }
  .hasSidebar .blog-summary {
    display: table-cell;
    padding-left: 10px;
    vertical-align: top; }

.blog-feature-image img {
  border: 1px solid #ccc;
  border-radius: 5px;
  display: block;
  max-width: 100%; }

.blog-article .blog-feature {
  border: 1px solid #ccc;
  border-radius: 5px;
  display: block;
  margin: 0 auto 1em; }

.articleNav {
  height: 2em;
  width: 100%; }
  .articleNav .previous {
    float: right; }
    .articleNav .previous a:after {
      content: '>>';
      left: 101%;
      position: absolute;
      top: -0.0625em; }
  .articleNav .next {
    float: left; }
    .articleNav .next a:before {
      content: '<<';
      position: absolute;
      right: 101%;
      top: -0.0625em; }

.regionList {
  border-radius: 10px;
  box-shadow: 0 0 7px 7px rgba(0, 0, 0, 0.05);
  font-size: 15px;
  margin: auto;
  overflow: hidden;
  padding: 15px 10px;
  width: 696px; }
  .regionList li {
    display: block;
    float: left; }
    .regionList li a {
      background-color: #fff;
      border: 2px solid #fff;
      border-bottom-width: 1px;
      color: #666;
      display: block;
      padding: 10px;
      width: 150px; }
    .regionList li.sel a, .regionList li a:hover, .regionList li a:focus, .regionList li a:active {
      background-color: #e0e31b;
      color: #fff; }

.stockists {
  border-radius: 10px;
  margin: 80px auto 50px;
  position: relative;
  width: 716px; }
  .stockists h2 {
    left: 10px;
    position: absolute;
    top: -65px; }
  .stockists div {
    box-shadow: 0 0 7px 7px rgba(0, 0, 0, 0.05);
    float: left;
    height: 155px;
    margin: 2px;
    padding: 10px;
    position: relative;
    width: 155px; }
  .stockists h3 {
    font-size: 17px;
    margin: 0; }
  .stockists p {
    font-size: 14px;
    line-height: 19px;
    margin: 0; }
  .stockists .mapLink {
    background: url(map.png) left no-repeat;
    bottom: 10px;
    left: 10px;
    padding-left: 40px;
    padding-top: 15px;
    position: absolute; }
/** Profiles **/
.profiles .cboxElement p {
  display: none; }

.profile img {
  display: block;
  height: auto;
  width: 270px;
  margin: 0 auto; }
  .profile h3 {
    font-size: 1em;
    text-align: center; }
  .profiles .profile {
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    padding: 15px;
    width: 300px;
    margin-bottom: 15px; }
    .profiles .profile:hover h3 {
      text-decoration: underline; }

.content-block.SimpleProfile-ProfileBlock .profiles {
  padding: 0;
  text-align: justify;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between; }
  .content-block.SimpleProfile-ProfileBlock .profiles span {
    display: inline-block; }
  .content-block.SimpleProfile-ProfileBlock a {
    display: block;
    height: 96px;
    width: 96px;
    overflow: hidden;
    margin-bottom: 5px; }
  .content-block.SimpleProfile-ProfileBlock a:link, .content-block.SimpleProfile-ProfileBlock a:visited {
    opacity: 0.6; }
  .content-block.SimpleProfile-ProfileBlock a:hover, .content-block.SimpleProfile-ProfileBlock a:focus, .content-block.SimpleProfile-ProfileBlock a:active {
    opacity: 1; }
  .content-block.SimpleProfile-ProfileBlock img {
    width: 100%;
    height: auto; }
/** shopping cart (collapsible) **/
/*
 .cart-bg {
 display: block;
 margin: 0;
 padding: 40px 25px 40px;
 background: #f0f6f7 url('bg.jpg') left top repeat;
 }
 */
.cart_options {
  background: #fff;
  border: 1px solid #ccc;
  margin-bottom: 15px; }
  .cart_options h4 {
    background: #fff;
    border-bottom: 1px solid #ccc;
    font-size: 1em;
    font-weight: normal;
    margin: 0;
    padding: 10px; }
  .cart_options p {
    background: #fff;
    margin: 0;
    padding: 10px 30px; }

.cart table {
  border: none;
  border-collapse: collapse;
  text-align: center;
  width: 100%; }
  .cart thead {
    background: #fff;
    border: 1px solid #ccc; }
  .cart th {
    font-size: 0.875em;
    font-weight: normal;
    padding: 10px 5px; }
  .cart tbody {
    background: #fff;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    font-size: 0.875em; }
  .cart td {
    padding: 10px;
    vertical-align: middle; }
  @media screen and (max-width: 599px) {
    .cart td {
      display: block;
      max-width: calc(100% - 20px);
      text-align: center;
      width: 200px; } }
  .cart td.image a {
    background: #fff;
    border: 1px solid #e0e31b;
    border-radius: 3px;
    display: block;
    height: 105px;
    position: relative;
    width: 105px; }
    @media screen and (max-width: 599px) {
      .cart td.image a {
        display: inline-block; } }
    .cart td.image img {
      bottom: 0;
      display: block;
      height: auto;
      left: 0;
      margin: auto;
      max-height: 100px;
      max-width: 100px;
      position: absolute;
      right: 0;
      top: 0; }
  .cart td.name {
    font-size: 1.143em;
    text-align: left; }
    @media screen and (max-width: 599px) {
    .cart td.name {
      text-align: center; } }
  .cart td.quantity input {
    padding: 10px;
    text-align: center;
    width: 1em; }
  .cart td.total {
    color: #e0e31b;
    font-weight: bold; }
  @media screen and (max-width: 599px) {
      .cart td.remove:before {
        content: "Remove: "; } }
  @media screen and (max-width: 599px) {
      .cart td.quantity, .cart td.price, .cart td.total {
        display: inline;
        padding: 0; } }
  @media screen and (max-width: 599px) {
        .cart td.price:before {
          content: " x "; } }
    @media screen and (max-width: 599px) {
      .cart td.price:after {
        content: " = "; } }
  .cart tfoot {
    border-top: 1px solid #ccc; }
  .cart tfoot td:last-child {
    text-align: right; }
  .cart span.total {
    font-weight: bold; }
  .cart span.total.value {
    color: #e0e31b;
    font-size: 1.123em; }
  .cart h2 {
    font-family: Arial, serif;
    font-size: 1em; }
  .cart h3 {
    color: #e0e31b;
    font-family: Arial, serif;
    margin: 0; }
  .cart input.selectAddress ~ span {
    box-sizing: border-box;
    display: block;
    height: 1px;
    overflow: hidden;
    padding-top: 1px; }
  .cart input.selectAddress:checked ~ span {
    height: 1px;
    overflow: hidden; }
  .cart .login-form p {
    position: relative; }
  .cart .login-form label {
    left: 0;
    position: absolute;
    top: 0;
    z-index: -1; }
  .cart .login-form input[type=text], .cart .login-form input[type=password] {
    display: block;
    width: 100%; }
  .cart .warning {
    color: #fd1a00;
    font-size: 2em; }

form.checkout-options {
  float: left;
  width: 50%; }
  form.checkout-options + .checkout-options {
    float: right;
    width: 45%; }
  form.checkout-options .button {
    margin-bottom: 0;
    margin-top: 0; }

.button.poli {
  background: url(poli.png);
  border: 0;
  height: 70px;
  padding: 0;
  text-indent: -9999px;
  min-width: 110px;
  width: 110px; }

.poli-block {
  display: inline-block; }
/* print order */
.print-order table {
  width: 100%; }
  .print-order th, .print-order td {
    vertical-align: top; }
  .print-order thead tr:first-child > * {
    border-bottom: 1px solid #666;
    padding-bottom: 4px; }
  .print-order thead th:first-child {
    text-align: left; }
  .print-order .print-order tbody {
    padding: 4px 0; }
  .print-order .print-order tbody th {
    font-weight: normal;
    padding-bottom: 4px; }
  .print-order tfoot tr:first-child > * {
    border-top: 1px solid #666;
    padding-top: 4px; }
  .print-order tbody th, .print-order tfoot th {
    font-weight: normal;
    text-align: left; }
  .print-order td + td, .print-order tfoot td + td {
    text-align: center; }
    .print-order td + td + td, .print-order tfoot td + td + td {
      text-align: right; }
  .print-order th:last-child {
    text-align: right; }
/* customers/orders */
table.orders {
  width: 100%;
  border-collapse: collapse; }

.orders th, .orders td {
  padding: 4px;
  vertical-align: top; }
  .orders thead tr:first-child > * {
    border-bottom: 1px solid #666;
    text-indent: 0; }
  .orders tbody th {
    font-weight: normal;
    text-indent: 0; }
  .orders .ref {
    text-align: left; }
  .orders .date {
    width: 95px; }
  .orders .details {
    text-align: left;
    text-indent: 1em; }
  .orders .price {
    text-align: right; }
  .orders .link {
    text-align: right;
    width: 75px; }

#hoverCart {
  background-color: rgba(35, 27, 16, 0.8);
  background-color: #231b10\9;
  border-radius: 5px;
  color: #fff;
  max-height: 100%;
  max-height: calc(100% - 100px);
  overflow: auto;
  padding: 15px;
  position: fixed;
  right: 50px;
  top: 50px;
  width: 200px;
  z-index: 1000; }
  #hoverCart h1, #hoverCart h2, #hoverCart h3, #hoverCart h4, #hoverCart h5, #hoverCart h6 {
    border-bottom: 1px solid #fff;
    color: #fff;
    margin: 0 0 5px;
    padding-bottom: 3px; }
  #hoverCart a {
    color: #fff; }
  #hoverCart .items {
    border-bottom: 1px solid #fff;
    display: block;
    margin-bottom: 5px;
    overflow: hidden;
    padding-bottom: 5px; }
  #hoverCart .checkout {
    float: left; }
  #hoverCart .dismiss {
    display: block;
    float: right;
    text-align: right; }
  #hoverCart .row {
    border-bottom: 1px solid #fff;
    overflow: hidden;
    padding: 10px 0 5px;
    position: relative; }
  #hoverCart .row .right {
    font-family: "Courier New", Courier, monospace;
    text-align: right; }
  #hoverCart .remove {
    display: block;
    font-size: 12px; }
/** files **/
.file {
  margin-bottom: 10px;
  overflow: hidden;
  /* float clearing */
  padding: 15px;
  position: relative; }
  .file h2 {
    margin-bottom: 1em; }
  .file .button {
    position: absolute;
    right: 10px;
    top: 6px; }
/** customer panel **/
fieldset.addressForm {
  border: 1px solid #ccc;
  box-sizing: border-box;
  margin-top: 4px;
  overflow: hidden;
  padding: 5px; }

.addressForm label {
  display: block;
  float: left;
  margin-bottom: 4px;
  width: 49%; }
  .addressForm label:last-child {
    clear: both;
    float: none;
    width: 100%; }
  .addressForm label span {
    display: block;
    margin-bottom: 4px; }
  .addressForm input[type=text], .addressForm textarea {
    box-sizing: border-box;
    width: 96%; }
  .addressForm textarea {
    height: 70px; }
/* tinymce universal formatting */
#tinymce {
  background: #fff;
  color: #666;
  font-size: 1em;
  padding: 10px;
  text-align: left;
  width: 940px; }
  #tinymce p {
    padding: 0 0 1em; }
  #tinymce form {
    outline: 1px dotted #e0e31b; }
  #tinymce a {
    border-bottom: 1px dotted #1da0ea;
    color: #1da0ea;
    text-decoration: none; }

#mobileMenu {
  display: none;
  position: absolute;
  top: auto;
  right: 0;
  left: 0;
  bottom: auto;
  background-color: #fff;
  color: #231b10;
  font-family: "fira_sansbold";
  overflow: visible;
  padding: 0;
  text-align: left; }
  @media screen and (max-width: 1199px) {
  #mobileMenu {
    display: block;
    z-index: 5; } }
  #mobileMenu h2 {
    position: absolute;
    bottom: 100%;
    right: 0;
    margin: 0;
    padding: 10px 20px; }
  #mobileMenu h2 a {
    display: block;
    width: 70px;
    height: 70px;
    background: transparent url('images/icon-menu.png') center center no-repeat;
    text-indent: -9999px; }
  #mobileMenu ul {
    display: block;
    margin: 0;
    padding: 0;
    background: #fff;
    font-size: 1.125em; }
  #mobileMenu li {
    display: block; }
  #mobileMenu li.submenu {
    background: url(/resources/template/mobileMenuArrowRightBlack.png) right no-repeat; }
  #mobileMenu li.back {
    background: url(/resources/template/mobileMenuArrowLeftBlack.png) left no-repeat; }
  #mobileMenu li:hover a:after {
    content: ' ' url('images/note-blue.png');
    display: inline-block;
    vertical-align: middle;
    margin: -0.5em 0 -0.5em 1em; }
  #mobileMenu li.sel a:after, #mobileMenu li a.sel:after {
    content: ' ' url('images/note-green.png');
    display: inline-block;
    vertical-align: middle;
    margin: -0.5em 0 -0.5em 1em; }
  #mobileMenu a, #mobileMenu h2 {
    color: inherit; }
  #mobileMenu ul a {
    display: block;
    padding: 10px 30px;
    text-decoration: none; }
  #mobileMenu ul a:hover, #mobileMenu ul a:focus, #mobileMenu ul a:active {
    color: #1da0ea; }
