.pagination {
  list-style: none;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center; }
  .pagination, .pagination > li {
    margin: 0;
    padding: 0; }
  .pagination li {
    padding: 5px 0; }
    .pagination li:first-child {
      padding-right: 25px; }
    .pagination li:last-child {
      padding-left: 25px; }
    .pagination li a[href="#"] {
      pointer-events: none;
      cursor: default;
      color: grey; }

.row {
  margin: 0 auto; }

.row:before, .row:after {
  content: '';
  display: table; }

.row:after {
  clear: both; }

.xs {
  max-width: 32rem; }

.sm {
  max-width: 48rem; }

.md {
  max-width: 64rem; }

.lg {
  max-width: 80rem; }

.xl {
  max-width: 96rem; }

.col, .products-list .product .img, .products-list .product .details-wrapper {
  float: left; }

.xs-0 {
  display: none; }

.xs-1, .xs-2, .xs-3, .xs-4, .xs-5, .xs-6, .xs-7, .xs-8, .xs-9, .xs-10, .xs-11, .xs-12, .products-list .product .img, .products-list .product .details-wrapper {
  display: inline-block; }

.xs-1 {
  width: 8.3333%; }

.xs-2 {
  width: 16.6667%; }

.xs-3 {
  width: 25%; }

.xs-4 {
  width: 33.3333%; }

.xs-5 {
  width: 41.6667%; }

.xs-6 {
  width: 50%; }

.xs-7 {
  width: 58.3333%; }

.xs-8 {
  width: 66.6667%; }

.xs-9 {
  width: 75%; }

.xs-10 {
  width: 83.3333%; }

.xs-11 {
  width: 91.6667%; }

.xs-12, .products-list .product .img, .products-list .product .details-wrapper {
  width: 100%; }

@media screen and (min-width: 32em) {
  .sm-0 {
    display: none; }

  .sm-1, .sm-2, .sm-3, .products-list .product .img, .sm-4, .sm-5, .sm-6, .sm-7, .sm-8, .sm-9, .products-list .product .details-wrapper, .sm-10, .sm-11, .sm-12 {
    display: inline-block; }

  .sm-1 {
    width: 8.3333%; }

  .sm-2 {
    width: 16.6667%; }

  .sm-3, .products-list .product .img {
    width: 25%; }

  .sm-4 {
    width: 33.3333%; }

  .sm-5 {
    width: 41.6667%; }

  .sm-6 {
    width: 50%; }

  .sm-7 {
    width: 58.3333%; }

  .sm-8 {
    width: 66.6667%; }

  .sm-9, .products-list .product .details-wrapper {
    width: 75%; }

  .sm-10 {
    width: 83.3333%; }

  .sm-11 {
    width: 91.6667%; }

  .sm-12 {
    width: 100%; } }
@media screen and (min-width: 48em) {
  .md-0 {
    display: none; }

  .md-1, .md-2, .products-list .product .img, .md-3, .md-4, .md-5, .md-6, .md-7, .md-8, .md-9, .md-10, .products-list .product .details-wrapper, .md-11, .md-12 {
    display: inline-block; }

  .md-1 {
    width: 8.3333%; }

  .md-2, .products-list .product .img {
    width: 16.6667%; }

  .md-3 {
    width: 25%; }

  .md-4 {
    width: 33.3333%; }

  .md-5 {
    width: 41.6667%; }

  .md-6 {
    width: 50%; }

  .md-7 {
    width: 58.3333%; }

  .md-8 {
    width: 66.6667%; }

  .md-9 {
    width: 75%; }

  .md-10, .products-list .product .details-wrapper {
    width: 83.3333%; }

  .md-11 {
    width: 91.6667%; }

  .md-12 {
    width: 100%; } }
@media screen and (min-width: 64em) {
  .lg-0 {
    display: none; }

  .lg-1, .lg-2, .lg-3, .lg-4, .lg-5, .lg-6, .lg-7, .lg-8, .lg-9, .lg-10, .lg-11, .lg-12 {
    display: inline-block; }

  .lg-1 {
    width: 8.3333%; }

  .lg-2 {
    width: 16.6667%; }

  .lg-3 {
    width: 25%; }

  .lg-4 {
    width: 33.3333%; }

  .lg-5 {
    width: 41.6667%; }

  .lg-6 {
    width: 50%; }

  .lg-7 {
    width: 58.3333%; }

  .lg-8 {
    width: 66.6667%; }

  .lg-9 {
    width: 75%; }

  .lg-10 {
    width: 83.3333%; }

  .lg-11 {
    width: 91.6667%; }

  .lg-12 {
    width: 100%; } }
