/* compiled by scssphp v0.6.2 on Wed, 01 Mar 2017 11:29:15 +1300 (0.9959s) */

main > *:before, .search-results article:before, .search-results a:before, .slideshow:before, .gallery ul:before, .stockists:before, main > *: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; }
/*** element styles ***/
body {
  background: #fff left top repeat-x;
  color: #2c2c2c;
  font-family: 'Open Sans', sans-serif;
  font-size: 1em;
  /* 16px */
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  line-height: 1.3;
  margin: 0;
  padding: 0; }

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: #0685ce;
  font-family: 'Roboto', sans-serif;
  font-weight: normal;
  margin: 0.5em 0;
  font-weight: 300; }

h1 {
  margin-top: 0;
  font-size: 42px;
  line-height: 42px;
  font-weight: 300;
  color: #2c2c2c; }
  h1 strong {
    font-weight: normal; }

h2 {
  font-size: 24px; }

h3 {
  font-size: 1.125em; }

a {
  color: #0685ce; }
  a:link, a:visited {
    text-decoration: none; }
  a:hover, a:focus, a:active {
    color: #ff9600;
    text-decoration: underline; }
  a img {
    border: none; }

img {
  height: auto;
  max-width: 100%; }

input:disabled, textarea:disabled {
  opacity: 0.5; }

#cboxNext, #cboxPrevious, #cboxCurrent, #cboxClose {
  font-size: 14px; }
/*** globally relevant styles ***/
.button {
  background: #0685ce;
  border: none;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 15px;
  line-height: 1.5em;
  margin: 12px 0;
  padding: 14px;
  min-width: 210px;
  box-sizing: border-box;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase; }
  .button:hover, .button:focus, .button:active {
    color: #fff;
    background: #005c95;
    text-decoration: none; }
  .button.yellow {
    background: #ff9600; }
    .button.yellow:hover {
      background: #005c95; }

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

.struct {
  display: none; }
/* 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 > [role=banner], main {
  margin: 0 auto;
  position: relative;
  width: 100%; }

.container {
  margin: 0 auto;
  width: 1170px; }
  @media screen and (max-width: 1239px) {
  .container {
    box-sizing: border-box;
    padding: 0 10px;
    width: auto; } }

body > header {
  background: #2c2c2c top left repeat-x;
  z-index: 10;
  color: #fff; }
  @media screen and (max-width: 1239px) {
  body > header {
    height: auto; } }
  body > header .site-header {
    background: #2c2c2c;
    height: 100px;
    position: relative;
    background: #005e9f;
    background: -moz-linear-gradient(top, #005e9f 0%, #0476bb 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #005e9f), color-stop(100%, #0476bb));
    background: -webkit-linear-gradient(top, #005e9f 0%, #0476bb 100%);
    background: -o-linear-gradient(top, #005e9f 0%, #0476bb 100%);
    background: -ms-linear-gradient(top, #005e9f 0%, #0476bb 100%);
    background: linear-gradient(top, #005e9f 0%, #0476bb 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF005E9F', endColorstr='#FF0476BB', GradientType=if($horizontal, 1, 0)); }

    body > header .site-header .container {
      height: 100%; }
  body > header .logo {
    display: block;
    left: 0px;
    position: absolute;
    top: 20px; }
    @media screen and (max-width: 1239px) {
  body > header .logo {
    left: 20px;
    top: 0;
    bottom: 0;
    margin: auto;
    max-width: 70%; } }
  body > header .gun-city {
    position: absolute;
    right: 0;
    top: 8px; }
    @media screen and (max-width: 1239px) {
  body > header .gun-city {
    display: none; } }
  body > header .tagline {
    display: block;
    max-width: 670px;
    width: 100%;
    height: 100%;
    line-height: 100px;
    margin: auto;
    font-family: 'Roboto', sans-serif;
    font-size: 27px;
    font-weight: 300;
    font-style: italic;
    text-align: center; }
    @media screen and (max-width: 1239px) {
  body > header .tagline {
    display: none; } }
  body > header .header-contact {
    height: 40px;
    line-height: 40px;
    text-align: right; }
    @media screen and (max-width: 1239px) {
  body > header .header-contact {
    text-align: center;
    font-size: 14px; } }
    @media screen and (max-width: 499px) {
  body > header .header-contact {
    height: auto;
    line-height: 23px;
    padding: 5px 0; } }
    body > header .header-contact span {
      height: 20px;
      padding: 0 10px;
      border-right: 1px solid #676767;
      font-family: 'Roboto', sans-serif;
      font-size: 15px; }
      body > header .header-contact span:last-child {
        border-right: 0; }
    body > header .header-contact a {
      color: inherit; }

a.fb {
  display: inline-block;
  vertical-align: sub;
  width: 28px;
  height: 29px;
  background: url('images/icon_fb.png') left center no-repeat;
  text-indent: -100000px;
  text-align: left; }
  @media screen and (max-width: 499px) {
  a.fb {
    vertical-align: middle; } }

.main-navigation {
  background: #fff url('') left top repeat-x;
  color: #2c2c2c;
  padding: 0;
  position: relative;
  text-align: left;
  text-transform: uppercase;
  font-family: 'Roboto', sans-serif;
  font-size: 15px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
  .main-navigation ul {
    margin: 0 auto;
    padding: 0; }
  .main-navigation li {
    background: transparent url('') left center no-repeat;
    display: inline-block;
    height: 50px;
    line-height: 50px;
    margin: 0;
    padding: 0;
    position: relative; }
    .main-navigation li ul {
      background: #fff;
      display: block;
      height: 0;
      left: 0;
      margin: 0;
      overflow: hidden;
      padding: 0;
      position: absolute;
      top: 100%;
      width: 190px; }
    .main-navigation li li {
      background-image: none;
      display: block;
      height: auto;
      line-height: 1em;
      margin: 0;
      position: relative;
      text-align: left;
      width: 190px; }
      .main-navigation li li a:link, .main-navigation li li a:visited {
        padding: 10px 5px;
        padding-left: 15px;
        width: 100%; }
        .main-navigation li li a:hover, .main-navigation li li a:focus, .main-navigation li li a:active {
          color: #fff; }
  * + 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; }
    .main-navigation a:hover, .main-navigation a:focus, .main-navigation a:active {
      background: #0476bb;
      color: #fff; }
  .main-navigation .sel > a, .main-navigation .sel .sel > a {
    background: #0476bb;
    color: #fff; }
  .main-navigation li:hover ul, .main-navigation a:focus + ul {
    height: auto; }

main {
  z-index: 5;
  background: #f4f4f4; }

.content-wrapper {
  padding: 35px 0;
  font-size: 17px;
  line-height: 24px; }
  @media screen and (max-width: 1239px) {
  .content-wrapper {
    padding: 30px 20px; } }

@media screen and (max-width: 819px) {
    .content {
      text-align: center; } }
  .content .cat-summary {
    overflow: hidden;
    width: 100%;
    max-width: 365px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
    text-align: center; }
    @media screen and (max-width: 819px) {
  .content .cat-summary {
    margin: auto; } }
    .content .cat-summary h2 {
      background: #0476bb;
      color: #fff;
      margin: 0;
      margin-bottom: 10px;
      padding: 25px 10px;
      font-size: 28px;
      line-height: 30px; }
    .content .cat-summary p {
      max-width: 305px;
      margin: 10px auto;
      margin-bottom: 30px; }
    .content .cat-summary .button {
      margin: 0 auto;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }

.google-map {
  position: relative;
  padding-bottom: 34.5%;
  height: 0;
  overflow: hidden; }
  @media screen and (max-width: 819px) {
  .google-map {
    padding-bottom: 60%; } }
  @media screen and (max-width: 499px) {
  .google-map {
    padding-bottom: 80%; } }

.google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }

.col-3 {
  float: left;
  max-width: 340px;
  width: 100%;
  margin-right: 50px;
  margin-bottom: 15px; }
  .col-3.last {
    margin-right: 0; }

.col-3.wide {
  max-width: 365px;
  margin-right: 25px; }

@media screen and (max-width: 819px) {
    .col-3, .col-3.wide {
      float: none;
      max-width: 100%;
      margin-right: 0 !important; } }

.col-2 {
  float: left;
  max-width: 567px;
  width: 100%;
  margin-top: 10px;
  margin-right: 35px; }
  .col-2.last {
    margin-right: 0; }

@media screen and (max-width: 819px) {
    .col-2, .col-2.last {
      float: none;
      margin: 0 auto;
      margin-bottom: 10px; } }

.hasSidebar {
  display: block;
  float: left;
  width: 74%; }

.sidebar {
  display: block;
  float: right;
  width: 25%; }

footer[role="banner"] {
  margin-bottom: 0px;
  z-index: 0;
  border-top: 7px solid #0685ce;
  background: #0476bb;
  background: #0476bb;
  background: -moz-linear-gradient(top, #0476bb 0%, #036db7 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0476bb), color-stop(100%, #036db7));
  background: -webkit-linear-gradient(top, #0476bb 0%, #036db7 100%);
  background: -o-linear-gradient(top, #0476bb 0%, #036db7 100%);
  background: -ms-linear-gradient(top, #0476bb 0%, #036db7 100%);
  background: linear-gradient(top, #0476bb 0%, #036db7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF0476BB', endColorstr='#FF036DB7', GradientType=if($horizontal, 1, 0));
  color: #84c6f4; }
  footer[role="banner"] a:link, footer[role="banner"] a:visited {
    color: inherit; }
    .site-footer {
      position: relative;
      height: auto;
      padding: 0;
      padding: 40px 0;
      box-sizing: border-box;
      text-align: left;
      font-size: 14px;
      line-height: 28px; }
  @media screen and (max-width: 1239px) {
  .site-footer {
    height: auto;
    padding: 10px; } }
  @media screen and (max-width: 1239px) {
    .site-footer > div {
      display: block;
      float: none;
      position: static; } }
  .site-footer .col {
    display: inline-block;
    vertical-align: top;
    max-width: 270px;
    width: 100%;
    margin-right: 20px; }
    .site-footer .col.last {
      margin-right: 0; }
    @media screen and (max-width: 1239px) {
  .site-footer .col {
    display: block;
    margin: 0 auto;
    margin-bottom: 25px; }
    .site-footer .col.last {
      margin: 0 auto;
      margin-bottom: 25px; } }
    .site-footer .col h2 {
      color: #fff;
      font-size: 21px;
      border-bottom: 1px solid #0685ce;
      padding-bottom: 8px; }
    .site-footer .col p {
      margin: 0;
      margin-bottom: 8px; }
    .site-footer .col a.fb {
      width: auto;
      padding-left: 35px;
      text-indent: 0; }

.sub-footer {
  position: relative;
  font-size: 13px;
  line-height: 24px;
  border-top: 1px solid #0685ce;
  text-align: center;
  padding: 15px 0; }
  .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; }
  @media screen and (max-width: 1239px) {
  .sub-footer {
    position: relative;
    left: 0;
    right: 0; } }
/* Products */
.cat-nav {
  display: inline-block;
  vertical-align: top;
  margin: 0;
  margin-right: 30px;
  margin-bottom: 15px;
  padding: 0;
  max-width: 270px;
  width: 100%;
  height: 100%;
  background: #0476bb;
  border-radius: 3px;
  overflow: hidden; }
  .cat-nav li {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .cat-nav li a {
      display: block;
      width: 100%;
      padding: 10px;
      padding-left: 15px;
      box-sizing: border-box;
      border-left: 5px solid transparent;
      font-size: 19px;
      color: #fff; }
    .cat-nav li.sel a, .cat-nav li:hover a {
      background: #005c95;
      border-left: 5px solid #ff9600;
      text-decoration: none; }

.products-right {
  display: inline-block;
  max-width: 865px;
  width: 100%; }
  .products-right h1 {
    margin-top: 0; }

.products .nav, .category .nav {
  margin: 0;
  padding: 0; }
  .products .nav li, .category .nav li {
    float: left;
    list-style-type: none;
    margin: 0;
    margin-right: 30px;
    margin-bottom: 15px;
    padding: 0;
    max-width: 265px;
    width: 100%;
    height: 200px; }
    .products .nav li a, .category .nav li a {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      padding: 10px;
      box-sizing: border-box;
      background: #fff;
      border: 1px solid #ddd; }
    .products .nav li img, .category .nav li img {
      max-width: 100%;
      max-height: 100%; }
    .products .nav li:nth-child(3n), .category .nav li:nth-child(3n) {
      margin-right: 0; }
  .products .nav li:nth-child(3n+1):nth-last-child(-n+3), .category .nav li:nth-child(3n+1):nth-last-child(-n+3), .products .nav li:nth-child(3n+1):nth-last-child(-n+3) ~ li, .category .nav li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
    margin-bottom: 0; }
  @media screen and (max-width: 899px) {
  .products .nav li:nth-child(3n), .category .nav li:nth-child(3n) {
    margin-right: 30px; }
    .products .nav li:nth-child(2n), .category .nav li:nth-child(2n) {
      margin-right: 0; }

    .products .nav li:nth-child(3n+1):nth-last-child(-n+3), .category .nav li:nth-child(3n+1):nth-last-child(-n+3), .products .nav li:nth-child(3n+1):nth-last-child(-n+3) ~ li, .category .nav li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
      margin-bottom: 15px; }

    .products .nav li:nth-child(2n+1):nth-last-child(-n+2), .category .nav li:nth-child(2n+1):nth-last-child(-n+2), .products .nav li:nth-child(2n+1):nth-last-child(-n+2) ~ li, .category .nav li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
      margin-bottom: 0; } }
  @media screen and (max-width: 599px) {
  .products .nav li, .category .nav li {
    float: none;
    margin: 0 auto !important;
    margin-bottom: 15px !important; } }

.ie9 .products .nav li a, .ie9 .category .nav li a, .ie8 .products .nav li a, .ie8 .category .nav li a {
  display: block;
  text-align: center; }

.product .images {
  max-width: 420px;
  width: 100%;
  float: left;
  margin-right: 30px; }
  .product .images .main {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 420px;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    background: #fff;
    margin-bottom: 10px; }
  .product .images .main img {
    max-height: 100%;
    width: auto; }
  .product .images ul {
    margin: 0;
    padding: 0; }
  .product .images ul li {
    display: inline-block;
    vertical-align: top;
    list-style-type: none;
    margin: 0;
    margin-right: 0.7%;
    margin-bottom: 10px;
    padding: 10px;
    box-sizing: border-box;
    max-width: 32%;
    width: 100%;
    border: 1px solid #ddd;
    text-align: center; }
    .product .images ul li a {
      display: block;
      padding-top: 100%;
      height: 0;
      position: relative; }
      .product .images ul li a img {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
        bottom: 0;
        max-height: 100%; }
    .product .images ul li:nth-child(3n) {
      margin-right: 0; }
    @media screen and (max-width: 499px) {
      .product .images ul li {
        max-width: 48%; }
        .product .images ul li:nth-child(3n) {
          margin-right: 1%; }
        .product .images ul li:nth-child(2n) {
          margin-right: 0; } }
    .product .images ul li img {
      max-width: 100%; }
  .product #product {
    float: left;
    max-width: 410px;
    width: 100%; }
  @media screen and (max-width: 899px) {
    .product #product {
      max-width: 100%; } }
/* default form styling
 * - apply .contact class to any form
 * - note .button styling at top of file
 */
form.contact {
  margin-top: 8px; }

.contact {
  /* captcha */ }
  .contact p {
    line-height: 1.75em; }
  .contact p.action {
    text-align: left; }
  .contact .action .button {
    margin: 0; }
  .contact label {
    display: inline-block;
    vertical-align: top;
    width: auto; }
  .contact label.error {
    color: #fd1a00;
    font-size: 0.875em;
    margin-left: 10px;
    width: auto; }
  .contact input[type=text], .contact input[type=password], .contact textarea {
    font-family: inherit;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: #e9e9e9;
    border: 1px solid #e0e0e0; }
  .contact input[type=text].half, .contact input[type=text].quater, .contact input[type=text].eighth {
    margin-right: 1px; }
  .contact input[type=text].half {
    width: 49.7%; }
  .contact input[type=text].quater {
    width: 24.6%; }
  .contact input[type=text].eighth {
    width: 12.1%; }
  .contact input[type=text].last {
    margin-right: 0; }
  .contact input {
    /* basic code for using customised radio button graphics
     * - checkboxes can be handled similarly
     * - fallback to normal in <= IE8
     */ }
  .contact input[type=password], .contact input.password {
    width: 20%; }
  .contact input[type=radio] + label {
    margin-right: 30px;
    position: relative;
    width: auto; }
    .contact input[type=radio] + label:after {
      background: #fff;
      border-radius: 9px;
      content: '';
      display: block;
      height: 18px;
      left: -22px;
      position: absolute;
      top: 4px;
      width: 18px; }
  .contact input[type=radio]:checked + label:after {
    background: #2c2c2c; }
  .contact .auth + input {
    width: 20%; }
  .contact textarea {
    font-family: inherit;
    height: 180px; }

img.auth {
  vertical-align: middle; }

@media screen and (max-width: 1239px) {
    input[type=submit] {
      -ms-appearance: none;
      -moz-appearance: none;
      -o-appearance: none;
      -webkit-appearance: none;
      appearance: none; } }
/* tables */
.control_panel {
  width: 90%;
  border: none;
  margin: 10px auto;
  padding: 0;
  border-bottom: 1px dashed #2c2c2c;
  border-collapse: collapse;
  line-height: 20px;
  text-align: left; }
  .control_panel tr {
    background: #f4f4f4;
    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 {
  border-top: 1px solid #2c2c2c; }
  .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: #000;
    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: #000;
  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: #0476bb;
  color: #2c2c2c; }
  .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: #0476bb;
  color: #2c2c2c; }
  .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-wrapper {
  overflow: hidden;
  padding: 21px;
  padding-bottom: 29px;
  background: url('images/brick_bg.jpg') center top repeat-x;
  background-size: cover; }
  .slideshow-wrapper:after {
    visibility: visible;
    content: '';
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    height: 8px;
    background: #0685ce;
    background: -moz-linear-gradient(left, #0685ce 0%, #036db7 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, #0685ce), color-stop(100%, #036db7));
    background: -webkit-linear-gradient(left, #0685ce 0%, #036db7 100%);
    background: -o-linear-gradient(left, #0685ce 0%, #036db7 100%);
    background: -ms-linear-gradient(left, #0685ce 0%, #036db7 100%);
    background: linear-gradient(left, #0685ce 0%, #036db7 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF0685CE', endColorstr='#FF036DB7', GradientType=if($horizontal, 1, 0)); }
  .slideshow-wrapper h1.page-title {
    position: relative;
    z-index: 10;
    padding: 0;
    padding-top: 60px;
    font-weight: normal; }
  @media screen and (max-width: 1239px) {
    .slideshow-wrapper h1.page-title {
      padding-top: 10px; } }
  .slideshow-wrapper h1.page-title:before {
    visibility: visible;
    content: '';
    display: block;
    position: absolute;
    bottom: -20px;
    left: -235px;
    z-index: -1;
    width: 1395px;
    height: 115px;
    background: url('images/brick_overlay.png') center center no-repeat; }

.slideshow {
  position: relative;
  z-index: 7;
  margin-bottom: 20px;
  padding: 10px;
  box-sizing: border-box;
  background: #fff;
  -webkit-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 1239px) {
  .slideshow {
    margin-bottom: 0; } }
  .slideshow .slider {
    background: #2c2c2c; }
  .slideshow figure {
    position: relative;
    height: 411px;
    max-height: 411px;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
    background: #2c2c2c;
    text-align: center; }
  @media screen and (max-width: 1239px) {
    .slideshow figure {
      height: auto;
      max-height: 10000px; } }
  .slideshow figure img {
    float: right; }
  .slideshow svg {
    width: 101%;
    height: 101%; }
  .slideshow figcaption {
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 270px;
    height: 100%;
    padding: 25px;
    box-sizing: border-box;
    color: #fff;
    font-size: 15px;
    line-height: 23px;
    text-align: left; }
  @media screen and (max-width: 1239px) {
    .slideshow figcaption {
      position: static;
      height: auto;
      max-width: 100%;
      padding: 15px 20px; } }
  .slideshow figcaption h2 {
    margin-top: 0;
    font-size: 32px;
    line-height: 36px;
    color: #fff; }
  @media screen and (max-width: 1239px) {
      .slideshow figcaption h2 {
        margin: 0; } }
  @media screen and (max-width: 499px) {
      .slideshow figcaption h2 {
        font-size: 25px;
        line-height: 26px; } }
  .slideshow figcaption .button {
    margin: 0;
    margin-top: 20px; }
  .slideshow .slick-slide .bw {
    opacity: 0; }
  .slideshow .slick-slide .color {
    opacity: 1; }
  .slideshow button.slick-arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 100;
    height: 86px;
    width: 21px;
    margin: auto;
    border: none;
    cursor: pointer;
    text-indent: -9999px; }
  .slideshow button.slick-arrow.slick-prev {
    left: -31px;
    background: url('images/slide_left.png') top center no-repeat; }
  .slideshow button.slick-arrow.slick-next {
    right: -31px;
    background: url('images/slide_right.png') top center no-repeat; }
  .slideshow ul.slick-dots {
    position: absolute;
    bottom: -45px;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: center; }
  .slideshow ul.slick-dots li {
    display: inline-block;
    list-style-type: none;
    padding: 0;
    margin: 0 5px;
    height: 10px;
    width: 10px;
    text-indent: -1000000px;
    border: none;
    background: url('image/slide_bullet.png') center center no-repeat; }
  .slideshow ul.slick-dots li.slick-active {
    background: url('image/slide_bullet_active.png') center center no-repeat; }
  .slideshow ul.slick-dots li:hover {
    cursor: pointer; }
/* 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(0, 0, 0, 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(0, 0, 0, 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: 601px) {
    .mobileGallery {
      display: none;
      overflow: visible; } }
  .mobileGallery .slide {
    text-align: center; }
  .mobileGallery img {
    margin: 0 auto; }
/* blog */
.blog-summary > div {
  border-bottom: 1px solid #f4f4f4;
  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 #f4f4f4;
  border-radius: 5px;
  display: block;
  max-width: 100%; }

.blog-article .blog-feature {
  border: 1px solid #f4f4f4;
  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: #2c2c2c;
    display: block;
    padding: 10px;
    width: 150px; }
  .regionList li.sel a, .regionList li a:hover, .regionList li a:focus, .regionList li a:active {
    background-color: #0476bb;
    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 #f4f4f4;
  margin-bottom: 15px; }
  .cart_options h4 {
    background: #fff;
    border-bottom: 1px solid #f4f4f4;
    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 #f4f4f4; }
  .cart th {
    font-size: 0.875em;
    font-weight: normal;
    padding: 10px 5px; }
  .cart tbody {
    background: #fff;
    border-left: 1px solid #f4f4f4;
    border-right: 1px solid #f4f4f4;
    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 #0476bb;
    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: #0476bb;
    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 #f4f4f4; }
  .cart tfoot td:last-child {
    text-align: right; }
  .cart span.total {
    font-weight: bold; }
  .cart span.total.value {
    color: #0476bb;
    font-size: 1.123em; }
  .cart h2 {
    font-family: Arial, serif;
    font-size: 1em; }
  .cart h3 {
    color: #0476bb;
    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: auto; }
  .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 #2c2c2c;
    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 #2c2c2c;
    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 #2c2c2c;
    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(0, 0, 0, 0.8);
  background-color: #000\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 #f4f4f4;
  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: #2c2c2c;
  font-size: 1em;
  padding: 10px;
  text-align: left; }
  #tinymce p {
    padding: 0 0 1em; }
  #tinymce form {
    outline: 1px dotted #0476bb; }
  #tinymce a {
    border-bottom: 1px dotted #ff9600;
    text-decoration: none; }

.main-navigation {
  display: block; }
  @media all and (hover: none) {
  .main-navigation {
    display: none; } }
  html.touch .main-navigation {
    display: none; }
  @media all and (hover: hover) {
    html.touch .main-navigation {
      display: block; } }

#mobileMenu {
  position: absolute;
  width: 100%;
  background: #2c2c2c;
  background: rgba(44, 44, 44, 0.95);
  color: #fff;
  font-family: RobotoCondensed, sans-serif;
  padding: 0;
  text-align: left;
  display: none; }
  @media all and (hover: none) {
  #mobileMenu {
    display: block; } }
  html.touch #mobileMenu {
    display: block; }
  @media all and (hover: hover) {
    html.touch #mobileMenu {
      display: none; } }
  #mobileMenu ul {
    margin: 0;
    padding: 0; }
  #mobileMenu li {
    display: block;
    text-transform: uppercase; }
  #mobileMenu li.submenu a {
    background: url(/resources/template/mobileMenuArrowRightWhite.png) right no-repeat; }
  #mobileMenu li.back a {
    background: url(/resources/template/mobileMenuArrowLeftWhite.png) left no-repeat; }
  #mobileMenu li.sel {
    color: #fff;
    background: #ff9600; }
  #mobileMenu a, #mobileMenu h2 {
    color: inherit; }
  #mobileMenu a {
    display: block;
    padding: 10px 0;
    padding-left: 25px;
    box-sizing: border-box; }
  #mobileMenu li.indent a {
    padding-left: 35px; }
  #mobileMenu h2 {
    background: transparent;
    margin: 0;
    width: 33px;
    height: 28px;
    position: absolute;
    top: -35px;
    right: 30px;
    z-index: 10;
    text-indent: -10000px; }
  #mobileMenu h2 a {
    background: url(/resources/template/images/icon_menu.png) no-repeat right bottom;
    border: 0;
    padding: 25px 0 0 25px;
    margin: -25px 0 0 -25px;
    height: 28px; }
