﻿/* =========================================================================
   THEME CSS
   ========================================================================= */
/**
 * CONTENTS
 *
 * COLOURS
 *
 * GENERIC
 * Normalize.css
 * Reset
 * Shared
 *
 * ELEMENTS
 * Page
 * Links
 * Forms
 * SVG
 * Placeholder
 * Paragraphs
 * Headings
 * Tables
 * Selection
 *
 * OBJECTS
 * Accordion
 * Block
 * Box
 * Bullseye
 * Grid
 * List-bare
 * List-inline
 * Media
 * Ratio
 * Wrapper
 *
 * COMPONENTS
 * Banner
 * Breadcrumb
 * Buttons
 * Cards
 * Card logos
 * Cart
 * Category description
 * Category header
 * Category products
 * Contact details
 * Copyright
 * Drawer
 * Filters
 * Headings
 * Home page promos
 * Icons
 * Login
 * Loyalty points
 * Message bar
 * Multi-currency
 * Newsletter
 * Overlay
 * Page content
 * Pagination
 * Primary navigation
 * Product add to cart
 * Product attributes
 * Product back-in-stock
 * Product code
 * Product container
 * Product description
 * Product image viewer
 * Product lists
 * Product options
 * Product prices
 * Product reviews
 * Product section
 * Product short description
 * Product stock message
 * Products
 * Promos
 * Review stars
 * Search form
 * Site footer
 * Site header
 * Site logo
 * Social plugins
 * Sortby
 * Toolbar
 * Top bar
 * Webpages
 * Welcome
 *
 * PAGES
 * Approve review
 * Contact
 * Customer review
 * Customer secure area
 * Password protect
 * Reset password
 * Search results
 *
 * OVERRIDES
 * Exit modal
 * Filters price widget
 * Fonts
 * Product options
 * Promo stickers
 * Softcart
 * Edit Buttons
 *
 * UTILITIES
 * Clearfix
 * Spacing
 * Visual
 *
 * VENDOR
 * Flickity
 *
 * FEATUREs
 * Quick View
 */
/* =========================================================================
   $COLOURS
   ========================================================================= */
/*
   [ekm:colour]
      colour_reference='color_primary_buttons';
      colour_name='Primary Buttons';
      colour_description='This is the background colour of add to cart and checkout buttons. They should stand out more than any other element on the page.';
      default_colour='#5cb85c';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_secondary_buttons';
      colour_name='Secondary Buttons';
      colour_description='This is the background colour of buttons not relating to buying a product. This colour should not stand out more than the Primary Button colour.';
      default_colour='#0095d6';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_text_links';
      colour_name='Text Links';
      colour_description='This is the colour of text users can click to take them to a different page. This colour should stand out from the colour of body text so your users know what text they can click or tap.';
      default_colour='#0095d6';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_searchbox';
      colour_name='Searchbox';
      colour_description='This colour is used to style the searchbox. It is used as a background colour on smaller screens and a border colour on larger screens.';
      default_colour='#e40330';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_menu';
      colour_name='Category Menu';
      colour_description='This is the background colour of the category menu bar. The category menu's white text colour should stand out when compared with this colour.';
      default_colour='#e71d45';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_menu_dropdown';
      colour_name='Category Menu Dropdown';
      colour_description='This is the background colour of the category menu dropdown. The dropdown is shown when a user clicks on a category that has sub-categories.';
      default_colour='#e40330';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_prices';
      colour_name='Product Prices';
      colour_description='This is the colour of product prices; it used in product lists and on product pages. If prices are important for selling your products this colour should stand out.';
      default_colour='#e40330';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_review_stars';
      colour_name='Product Review Stars';
      colour_description='This is the colour of product review stars in product lists and on product pages. Review stars are usually a bright yellow or orange colour.';
      default_colour='#f7cf2c';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_footer';
      colour_name='Footer Content';
      colour_description='This is the background colour of the footer's main content area. It is used to break up the various sections of the footer.';
      default_colour='#e8294f';
   [/ekm:colour]
   
   	[ekm:colour]
      colour_reference='footer_text_colour';
      colour_name='Footer Text Colour';
      colour_description='This is the colour of the text in the footer's main content area.';
      default_colour='#fff';
   [/ekm:colour]
   
   [ekm:colour]
      colour_reference='navigation_link_colour';
      colour_name='Navigation Link Colour';
      colour_description='This is the colour of the links in the navigation.';
      default_colour='#fff';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_footer_bottom';
      colour_name='Footer Bottom';
      colour_description='This is the background colour of the bottom section of the footer which contains the site copyright notices. This colour can either compement the Footer Content colour or contrast with it.';
      default_colour='#e40330';
   [/ekm:colour]

	[ekm:colour]
      colour_reference='color_newsletter';
      colour_name='Newsletter';
      colour_description='This is the background colour of the Newsletter area. This area is displayed just before the footer and only if you have installed the Email Marketing feature.';
      default_colour='#e71d45';
   [/ekm:colour]
  
	[ekm:colour]
		colour_reference='add_to_cart_bg';
		colour_name='Add to cart Background color';
		colour_description='This is the the background colour of the add to cart buttons mainly found in the quickview feature.';
		default_colour='#0363CD';
	[/ekm:colour]
	
	[ekm:colour]
		colour_reference='add_to_cart_text';
		colour_name='Add to cart Background text color';
		colour_description='This is the the text colour of the add to cart buttons mainly found in the quickview feature.';
		default_colour='#FFFFFF';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='review-header-footer';
	    colour_name='Review header and footer colour';
	    colour_description='This is the colour of the header and footer blocks surrounding the product reviews section';
	    default_colour='#ECECEC';
	[/ekm:colour]

	[ekm:colour]
	    colour_reference='success_colour_text';
	    colour_name='Success Colour Text';
	    colour_description='This is the default colour text in areas displaying a positive message, such as a product being in stock';
	    default_colour='#013800';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='success_colour_background';
	    colour_name='Success Colour Background';
	    colour_description='This is the default background colour for areas displaying a positive message, such as a product being in stock.';
	    default_colour='#bffdbf';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='caution_colour_text';
	    colour_name='Caution Colour Text';
	    colour_description='This is the default colour text in areas displaying something to be careful or aware of, such as a product running low on stock.';
	    default_colour='#6d4100';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='caution_colour_background';
	    colour_name='Caution Colour Background';
	    colour_description='This is the default background colour for areas displaying something to be careful or aware of, such as a product running low on stock.';
	    default_colour='#fddebf';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='warning_colour_text';
	    colour_name='Warning Colour Text';
	    colour_description='This is the default colour text in areas displaying something that might disrupt what your customer wants to do, such as a product being out of stock.';
	    default_colour='#6d0a00';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='warning_colour_background';
	    colour_name='Warning Colour Background';
	    colour_description='This is the default background colour for areas displaying something might disrupt what your customer wants to do, such as a product being out of stock.';
	    default_colour='#fdbfbf';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='inverse_colour_text';
	    colour_name='Inverse Colour Text';
	    colour_description='This is the the text colour that should be used in an area where the background is inverted to the default colour. Where the main text colour would be black, this should be white and vice-verse';
	    default_colour='#ffffff';
	[/ekm:colour]
	
	[ekm:colour]
	    colour_reference='inverse_colour_background';
	    colour_name='Inverse Colour Background';
	    colour_description='This is the the background colour that should be used in an area where the text is inverted to the default colour. Where the main background colour would be white, this should be black and vice-verse';
	    default_colour='#000000';
	[/ekm:colour]   
*/
/* =========================================================================
   $GENERIC
   ========================================================================= */
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
 
 :root {
    --ekm-success-colour-text: [ekm:colour]colour_reference='success_colour_text';[/ekm:colour];
    --ekm-success-colour-background: [ekm:colour]colour_reference='success_colour_background';[/ekm:colour];
    --ekm-caution-colour-text: [ekm:colour]colour_reference='caution_colour_text';[/ekm:colour];
    --ekm-caution-colour-background: [ekm:colour]colour_reference='caution_colour_background';[/ekm:colour];
    --ekm-warning-colour-text: [ekm:colour]colour_reference='warning_colour_text';[/ekm:colour];
    --ekm-warning-colour-background: [ekm:colour]colour_reference='warning_colour_background';[/ekm:colour];
    --ekm-inverse-colour-text: [ekm:colour]colour_reference='inverse_colour_text';[/ekm:colour];
    --ekm-inverse-colour-background: [ekm:colour]colour_reference='inverse_colour_background';[/ekm:colour];
    
    --ekm-atc-background-colour:[ekm:colour]colour_reference='add_to_cart_bg';[/ekm:colour];
    --ekm-atc-text-colour:[ekm:colour]colour_reference='add_to_cart_text';[/ekm:colour];
    --ekm-review-blocks: [ekm:colour]colour_reference='review-header-footer';[/ekm:colour];
}
 
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   #RESET
   ========================================================================== */
/**
 * More sensible default box-sizing:
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

/**
 * Disable auto-enlargement of small text in mobile Safari.
 */
body,
input,
textarea,
button,
select {
  -webkit-text-size-adjust: 100%;
}

/**
 * Remove margins and paddings from all the things.
 */
body,
h1, h2, h3, h4, h5, h6,
p,
ol, ul,
figure,
hr,
fieldset, legend {
  margin: 0;
  padding: 0;
}

a:focus {
  color: inherit;
}

/**
 * 1. Offset alt text.
 * 2. Ensure responsive images and override system heights.
 * 3. Remove whitespace caused by inline images.
 */
img {
  font-style: italic;
  /* [1] */
  height: auto !important;
  /* [2] */
  max-width: 100%;
  /* [2] */
  vertical-align: middle;
  /* [3] */
}

/**
 * Remove trailing margins from nested lists.
 */
li > ol,
li > ul {
  margin-bottom: 0;
}

/**
 * Form element resets.
 */
form {
  margin: 0;
}


textarea,
select {
  font-size: 1rem;
}

@media screen and (min-width: 46.875em) {
  textarea,
  select {
    font-size: inherit;
  }
}

button,
input[type="submit"],
label[for] {
  cursor: pointer;
}

optgroup {
  font-weight: 400;
}

option {
  color: #333;
  background-color: #fff;
}

[tabindex='-1']:focus {
  outline: none;
}

/**
 * Remove default table spacing.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * Reset iOS touchstart higlighting.
 */
input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

/**
 * Enable no-delay taps on supporting browsers.
 */
a,
button,
[role="button"],
input,
label,
select,
textarea {
  touch-action: manipulation;
}

input[type="text"], input[type="password"], input[type="date"],
input[type="datetime"], input[type="datetime-local"], input[type="month"],
input[type="week"], input[type="email"], input[type="number"],
input[type="search"], input[type="tel"], input[type="time"],
input[type="url"], textarea
    { font-size: 16px; } /* mobile zoom input fix */

/* ==========================================================================
   #SHARED
   ========================================================================== */
/**
 * Shared declarations for certain elements.
 */
/**
 * Always declare margins in the same direction:
 * csswizardry.com/2012/06/single-direction-margin-declarations
 */
address,
h1, h2, h3, h4, h5, h6,
blockquote, p, pre,
dl, ol, ul,
figure,
hr,
table,
fieldset {
  margin-bottom: 1.71428571rem;
}

/**
 * Consistent indentation for lists.
 */
dd, ol, ul {
  margin-left: 1.71428571rem;
}

/* =========================================================================
   $ELEMENTS
   ========================================================================= */
/* =========================================================================
   #PAGE
   ========================================================================= */
html {
  font-size: 0.875em;
  height: 100%;
  line-height: 1.71428571;
  overflow-y: scroll;
}

body {
  background-color: #fff;
  color: #333;
  display: flex;
  flex-direction: column;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  min-height: 100%;
}

/* =========================================================================
   #LINKS
   ========================================================================= */
a {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  text-decoration: underline;
  transition: opacity 0.25s ease-in-out;
  /**
	 * Text link styles for CMS content
	 */
}

a:hover {
  opacity: 0.75;
}

/* =========================================================================
   #FORMS
   ========================================================================= */
textarea,
input,
button,
select {
  color: inherit;
  font-family: inherit;
}

/**
 * Inputs, textareas and selects.
 */
input,
textarea,
select {
  background-color: #fff;
  border: 2px solid #f3f3f3;
  border-radius: 10px;
  box-shadow: none;
  line-height: 2;
  max-width: 100%;
  padding: 0.71428571rem;
  transition: all 0.25s ease-in-out;
}

input:focus,
textarea:focus,
select:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

textarea {
  border-radius: 10px;
  min-height: 100px;
}

.c-product-description.s-cms {
    text-align: initial;
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-repeat: no-repeat;
  background-position: right 1.14285714rem center;
  background-color: #fff;
  cursor: pointer;
  padding-right: 1.71428571rem;
  text-indent: .01px;
}

/**
 * Labels
 */
label {
  display: block;
  font-weight: 700;
  margin-bottom: 0.28571429rem;
}

/* =========================================================================
   #SVG
   ========================================================================= */
svg g,
svg polygon,
svg circle {
  fill: inherit;
}

/* =========================================================================
   #PLACEHOLDER
   ========================================================================= */
::-webkit-input-placeholder {
  color: #aaa;
}
:-ms-input-placeholder {
  color: #aaa;
}
::-ms-input-placeholder {
  color: #aaa;
}
::placeholder {
  color: #aaa;
}

/* =========================================================================
   #PARAGRAPHS
   ========================================================================= */
p:last-child {
  margin-bottom: 0;
}

/* =========================================================================
   #HEADINGS
   ========================================================================= */
h1 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.71428571rem;
  line-height: 1;
  font-weight: 400;
}

h2 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
}

h3 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.28571429rem;
  line-height: 1.33333333;
  font-weight: 400;
}