@media screen and (min-width: 80em) {
  .xl-0 {
    display: none; }

  .xl-1, .xl-2, .xl-3, .xl-4, .xl-5, .xl-6, .xl-7, .xl-8, .xl-9, .xl-10, .xl-11, .xl-12 {
    display: inline-block; }

  .xl-1 {
    width: 8.3333%; }

  .xl-2 {
    width: 16.6667%; }

  .xl-3 {
    width: 25%; }

  .xl-4 {
    width: 33.3333%; }

  .xl-5 {
    width: 41.6667%; }

  .xl-6 {
    width: 50%; }

  .xl-7 {
    width: 58.3333%; }

  .xl-8 {
    width: 66.6667%; }

  .xl-9 {
    width: 75%; }

  .xl-10 {
    width: 83.3333%; }

  .xl-11 {
    width: 91.6667%; }

  .xl-12 {
    width: 100%; } }
.image-center {
  text-align: center; }
  .image-center img {
    text-align: center;
    max-width: 100%;
    height: auto; }

.clear-float {
  float: none !important;
  clear: both !important; }

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  min-width: 250px;
  background: #c8c6da;
  font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; }

a {
  color: #0000ff;
  text-decoration: none; }
  a:hover {
    color: #4545ff;
    text-decoration: underline; }

.content {
  max-width: 1024px;
  margin: 0 auto; }

.no-list-style, .products-list, .products-list .product .details, .index-latest-products {
  list-style: none;
  margin: 0;
  padding: 0; }
  .no-list-style > li, .products-list > li, .products-list .product .details > li, .index-latest-products > li {
    margin: 0;
    padding: 0;
    display: block; }

.text-center {
  text-align: center; }

.header {
  background: #002060;
  border-bottom: 1px solid black;
  box-shadow: 0 0 20px 1px black; }
  .header h1 {
    margin: 0;
    padding: 50px 0 0 0;
    text-align: center;
    color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 28pt; }
  .header .sub-heading {
    color: #ffffff;
    text-align: center;
    margin: 0 0 20px 0; }
  @media (max-width: 450px) {
    .header h1 {
      padding: 20px 0 0 0;
      font-size: 22pt; }
    .header .sub-heading {
      display: none; } }

