body {
	font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" /*{body-font-family}*/;
	font-size: 16px /*{body-font-size}*/;
	color: #212529 /*{body-font-colour}*/;
	background-image: none /*{body-background-image}*/;
	background-color: #ffffff /*{body-background-colour}*/;
}
a, .btn-link{
	color: #2751a5 /*{link-text-colour}*/;
}
a:hover, a:active, a:focus, .btn-link:hover{
	color: #2751a5 /*{link-text-hover-colour}*/;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" /*{headers-font-family}*/;
	color: #003087 /*{headers-colour}*/;
}
.carousel-caption h3, .carousel-caption h2,.carousel-caption .h3,.carousel-caption p {
	color: #ffffff /*{carousel-text-colour}*/;
}
h1, .h1 {
	font-size: 48px /*{header-1-font-size}*/;
}
h2, .h2 {
	font-size: 40px /*{header-2-font-size}*/;
}
h3, .h3 {
	font-size: 32px /*{header-3-font-size}*/;
}
h4, .h4 {
	font-size: 26px /*{header-4-font-size}*/;
}
h5, .h5 {
	font-size: 20px /*{header-5-font-size}*/;
}
/* Secondary button */
.btn-outline-secondary, .btn-default {
	color: #212529 /*{buttons | btn-default-text-colour}*/;
	background-color: #ffffff /*{buttons | btn-default-background-colour}*/;
	border-color: #cccccc /*{buttons | btn-default-border-colour}*/;
	box-shadow: inset 0 0 0 1px #ccc;
}
.btn-outline-secondary:hover, .btn-default:hover{
	color: #2751a5 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #ebebeb /*{buttons | btn-default-border-colour-hover}*/;
	box-shadow: inset 0 0 0 1px #ebebeb, 0px 2px 0px #2751a5;
}
.btn-outline-secondary.disabled, .btn-default:disabled {
	color: #2751a5 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #ebebeb /*{buttons | btn-default-border-colour-hover}*/;
	box-shadow: inset 0 0 0 1px #ccc;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle,
.btn-default:not(:disabled):not(.disabled):active, .btn-default:not(:disabled):not(.disabled).active, .show > .btn-default.dropdown-toggle {
	color: #2751a5 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #ebebeb /*{buttons | btn-default-border-colour-hover}*/;
	box-shadow: inset 0 0 0 1px #ebebeb, 0px 2px 0px #2751a5;
}
/* Primary button */
.btn-primary {
	color: #ffffff /*{buttons | btn-primary-text-colour}*/;
	background-color: #2751a5 /*{buttons | btn-primary-background-colour}*/;
	border-color: #2751a5 /*{buttons | btn-primary-border-colour}*/;
}
.btn-primary:hover {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-primary-border-colour-hover}*/;
	box-shadow: 0px 2px 0px rgba(32, 66, 134, 0.7);
}
.btn-primary.disabled, .btn-primary:disabled {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-primary-border-colour-hover}*/;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-primary-border-colour-hover}*/;
	box-shadow: 0px 2px 0px rgba(32, 66, 134, 0.7);
}
.btn-outline-primary {
	box-shadow: inset 0 0 0 1px #2751a5;
}
.btn-outline-primary:hover{
	box-shadow: inset 0 0 0 1px #2751a5, 0px 2px 0px #2751a5;
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
	box-shadow: inset 0 0 0 1px #2751a5;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
	box-shadow: inset 0 0 0 1px #2751a5, 0px 2px 0px #2751a5;
}
/* Warning button */
.btn-warning {
	color: #ffffff /*{buttons | btn-warning-text-colour}*/;
	background-color: #ffc107 /*{buttons | btn-warning-background-colour}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour}*/;
}
.btn-warning:hover {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
.btn-warning.disabled, .btn-warning:disabled {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
/* Danger button */
.btn-danger {
	color: #ffffff /*{buttons | btn-danger-text-colour}*/;
	background-color: #c51d21 /*{buttons | btn-danger-background-colour}*/;
	border-color: #c51d21 /*{buttons | btn-danger-border-colour}*/;
}
.btn-danger:hover {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #a4181b /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #a4181b /*{buttons | btn-danger-border-colour-hover}*/;
}
.btn-danger.disabled, .btn-danger:disabled {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #a4181b /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #a4181b /*{buttons | btn-danger-border-colour-hover}*/;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #a4181b /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #a4181b /*{buttons | btn-danger-border-colour-hover}*/;
}
/* Success button */
.btn-success {
	color: #ffffff /*{buttons | btn-success-text-colour}*/;
	background-color: #2751a5 /*{buttons | btn-success-background-colour}*/;
	border-color: #2751a5 /*{buttons | btn-success-border-colour}*/;
}
.btn-success:hover {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-success-border-colour-hover}*/;
	box-shadow: 0px 2px 0px rgba(32, 66, 134, 0.7);
}
.btn-success.disabled, .btn-success:disabled {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-success-border-colour-hover}*/;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #204286 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #204286 /*{buttons | btn-success-border-colour-hover}*/;
	box-shadow: 0px 2px 0px rgba(32, 66, 134, 0.7);
}
/* Info button */
.btn-info {
	color: #ffffff /*{buttons | btn-info-text-colour}*/;
	background-color: #17a2b8 /*{buttons | btn-info-background-colour}*/;
	border-color: #17a2b8 /*{buttons | btn-info-border-colour}*/;
}
.btn-info:hover {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.btn-info.disabled, .btn-info:disabled {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.breadcrumb {
	background-color:  /*{breadcrumb-background-colour}*/;
}
.breadcrumb-item + .breadcrumb-item::before {
	color: #212529 /*{breadcrumb-text-colour}*/;
}
.breadcrumb > .active,
.breadcrumb a {
	color: #212529 /*{breadcrumb-text-colour}*/;
}
.pagination .page-link{
	color: #212529 /*{pagination-text-colour}*/;
	background-color: #ffffff /*{pagination-bg-colour}*/;
	border-color: #c0c6d3 /*{pagination-border-colour}*/;
}
.pagination .page-link:hover,
.pagination .page-link:focus{
	color: #2751a5 /*{pagination-text-colour-hover}*/;
	background-color: #ffffff /*{pagination-bg-colour-hover}*/;
	border-color: #2751a5 /*{pagination-border-colour-hover}*/;
}
.pagination .active .page-link,
.pagination .active .page-link:hover,
.pagination .active .page-link:focus {
	color: #212529 /*{pagination-text-colour-active}*/;
	background-color: #dde0eb /*{pagination-bg-colour-active}*/;
	border-color: #2751a5 /*{pagination-border-colour-active}*/;
}
.badge-secondary {
	background-color: rgba(103, 160, 235, 1) /*{label-default-bg}*/;
}
.badge-primary {
	background-color: #2751a5 /*{label-primary-bg}*/;
}
.badge-success {
	background-color: #28a745 /*{label-success-bg}*/;
}
.badge-info {
	background-color: #17a2b8 /*{label-info-bg}*/;
}
.badge-warning {
	background-color: #ffc107 /*{label-warning-bg}*/;
}
.badge-danger {
	background-color: #ff4800 /*{label-danger-bg}*/;
}
.card {
	border-color: rgba(192, 198, 211, 1) /*{panel-border-colour}*/;
}
.card-header {
	background-color: rgba(221, 224, 235, 1) /*{panel-header-bg-colour}*/;
	border-color: rgba(4, 68, 217, 1) /*{panel-header-border-colour}*/;
}
.productsave {
	color: #ff4800 /*{sale-colour}*/;
}
.wrapper-header .navbar-toggler {
	color: #212529 /*{navbar-default-link-colour}*/;
}
.wrapper-header .navbar {
	background-color: #ffffff /*{navbar-default-bg-colour}*/ !important;
}
.wrapper-header .navbar .navbar-nav .nav-link {
	color: #212529 /*{navbar-default-link-colour}*/;
}
.wrapper-header .navbar-nav .nav-link:hover,
.wrapper-header .navbar-nav .nav-link:focus {
	color: #2751a5 /*{navbar-default-link-colour-hover}*/;
}
.wrapper-header .navbar-nav .show > .nav-link,
.wrapper-header .navbar-nav .active > .nav-link,
.wrapper-header .navbar-nav .nav-link.show, .wrapper-header .navbar-nav .nav-link.active{
	color: #2751a5 /*{navbar-default-link-colour-active}*/;
}
.dropdown-menu {
	background-color: #ffffff /*{dropdown-menu-bg}*/;
	border-color: #c0c6d3 /*{dropdown-menu-border-colour}*/;
}
.dropdown-item{
	color: #212529 /*{dropdown-menu-link-colour}*/;
}
.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item.active,
.dropdown-item:active{
	color: #212529 /*{dropdown-menu-link-colour-hover}*/;
	background-color: #dde0eb /*{dropdown-menu-link-bg-hover}*/;
}
/* ===== CATEGORY CARDS FIX ===== */
/* Equal height columns */
.home-featured-categories .col-6.col-md-3 {
  display: flex;
  flex-direction: column;
}
/* Card stretch */
.home-featured-categories .thumbnail.card-banner {
  height: 100%;
  display: flex;
  flex-direction: column;
}
/* Image container fixed height */
.home-featured-categories .thumbnail.card-banner .image {
  height: 220px;
  overflow: hidden;
  flex-shrink: 0;
}
/* Image fills container */
.home-featured-categories .thumbnail.card-banner .image img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
/* Center caption text */
.home-featured-categories .thumbnail.card-banner .caption {
  text-align: center;
}
/* Align rows */
.home-featured-categories .row.gutters-24 {
  align-items: stretch;
  justify-content: center;
}
/* ===== MOBILE FIX ===== */
@media (max-width: 767px) {
  .home-featured-categories .col-6.col-md-3 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .home-featured-categories .thumbnail.card-banner .image,
  .home-featured-categories .thumbnail.card-banner .image img {
    height: 150px !important;
  }
}
/* Single line captions */
.home-featured-categories .thumbnail.card-banner .caption {
  overflow: visible;
  text-overflow: unset;
  padding: 0 5px;
  text-align: center;
}
/* Force all images same height */
.home-featured-categories .thumbnail.card-banner .image,
.home-featured-categories .thumbnail.card-banner .image img {
  height: 220px !important;
  max-height: 220px !important;
}
/* Force all cards equal width - 4 per row */
.home-featured-categories .col-6.col-md-3 {
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
}
@media (max-width: 767px) {
  .home-featured-categories .row.gutters-24 {
    display: block !important;
  }
  .home-featured-categories .col-6.col-md-3 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 5px !important;
  }
  .home-featured-categories .thumbnail.card-banner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
  }
  .home-featured-categories .thumbnail.card-banner .image {
    display: block !important;
    width: 70px !important;
    height: 70px !important;
    min-width: 70px !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    margin: 10px !important;
  }
  .home-featured-categories .thumbnail.card-banner .image img {
    width: 70px !important;
    height: 70px !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  .home-featured-categories .thumbnail.card-banner .caption {
    flex: 1 !important;
    text-align: left !important;
    white-space: normal !important;
    font-size: 16px !important;
  }
  .home-featured-categories .thumbnail.card-banner .caption a {
    white-space: normal !important;
    word-break: break-word !important;
    overflow: visible !important;
    font-size: 13px !important;
  }
}
/* Mobile header - logo center, icons right */
@media (max-width: 767px) {
  .wrapper-header .navbar {
    position: relative !important;
  }
  .navbar-brand {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 1 !important;
  }
  .navbar-nav.justify-content-end {
    margin-left: auto !important;
  }
}
/* Push search bar below header on mobile */
@media (max-width: 767px) {
  .navbar-nav.justify-content-end {
    flex-wrap: wrap !important;
  }
  .nav-item.dropdown.d-lg-block {
    order: 99 !important;
    width: 100% !important;
    padding: 8px 15px !important;
    flex: 0 0 100% !important;
  }
  .nav-item.dropdown.d-lg-block .header-search {
    width: 100% !important;
  }
  .nav-item.dropdown.d-lg-block form,
  .nav-item.dropdown.d-lg-block .input-group {
    width: 100% !important;
    display: flex !important;
  }
}
@media (max-width: 767px) {
  /* Keep cart and account on the right */
  .navbar-nav.justify-content-end {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
  }
  /* Cart and account icons stay inline */
  .navbar-nav.justify-content-end > li:not(.d-lg-block) {
    order: 1 !important;
  }
}
@media (max-width: 767px) {
  /* Show account icon on mobile */
  .nav-item.dropdown.d-none {
    display: block !important;
  }
}
/* Mobile header layout */
@media (max-width: 767px) {
  .wrapper-header .navbar {
    position: relative !important;
    flex-wrap: wrap !important;
  }
  /* Hamburger left */
  .navbar-toggler {
    order: 1 !important;
    flex: 0 0 auto !important;
  }
  /* Logo centered */
  .navbar-brand {
    order: 2 !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 1 !important;
  }
  /* Cart + account right */
  .navbar-nav.justify-content-end {
    order: 3 !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    margin-left: auto !important;
  }
  /* Cart and account icons inline */
  .navbar-nav.justify-content-end > li:not(.d-lg-block) {
    order: 1 !important;
    display: block !important;
  }
  /* Search bar full width below */
  .nav-item.d-lg-block {
    order: 99 !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    padding: 8px 15px !important;
  }
  /* Account icon inline with cart */
  .nav-item.dropdown.d-none {
    display: block !important;
    order: 1 !important;
  }
}
@media (max-width: 767px) {
  /* Fix logo overlap with search */
  .navbar-brand {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: 8px !important;
    z-index: 2 !important;
  }
  /* Search bar sits below properly */
  .nav-item.d-lg-block {
    margin-top: 60px !important;
  }
}
@media (max-width: 767px) {
  .mobile-search-wrapper {
    padding: 8px 15px !important;
    width: 100% !important;
    clear: both !important;
  }
  .mobile-search-wrapper .input-group {
    width: 100% !important;
    display: flex !important;
  }
  .mobile-search-wrapper .form-control {
    flex: 1 !important;
  }
  /* Fix logo not overlapping search */
  .navbar-brand {
    top: 5px !important;
  }
}
@media (max-width: 767px) {
  .mobile-search-wrapper {
    margin-top: 10px !important;
    clear: both !important;
    position: relative !important;
    z-index: 0 !important;
  }
  .navbar-brand {
    z-index: 1 !important;
    top: 0 !important;
  }
  .wrapper-header .navbar {
    padding-bottom: 0 !important;
  }
}
@media (max-width: 767px) {
  .navbar-toggler {
    margin-top: 10px !important;
    align-self: flex-start !important;
  }
}
/* Magnifying glass icon in search button */
.btn-primary.px-3::after {
  content: '' !important;
}
.btn-primary.px-3 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='11' cy='11' r='7' stroke='white' stroke-width='2'/%3E%3Cline x1='16.5' y1='16.5' x2='22' y2='22' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  min-width: 50px !important;
}
@media (max-width: 767px) {
  .thumbnail.card-banner .caption,
  .thumbnail.card-banner .caption a {
    font-size: 7px
    text-align: center !important;
    white-space: normal !important;
    text-transform: capitalize !important;
  }
  .home-featured-categories .thumbnail.card-banner .caption,
  .home-featured-categories .thumbnail.card-banner .caption a {
    font-size: 13px !important;
    text-transform: none !important;
    text-align: left !important;
  }
}
@media (max-width: 767px) {
  .thumbnail.card-banner .caption h5.headline {
    font-size: 13px !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    word-break: break-word !important;
  }
}
@media (min-width: 768px) {
  .mobile-search-wrapper {
    margin-bottom: 0 !important;
    padding: 0 !important;
  }
}
@media (min-width: 768px) {
  .mobile-search-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  
  #main-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}
@media (min-width: 760px) {
  .section.hero,
  .hero {
    margin-top: 15px !important;
  }
}
@media (min-width: 768px) {
  section.hero {
    margin-top: 20px !important;
  }
}