h4 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.14285714rem;
  line-height: 1.5;
  font-weight: 400;
}

h5 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 400;
}

h6 {
  font-family: "Baloo Thambi", cursive;
  font-size: 0.85714286rem;
  line-height: 2;
  font-weight: 400;
}

/* =========================================================================
   #SELECTION
   ========================================================================= */
::-moz-selection {
  background: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  color: #fff;
}
::selection {
  background: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  color: #fff;
}

/* =========================================================================
   #TABLES
   ========================================================================= */
table {
  width: 100%;
}

/* =========================================================================
   $OBJECTS
   ========================================================================= */
/* =========================================================================
   #ACCORDION
   ========================================================================= */
.o-accordion {
  border-bottom: 1px solid #f3f3f3;
}

.o-accordion__header,
.o-accordion__panel {
  border-top: 1px solid #f3f3f3;
}

.o-accordion__button {
  background: none;
  border: 0;
  display: block;
  padding: 1.5rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.o-accordion__button:after {
  content: "";
  border: solid black;
  border-width: 0 2px 2px 0;
  height: .5rem;
  pointer-events: none;
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: .5rem;
}

.o-accordion__button.is-active:after {
  transform: translateY(-50%) rotate(-135deg);
}

.o-accordion__panel {
  padding: 1.5rem;
}

.o-accordion__panel.is-hidden {
  display: none;
}

/* =========================================================================
   #BLOCK
   ========================================================================= */
/**
 * Stack images above text; handy for product or category grids etc.
 */
.o-block {
  display: block;
  text-align: center;
}

.o-block__image {
  margin-bottom: 1.71428571rem;
  /* Size variants.
	======================================================================== */
}

.o-block--flush .o-block__image {
  margin-bottom: 0;
}

.o-block--tiny .o-block__image {
  margin-bottom: 0.57142857rem;
}

.o-block--small .o-block__image {
  margin-bottom: 1.14285714rem;
}

.o-block--large .o-block__image {
  margin-bottom: 3.42857143rem;
}

.o-block--huge .o-block__image {
  margin-bottom: 6.85714286rem;
}

.o-block__body {
  display: block;
}

/* Alignment variants.
============================================================================ */
.o-block--right {
  text-align: right;
}

.o-block--left {
  text-align: left;
}

/* =========================================================================
   #BOX
   ========================================================================= */
/**
 * Box off content.
 */
.o-box {
  display: block;
  padding: 1.71428571rem;
}

.o-box > :last-child {
  margin-bottom: 0;
}

/* Size variants.
============================================================================ */
.o-box--tiny {
  padding: 0.57142857rem;
}

.o-box--small {
  padding: 1.14285714rem;
}

.o-box--large {
  padding: 3.42857143rem;
}

.o-box--huge {
  padding: 6.85714286rem;
}

/* =========================================================================
   #BULLSEYE
   ========================================================================= */
/**
 * Center content within its container.
 *
 * 1. Center content horizontally.
 * 2. Make sure the element always takes up all the space it can.
 * 3. Center content vertically.
 */
.o-bullseye {
  align-items: center;
  /* [1] */
  display: flex;
  height: 100%;
  /* [2] */
  justify-content: center;
  /* [3] */
  width: 100%;
  /* [2] */
}

/* Stack content vertically.
============================================================================ */
.o-bullseye--stacked {
  flex-direction: column;
}

/* =========================================================================
   #GRID
   ========================================================================= */
.o-grid {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -1.71428571rem;
}

.o-grid__item {
  box-sizing: border-box;
  padding-left: 1.71428571rem;
  width: 100%;
}

/* Gutter variants.
============================================================================ */
.o-grid--flush {
  margin-left: 0;
}

.o-grid--flush > .o-grid__item {
  padding-left: 0;
}

.o-grid--tiny {
  margin-left: -0.57142857rem;
}

.o-grid--tiny > .o-grid__item {
  padding-left: 0.57142857rem;
}

.o-grid--small {
  margin-left: -1.14285714rem;
}

.o-grid--small > .o-grid__item {
  padding-left: 1.14285714rem;
}

.o-grid--large {
  margin-left: -3.42857143rem;
}

.o-grid--large > .o-grid__item {
  padding-left: 3.42857143rem;
}

.o-grid--huge {
  margin-left: -6.85714286rem;
}

.o-grid--huge > .o-grid__item {
  padding-left: 6.85714286rem;
}

/* Responsive gutter variants.
============================================================================ */
@media screen and (min-width: 36.25em) {
  .o-grid--tiny\@small {
    margin-left: -0.57142857rem;
  }
  .o-grid--tiny\@small > .o-grid__item {
    padding-left: 0.57142857rem;
  }
  .o-grid--small\@small {
    margin-left: -1.14285714rem;
  }
  .o-grid--small\@small > .o-grid__item {
    padding-left: 1.14285714rem;
  }
  .o-grid--medium\@small {
    margin-left: -1.71428571rem;
  }
  .o-grid--medium\@small > .o-grid__item {
    padding-left: 1.71428571rem;
  }
  .o-grid--large\@small {
    margin-left: -3.42857143rem;
  }
  .o-grid--large\@small > .o-grid__item {
    padding-left: 3.42857143rem;
  }
  .o-grid--huge\@small {
    margin-left: -6.85714286rem;
  }
  .o-grid--huge\@small > .o-grid__item {
    padding-left: 6.85714286rem;
  }
}

@media screen and (min-width: 46.875em) {
  .o-grid--tiny\@small {
    margin-left: -0.57142857rem;
  }
  .o-grid--tiny\@small > .o-grid__item {
    padding-left: 0.57142857rem;
  }
  .o-grid--small\@medium {
    margin-left: -1.14285714rem;
  }
  .o-grid--small\@medium > .o-grid__item {
    padding-left: 1.14285714rem;
  }
  .o-grid--medium\@medium {
    margin-left: -1.71428571rem;
  }
  .o-grid--medium\@medium > .o-grid__item {
    padding-left: 1.71428571rem;
  }
  .o-grid--large\@medium {
    margin-left: -3.42857143rem;
  }
  .o-grid--large\@medium > .o-grid__item {
    padding-left: 3.42857143rem;
  }
  .o-grid--huge\@medium {
    margin-left: -6.85714286rem;
  }
  .o-grid--huge\@medium > .o-grid__item {
    padding-left: 6.85714286rem;
  }
}

@media screen and (min-width: 61.875em) {
  .o-grid--tiny\@large {
    margin-left: -0.57142857rem;
  }
  .o-grid--tiny\@large > .o-grid__item {
    padding-left: 0.57142857rem;
  }
  .o-grid--small\@large {
    margin-left: -1.14285714rem;
  }
  .o-grid--small\@large > .o-grid__item {
    padding-left: 1.14285714rem;
  }
  .o-grid--medium\@large {
    margin-left: -1.71428571rem;
  }
  .o-grid--medium\@large > .o-grid__item {
    padding-left: 1.71428571rem;
  }
  .o-grid--large\@large {
    margin-left: -3.42857143rem;
  }
  .o-grid--large\@large > .o-grid__item {
    padding-left: 3.42857143rem;
  }
  .o-grid--huge\@large {
    margin-left: -6.85714286rem;
  }
  .o-grid--huge\@large > .o-grid__item {
    padding-left: 6.85714286rem;
  }
}

@media screen and (min-width: 87.5em) {
  .o-grid--tiny\@huge {
    margin-left: -0.57142857rem;
  }
  .o-grid--tiny\@huge > .o-grid__item {
    padding-left: 0.57142857rem;
  }
  .o-grid--small\@huge {
    margin-left: -1.14285714rem;
  }
  .o-grid--small\@huge > .o-grid__item {
    padding-left: 1.14285714rem;
  }
  .o-grid--medium\@huge {
    margin-left: -1.71428571rem;
  }
  .o-grid--medium\@huge > .o-grid__item {
    padding-left: 1.71428571rem;
  }
  .o-grid--large\@huge {
    margin-left: -3.42857143rem;
  }
  .o-grid--large\@huge > .o-grid__item {
    padding-left: 3.42857143rem;
  }
  .o-grid--huge\@huge {
    margin-left: -6.85714286rem;
  }
  .o-grid--huge\@huge > .o-grid__item {
    padding-left: 6.85714286rem;
  }
}

/* Vertical alignment modifiers.
============================================================================ */
.o-grid--middle {
  align-items: center;
}

.o-grid--bottom {
  align-items: baseline;
}

/* Horizontal alignment modifiers.
============================================================================ */
.o-grid--center {
  justify-content: center;
}

.o-grid--right {
  justify-content: flex-end;
}

.o-grid--between {
  justify-content: space-between;
}

.o-grid--around {
  justify-content: space-around;
}

/* Inline grid item modifiers.
============================================================================ */
.o-grid--inline {
  display: inline-flex;
}

.o-grid--inline > .o-grid__item {
  width: auto;
}

/* Equal width item modifiers.
============================================================================ */
.o-grid--equal > .o-grid__item {
  flex: 1;
}

/* Make an item stretch to take up all available space.
============================================================================ */
.o-grid--stretch > .o-grid__item--stretch {
  flex: 1;
}

/* Negate grid items' bottom spacing.
============================================================================ */
/**
 * 1. The negative top margin on the parent grid element is equal to the top
 * 	  padding of the child grid items.
 */
.o-grid--vertical {
  margin-top: -1.71428571rem;
  /* [1] */
  /* Use vertical grids with our gutter variants.
	======================================================================== */
}

.o-grid--vertical > .o-grid__item {
  padding-top: 1.71428571rem;
  /* [1] */
}

.o-grid--vertical.o-grid--tiny {
  margin-top: -0.57142857rem;
}

.o-grid--vertical.o-grid--tiny > .o-grid__item {
  padding-top: 0.57142857rem;
}

.o-grid--vertical.o-grid--small {
  margin-top: -1.14285714rem;
}

.o-grid--vertical.o-grid--small > .o-grid__item {
  padding-top: 1.14285714rem;
}

.o-grid--vertical.o-grid--large {
  margin-top: -3.42857143rem;
}

.o-grid--vertical.o-grid--large > .o-grid__item {
  padding-top: 3.42857143rem;
}

.o-grid--vertical.o-grid--huge {
  margin-top: -6.85714286rem;
}

.o-grid--vertical.o-grid--huge > .o-grid__item {
  padding-top: 6.85714286rem;
}

/* =========================================================================
   #LIST-BARE
   ========================================================================= */
/**
 * Strip bullet points and indentation from lists.
 */
.o-list-bare {
  list-style: none;
  margin-left: 0;
}

.o-list-bare__item {
  margin-left: 0;
}

/* =========================================================================
   #LIST-INLINE
   ========================================================================= */
/**
 * Strip bullet points and indentation from lists.
 */
.o-list-inline {
  display: inline-flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.o-list-inline > li,
.o-list-inline__item {
  margin-left: 0.85714286rem;
  width: auto;
}

.o-list-inline > li:first-child,
.o-list-inline__item:first-child {
  margin-left: 0;
}

/* =========================================================================
   #MEDIA
   ========================================================================= */
.o-media {
  display: flex;
  align-items: flex-start;
}

.o-media__img {
  margin-right: 1.71428571rem;
}

.o-media__body {
  flex: 1;
}

.o-media__body,
.o-media__body > :last-child {
  margin-bottom: 0;
}

/* Alignment variants.
============================================================================ */
.o-media--middle {
  align-items: center;
}

/* Size variants.
============================================================================ */
.o-media--small > .o-media__img {
  margin-right: 1.14285714rem;
}

.o-media--small.o-media--reverse > .o-media__img {
  margin-left: 1.14285714rem;
  margin-right: 0;
}

.o-media--large > .o-media__img {
  margin-right: 3.42857143rem;
}

.o-media--large.o-media--reverse > .o-media__img {
  margin-left: 3.42857143rem;
  margin-right: 0;
}

/* Reverse direction.
============================================================================ */
.o-media--reverse > .o-media__img {
  margin-right: 0;
  margin-left: 1.71428571rem;
  order: 1;
}

/* Gutterless media object.
============================================================================ */
.o-media--flush > .o-media__img {
  margin-right: 0;
  margin-left: 0;
}

/* =========================================================================
   #RATIO
   ========================================================================= */
/**
 * Keep content (e.g. images, videos) in a pre-defined aspect ratio.
 *
 * 1. The default raio is 1:1 (i.e. a square).
 */
.o-ratio {
  position: relative;
  display: block;
}

.o-ratio:before {
  content: "";
  display: block;
  padding-bottom: 100%;
  /* [1] */
  width: 100%;
}

.o-ratio__content {
  position: absolute;
  top: 50%;
  left: 50%;
  max-height: 100%;
  transform: translate(-50%, -50%);
  width: auto;
}

/* Ratio variants.
   ========================================================================= */
.o-ratio--2\:1:before {
  padding-bottom: 200%;
}

.o-ratio--4\:3:before {
  padding-bottom: 133.33333333%;
}

/* =========================================================================
   #WRAPPER
   ========================================================================= */
/**
 * Constrain page content.
 */
.o-wrapper {
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  padding-right: 0.85714286rem;
  padding-left: 0.85714286rem;
}

/* Size variants.
============================================================================ */
.o-wrapper--tiny {
  padding-right: 0.57142857rem;
  padding-left: 0.57142857rem;
}

.o-wrapper--small {
  padding-right: 1.14285714rem;
  padding-left: 1.14285714rem;
}

.o-wrapper--large {
  padding-right: 3.42857143rem;
  padding-left: 3.42857143rem;
}

.o-wrapper--huge {
  padding-right: 6.85714286rem;
  padding-left: 6.85714286rem;
}

.o-wrapper--flush {
  padding-right: 0;
  padding-left: 0;
}

/* Width variant.
============================================================================ */
.o-wrapper--full {
  max-width: none;
}

.o-wrapper--measure {
  max-width: 40.9285714em;
}

/* =========================================================================
   $COMPONENTS
   ========================================================================= */
/* =========================================================================
   #BANNER
   ========================================================================= */
/* =========================================================================
   #BREADCRUMB
   ========================================================================= */
/**
 * 1. Make the current page link un-clickable.
 */
.c-breadcrumb {
  color: #a8a9a8;
  margin-bottom: 3.42857143rem;
  font-size: 0.85714286rem;
  line-height: 1.5;
}

.c-breadcrumb__crumb {
  font-weight: 700;
  text-decoration: none;
}

.c-breadcrumb__crumb.current {
  color: #a8a9a8;
  font-weight: normal;
  pointer-events: none;
  /* [1] */
}

/* =========================================================================
   #BUTTONS
   ========================================================================= */
.c-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}

.c-button, .c-button:hover, .c-button:focus {
  color: #fff;
}

.c-button:hover {
  text-decoration: none;
}

.c-button.c-button--ghost {
  background-color: transparent;
}

/* Type modifiers.
============================================================================ */
.c-button--primary {
  background-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
  font-size: 1.14285714rem;
  line-height: 1.5;
  padding-top: 0.71428571rem;
  padding-bottom: 0.71428571rem;
}

.c-button--primary.c-button--ghost, .c-button--primary.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
}