nav ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  max-width: 980px;
  color: #ffffff; }
  nav ul li.toggle-menu {
    display: none;
    padding: 10px 20px 10px 10px;
    text-align: right; }
  nav ul li.nav-item {
    float: left;
    width: 20%; }
  nav ul li a {
    text-decoration: none !important;
    color: #ffffff;
    text-align: center;
    padding: 10px 0;
    cursor: pointer;
    display: block; }
  nav ul li:hover a {
    color: #180A33;
    background: #C8C6DA; }

@media (max-width: 450px) {
  nav ul li.nav-item {
    float: none;
    width: 100%;
    display: none; }

  nav.show ul li.nav-item {
    display: block; }

  nav ul li.toggle-menu {
    display: block; } }
.content .section {
  background: white;
  border: 1px solid #717171;
  margin: 60px 0 0 0;
  padding: 30px; }
  @media (max-width: 450px) {
    .content .section {
      margin: 20px 0 0 0;
      padding-left: 10px;
      padding-right: 10px; } }
  .content .section .title, .content .section h2 {
    font-size: 18pt;
    color: #09094A;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    padding: 0 0 10px 0; }
  .content .section .title, .content .section h2, .content .section .sub-heading {
    margin: 35px 0 0 0; }
  .content .section .title:first-child, .content .section h2:first-child, .content .section .sub-heading:first-child {
    margin: 0; }
  .content .section .sub-heading {
    font-size: 14pt;
    color: #09094A;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    padding: 0 0 10px 0; }
  .content .section .more-info {
    text-align: right; }
    .content .section .more-info a {
      color: blue;
      font-size: 11pt;
      font-weight: bold; }

.contact-details {
  float: left; }
  .contact-details .row {
    margin: 0 0 10px 0; }
  .contact-details .label, .contact-details .value {
    display: block; }
  .contact-details .label {
    font-size: 10pt; }
  .contact-details .address a {
    font-size: 10pt; }

form .row {
  margin: 15px 0 0 0; }
form label {
  display: block; }
  form label[required]:after {
    color: red;
    content: "*"; }
form input, form textarea {
  display: block; }
form input[type=text], form input[type=tel], form input[type=email], form textarea {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  padding: 5px 10px;
  font-size: 12pt;
  border: 1px solid #002060; }
form button {
  width: 100%;
  color: white;
  background: #002060;
  border: none;
  box-sizing: border-box;
  padding: 10px 10px;
  text-align: center;
  font-size: 12pt;
  cursor: pointer; }
  form button:hover {
    background: #003193; }
  form button:active {
    background: #000f2d; }

.product-categories {
  list-style: none;
  padding: 0;
  margin: 0; }
  .product-categories ul, .product-categories li {
    list-style: none;
    padding: 0;
    margin: 0; }
  .product-categories li {
    box-sizing: border-box;
    float: left;
    padding: 5px;
    position: relative;
    width: 33.33%; }
    .product-categories li a, .product-categories li img {
      display: block; }
    .product-categories li a {
      position: relative; }
    .product-categories li img {
      width: 100%;
      height: auto; }
    .product-categories li .label {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      background: #2a6496;
      color: #ffffff;
      padding: 2px 5px; }
    .product-categories li:hover img {
      filter: brightness(80%); }
    .product-categories li:hover .label {
      background: #1f496e;
      color: #e6e6e6; }
    @media (max-width: 700px) {
      .product-categories li {
        width: 50%; } }
    @media (max-width: 450px) {
      .product-categories li {
        width: 100%; } }

.products-list {
  padding: 30px 0; }
  .products-list .product {
    margin: 0 0 30px 0;
    min-height: 200px; }
    .products-list .product:last-child {
      margin-bottom: 0; }
    .products-list .product .inner {
      padding: 0 10px;
      position: relative; }
    .products-list .product .img {
      text-align: center; }
      .products-list .product .img img {
        display: inline-block;
        width: 100%;
        height: auto;
        max-width: 200px; }
    .products-list .product .details-wrapper {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 0 0 0 20px; }
    @media screen and (max-width: 31.999em) {
      .products-list .product .details-wrapper {
        padding: 0; } }
    .products-list .product .name {
      color: #002060;
      font-weight: bold;
      font-size: 16pt;
      border-bottom: 1px solid #bdbaa9; }
    .products-list .product .details {
      color: #3a3939; }
      .products-list .product .details .detail {
        float: left;
        width: 50%; }
    .products-list .product .more-info {
      text-align: right; }

.index-latest-products .product {
  float: left;
  width: 25%;
  min-width: 200px; }
  .index-latest-products .product .inner {
    padding: 0 10px; }
  .index-latest-products .product .img {
    height: 200px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center; }
    .index-latest-products .product .img img {
      display: block; }
  .index-latest-products .product .label {
    padding: 5px 0;
    text-align: center; }

/*
The break-points for how the latest products are displayed on different screen sizes.
*/
@media (max-width: 879px) {
  /*
  Only show three of the four products. This seemed like the easiest thing to do
  */
  .index-latest-products .product {
    width: 33.3%; }
    .index-latest-products .product:nth-child(4) {
      display: none; } }
@media (max-width: 662px) {
  /*
  Show the fourth product again, and resize them so that two fit on each line. Also change the height so that it isn't
  as high when viewed on mobile devices. This is just so it looks better.
  */
  .index-latest-products .product {
    width: 50%; }
    .index-latest-products .product:nth-child(4) {
      display: block; }
    .index-latest-products .product .img {
      height: 100px; } }
@media (max-width: 478px) {
  /*
  Resize them so that only one fits on a line
  */
  .index-latest-products .product {
    width: 100%; } }
.view-product .image-container img {
  max-height: 400px;
  max-width: 100%;
  width: auto; }
.view-product .image-container li {
  float: left; }
  .view-product .image-container li img {
    padding: 5px;
    height: 90px;
    width: auto;
    cursor: pointer; }
    .view-product .image-container li img.selected {
      padding: 3px;
      border: 2px solid grey; }

.message {
  background: #2966e2;
  color: #fbf7f7;
  padding: 10px 20px; }
  .message.success {
    background: #5ade5f;
    color: #fbf7f7;
    padding: 10px 20px; }
  .message.error {
    background: #ff4a4d;
    color: #fbf7f7;
    padding: 10px 20px; }
  .message.warning {
    background: #fff051;
    color: #464646;
    padding: 10px 20px; }

/*# sourceMappingURL=styles.min.css.map */