.c-button--primary.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
}

.c-button--secondary {
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

.c-button--secondary.c-button--ghost, .c-button--secondary.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

.c-button--secondary.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/* Size modifiers.
============================================================================ */
.c-button--full {
  display: block;
  width: 100%;
}

/* =========================================================================
   #CARD
   ========================================================================= */
.c-card {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 8px 14px 0 #d8dde6;
  padding: 1.14285714rem 0.85714286rem;
}

/* Card variants.
============================================================================ */
.c-card--flush {
  padding: 0;
}

/* =========================================================================
   #CARD-LOGOS
   ========================================================================= */
.c-card-logos .o-list-inline {
  justify-content: center;
  margin-top: -1.14285714rem;
}

@media screen and (min-width: 61.875em) {
  .c-card-logos .o-list-inline {
    justify-content: flex-start;
  }
}

.c-card-logos .o-list-inline__item {
  margin-top: 1.14285714rem;
}

/* =========================================================================
   #CART
   ========================================================================= */
.c-cart {
  margin-right: 0.85714286rem;
  text-decoration: none;
}

.c-cart:active, .c-cart:visited {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
}

@media screen and (min-width: 46.875em) {
  .c-cart {
    margin-right: 0;
  }
}

.c-cart__number {
  font-weight: 500;
  /**
	 * 1. Hide the cart number if the cart is empty.
	 */
}

@media screen and (min-width: 46.875em) {
  .c-cart__number {
    font-size: 1.14285714rem;
    line-height: 1.5;
  }
}

.c-cart__number.is-empty {
  display: none;
  /* [1] */
}

.ekmpscart-estimate-delivery .ekmpscart-estimate-delivery-content .ekmpscart-estimate-delivery-row input[type=text], .ekmpscart-estimate-delivery .ekmpscart-estimate-delivery-content .ekmpscart-estimate-delivery-row select{
	min-width: 200px;
}

/* =========================================================================
   #CATEGORY-DESCRIPTION
   ========================================================================= */
.c-category-description {
  margin-bottom: 0;
  margin-top: 1.71428571rem;
  text-align: center;
}

/* =========================================================================
   #CATEGORY-HEADER
   ========================================================================= */
.c-category-header {
  margin-top: 2.85714286rem;
  margin-bottom: 2.85714286rem;
}

/* =========================================================================
   #CATEGORY-PRODUCTS
   ========================================================================= */
.c-product-list--categories + .c-category-products {
  margin-top: 2.85714286rem;
}

.c-category-products__meta {
  color: #a8a9a8;
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-bottom: 0.85714286rem;
  text-align: center;
}

@media screen and (min-width: 61.875em) {
  .c-category-products__meta {
    margin-bottom: 1.71428571rem;
  }
}

.ekm-product-image-badge-wrapper img{
	z-index: 3;
}

/* =========================================================================
   #CONTACT-DETAILS
   ========================================================================= */
.c-contact-details a {
  font-weight: 500;
  text-decoration: underline;
}

.c-contact-details__detail {
  margin-bottom: 0.57142857rem;
}

/* =========================================================================
   #CONTACT-DETAILS
   ========================================================================= */
.c-contact-details a {
  font-weight: 500;
  text-decoration: underline;
}

.c-contact-details__detail {
  margin-bottom: 0.57142857rem;
}

/* =========================================================================
   #COPYRIGHT
   ========================================================================= */
.c-copyright a {
  text-decoration: none;
}

/* =========================================================================
   #DRAWER
   ========================================================================= */
.c-drawer {
  background-color: #fff;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  overflow-y: auto;
  transition: transform 0.195s cubic-bezier(0.7, 0, 0.3, 1);
  transform: translateX(-100%);
  width: calc(100% - 4rem);
  will-change: transform;
  z-index: 10001;
}

.c-drawer.is-showing {
  transition: transform 0.225s cubic-bezier(0.7, 0, 0.3, 1);
  transform: translateX(0);
}

@media screen and (min-width: 46.875em) {
  .c-drawer {
    width: 376px;
  }
}

/* =========================================================================
   #FILTERS
   ========================================================================= */
.c-filters__filter-heading {
  margin-bottom: 0.57142857rem;
}

.c-filters__item {
  margin-top: 1.71428571rem;
}

.c-filter {
  align-items: center;
  display: flex;
  font-size: 0.85714286rem;
  line-height: 1.5;
}

.ekm-filter-count {
  color: #a8a9a8;
}

/**
 * The custom checkboxes have a set width and height of `16px` which seems to
 * work well with the most common sizes of body text.
 *
 * Danger! Changing this could break out custom checkbox ticks which are made
 * using `box-shadow`.
 */
.c-filter__checkbox {
  opacity: 0;
  position: absolute;
}

.c-filter__checkbox:checked + .c-filter__label:after {
  content: "";
  position: absolute;
  left: 3px;
  top: 7px;
  background: #333;
  width: 2px;
  height: 2px;
  box-shadow: 2px 0 0 #333, 4px 0 0 #333, 4px -2px 0 #333, 4px -4px 0 #333, 4px -6px 0 #333, 4px -8px 0 #333;
  transform: rotate(45deg);
}

.c-filter__label {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  margin-right: 0.28571429rem;
  position: relative;
}

.c-filter__label:hover {
  opacity: 0.75;
}

.c-filter__label:before {
  border: 2px solid #f3f3f3;
  content: "";
  display: inline-block;
  height: 1.14285714rem;
  margin-right: 0.57142857rem;
  vertical-align: text-top;
  width: 1.14285714rem;
}

/* =========================================================================
   #HEADINGS
   ========================================================================= */
/**
 * Purpose-driven cosmetic styles for our h1-h6 elements.
 */
.c-heading-page {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.71428571rem;
  line-height: 1;
  font-weight: 400;
  text-align: center;
}

.c-heading-section {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
}

.c-heading-title {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.28571429rem;
  line-height: 1.33333333;
  font-weight: 400;
}

.c-heading-footer {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.14285714rem;
  line-height: 1.5;
  font-weight: 400;
  margin-bottom: 1.14285714rem;
}

/* Heading variant.
============================================================================ */
.c-heading-page--category {
  margin-bottom: 0;
}

/* =========================================================================
   #HOME-PROMOS
   ========================================================================= */
.c-home-promos .o-grid {
  justify-content: center;
}

.c-home-promos .o-grid__item:first-child {
  margin-top: 3.42857143rem;
  margin-bottom: 3.42857143rem;
}

.c-home-promos .o-grid__item:first-child + .o-grid__item,
.c-home-promos .o-grid__item:first-child + .o-grid__item + .o-grid__item {
  margin-top: 1.71428571rem;
  margin-bottom: 3.42857143rem;
}

@media screen and (min-width: 46.875em) {
  .c-home-promos .o-grid__item:first-child + .o-grid__item,
  .c-home-promos .o-grid__item:first-child + .o-grid__item + .o-grid__item {
    margin-top: 3.42857143rem;
    margin-bottom: 3.42857143rem;
  }
}

@media screen and (min-width: 46.875em) {
  .c-home-promos--quarters .o-grid__item {
    width: 25%;
  }
}

@media screen and (min-width: 46.875em) {
  .c-home-promos--thirds .o-grid__item {
    width: 33.333333%;
  }
}

@media screen and (min-width: 46.875em) {
  .c-home-promos--halves .o-grid__item {
    width: 50%;
  }
}

/* =========================================================================
   #ICONS
   ========================================================================= */
/**
 * Reset <button> elements' default styles when used to wrap an <svg> icon.
 */
.c-icon-handle {
  background: 0;
  border: 0;
  padding: 0;
}

.c-icon {
  display: inline-block;
  fill: #333;
  height: 1.28571429rem;
  vertical-align: middle;
  width: 1.28571429rem;
}

/* Icon variant.
============================================================================ */
.c-icon--cart {
  fill: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  height: 1.71428571rem;
  width: 2rem;
}

@media screen and (min-width: 46.875em) {
  .c-icon--cart {
    height: 2.28571429rem;
    width: 2.57142857rem;
  }
}

.c-icon--search {
  height: 1.14285714rem;
  width: 1.14285714rem;
}

/* =========================================================================
   #LOGIN
   ========================================================================= */
/**
 * 1. Create a larger hitarea for our close button.
 * 2. Keep our content on top of our modal.
 * 3. Prevent page from being scrolled when login is open.
 */
.c-login.is-hidden {
  display: none;
}

.c-login__trigger {
  -webkit-appearance: 0;
     -moz-appearance: 0;
          appearance: 0;
  background: 0;
  border: 0;
  padding: 0;
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  text-decoration: underline;
}

.c-login__trigger:focus {
  outline: 0;
}

.c-login__overlay {
  background-color: #fff;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 120;
}

.c-login__overlay.is-hidden {
  display: none;
}

.c-login__close {
  -webkit-appearance: 0;
     -moz-appearance: 0;
          appearance: 0;
  background: 0;
  border: 0;
  padding: 0;
  padding: 0.57142857rem;
  /* [1] */
  position: absolute;
  top: 1.71428571rem;
  right: 1.71428571rem;
}

.c-login__close:focus {
  outline: 0;
}

.c-login__close:hover {
  opacity: 0.75;
  transition: opacity 0.25s ease-in-out;
}

.c-login__close-icon {
  height: 1.71428571rem;
  width: 1.71428571rem;
}

.c-login__inner {
  min-width: 300px;
  z-index: 130;
  /* [2] */
}

.c-login__header {
  text-align: center;
}

.c-login__row {
  margin-top: 1.71428571rem;
}

.c-login__row:first-child {
  margin-top: 1.14285714rem;
}

.c-login__row--reset-password {
  text-align: center;
}

.c-login__field {
  width: 100%;
}

.c-login__submit {
  width: 100%;
}

.login-is-showing {
  height: 100%;
  /* [3] */
  overflow: hidden;
  /* [3] */
  position: fixed;
  /* [3] */
  width: 100%;
  /* [3] */
}

.login-is-showing body {
  overflow: hidden;
  /* [3] */
}

/* =========================================================================
   #LOYALTY-POINTS
   ========================================================================= */
.c-loyalty-points, .free-del {
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-bottom: 0;
  margin-top: 1.14285714rem;
}

/* =========================================================================
   #MESSAGE-BAR
   ========================================================================= */
.c-message-bar {
  flex: none;
}

.c-message-bar__list {
  margin-bottom: 0;
}

.c-message-bar__list:after {
  content: "flickity";
  display: none;
}

@media screen and (min-width: 61.875em) {
  .c-message-bar__list {
    display: flex;
    justify-content: center;
  }
  .c-message-bar__list:after {
    content: "";
  }
}

.c-message-bar__message {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  font-weight: 700;
  padding: 0.85714286rem;
  text-align: center;
  text-decoration: none;
  width: 100%;
}

/* =========================================================================
   #MULTI-CURRENCY
   ========================================================================= */
/* Dropdown-style currency.
============================================================================ */
.c-multi-currency--dropdown select {
  font-size: inherit !important;
  font-family: inherit !important;
}

/* Flag-style currency.
============================================================================ */
.c-multi-currency--flags tr tr {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.c-multi-currency--flags table {
  margin-bottom: 0;
}

.c-multi-currency--flags td {
  padding: 0;
}

.ekm-currency-flag-link {
  display: flex;
  margin-right: 0.42857143rem;
  margin-left: 0.42857143rem;
}

.ekm-currency-flag {
  -ms-grid-row-align: center;
      align-self: center;
  border-style: solid;
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

.ekm-currency-flag[border="2"] {
  height: 18px !important;
  width: 26px !important;
}

/* =========================================================================
   #NEWSLETTER
   ========================================================================= */
/**
 * 1. Fix the height of the newsletter in IE 11.
 */
.c-newsletter__text {
  font-size: 0.85714286rem;
  line-height: 1.5;
  max-width: 41.14285714rem;
  margin-left: auto;
  margin-right: auto;
}

/**
 * 1. Hide the label text.
 */
.c-newsletter__label {
  font-size: 0;
  /* [1] */
  margin-bottom: 0;
  /* [1] */
}

.c-newsletter__form {
  max-width: 334px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .c-newsletter__field {
    height: 2.57142857rem;
    /* [1] */
  }
}

.c-newsletter__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: [ekm:colour]
colour_reference='color_newsletter'; default_colour='#e71d45'; [/ekm:colour];
  background-repeat: no-repeat;
  background-position: 0.78571429rem center;
  border: 0;
  border-radius: 100%;
  font-size: 0;
  padding: 1.07142857rem;
  position: absolute;
  top: 0.21428571rem;
  right: 0.21428571rem;
}

.c-newsletter__button:hover {
  opacity: 0.75;
}

.c-newsletter__field {
  border: none;
  border-radius: 1000px;
  color: #333;
  font-size: 0.85714286rem;
  line-height: 2;
  padding: 0.42857143rem 0.85714286rem;
  width: 100%;
}

.c-newsletter.is-fail, .c-newsletter.is-success {
  position: relative;
}

.c-newsletter__alert {
  display: none;
  font-size: 0.85714286rem;
  line-height: 1;
  padding: 0.57142857rem;
  position: absolute;
  top: 100%;
  left: 1.14285714rem;
}

.is-fail .c-newsletter__alert {
  background-color: #e74c3c;
  color: white;
  display: block;
}

.is-success .c-newsletter__alert {
  background-color: #2ecc71;
  color: white;
  display: block;
}

input#ekmResponseEmailAddress,input#ekmResponseSignupButton {
    background: transparent;
    margin-right: 10px;
    padding: 0.5em;
    color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour];
    font-size: 1rem;
}
input#ekmResponseEmailAddress:focus, input#ekmResponseSignupButton {
    color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour]
}

input#ekmResponseEmailAddress::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour]
  opacity: 1; /* Firefox */
}

input#ekmResponseEmailAddress:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour]
}

input#ekmResponseEmailAddress::-ms-input-placeholder { /* Microsoft Edge */
    color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour]
}



/* =========================================================================
   #OVERLAY
   ========================================================================= */
/**
 * 1. Centre the overlay's content.
 * 2. Hide the overlay.
 * 3. Disable scroll when the overlay is open.
 */
.c-overlay {
  align-items: center;
  /* [1] */
  display: flex;
  height: 100%;
  /* [2] */
  justify-content: center;
  /* [3] */
  width: 100%;
  /* [2] */
  /* [1] */
  background-color: #fff;
  height: 100%;
  padding: 1.71428571rem;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
}

.c-overlay.is-hidden {
  display: none;
  /* [2] */
}

.c-overlay--dark {
  background-color: #000;
  opacity: 0.75;
}

.c-overlay--under {
  z-index: 110;
}

.overlay-is-showing {
  height: 100%;
  /* [3] */
  overflow: hidden;
  /* [3] */
  position: fixed;
  /* [3] */
  width: 100%;
  /* [3] */
}

.overlay-is-showing body {
  overflow: hidden;
  /* [3] */
}

/* =========================================================================
   #PAGE-CONTENT
   ========================================================================= */
.c-page-content {
  background-color: #f8f9f8;
  flex: 1 0 auto;
  padding-top: 3.42857143rem;
  padding-bottom: 3.42857143rem;
}

/* Page variants.
============================================================================ */
/**
 * Allow homepage sections to take up the full width of the screen.
 */
.c-page-content--main {
  background-color: #fff;
  padding-top: 0;
}

.c-page-content--main > .o-wrapper {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.c-page-content--category,
.c-page-content--product {
  padding-top: 1.71428571rem;
}

.c-page-content--webpage {
  padding-top: 3.42857143rem;
}

/**
 * Restrict the content width on certain page types for a better experience.
 */
.c-page-content--webpage > .o-wrapper,
.c-page-content--general > .o-wrapper {
  max-width: 40.9285714em;
}

.c-page-content--webpage h1,
.c-page-content--general h1 {
  text-align: center;
}

/**
 * Restrict the Cart page content width.
 */
.c-page-content--cart > .o-wrapper {
  max-width: 860px;
}

/* =========================================================================
   #PAGINATION
   ========================================================================= */
.c-pagination {
  margin-top: 1.71428571rem;
}

.c-pagination__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 0;
}

.c-pagination__item {
  margin-left: 0.28571429rem;
  margin-right: 0.28571429rem;
  min-width: 2.57142857rem;
  text-align: center;
}

.c-pagination__link {
  border: 2px solid #f3f3f3;
  border-radius: 100%;
  display: block;
  padding: 0.28571429rem;
  text-decoration: none;
}

.c-pagination__link:hover {
  background-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  color: #fff;
  opacity: 1;
}

.c-pagination__link.is-current-page {
  background-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  color: #fff;
}

/* =========================================================================
   #PRIMARY-NAVIGATION
   ========================================================================= */
.c-primary-navigation {
  background-color: [ekm:colour]
colour_reference='color_menu'; default_colour='#e71d45'; [/ekm:colour];
  flex: none;
  position: relative;
}

.c-primary-navigation__list {
  margin-bottom: 0;
}

.c-primary-navigation__list--level-1:after {
  content: "flickity";
  display: none;
}

@media screen and (min-width: 61.875em) {
  .c-primary-navigation__list--level-1 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .c-primary-navigation__list--level-1:after {
    content: "";
  }
}

.c-primary-navigation__link {
  display: block;
  text-decoration: none;
}

.c-primary-navigation__link, .c-primary-navigation__link:focus, .c-primary-navigation__link:active {
  color: [ekm:colour] colour_reference='navigation_link_colour'; default_colour='#fff'; [/ekm:colour];
}

.c-primary-navigation__link--level-1 {
  font-weight: 700;
  padding: 0.85714286rem;
  white-space: nowrap;
}

.has-dropdown .c-primary-navigation__link--level-1 {
  padding-right: 1.71428571rem;
  position: relative;
}

.has-dropdown > .c-primary-navigation__link--level-1:after {
  content: "";
  border: solid [ekm:colour] colour_reference='navigation_link_colour'; default_colour='#fff'; [/ekm:colour];
  border-width: 0 2px 2px 0;
  height: .5rem;
  pointer-events: none;
  position: absolute;
  right: 0.75rem;
  top: 1.28571429rem;
  transform: rotate(45deg);
  width: .5rem;
}

.c-primary-navigation__link--level-1.is-active {
  background-color: [ekm:colour]
colour_reference='color_menu_dropdown'; default_colour='#e40330'; [/ekm:colour];
}

.c-primary-navigation__link--level-1.is-active:hover {
  opacity: 1;
}

.c-primary-navigation__link--level-1.is-active:after {
  transform: rotate(-135deg);
  top: 1.57142857rem;
}

.c-primary-navigation__link--level-1.is-current {
  position: relative;
}

.c-primary-navigation__link--level-1.is-current:before {
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #fff;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
}

.c-primary-navigation__link--level-2 {
  font-weight: 700;
  line-height: 1.28571429;
  margin-bottom: 0.28571429rem;
}

.c-primary-navigation__dropdown {
  background-color: [ekm:colour]
colour_reference='color_menu_dropdown'; default_colour='#e40330'; [/ekm:colour];
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  box-shadow: 0 8px 14px 0 #a8adb7;
  padding: 1.71428571rem 0.85714286rem 0;
  position: absolute;
  top: 100%;
  width: 100%;
  left: 0;
  right: 0;
  z-index: 120;
}

.c-primary-navigation__dropdown.is-hidden {
  display: none;
}

@media screen and (min-width: 61.875em) {
  .c-primary-navigation__dropdown {
    max-width: 1176px;
    left: 50%;
    transform: translateX(-50%);
  }
}

.c-primary-navigation__dropdown-sub {
  font-weight: 400;
  font-size: 0.85714286rem;
  line-height: 2;
}

.c-primary-navigation__item--level-2 {
  margin-bottom: 1.71428571rem;
  width: 50%;
}

@media screen and (min-width: 46.875em) {
  .c-primary-navigation__item--level-2 {
    width: 33.3333333%;
  }
}

@media screen and (min-width: 61.875em) {
  .c-primary-navigation__item--level-2 {
    width: 25%;
  }
}

/* =========================================================================
   #PRODUCT-ADD-TO-CART
   ========================================================================= */
.c-product-add-to-cart__button {
  display: block;
  margin-top: 1.71428571rem;
  transition: all 0.25s ease-in-out;
  width: 100%;
}

.c-product-add-to-cart__button:hover {
  background-color: transparent;
  color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
  transition: all 0.25s ease-in-out;
}

/**
 * This message replaces the add to cart button if the product is out of stock.
 */
#_EKM_PRODUCTADDCARTMESSAGE {
  display: block;
  margin-top: 1.71428571rem;
}

/* =========================================================================
   #PRODUCT-ATTRIBUTES
   ========================================================================= */
.c-product-attributes__attribute {
  border-top: 1px solid #f3f3f3;
  display: flex;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.57142857rem;
}

.c-product-attributes__name {
  font-weight: 700;
}

/* =========================================================================
   #PRODUCT-BACK-IN-STOCK
   ========================================================================= */
/**
 * 1. Position the field and input next to one another while allowing the field
 *    to take up all the remaining space.
 */
.c-product-back-in-stock span span:first-child + span {
  display: flex;
  /* [1] */
  margin-top: 0.57142857rem;
}

.c-product-back-in-stock__field {
  flex: 1;
  /* [1] */
  margin-right: 1.14285714rem;
  /* [1] */
}

.c-product-back-in-stock__message {
  margin-top: 1.71428571rem;
}

/* =========================================================================
   #PRODUCT-CODE
   ========================================================================= */
.c-product-code {
  color: #a8a9a8;
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-top: 0.28571429rem;
}

/* =========================================================================
   #PRODUCT-CONTAINER
   ========================================================================= */
/**
 * 1. Centre the content of the grid if there are no product images to display.
 */
.c-product-container {
  justify-content: center;
  /* [1] */
  margin-left: -1.71428571rem;
}

.c-product-container__images-wrapper,
.c-product-container__info-wrapper {
  padding-left: 1.71428571rem;
}

@media screen and (min-width: 46.875em) {
  .c-product-container__images-wrapper,
  .c-product-container__info-wrapper {
    width: 50%;
  }
}

.c-product-container__info-wrapper {
  text-align: center;
}

/* =========================================================================
   #PRODUCT-DESCRIPTION
   ========================================================================= */
/* =========================================================================
   #PRODUCT-IMAGE-VIEWER
   ========================================================================= */
/**
 * 1. Hide product image wrappers if there is no image.
 */
.c-product-image-viewer .o-grid {
  margin-left: -0.85714286rem;
}

.c-product-image-viewer .o-grid > .o-grid__item {
  padding-left: 0.85714286rem;
}

.c-product-image-viewer__image a {
  position: relative;
  display: block;
}

.c-product-image-viewer__image a:before {
  content: "";
  display: block;
  padding-bottom: 100%;
  /* [1] */
  width: 100%;
}

.c-product-image-viewer__image a img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-height: 100%;
  transform: translate(-50%, -50%);
  width: auto;
}

.c-product-image-viewer__image--extra {
  flex-basis: 25%;
  margin-top: 0.85714286rem;
}

.c-product-image-viewer__image--extra.has-no-image {
  display: none;
  /* [1] */
}

#jquery-lightbox {
    z-index: 9999 !important;
}

/* =========================================================================
   #PRODUCT-LISTS
   ========================================================================= */
.c-product-list {
  text-align: center;
}

.c-product-list .o-grid {
  margin-top: -0.85714286rem;
  margin-left: -0.85714286rem;
}

.c-product-list .o-grid > .o-grid__item {
  padding-top: 0.85714286rem;
  padding-left: 0.85714286rem;
}

@media screen and (min-width: 46.875em) {
  .c-product-list .o-grid {
    margin-top: -1.71428571rem;
    margin-left: -1.71428571rem;
  }
  .c-product-list .o-grid > .o-grid__item {
    padding-top: 1.71428571rem;
    padding-left: 1.71428571rem;
  }
}

@media screen and (min-width: 61.875em) {
  .c-product-list .o-wrapper {
    padding-right: 0.85714286rem;
  }
}

/**
 * Home Page Lists
 */
.c-product-list--home-section {
  background-color: #f3f3f3;
  margin-top: 3.42857143rem;
  padding-top: 3.42857143rem;
  padding-bottom: 2.85714286rem;
}

.c-product-list--home-section:first-child {
  margin-top: 0;
}

/**
 * Product Lists
 */
.c-product-list__list.is-static {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 1.71428571rem;
  margin-left: -1.14285714rem;
}

@media screen and (min-width: 46.875em) {
  .c-product-list__list.is-static {
    margin-left: -1.71428571rem;
  }
}

.c-product-list__list.is-scroller {
  list-style: none;
  margin-bottom: 0;
  margin-left: -0.57142857rem;
  /* Offset product margins */
  margin-right: -0.57142857rem;
  /* Offset product margins */
}

.c-product-list__list.is-scroller .flickity-button {
  display: none;
  height: 2.28571429rem;
  width: 2.28571429rem;
}

@media screen and (min-width: 61.875em) {
  .c-product-list__list.is-scroller .flickity-button {
    display: block;
  }
}

.c-product-list__list.is-scroller .flickity-button, .c-product-list__list.is-scroller .flickity-button:hover {
  background: 0;
}

.c-product-list__list.is-scroller .flickity-button .flickity-button-icon {
  fill: #a8a9a8;
  height: 2.28571429rem;
  left: 0;
  top: 0;
  width: 2.28571429rem;
}

.c-product-list__list.is-scroller .flickity-button.flickity-prev-next-button.previous {
  left: -1.42857143rem;
}

.c-product-list__list.is-scroller .flickity-button.flickity-prev-next-button.next {
  right: -2.28571429rem;
}

.c-product-list__list--category.is-static {
  margin-top: -1.14285714rem;
}

@media screen and (min-width: 46.875em) {
  .c-product-list__list--category.is-static {
    padding-top: -1.71428571rem;
  }
}

/**
 * Product Items
 */
.is-static .c-product-list__item {
  box-sizing: border-box;
  padding-left: 1.14285714rem;
  width: 50%;
}

@media screen and (min-width: 36.25em) {
  .is-static .c-product-list__item {
    width: 33.333333%;
  }
}

@media screen and (min-width: 46.875em) {
  .is-static .c-product-list__item {
    padding-left: 1.71428571rem;
    width: 25%;
  }
}

@media screen and (min-width: 61.875em) {
  .is-static .c-product-list__item {
    width: 20%;
  }
}

.is-scroller .c-product-list__item {
  width: 46%;
}

@media screen and (min-width: 36.25em) {
  .is-scroller .c-product-list__item {
    width: 30%;
  }
}

@media screen and (min-width: 61.875em) {
  .is-scroller .c-product-list__item {
    width: 23%;
  }
}

.is-scroller .c-product-list__item .c-product__link {
  margin: 1.14285714rem 0.57142857rem;
}

@media screen and (min-width: 61.875em) {
  .is-scroller .c-product-list__item .c-product__link {
    margin-left: 0.85714286rem;
    margin-right: 0.85714286rem;
  }
}

.s-products-categories .is-scroller .c-product-list__item .c-product__link {
  margin-left: 0.42857143rem;
  margin-right: 0.42857143rem;
}

@media screen and (min-width: 61.875em) {
  .s-products-categories .is-scroller .c-product-list__item .c-product__link {
    margin-left: 0.85714286rem;
    margin-right: 0.85714286rem;
  }
}

.c-product-list__item--category {
  padding-top: 1.14285714rem;
}

@media screen and (min-width: 46.875em) {
  .c-product-list__item--category {
    padding-top: 1.71428571rem;
  }
}

.is-static .c-product-list__item--recent {
  width: 33.333333%;
}

@media screen and (min-width: 36.25em) {
  .is-static .c-product-list__item--recent {
    width: 25%;
  }
}

@media screen and (min-width: 46.875em) {
  .is-static .c-product-list__item--recent {
    padding-left: 1.71428571rem;
    width: 20%;
  }
}

@media screen and (min-width: 61.875em) {
  .is-static .c-product-list__item--recent {
    width: 16.666666%;
  }
}

.c-product-list--categories .c-product-list__list.is-scroller {
  margin-left: -0.85714286rem;
  margin-right: 0;
}

.c-product-list--scroller__heading {
  margin-bottom: 0.57142857rem;
}

.c-product-list--categories {
  margin-top: 2.71428571rem;
  margin-bottom: 2.71428571rem;
}

/**
 * Recently Viewed Lists
 */
.c-product-list--recent {
  background-color: #f8f9f8;
  padding-top: 3.42857143rem;
  padding-bottom: 2.85714286rem;
}

/**
 * Category Page Lists
 */
.c-product-list--category .c-product__link {
  margin-left: 0;
  margin-right: 0;
}

.c-product-list--related {
  margin-top: 3.42857143rem;
}

/* =========================================================================
   #PRODUCT-OPTIONS
   ========================================================================= */
.c-product-options select,
.c-product-options input,
.c-product-options textarea {
  width: 100%;
}

.c-product-options br {
  display: none;
}

.c-product-options__row {
  margin-top: 1.14285714rem;
}

.c-product-options__row:first-of-type {
  margin-top: 1.71428571rem;
}

/* =========================================================================
   #PRODUCT-PRICES
   ========================================================================= */
.c-product-prices {
  margin-top: 1.14285714rem;
}

.c-product-prices__price {
  color: [ekm:colour]
colour_reference='color_prices'; default_colour='#e40330'; [/ekm:colour];
  font-size: 1.28571429rem;
  line-height: 1.33333333;
  font-weight: 700;
}

.c-product-prices__rrp {
  color: #a8a9a8;
  font-size: 0.85714286rem;
  line-height: 2;
  margin-left: 0.57142857rem;
  text-decoration: line-through;
}

.c-product__vat {
  color: #a8a9a8;
  opacity: .75;
  margin-left: 0.57142857rem;
}

/* =========================================================================
   #PRODUCT-REVIEWS
   ========================================================================= */
.c-product-reviews {
  text-align: center;
}

.c-product-reviews__summary {
  margin-bottom: 1.71428571rem;
}

.c-product-reviews__list {
  margin-bottom: 0;
  text-align: left;
}

.c-product-reviews__review {
  border-top: 2px solid #f3f3f3;
  padding-top: 1.71428571rem;
}

.c-product-reviews__item--no-reviews {
  text-align: center;
}

.c-product-reviews__review-text {
  margin-top: 1.14285714rem;
}

.c-product-reviews__reviewer {
  line-height: 1;
  margin-bottom: 0.28571429rem;
}

.c-product-reviews__location {
  color: #a8a9a8;
  line-height: 1;
}

.c-product-reviews__button {
  margin-bottom: 1.71428571rem;
}

.c-product-reviews__button--no-reviews {
  margin-bottom: 0;
}

/* =========================================================================
   #PRODUCT-SECTION
   ========================================================================= */
.c-product-section {
  margin-bottom: 1.71428571rem;
}

.c-product-section .c-heading-section {
  margin-bottom: 1.14285714rem;
  text-align: center;
}

.c-product-section .c-heading-section--product {
  margin-bottom: 0;
}

/* =========================================================================
   #PRODUCT-SHORT-DESCRIPTION
   ========================================================================= */
.c-product-short-description {
  color: #333;
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-top: 1.14285714rem;
  margin-bottom: 0;
}

/* =========================================================================
   #PRODUCT-STOCK-MESSAGE
   ========================================================================= */
/**
 * 1. Hide the 'in-stock' message if we're not using one. This should be
 * 	  removed if we wish to output a message when the product is in stock.
 */
.c-product-stock-message {
  margin-bottom: 0;
  margin-top: 1.71428571rem;
}

.c-product-stock-message--out-of-stock {
  color: #e74c3c;
}

.c-product-stock-message--in-stock {
  color: #2ecc71;
}

/* =========================================================================
   #PRODUCTS
   ========================================================================= */
/**
 * 1. Truncate product names if they wrap onto more than 1 line.
 * 2. Restrict images to a square (1:1) ratio.
 */
.c-product {
  display: flex;
  min-height: 100%;
  min-width: 0;
  flex-direction: column;
  /* [1] */
}

.c-product__link {
  background-color: #fff;
  border-radius: 10px;
  border: 2px solid transparent;
  box-shadow: 0 8px 14px 0 #d8dde6;
  display: block;
  text-decoration: none;
  overflow: hidden;
  width: 100%;
}

.c-product__link:hover {
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  cursor: pointer;
  opacity: 1;
  transition: border 0.25s ease-in-out;
}

.c-product__image-wrapper {
  display: block;
  margin-bottom: 0.57142857rem;
  overflow: hidden;
  position: relative;
  z-index: 3;
}

.c-product__image-wrapper:before {
  content: "";
  display: block;
  padding-bottom: 100%;
  width: 100%;
}

.c-product__image {
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
}

/* Hide 'broken' image icon and alt text */
.c-product__image:not([src]):not([srcset]) {
  visibility: hidden;
}

.c-product__image--no-image {
  background-color: #f8f9f8;
  height: 100%;
  width: 100%;
}

.c-product__name {
  color: #333;
  font-family: "Baloo Thambi", cursive;
  font-size: 1rem;
  line-height: 1.71428571;
  margin-bottom: 0;
  overflow: hidden;
  /* [1] */
  text-overflow: ellipsis;
  /* [1] */
  white-space: nowrap;
  /* [1] */
}

.c-product__details {
  padding: 0.57142857rem;
  text-align: center;
  padding-bottom: 0rem;
}

.c-product__prices {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.85714286rem;
  justify-content: center;
  line-height: 1.3333333;
}

.c-product__price {
  color: [ekm:colour]
colour_reference='color_prices'; default_colour='#e40330'; [/ekm:colour];
  font-weight: 700;
}

.c-product__rrp {
  color: #a8a9a8;
  margin-right: 0.57142857rem;
  text-decoration: line-through;
}

.c-product__stars.c-product__stars {
  height: 1.07142857rem;
  width: 6.5rem;
  margin-top: 0.57142857rem;
}

.c-product__stars-total {
  font-size: 0.85714286rem;
  color: #a8a9a8;
  margin-top: 0.57142857rem;
  display: inline-flex;
}

.shopui-product-variant-preview {
  font-size: 0.85714286rem;
  color: #a8a9a8;
  margin-top: 0.57142857rem;  
}

/* Handle products without images.
============================================================================ */
.c-product--no-image .c-product__details {
  text-align: center;
}

/* =========================================================================
   #PROMOS
   ========================================================================= */
/**
 * 1. Center promo images if they're not wide enough to fill their container.
 */
.c-promo {
  text-align: center;
  /* [1] */
}

/* Promo variants.
============================================================================ */
@media screen and (min-width: 61.875em) {
  .c-promo--banner {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
    padding-right: 0.85714286rem;
    padding-left: 0.85714286rem;
  }
}

/* =========================================================================
   #REVIEW-STARS
   ========================================================================= */
.c-review-stars-wrapper {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  align-items: center;
  background: 0;
  border: 0;
  display: flex;
  justify-content: center;
  margin-top: 1.14285714rem;
  padding: 0;
  width: 100%;
}

.c-review-stars-wrapper--summary {
  flex-wrap: wrap;
  margin-top: 0;
  margin-bottom: 1.14285714rem;
}

.c-review-stars {
  display: inline-flex;
  height: 1.07142857rem;
  width: 6.5rem;
}

.c-review-stars__rating {
  transition: width .45s ease-in-out .5s;
}

.c-review-stars__meta {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-left: 1.14285714rem;
  text-decoration: underline;
}

.c-review-stars-wrapper--summary .c-review-stars__meta {
  color: #a8a9a8;
  margin-top: 0.57142857rem;
  margin-left: 0;
  text-decoration: none;
  width: 100%;
}

/**
 * Full Stars
 */
.c-review-stars .full {
  fill: [ekm:colour]
colour_reference='color_review_stars'; default_colour='#f7cf2c'; [/ekm:colour];
}

/**
 * Empty Stars
 */
.c-review-stars .empty {
  fill: [ekm:colour]
colour_reference='color_review_stars'; default_colour='#f7cf2c'; [/ekm:colour];
}

.c-review-stars__empty {
  opacity: .15;
}

/* =========================================================================
   #SEARCH-FORM
   ========================================================================= */
.c-search-form {
  background-color: [ekm:colour]
colour_reference='color_searchbox'; default_colour='#e40330'; [/ekm:colour];
  margin-top: 1.71428571rem;
  padding: 0.85714286rem;
}

@media screen and (min-width: 46.875em) {
  .c-search-form {
    background-color: transparent;
    border: 2px solid transparent;
    border-color: [ekm:colour]
colour_reference='color_searchbox'; default_colour='#e40330'; [/ekm:colour];
    border-radius: 100px;
    margin-top: 0;
    padding: 0;
  }
}

.c-search-form form {
  position: relative;
}

.c-search-form__button {
  -webkit-appearance: 0;
     -moz-appearance: 0;
          appearance: 0;
  background: 0;
  border: 0;
  padding: 0;
  position: absolute;
  top: 0.71428571rem;
  right: 0.85714286rem;
}

.c-search-form__button:focus {
  outline: 0;
}

.c-search-form__field {
  border: none;
  border-radius: 1000px;
  font-size: 0.85714286rem;
  line-height: 2;
  padding: 0.42857143rem 0.85714286rem;
  width: 100%;
}

/* =========================================================================
   #SITE-FOOTER
   ========================================================================= */
/**
 * 1. Center our footer columns; this is useful if not every column is being
 *    output as a result of a merchant not having the Social Plugins,
 *    Email Marketing, or Card Logos features installed.
 *    
 */
.c-site-footer {
  font-size: 0.85714286rem;
  line-height: 1.5;
  flex: none;
  text-align: center;
}

.c-site-footer,
.c-site-footer a {
  color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour];
}

/**
 * Footer Rows
 */
.c-site-footer__row--newsletter {
  background-color: [ekm:colour]
colour_reference='color_newsletter'; default_colour='#e71d45'; [/ekm:colour];
  padding-top: 3.42857143rem;
  padding-bottom: 3.42857143rem;
}

.c-site-footer__row--columns {
  background-color: [ekm:colour]
colour_reference='color_footer'; default_colour='#e8294f'; [/ekm:colour];
  padding-bottom: 3.42857143rem;
  color: [ekm:colour] colour_reference='footer_text_colour'; default_colour='#fff'; [/ekm:colour];
}

.c-site-footer__row--meta {
  background-color: [ekm:colour]
colour_reference='color_footer_bottom'; default_colour='#e40330'; [/ekm:colour];
  padding: 1.14285714rem;
  text-align: center;
}

/**
 * Footer Columns
 */
.c-site-footer__columns {
  justify-content: center;
  /* [1] */
}

@media screen and (min-width: 46.875em) {
  .c-site-footer__columns > .o-grid__item {
    width: 25%;
  }
}

/**
 * Footer Blocks
 */
.c-site-footer__block {
  margin-top: 3.42857143rem;
}

/* =========================================================================
   #SITE-HEADER
   ========================================================================= */
.c-site-header {
  flex: none;
}

.c-site-header__content {
  padding-top: 1.71428571rem;
}

@media screen and (min-width: 46.875em) {
  .c-site-header__content {
    padding-bottom: 1.71428571rem;
  }
}

.c-site-header__content .o-wrapper {
  padding-left: 0;
  padding-right: 0;
}

@media screen and (min-width: 46.875em) {
  .c-site-header__content .o-wrapper {
    padding-right: 0.85714286rem;
    padding-left: 0.85714286rem;
  }
}

.c-site-header__element--logo {
  flex: 1;
  order: 1;
}

@media screen and (min-width: 46.875em) {
  .c-site-header__element--logo {
    width: 25%;
  }
}

.c-site-header__element--cart {
  width: 7.14285714rem;
  order: 2;
  text-align: right;
}

@media screen and (min-width: 46.875em) {
  .c-site-header__element--cart {
    width: 25%;
    order: 3;
  }
}

.c-site-header__element--search {
  order: 3;
}

@media screen and (min-width: 46.875em) {
  .c-site-header__element--search {
    width: 50%;
    order: 2;
  }
}

/* =========================================================================
   #SITE-LOGO
   ========================================================================= */
.c-site-logo {
  /**
	 * Styles for text-based logos
	 */
  font-size: 2.28571429rem;
  line-height: 1.5;
  font-weight: 400;
  margin-left: 0.85714286rem;
}

@media screen and (min-width: 46.875em) {
  .c-site-logo {
    margin-left: 0;
  }
}

.c-site-logo__link {
  color: #333;
  text-decoration: none;
}

/* =========================================================================
   #SOCIAL-PLUGINS
   ========================================================================= */
.c-social-plugins {
  margin-top: 1.71428571rem;
}

.c-social-plugins .o-list-inline {
  margin-top: -0.57142857rem;
}

.c-social-plugins .o-list-inline__item {
  margin-top: 0.57142857rem;
}

.c-social-plugins .o-list-inline__item a {
  display: block;
}

/* Social plugin type variants.
============================================================================ */
.c-social-plugins--main .o-list-inline {
  justify-content: center;
}

@media screen and (min-width: 61.875em) {
  .c-social-plugins--main .o-list-inline {
    justify-content: flex-start;
  }
}

.c-social-plugins--product {
  margin-top: 1.14285714rem;
}

/* =========================================================================
   #SORTBY
   ========================================================================= */
/**
 * 1. A fix for Windows where the `options` wouldn't appear/
 */
.c-sortby {
  position: relative;
}

.c-sortby:hover label {
  background-color: transparent;
  border-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  transition: all 0.25s ease-in-out;
}

.c-sortby label {
  display: block;
}

.c-sortby select {
  background: transparent;
  border: none;
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
}

.c-sortby option {
  font-size: 1rem;
  opacity: 1;
  /* [1] */
}

/* =========================================================================
   #TOOLBAR
   ========================================================================= */
/**
 * 1. Hide the select box's arrow in IE 11.
 * 2. Give margins to the toolbar buttons as they're only required when the
 *	  toolbar buttons are output.
 */
.c-toolbar {
  align-items: flex-start;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  margin-left: -0.85714286rem;
}

@media screen and (min-width: 46.875em) {
  .c-toolbar {
    justify-content: space-between;
  }
}

.ekm-sortby-form select::-ms-expand {
  display: none;
  /* [1] */
}

.ekm-sortby-form,
.ekm-filterby-form {
  padding-left: 0.85714286rem;
  width: 50%;
}

@media screen and (min-width: 46.875em) {
  .ekm-sortby-form,
  .ekm-filterby-form {
    width: 20%;
  }
}

.c-toolbar__button {
  background-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  border: 2px solid transparent;
  border-radius: 100px;
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.71428571;
  margin-top: 1rem;
  /* [2] */
  margin-bottom: 1rem;
  /* [2] */
  padding: 0.28571429rem 1.71428571rem;
  text-align: center;
  width: 100%;
}

.c-toolbar__button:hover {
  background-color: transparent;
  border-color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  transition: all 0.25s ease-in-out;
}

.c-toolbar__button:focus {
  outline: #f3f3f3;
  transition: all 0.25s ease-in-out;
}

/* =========================================================================
   #TOP-BAR
   ========================================================================= */
.c-top-bar {
  background-color: #f3f3f3;
  font-size: 0.85714286rem;
  line-height: 2;
  padding-top: 0.57142857rem;
  padding-bottom: 0.57142857rem;
}

.c-top-bar .o-grid {
  justify-content: space-between;
}

.c-top-bar .o-grid__item {
  width: auto;
}

/* =========================================================================
   #WEBPAGES
   ========================================================================= */
.c-webpages {
  margin-bottom: 0;
}

.c-webpages__link {
  text-decoration: none;
}

.c-webpages__link.is-current {
  cursor: default;
  pointer-events: none;
}

.c-webpages__page {
  margin-top: 1.14285714rem;
}

/* =========================================================================
   #WELCOME
   ========================================================================= */
.c-welcome {
  margin-top: 3.42857143rem;
  text-align: center;
}

.c-welcome__heading {
  margin-bottom: 0.57142857rem;
}

/* =========================================================================
   $PAGES
   ========================================================================= */
/* ==========================================================================
   $APPROVE-REVIEW
   ========================================================================== */
form[name="customerreview"] input[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[name="customerreview"] input[type="submit"], form[name="customerreview"] input[type="submit"]:hover, form[name="customerreview"] input[type="submit"]:focus {
  color: #fff;
}

form[name="customerreview"] input[type="submit"]:hover {
  text-decoration: none;
}

form[name="customerreview"] input[type="submit"].c-button--ghost, form[name="customerreview"] input[type="submit"].c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[name="customerreview"] input[type="submit"].c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/* ==========================================================================
   $CUSTOMER-REVIEW
   ========================================================================== */
body .ekmps-write-your-own-review {
  /**
	 * Header
	 */
  /**
	 * Description
	 */
  /**
	 * Sections
	 */
}

body .ekmps-write-your-own-review .ekmps-review-header {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
  border-bottom: 0;
  margin-bottom: 1.71428571rem;
  padding: 0;
  text-align: center;
}

body .ekmps-write-your-own-review .ekmps-review-description {
  border-bottom: 2px solid #f3f3f3;
  padding-bottom: 1.57142857rem;
  padding-top: 0;
  margin-bottom: 3.42857143rem;
}

body .ekmps-write-your-own-review .ekmps-form-section {
  border-bottom-color: #f3f3f3;
  margin-bottom: 3.42857143rem;
  padding-top: 0;
  padding-bottom: 1.71428571rem;
  /**
		 * Review Section
		 */
  /**
		 * Submit Section
		 */
}

body .ekmps-write-your-own-review .ekmps-form-section .ekmps-frm-row {
  margin-top: 0;
  margin-bottom: 1.71428571rem;
}

body .ekmps-write-your-own-review .ekmps-form-section .ekmps-frm-row label {
  display: block;
  font-weight: 700;
  margin-bottom: 0.28571429rem;
}

body .ekmps-write-your-own-review .ekmps-form-section .ekmps-frm-row .text-field {
  background-color: #fff;
  border: 2px solid #f3f3f3;
  border-radius: 10px;
  box-shadow: none;
  font-size: 0.85714286rem;
  line-height: 2;
  max-width: 100%;
  padding: 0.71428571rem;
  transition: all 0.25s ease-in-out;
  width: 100%;
}

body .ekmps-write-your-own-review .ekmps-form-section .ekmps-frm-row .text-field:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekmps-write-your-own-review .ekmps-form-section.ekmps-review {
  margin-bottom: 1.71428571rem;
  padding-bottom: 0;
}

body .ekmps-write-your-own-review .ekmps-form-section .ekmps-form-section-header {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.28571429rem;
  line-height: 1.33333333;
  font-weight: 400;
}

body .ekmps-write-your-own-review .ekmps-form-section #Review_Rating {
  min-width: 120px;
}

body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button, body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button:hover, body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button:focus {
  color: #fff;
}

body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button:hover {
  text-decoration: none;
}

body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button.c-button--ghost, body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekmps-write-your-own-review .ekmps-form-section.send-message .ekmps-frm-row input.send-button.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/* ==========================================================================
   $CUSTOMER-SECURE-AREA
   ========================================================================== */
table[style="background-color:#FFF;"][width="100%"] tr[bgcolor="#AAAAAA"] font[size="2"] {
  font-size: 1rem;
}

table[style="background-color:#FFF;"][width="100%"] tr {
  font-size: 1rem;
}

table[style="background-color:#FFF;"][width="100%"] td {
  padding: 0.42857143rem;
}

table[style="background-color:#FFF;"][width="100%"] [style="color:#333333;"],
table[style="background-color:#FFF;"][width="100%"] [style="color: #000000;"] {
  color: #333;
}

table[style="background-color:#FFF;"][width="100%"] + table[width="100%"] {
  margin-bottom: 0;
}

table[style="background-color:#FFF;"][width="100%"] + table[width="100%"] table td[align="right"] {
  text-align: center;
}

table[style="background-color:#FFF;"][width="100%"] + table[width="100%"] table td[align="right"] ~ td {
  display: none;
}

table[style="background-color:#FFF;"][width="100%"] + table[width="100%"] table font[color="#666666"] {
  color: #333;
}

/* ==========================================================================
   $CONTACT-US
   ========================================================================== */
div.contact-form {
  font-size: 1rem;
}

div.contact-form h1 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.71428571rem;
  line-height: 1;
  font-weight: 400;
  margin-top: 0;
  margin-bottom: 1.71428571rem;
}

div.contact-form h1 + .hr {
  display: none;
}

div.contact-form .hr {
  border-bottom-style: solid;
  border-bottom-color: #f3f3f3;
  margin-top: 0;
  margin-bottom: 3.28571429rem;
}

div.contact-form p.required,
div.contact-form-row .star {
  color: #e74c3c;
}

/**
 * Offset the password required message by the width of the "*"
 */
div.contact-form p.required {
  font-size: 0.85714286rem;
  margin-left: -0.283125em;
  /* [1] */
  margin-bottom: 1.71428571rem;
}

/**
 * Form Fields
 */
div.contact-form-row {
  margin: 0;
  margin-bottom: 1.71428571rem;
}

div.contact-form-row:last-of-type,
div.contact-form-row:empty {
  margin-bottom: 0;
}

div.contact-form-row label {
  display: block;
  font-weight: 700;
  margin-bottom: 0.28571429rem;
  float: none;
  width: auto;
}

div.contact-form-row input,
div.contact-form-row textarea {
  background-color: #fff;
  border: 2px solid #f3f3f3;
  border-radius: 10px;
  box-shadow: none;
  line-height: 2;
  max-width: 100%;
  padding: 0.71428571rem;
  transition: all 0.25s ease-in-out;
  width: 100%;
}

div.contact-form-row input:focus,
div.contact-form-row textarea:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/**
 * Submit Button
 */
div#contact-form-submit input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  margin-left: 0;
  width: 100% !important;
}

div#contact-form-submit input, div#contact-form-submit input:hover, div#contact-form-submit input:focus {
  color: #fff;
}

div#contact-form-submit input:hover {
  text-decoration: none;
}

div#contact-form-submit input.c-button--ghost, div#contact-form-submit input.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

div#contact-form-submit input.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

@media screen and (min-width: 36.25em) {
  div#contact-form-submit input {
    width: auto !important;
  }
}

/* =========================================================================
   $PASSWORD-PROTECT
   ========================================================================= */
form[action="?function=PP-LOGIN&posted=TRUE"] input[type="password"] {
  transition: all 0.25s ease-in-out;
  display: block;
  margin-top: 0.57142857rem;
  width: 100%;
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="password"]:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  margin-top: 1.14285714rem;
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"], form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"]:hover, form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"]:focus {
  color: #fff;
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"]:hover {
  text-decoration: none;
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"].c-button--ghost, form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"].c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[action="?function=PP-LOGIN&posted=TRUE"] input[type="submit"].c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/* ==========================================================================
   $RESET-PASSWORD
   ========================================================================== */
.c-page-content--webpage .o-wrapper > br:first-child,
.c-page-content--webpage .o-wrapper center + br {
  display: none;
}

.c-page-content--webpage center table {
  margin-bottom: 0;
}

/**
 * Password Reset Form
 */
form[name="lostemail"] {
  /**
	 * Generic Resets
	 */
  /**
	 * Page Heading
	 */
  /**
	 * Page Subtext
	 */
  /**
	 * Form Wrapper
	 */
  /**
	 * Email Address Input
	 */
  /**
	 * Submit Input
	 */
}

form[name="lostemail"] table,
form[name="lostemail"] tr,
form[name="lostemail"] td {
  margin: 0;
  padding: 0;
}

form[name="lostemail"] table,
form[name="lostemail"] tbody,
form[name="lostemail"] tr,
form[name="lostemail"] td,
form[name="lostemail"] font {
  display: block;
}

form[name="lostemail"] input,
form[name="lostemail"] table[width] {
  width: 100%;
}

form[name="lostemail"] br {
  display: none;
}

form[name="lostemail"] font[size="4"] {
  font-family: "Baloo Thambi", cursive;
  margin-bottom: 1.71428571rem;
  text-align: center;
}

form[name="lostemail"] font[size="2"][face="verdana, arial"] {
  margin-bottom: 1.71428571rem;
}

form[name="lostemail"] table[width="400"] td:last-child table[border="0"][cellpadding="0"][cellspacing="0"] font[face="verdana"][size="1"] b {
  display: none;
}

form[name="lostemail"] font[face="verdana"] b {
  display: block;
  font-weight: 700;
  margin-bottom: 0.28571429rem;
}

form[name="lostemail"] input[name="thelostemail"] {
  transition: all 0.25s ease-in-out;
  margin-bottom: 1.71428571rem;
}

form[name="lostemail"] input[name="thelostemail"]:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[name="lostemail"] input[value="Request Password"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[name="lostemail"] input[value="Request Password"], form[name="lostemail"] input[value="Request Password"]:hover, form[name="lostemail"] input[value="Request Password"]:focus {
  color: #fff;
}

form[name="lostemail"] input[value="Request Password"]:hover {
  text-decoration: none;
}

form[name="lostemail"] input[value="Request Password"].c-button--ghost, form[name="lostemail"] input[value="Request Password"].c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

form[name="lostemail"] input[value="Request Password"].c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

@media screen and (min-width: 36.25em) {
  form[name="lostemail"] input[value="Request Password"] {
    width: auto;
  }
}

/**
 * No Record Page
 */
.c-page-content--webpage center td {
  padding: 0;
}

.c-page-content--webpage center table[width="350"] br {
  display: none;
}

.c-page-content--webpage center table[width="350"] font {
  display: block;
}

.c-page-content--webpage center table[width="350"] font[size="4"] {
  margin-bottom: 1.71428571rem;
  text-align: center;
}

.c-page-content--webpage center table[width="350"] font[size="2"] br:first-of-type,
.c-page-content--webpage center table[width="350"] font[size="2"] br:first-of-type + br {
  display: block;
}

.c-page-content--webpage center table[width="350"] font[size="2"] a {
  margin-top: 1.71428571rem;
}

/* =========================================================================
   $SEARCH
   ========================================================================= */
/**
 * 1. Restrict product image ratio.
 * 2. Override system styles.
 * 3. Truncate product names.
 */
body .ekm-search-page {
  padding: 0;
}

body .ekm-search-page-search-box {
  border: 2px solid #f3f3f3;
  margin-bottom: 3.42857143rem;
  padding: 1.71428571rem;
}

body .ekm-search-page-search-box form {
  display: flex;
  flex-wrap: wrap;
}

body .ekm-search-page-search-box__label {
  display: block;
  font-weight: 700;
  margin-bottom: 0.28571429rem;
  flex-basis: 100%;
}

body .ekm-search-page-search-box__field {
  background-color: #fff;
  border: 2px solid #f3f3f3;
  border-radius: 10px;
  box-shadow: none;
  font-size: 0.85714286rem;
  line-height: 2;
  max-width: 100%;
  padding: 0.71428571rem;
  transition: all 0.25s ease-in-out;
  flex: 1;
}

body .ekm-search-page-search-box__field:focus {
  color: #333;
  outline: 0;
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekm-search-page-search-box__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  flex: 0 1 20%;
  margin-left: 1.14285714rem;
  width: auto;
}

body .ekm-search-page-search-box__button, body .ekm-search-page-search-box__button:hover, body .ekm-search-page-search-box__button:focus {
  color: #fff;
}

body .ekm-search-page-search-box__button:hover {
  text-decoration: none;
}

body .ekm-search-page-search-box__button.c-button--ghost, body .ekm-search-page-search-box__button.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekm-search-page-search-box__button.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .ekm-search-page-intro {
  font-size: 1rem;
  margin-bottom: 1.14285714rem;
  padding-left: 0;
  padding-right: 0;
}

body .ekm-search-page-intro__description {
  color: #a8a9a8;
  font-size: 0.85714286rem;
  line-height: 1.5;
  margin-bottom: 0.85714286rem;
  text-align: center;
}

@media screen and (min-width: 61.875em) {
  body .ekm-search-page-intro__description {
    margin-bottom: 1.71428571rem;
  }
}

body .ekm-search-page-results {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.71428571rem;
  margin-top: -1.71428571rem;
}

body .ekm-search-page-item {
  background-color: #fff;
  border-radius: 10px;
  border: 2px solid transparent;
  box-shadow: 0 8px 14px 0 #d8dde6;
  display: block;
  text-decoration: none;
  overflow: hidden;
  width: 100%;
}

body .ekm-search-page-item:hover {
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  cursor: pointer;
  opacity: 1;
  transition: border 0.25s ease-in-out;
}

body .ekm-search-page-item__wrapper {
  flex-basis: 50%;
  margin-top: 0;
  min-width: 0;
  padding: 0;
  padding-left: 1.71428571rem;
  padding-top: 1.71428571rem;
  text-align: left;
}

@media screen and (min-width: 36.25em) {
  body .ekm-search-page-item__wrapper {
    flex-basis: 33.3333333%;
  }
}

@media screen and (min-width: 61.875em) {
  body .ekm-search-page-item__wrapper {
    flex-basis: 25%;
  }
}

body .ekm-search-page-item__image {
  margin-bottom: 1.14285714rem;
  display: block;
  overflow: hidden;
  /* [1] */
  position: relative;
  /* [1] */
}

body .ekm-search-page-item__image:before {
  content: "";
  /* [1] */
  display: block;
  /* [1] */
  padding-bottom: 100%;
  /* [1] */
  width: 100%;
  /* [1] */
}

body .ekm-search-page-item__image img {
  max-height: 100%;
  /* [1] */
  position: absolute;
  /* [1] */
  top: 50%;
  /* [1] */
  left: 50%;
  /* [1] */
  transform: translate(-50%, -50%);
  /* [1] */
  width: auto;
  /* [1] */
}

body .ekm-search-page-item__image--empty {
  height: auto   !important;
  /* [2] */
  padding-top: 0 !important;
  /* [2] */
}

body .ekm-search-page-item-details {
  padding: 0.57142857rem;
  text-align: center;
}

body .ekm-search-page-item__name {
  color: #333;
  font-family: "Baloo Thambi", cursive;
  font-size: 1rem;
  line-height: 1.71428571;
  margin-bottom: 0;
  overflow: hidden;
  /* [1] */
  text-overflow: ellipsis;
  /* [1] */
  white-space: nowrap;
  /* [1] */
}

body .ekm-search-page-item__price {
  color: [ekm:colour]
colour_reference='color_prices'; default_colour='#e40330'; [/ekm:colour];
  font-weight: 700;
}

/**
 * No results page
 */
body .ekm-search-page-no-results {
  font-size: 1rem;
  margin-top: 3.42857143rem;
  margin-bottom: 3.42857143rem;
}

body .ekm-search-page-no-results__description {
  margin-top: 0;
}

/* =========================================================================
   $OVERRIDES
   ========================================================================= */
/* ==========================================================================
   #EXIT-MODAL
   ========================================================================== */
/**
 * To override the default Exit Modal styles we need to increase the 
 * specificity of our selectors. We do this here by nesting them inside the 
 * `body` element selector.
 */
body {
  /* Exit Modal Overlay */
  /* Exit Modal Main Window */
  /* Exit Modal Content */
  /* Exit Modal Title */
  /* Exit Modal Message */
  /* Exit Modal Close */
}

body .shopui-exit-modal__overlay {
  background-color: #000;
  opacity: 0.75;
}

body .shopui-exit-modal__window {
  border-radius: 10px;
}

body .shopui-exit-modal__content {
  padding: 3.42857143rem;
}

body .shopui-exit-modal__title {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
}

body .shopui-exit-modal__message {
  color: #a8a9a8;
  font-size: 1rem;
  margin-bottom: 1.71428571rem;
}

body .shopui-form-row--stacked {
  margin-bottom: 1.71428571rem;
}

body .shopui-exit-modal__window {
  /* Exit Modal Email Field */
  /* Exit Modal Button */
}

body .shopui-exit-modal__window .shopui-text-field {
  border-width: 2px;
  border-radius: 10px;
  padding: 1.14285714rem;
}

body .shopui-exit-modal__window .shopui-text-field:hover {
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .shopui-exit-modal__window .shopui-button--primary,
body .shopui-exit-modal__window a.shopui-button--primary {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  padding: 1.14285714rem;
}

body .shopui-exit-modal__window .shopui-button--primary, body .shopui-exit-modal__window .shopui-button--primary:hover, body .shopui-exit-modal__window .shopui-button--primary:focus,
body .shopui-exit-modal__window a.shopui-button--primary,
body .shopui-exit-modal__window a.shopui-button--primary:hover,
body .shopui-exit-modal__window a.shopui-button--primary:focus {
  color: #fff;
}

body .shopui-exit-modal__window .shopui-button--primary:hover,
body .shopui-exit-modal__window a.shopui-button--primary:hover {
  text-decoration: none;
}

body .shopui-exit-modal__window .shopui-button--primary.c-button--ghost, body .shopui-exit-modal__window .shopui-button--primary.c-button--ghost:focus,
body .shopui-exit-modal__window a.shopui-button--primary.c-button--ghost,
body .shopui-exit-modal__window a.shopui-button--primary.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .shopui-exit-modal__window .shopui-button--primary.c-button--ghost:hover,
body .shopui-exit-modal__window a.shopui-button--primary.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body .shopui-exit-modal__window .shopui-button--primary:hover,
body .shopui-exit-modal__window a.shopui-button--primary:hover {
  opacity: 0.75;
}

body .shopui-exit-modal__close:hover:hover {
  background-color: #f8f9f8;
}

.c-product__name strong { display: block; } /* products hidden fix */

/* =========================================================================
   $FILTERS-PRICE-WIDGET
   ========================================================================= */
/**
 * 1. The colour of the slider; this should be the lightest colour.
 * 2. The colour of the selected range; this should be the middle colour.
 * 3. The colour of the slider's handles; this should be the darkest colour.
 */
body form[name="product-filter"] .ui-slider-horizontal {
  background-color: #f3f3f3;
  /* [1] */
}

body form[name="product-filter"] .ui-slider-horizontal .ui-slider-range {
  background-color: #a8a9a8;
  /* [2] */
}

body form[name="product-filter"] .ui-slider-horizontal .ui-slider-handle {
  background-color: #333;
  /* [3] */
}

/* =========================================================================
   $FONT-OVERRIDES
   ========================================================================= */
font[face="verdana"],
font[face="verdana, arial"],
font[face="Verdana, Arial, Helvetica, sans-serif"] {
  font-family: inherit;
}

font[size="4"] {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
}

font[size="2"] {
  font-size: 1rem;
  line-height: 1.71428571;
}

font[size="1"] {
  font-size: 0.85714286rem;
  line-height: 2;
}

/* =========================================================================
   $PRODUCT-OPTIONS
   ========================================================================= */
/**
 *
 * 1. Hide the label for file upload product options.
 * 2. Reset the background colour of the image upload input.
 * 3. Keep colour swatch `box-shadow` consistent with the theme's text colour.
 */
._EKM_OPTIONIMAGE_BUTTON {
  font-size: 0;
  /* [1] */
}

.ekm-productoptions-image {
  background-color: transparent;
  /* [2] */
  font-size: 0.85714286rem;
  /* [1] */
}

.ekm-productoptions-radio-option.ekm-productoptions-radio-option:checked + label {
  box-shadow: 0 0 0 2px #333;
  /* [3] */
}

/* =========================================================================
   $WISH LIST
   ========================================================================= */
/**

/* Wishlist Button Styles */
.wishlist-wrapper { margin-top: 20px; }

.wishlist-wrapper svg path { 
	transition: fill 0.2s ease-in-out; 
		-webkit-transition: fill 0.2s ease-in-out;
}

.wishlist-wrapper button:hover { opacity: 1; }

.wishlist-btn {
    background: none;
    border: 0;
    color: #333;
    cursor: pointer;
    padding: 0;
}

.wishlist-text { 
	margin-left: 6px;
	font-size: 14px;
}
    
.wishlist-btn:hover .wishlist-text { opacity: 0.7; }

.wishlist-heart {
    border-radius: 50%;
    height: 34px;
    position: relative;
    width: 34px;
}

.wishlist-heart svg {
    height: 20px;
    left: 50%;
    margin-top: 1px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    	-webkit-transform: translate(-50%,-50%);
    width: 20px;
}
    
.wishlist-heart-inner-color { fill: #333; }

.wishlist-heart-outer-color,
.wishlist-btn:hover .wishlist-heart-inner-color,
.wishlist-heart-icon-added { fill: #fff; }
		
.wishlist-heart { background: #333; }


/* =========================================================================
   $PROMO-STICKERS
   ========================================================================= */
.ekm-product-image-badge-wrapper {
  align-self: flex-end;
  display: block !important;
  height: 0      !important;
}

/*
.c-product-image-viewer .ekm-product-image-badge-wrapper {
  display: none !important;
}
*/

/* ==========================================================================
   #SOFTCART
   ========================================================================== */
/**
 * To override the default Softcart styles we need to increase the specificity
 * of our selectors. We do this here by nesting them inside the `body` element.
 *
 * 1. A specific `line-height` is required to vertically size the heading.
 */
body {
  /* Soft Cart Overlay */
  /* Soft Cart Content */
  /* Soft Cart Title */
  /* Soft Cart Inner */
  /* Soft Cart Product Names */
  /* Soft Cart Continue Link */
  /* Soft Cart Checkout Button */
  /* Soft Cart Close */
  /* Soft Cart Remove */
  /**
	 * This button is shown if there aren't enough products in stock to add it
	 * to the cart.
	 */
  /**
	 * This button is shown if there is an error when adding a product to the
	 * soft cart.
	 */
}

body .ekm-softcart-screen {
  background-color: #000;
  opacity: 0.75;
}

body .ekm-softcart {
  border-radius: 10px;
}

body,
body div.ekm-softcart-header h1,
body span.ekm-softcart-item-name a,
body span.ekm-softcart-item-cost,
body p.ekm-softcart-subtotal,
body p.ekm-softcart-delivery,
body p.ekm-softcart-vat,
body p.ekm-softcart-total,
body span.ekm-softcart-item-qty-value,
body span.ekm-softcart-item-options,
body p.ekm-softcart-error {
  color: #333;
}

body div.ekm-softcart-header h1 {
  font-family: "Baloo Thambi", cursive;
  font-size: 1.57142857rem;
  line-height: 1.09090909;
  font-weight: 400;
  line-height: 65px;
  /* [1] */
}

body div.ekm-softcart-inner {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

body span.ekm-softcart-item-name a {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
  text-decoration: underline;
  transition: opacity 0.25s ease-in-out;
  /**
	 * Text link styles for CMS content
	 */
  color: #333;
  font-weight: 700;
}

body span.ekm-softcart-item-name a:hover {
  opacity: 0.75;
}

body span.ekm-softcart-item-name a, body span.ekm-softcart-item-name a:hover {
  text-decoration: none;
}

body div.ekm-softcart-links a.ekm-softcart-continue {
  color: [ekm:colour]
colour_reference='color_text_links'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links a.ekm-softcart-gotocheckout {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
  font-size: 1.14285714rem;
  line-height: 1.5;
  padding-top: 0.71428571rem;
  padding-bottom: 0.71428571rem;
}

body div.ekm-softcart-links a.ekm-softcart-gotocheckout, body div.ekm-softcart-links a.ekm-softcart-gotocheckout:hover, body div.ekm-softcart-links a.ekm-softcart-gotocheckout:focus {
  color: #fff;
}

body div.ekm-softcart-links a.ekm-softcart-gotocheckout:hover {
  text-decoration: none;
}

body div.ekm-softcart-links a.ekm-softcart-gotocheckout.c-button--ghost, body div.ekm-softcart-links a.ekm-softcart-gotocheckout.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
}

body div.ekm-softcart-links a.ekm-softcart-gotocheckout.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_primary_buttons'; default_colour='#5cb85c'; [/ekm:colour];
}

body a.ekm-softcart-close {
  color: #333;
  text-decoration: none;
}

body a.ekm-softcart-close:hover {
  color: #e74c3c;
}

body a.ekm-softcart-item-remove {
  color: #e74c3c;
}

body div.ekm-softcart-links .ekm-softcart-back {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links .ekm-softcart-back, body div.ekm-softcart-links .ekm-softcart-back:hover, body div.ekm-softcart-links .ekm-softcart-back:focus {
  color: #fff;
}

body div.ekm-softcart-links .ekm-softcart-back:hover {
  text-decoration: none;
}

body div.ekm-softcart-links .ekm-softcart-back.c-button--ghost, body div.ekm-softcart-links .ekm-softcart-back.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links .ekm-softcart-back.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links .ekm-softcart-more {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid transparent;
  border-radius: 1000px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1.71428571;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.42857143rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
  border-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links .ekm-softcart-more, body div.ekm-softcart-links .ekm-softcart-more:hover, body div.ekm-softcart-links .ekm-softcart-more:focus {
  color: #fff;
}

body div.ekm-softcart-links .ekm-softcart-more:hover {
  text-decoration: none;
}

body div.ekm-softcart-links .ekm-softcart-more.c-button--ghost, body div.ekm-softcart-links .ekm-softcart-more.c-button--ghost:focus {
  color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

body div.ekm-softcart-links .ekm-softcart-more.c-button--ghost:hover {
  color: #fff;
  background-color: [ekm:colour]
colour_reference='color_secondary_buttons'; default_colour='#0095d6'; [/ekm:colour];
}

/* =========================================================================
   EDIT-BUTTONS
   ========================================================================= */
.c-product-list .c-heading-section div.ekm-edit-button-wrapper {
    top: -1.6rem !important;
}


/* =========================================================================
   $UTILITIES
   ========================================================================= */
/* =========================================================================
   #SPACING
   ========================================================================= */
/**
 * Utility classes to put specific spacing values onto elements.
 */
.u-padding {
  padding: 1.71428571rem !important;
}

.u-padding-tiny {
  padding: 0.57142857rem !important;
}

.u-padding-small {
  padding: 1.14285714rem !important;
}

.u-padding-large {
  padding: 3.42857143rem !important;
}

.u-padding-huge {
  padding: 6.85714286rem !important;
}

.u-padding-none {
  padding: 0 !important;
}

.u-padding-top {
  padding-top: 1.71428571rem !important;
}

.u-padding-top-tiny {
  padding-top: 0.57142857rem !important;
}

.u-padding-top-small {
  padding-top: 1.14285714rem !important;
}

.u-padding-top-large {
  padding-top: 3.42857143rem !important;
}

.u-padding-top-huge {
  padding-top: 6.85714286rem !important;
}

.u-padding-top-none {
  padding-top: 0 !important;
}

.u-padding-right {
  padding-right: 1.71428571rem !important;
}

.u-padding-right-tiny {
  padding-right: 0.57142857rem !important;
}

.u-padding-right-small {
  padding-right: 1.14285714rem !important;
}

.u-padding-right-large {
  padding-right: 3.42857143rem !important;
}

.u-padding-right-huge {
  padding-right: 6.85714286rem !important;
}

.u-padding-right-none {
  padding-right: 0 !important;
}

.u-padding-bottom {
  padding-bottom: 1.71428571rem !important;
}

.u-padding-bottom-tiny {
  padding-bottom: 0.57142857rem !important;
}

.u-padding-bottom-small {
  padding-bottom: 1.14285714rem !important;
}

.u-padding-bottom-large {
  padding-bottom: 3.42857143rem !important;
}

.u-padding-bottom-huge {
  padding-bottom: 6.85714286rem !important;
}

.u-padding-bottom-none {
  padding-bottom: 0 !important;
}

.u-padding-left {
  padding-left: 1.71428571rem !important;
}

.u-padding-left-tiny {
  padding-left: 0.57142857rem !important;
}

.u-padding-left-small {
  padding-left: 1.14285714rem !important;
}

.u-padding-left-large {
  padding-left: 3.42857143rem !important;
}

.u-padding-left-huge {
  padding-left: 6.85714286rem !important;
}

.u-padding-left-none {
  padding-left: 0 !important;
}

.u-margin {
  margin: 1.71428571rem !important;
}

.u-margin-tiny {
  margin: 0.57142857rem !important;
}

.u-margin-small {
  margin: 1.14285714rem !important;
}

.u-margin-large {
  margin: 3.42857143rem !important;
}

.u-margin-huge {
  margin: 6.85714286rem !important;
}

.u-margin-none {
  margin: 0 !important;
}

.u-margin-top {
  margin-top: 1.71428571rem !important;
}

.u-margin-top-tiny {
  margin-top: 0.57142857rem !important;
}

.u-margin-top-small {
  margin-top: 1.14285714rem !important;
}

.u-margin-top-large {
  margin-top: 3.42857143rem !important;
}

.u-margin-top-huge {
  margin-top: 6.85714286rem !important;
}

.u-margin-top-none {
  margin-top: 0 !important;
}

.u-margin-right {
  margin-right: 1.71428571rem !important;
}

.u-margin-right-tiny {
  margin-right: 0.57142857rem !important;
}

.u-margin-right-small {
  margin-right: 1.14285714rem !important;
}

.u-margin-right-large {
  margin-right: 3.42857143rem !important;
}

.u-margin-right-huge {
  margin-right: 6.85714286rem !important;
}

.u-margin-right-none {
  margin-right: 0 !important;
}

.u-margin-bottom {
  margin-bottom: 1.71428571rem !important;
}

.u-margin-bottom-tiny {
  margin-bottom: 0.57142857rem !important;
}

.u-margin-bottom-small {
  margin-bottom: 1.14285714rem !important;
}

.u-margin-bottom-large {
  margin-bottom: 3.42857143rem !important;
}

.u-margin-bottom-huge {
  margin-bottom: 6.85714286rem !important;
}

.u-margin-bottom-none {
  margin-bottom: 0 !important;
}

.u-margin-left {
  margin-left: 1.71428571rem !important;
}

.u-margin-left-tiny {
  margin-left: 0.57142857rem !important;
}

.u-margin-left-small {
  margin-left: 1.14285714rem !important;
}

.u-margin-left-large {
  margin-left: 3.42857143rem !important;
}

.u-margin-left-huge {
  margin-left: 6.85714286rem !important;
}

.u-margin-left-none {
  margin-left: 0 !important;
}

/* =========================================================================
   #VISUAL
   ========================================================================= */
/**
 * Visually hide elements while still making them readable by screen readers.
 */
.u-visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
}

.u-visually-shown {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: auto;
  position: inherit !important;
  width: auto;
}

/**
 * Hide elements so they won't take up space; maybe with the intention of 
 * un-hiding it with JS.
 */
.u-hidden {
  display: none !important;
}

/* Responsive visual modifiers.
   ========================================================================= */
/**
 * Responsive hide utility classes. There are no 'show' classes because these
 * could override the initial 'display' property.
 */
@media screen and (min-width: 25em) {
  .u-hidden\@tiny-up {
    display: none !important;
  }
}

@media screen and (min-width: 36.25em) {
  .u-hidden\@small-up {
    display: none !important;
  }
}

@media screen and (min-width: 46.875em) {
  .u-hidden\@medium-up {
    display: none !important;
  }
}

@media screen and (min-width: 61.875em) {
  .u-hidden\@large-up {
    display: none !important;
  }
}

@media screen and (min-width: 87.5em) {
  .u-hidden\@huge-up {
    display: none !important;
  }
}

@media screen and (max-width: 24.9375em) {
  .u-hidden\@tiny-down {
    display: none !important;
  }
}

@media screen and (max-width: 36.1875em) {
  .u-hidden\@small-down {
    display: none !important;
  }
}

@media screen and (max-width: 46.8125em) {
  .u-hidden\@medium-down {
    display: none !important;
  }
}

@media screen and (max-width: 61.8125em) {
  .u-hidden\@large-down {
    display: none !important;
  }
}

@media screen and (max-width: 87.4375em) {
  .u-hidden\@huge-down {
    display: none !important;
  }
}

/* =========================================================================
   $VENDOR
   ========================================================================= */
/* =========================================================================
   #FLICKITY
   ========================================================================= */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

.flickety-viewport .c-product-list__item {
    margin-bottom:2rem !important;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: #333;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}


/* Wish List Styles */
.wishlist-wrapper { margin-top: 20px; }

.wishlist-wrapper svg path { 
	transition: fill 0.2s ease-in-out; 
		-webkit-transition: fill 0.2s ease-in-out;
}

.wishlist-wrapper button:hover { opacity: 1; }

.wishlist-btn {
    background: none;
    border: 0;
    color: #333;
    cursor: pointer;
    padding: 0;
}

.wishlist-text { 
	margin-left: 6px;
	font-size: 14px;
}

.wishlist-heart {
    border-radius: 50%;
    height: 34px;
    position: relative;
    width: 34px;
}

.wishlist-heart svg {
    height: 20px;
    left: 50%;
    margin-top: 1px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    	-webkit-transform: translate(-50%,-50%);
    width: 20px;
}

.wishlist-heart-inner-color { fill: #333; }

.wishlist-heart-outer-color,
.wishlist-btn:hover .wishlist-heart-inner-color { fill: #fff; }
	
.wishlist-heart { background: #333; }


/* ==========================================================================
    #QUICK VIEW FEATURE
========================================================================= */


.quickview-btn-wrapper{
	left: 12px !important;
}

.quickview-parent.quickview-parent_pb-sml{
  padding-bottom: 85px !important;
}
.flickity-slider .quickview-btn-wrapper{
	top: 0 !important;
	height: calc(90% + 20px) !important;
	max-height: 490px;
	background-color: rgba(255,255,255,0.75);
}

/* ==========================================================================
    #QUICK VIEW FEATURE V1 CUSTOM MODE
========================================================================= */


.quickview-parent {
	position: relative;
}

.quickview-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9;
    display: none;
}

.is-scroller .c-product-list__item .quickview-icon.add-to-cart-btn a {
    margin-left: 0;
    margin-right: 0;
    margin: 0;
}

.quickview-icon.add-to-cart-btn a {
    background: none;
    color: #fff;
    box-shadow: none;
    border: none;
}

@media screen and (min-width: 36.25em) {
    .quickview-parent:hover .quickview-wrapper {display: flex;justify-content: space-evenly;align-items: center;flex-direction: column;}
}

.quickview-wrapper a, .quickview-wrapper span {
    border: 0.675rem solid #fff;
    border-radius: 5px;
    text-align: center;
    margin: 0 auto;
    padding: 1rem 2rem;
    color: [ekm:colour]colour_reference='background_color'; default_colour='#fff';[/ekm:colour];
    font-size: 1.8rem;
    transition: 0.2s linear all;
}

.quickview-wrapper a:hover, .quickview-wrapper span:hover {
    opacity: 1;
    background: [ekm:colour]colour_reference='background_color'; default_colour='#fff';[/ekm:colour];
    color: [ekm:colour]colour_reference='body_text_color'; default_colour='#111';[/ekm:colour];
    transition: 0.2s linear all;
}

.quickview-icon {
    display: block;
    width: 100%;
    margin-top: 1.2rem;
    cursor: pointer;
    padding: 1rem 0;
    background: [ekm:colour]colour_reference='color_primary_buttons';[/ekm:colour];
    color: #ffffff;
}

.quickview-icon:hover {
    opacity: 0.8;
}

.quickview-icon span.quickview-label {
    display: inline-block;
    margin: 0 0 0 1rem;
        vertical-align: text-top; 
}

.quickview-icon svg {
    height: 22px;
    width: 22px;
    display: inline-block;
    fill: #ffffff;
    vertical-align: text-top;    
}



.quickview-btn, .qv-btn>a{
	font-size: 12px !important;
}
.quickview-parent.quickview-parent_pb {
    padding-bottom: 50px !important;
}

.quickview-parent.no-margin-btm {
	margin-bottom: 2% !important;
}


/*.quickview-btn-wrapper {*/
/*    grid-template-columns: 1fr !important;*/
/*}*/

a[data-video^="{"] {
    display:block !important; 
    /*overrides the display for product videos to show.*/
}
